@riboseinc/paneron-registry-kit 2.0.1 → 2.0.2

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 (501) hide show
  1. package/package.json +1 -1
  2. package/LICENSE +0 -21
  3. package/README.adoc +0 -35
  4. package/compiled/common.js +0 -2
  5. package/compiled/index.js +0 -21
  6. package/compiled/migrations/initial.js +0 -8
  7. package/compiled/types/cr.js +0 -131
  8. package/compiled/types/index.js +0 -8
  9. package/compiled/types/item.js +0 -22
  10. package/compiled/types/proposal.js +0 -21
  11. package/compiled/types/register.js +0 -25
  12. package/compiled/types/registry.js +0 -10
  13. package/compiled/types/stakeholder.js +0 -34
  14. package/compiled/types/util.js +0 -3
  15. package/compiled/types/views.js +0 -2
  16. package/compiled/views/AnnotatedChange.js +0 -57
  17. package/compiled/views/BrowserCtx.js +0 -19
  18. package/compiled/views/FilterCriteria/CRITERIA_CONFIGURATION.js +0 -110
  19. package/compiled/views/FilterCriteria/criteriaGroupToQueryExpression.js +0 -40
  20. package/compiled/views/FilterCriteria/criteriaGroupToSummary.js +0 -47
  21. package/compiled/views/FilterCriteria/criteriaToNodes.js +0 -89
  22. package/compiled/views/FilterCriteria/index.js +0 -75
  23. package/compiled/views/FilterCriteria/models.js +0 -28
  24. package/compiled/views/FilterCriteria/mutateGroup.js +0 -53
  25. package/compiled/views/GenericRelatedItemView.js +0 -147
  26. package/compiled/views/RegisterStakeholder.js +0 -19
  27. package/compiled/views/RegisterVersion.js +0 -20
  28. package/compiled/views/SearchQuery.js +0 -58
  29. package/compiled/views/change-request/ChangeRequestContext.js +0 -30
  30. package/compiled/views/change-request/Proposals.js +0 -185
  31. package/compiled/views/change-request/objectChangeset.js +0 -189
  32. package/compiled/views/detail/ChangeRequest/Proposal.js +0 -144
  33. package/compiled/views/detail/ChangeRequest/index.js +0 -140
  34. package/compiled/views/detail/ChangeRequest/transitions.js +0 -418
  35. package/compiled/views/detail/CustomView/index.js +0 -32
  36. package/compiled/views/detail/RegisterHome/index.js +0 -70
  37. package/compiled/views/detail/RegisterItem/RelatedItems.js +0 -28
  38. package/compiled/views/detail/RegisterItem/SupersedingItemMenu.js +0 -27
  39. package/compiled/views/detail/RegisterItem/index.js +0 -277
  40. package/compiled/views/detail/RegisterMeta/RegisterMetaForm.js +0 -135
  41. package/compiled/views/detail/RegisterMeta/index.js +0 -61
  42. package/compiled/views/detail/index.js +0 -11
  43. package/compiled/views/diffing/InlineDiff.js +0 -20
  44. package/compiled/views/diffing/StructuredDiff.js +0 -38
  45. package/compiled/views/hooks/useCustomView.js +0 -14
  46. package/compiled/views/hooks/useItemClassConfig.js +0 -14
  47. package/compiled/views/hooks/useItemRef.js +0 -26
  48. package/compiled/views/hooks/useSingleRegisterItemData.js +0 -21
  49. package/compiled/views/index.js +0 -142
  50. package/compiled/views/itemPathUtils.js +0 -115
  51. package/compiled/views/itemQueryUtils.js +0 -42
  52. package/compiled/views/protocolRegistry.js +0 -24
  53. package/compiled/views/sidebar/Browse/index.js +0 -278
  54. package/compiled/views/sidebar/Export/index.js +0 -47
  55. package/compiled/views/sidebar/ListItem.js +0 -23
  56. package/compiled/views/sidebar/Registration/index.js +0 -114
  57. package/compiled/views/sidebar/Search/index.js +0 -100
  58. package/compiled/views/sidebar/index.js +0 -73
  59. package/compiled/views/util.js +0 -63
  60. package/dependencies-local/extension-kit/SettingsContext.d.ts +0 -8
  61. package/dependencies-local/extension-kit/SettingsContext.js +0 -19
  62. package/dependencies-local/extension-kit/SettingsContext.js.map +0 -1
  63. package/dependencies-local/extension-kit/context.d.ts +0 -11
  64. package/dependencies-local/extension-kit/context.js +0 -133
  65. package/dependencies-local/extension-kit/context.js.map +0 -1
  66. package/dependencies-local/extension-kit/i18n/ContextProvider.d.ts +0 -9
  67. package/dependencies-local/extension-kit/i18n/ContextProvider.js +0 -33
  68. package/dependencies-local/extension-kit/i18n/ContextProvider.js.map +0 -1
  69. package/dependencies-local/extension-kit/i18n/context.d.ts +0 -9
  70. package/dependencies-local/extension-kit/i18n/context.js +0 -23
  71. package/dependencies-local/extension-kit/i18n/context.js.map +0 -1
  72. package/dependencies-local/extension-kit/i18n/types.d.ts +0 -10
  73. package/dependencies-local/extension-kit/i18n/types.js +0 -5
  74. package/dependencies-local/extension-kit/i18n/types.js.map +0 -1
  75. package/dependencies-local/extension-kit/i18n/widgets.d.ts +0 -16
  76. package/dependencies-local/extension-kit/i18n/widgets.js +0 -56
  77. package/dependencies-local/extension-kit/i18n/widgets.js.map +0 -1
  78. package/dependencies-local/extension-kit/index.d.ts +0 -3
  79. package/dependencies-local/extension-kit/index.js +0 -78
  80. package/dependencies-local/extension-kit/index.js.map +0 -1
  81. package/dependencies-local/extension-kit/object-specs/index.d.ts +0 -2
  82. package/dependencies-local/extension-kit/object-specs/index.js +0 -22
  83. package/dependencies-local/extension-kit/object-specs/index.js.map +0 -1
  84. package/dependencies-local/extension-kit/object-specs/paneron-object.d.ts +0 -6
  85. package/dependencies-local/extension-kit/object-specs/paneron-object.js +0 -161
  86. package/dependencies-local/extension-kit/object-specs/paneron-object.js.map +0 -1
  87. package/dependencies-local/extension-kit/object-specs/ser-des.d.ts +0 -31
  88. package/dependencies-local/extension-kit/object-specs/ser-des.js +0 -187
  89. package/dependencies-local/extension-kit/object-specs/ser-des.js.map +0 -1
  90. package/dependencies-local/extension-kit/object-specs/yaml/custom-bool.d.ts +0 -2
  91. package/dependencies-local/extension-kit/object-specs/yaml/custom-bool.js +0 -42
  92. package/dependencies-local/extension-kit/object-specs/yaml/custom-bool.js.map +0 -1
  93. package/dependencies-local/extension-kit/object-specs/yaml/custom-timestamp.d.ts +0 -3
  94. package/dependencies-local/extension-kit/object-specs/yaml/custom-timestamp.js +0 -110
  95. package/dependencies-local/extension-kit/object-specs/yaml/custom-timestamp.js.map +0 -1
  96. package/dependencies-local/extension-kit/object-specs/yaml/index.d.ts +0 -9
  97. package/dependencies-local/extension-kit/object-specs/yaml/index.js +0 -36
  98. package/dependencies-local/extension-kit/object-specs/yaml/index.js.map +0 -1
  99. package/dependencies-local/extension-kit/object-specs/yaml/schema.d.ts +0 -3
  100. package/dependencies-local/extension-kit/object-specs/yaml/schema.js +0 -26
  101. package/dependencies-local/extension-kit/object-specs/yaml/schema.js.map +0 -1
  102. package/dependencies-local/extension-kit/package.json +0 -53
  103. package/dependencies-local/extension-kit/settings.d.ts +0 -6
  104. package/dependencies-local/extension-kit/settings.js +0 -11
  105. package/dependencies-local/extension-kit/settings.js.map +0 -1
  106. package/dependencies-local/extension-kit/types/binary-invocation.d.ts +0 -31
  107. package/dependencies-local/extension-kit/types/binary-invocation.js +0 -5
  108. package/dependencies-local/extension-kit/types/binary-invocation.js.map +0 -1
  109. package/dependencies-local/extension-kit/types/buffers.d.ts +0 -17
  110. package/dependencies-local/extension-kit/types/buffers.js +0 -5
  111. package/dependencies-local/extension-kit/types/buffers.js.map +0 -1
  112. package/dependencies-local/extension-kit/types/changes.d.ts +0 -37
  113. package/dependencies-local/extension-kit/types/changes.js +0 -5
  114. package/dependencies-local/extension-kit/types/changes.js.map +0 -1
  115. package/dependencies-local/extension-kit/types/data.d.ts +0 -54
  116. package/dependencies-local/extension-kit/types/data.js +0 -5
  117. package/dependencies-local/extension-kit/types/data.js.map +0 -1
  118. package/dependencies-local/extension-kit/types/dialogs.d.ts +0 -15
  119. package/dependencies-local/extension-kit/types/dialogs.js +0 -5
  120. package/dependencies-local/extension-kit/types/dialogs.js.map +0 -1
  121. package/dependencies-local/extension-kit/types/extension-maker.d.ts +0 -17
  122. package/dependencies-local/extension-kit/types/extension-maker.js +0 -5
  123. package/dependencies-local/extension-kit/types/extension-maker.js.map +0 -1
  124. package/dependencies-local/extension-kit/types/extension.d.ts +0 -27
  125. package/dependencies-local/extension-kit/types/extension.js +0 -5
  126. package/dependencies-local/extension-kit/types/extension.js.map +0 -1
  127. package/dependencies-local/extension-kit/types/index.d.ts +0 -3
  128. package/dependencies-local/extension-kit/types/index.js +0 -41
  129. package/dependencies-local/extension-kit/types/index.js.map +0 -1
  130. package/dependencies-local/extension-kit/types/indexes.d.ts +0 -6
  131. package/dependencies-local/extension-kit/types/indexes.js +0 -15
  132. package/dependencies-local/extension-kit/types/indexes.js.map +0 -1
  133. package/dependencies-local/extension-kit/types/migrations.d.ts +0 -15
  134. package/dependencies-local/extension-kit/types/migrations.js +0 -5
  135. package/dependencies-local/extension-kit/types/migrations.js.map +0 -1
  136. package/dependencies-local/extension-kit/types/object-spec.d.ts +0 -108
  137. package/dependencies-local/extension-kit/types/object-spec.js +0 -23
  138. package/dependencies-local/extension-kit/types/object-spec.js.map +0 -1
  139. package/dependencies-local/extension-kit/types/objects.d.ts +0 -18
  140. package/dependencies-local/extension-kit/types/objects.js +0 -5
  141. package/dependencies-local/extension-kit/types/objects.js.map +0 -1
  142. package/dependencies-local/extension-kit/types/progress.d.ts +0 -5
  143. package/dependencies-local/extension-kit/types/progress.js +0 -5
  144. package/dependencies-local/extension-kit/types/progress.js.map +0 -1
  145. package/dependencies-local/extension-kit/types/renderer.d.ts +0 -495
  146. package/dependencies-local/extension-kit/types/renderer.js +0 -5
  147. package/dependencies-local/extension-kit/types/renderer.js.map +0 -1
  148. package/dependencies-local/extension-kit/useDebounce.d.ts +0 -2
  149. package/dependencies-local/extension-kit/useDebounce.js +0 -27
  150. package/dependencies-local/extension-kit/useDebounce.js.map +0 -1
  151. package/dependencies-local/extension-kit/usePersistentStateReducer.d.ts +0 -35
  152. package/dependencies-local/extension-kit/usePersistentStateReducer.js +0 -91
  153. package/dependencies-local/extension-kit/usePersistentStateReducer.js.map +0 -1
  154. package/dependencies-local/extension-kit/useTimeTravelingPersistentStateReducer.d.ts +0 -48
  155. package/dependencies-local/extension-kit/useTimeTravelingPersistentStateReducer.js +0 -116
  156. package/dependencies-local/extension-kit/useTimeTravelingPersistentStateReducer.js.map +0 -1
  157. package/dependencies-local/extension-kit/util.d.ts +0 -8
  158. package/dependencies-local/extension-kit/util.js +0 -21
  159. package/dependencies-local/extension-kit/util.js.map +0 -1
  160. package/dependencies-local/extension-kit/widgets/ErrorState.d.ts +0 -8
  161. package/dependencies-local/extension-kit/widgets/ErrorState.js +0 -44
  162. package/dependencies-local/extension-kit/widgets/ErrorState.js.map +0 -1
  163. package/dependencies-local/extension-kit/widgets/Grid.d.ts +0 -41
  164. package/dependencies-local/extension-kit/widgets/Grid.js +0 -213
  165. package/dependencies-local/extension-kit/widgets/Grid.js.map +0 -1
  166. package/dependencies-local/extension-kit/widgets/HelpTooltip.d.ts +0 -18
  167. package/dependencies-local/extension-kit/widgets/HelpTooltip.js +0 -84
  168. package/dependencies-local/extension-kit/widgets/HelpTooltip.js.map +0 -1
  169. package/dependencies-local/extension-kit/widgets/ItemCount.d.ts +0 -19
  170. package/dependencies-local/extension-kit/widgets/ItemCount.js +0 -78
  171. package/dependencies-local/extension-kit/widgets/ItemCount.js.map +0 -1
  172. package/dependencies-local/extension-kit/widgets/List.d.ts +0 -40
  173. package/dependencies-local/extension-kit/widgets/List.js +0 -191
  174. package/dependencies-local/extension-kit/widgets/List.js.map +0 -1
  175. package/dependencies-local/extension-kit/widgets/Navbar.d.ts +0 -20
  176. package/dependencies-local/extension-kit/widgets/Navbar.js +0 -75
  177. package/dependencies-local/extension-kit/widgets/Navbar.js.map +0 -1
  178. package/dependencies-local/extension-kit/widgets/SearchResultList.d.ts +0 -24
  179. package/dependencies-local/extension-kit/widgets/SearchResultList.js +0 -201
  180. package/dependencies-local/extension-kit/widgets/SearchResultList.js.map +0 -1
  181. package/dependencies-local/extension-kit/widgets/Sidebar/Block.d.ts +0 -21
  182. package/dependencies-local/extension-kit/widgets/Sidebar/Block.js +0 -94
  183. package/dependencies-local/extension-kit/widgets/Sidebar/Block.js.map +0 -1
  184. package/dependencies-local/extension-kit/widgets/Sidebar/BlockStateButtonGroup.d.ts +0 -6
  185. package/dependencies-local/extension-kit/widgets/Sidebar/BlockStateButtonGroup.js +0 -22
  186. package/dependencies-local/extension-kit/widgets/Sidebar/BlockStateButtonGroup.js.map +0 -1
  187. package/dependencies-local/extension-kit/widgets/Sidebar/PropertyView.d.ts +0 -28
  188. package/dependencies-local/extension-kit/widgets/Sidebar/PropertyView.js +0 -148
  189. package/dependencies-local/extension-kit/widgets/Sidebar/PropertyView.js.map +0 -1
  190. package/dependencies-local/extension-kit/widgets/Sidebar/index.d.ts +0 -27
  191. package/dependencies-local/extension-kit/widgets/Sidebar/index.js +0 -178
  192. package/dependencies-local/extension-kit/widgets/Sidebar/index.js.map +0 -1
  193. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/SuperSidebar.d.ts +0 -13
  194. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/SuperSidebar.js +0 -82
  195. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/SuperSidebar.js.map +0 -1
  196. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/context.d.ts +0 -10
  197. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/context.js +0 -168
  198. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/context.js.map +0 -1
  199. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/detail.d.ts +0 -9
  200. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/detail.js +0 -66
  201. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/detail.js.map +0 -1
  202. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/index.d.ts +0 -33
  203. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/index.js +0 -204
  204. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/index.js.map +0 -1
  205. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/types.d.ts +0 -74
  206. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/types.js +0 -5
  207. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/types.js.map +0 -1
  208. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/util.d.ts +0 -1
  209. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/util.js +0 -14
  210. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/util.js.map +0 -1
  211. package/dependencies-local/extension-kit/widgets/Workspace.d.ts +0 -38
  212. package/dependencies-local/extension-kit/widgets/Workspace.js +0 -99
  213. package/dependencies-local/extension-kit/widgets/Workspace.js.map +0 -1
  214. package/dependencies-local/extension-kit/widgets/panels/PanelSeparator.d.ts +0 -12
  215. package/dependencies-local/extension-kit/widgets/panels/PanelSeparator.js +0 -57
  216. package/dependencies-local/extension-kit/widgets/panels/PanelSeparator.js.map +0 -1
  217. package/dependencies-local/extension-kit/widgets/panels/index.d.ts +0 -28
  218. package/dependencies-local/extension-kit/widgets/panels/index.js +0 -169
  219. package/dependencies-local/extension-kit/widgets/panels/index.js.map +0 -1
  220. package/dist/common.d.ts +0 -1
  221. package/dist/common.js.map +0 -1
  222. package/dist/index.d.ts +0 -6
  223. package/dist/index.js.map +0 -1
  224. package/dist/migrations/initial.d.ts +0 -3
  225. package/dist/migrations/initial.js.map +0 -1
  226. package/dist/package.json +0 -56
  227. package/dist/types/cr.d.ts +0 -216
  228. package/dist/types/cr.js.map +0 -1
  229. package/dist/types/index.d.ts +0 -7
  230. package/dist/types/index.js.map +0 -1
  231. package/dist/types/item.d.ts +0 -59
  232. package/dist/types/item.js.map +0 -1
  233. package/dist/types/proposal.d.ts +0 -64
  234. package/dist/types/proposal.js.map +0 -1
  235. package/dist/types/register.d.ts +0 -18
  236. package/dist/types/register.js.map +0 -1
  237. package/dist/types/registry.d.ts +0 -15
  238. package/dist/types/registry.js.map +0 -1
  239. package/dist/types/stakeholder.d.ts +0 -58
  240. package/dist/types/stakeholder.js.map +0 -1
  241. package/dist/types/util.d.ts +0 -21
  242. package/dist/types/util.js.map +0 -1
  243. package/dist/types/views.d.ts +0 -157
  244. package/dist/types/views.js.map +0 -1
  245. package/dist/views/AnnotatedChange.d.ts +0 -7
  246. package/dist/views/AnnotatedChange.js.map +0 -1
  247. package/dist/views/BrowserCtx.d.ts +0 -73
  248. package/dist/views/BrowserCtx.js.map +0 -1
  249. package/dist/views/FilterCriteria/CRITERIA_CONFIGURATION.d.ts +0 -17
  250. package/dist/views/FilterCriteria/CRITERIA_CONFIGURATION.js.map +0 -1
  251. package/dist/views/FilterCriteria/criteriaGroupToQueryExpression.d.ts +0 -6
  252. package/dist/views/FilterCriteria/criteriaGroupToQueryExpression.js.map +0 -1
  253. package/dist/views/FilterCriteria/criteriaGroupToSummary.d.ts +0 -5
  254. package/dist/views/FilterCriteria/criteriaGroupToSummary.js.map +0 -1
  255. package/dist/views/FilterCriteria/criteriaToNodes.d.ts +0 -24
  256. package/dist/views/FilterCriteria/criteriaToNodes.js.map +0 -1
  257. package/dist/views/FilterCriteria/index.d.ts +0 -23
  258. package/dist/views/FilterCriteria/index.js.map +0 -1
  259. package/dist/views/FilterCriteria/models.d.ts +0 -68
  260. package/dist/views/FilterCriteria/models.js.map +0 -1
  261. package/dist/views/FilterCriteria/mutateGroup.d.ts +0 -17
  262. package/dist/views/FilterCriteria/mutateGroup.js.map +0 -1
  263. package/dist/views/GenericRelatedItemView.d.ts +0 -6
  264. package/dist/views/GenericRelatedItemView.js.map +0 -1
  265. package/dist/views/RegisterStakeholder.d.ts +0 -9
  266. package/dist/views/RegisterStakeholder.js.map +0 -1
  267. package/dist/views/RegisterVersion.d.ts +0 -9
  268. package/dist/views/RegisterVersion.js.map +0 -1
  269. package/dist/views/SearchQuery.d.ts +0 -13
  270. package/dist/views/SearchQuery.js.map +0 -1
  271. package/dist/views/change-request/ChangeRequestContext.d.ts +0 -20
  272. package/dist/views/change-request/ChangeRequestContext.js.map +0 -1
  273. package/dist/views/change-request/Proposals.d.ts +0 -21
  274. package/dist/views/change-request/Proposals.js.map +0 -1
  275. package/dist/views/change-request/objectChangeset.d.ts +0 -31
  276. package/dist/views/change-request/objectChangeset.js.map +0 -1
  277. package/dist/views/detail/ChangeRequest/Proposal.d.ts +0 -0
  278. package/dist/views/detail/ChangeRequest/Proposal.js.map +0 -1
  279. package/dist/views/detail/ChangeRequest/index.d.ts +0 -13
  280. package/dist/views/detail/ChangeRequest/index.js.map +0 -1
  281. package/dist/views/detail/ChangeRequest/transitions.d.ts +0 -28
  282. package/dist/views/detail/ChangeRequest/transitions.js.map +0 -1
  283. package/dist/views/detail/CustomView/index.d.ts +0 -13
  284. package/dist/views/detail/CustomView/index.js.map +0 -1
  285. package/dist/views/detail/RegisterHome/index.d.ts +0 -5
  286. package/dist/views/detail/RegisterHome/index.js.map +0 -1
  287. package/dist/views/detail/RegisterItem/RelatedItems.d.ts +0 -14
  288. package/dist/views/detail/RegisterItem/RelatedItems.js.map +0 -1
  289. package/dist/views/detail/RegisterItem/SupersedingItemMenu.d.ts +0 -13
  290. package/dist/views/detail/RegisterItem/SupersedingItemMenu.js.map +0 -1
  291. package/dist/views/detail/RegisterItem/index.d.ts +0 -13
  292. package/dist/views/detail/RegisterItem/index.js.map +0 -1
  293. package/dist/views/detail/RegisterMeta/RegisterMetaForm.d.ts +0 -10
  294. package/dist/views/detail/RegisterMeta/RegisterMetaForm.js.map +0 -1
  295. package/dist/views/detail/RegisterMeta/index.d.ts +0 -10
  296. package/dist/views/detail/RegisterMeta/index.js.map +0 -1
  297. package/dist/views/detail/index.d.ts +0 -1
  298. package/dist/views/detail/index.js.map +0 -1
  299. package/dist/views/diffing/InlineDiff.d.ts +0 -12
  300. package/dist/views/diffing/InlineDiff.js.map +0 -1
  301. package/dist/views/diffing/StructuredDiff.d.ts +0 -11
  302. package/dist/views/diffing/StructuredDiff.js.map +0 -1
  303. package/dist/views/hooks/useCustomView.d.ts +0 -3
  304. package/dist/views/hooks/useCustomView.js.map +0 -1
  305. package/dist/views/hooks/useItemClassConfig.d.ts +0 -3
  306. package/dist/views/hooks/useItemClassConfig.js.map +0 -1
  307. package/dist/views/hooks/useItemRef.d.ts +0 -3
  308. package/dist/views/hooks/useItemRef.js.map +0 -1
  309. package/dist/views/hooks/useSingleRegisterItemData.d.ts +0 -3
  310. package/dist/views/hooks/useSingleRegisterItemData.js.map +0 -1
  311. package/dist/views/index.d.ts +0 -7
  312. package/dist/views/index.js.map +0 -1
  313. package/dist/views/itemPathUtils.d.ts +0 -52
  314. package/dist/views/itemPathUtils.js.map +0 -1
  315. package/dist/views/itemQueryUtils.d.ts +0 -11
  316. package/dist/views/itemQueryUtils.js.map +0 -1
  317. package/dist/views/protocolRegistry.d.ts +0 -12
  318. package/dist/views/protocolRegistry.js.map +0 -1
  319. package/dist/views/sidebar/Browse/index.d.ts +0 -11
  320. package/dist/views/sidebar/Browse/index.js.map +0 -1
  321. package/dist/views/sidebar/Export/index.d.ts +0 -5
  322. package/dist/views/sidebar/Export/index.js.map +0 -1
  323. package/dist/views/sidebar/ListItem.d.ts +0 -10
  324. package/dist/views/sidebar/ListItem.js.map +0 -1
  325. package/dist/views/sidebar/Registration/index.d.ts +0 -5
  326. package/dist/views/sidebar/Registration/index.js.map +0 -1
  327. package/dist/views/sidebar/Search/index.d.ts +0 -18
  328. package/dist/views/sidebar/Search/index.js.map +0 -1
  329. package/dist/views/sidebar/index.d.ts +0 -6
  330. package/dist/views/sidebar/index.js.map +0 -1
  331. package/dist/views/util.d.ts +0 -36
  332. package/dist/views/util.js.map +0 -1
  333. package/react-visual-diff.d.ts +0 -9
  334. /package/{compiled/common.d.ts → common.d.ts} +0 -0
  335. /package/{dist/common.js → common.js} +0 -0
  336. /package/{compiled/common.js.map → common.js.map} +0 -0
  337. /package/{compiled/index.d.ts → index.d.ts} +0 -0
  338. /package/{dist/index.js → index.js} +0 -0
  339. /package/{compiled/index.js.map → index.js.map} +0 -0
  340. /package/{compiled/migrations → migrations}/initial.d.ts +0 -0
  341. /package/{dist/migrations → migrations}/initial.js +0 -0
  342. /package/{compiled/migrations → migrations}/initial.js.map +0 -0
  343. /package/{compiled/types → types}/cr.d.ts +0 -0
  344. /package/{dist/types → types}/cr.js +0 -0
  345. /package/{compiled/types → types}/cr.js.map +0 -0
  346. /package/{compiled/types → types}/index.d.ts +0 -0
  347. /package/{dist/types → types}/index.js +0 -0
  348. /package/{compiled/types → types}/index.js.map +0 -0
  349. /package/{compiled/types → types}/item.d.ts +0 -0
  350. /package/{dist/types → types}/item.js +0 -0
  351. /package/{compiled/types → types}/item.js.map +0 -0
  352. /package/{compiled/types → types}/proposal.d.ts +0 -0
  353. /package/{dist/types → types}/proposal.js +0 -0
  354. /package/{compiled/types → types}/proposal.js.map +0 -0
  355. /package/{compiled/types → types}/register.d.ts +0 -0
  356. /package/{dist/types → types}/register.js +0 -0
  357. /package/{compiled/types → types}/register.js.map +0 -0
  358. /package/{compiled/types → types}/registry.d.ts +0 -0
  359. /package/{dist/types → types}/registry.js +0 -0
  360. /package/{compiled/types → types}/registry.js.map +0 -0
  361. /package/{compiled/types → types}/stakeholder.d.ts +0 -0
  362. /package/{dist/types → types}/stakeholder.js +0 -0
  363. /package/{compiled/types → types}/stakeholder.js.map +0 -0
  364. /package/{compiled/types → types}/util.d.ts +0 -0
  365. /package/{dist/types → types}/util.js +0 -0
  366. /package/{compiled/types → types}/util.js.map +0 -0
  367. /package/{compiled/types → types}/views.d.ts +0 -0
  368. /package/{dist/types → types}/views.js +0 -0
  369. /package/{compiled/types → types}/views.js.map +0 -0
  370. /package/{compiled/views → views}/AnnotatedChange.d.ts +0 -0
  371. /package/{dist/views → views}/AnnotatedChange.js +0 -0
  372. /package/{compiled/views → views}/AnnotatedChange.js.map +0 -0
  373. /package/{compiled/views → views}/BrowserCtx.d.ts +0 -0
  374. /package/{dist/views → views}/BrowserCtx.js +0 -0
  375. /package/{compiled/views → views}/BrowserCtx.js.map +0 -0
  376. /package/{compiled/views → views}/FilterCriteria/CRITERIA_CONFIGURATION.d.ts +0 -0
  377. /package/{dist/views → views}/FilterCriteria/CRITERIA_CONFIGURATION.js +0 -0
  378. /package/{compiled/views → views}/FilterCriteria/CRITERIA_CONFIGURATION.js.map +0 -0
  379. /package/{compiled/views → views}/FilterCriteria/criteriaGroupToQueryExpression.d.ts +0 -0
  380. /package/{dist/views → views}/FilterCriteria/criteriaGroupToQueryExpression.js +0 -0
  381. /package/{compiled/views → views}/FilterCriteria/criteriaGroupToQueryExpression.js.map +0 -0
  382. /package/{compiled/views → views}/FilterCriteria/criteriaGroupToSummary.d.ts +0 -0
  383. /package/{dist/views → views}/FilterCriteria/criteriaGroupToSummary.js +0 -0
  384. /package/{compiled/views → views}/FilterCriteria/criteriaGroupToSummary.js.map +0 -0
  385. /package/{compiled/views → views}/FilterCriteria/criteriaToNodes.d.ts +0 -0
  386. /package/{dist/views → views}/FilterCriteria/criteriaToNodes.js +0 -0
  387. /package/{compiled/views → views}/FilterCriteria/criteriaToNodes.js.map +0 -0
  388. /package/{compiled/views → views}/FilterCriteria/index.d.ts +0 -0
  389. /package/{dist/views → views}/FilterCriteria/index.js +0 -0
  390. /package/{compiled/views → views}/FilterCriteria/index.js.map +0 -0
  391. /package/{compiled/views → views}/FilterCriteria/models.d.ts +0 -0
  392. /package/{dist/views → views}/FilterCriteria/models.js +0 -0
  393. /package/{compiled/views → views}/FilterCriteria/models.js.map +0 -0
  394. /package/{compiled/views → views}/FilterCriteria/mutateGroup.d.ts +0 -0
  395. /package/{dist/views → views}/FilterCriteria/mutateGroup.js +0 -0
  396. /package/{compiled/views → views}/FilterCriteria/mutateGroup.js.map +0 -0
  397. /package/{compiled/views → views}/GenericRelatedItemView.d.ts +0 -0
  398. /package/{dist/views → views}/GenericRelatedItemView.js +0 -0
  399. /package/{compiled/views → views}/GenericRelatedItemView.js.map +0 -0
  400. /package/{compiled/views → views}/RegisterStakeholder.d.ts +0 -0
  401. /package/{dist/views → views}/RegisterStakeholder.js +0 -0
  402. /package/{compiled/views → views}/RegisterStakeholder.js.map +0 -0
  403. /package/{compiled/views → views}/RegisterVersion.d.ts +0 -0
  404. /package/{dist/views → views}/RegisterVersion.js +0 -0
  405. /package/{compiled/views → views}/RegisterVersion.js.map +0 -0
  406. /package/{compiled/views → views}/SearchQuery.d.ts +0 -0
  407. /package/{dist/views → views}/SearchQuery.js +0 -0
  408. /package/{compiled/views → views}/SearchQuery.js.map +0 -0
  409. /package/{compiled/views → views}/change-request/ChangeRequestContext.d.ts +0 -0
  410. /package/{dist/views → views}/change-request/ChangeRequestContext.js +0 -0
  411. /package/{compiled/views → views}/change-request/ChangeRequestContext.js.map +0 -0
  412. /package/{compiled/views → views}/change-request/Proposals.d.ts +0 -0
  413. /package/{dist/views → views}/change-request/Proposals.js +0 -0
  414. /package/{compiled/views → views}/change-request/Proposals.js.map +0 -0
  415. /package/{compiled/views → views}/change-request/objectChangeset.d.ts +0 -0
  416. /package/{dist/views → views}/change-request/objectChangeset.js +0 -0
  417. /package/{compiled/views → views}/change-request/objectChangeset.js.map +0 -0
  418. /package/{compiled/views → views}/detail/ChangeRequest/Proposal.d.ts +0 -0
  419. /package/{dist/views → views}/detail/ChangeRequest/Proposal.js +0 -0
  420. /package/{compiled/views → views}/detail/ChangeRequest/Proposal.js.map +0 -0
  421. /package/{compiled/views → views}/detail/ChangeRequest/index.d.ts +0 -0
  422. /package/{dist/views → views}/detail/ChangeRequest/index.js +0 -0
  423. /package/{compiled/views → views}/detail/ChangeRequest/index.js.map +0 -0
  424. /package/{compiled/views → views}/detail/ChangeRequest/transitions.d.ts +0 -0
  425. /package/{dist/views → views}/detail/ChangeRequest/transitions.js +0 -0
  426. /package/{compiled/views → views}/detail/ChangeRequest/transitions.js.map +0 -0
  427. /package/{compiled/views → views}/detail/CustomView/index.d.ts +0 -0
  428. /package/{dist/views → views}/detail/CustomView/index.js +0 -0
  429. /package/{compiled/views → views}/detail/CustomView/index.js.map +0 -0
  430. /package/{compiled/views → views}/detail/RegisterHome/index.d.ts +0 -0
  431. /package/{dist/views → views}/detail/RegisterHome/index.js +0 -0
  432. /package/{compiled/views → views}/detail/RegisterHome/index.js.map +0 -0
  433. /package/{compiled/views → views}/detail/RegisterItem/RelatedItems.d.ts +0 -0
  434. /package/{dist/views → views}/detail/RegisterItem/RelatedItems.js +0 -0
  435. /package/{compiled/views → views}/detail/RegisterItem/RelatedItems.js.map +0 -0
  436. /package/{compiled/views → views}/detail/RegisterItem/SupersedingItemMenu.d.ts +0 -0
  437. /package/{dist/views → views}/detail/RegisterItem/SupersedingItemMenu.js +0 -0
  438. /package/{compiled/views → views}/detail/RegisterItem/SupersedingItemMenu.js.map +0 -0
  439. /package/{compiled/views → views}/detail/RegisterItem/index.d.ts +0 -0
  440. /package/{dist/views → views}/detail/RegisterItem/index.js +0 -0
  441. /package/{compiled/views → views}/detail/RegisterItem/index.js.map +0 -0
  442. /package/{compiled/views → views}/detail/RegisterMeta/RegisterMetaForm.d.ts +0 -0
  443. /package/{dist/views → views}/detail/RegisterMeta/RegisterMetaForm.js +0 -0
  444. /package/{compiled/views → views}/detail/RegisterMeta/RegisterMetaForm.js.map +0 -0
  445. /package/{compiled/views → views}/detail/RegisterMeta/index.d.ts +0 -0
  446. /package/{dist/views → views}/detail/RegisterMeta/index.js +0 -0
  447. /package/{compiled/views → views}/detail/RegisterMeta/index.js.map +0 -0
  448. /package/{compiled/views → views}/detail/index.d.ts +0 -0
  449. /package/{dist/views → views}/detail/index.js +0 -0
  450. /package/{compiled/views → views}/detail/index.js.map +0 -0
  451. /package/{compiled/views → views}/diffing/InlineDiff.d.ts +0 -0
  452. /package/{dist/views → views}/diffing/InlineDiff.js +0 -0
  453. /package/{compiled/views → views}/diffing/InlineDiff.js.map +0 -0
  454. /package/{compiled/views → views}/diffing/StructuredDiff.d.ts +0 -0
  455. /package/{dist/views → views}/diffing/StructuredDiff.js +0 -0
  456. /package/{compiled/views → views}/diffing/StructuredDiff.js.map +0 -0
  457. /package/{compiled/views → views}/hooks/useCustomView.d.ts +0 -0
  458. /package/{dist/views → views}/hooks/useCustomView.js +0 -0
  459. /package/{compiled/views → views}/hooks/useCustomView.js.map +0 -0
  460. /package/{compiled/views → views}/hooks/useItemClassConfig.d.ts +0 -0
  461. /package/{dist/views → views}/hooks/useItemClassConfig.js +0 -0
  462. /package/{compiled/views → views}/hooks/useItemClassConfig.js.map +0 -0
  463. /package/{compiled/views → views}/hooks/useItemRef.d.ts +0 -0
  464. /package/{dist/views → views}/hooks/useItemRef.js +0 -0
  465. /package/{compiled/views → views}/hooks/useItemRef.js.map +0 -0
  466. /package/{compiled/views → views}/hooks/useSingleRegisterItemData.d.ts +0 -0
  467. /package/{dist/views → views}/hooks/useSingleRegisterItemData.js +0 -0
  468. /package/{compiled/views → views}/hooks/useSingleRegisterItemData.js.map +0 -0
  469. /package/{compiled/views → views}/index.d.ts +0 -0
  470. /package/{dist/views → views}/index.js +0 -0
  471. /package/{compiled/views → views}/index.js.map +0 -0
  472. /package/{compiled/views → views}/itemPathUtils.d.ts +0 -0
  473. /package/{dist/views → views}/itemPathUtils.js +0 -0
  474. /package/{compiled/views → views}/itemPathUtils.js.map +0 -0
  475. /package/{compiled/views → views}/itemQueryUtils.d.ts +0 -0
  476. /package/{dist/views → views}/itemQueryUtils.js +0 -0
  477. /package/{compiled/views → views}/itemQueryUtils.js.map +0 -0
  478. /package/{compiled/views → views}/protocolRegistry.d.ts +0 -0
  479. /package/{dist/views → views}/protocolRegistry.js +0 -0
  480. /package/{compiled/views → views}/protocolRegistry.js.map +0 -0
  481. /package/{compiled/views → views}/sidebar/Browse/index.d.ts +0 -0
  482. /package/{dist/views → views}/sidebar/Browse/index.js +0 -0
  483. /package/{compiled/views → views}/sidebar/Browse/index.js.map +0 -0
  484. /package/{compiled/views → views}/sidebar/Export/index.d.ts +0 -0
  485. /package/{dist/views → views}/sidebar/Export/index.js +0 -0
  486. /package/{compiled/views → views}/sidebar/Export/index.js.map +0 -0
  487. /package/{compiled/views → views}/sidebar/ListItem.d.ts +0 -0
  488. /package/{dist/views → views}/sidebar/ListItem.js +0 -0
  489. /package/{compiled/views → views}/sidebar/ListItem.js.map +0 -0
  490. /package/{compiled/views → views}/sidebar/Registration/index.d.ts +0 -0
  491. /package/{dist/views → views}/sidebar/Registration/index.js +0 -0
  492. /package/{compiled/views → views}/sidebar/Registration/index.js.map +0 -0
  493. /package/{compiled/views → views}/sidebar/Search/index.d.ts +0 -0
  494. /package/{dist/views → views}/sidebar/Search/index.js +0 -0
  495. /package/{compiled/views → views}/sidebar/Search/index.js.map +0 -0
  496. /package/{compiled/views → views}/sidebar/index.d.ts +0 -0
  497. /package/{dist/views → views}/sidebar/index.js +0 -0
  498. /package/{compiled/views → views}/sidebar/index.js.map +0 -0
  499. /package/{compiled/views → views}/util.d.ts +0 -0
  500. /package/{dist/views → views}/util.js +0 -0
  501. /package/{compiled/views → views}/util.js.map +0 -0
@@ -1,64 +0,0 @@
1
- import type { RegisterStakeholder } from './stakeholder';
2
- import type { Citation } from './util';
3
- export declare const DECISION_STATUSES: readonly ["pending", "tentative", "final"];
4
- export declare const DISPOSITION_OPTIONS: readonly ["withdrawn", "accepted", "notAccepted"];
5
- /**
6
- * Item paths in proposal set must start with a slash
7
- * and will be treated relative to dataset root.
8
- * Object paths should conform to registry item path shape
9
- * of `[/subregisterID]/<classID>/<itemID>.yaml`.
10
- */
11
- export declare type ProposalSet = {
12
- [objectPath: string]: ChangeProposal;
13
- };
14
- /** A change request, per ISO 19135-1 model. */
15
- export interface ChangeRequest {
16
- /** Justification for the change */
17
- justification: string;
18
- proposals: ProposalSet;
19
- id: string;
20
- timeStarted: Date;
21
- timeProposed?: Date;
22
- timeDisposed?: Date;
23
- sponsor: RegisterStakeholder;
24
- status: typeof DECISION_STATUSES[number];
25
- disposition?: typeof DISPOSITION_OPTIONS[number];
26
- controlBodyDecisionEvent?: string;
27
- controlBodyNotes?: string;
28
- registerManagerNotes?: string;
29
- }
30
- /**
31
- * Change request properties for the purposes of drafting.
32
- * (`controlBodyNotes` is in question.)
33
- */
34
- export declare type DraftChangeRequest = Pick<ChangeRequest, 'proposals' | 'justification' | 'controlBodyNotes' | 'sponsor'>;
35
- export declare const PROPOSAL_TYPES: readonly ["addition", "clarification", "amendment"];
36
- interface BaseProposal {
37
- disposition?: 'accepted' | 'notAccepted';
38
- type: typeof PROPOSAL_TYPES[number];
39
- sources?: Citation[];
40
- }
41
- export interface Addition extends BaseProposal {
42
- type: 'addition';
43
- }
44
- export interface Clarification extends BaseProposal {
45
- type: 'clarification';
46
- }
47
- export declare const AMENDMENT_TYPES: readonly ["supersession", "retirement", "invalidation"];
48
- interface BaseAmendment extends BaseProposal {
49
- type: 'amendment';
50
- amendmentType: typeof AMENDMENT_TYPES[number];
51
- }
52
- export interface Retirement extends BaseAmendment {
53
- amendmentType: 'retirement';
54
- }
55
- export interface Supersession extends BaseAmendment {
56
- amendmentType: 'supersession';
57
- supersedingItemIDs: string[];
58
- }
59
- export interface Invalidation extends BaseAmendment {
60
- amendmentType: 'invalidation';
61
- }
62
- export declare type Amendment = Supersession | Retirement | Invalidation;
63
- export declare type ChangeProposal = Amendment | Clarification | Addition;
64
- export {};
@@ -1 +0,0 @@
1
- {"version":3,"file":"proposal.js","sourceRoot":"","sources":["../../src/types/proposal.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,SAAS;IACT,WAAW;IACX,OAAO;CACC,CAAC;AAEX,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,WAAW;IACX,UAAU;IACV,aAAa;CACL,CAAC;AA2CX,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU;IACV,eAAe;IACf,WAAW;CACH,CAAC;AAqBX,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,cAAc;IACd,YAAY;IACZ,cAAc;CACN,CAAC","sourcesContent":["import type { RegisterStakeholder } from './stakeholder';\nimport type { Citation } from './util';\n\n\nexport const DECISION_STATUSES = [\n 'pending',\n 'tentative',\n 'final',\n] as const;\n\nexport const DISPOSITION_OPTIONS = [\n 'withdrawn',\n 'accepted',\n 'notAccepted',\n] as const;\n\n/**\n * Item paths in proposal set must start with a slash\n * and will be treated relative to dataset root.\n * Object paths should conform to registry item path shape\n * of `[/subregisterID]/<classID>/<itemID>.yaml`.\n */\nexport type ProposalSet = {\n [objectPath: string]: ChangeProposal\n}\n\n/** A change request, per ISO 19135-1 model. */\nexport interface ChangeRequest {\n // Supplied by sponsor\n /** Justification for the change */\n justification: string\n\n proposals: ProposalSet\n\n // Enforced by the system\n id: string\n timeStarted: Date\n timeProposed?: Date\n timeDisposed?: Date\n sponsor: RegisterStakeholder\n\n // Supplied by register manager\n status: typeof DECISION_STATUSES[number] // Default filled in by the system but changeable\n disposition?: typeof DISPOSITION_OPTIONS[number]\n controlBodyDecisionEvent?: string\n controlBodyNotes?: string\n registerManagerNotes?: string\n}\n\n\n/**\n * Change request properties for the purposes of drafting.\n * (`controlBodyNotes` is in question.)\n */\nexport type DraftChangeRequest =\n Pick<ChangeRequest, 'proposals' | 'justification' | 'controlBodyNotes' | 'sponsor'>;\n\nexport const PROPOSAL_TYPES = [\n 'addition',\n 'clarification',\n 'amendment',\n] as const;\n\ninterface BaseProposal {\n //itemID: RegisterItemID\n disposition?: 'accepted' | 'notAccepted'\n type: typeof PROPOSAL_TYPES[number]\n sources?: Citation[]\n}\n\nexport interface Addition extends BaseProposal {\n type: 'addition'\n ///** New item data. */\n //payload: Payload\n}\n\nexport interface Clarification extends BaseProposal {\n type: 'clarification'\n ///** Updated item data */\n //payload: Payload\n}\n\nexport const AMENDMENT_TYPES = [\n 'supersession',\n 'retirement',\n 'invalidation',\n] as const;\ninterface BaseAmendment extends BaseProposal {\n type: 'amendment'\n amendmentType: typeof AMENDMENT_TYPES[number]\n}\nexport interface Retirement extends BaseAmendment {\n amendmentType: 'retirement'\n}\nexport interface Supersession extends BaseAmendment {\n amendmentType: 'supersession'\n supersedingItemIDs: string[]\n}\nexport interface Invalidation extends BaseAmendment {\n amendmentType: 'invalidation'\n}\nexport type Amendment = Supersession | Retirement | Invalidation\n\nexport type ChangeProposal = Amendment | Clarification | Addition\n"]}
@@ -1,18 +0,0 @@
1
- import { type RegisterStakeholder } from './stakeholder';
2
- import { type Locale } from './util';
3
- export interface Register {
4
- id?: string;
5
- name: string;
6
- contentSummary: string;
7
- uniformResourceIdentifier: string;
8
- operatingLanguage: Locale;
9
- alternativeLanguages: Locale[];
10
- version?: Version;
11
- stakeholders: RegisterStakeholder[];
12
- }
13
- export declare function isRegisterMetadata(val: any): val is Register;
14
- export interface Version {
15
- id: string;
16
- timestamp: Date;
17
- }
18
- export declare function isVersion(val: any): val is Version;
@@ -1 +0,0 @@
1
- {"version":3,"file":"register.js","sourceRoot":"","sources":["../../src/types/register.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAkBhF,MAAM,UAAU,kBAAkB,CAAC,GAAQ;IACzC,OAAO,CACL,GAAG;QACH,8BAA8B;QAC9B,+BAA+B;QAC/B,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC;QAC1B,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;QAC5B,yCAAyC;QACzC,2CAA2C;QAC3C,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC;QAClC,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;QAC3B,6BAA6B;QAC7B,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,qBAAqB,CAAC;QAC7C,8BAA8B;QAC9B,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAsB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC;QACrE,iDAAiD;QACjD,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC;AAOD,MAAM,UAAU,SAAS,CAAC,GAAQ;IAChC,OAAO,CACL,GAAG;QACH,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC;QACxB,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC;QAC/B,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;AAChC,CAAC","sourcesContent":["import { type RegisterStakeholder, isRegisterStakeholder } from './stakeholder';\nimport { type Locale } from './util';\n\n\nexport interface Register {\n // TODO: what is register ID? Perhaps URI is enough?\n id?: string\n name: string\n contentSummary: string\n uniformResourceIdentifier: string\n\n operatingLanguage: Locale\n alternativeLanguages: Locale[]\n\n version?: Version\n stakeholders: RegisterStakeholder[]\n}\n\nexport function isRegisterMetadata(val: any): val is Register {\n return (\n val &&\n // val.hasOwnProperty('id') &&\n //typeof val.id === 'string' &&\n val.hasOwnProperty('name') &&\n typeof val.name === 'string' &&\n //val.hasOwnProperty('contentSummary') &&\n //typeof val.contentSummary === 'string' &&\n val.hasOwnProperty('stakeholders') &&\n val.stakeholders.length > 0 &&\n // Stakeholders must be right\n val.stakeholders.every(isRegisterStakeholder) &&\n // Must have at least an owner\n val.stakeholders.some((s: RegisterStakeholder) => s.role === 'owner') &&\n // Must have a valid version (or no version? hmm)\n (val.version === undefined || isVersion(val.version)));\n}\n\nexport interface Version {\n id: string\n timestamp: Date\n}\n\nexport function isVersion(val: any): val is Version {\n return (\n val &&\n val.hasOwnProperty('id') &&\n val.hasOwnProperty('timestamp') &&\n typeof val.id === 'string');\n}\n"]}
@@ -1,15 +0,0 @@
1
- export interface Registry {
2
- /** A registry is referenced by an UUID. */
3
- id: string;
4
- name: string;
5
- /** HTTPS URL to Git repository holding registry source information. */
6
- repoURL: string;
7
- /** URL under which the registry is made publicly available. */
8
- publicURL: string;
9
- /** Data directory within the repository. */
10
- dataRoot?: string;
11
- }
12
- export declare const KNOWN_AUTHORITATIVE_REGISTRIES: Registry[];
13
- export interface ConnectedRegistry {
14
- workingCopyPath: string;
15
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/types/registry.ts"],"names":[],"mappings":"AAgBA,2BAA2B;AAE3B,MAAM,CAAC,MAAM,8BAA8B,GAAe;IACxD;QACE,EAAE,EAAE,sCAAsC;QAC1C,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,+BAA+B;QAC1C,OAAO,EAAE,+CAA+C;KACzD;CACF,CAAC","sourcesContent":["export interface Registry {\n /** A registry is referenced by an UUID. */\n id: string\n\n name: string\n\n /** HTTPS URL to Git repository holding registry source information. */\n repoURL: string\n\n /** URL under which the registry is made publicly available. */\n publicURL: string\n\n /** Data directory within the repository. */\n dataRoot?: string\n}\n\n// TODO: What is below for?\n\nexport const KNOWN_AUTHORITATIVE_REGISTRIES: Registry[] = [\n {\n id: '9D546C5C-8FA4-496D-A721-6DA72E35F4A9',\n name: 'ICS codes',\n publicURL: 'https://ics.demo.paneron.org/',\n repoURL: 'https://github.com/paneron/ics-codes-registry',\n },\n];\n\nexport interface ConnectedRegistry {\n workingCopyPath: string\n}\n"]}
@@ -1,58 +0,0 @@
1
- /** Possible roles of a register stakeholder. */
2
- export declare const StakeholderRole: {
3
- readonly Owner: "owner";
4
- readonly ControlBody: "control-body";
5
- readonly Manager: "manager";
6
- readonly Submitter: "submitter";
7
- };
8
- declare type StakeholderRoleType = typeof StakeholderRole[keyof typeof StakeholderRole];
9
- export declare const STAKEHOLDER_ROLES: StakeholderRoleType[];
10
- export declare function isStakeholderRole(val: string): val is StakeholderRoleType;
11
- /** “Abstract” register stakeholder type. */
12
- interface _RegisterStakeholder {
13
- role: StakeholderRoleType;
14
- name: string;
15
- gitServerUsername?: string;
16
- parties: Party[];
17
- }
18
- interface Owner extends _RegisterStakeholder {
19
- role: typeof StakeholderRole.Owner;
20
- }
21
- export declare function isOwner(val: RegisterStakeholder): val is Owner;
22
- interface ControlBody extends _RegisterStakeholder {
23
- role: typeof StakeholderRole.ControlBody;
24
- }
25
- export declare function isControlBody(val: RegisterStakeholder): val is ControlBody;
26
- interface Manager extends _RegisterStakeholder {
27
- role: typeof StakeholderRole.Manager;
28
- }
29
- export declare function isManager(val: RegisterStakeholder): val is Manager;
30
- interface Submitter extends _RegisterStakeholder {
31
- role: typeof StakeholderRole.Submitter;
32
- }
33
- export declare function isSubmitter(val: RegisterStakeholder): val is Submitter;
34
- interface Role {
35
- positionName: string;
36
- name?: never;
37
- organization: Organization;
38
- }
39
- interface Individual {
40
- name: string;
41
- positionName?: never;
42
- organization?: Organization;
43
- }
44
- declare type Organization<T = {
45
- logoURL: string[];
46
- name: string;
47
- }> = Partial<T> & Pick<T, keyof T>;
48
- declare type Party = (Individual | Role | Organization) & {
49
- contacts: {
50
- label: string;
51
- value: string;
52
- notes?: string;
53
- }[];
54
- };
55
- export declare function isIndividualParty(val: any): val is Individual;
56
- export declare type RegisterStakeholder = Owner | ControlBody | Manager | Submitter;
57
- export declare function isRegisterStakeholder(val: any): val is RegisterStakeholder;
58
- export {};
@@ -1 +0,0 @@
1
- {"version":3,"file":"stakeholder.js","sourceRoot":"","sources":["../../src/types/stakeholder.ts"],"names":[],"mappings":"AAAA,eAAe;AAEf,gDAAgD;AAChD,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,cAAc;IAC3B,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;CACd,CAAC;AAIX,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAA0B,CAAC;AAEzF,MAAM,UAAU,iBAAiB,CAAC,GAAW;IAC3C,OAAO,iBAAiB,CAAC,OAAO,CAAC,GAA0B,CAAC,IAAI,CAAC,CAAC;AACpE,CAAC;AAgBD,MAAM,UAAU,OAAO,CAAC,GAAwB;IAC9C,OAAO,GAAG,CAAC,IAAI,KAAK,eAAe,CAAC,KAAK,CAAC;AAC5C,CAAC;AAKD,MAAM,UAAU,aAAa,CAAC,GAAwB;IACpD,OAAO,GAAG,CAAC,IAAI,KAAK,eAAe,CAAC,WAAW,CAAC;AAClD,CAAC;AAKD,MAAM,UAAU,SAAS,CAAC,GAAwB;IAChD,OAAO,GAAG,CAAC,IAAI,KAAK,eAAe,CAAC,OAAO,CAAC;AAC9C,CAAC;AAKD,MAAM,UAAU,WAAW,CAAC,GAAwB;IAClD,OAAO,GAAG,CAAC,IAAI,KAAK,eAAe,CAAC,SAAS,CAAC;AAChD,CAAC;AA+BD,MAAM,UAAU,iBAAiB,CAAC,GAAQ;IACxC,OAAO,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;AAC7E,CAAC;AAID,MAAM,UAAU,qBAAqB,CAAC,GAAQ;IAC5C,OAAO,CACL,GAAG;QACH,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC;QAC1B,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;QAC3B,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;AAChC,CAAC","sourcesContent":["// Stakeholders\n\n/** Possible roles of a register stakeholder. */\nexport const StakeholderRole = {\n Owner: 'owner',\n ControlBody: 'control-body',\n Manager: 'manager',\n Submitter: 'submitter',\n} as const;\n\ntype StakeholderRoleType = typeof StakeholderRole[keyof typeof StakeholderRole];\n\nexport const STAKEHOLDER_ROLES = Object.values(StakeholderRole) as StakeholderRoleType[];\n\nexport function isStakeholderRole(val: string): val is StakeholderRoleType {\n return STAKEHOLDER_ROLES.indexOf(val as StakeholderRoleType) >= 0;\n}\n\n/** “Abstract” register stakeholder type. */\ninterface _RegisterStakeholder {\n role: StakeholderRoleType\n name: string\n\n // TODO: Make git server username per-party, instead of stakeholder-global?\n gitServerUsername?: string\n\n parties: Party[]\n}\n\ninterface Owner extends _RegisterStakeholder {\n role: typeof StakeholderRole.Owner\n}\nexport function isOwner(val: RegisterStakeholder): val is Owner {\n return val.role === StakeholderRole.Owner;\n}\n\ninterface ControlBody extends _RegisterStakeholder {\n role: typeof StakeholderRole.ControlBody\n}\nexport function isControlBody(val: RegisterStakeholder): val is ControlBody {\n return val.role === StakeholderRole.ControlBody;\n}\n\ninterface Manager extends _RegisterStakeholder {\n role: typeof StakeholderRole.Manager\n}\nexport function isManager(val: RegisterStakeholder): val is Manager {\n return val.role === StakeholderRole.Manager;\n}\n\ninterface Submitter extends _RegisterStakeholder {\n role: typeof StakeholderRole.Submitter\n}\nexport function isSubmitter(val: RegisterStakeholder): val is Submitter {\n return val.role === StakeholderRole.Submitter;\n}\n\n//interface NonEditingStakeholder extends _RegisterStakeholder {\n// role: 'owner'\n//}\n//export interface EditingStakeholder extends _RegisterStakeholder {\n// role: 'manager' | 'submitter'\n//}\n\ninterface Role {\n positionName: string\n name?: never\n organization: Organization\n}\n\ninterface Individual {\n name: string\n positionName?: never\n organization?: Organization\n}\n\n// Either logoURL or name or both must be present on an org here\ntype Organization<T = {\n logoURL: string[];\n name: string;\n}> = Partial<T> & Pick<T, keyof T>\n\ntype Party = (Individual | Role | Organization) & {\n contacts: { label: string, value: string, notes?: string }[]\n}\n\nexport function isIndividualParty(val: any): val is Individual {\n return typeof val.name === 'string' && !val.hasOwnProperty('positionName');\n}\n\nexport type RegisterStakeholder = Owner | ControlBody | Manager | Submitter\n\nexport function isRegisterStakeholder(val: any): val is RegisterStakeholder {\n return (\n val &&\n val.hasOwnProperty('role') &&\n isStakeholderRole(val.role) &&\n val.hasOwnProperty('name'));\n}\n"]}
@@ -1,21 +0,0 @@
1
- export interface Locale {
2
- name: string;
3
- country: string;
4
- languageCode: string;
5
- characterEncoding: 'utf-8';
6
- }
7
- export interface Citation {
8
- title: string;
9
- seriesIssueID: string | null;
10
- seriesName: string | null;
11
- seriesPage: string | null;
12
- edition: string | null;
13
- editionDate: Date | null;
14
- otherDetails: string;
15
- isbn: string | null;
16
- issn: string | null;
17
- }
18
- export interface LocalizedAlternative<T> {
19
- alternative: T;
20
- locale: Locale;
21
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/types/util.ts"],"names":[],"mappings":"AAAA,YAAY","sourcesContent":["// Utilities\n\nexport interface Locale {\n name: string\n country: string\n languageCode: string // ISO 639-2\n characterEncoding: 'utf-8' // TODO: Support more encodings\n // TODO: citation?: CI_Citation\n}\n\n\nexport interface Citation {\n title: string\n\n seriesIssueID: string | null\n seriesName: string | null\n seriesPage: string | null\n\n edition: string | null\n editionDate: Date | null\n\n otherDetails: string\n\n isbn: string | null\n issn: string | null\n\n //alternateTitles: string[]\n //publicationDate: Date\n}\n\n\nexport interface LocalizedAlternative<T> {\n alternative: T\n locale: Locale\n}\n"]}
@@ -1,157 +0,0 @@
1
- import type React from 'react';
2
- import type { ButtonProps, MenuItemProps } from '@blueprintjs/core';
3
- import type { ObjectDatasetRequest, ObjectDatasetResponse, ValueHook } from '@riboseinc/paneron-extension-kit/types';
4
- import type { InternalItemReference, Payload, RegisterItem, RegisterItemClass } from './item';
5
- import type { CriteriaGroup } from '../views/FilterCriteria/models';
6
- /**
7
- * Mostly a wrapper around useObjectData, but coerces value type
8
- * (TODO: validate!) and takes into account change request from any
9
- * wrapping change request context. If a change request is present,
10
- * will substitute proposed item data unless `ignoreActiveCR` is set.
11
- *
12
- * NOTE: Despite the name, returns the entire RegisterItem,
13
- * not just the `.data` property with item payload.
14
- */
15
- export declare type RegisterItemDataHook<P extends Payload = Payload> = (opts: {
16
- itemPaths: string[];
17
- ignoreActiveCR?: true;
18
- }) => ValueHook<Record<string, RegisterItem<P> | null>>;
19
- export interface RegisterConfiguration<Items extends ItemClassConfigurationSet = Record<string, ItemClassConfiguration<any>>> {
20
- /**
21
- * Configuration for all items in this register.
22
- * This includes items in subregisters.
23
- */
24
- itemClassConfiguration: Items;
25
- /**
26
- * Default expression used to sort an item.
27
- * Passed to useFilteredIndex().
28
- */
29
- keyExpression?: string;
30
- /** Subregister information. */
31
- subregisters?: Subregisters<Items>;
32
- }
33
- export declare type Subregisters<Items extends ItemClassConfigurationSet = Record<string, ItemClassConfiguration<any>>> = {
34
- [subregisterID: string]: {
35
- title: string;
36
- /** Names of item classes that go in this subregister. */
37
- itemClasses: (keyof Items)[];
38
- };
39
- };
40
- export declare type ItemClassConfigurationSet = {
41
- [itemClassID: string]: ItemClassConfiguration<any>;
42
- };
43
- export interface ExportFormatConfiguration<P extends Payload> {
44
- /** The name of the export format. */
45
- label: string;
46
- /**
47
- * The function that takes register item data and some helper functions
48
- * and is expected to return a blob.
49
- */
50
- exportItem: (itemData: RegisterItem<P>, opts: {
51
- getObjectData: (opts: ObjectDatasetRequest) => Promise<ObjectDatasetResponse>;
52
- getBlob: (val: string) => Promise<Uint8Array>;
53
- }) => Promise<Uint8Array>;
54
- }
55
- export interface ItemClassConfiguration<P extends Payload> {
56
- meta: RegisterItemClass;
57
- itemCanBeSuperseded?: boolean;
58
- defaults?: RegistryItemPayloadDefaults<P>;
59
- validatePayload?: (item: P) => Promise<boolean>;
60
- sanitizePayload?: (item: P) => Promise<P>;
61
- itemSorter?: (a: P, b: P) => number;
62
- /**
63
- * Expression used to sort an item of this class.
64
- * Passed to useFilteredIndex().
65
- */
66
- keyExpression?: string;
67
- exportFormats?: ExportFormatConfiguration<P>[];
68
- views: {
69
- listItemView: ItemListView<P>;
70
- editView: ItemEditView<P>;
71
- detailView?: ItemDetailView<P>;
72
- };
73
- }
74
- export interface RegistryViewProps<Items extends ItemClassConfigurationSet = Record<string, ItemClassConfiguration<any>>> extends RegisterConfiguration<Items> {
75
- /**
76
- * When search is initially opened, have this query pre-defined.
77
- * Not very useful since there are also preset searches in the browser now.
78
- */
79
- defaultSearchCriteria?: CriteriaGroup;
80
- customViews?: CustomViewConfiguration[];
81
- }
82
- export interface CustomViewConfiguration {
83
- id: string;
84
- label: string;
85
- description: string;
86
- view: React.FC<{
87
- /** View can support optional path for custom state/inner navigation (provisional). */
88
- path: string;
89
- }>;
90
- icon?: JSX.Element;
91
- }
92
- export interface ItemAction {
93
- getButtonProps: (item: RegisterItem<any>, itemClass: ItemClassConfiguration<any>, subregisterID?: string) => ButtonProps | MenuItemProps;
94
- }
95
- export declare type RegistryView = React.FC<RegistryViewProps>;
96
- declare type RegistryItemPayloadDefaults<P extends Payload> = Partial<Omit<P, 'id'>>;
97
- /**
98
- * A small part of item class configuration,
99
- * useful e.g. for formatting related items.
100
- */
101
- export declare type RelatedItemClassConfiguration = {
102
- title: string;
103
- itemView: ItemListView<any>;
104
- };
105
- export interface RegistryItemViewProps<P extends Payload> {
106
- /**
107
- * Item reference.
108
- * Glossarist, for example, uses it to determine language subregister and set appropriate writing direction.
109
- */
110
- itemRef: Omit<InternalItemReference, 'itemID'> & {
111
- itemID?: InternalItemReference['itemID'];
112
- };
113
- /** Item data (payload). */
114
- itemData: P;
115
- className?: string;
116
- /** Deprecated */
117
- useRegisterItemData?: any;
118
- /** Deprecated */
119
- getRelatedItemClassConfiguration?: any;
120
- }
121
- export interface GenericRelatedItemViewProps {
122
- /** Currently selected item’s ref. */
123
- itemRef?: InternalItemReference;
124
- /**
125
- * By default, clicking the item will spawn a tab via TabbedWorkspace context.
126
- * This prop can customize that behavior.
127
- */
128
- onJump?: () => void;
129
- className?: string;
130
- availableClassIDs?: string[];
131
- availableSubregisterIDs?: string[];
132
- itemSorter?: ItemClassConfiguration<any>["itemSorter"];
133
- /** Called to auto-create an item (can’t auto-create if not provided) */
134
- onCreateNew?: () => Promise<InternalItemReference>;
135
- /** Called when current item is cleared (can’t clear if not provided) */
136
- onClear?: () => void;
137
- /** Called when a new item is selected (can’t change if not provided) */
138
- onChange?: (newRef: InternalItemReference) => void;
139
- /** Deprecated */
140
- useRegisterItemData?: any;
141
- /** Deprecated */
142
- getRelatedItemClassConfiguration?: any;
143
- }
144
- export declare type ItemEditView<P extends Payload> = React.FC<RegistryItemViewProps<P> & {
145
- onChange?: (newData: P) => void;
146
- onCreateRelatedItem?: (classID: string, subregisterID?: string) => Promise<InternalItemReference>;
147
- }>;
148
- export interface ItemDetailViewProps<P extends Payload> extends RegistryItemViewProps<P> {
149
- }
150
- export declare type ItemDetailView<P extends Payload> = React.FC<ItemDetailViewProps<P>>;
151
- export interface ItemListViewProps<P extends Payload> extends RegistryItemViewProps<P> {
152
- }
153
- export declare type ItemListView<P extends Payload> = React.FC<ItemListViewProps<P>>;
154
- export declare type LazyItemView = React.FC<{
155
- itemID: string;
156
- }>;
157
- export {};
@@ -1 +0,0 @@
1
- {"version":3,"file":"views.js","sourceRoot":"","sources":["../../src/types/views.ts"],"names":[],"mappings":"","sourcesContent":["import type React from 'react';\nimport type { ButtonProps, MenuItemProps } from '@blueprintjs/core';\nimport type { ObjectDatasetRequest, ObjectDatasetResponse, ValueHook } from '@riboseinc/paneron-extension-kit/types';\nimport type { InternalItemReference, Payload, RegisterItem, RegisterItemClass } from './item';\nimport type { CriteriaGroup } from '../views/FilterCriteria/models';\n\n\n// Hooks\n\n/**\n * Mostly a wrapper around useObjectData, but coerces value type\n * (TODO: validate!) and takes into account change request from any\n * wrapping change request context. If a change request is present,\n * will substitute proposed item data unless `ignoreActiveCR` is set.\n *\n * NOTE: Despite the name, returns the entire RegisterItem,\n * not just the `.data` property with item payload.\n */\nexport type RegisterItemDataHook<P extends Payload = Payload> =\n (opts: { itemPaths: string[], ignoreActiveCR?: true }) => ValueHook<Record<string, RegisterItem<P> | null>>;\n\n\n// Extension configuration\n\n// TODO: Obsolete?\n// export interface ExtensionContext {\n// getRelatedItemClassConfiguration: (classID: string) => RelatedItemClassConfiguration\n// useRegisterItemData: RegisterItemDataHook\n// onJump?: () => void\n// }\n\nexport interface RegisterConfiguration\n<Items extends ItemClassConfigurationSet = Record<string, ItemClassConfiguration<any>>> {\n /**\n * Configuration for all items in this register.\n * This includes items in subregisters.\n */\n itemClassConfiguration: Items\n\n /**\n * Default expression used to sort an item.\n * Passed to useFilteredIndex().\n */\n keyExpression?: string\n\n /** Subregister information. */\n subregisters?: Subregisters<Items>\n}\n\nexport type Subregisters\n<Items extends ItemClassConfigurationSet = Record<string, ItemClassConfiguration<any>>> = {\n [subregisterID: string]: {\n title: string\n\n /** Names of item classes that go in this subregister. */\n itemClasses: (keyof Items)[]\n }\n};\n\nexport type ItemClassConfigurationSet = {\n [itemClassID: string]: ItemClassConfiguration<any>\n};\n\n\n\nexport interface ExportFormatConfiguration<P extends Payload> {\n /** The name of the export format. */\n label: string\n\n /**\n * The function that takes register item data and some helper functions\n * and is expected to return a blob.\n */\n exportItem: (\n itemData: RegisterItem<P>,\n opts: {\n getObjectData: (opts: ObjectDatasetRequest) => Promise<ObjectDatasetResponse>,\n getBlob: (val: string) => Promise<Uint8Array>,\n },\n ) => Promise<Uint8Array>\n}\n\n\nexport interface ItemClassConfiguration<P extends Payload/*, F extends Field*/> {\n meta: RegisterItemClass\n\n itemCanBeSuperseded?: boolean\n // If false, items of this class cannot be superseded, only retired.\n // Default is true.\n\n defaults?: RegistryItemPayloadDefaults<P>\n // Used to pre-populate item data e.g. when a new item is created.\n\n validatePayload?: (item: P) => Promise<boolean>\n sanitizePayload?: (item: P) => Promise<P>\n\n // XXX: Confirm if obsolete and remove\n itemSorter?: (a: P, b: P) => number\n\n /**\n * Expression used to sort an item of this class.\n * Passed to useFilteredIndex().\n */\n keyExpression?: string\n\n exportFormats?: ExportFormatConfiguration<P>[]\n\n views: {\n listItemView: ItemListView<P>\n editView: ItemEditView<P>\n detailView?: ItemDetailView<P>\n }\n}\n\n\nexport interface RegistryViewProps\n<Items extends ItemClassConfigurationSet = Record<string, ItemClassConfiguration<any>>>\nextends RegisterConfiguration<Items> {\n /**\n * When search is initially opened, have this query pre-defined.\n * Not very useful since there are also preset searches in the browser now.\n */\n // TODO: Obsoluete?\n defaultSearchCriteria?: CriteriaGroup\n\n customViews?: CustomViewConfiguration[]\n}\n\nexport interface CustomViewConfiguration {\n id: string\n label: string\n description: string\n view: React.FC<{\n /** View can support optional path for custom state/inner navigation (provisional). */\n path: string\n }>\n icon?: JSX.Element\n}\n\n\n// Item views\n\nexport interface ItemAction {\n getButtonProps:\n (item: RegisterItem<any>, itemClass: ItemClassConfiguration<any>, subregisterID?: string) =>\n ButtonProps | MenuItemProps\n}\n\nexport type RegistryView = React.FC<RegistryViewProps>\n\ntype RegistryItemPayloadDefaults<P extends Payload> =\n Partial<Omit<P, 'id'>>;\n\n/**\n * A small part of item class configuration,\n * useful e.g. for formatting related items.\n */\nexport type RelatedItemClassConfiguration = {\n title: string\n itemView: ItemListView<any>\n}\n\n\nexport interface RegistryItemViewProps<P extends Payload> {\n /**\n * Item reference.\n * Glossarist, for example, uses it to determine language subregister and set appropriate writing direction.\n */\n itemRef: Omit<InternalItemReference, 'itemID'> & { itemID?: InternalItemReference['itemID'] }\n\n /** Item data (payload). */\n itemData: P\n\n className?: string\n //subregisterID?: string\n\n /** Deprecated */\n useRegisterItemData?: any\n /** Deprecated */\n getRelatedItemClassConfiguration?: any\n}\n\nexport interface GenericRelatedItemViewProps {\n /** Currently selected item’s ref. */\n itemRef?: InternalItemReference\n\n /**\n * By default, clicking the item will spawn a tab via TabbedWorkspace context.\n * This prop can customize that behavior.\n */\n onJump?: () => void\n\n className?: string\n //useRegisterItemData: RegisterItemDataHook\n //getRelatedItemClassConfiguration: ExtensionContext[\"getRelatedItemClassConfiguration\"]\n availableClassIDs?: string[]\n availableSubregisterIDs?: string[]\n\n // XXX: Check if obsolete, remove if unused\n itemSorter?: ItemClassConfiguration<any>[\"itemSorter\"]\n\n /** Called to auto-create an item (can’t auto-create if not provided) */\n onCreateNew?: () => Promise<InternalItemReference>\n\n /** Called when current item is cleared (can’t clear if not provided) */\n onClear?: () => void\n\n /** Called when a new item is selected (can’t change if not provided) */\n onChange?: (newRef: InternalItemReference) => void\n\n /** Deprecated */\n useRegisterItemData?: any\n /** Deprecated */\n getRelatedItemClassConfiguration?: any\n}\n\n\nexport type ItemEditView<P extends Payload> = React.FC<RegistryItemViewProps<P> & {\n onChange?: (newData: P) => void\n onCreateRelatedItem?:\n (classID: string, subregisterID?: string) => Promise<InternalItemReference>\n}>;\n\nexport interface ItemDetailViewProps<P extends Payload> extends RegistryItemViewProps<P> {\n //useRegisterItemData: RegisterItemDataHook\n}\n\nexport type ItemDetailView<P extends Payload> = React.FC<ItemDetailViewProps<P>>;\n\nexport interface ItemListViewProps<P extends Payload> extends RegistryItemViewProps<P> {\n}\n\nexport type ItemListView<P extends Payload> = React.FC<ItemListViewProps<P>>;\n\nexport type LazyItemView = React.FC<{ itemID: string }>;\n"]}
@@ -1,7 +0,0 @@
1
- /** @jsx jsx */
2
- /** @jsxFrag React.Fragment */
3
- import React from 'react';
4
- declare const AnnotatedChange: React.FC<{
5
- type: 'added' | 'removed';
6
- }>;
7
- export default AnnotatedChange;
@@ -1 +0,0 @@
1
- {"version":3,"file":"AnnotatedChange.js","sourceRoot":"","sources":["../../src/views/AnnotatedChange.tsx"],"names":[],"mappings":"AAAA,eAAe;AACf,8BAA8B;AAE9B,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C,SAAS,cAAc,CACrB,IAAyB,EACzB,UAA2B,EAC3B,WAAgC;IAEhC,MAAM,eAAe,GAA0B;QAC7C,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,UAAU,EAAE,CAAC;KACd,CAAC;IACF,IAAI,YAAmC,CAAC;IACxC,IAAI,IAAI,KAAK,OAAO,EAAE;QACpB,YAAY,GAAG;YACb,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW;YAC3C,UAAU,EAAE,CAAC;YACb,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC;KACH;SAAM;QACL,YAAY,GAAG;YACb,IAAI,EAAE,aAAa;YACnB,UAAU,EAAE,CAAC;YACb,KAAK,EAAE,MAAM,CAAC,IAAI;SACnB,CAAC;KACH;IACD,MAAM,mBAAmB,GAAG,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IAClE,MAAM,gBAAgB,GAAG,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IAE5D,OAAO,CAAC,mBAAmB,EAAE,gBAAgB,CAAC,CAAC;AACjD,CAAC;AAGD,MAAM,eAAe,GAA4C,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;IACtF,MAAM,KAAK,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAC;IAEnD,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvD,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IACjF,MAAM,WAAW,GAAG,SAAS,KAAK,KAAK,CAAC;IAExC,0DAA0D;IAC1D,oHAAoH;IAEpH,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,KAAK,CAAC,OAAO,EAAE;YACjB,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YACrE,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE;gBAC3B,CAAC,CAAC,IAAI,EAAE,CAAC;aACV;YACD,OAAO,SAAS,OAAO;gBACrB,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE;oBAC3B,CAAC,CAAC,MAAM,EAAE,CAAC;iBACZ;YACH,CAAC,CAAA;SACF;QACD,OAAO;IACT,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAEpB,OAAO,CACL,cACI,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,EACxE,GAAG,EAAE,KAAK,EACV,KAAK,EAAE,IAAI,IAAI,oBAAoB,IACpC,QAAQ,CACJ,CACR,CAAC;AACJ,CAAC,CAAC;AAGF,eAAe,eAAe,CAAC","sourcesContent":["/** @jsx jsx */\n/** @jsxFrag React.Fragment */\n\nimport { jsx } from '@emotion/react';\nimport React, { useRef, useEffect } from 'react';\nimport { Colors } from '@blueprintjs/core'\nimport { annotate } from 'rough-notation';\nimport { RoughAnnotation, RoughAnnotationConfig } from 'rough-notation/lib/model';\n\n\nfunction annotateChange(\n type: 'added' | 'removed',\n wrappingEl: HTMLSpanElement,\n childIsBoxy: boolean | undefined):\nRoughAnnotation[] {\n const highlightConfig: RoughAnnotationConfig = {\n type: 'highlight',\n animate: false,\n color: Colors.GOLD5,\n iterations: 3,\n };\n let changeConfig: RoughAnnotationConfig;\n if (type === 'added') {\n changeConfig = {\n type: childIsBoxy ? 'bracket' : 'underline',\n iterations: 1,\n color: Colors.BLUE4,\n };\n } else {\n changeConfig = {\n type: 'crossed-off',\n iterations: 1,\n color: Colors.RED3,\n };\n }\n const highlightAnnotation = annotate(wrappingEl, highlightConfig);\n const changeAnnotation = annotate(wrappingEl, changeConfig);\n\n return [highlightAnnotation, changeAnnotation];\n}\n\n\nconst AnnotatedChange: React.FC<{ type: 'added' | 'removed' }> = ({ type, children }) => {\n const elRef = useRef<HTMLSpanElement | null>(null);\n\n const firstChild = React.Children.toArray(children)[0];\n\n const childType = React.isValidElement(firstChild) ? firstChild.type : undefined;\n const childIsBoxy = childType === 'div';\n\n // Could it bring more accuracy to block/inline detection?\n //const childCount = React.isValidElement(firstChild) ? React.Children.count(firstChild.props.children) : undefined;\n\n useEffect(() => {\n if (elRef.current) {\n const annotations = annotateChange(type, elRef.current, childIsBoxy);\n for (const a of annotations) {\n a.show();\n }\n return function cleanup() {\n for (const a of annotations) {\n a.remove();\n }\n }\n }\n return;\n }, [elRef.current]);\n\n return (\n <mark\n style={{ display: childIsBoxy ? 'block' : 'inline', background: 'none' }}\n ref={elRef}\n title={`(${type} in this proposal)`}>\n {children}\n </mark>\n );\n};\n\n\nexport default AnnotatedChange;\n"]}
@@ -1,73 +0,0 @@
1
- /** @jsx jsx */
2
- /// <reference types="react" />
3
- import type { CustomViewConfiguration, ItemClassConfigurationSet, ItemClassConfiguration, RegisterItem, RegisterItemDataHook, Register, RegisterStakeholder, RelatedItemClassConfiguration, Subregisters, InternalItemReference } from '../types';
4
- import { type CriteriaGroup } from './FilterCriteria/models';
5
- import { type Protocol } from './protocolRegistry';
6
- export declare type BrowserCtx = {
7
- itemClasses: ItemClassConfigurationSet;
8
- subregisters?: Subregisters;
9
- /**
10
- * Stakeholder corresponding to the current user.
11
- * If current user is not a stakeholder, undefined.
12
- */
13
- stakeholder?: RegisterStakeholder;
14
- /**
15
- * Common “key expression” (used for sorting) across the register.
16
- * Should contain the expression itself, no “return” statement.
17
- */
18
- keyExpression?: string;
19
- /** Default search criteria to be used by the Search sidebar */
20
- defaultSearchCriteria?: CriteriaGroup;
21
- /**
22
- * Allows to access register metadata
23
- * (e.g., version, stakeholders).
24
- *
25
- * `undefined` if loading, `null` if unspecified.
26
- */
27
- registerMetadata?: Register | null;
28
- /** Hook for getting register item data. */
29
- useRegisterItemData: RegisterItemDataHook;
30
- /**
31
- * Invoked to navigate to an item.
32
- * In SPA tabbed context, could translate to `spawnTab()`;
33
- * in static web context, could translate to navigating browser location.
34
- */
35
- jumpTo?: (uri: `${Protocol}:${string}`) => void;
36
- /**
37
- * If a register item is selected, provide its data here.
38
- *
39
- * If item data is still loading or invalid, `undefined`.
40
- * If item is not selected, `null`.
41
- */
42
- selectedRegisterItem?: {
43
- item: RegisterItem<any>;
44
- ref: InternalItemReference;
45
- itemClass: ItemClassConfiguration<any>;
46
- } | null;
47
- /**
48
- * Change request being drafted or reviewed.
49
- * `undefined` if loading, `null` if there is no active change request.
50
- */
51
- activeChangeRequestID?: string | null;
52
- /**
53
- * Setter for `activeChangeRequest()`. Set to `null` to unset.
54
- */
55
- setActiveChangeRequestID?: (id: string | null) => void;
56
- /**
57
- * An async function for retrieving data of register items
58
- * at given paths. For cases where the hook doesn’t work.
59
- *
60
- * If a path contains nothing or contains not a register item,
61
- * the result will be null.
62
- */
63
- /**
64
- * Extension-provided additional views that don’t correspond
65
- * to entities like register item, change request, etc. handled by RegistryKit.
66
- */
67
- customViews: CustomViewConfiguration[];
68
- /**
69
- * Given item class ID, returns a small subset of relevant class configuration data.
70
- */
71
- getRelatedItemClassConfiguration: (clsID: string) => RelatedItemClassConfiguration;
72
- };
73
- export declare const BrowserCtx: import("react").Context<BrowserCtx>;
@@ -1 +0,0 @@
1
- {"version":3,"file":"BrowserCtx.js","sourceRoot":"","sources":["../../src/views/BrowserCtx.tsx"],"names":[],"mappings":"AAAA,eAAe;AAEf,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAyGtC,MAAM,CAAC,MAAM,UAAU,GAAG,aAAa,CAAa;IAClD,WAAW,EAAE,EAAE;IACf,WAAW,EAAE,EAAE;IACf,yCAAyC;IACzC,oBAAoB,EAAE,IAAI;IAC1B,gBAAgB,EAAE,SAAS;IAC3B,mBAAmB,EAAE,GAAG,EAAE,CAAC,CAAC;QAC1B,KAAK,EAAE,EAAE;QACT,WAAW,EAAE,CAAC,CAAC;QACf,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,IAAI;QAChB,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC;KACtB,CAAC;IACF,gCAAgC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,kCAAqB,EAAE,CAAC;CAClG,CAAC,CAAC","sourcesContent":["/** @jsx jsx */\n\nimport { jsx } from '@emotion/react';\nimport { createContext } from 'react';\nimport type {\n CustomViewConfiguration,\n ItemClassConfigurationSet,\n ItemClassConfiguration,\n RegisterItem,\n RegisterItemDataHook,\n Register,\n RegisterStakeholder,\n RelatedItemClassConfiguration,\n // SaveProposalHandler,\n Subregisters,\n InternalItemReference,\n} from '../types';\nimport { type CriteriaGroup } from './FilterCriteria/models';\nimport { type Protocol } from './protocolRegistry';\n\n\n// TODO(perf): split into smaller contexts\nexport type BrowserCtx = {\n itemClasses: ItemClassConfigurationSet\n subregisters?: Subregisters\n\n /**\n * Stakeholder corresponding to the current user.\n * If current user is not a stakeholder, undefined.\n */\n stakeholder?: RegisterStakeholder\n\n /**\n * Common “key expression” (used for sorting) across the register.\n * Should contain the expression itself, no “return” statement.\n */\n keyExpression?: string\n\n /** Default search criteria to be used by the Search sidebar */\n defaultSearchCriteria?: CriteriaGroup\n\n /**\n * Allows to access register metadata\n * (e.g., version, stakeholders).\n *\n * `undefined` if loading, `null` if unspecified.\n */\n registerMetadata?: Register | null\n\n /** Hook for getting register item data. */\n useRegisterItemData: RegisterItemDataHook\n\n /**\n * Invoked to navigate to an item.\n * In SPA tabbed context, could translate to `spawnTab()`;\n * in static web context, could translate to navigating browser location.\n */\n jumpTo?: (uri: `${Protocol}:${string}`) => void\n\n /**\n * If a register item is selected, provide its data here.\n *\n * If item data is still loading or invalid, `undefined`.\n * If item is not selected, `null`.\n */\n selectedRegisterItem?: {\n item: RegisterItem<any>\n ref: InternalItemReference\n itemClass: ItemClassConfiguration<any>\n } | null\n\n /**\n * Change request being drafted or reviewed.\n * `undefined` if loading, `null` if there is no active change request.\n */\n activeChangeRequestID?: string | null\n\n /**\n * Setter for `activeChangeRequest()`. Set to `null` to unset.\n */\n setActiveChangeRequestID?: (id: string | null) => void\n\n /**\n * An async function for retrieving data of register items\n * at given paths. For cases where the hook doesn’t work.\n *\n * If a path contains nothing or contains not a register item,\n * the result will be null.\n */\n // getRegisterItemData: (opts: { itemPaths: string[] }) => Promise<Record<string, RegisterItem<any> | null>>\n\n /**\n * Extension-provided additional views that don’t correspond\n * to entities like register item, change request, etc. handled by RegistryKit.\n */\n customViews: CustomViewConfiguration[]\n\n // onPropose?: SaveProposalHandler\n\n //selectedItemPath?: string\n\n /**\n * Given item class ID, returns a small subset of relevant class configuration data.\n */\n getRelatedItemClassConfiguration: (clsID: string) => RelatedItemClassConfiguration\n // TODO: Rename to just “get class config”\n};\n\nexport const BrowserCtx = createContext<BrowserCtx>({\n itemClasses: {},\n customViews: [],\n // getRegisterItemData: async () => ({}),\n selectedRegisterItem: null,\n registerMetadata: undefined,\n useRegisterItemData: () => ({\n value: {},\n _reqCounter: -1,\n errors: [],\n isUpdating: true,\n refresh: () => void 0,\n }),\n getRelatedItemClassConfiguration: () => ({ title: 'N/A', itemView: () => <span>Loading…</span> }),\n});\n"]}
@@ -1,17 +0,0 @@
1
- /** @jsx jsx */
2
- /** @jsxFrag React.Fragment */
3
- import { CriteriaConfiguration, CriterionConfiguration } from './models';
4
- export declare const ITEM_CLASS: CriterionConfiguration<{
5
- classID?: string;
6
- }>;
7
- export declare const SUBREGISTER: CriterionConfiguration<{
8
- subregisterID?: string;
9
- }>;
10
- export declare const RAW_SUBSTRING: CriterionConfiguration<{
11
- substring?: string;
12
- }>;
13
- export declare const CUSTOM_CONDITION: CriterionConfiguration<{
14
- customExpression?: string;
15
- }>;
16
- export declare const CRITERIA_CONFIGURATION: CriteriaConfiguration;
17
- export default CRITERIA_CONFIGURATION;
@@ -1 +0,0 @@
1
- {"version":3,"file":"CRITERIA_CONFIGURATION.js","sourceRoot":"","sources":["../../../src/views/FilterCriteria/CRITERIA_CONFIGURATION.tsx"],"names":[],"mappings":"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","sourcesContent":["/** @jsx jsx */\n/** @jsxFrag React.Fragment */\n\nimport { jsx } from '@emotion/react';\nimport { OptionProps } from '@blueprintjs/core';\nimport { Select, TextInput } from '@riboseinc/paneron-extension-kit/widgets/Sidebar/PropertyView';\nimport { CriteriaConfiguration, CriterionConfiguration } from './models';\nimport { SUBREGISTER_PATH_PREFIX } from './index';\n\n\nexport const ITEM_CLASS: CriterionConfiguration<{ classID?: string }> = {\n label: \"item class is\",\n icon: 'cube',\n toQuery: ({ classID }, { subregisters }) => `objPath.indexOf(\"/${classID}/\") >= ${subregisters ? SUBREGISTER_PATH_PREFIX.length - 1 : 0}`,\n fromQuery: (query) => ({\n classID: query.split('/')[1],\n }),\n toSummary: ({ classID }, { itemClasses }) => {\n if (classID) {\n return itemClasses[classID]?.meta.title ?? classID;\n } else {\n return \"(N/A)\";\n }\n },\n widget: ({ data, onChange, itemClasses, availableClassIDs, className, style }) => {\n const itemClassChoices: OptionProps[] = [\n ...Object.entries(itemClasses).\n filter(([clsID, ]) => availableClassIDs.indexOf(clsID) >= 0).\n map(([classID, classData]) => {\n return { value: classID, label: classData?.meta?.title ?? \"Unknown class\" };\n }),\n { value: '', label: \"(not selected)\" },\n ];\n return (\n <Select\n className={className}\n style={style}\n fill\n options={itemClassChoices}\n value={data.classID ?? ''}\n disabled={!onChange}\n onChange={onChange\n ? (evt) => onChange!({ classID: evt.currentTarget.value })\n : undefined} />\n );\n },\n};\n\n\nexport const SUBREGISTER: CriterionConfiguration<{ subregisterID?: string }> = {\n label: \"is in subregister\",\n icon: 'folder-open',\n isEnabled: ({ subregisters }) => subregisters !== undefined,\n toQuery: ({ subregisterID }, { subregisters }) => subregisters !== undefined && subregisterID?.trim()\n ? `objPath.indexOf(\"/subregisters/${subregisterID}/\") === 0`\n : 'true',\n fromQuery: (query) => ({\n subregisterID: query.split('/')[2],\n }),\n toSummary: ({ subregisterID }, { subregisters }) => {\n if (subregisters && subregisterID) {\n return subregisters[subregisterID].title;\n } else {\n return \"(N/A)\";\n }\n },\n widget: ({ data, onChange, subregisters, className, style }) => {\n const subregisterChoices: OptionProps[] = [\n ...Object.entries(subregisters ?? {}).\n map(([subregisterID, subregisterInfo]) => {\n return { value: subregisterID, label: subregisterInfo.title };\n }),\n { value: '', label: \"(not selected)\" },\n ];\n return (\n <Select\n className={className}\n style={style}\n fill\n options={subregisterChoices}\n value={data.subregisterID ?? ''}\n disabled={!onChange}\n onChange={onChange\n ? (evt) => onChange!({ subregisterID: evt.currentTarget.value })\n : undefined} />\n );\n },\n};\n\n\nexport const RAW_SUBSTRING: CriterionConfiguration<{ substring?: string }> = {\n label: \"raw data contains\",\n icon: 'search-text',\n toQuery: ({ substring }) =>\n substring?.trim()\n ? `JSON.stringify(obj.data ?? {}).toLowerCase().indexOf(\"${substring.toLowerCase().replace(/\"/g, \"\\\\\\\"\")}\") >= 0`\n : `true`,\n fromQuery: (query) => ({\n substring: (query.\n split('JSON.stringify(obj.data ?? {}).toLowerCase().indexOf(\"')[1]?.\n split('\") >= 0')[0] ?? '').replace(/\\\\\"/g, '\"'),\n }),\n toSummary: ({ substring }) => {\n if (substring) {\n return substring.length > 20 ? `${substring.slice(0, 20)}…` : substring;\n } else {\n return 'N/A';\n }\n },\n widget: ({ data, onChange, className, style }) => {\n return <TextInput\n className={className}\n style={style}\n value={data.substring ?? ''}\n onChange={onChange ? substring => onChange!({ substring }) : undefined}\n />;\n },\n}\n\n\nexport const CUSTOM_CONDITION: CriterionConfiguration<{ customExpression?: string; }> = {\n label: \"condition is met\",\n icon: 'code',\n toQuery: ({ customExpression }) => customExpression ?? 'true',\n fromQuery: (query) => ({\n customExpression: query,\n }),\n toSummary: () => \"(custom test expr.)\",\n widget: ({ data, onChange, className }) => {\n return (\n <TextInput\n className={className}\n value={data.customExpression ?? 'true'}\n placeholder=\"Enter a valid query expression…\"\n onChange={onChange\n ? (customExpression) => onChange!({ customExpression })\n : undefined} />\n );\n },\n}\n\n\nexport const CRITERIA_CONFIGURATION: CriteriaConfiguration = {\n 'item-class': ITEM_CLASS,\n 'subregister': SUBREGISTER,\n 'raw-substring': RAW_SUBSTRING,\n 'custom': CUSTOM_CONDITION,\n};\n\n\nexport default CRITERIA_CONFIGURATION;\n"]}
@@ -1,6 +0,0 @@
1
- import { CriteriaGroup } from './models';
2
- /**
3
- * Given a CriteriaGroup,
4
- * returns a query expression suitable for use with filtered object indexes..
5
- */
6
- export default function criteriaGroupToQueryExpression(cg: CriteriaGroup): string;
@@ -1 +0,0 @@
1
- {"version":3,"file":"criteriaGroupToQueryExpression.js","sourceRoot":"","sources":["../../../src/views/FilterCriteria/criteriaGroupToQueryExpression.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,eAAe,EAAE,MAAM,UAAU,CAAC;AAG1D;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,8BAA8B,CAAC,EAAiB;IACtE,MAAM,IAAI,GAAa,EAAE,CAAC;IAE1B,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;QAC3B,IAAI,eAAe,CAAC,CAAC,CAAC,EAAE;YACtB,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBACzB,IAAI,CAAC,IAAI,CAAC,IAAI,8BAA8B,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;aACrD;iBAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBAChC,IAAI,CAAC,IAAI,CAAC,GAAG,8BAA8B,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;aACnD;SACF;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SACpB;KACF;IAED,IAAI,MAAc,CAAC;IACnB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;QACnB,MAAM,GAAG,MAAM,CAAC;KACjB;SAAM;QACL,QAAQ,EAAE,CAAC,OAAO,EAAE;YAClB,KAAK,KAAK;gBACR,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM;YACR,KAAK,KAAK;gBACR,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM;YACR,KAAK,MAAM;gBACT,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC1D,MAAM;SACT;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import { CriteriaGroup, isCriteriaGroup } from './models';\n\n\n/**\n * Given a CriteriaGroup,\n * returns a query expression suitable for use with filtered object indexes..\n */\nexport default function criteriaGroupToQueryExpression(cg: CriteriaGroup): string {\n const exps: string[] = [];\n\n for (const c of cg.criteria) {\n if (isCriteriaGroup(c)) {\n if (c.criteria.length > 1) {\n exps.push(`(${criteriaGroupToQueryExpression(c)})`);\n } else if (c.criteria.length > 0) {\n exps.push(`${criteriaGroupToQueryExpression(c)}`);\n }\n } else {\n exps.push(c.query);\n }\n }\n\n let result: string;\n if (exps.length < 1) {\n result = 'true';\n } else {\n switch (cg.require) {\n case 'all':\n result = exps.join(' && ');\n break;\n case 'any':\n result = exps.join(' || ');\n break;\n case 'none':\n result = exps.map(exp => `${exp} === false`).join(' && ');\n break;\n }\n }\n\n return result;\n}\n"]}
@@ -1,5 +0,0 @@
1
- /** @jsx jsx */
2
- /** @jsxFrag React.Fragment */
3
- /// <reference types="react" />
4
- import { CriteriaGroup, CommonOpts } from './models';
5
- export default function criteriaGroupToSummary(cg: CriteriaGroup, opts: CommonOpts): JSX.Element;
@@ -1 +0,0 @@
1
- {"version":3,"file":"criteriaGroupToSummary.js","sourceRoot":"","sources":["../../../src/views/FilterCriteria/criteriaGroupToSummary.tsx"],"names":[],"mappings":"AAAA,eAAe;AACf,8BAA8B;AAE9B,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,KAAoC,MAAM,OAAO,CAAC;AACzD,OAAO,EAA6B,eAAe,EAAE,MAAM,UAAU,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,4BAA4B;AAG5B,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,EAAiB,EAAE,IAAgB;IAChF,MAAM,IAAI,GAAkB,EAAE,CAAC;IAE/B,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;QAC3B,IAAI,eAAe,CAAC,CAAC,CAAC,EAAE;YACtB,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;SAC5C;aAAM;YACL,MAAM,GAAG,GAAG,sBAAsB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAC1C,IAAI,CAAC,GAAG,EAAE;gBACR,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;gBAChE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;aACpD;YACD,IAAI,CAAC,IAAI,CAAC;gBAAG,GAAG,CAAC,KAAK;;gBAAE,gBAAK,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAM,CAAG,CAAC,CAAC;SAC1F;KACF;IAED,IAAI,MAAmB,CAAC;IACxB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;QACnB,MAAM,GAAG,0CAAkB,CAAC;KAC7B;SAAM;QACL,QAAQ,EAAE,CAAC,OAAO,EAAE;YAClB,KAAK,KAAK;gBACR,MAAM,GAAG,0BAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAmB,EAAE,OAAkB,EAAE,KAAa,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAI,CAAC;gBAClI,MAAM;YACR,KAAK,KAAK;gBACR,MAAM,GAAG,0BAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAmB,EAAE,OAAkB,EAAE,KAAa,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAI,CAAC;gBACpI,MAAM;YACR,KAAK,MAAM;gBACT,MAAM,GAAG;;oBAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAmB,EAAE,OAAkB,EAAE,KAAa,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAI,CAAC;gBAC7I,MAAM;SACT;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["/** @jsx jsx */\n/** @jsxFrag React.Fragment */\n\nimport { jsx } from '@emotion/react';\nimport React, { ReactNode, ReactNodeArray } from 'react';\nimport { CriteriaGroup, CommonOpts, isCriteriaGroup } from './models';\nimport { CRITERIA_CONFIGURATION } from \"./CRITERIA_CONFIGURATION\";\n\n/* Building query summary */\n\n\nexport default function criteriaGroupToSummary(cg: CriteriaGroup, opts: CommonOpts): JSX.Element {\n const exps: JSX.Element[] = [];\n\n for (const c of cg.criteria) {\n if (isCriteriaGroup(c)) {\n exps.push(criteriaGroupToSummary(c, opts));\n } else {\n const cfg = CRITERIA_CONFIGURATION[c.key];\n if (!cfg) {\n console.error(\"Missing criterion configuration for key\", c.key);\n throw new Error(\"Missing criterion configuration\");\n }\n exps.push(<>{cfg.label} <em>{cfg.toSummary(cfg.fromQuery(c.query, opts), opts)}</em></>);\n }\n }\n\n let result: JSX.Element;\n if (exps.length < 1) {\n result = <>(no criteria)</>;\n } else {\n switch (cg.require) {\n case 'all':\n result = <>{exps.reduce((acc: ReactNodeArray, current: ReactNode, index: number) => [...acc, index ? ', ' : '', current], [])}</>;\n break;\n case 'any':\n result = <>{exps.reduce((acc: ReactNodeArray, current: ReactNode, index: number) => [...acc, index ? ' or ' : '', current], [])}</>;\n break;\n case 'none':\n result = <>neither {exps.reduce((acc: ReactNodeArray, current: ReactNode, index: number) => [...acc, index ? ' nor ' : '', current], [])}</>;\n break;\n }\n }\n\n return result;\n}\n"]}
@@ -1,24 +0,0 @@
1
- /** @jsx jsx */
2
- /** @jsxFrag React.Fragment */
3
- import { TreeNodeInfo } from '@blueprintjs/core';
4
- import { ItemClassConfigurationSet, Subregisters } from '../../types';
5
- import { CriteriaGroup, Criterion } from './models';
6
- /**
7
- * Builds Blueprint’s tree nodes given criteria,
8
- * callbacks and relevant register configuration.
9
- */
10
- export default function criteriaToNodes(cs: (CriteriaGroup | Criterion)[], opts: {
11
- path?: number[];
12
- /** XXX: This seems to be obsolete. Don’t use, investigate for usefulness. */
13
- implied?: true;
14
- /**
15
- * Called when criteria is being edited. `commit` is set to true
16
- * when change should take effect.
17
- */
18
- onEditItem?: (parent: number[], idx: number, newItem: CriteriaGroup | Criterion, commit?: true) => void;
19
- onDeleteItem?: (parent: number[], idx: number) => void;
20
- onAddGroup?: (parent: number[]) => void;
21
- itemClasses: ItemClassConfigurationSet;
22
- availableClassIDs: string[];
23
- subregisters?: Subregisters;
24
- }): TreeNodeInfo[];