@speron/projekt-front 0.0.3

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 (634) hide show
  1. package/dist/cjs/index.js +447 -0
  2. package/dist/es/index.js +11062 -0
  3. package/dist/umd/index.js +447 -0
  4. package/package.json +30 -0
  5. package/src/Base/Components/Attribute.jsx +51 -0
  6. package/src/Base/Components/CardCapsule.jsx +353 -0
  7. package/src/Base/Components/Col.jsx +36 -0
  8. package/src/Base/Components/ConfirmEdit.jsx +61 -0
  9. package/src/Base/Components/CopyButton.jsx +33 -0
  10. package/src/Base/Components/LargeCard.jsx +22 -0
  11. package/src/Base/Components/Link.jsx +47 -0
  12. package/src/Base/Components/LiveEdit.jsx +64 -0
  13. package/src/Base/Components/MediumCard.jsx +30 -0
  14. package/src/Base/Components/MediumContent.jsx +74 -0
  15. package/src/Base/Components/MediumEditableContent.jsx +52 -0
  16. package/src/Base/Components/ProxyLink.jsx +132 -0
  17. package/src/Base/Components/Row.jsx +23 -0
  18. package/src/Base/Components/Table.jsx +275 -0
  19. package/src/Base/Components/index.js +14 -0
  20. package/src/Base/Components/style.js +278 -0
  21. package/src/Base/FormControls/Collapsible.jsx +46 -0
  22. package/src/Base/FormControls/Dialog.jsx +75 -0
  23. package/src/Base/FormControls/EntityLookup.jsx +175 -0
  24. package/src/Base/FormControls/Filter.jsx +834 -0
  25. package/src/Base/FormControls/Input.jsx +163 -0
  26. package/src/Base/FormControls/Label.jsx +40 -0
  27. package/src/Base/FormControls/Select.jsx +150 -0
  28. package/src/Base/FormControls/TextArea.jsx +86 -0
  29. package/src/Base/FormControls/index.js +8 -0
  30. package/src/Base/Helpers/AsyncStateIndicator.jsx +9 -0
  31. package/src/Base/Helpers/GQLEntityProvider.jsx +163 -0
  32. package/src/Base/Helpers/NavigationHistoryProvider.jsx +178 -0
  33. package/src/Base/Helpers/PlaceChild.jsx +13 -0
  34. package/src/Base/Helpers/generateQuery.js +508 -0
  35. package/src/Base/Helpers/index.js +5 -0
  36. package/src/Base/Mutations/Create.jsx +152 -0
  37. package/src/Base/Mutations/Delete.jsx +237 -0
  38. package/src/Base/Mutations/General.jsx +243 -0
  39. package/src/Base/Mutations/InteractiveMutations.jsx +32 -0
  40. package/src/Base/Mutations/Update.jsx +275 -0
  41. package/src/Base/Mutations/helpers.jsx +7 -0
  42. package/src/Base/Mutations/index.js +5 -0
  43. package/src/Base/Pages/Page.jsx +235 -0
  44. package/src/Base/Pages/PageCatch.jsx +235 -0
  45. package/src/Base/Pages/PageNavbar.jsx +70 -0
  46. package/src/Base/Pages/PageVector.jsx +229 -0
  47. package/src/Base/Pages/RouterSegment.jsx +66 -0
  48. package/src/Base/Pages/index.js +5 -0
  49. package/src/Base/Queries/DeleteAsyncAction.jsx +32 -0
  50. package/src/Base/Queries/Fragments.jsx +101 -0
  51. package/src/Base/Queries/InsertAsyncAction.jsx +40 -0
  52. package/src/Base/Queries/ReadAsyncAction.jsx +44 -0
  53. package/src/Base/Queries/ReadPageAsyncAction.jsx +16 -0
  54. package/src/Base/Queries/SearchAsyncAction.jsx +16 -0
  55. package/src/Base/Queries/UpdateAsyncAction.jsx +40 -0
  56. package/src/Base/Queries/index.js +6 -0
  57. package/src/Base/Scalars/ScalarAttribute.jsx +49 -0
  58. package/src/Base/Scalars/index.js +1 -0
  59. package/src/Base/Vectors/VectorAttribute.jsx +137 -0
  60. package/src/Base/Vectors/index.js +1 -0
  61. package/src/Base/index.js +32 -0
  62. package/src/EventGQLModel/Components/A4Plan/A4Plan.jsx +363 -0
  63. package/src/EventGQLModel/Components/A4Plan/index.js +1 -0
  64. package/src/EventGQLModel/Components/CardCapsule.jsx +43 -0
  65. package/src/EventGQLModel/Components/Children.jsx +31 -0
  66. package/src/EventGQLModel/Components/ConfirmEdit.jsx +61 -0
  67. package/src/EventGQLModel/Components/Filter.jsx +14 -0
  68. package/src/EventGQLModel/Components/LargeCard.jsx +54 -0
  69. package/src/EventGQLModel/Components/Link.jsx +55 -0
  70. package/src/EventGQLModel/Components/LiveEdit.jsx +111 -0
  71. package/src/EventGQLModel/Components/MediumCard.jsx +39 -0
  72. package/src/EventGQLModel/Components/MediumContent.jsx +96 -0
  73. package/src/EventGQLModel/Components/MediumEditableContent.jsx +35 -0
  74. package/src/EventGQLModel/Components/Plan/PlanRow.jsx +470 -0
  75. package/src/EventGQLModel/Components/Plan/_utils.js +971 -0
  76. package/src/EventGQLModel/Components/Plan/calendarReducer.js +535 -0
  77. package/src/EventGQLModel/Components/Plan/index.js +3 -0
  78. package/src/EventGQLModel/Components/Table.jsx +7 -0
  79. package/src/EventGQLModel/Components/index.js +15 -0
  80. package/src/EventGQLModel/Mutations/Create.jsx +202 -0
  81. package/src/EventGQLModel/Mutations/Delete.jsx +173 -0
  82. package/src/EventGQLModel/Mutations/InteractiveMutations.jsx +30 -0
  83. package/src/EventGQLModel/Mutations/Update.jsx +147 -0
  84. package/src/EventGQLModel/Mutations/helpers.jsx +7 -0
  85. package/src/EventGQLModel/Pages/PageBase.jsx +56 -0
  86. package/src/EventGQLModel/Pages/PageCreateItem.jsx +28 -0
  87. package/src/EventGQLModel/Pages/PageDeleteItem.jsx +16 -0
  88. package/src/EventGQLModel/Pages/PageNavbar.jsx +160 -0
  89. package/src/EventGQLModel/Pages/PagePlan.jsx +42 -0
  90. package/src/EventGQLModel/Pages/PageReadItem.jsx +11 -0
  91. package/src/EventGQLModel/Pages/PageReadItemEx.jsx +42 -0
  92. package/src/EventGQLModel/Pages/PageSubevents.jsx +43 -0
  93. package/src/EventGQLModel/Pages/PageUpdateItem.jsx +14 -0
  94. package/src/EventGQLModel/Pages/PageVector.jsx +80 -0
  95. package/src/EventGQLModel/Pages/RouterSegment.jsx +82 -0
  96. package/src/EventGQLModel/Pages/index.js +2 -0
  97. package/src/EventGQLModel/Queries/DeleteAsyncAction.jsx +32 -0
  98. package/src/EventGQLModel/Queries/Fragments.jsx +123 -0
  99. package/src/EventGQLModel/Queries/InsertAsyncAction.jsx +40 -0
  100. package/src/EventGQLModel/Queries/ReadAsyncAction.jsx +44 -0
  101. package/src/EventGQLModel/Queries/ReadPageAsyncAction.jsx +13 -0
  102. package/src/EventGQLModel/Queries/ReadSubEventsAsyncAction.jsx +44 -0
  103. package/src/EventGQLModel/Queries/SearchAsyncAction.jsx +16 -0
  104. package/src/EventGQLModel/Queries/UpdateAsyncAction.jsx +40 -0
  105. package/src/EventGQLModel/Queries/index.js +6 -0
  106. package/src/EventGQLModel/Scalars/ScalarAttribute.jsx +54 -0
  107. package/src/EventGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
  108. package/src/EventGQLModel/Scalars/index.js +1 -0
  109. package/src/EventGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
  110. package/src/EventGQLModel/Vectors/VectorAttribute.jsx +56 -0
  111. package/src/EventGQLModel/Vectors/index.js +1 -0
  112. package/src/EventGQLModel/WhatToDo.md +44 -0
  113. package/src/EventGQLModel/index.js +71 -0
  114. package/src/GroupGQLModel/Components/CUDButton.jsx +128 -0
  115. package/src/GroupGQLModel/Components/CardCapsule.jsx +44 -0
  116. package/src/GroupGQLModel/Components/Children.jsx +31 -0
  117. package/src/GroupGQLModel/Components/ConfirmEdit.jsx +61 -0
  118. package/src/GroupGQLModel/Components/Filter.jsx +14 -0
  119. package/src/GroupGQLModel/Components/LargeCard.jsx +68 -0
  120. package/src/GroupGQLModel/Components/Link.jsx +54 -0
  121. package/src/GroupGQLModel/Components/LiveEdit.jsx +111 -0
  122. package/src/GroupGQLModel/Components/MediumCard.jsx +51 -0
  123. package/src/GroupGQLModel/Components/MediumContent.jsx +56 -0
  124. package/src/GroupGQLModel/Components/MediumEditableContent.jsx +52 -0
  125. package/src/GroupGQLModel/Components/Table.jsx +70 -0
  126. package/src/GroupGQLModel/Components/index.js +14 -0
  127. package/src/GroupGQLModel/Mutations/AddMembership.jsx +156 -0
  128. package/src/GroupGQLModel/Mutations/Create.jsx +73 -0
  129. package/src/GroupGQLModel/Mutations/Delete.jsx +87 -0
  130. package/src/GroupGQLModel/Mutations/InteractiveMutations.jsx +30 -0
  131. package/src/GroupGQLModel/Mutations/Update.jsx +74 -0
  132. package/src/GroupGQLModel/Pages/PageBase.jsx +56 -0
  133. package/src/GroupGQLModel/Pages/PageCreateItem.jsx +27 -0
  134. package/src/GroupGQLModel/Pages/PageDeleteItem.jsx +16 -0
  135. package/src/GroupGQLModel/Pages/PageNavbar.jsx +264 -0
  136. package/src/GroupGQLModel/Pages/PageReadItem.jsx +12 -0
  137. package/src/GroupGQLModel/Pages/PageReadItemEx.jsx +57 -0
  138. package/src/GroupGQLModel/Pages/PageUpdateItem.jsx +14 -0
  139. package/src/GroupGQLModel/Pages/PageVector.jsx +80 -0
  140. package/src/GroupGQLModel/Pages/RouterSegment.jsx +85 -0
  141. package/src/GroupGQLModel/Pages/index.js +2 -0
  142. package/src/GroupGQLModel/Queries/DeleteAsyncAction.jsx +22 -0
  143. package/src/GroupGQLModel/Queries/Fragments.jsx +145 -0
  144. package/src/GroupGQLModel/Queries/InsertAsyncAction.jsx +43 -0
  145. package/src/GroupGQLModel/Queries/ReadAsyncAction.jsx +44 -0
  146. package/src/GroupGQLModel/Queries/ReadPageAsyncAction.jsx +18 -0
  147. package/src/GroupGQLModel/Queries/SearchAsyncAction.jsx +15 -0
  148. package/src/GroupGQLModel/Queries/UpdateAsyncAction.jsx +56 -0
  149. package/src/GroupGQLModel/Queries/index.js +6 -0
  150. package/src/GroupGQLModel/Scalars/GroupRoles.jsx +69 -0
  151. package/src/GroupGQLModel/Scalars/MasterGroup.jsx +15 -0
  152. package/src/GroupGQLModel/Scalars/RBACObject.jsx +245 -0
  153. package/src/GroupGQLModel/Scalars/ScalarAttribute.jsx +54 -0
  154. package/src/GroupGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
  155. package/src/GroupGQLModel/Scalars/index.js +1 -0
  156. package/src/GroupGQLModel/Vectors/GroupMemberships.jsx +115 -0
  157. package/src/GroupGQLModel/Vectors/GroupRoles.jsx +112 -0
  158. package/src/GroupGQLModel/Vectors/GroupRolesOn.jsx +113 -0
  159. package/src/GroupGQLModel/Vectors/GroupSubgroups.jsx +97 -0
  160. package/src/GroupGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
  161. package/src/GroupGQLModel/Vectors/VectorAttribute.jsx +56 -0
  162. package/src/GroupGQLModel/Vectors/index.js +1 -0
  163. package/src/GroupGQLModel/index.js +7 -0
  164. package/src/GroupTypeGQLModel/Components/CUDButton.jsx +128 -0
  165. package/src/GroupTypeGQLModel/Components/CardCapsule.jsx +43 -0
  166. package/src/GroupTypeGQLModel/Components/Children.jsx +31 -0
  167. package/src/GroupTypeGQLModel/Components/ConfirmEdit.jsx +61 -0
  168. package/src/GroupTypeGQLModel/Components/Filter.jsx +14 -0
  169. package/src/GroupTypeGQLModel/Components/LargeCard.jsx +49 -0
  170. package/src/GroupTypeGQLModel/Components/Link.jsx +53 -0
  171. package/src/GroupTypeGQLModel/Components/LiveEdit.jsx +111 -0
  172. package/src/GroupTypeGQLModel/Components/MediumCard.jsx +39 -0
  173. package/src/GroupTypeGQLModel/Components/MediumContent.jsx +97 -0
  174. package/src/GroupTypeGQLModel/Components/MediumEditableContent.jsx +35 -0
  175. package/src/GroupTypeGQLModel/Components/Table.jsx +7 -0
  176. package/src/GroupTypeGQLModel/Components/index.js +14 -0
  177. package/src/GroupTypeGQLModel/Mutations/Create.jsx +67 -0
  178. package/src/GroupTypeGQLModel/Mutations/Delete.jsx +80 -0
  179. package/src/GroupTypeGQLModel/Mutations/InteractiveMutations.jsx +30 -0
  180. package/src/GroupTypeGQLModel/Mutations/Update.jsx +74 -0
  181. package/src/GroupTypeGQLModel/Pages/Page.jsx +3 -0
  182. package/src/GroupTypeGQLModel/Pages/PageBase.jsx +26 -0
  183. package/src/GroupTypeGQLModel/Pages/PageCreateItem.jsx +21 -0
  184. package/src/GroupTypeGQLModel/Pages/PageDeleteItem.jsx +13 -0
  185. package/src/GroupTypeGQLModel/Pages/PageNavbar.jsx +148 -0
  186. package/src/GroupTypeGQLModel/Pages/PageReadItem.jsx +28 -0
  187. package/src/GroupTypeGQLModel/Pages/PageUpdateItem.jsx +25 -0
  188. package/src/GroupTypeGQLModel/Pages/PageVector.jsx +83 -0
  189. package/src/GroupTypeGQLModel/Pages/RouterSegment.jsx +68 -0
  190. package/src/GroupTypeGQLModel/Pages/index.js +10 -0
  191. package/src/GroupTypeGQLModel/Queries/DeleteAsyncAction.jsx +27 -0
  192. package/src/GroupTypeGQLModel/Queries/Fragments.jsx +96 -0
  193. package/src/GroupTypeGQLModel/Queries/InsertAsyncAction.jsx +41 -0
  194. package/src/GroupTypeGQLModel/Queries/ReadAsyncAction.jsx +45 -0
  195. package/src/GroupTypeGQLModel/Queries/ReadPageAsyncAction.jsx +14 -0
  196. package/src/GroupTypeGQLModel/Queries/SearchAsyncAction.jsx +16 -0
  197. package/src/GroupTypeGQLModel/Queries/UpdateAsyncAction.jsx +42 -0
  198. package/src/GroupTypeGQLModel/Queries/index.js +6 -0
  199. package/src/GroupTypeGQLModel/Scalars/ScalarAttribute.jsx +54 -0
  200. package/src/GroupTypeGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
  201. package/src/GroupTypeGQLModel/Scalars/index.js +1 -0
  202. package/src/GroupTypeGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
  203. package/src/GroupTypeGQLModel/Vectors/VectorAttribute.jsx +56 -0
  204. package/src/GroupTypeGQLModel/Vectors/index.js +1 -0
  205. package/src/GroupTypeGQLModel/index.js +6 -0
  206. package/src/MembershipGQLModel/Components/CUDButton.jsx +128 -0
  207. package/src/MembershipGQLModel/Components/CardCapsule.jsx +43 -0
  208. package/src/MembershipGQLModel/Components/Children.jsx +31 -0
  209. package/src/MembershipGQLModel/Components/ConfirmEdit.jsx +61 -0
  210. package/src/MembershipGQLModel/Components/Filter.jsx +14 -0
  211. package/src/MembershipGQLModel/Components/LargeCard.jsx +49 -0
  212. package/src/MembershipGQLModel/Components/Link.jsx +54 -0
  213. package/src/MembershipGQLModel/Components/LiveEdit.jsx +111 -0
  214. package/src/MembershipGQLModel/Components/MediumCard.jsx +39 -0
  215. package/src/MembershipGQLModel/Components/MediumContent.jsx +97 -0
  216. package/src/MembershipGQLModel/Components/MediumEditableContent.jsx +35 -0
  217. package/src/MembershipGQLModel/Components/Table.jsx +7 -0
  218. package/src/MembershipGQLModel/Components/index.js +14 -0
  219. package/src/MembershipGQLModel/Mutations/Create.jsx +67 -0
  220. package/src/MembershipGQLModel/Mutations/Delete.jsx +80 -0
  221. package/src/MembershipGQLModel/Mutations/InteractiveMutations.jsx +31 -0
  222. package/src/MembershipGQLModel/Mutations/Update.jsx +74 -0
  223. package/src/MembershipGQLModel/Mutations/helpers.jsx +7 -0
  224. package/src/MembershipGQLModel/Pages/PageBase.jsx +57 -0
  225. package/src/MembershipGQLModel/Pages/PageCreateItem.jsx +28 -0
  226. package/src/MembershipGQLModel/Pages/PageDeleteItem.jsx +16 -0
  227. package/src/MembershipGQLModel/Pages/PageNavbar.jsx +110 -0
  228. package/src/MembershipGQLModel/Pages/PageReadItem.jsx +11 -0
  229. package/src/MembershipGQLModel/Pages/PageReadItemEx.jsx +42 -0
  230. package/src/MembershipGQLModel/Pages/PageUpdateItem.jsx +14 -0
  231. package/src/MembershipGQLModel/Pages/PageVector.jsx +80 -0
  232. package/src/MembershipGQLModel/Pages/RouterSegment.jsx +73 -0
  233. package/src/MembershipGQLModel/Pages/index.js +2 -0
  234. package/src/MembershipGQLModel/Queries/DeleteAsyncAction.jsx +32 -0
  235. package/src/MembershipGQLModel/Queries/Fragments.jsx +113 -0
  236. package/src/MembershipGQLModel/Queries/InsertAsyncAction.jsx +38 -0
  237. package/src/MembershipGQLModel/Queries/ReadAsyncAction.jsx +44 -0
  238. package/src/MembershipGQLModel/Queries/ReadPageAsyncAction.jsx +13 -0
  239. package/src/MembershipGQLModel/Queries/SearchAsyncAction.jsx +16 -0
  240. package/src/MembershipGQLModel/Queries/UpdateAsyncAction.jsx +40 -0
  241. package/src/MembershipGQLModel/Queries/index.js +6 -0
  242. package/src/MembershipGQLModel/Scalars/ScalarAttribute.jsx +54 -0
  243. package/src/MembershipGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
  244. package/src/MembershipGQLModel/Scalars/index.js +1 -0
  245. package/src/MembershipGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
  246. package/src/MembershipGQLModel/Vectors/VectorAttribute.jsx +56 -0
  247. package/src/MembershipGQLModel/Vectors/index.js +1 -0
  248. package/src/MembershipGQLModel/WhatToDo.md +44 -0
  249. package/src/MembershipGQLModel/index.js +6 -0
  250. package/src/RBACGQLModel/Components/CardCapsule.jsx +43 -0
  251. package/src/RBACGQLModel/Components/Children.jsx +31 -0
  252. package/src/RBACGQLModel/Components/ConfirmEdit.jsx +61 -0
  253. package/src/RBACGQLModel/Components/Filter.jsx +14 -0
  254. package/src/RBACGQLModel/Components/LargeCard.jsx +50 -0
  255. package/src/RBACGQLModel/Components/Link.jsx +54 -0
  256. package/src/RBACGQLModel/Components/LiveEdit.jsx +111 -0
  257. package/src/RBACGQLModel/Components/MediumCard.jsx +39 -0
  258. package/src/RBACGQLModel/Components/MediumContent.jsx +96 -0
  259. package/src/RBACGQLModel/Components/MediumEditableContent.jsx +212 -0
  260. package/src/RBACGQLModel/Components/Table.jsx +7 -0
  261. package/src/RBACGQLModel/Components/index.js +13 -0
  262. package/src/RBACGQLModel/Mutations/Create.jsx +202 -0
  263. package/src/RBACGQLModel/Mutations/Delete.jsx +173 -0
  264. package/src/RBACGQLModel/Mutations/InteractiveMutations.jsx +30 -0
  265. package/src/RBACGQLModel/Mutations/Update.jsx +147 -0
  266. package/src/RBACGQLModel/Mutations/helpers.jsx +7 -0
  267. package/src/RBACGQLModel/Pages/PageBase.jsx +56 -0
  268. package/src/RBACGQLModel/Pages/PageCreateItem.jsx +28 -0
  269. package/src/RBACGQLModel/Pages/PageDeleteItem.jsx +16 -0
  270. package/src/RBACGQLModel/Pages/PageNavbar.jsx +160 -0
  271. package/src/RBACGQLModel/Pages/PageReadItem.jsx +11 -0
  272. package/src/RBACGQLModel/Pages/PageReadItemEx.jsx +42 -0
  273. package/src/RBACGQLModel/Pages/PageUpdateItem.jsx +14 -0
  274. package/src/RBACGQLModel/Pages/PageVector.jsx +80 -0
  275. package/src/RBACGQLModel/Pages/RouterSegment.jsx +72 -0
  276. package/src/RBACGQLModel/Pages/index.js +2 -0
  277. package/src/RBACGQLModel/Queries/DeleteAsyncAction.jsx +32 -0
  278. package/src/RBACGQLModel/Queries/Fragments.jsx +101 -0
  279. package/src/RBACGQLModel/Queries/InsertAsyncAction.jsx +40 -0
  280. package/src/RBACGQLModel/Queries/ReadAsyncAction.jsx +44 -0
  281. package/src/RBACGQLModel/Queries/ReadPageAsyncAction.jsx +13 -0
  282. package/src/RBACGQLModel/Queries/SearchAsyncAction.jsx +16 -0
  283. package/src/RBACGQLModel/Queries/UpdateAsyncAction.jsx +40 -0
  284. package/src/RBACGQLModel/Queries/index.js +6 -0
  285. package/src/RBACGQLModel/Scalars/ScalarAttribute.jsx +54 -0
  286. package/src/RBACGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
  287. package/src/RBACGQLModel/Scalars/index.js +1 -0
  288. package/src/RBACGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
  289. package/src/RBACGQLModel/Vectors/VectorAttribute.jsx +56 -0
  290. package/src/RBACGQLModel/Vectors/index.js +1 -0
  291. package/src/RBACGQLModel/WhatToDo.md +44 -0
  292. package/src/RBACGQLModel/index.js +71 -0
  293. package/src/RoleGQLModel/Components/CUDButton.jsx +128 -0
  294. package/src/RoleGQLModel/Components/CardCapsule.jsx +43 -0
  295. package/src/RoleGQLModel/Components/Children.jsx +31 -0
  296. package/src/RoleGQLModel/Components/ConfirmEdit.jsx +61 -0
  297. package/src/RoleGQLModel/Components/Filter.jsx +14 -0
  298. package/src/RoleGQLModel/Components/LargeCard.jsx +49 -0
  299. package/src/RoleGQLModel/Components/Link.jsx +55 -0
  300. package/src/RoleGQLModel/Components/LiveEdit.jsx +111 -0
  301. package/src/RoleGQLModel/Components/MediumCard.jsx +39 -0
  302. package/src/RoleGQLModel/Components/MediumContent.jsx +97 -0
  303. package/src/RoleGQLModel/Components/MediumEditableContent.jsx +72 -0
  304. package/src/RoleGQLModel/Components/RBACObject.jsx +22 -0
  305. package/src/RoleGQLModel/Components/Table.jsx +82 -0
  306. package/src/RoleGQLModel/Components/index.js +14 -0
  307. package/src/RoleGQLModel/Mutations/AddRoleOnGroup.jsx +117 -0
  308. package/src/RoleGQLModel/Mutations/Create.jsx +67 -0
  309. package/src/RoleGQLModel/Mutations/Delete.jsx +80 -0
  310. package/src/RoleGQLModel/Mutations/InteractiveMutations.jsx +31 -0
  311. package/src/RoleGQLModel/Mutations/Update.jsx +74 -0
  312. package/src/RoleGQLModel/Pages/Page.jsx +3 -0
  313. package/src/RoleGQLModel/Pages/PageBase.jsx +26 -0
  314. package/src/RoleGQLModel/Pages/PageContent.jsx +31 -0
  315. package/src/RoleGQLModel/Pages/PageCreateItem.jsx +21 -0
  316. package/src/RoleGQLModel/Pages/PageDeleteItem.jsx +13 -0
  317. package/src/RoleGQLModel/Pages/PageNavbar.jsx +161 -0
  318. package/src/RoleGQLModel/Pages/PageReadItem.jsx +28 -0
  319. package/src/RoleGQLModel/Pages/PageUpdateItem.jsx +25 -0
  320. package/src/RoleGQLModel/Pages/PageVector.jsx +83 -0
  321. package/src/RoleGQLModel/Pages/RouterSegment.jsx +69 -0
  322. package/src/RoleGQLModel/Pages/index.js +10 -0
  323. package/src/RoleGQLModel/Queries/DeleteAsyncAction.jsx +22 -0
  324. package/src/RoleGQLModel/Queries/Fragments.jsx +123 -0
  325. package/src/RoleGQLModel/Queries/InsertAsyncAction.jsx +45 -0
  326. package/src/RoleGQLModel/Queries/ReadAsyncAction.jsx +45 -0
  327. package/src/RoleGQLModel/Queries/ReadPageAsyncAction.jsx +13 -0
  328. package/src/RoleGQLModel/Queries/UpdateAsyncAction.jsx +35 -0
  329. package/src/RoleGQLModel/Queries/index.js +6 -0
  330. package/src/RoleGQLModel/Scalars/ScalarAttribute.jsx +54 -0
  331. package/src/RoleGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
  332. package/src/RoleGQLModel/Scalars/index.js +1 -0
  333. package/src/RoleGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
  334. package/src/RoleGQLModel/Vectors/VectorAttribute.jsx +56 -0
  335. package/src/RoleGQLModel/Vectors/index.js +1 -0
  336. package/src/RoleGQLModel/index.js +6 -0
  337. package/src/RoleTypeGQLModel/Components/CUDButton.jsx +128 -0
  338. package/src/RoleTypeGQLModel/Components/CardCapsule.jsx +43 -0
  339. package/src/RoleTypeGQLModel/Components/Children.jsx +31 -0
  340. package/src/RoleTypeGQLModel/Components/ConfirmEdit.jsx +61 -0
  341. package/src/RoleTypeGQLModel/Components/Filter.jsx +14 -0
  342. package/src/RoleTypeGQLModel/Components/LargeCard.jsx +49 -0
  343. package/src/RoleTypeGQLModel/Components/Link.jsx +55 -0
  344. package/src/RoleTypeGQLModel/Components/LiveEdit.jsx +111 -0
  345. package/src/RoleTypeGQLModel/Components/MediumCard.jsx +39 -0
  346. package/src/RoleTypeGQLModel/Components/MediumContent.jsx +97 -0
  347. package/src/RoleTypeGQLModel/Components/MediumEditableContent.jsx +35 -0
  348. package/src/RoleTypeGQLModel/Components/Table.jsx +7 -0
  349. package/src/RoleTypeGQLModel/Components/index.js +14 -0
  350. package/src/RoleTypeGQLModel/Mutations/Create.jsx +67 -0
  351. package/src/RoleTypeGQLModel/Mutations/Delete.jsx +80 -0
  352. package/src/RoleTypeGQLModel/Mutations/InteractiveMutations.jsx +30 -0
  353. package/src/RoleTypeGQLModel/Mutations/Update.jsx +74 -0
  354. package/src/RoleTypeGQLModel/Pages/Page.jsx +3 -0
  355. package/src/RoleTypeGQLModel/Pages/PageBase.jsx +56 -0
  356. package/src/RoleTypeGQLModel/Pages/PageCreateItem.jsx +27 -0
  357. package/src/RoleTypeGQLModel/Pages/PageDeleteItem.jsx +16 -0
  358. package/src/RoleTypeGQLModel/Pages/PageNavbar.jsx +148 -0
  359. package/src/RoleTypeGQLModel/Pages/PageReadItem.jsx +11 -0
  360. package/src/RoleTypeGQLModel/Pages/PageUpdateItem.jsx +14 -0
  361. package/src/RoleTypeGQLModel/Pages/PageVector.jsx +79 -0
  362. package/src/RoleTypeGQLModel/Pages/RouterSegment.jsx +69 -0
  363. package/src/RoleTypeGQLModel/Pages/index.js +10 -0
  364. package/src/RoleTypeGQLModel/Queries/DeleteAsyncAction.jsx +32 -0
  365. package/src/RoleTypeGQLModel/Queries/Fragments.jsx +103 -0
  366. package/src/RoleTypeGQLModel/Queries/InsertAsyncAction.jsx +40 -0
  367. package/src/RoleTypeGQLModel/Queries/ReadAsyncAction.jsx +44 -0
  368. package/src/RoleTypeGQLModel/Queries/ReadPageAsyncAction.jsx +13 -0
  369. package/src/RoleTypeGQLModel/Queries/SearchAsyncAction.jsx +29 -0
  370. package/src/RoleTypeGQLModel/Queries/UpdateAsyncAction.jsx +40 -0
  371. package/src/RoleTypeGQLModel/Queries/index.js +6 -0
  372. package/src/RoleTypeGQLModel/Scalars/ScalarAttribute.jsx +54 -0
  373. package/src/RoleTypeGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
  374. package/src/RoleTypeGQLModel/Scalars/index.js +1 -0
  375. package/src/RoleTypeGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
  376. package/src/RoleTypeGQLModel/Vectors/VectorAttribute.jsx +56 -0
  377. package/src/RoleTypeGQLModel/Vectors/index.js +1 -0
  378. package/src/RoleTypeGQLModel/index.js +6 -0
  379. package/src/StateGQLModel/Components/CardCapsule.jsx +43 -0
  380. package/src/StateGQLModel/Components/Children.jsx +31 -0
  381. package/src/StateGQLModel/Components/ConfirmEdit.jsx +61 -0
  382. package/src/StateGQLModel/Components/Filter.jsx +14 -0
  383. package/src/StateGQLModel/Components/LargeCard.jsx +50 -0
  384. package/src/StateGQLModel/Components/Link.jsx +54 -0
  385. package/src/StateGQLModel/Components/LiveEdit.jsx +111 -0
  386. package/src/StateGQLModel/Components/MediumCard.jsx +39 -0
  387. package/src/StateGQLModel/Components/MediumContent.jsx +96 -0
  388. package/src/StateGQLModel/Components/MediumEditableContent.jsx +36 -0
  389. package/src/StateGQLModel/Components/Table.jsx +7 -0
  390. package/src/StateGQLModel/Components/index.js +13 -0
  391. package/src/StateGQLModel/Mutations/Create.jsx +79 -0
  392. package/src/StateGQLModel/Mutations/Delete.jsx +87 -0
  393. package/src/StateGQLModel/Mutations/InteractiveMutations.jsx +30 -0
  394. package/src/StateGQLModel/Mutations/Update.jsx +76 -0
  395. package/src/StateGQLModel/Mutations/helpers.jsx +7 -0
  396. package/src/StateGQLModel/Pages/PageBase.jsx +56 -0
  397. package/src/StateGQLModel/Pages/PageCreateItem.jsx +28 -0
  398. package/src/StateGQLModel/Pages/PageDeleteItem.jsx +16 -0
  399. package/src/StateGQLModel/Pages/PageNavbar.jsx +160 -0
  400. package/src/StateGQLModel/Pages/PageReadItem.jsx +11 -0
  401. package/src/StateGQLModel/Pages/PageReadItemEx.jsx +42 -0
  402. package/src/StateGQLModel/Pages/PageUpdateItem.jsx +14 -0
  403. package/src/StateGQLModel/Pages/PageVector.jsx +80 -0
  404. package/src/StateGQLModel/Pages/RouterSegment.jsx +72 -0
  405. package/src/StateGQLModel/Pages/index.js +2 -0
  406. package/src/StateGQLModel/Queries/DeleteAsyncAction.jsx +32 -0
  407. package/src/StateGQLModel/Queries/Fragments.jsx +109 -0
  408. package/src/StateGQLModel/Queries/InsertAsyncAction.jsx +104 -0
  409. package/src/StateGQLModel/Queries/ReadAsyncAction.jsx +48 -0
  410. package/src/StateGQLModel/Queries/ReadPageAsyncAction.jsx +23 -0
  411. package/src/StateGQLModel/Queries/SearchAsyncAction.jsx +16 -0
  412. package/src/StateGQLModel/Queries/UpdateAsyncAction.jsx +106 -0
  413. package/src/StateGQLModel/Queries/index.js +6 -0
  414. package/src/StateGQLModel/Scalars/ScalarAttribute.jsx +54 -0
  415. package/src/StateGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
  416. package/src/StateGQLModel/Scalars/index.js +1 -0
  417. package/src/StateGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
  418. package/src/StateGQLModel/Vectors/VectorAttribute.jsx +56 -0
  419. package/src/StateGQLModel/Vectors/index.js +1 -0
  420. package/src/StateGQLModel/index.js +71 -0
  421. package/src/StateMachineGQLModel/Components/CardCapsule.jsx +43 -0
  422. package/src/StateMachineGQLModel/Components/Children.jsx +31 -0
  423. package/src/StateMachineGQLModel/Components/ConfirmEdit.jsx +61 -0
  424. package/src/StateMachineGQLModel/Components/Filter.jsx +14 -0
  425. package/src/StateMachineGQLModel/Components/LargeCard.jsx +50 -0
  426. package/src/StateMachineGQLModel/Components/Link.jsx +54 -0
  427. package/src/StateMachineGQLModel/Components/LiveEdit.jsx +111 -0
  428. package/src/StateMachineGQLModel/Components/MediumCard.jsx +39 -0
  429. package/src/StateMachineGQLModel/Components/MediumContent.jsx +96 -0
  430. package/src/StateMachineGQLModel/Components/MediumEditableContent.jsx +989 -0
  431. package/src/StateMachineGQLModel/Components/Table.jsx +7 -0
  432. package/src/StateMachineGQLModel/Components/index.js +13 -0
  433. package/src/StateMachineGQLModel/Mutations/Create.jsx +79 -0
  434. package/src/StateMachineGQLModel/Mutations/Delete.jsx +80 -0
  435. package/src/StateMachineGQLModel/Mutations/InteractiveMutations.jsx +30 -0
  436. package/src/StateMachineGQLModel/Mutations/Update.jsx +74 -0
  437. package/src/StateMachineGQLModel/Mutations/helpers.jsx +7 -0
  438. package/src/StateMachineGQLModel/Pages/PageBase.jsx +56 -0
  439. package/src/StateMachineGQLModel/Pages/PageCreateItem.jsx +28 -0
  440. package/src/StateMachineGQLModel/Pages/PageDeleteItem.jsx +16 -0
  441. package/src/StateMachineGQLModel/Pages/PageNavbar.jsx +160 -0
  442. package/src/StateMachineGQLModel/Pages/PageReadItem.jsx +11 -0
  443. package/src/StateMachineGQLModel/Pages/PageReadItemEx.jsx +42 -0
  444. package/src/StateMachineGQLModel/Pages/PageUpdateItem.jsx +14 -0
  445. package/src/StateMachineGQLModel/Pages/PageVector.jsx +80 -0
  446. package/src/StateMachineGQLModel/Pages/RouterSegment.jsx +72 -0
  447. package/src/StateMachineGQLModel/Pages/index.js +2 -0
  448. package/src/StateMachineGQLModel/Queries/DeleteAsyncAction.jsx +32 -0
  449. package/src/StateMachineGQLModel/Queries/Fragments.jsx +148 -0
  450. package/src/StateMachineGQLModel/Queries/InsertAsyncAction.jsx +44 -0
  451. package/src/StateMachineGQLModel/Queries/ReadAsyncAction.jsx +48 -0
  452. package/src/StateMachineGQLModel/Queries/ReadPageAsyncAction.jsx +23 -0
  453. package/src/StateMachineGQLModel/Queries/SearchAsyncAction.jsx +16 -0
  454. package/src/StateMachineGQLModel/Queries/UpdateAsyncAction.jsx +40 -0
  455. package/src/StateMachineGQLModel/Queries/index.js +6 -0
  456. package/src/StateMachineGQLModel/Scalars/ScalarAttribute.jsx +54 -0
  457. package/src/StateMachineGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
  458. package/src/StateMachineGQLModel/Scalars/index.js +1 -0
  459. package/src/StateMachineGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
  460. package/src/StateMachineGQLModel/Vectors/VectorAttribute.jsx +56 -0
  461. package/src/StateMachineGQLModel/Vectors/index.js +1 -0
  462. package/src/StateMachineGQLModel/WhatToDo.md +44 -0
  463. package/src/StateMachineGQLModel/index.js +71 -0
  464. package/src/StateTransitionGQLModel/Components/CardCapsule.jsx +43 -0
  465. package/src/StateTransitionGQLModel/Components/Children.jsx +31 -0
  466. package/src/StateTransitionGQLModel/Components/ConfirmEdit.jsx +61 -0
  467. package/src/StateTransitionGQLModel/Components/Filter.jsx +14 -0
  468. package/src/StateTransitionGQLModel/Components/LargeCard.jsx +50 -0
  469. package/src/StateTransitionGQLModel/Components/Link.jsx +54 -0
  470. package/src/StateTransitionGQLModel/Components/LiveEdit.jsx +111 -0
  471. package/src/StateTransitionGQLModel/Components/MediumCard.jsx +39 -0
  472. package/src/StateTransitionGQLModel/Components/MediumContent.jsx +96 -0
  473. package/src/StateTransitionGQLModel/Components/MediumEditableContent.jsx +35 -0
  474. package/src/StateTransitionGQLModel/Components/Table.jsx +7 -0
  475. package/src/StateTransitionGQLModel/Components/index.js +13 -0
  476. package/src/StateTransitionGQLModel/Mutations/Create.jsx +79 -0
  477. package/src/StateTransitionGQLModel/Mutations/Delete.jsx +80 -0
  478. package/src/StateTransitionGQLModel/Mutations/InteractiveMutations.jsx +30 -0
  479. package/src/StateTransitionGQLModel/Mutations/Update.jsx +75 -0
  480. package/src/StateTransitionGQLModel/Mutations/helpers.jsx +7 -0
  481. package/src/StateTransitionGQLModel/Pages/PageBase.jsx +56 -0
  482. package/src/StateTransitionGQLModel/Pages/PageCreateItem.jsx +28 -0
  483. package/src/StateTransitionGQLModel/Pages/PageDeleteItem.jsx +16 -0
  484. package/src/StateTransitionGQLModel/Pages/PageNavbar.jsx +160 -0
  485. package/src/StateTransitionGQLModel/Pages/PageReadItem.jsx +11 -0
  486. package/src/StateTransitionGQLModel/Pages/PageReadItemEx.jsx +42 -0
  487. package/src/StateTransitionGQLModel/Pages/PageUpdateItem.jsx +14 -0
  488. package/src/StateTransitionGQLModel/Pages/PageVector.jsx +80 -0
  489. package/src/StateTransitionGQLModel/Pages/RouterSegment.jsx +72 -0
  490. package/src/StateTransitionGQLModel/Pages/index.js +2 -0
  491. package/src/StateTransitionGQLModel/Queries/DeleteAsyncAction.jsx +32 -0
  492. package/src/StateTransitionGQLModel/Queries/Fragments.jsx +150 -0
  493. package/src/StateTransitionGQLModel/Queries/InsertAsyncAction.jsx +107 -0
  494. package/src/StateTransitionGQLModel/Queries/ReadAsyncAction.jsx +48 -0
  495. package/src/StateTransitionGQLModel/Queries/ReadPageAsyncAction.jsx +23 -0
  496. package/src/StateTransitionGQLModel/Queries/SearchAsyncAction.jsx +16 -0
  497. package/src/StateTransitionGQLModel/Queries/UpdateAsyncAction.jsx +109 -0
  498. package/src/StateTransitionGQLModel/Queries/index.js +6 -0
  499. package/src/StateTransitionGQLModel/Scalars/ScalarAttribute.jsx +54 -0
  500. package/src/StateTransitionGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
  501. package/src/StateTransitionGQLModel/Scalars/index.js +1 -0
  502. package/src/StateTransitionGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
  503. package/src/StateTransitionGQLModel/Vectors/VectorAttribute.jsx +56 -0
  504. package/src/StateTransitionGQLModel/Vectors/index.js +1 -0
  505. package/src/StateTransitionGQLModel/WhatToDo.md +44 -0
  506. package/src/StateTransitionGQLModel/index.js +71 -0
  507. package/src/Template/Attributes/TemplateTrivialAttribute.jsx +21 -0
  508. package/src/Template/Attributes/index.js +1 -0
  509. package/src/Template/Components/CUDButton.jsx +128 -0
  510. package/src/Template/Components/CardCapsule.jsx +43 -0
  511. package/src/Template/Components/Children.jsx +31 -0
  512. package/src/Template/Components/ConfirmEdit.jsx +61 -0
  513. package/src/Template/Components/LargeCard.jsx +48 -0
  514. package/src/Template/Components/Link.jsx +41 -0
  515. package/src/Template/Components/LiveEdit.jsx +111 -0
  516. package/src/Template/Components/MediumCard.jsx +39 -0
  517. package/src/Template/Components/MediumContent.jsx +97 -0
  518. package/src/Template/Components/MediumEditableContent.jsx +36 -0
  519. package/src/Template/Components/Table.jsx +7 -0
  520. package/src/Template/Components/index.js +14 -0
  521. package/src/Template/Pages/Page.jsx +28 -0
  522. package/src/Template/Pages/PageCapsule.jsx +13 -0
  523. package/src/Template/Pages/PageContent.jsx +34 -0
  524. package/src/Template/Pages/PageEdit.jsx +17 -0
  525. package/src/Template/Pages/PageNavbar.jsx +110 -0
  526. package/src/Template/Pages/RouterSegment.jsx +52 -0
  527. package/src/Template/Pages/VectorPage.jsx +133 -0
  528. package/src/Template/Pages/index.js +6 -0
  529. package/src/Template/Queries/DeleteAsyncAction.jsx +22 -0
  530. package/src/Template/Queries/Fragments.jsx +92 -0
  531. package/src/Template/Queries/InsertAsyncAction.jsx +22 -0
  532. package/src/Template/Queries/ReadAsyncAction.jsx +45 -0
  533. package/src/Template/Queries/ReadPageAsyncAction.jsx +13 -0
  534. package/src/Template/Queries/UpdateAsyncAction.jsx +76 -0
  535. package/src/Template/Queries/index.js +6 -0
  536. package/src/Template/Scalars/ScalarAttribute.jsx +54 -0
  537. package/src/Template/Scalars/TemplateScalarAttribute.jsx +88 -0
  538. package/src/Template/Scalars/index.js +1 -0
  539. package/src/Template/Vectors/TemplateVectorsAttribute.jsx +326 -0
  540. package/src/Template/Vectors/VectorAttribute.jsx +56 -0
  541. package/src/Template/Vectors/index.js +1 -0
  542. package/src/Template/index.js +71 -0
  543. package/src/UserGQLModel/Components/CUDButton.jsx +128 -0
  544. package/src/UserGQLModel/Components/CardCapsule.jsx +43 -0
  545. package/src/UserGQLModel/Components/ConfirmEdit.jsx +61 -0
  546. package/src/UserGQLModel/Components/Filter.jsx +15 -0
  547. package/src/UserGQLModel/Components/LargeCard.jsx +82 -0
  548. package/src/UserGQLModel/Components/Link.jsx +54 -0
  549. package/src/UserGQLModel/Components/LiveEdit.jsx +111 -0
  550. package/src/UserGQLModel/Components/MediumCard.jsx +40 -0
  551. package/src/UserGQLModel/Components/MediumContent.jsx +49 -0
  552. package/src/UserGQLModel/Components/MediumEditableContent.jsx +57 -0
  553. package/src/UserGQLModel/Components/Table.jsx +7 -0
  554. package/src/UserGQLModel/Components/index.js +13 -0
  555. package/src/UserGQLModel/Mutations/AddMembership.jsx +136 -0
  556. package/src/UserGQLModel/Mutations/Create.jsx +68 -0
  557. package/src/UserGQLModel/Mutations/Delete.jsx +81 -0
  558. package/src/UserGQLModel/Mutations/InteractiveMutations.jsx +30 -0
  559. package/src/UserGQLModel/Mutations/Update.jsx +68 -0
  560. package/src/UserGQLModel/Mutations/helpers.jsx +7 -0
  561. package/src/UserGQLModel/Pages/PageAddMembership.jsx +15 -0
  562. package/src/UserGQLModel/Pages/PageBase.jsx +56 -0
  563. package/src/UserGQLModel/Pages/PageCreateItem.jsx +27 -0
  564. package/src/UserGQLModel/Pages/PageDeleteItem.jsx +16 -0
  565. package/src/UserGQLModel/Pages/PageNavbar.jsx +146 -0
  566. package/src/UserGQLModel/Pages/PageReadItem.jsx +12 -0
  567. package/src/UserGQLModel/Pages/PageReadItemEx.jsx +62 -0
  568. package/src/UserGQLModel/Pages/PageUpdateItem.jsx +14 -0
  569. package/src/UserGQLModel/Pages/PageVector.jsx +78 -0
  570. package/src/UserGQLModel/Pages/RouterSegment.jsx +77 -0
  571. package/src/UserGQLModel/Pages/index.js +9 -0
  572. package/src/UserGQLModel/Queries/DeleteAsyncAction.jsx +22 -0
  573. package/src/UserGQLModel/Queries/Fragments.jsx +120 -0
  574. package/src/UserGQLModel/Queries/InsertAsyncAction.jsx +22 -0
  575. package/src/UserGQLModel/Queries/ReadAsyncAction.jsx +45 -0
  576. package/src/UserGQLModel/Queries/ReadPageAsyncAction.jsx +17 -0
  577. package/src/UserGQLModel/Queries/SearchAsyncAction.jsx +15 -0
  578. package/src/UserGQLModel/Queries/UpdateAsyncAction.jsx +76 -0
  579. package/src/UserGQLModel/Queries/index.js +6 -0
  580. package/src/UserGQLModel/Scalars/ScalarAttribute.jsx +54 -0
  581. package/src/UserGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
  582. package/src/UserGQLModel/Scalars/index.js +1 -0
  583. package/src/UserGQLModel/Vectors/Roles.jsx +23 -0
  584. package/src/UserGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
  585. package/src/UserGQLModel/Vectors/UserMemberships.jsx +56 -0
  586. package/src/UserGQLModel/Vectors/UserRoles.jsx +81 -0
  587. package/src/UserGQLModel/Vectors/VectorAttribute.jsx +56 -0
  588. package/src/UserGQLModel/Vectors/index.js +1 -0
  589. package/src/UserGQLModel/index.js +6 -0
  590. package/src/_Template/Components/CardCapsule.jsx +43 -0
  591. package/src/_Template/Components/Children.jsx +31 -0
  592. package/src/_Template/Components/ConfirmEdit.jsx +61 -0
  593. package/src/_Template/Components/Filter.jsx +14 -0
  594. package/src/_Template/Components/LargeCard.jsx +50 -0
  595. package/src/_Template/Components/Link.jsx +54 -0
  596. package/src/_Template/Components/LiveEdit.jsx +111 -0
  597. package/src/_Template/Components/MediumCard.jsx +39 -0
  598. package/src/_Template/Components/MediumContent.jsx +96 -0
  599. package/src/_Template/Components/MediumEditableContent.jsx +35 -0
  600. package/src/_Template/Components/Table.jsx +7 -0
  601. package/src/_Template/Components/index.js +13 -0
  602. package/src/_Template/Mutations/Create.jsx +202 -0
  603. package/src/_Template/Mutations/Delete.jsx +173 -0
  604. package/src/_Template/Mutations/InteractiveMutations.jsx +30 -0
  605. package/src/_Template/Mutations/Update.jsx +147 -0
  606. package/src/_Template/Mutations/helpers.jsx +7 -0
  607. package/src/_Template/Pages/PageBase.jsx +56 -0
  608. package/src/_Template/Pages/PageCreateItem.jsx +28 -0
  609. package/src/_Template/Pages/PageDeleteItem.jsx +16 -0
  610. package/src/_Template/Pages/PageNavbar.jsx +160 -0
  611. package/src/_Template/Pages/PageReadItem.jsx +11 -0
  612. package/src/_Template/Pages/PageReadItemEx.jsx +42 -0
  613. package/src/_Template/Pages/PageUpdateItem.jsx +14 -0
  614. package/src/_Template/Pages/PageVector.jsx +80 -0
  615. package/src/_Template/Pages/RouterSegment.jsx +72 -0
  616. package/src/_Template/Pages/index.js +2 -0
  617. package/src/_Template/Queries/DeleteAsyncAction.jsx +32 -0
  618. package/src/_Template/Queries/Fragments.jsx +101 -0
  619. package/src/_Template/Queries/InsertAsyncAction.jsx +40 -0
  620. package/src/_Template/Queries/ReadAsyncAction.jsx +44 -0
  621. package/src/_Template/Queries/ReadPageAsyncAction.jsx +13 -0
  622. package/src/_Template/Queries/SearchAsyncAction.jsx +16 -0
  623. package/src/_Template/Queries/UpdateAsyncAction.jsx +40 -0
  624. package/src/_Template/Queries/index.js +6 -0
  625. package/src/_Template/Scalars/ScalarAttribute.jsx +54 -0
  626. package/src/_Template/Scalars/TemplateScalarAttribute.jsx +88 -0
  627. package/src/_Template/Scalars/index.js +1 -0
  628. package/src/_Template/Vectors/TemplateVectorsAttribute.jsx +326 -0
  629. package/src/_Template/Vectors/VectorAttribute.jsx +56 -0
  630. package/src/_Template/Vectors/index.js +1 -0
  631. package/src/_Template/WhatToDo.md +44 -0
  632. package/src/_Template/index.js +71 -0
  633. package/src/index.js +8 -0
  634. package/src/uriroot.js +158 -0
@@ -0,0 +1,7 @@
1
+ import { Table as BaseTable } from "../../../../_template/src/Base/Components/Table"
2
+
3
+ export const Table = ({ data }) => {
4
+ return (
5
+ <BaseTable data={data} />
6
+ )
7
+ }
@@ -0,0 +1,14 @@
1
+
2
+ export * from './CardCapsule'
3
+ export * from './Children'
4
+ export * from './CUDButton'
5
+ export * from './LargeCard'
6
+ export * from './Link'
7
+ export * from './MediumContent'
8
+ export * from './MediumCard'
9
+
10
+ export * from './MediumEditableContent'
11
+ export * from './LiveEdit'
12
+
13
+
14
+ export * from './ConfirmEdit'
@@ -0,0 +1,67 @@
1
+ import { CreateURI, MediumEditableContent, ReadItemURI } from "../Components"
2
+ import { InsertAsyncAction } from "../Queries"
3
+ import {
4
+ CreateBody as BaseCreateBody,
5
+ CreateButton as BaseCreateButton,
6
+ CreateDialog as BaseCreateDialog,
7
+ CreateLink as BaseCreateLink
8
+ } from "../../../../_template/src/Base/Mutations/Create"
9
+
10
+ const DefaultContent = MediumEditableContent
11
+ const MutationAsyncAction = InsertAsyncAction
12
+
13
+ const permissions = {
14
+ oneOfRoles: ["superadmin"],
15
+ mode: "absolute",
16
+ }
17
+
18
+ export const CreateLink = ({
19
+ uriPattern=CreateURI,
20
+ ...props
21
+ }) => (
22
+ <BaseCreateLink {...props} uriPattern={uriPattern} />
23
+ );
24
+
25
+ export const CreateButton = ({
26
+ mutationAsyncAction=MutationAsyncAction,
27
+ DefaultContent:defaultContent=DefaultContent,
28
+ readItemURI=ReadItemURI,
29
+ ...props
30
+ }) => {
31
+ return <BaseCreateButton
32
+ {...props}
33
+ DefaultContent={defaultContent}
34
+ readItemURI={readItemURI}
35
+ mutationAsyncAction={mutationAsyncAction}
36
+ {...permissions}
37
+ />
38
+ }
39
+
40
+ export const CreateDialog = ({
41
+ mutationAsyncAction=MutationAsyncAction,
42
+ DefaultContent:defaultContent=DefaultContent,
43
+ readItemURI=ReadItemURI,
44
+ ...props
45
+ }) => {
46
+ return <BaseCreateDialog
47
+ {...props}
48
+ DefaultContent={defaultContent}
49
+ readItemURI={readItemURI}
50
+ mutationAsyncAction={mutationAsyncAction}
51
+ />
52
+ };
53
+
54
+ export const CreateBody = ({
55
+ mutationAsyncAction=MutationAsyncAction,
56
+ DefaultContent:defaultContent=DefaultContent,
57
+ readItemURI=ReadItemURI,
58
+ ...props
59
+ }) => {
60
+ return <BaseCreateBody
61
+ {...props}
62
+ DefaultContent={defaultContent}
63
+ readItemURI={readItemURI}
64
+ mutationAsyncAction={mutationAsyncAction}
65
+ />
66
+ };
67
+
@@ -0,0 +1,80 @@
1
+ import { DeleteItemURI, ListURI, MediumContent, VectorItemsURI } from "../Components";
2
+ import { DeleteAsyncAction } from "../Queries";
3
+ import {
4
+ DeleteBody as BaseDeleteBody,
5
+ DeleteButton as BaseDeleteButton,
6
+ DeleteDialog as BaseDeleteDialog,
7
+ DeleteLink as BaseDeleteLink
8
+ } from "../../../../_template/src/Base/Mutations/Delete";
9
+
10
+ const DefaultContent = MediumContent
11
+ const MutationAsyncAction = DeleteAsyncAction
12
+
13
+ const permissions = {
14
+ oneOfRoles: ["superadmin"],
15
+ mode: "absolute",
16
+ }
17
+
18
+ export const DeleteLink = ({
19
+ uriPattern=DeleteItemURI,
20
+ ...props
21
+ }) => {
22
+ return (
23
+ <BaseDeleteLink
24
+ {...props}
25
+ uriPattern={uriPattern}
26
+ {...permissions}
27
+ />
28
+ )
29
+ };
30
+
31
+ export const DeleteButton = ({
32
+ mutationAsyncAction=MutationAsyncAction,
33
+ DefaultContent:DefaultContent_=DefaultContent,
34
+ vectorItemsURI=ListURI,
35
+ ...props
36
+ }) => {
37
+ return (
38
+ <BaseDeleteButton
39
+ {...props}
40
+ DefaultContent={DefaultContent_}
41
+ mutationAsyncAction={mutationAsyncAction}
42
+ vectorItemsURI={vectorItemsURI}
43
+ {...permissions}
44
+ />
45
+ )
46
+ }
47
+
48
+ export const DeleteDialog = ({
49
+ mutationAsyncAction=MutationAsyncAction,
50
+ DefaultContent:DefaultContent_=DefaultContent,
51
+ vectorItemsURI=ListURI,
52
+ ...props
53
+ }) => {
54
+ return (
55
+ <BaseDeleteDialog
56
+ {...props}
57
+ DefaultContent={DefaultContent}
58
+ mutationAsyncAction={MutationAsyncAction}
59
+ vectorItemsURI={vectorItemsURI}
60
+ {...permissions}
61
+ />
62
+ )
63
+ }
64
+
65
+ export const DeleteBody = ({
66
+ mutationAsyncAction=MutationAsyncAction,
67
+ DefaultContent:DefaultContent_=DefaultContent,
68
+ vectorItemsURI=ListURI,
69
+ ...props
70
+ }) => {
71
+ return (
72
+ <BaseDeleteBody
73
+ {...props}
74
+ DefaultContent={DefaultContent}
75
+ mutationAsyncAction={MutationAsyncAction}
76
+ vectorItemsURI={vectorItemsURI}
77
+ {...permissions}
78
+ />
79
+ )
80
+ }
@@ -0,0 +1,30 @@
1
+ import { CardCapsule, VectorItemsURI } from "../Components"
2
+ import { CreateButton, CreateLink } from "./Create"
3
+ import { UpdateButton, UpdateLink } from "./Update"
4
+ import { ProxyLink } from "../../../../_template/src/Base/Components/ProxyLink"
5
+ import { DeleteButton } from "./Delete"
6
+
7
+ export const PageLink = ({ children, preserveHash = true, preserveSearch = true, ...props }) => {
8
+ return (
9
+ <ProxyLink
10
+ to={VectorItemsURI}
11
+ preserveHash={preserveHash}
12
+ preserveSearch={preserveSearch}
13
+ {...props}
14
+ >
15
+ {children}
16
+ </ProxyLink>
17
+ );
18
+ };
19
+
20
+ export const InteractiveMutations = ({ item }) => {
21
+ return (
22
+ <CardCapsule item={item} title="Nástroje">
23
+ <PageLink className="btn btn-outline-success">Stránka</PageLink>
24
+ <UpdateLink className="btn btn-outline-success" item={item}>Upravit</UpdateLink>
25
+ <UpdateButton className="btn btn-outline-success" item={item}>Upravit (Dialog)</UpdateButton>
26
+ <CreateButton className="btn btn-outline-success" rbacitem={{}}>Vytvořit nový</CreateButton>
27
+ <DeleteButton className="btn btn-outline-danger" item={item}>Odstranit</DeleteButton>
28
+ </CardCapsule>
29
+ )
30
+ }
@@ -0,0 +1,74 @@
1
+ import {
2
+ UpdateBody as BaseUpdateBody,
3
+ UpdateButton as BaseUpdateButton,
4
+ UpdateDialog as BaseUpdateDialog,
5
+ UpdateLink as BaseUpdateLink
6
+ } from "../../../../_template/src/Base/Mutations/Update";
7
+
8
+ import { MediumEditableContent, UpdateItemURI } from "../Components";
9
+ import { UpdateAsyncAction } from "../Queries";
10
+
11
+ const DefaultContent = MediumEditableContent
12
+ const mutationAsyncAction = UpdateAsyncAction
13
+
14
+ const permissions = {
15
+ oneOfRoles: ["superadmin"],
16
+ mode: "absolute",
17
+ }
18
+
19
+ // ALTERNATIVE, CHECK GQLENDPOINT
20
+ // const permissions = {
21
+ // oneOfRoles: ["administrátor", "personalista"],
22
+ // mode: "item",
23
+ // }
24
+
25
+
26
+ export const UpdateLink = ({
27
+ uriPattern=UpdateItemURI,
28
+ ...props
29
+ }) => {
30
+ return <BaseUpdateLink
31
+ {...props}
32
+ uriPattern={uriPattern}
33
+ {...permissions}
34
+ />
35
+ }
36
+
37
+ export const UpdateButton = ({
38
+ DefaultContent:DefaultContent_=DefaultContent,
39
+ mutationAsyncAction:mutationAsyncAction_=mutationAsyncAction,
40
+ ...props
41
+ }) => {
42
+ return <BaseUpdateButton
43
+ {...props}
44
+ DefaultContent={DefaultContent_}
45
+ mutationAsyncAction={mutationAsyncAction_}
46
+ {...permissions}
47
+ />
48
+ }
49
+
50
+ export const UpdateDialog = ({
51
+ DefaultContent:DefaultContent_=DefaultContent,
52
+ mutationAsyncAction:mutationAsyncAction_=mutationAsyncAction,
53
+ ...props
54
+ }) => {
55
+ return <BaseUpdateDialog
56
+ {...props}
57
+ DefaultContent={DefaultContent}
58
+ mutationAsyncAction={mutationAsyncAction}
59
+ {...permissions}
60
+ />
61
+ }
62
+
63
+ export const UpdateBody = ({
64
+ DefaultContent:DefaultContent_=DefaultContent,
65
+ mutationAsyncAction:mutationAsyncAction_=mutationAsyncAction,
66
+ ...props
67
+ }) => {
68
+ return <BaseUpdateBody
69
+ {...props}
70
+ DefaultContent={DefaultContent}
71
+ mutationAsyncAction={mutationAsyncAction}
72
+ {...permissions}
73
+ />
74
+ }
@@ -0,0 +1,3 @@
1
+ import { PageReadItem } from "./PageReadItem"
2
+
3
+ export const Page = PageReadItem
@@ -0,0 +1,26 @@
1
+ import { useParams } from "react-router"
2
+ import { AsyncActionProvider } from "../../../../_template/src/Base/Helpers/GQLEntityProvider"
3
+ import { PlaceChild } from "../../../../_template/src/Base/Helpers/PlaceChild"
4
+ import { PageNavbar } from "./PageNavbar"
5
+ import { ReadAsyncAction } from "../Queries"
6
+
7
+ export const PageItemBase = ({ children, queryAsyncAction=ReadAsyncAction }) => {
8
+ const {id} = useParams()
9
+ const item = {id}
10
+ return (
11
+ <AsyncActionProvider item={item} queryAsyncAction={queryAsyncAction}>
12
+ <PlaceChild Component={PageNavbar} />
13
+ {children}
14
+ </AsyncActionProvider>
15
+ )
16
+ }
17
+
18
+
19
+ export const PageBase = ({ children }) => {
20
+ return (
21
+ <>
22
+ <PageNavbar />
23
+ {children}
24
+ </>
25
+ )
26
+ }
@@ -0,0 +1,21 @@
1
+ import { ReadAsyncAction } from "../Queries"
2
+ import { Row } from "../../../../_template/src/Base/Components/Row";
3
+ import { Col as Col_ } from "../../../../_template/src/Base/Components/Col";
4
+ import { LinkURI } from "../Components";
5
+ import { PageBase } from "./PageBase";
6
+ import { CreateBody } from "../Mutations/Create";
7
+
8
+ export const PageCreateItem = ({ children, queryAsyncAction=ReadAsyncAction, ...props }) => {
9
+ return (
10
+ <PageBase>
11
+ <Row>
12
+ <Col_></Col_>
13
+ <Col_></Col_>
14
+ <Col_>
15
+ <CreateBody {...props} />
16
+ </Col_>
17
+ <Col_></Col_>
18
+ </Row>
19
+ </PageBase>
20
+ )
21
+ }
@@ -0,0 +1,13 @@
1
+ import { DeleteAsyncAction } from "../Queries"
2
+ import { LinkURI } from "../Components";
3
+ import { PageBase } from "./PageBase";
4
+ import { DeleteBody } from "../Mutations/Delete";
5
+
6
+ export const PageDeleteItem = ({ children, queryAsyncAction=DeleteAsyncAction, ...props }) => {
7
+ return (
8
+ <PageBase>
9
+ <DeleteBody {...props} mutationAsyncAction={queryAsyncAction} />
10
+ </PageBase>
11
+ )
12
+ }
13
+
@@ -0,0 +1,148 @@
1
+ import Nav from 'react-bootstrap/Nav'
2
+ import { ProxyLink, MyNavbar, useHash } from '@hrbolek/uoisfrontend-shared';
3
+
4
+ import { LinkURI, VectorItemsURI } from '../Components'
5
+ import { UpdateLink } from '../Mutations/Update';
6
+ import { CreateLink } from '../Mutations/Create';
7
+ import { NavDropdown } from 'react-bootstrap';
8
+
9
+ /**
10
+ * Allow to use HashContainer for determination which component at page will be rendered.
11
+ * That must be manually inserted at TemplatePageContent, usually this should be done
12
+ * as children of TemplateLargeCard.
13
+ * <TemplateLargeCard>
14
+ * <HashContainer>
15
+ * <VectorA id="history"/>
16
+ * <VectorB id="roles"/>
17
+ * <VectorC id="graph"/>
18
+ * </HashContainer>
19
+ * </TemplateLargeCard>
20
+ * it is usefull to define globally active "areas" like science, administration, teaching, ...
21
+ */
22
+ const TemplatePageSegments = [
23
+ { segment: 'education', label: 'Výuka' },
24
+ { segment: 'reaserach', label: 'Tvůrčí činnost' },
25
+ { segment: 'administration', label: 'Organizační činnost' },
26
+ { segment: 'development', label: 'Rozvoj' },
27
+ ]
28
+
29
+ /**
30
+ * A navigation button component that generates a URL based on the template's ID and a specific segment.
31
+ * The button uses a `ProxyLink` to navigate while preserving hash and query parameters.
32
+ *
33
+ * ### Features:
34
+ * - Dynamically constructs the URL with a hash fragment pointing to the specified segment.
35
+ * - Displays a label for the navigation link.
36
+ * - Integrates seamlessly with `ProxyLink` for enhanced navigation.
37
+ *
38
+ * @component
39
+ * @param {Object} props - The properties for the TitleNavButton component.
40
+ * @param {Object} props.template - The template object containing details about the template.
41
+ * @param {string|number} props.template.id - The unique identifier for the template.
42
+ * @param {string} props.segment - The segment to append as a hash fragment in the URL.
43
+ * @param {string} props.label - The text to display as the label for the navigation button.
44
+ *
45
+ * @returns {JSX.Element} A styled navigation button linking to the constructed URL.
46
+ *
47
+ * @example
48
+ * // Example 1: Basic usage with a template and segment
49
+ * const template = { id: 123 };
50
+ * const segment = "details";
51
+ * const label = "View Details";
52
+ *
53
+ * <TitleNavButton template={template} segment={segment} label={label} />
54
+ * // Resulting URL: `/ug/template/view/123#details`
55
+ *
56
+ * @example
57
+ * // Example 2: Different segment and label
58
+ * <TitleNavButton template={{ id: 456 }} segment="settings" label="Template Settings" />
59
+ * // Resulting URL: `/ug/template/view/456#settings`
60
+ */
61
+ const TitleNavButton = ({ item, segment, label, ...props }) => {
62
+ // const urlbase = (segment) => `/templates/template/${segment}/${template?.id}`;
63
+ const urlbase = (segment) => `${LinkURI}${item?.id}#${segment}`;
64
+ return (
65
+ <Nav.Link as={"span"} {...props}>
66
+ {/* <ProxyLink to={urlbase(segment)}>{label}</ProxyLink> */}
67
+ </Nav.Link>
68
+ );
69
+ };
70
+
71
+ /**
72
+ * Renders the navigation bar for an Template page.
73
+ *
74
+ * This component uses a custom hook, `useHash()`, to determine the current hash
75
+ * and highlights the active segment. It displays a navigation bar (using MyNavbar)
76
+ * with several segments (e.g. "history", "roles", "graph"), each rendered as a
77
+ * TitleNavButton. The segments are hardcoded in this component and only rendered
78
+ * if an `template` object is provided.
79
+ *
80
+ * @component
81
+ * @param {Object} props - The component properties.
82
+ * @param {Object} props.template - The template entity object that provides context for the page.
83
+ * @param {string|number} props.template.id - The unique identifier for the template.
84
+ * @param {Function} props.onSearchChange - Callback function to handle changes in the search input.
85
+ *
86
+ * @returns {JSX.Element} The rendered TemplatePageNavbar component.
87
+ *
88
+ * @example
89
+ * // Example usage:
90
+ * const template = { id: 123, ... };
91
+ * <TemplatePageNavbar template={template} onSearchChange={handleSearchChange} />
92
+ */
93
+ export const PageNavbar = ({ item, children, onSearchChange }) => {
94
+ // const [currentHash, setHash] = useHash(); // Use the custom hook to manage hash
95
+ const currentHash = "da"
96
+ return (
97
+ <div className='screen-only'>
98
+ <MyNavbar onSearchChange={onSearchChange} >
99
+ {item && TemplatePageSegments.map(({ segment, label }) => (
100
+ <Nav.Item key={segment} >
101
+ <TitleNavButton
102
+ template={item}
103
+ segment={segment}
104
+ label={label}
105
+ className={segment === currentHash ? "active" : ""} aria-current={segment === currentHash ? "page" : undefined}
106
+ />
107
+ </Nav.Item>
108
+ ))}
109
+ {children}
110
+ </MyNavbar>
111
+ </div>
112
+ );
113
+ };
114
+
115
+
116
+ export const MyNavDropdown = ({ item }) => {
117
+ const { __typename } = item || {}
118
+ const hasProperType = __typename === "GroupTypeGQLModel"
119
+ return (
120
+ <NavDropdown title="Typy skupin">
121
+ <NavDropdown.Item as={ProxyLink} to={VectorItemsURI}>
122
+ Seznam všech typů skupin
123
+ </NavDropdown.Item>
124
+
125
+ <NavDropdown.Divider />
126
+
127
+ <NavDropdown.Item
128
+ as={UpdateLink}
129
+ item={item}
130
+ disabled={!hasProperType}
131
+ >
132
+ Upravit aktuální
133
+ </NavDropdown.Item>
134
+ <NavDropdown.Item
135
+ as={CreateLink}
136
+ item={item}
137
+ item={{
138
+ name: "Nový typ",
139
+ }}
140
+ disabled={!hasProperType}
141
+ >
142
+ Nový typ
143
+ </NavDropdown.Item>
144
+
145
+
146
+ </NavDropdown>
147
+ )
148
+ }
@@ -0,0 +1,28 @@
1
+ import { useGQLEntityContext } from "../../../../_template/src/Base/Helpers/GQLEntityProvider"
2
+ import { MediumCardScalars } from "../../../../_template/src/Base/Scalars/ScalarAttribute"
3
+ import { MediumCardVectors } from "../../../../_template/src/Base/Vectors/VectorAttribute"
4
+ import { LargeCard, LinkURI } from "../Components"
5
+ import { ReadAsyncAction } from "../Queries"
6
+ import { PageBase, PageItemBase } from "./PageBase"
7
+
8
+ export const ReadItemURI = `${LinkURI}:id`
9
+
10
+ export const PageReadItem = ({ children, queryAsyncAction=ReadAsyncAction, ...props }) => {
11
+ return (
12
+ <PageItemBase queryAsyncAction={queryAsyncAction}>
13
+ PageReadItem
14
+ <Read {...props} />
15
+ </PageItemBase>
16
+ )
17
+ }
18
+
19
+ const Read = ({...props}) => {
20
+ const { item } = useGQLEntityContext()
21
+ if (!item) return null
22
+ return (
23
+ <LargeCard item={item} {...props} >
24
+ <MediumCardScalars item={item} />
25
+ <MediumCardVectors item={item} />
26
+ </LargeCard>
27
+ )
28
+ }
@@ -0,0 +1,25 @@
1
+ import { LargeCard, LinkURI } from "../Components"
2
+ import { ReadAsyncAction } from "../Queries"
3
+ import { PageItemBase } from "./PageBase"
4
+ import { UpdateBody } from "../Mutations/Update"
5
+ import { useGQLEntityContext } from "../../../../_template/src/Base/Helpers/GQLEntityProvider"
6
+
7
+ export const UpdateItemURI = `${LinkURI.replace('view', 'edit')}:id`
8
+
9
+ export const PageUpdateItem = ({ children, queryAsyncAction=ReadAsyncAction, ...props }) => {
10
+ return (
11
+ <PageItemBase queryAsyncAction={queryAsyncAction}>
12
+ PageUpdateItem
13
+ <LargeCardFromContext {...props}/>
14
+ </PageItemBase>
15
+ )
16
+ }
17
+
18
+ const LargeCardFromContext = ({...props}) => {
19
+ const { item } = useGQLEntityContext()
20
+ return (
21
+ <LargeCard item={item}>
22
+ <UpdateBody {...props} />
23
+ </LargeCard>
24
+ )
25
+ }
@@ -0,0 +1,83 @@
1
+
2
+ import { ReadPageAsyncAction } from "../Queries"
3
+ import { useInfiniteScroll } from "../../../../dynamic/src/Hooks/useInfiniteScroll"
4
+ import { LinkURI } from "../Components"
5
+ import { PageBase } from "./PageBase"
6
+ import { Table } from "../Components/Table"
7
+ import { Filter } from "../Components/Filter"
8
+ import { FilterButton, ResetFilterButton } from "../../../../_template/src/Base/FormControls/Filter"
9
+ import { useSearchParams } from "react-router"
10
+ import { useEffect } from "react"
11
+ import { useMemo } from "react"
12
+ import { AsyncStateIndicator } from "../../../../_template/src/Base/Helpers/AsyncStateIndicator"
13
+ import { Collapsible } from "../../../../_template/src/Base/FormControls/Collapsible"
14
+
15
+
16
+ export const VectorItemsURI = LinkURI.replace('view', 'list')
17
+
18
+ function safeParseWhere(sp, paramName = "where") {
19
+ const raw = sp.get(paramName);
20
+ if (!raw) return null;
21
+ try {
22
+ const obj = JSON.parse(raw);
23
+ return obj && typeof obj === "object" ? obj : null;
24
+ } catch {
25
+ return null;
26
+ }
27
+ }
28
+
29
+ //
30
+ const filterParameterName = "where"
31
+ export const PageVector = ({ children, queryAsyncAction = ReadPageAsyncAction }) => {
32
+
33
+ const [sp] = useSearchParams();
34
+
35
+ const whereFromUrl = useMemo(() => safeParseWhere(sp, filterParameterName), [sp.toString()]);
36
+
37
+ const { items, loading, error, hasMore, sentinelRef, loadMore, restart } = useInfiniteScroll(
38
+ {
39
+ asyncAction: queryAsyncAction,
40
+ actionParams: { skip: 0, limit: 30, where: whereFromUrl },
41
+ // reset: whereFromUrl
42
+ }
43
+ )
44
+
45
+ useEffect(() => {
46
+ const params = {skip: 0, limit: 30, where: whereFromUrl}
47
+ restart(params)
48
+ }, [whereFromUrl]);
49
+
50
+
51
+ return (
52
+ <PageBase>
53
+ <Collapsible
54
+ className="form-control btn btn-outline-primary"
55
+ buttonLabelCollapsed="Zobrazit filtr"
56
+ buttonLabelExpanded="Skrýt filtr"
57
+ >
58
+ <Filter>
59
+ <FilterButton
60
+ className="form-control btn btn-outline-success"
61
+ paramName={filterParameterName}
62
+ >
63
+ Filtrovat
64
+ </FilterButton>
65
+ <ResetFilterButton
66
+ className="form-control btn btn-warning"
67
+ paramName={filterParameterName}
68
+ >
69
+ Vymazat filtr
70
+ </ResetFilterButton>
71
+ </Filter>
72
+ </Collapsible>
73
+
74
+ <Table data={items} />
75
+
76
+ <AsyncStateIndicator error={error} loading={loading} text="Nahrávám další..." />
77
+
78
+ {hasMore && <div ref={sentinelRef} style={{ height: 80, backgroundColor: "lightgray" }} />}
79
+ {hasMore && <button className="btn btn-success form-control" onClick={() => loadMore()}>Více</button>}
80
+ </PageBase>
81
+ )
82
+ }
83
+