@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.
- package/dist/cjs/index.js +447 -0
- package/dist/es/index.js +11062 -0
- package/dist/umd/index.js +447 -0
- package/package.json +30 -0
- package/src/Base/Components/Attribute.jsx +51 -0
- package/src/Base/Components/CardCapsule.jsx +353 -0
- package/src/Base/Components/Col.jsx +36 -0
- package/src/Base/Components/ConfirmEdit.jsx +61 -0
- package/src/Base/Components/CopyButton.jsx +33 -0
- package/src/Base/Components/LargeCard.jsx +22 -0
- package/src/Base/Components/Link.jsx +47 -0
- package/src/Base/Components/LiveEdit.jsx +64 -0
- package/src/Base/Components/MediumCard.jsx +30 -0
- package/src/Base/Components/MediumContent.jsx +74 -0
- package/src/Base/Components/MediumEditableContent.jsx +52 -0
- package/src/Base/Components/ProxyLink.jsx +132 -0
- package/src/Base/Components/Row.jsx +23 -0
- package/src/Base/Components/Table.jsx +275 -0
- package/src/Base/Components/index.js +14 -0
- package/src/Base/Components/style.js +278 -0
- package/src/Base/FormControls/Collapsible.jsx +46 -0
- package/src/Base/FormControls/Dialog.jsx +75 -0
- package/src/Base/FormControls/EntityLookup.jsx +175 -0
- package/src/Base/FormControls/Filter.jsx +834 -0
- package/src/Base/FormControls/Input.jsx +163 -0
- package/src/Base/FormControls/Label.jsx +40 -0
- package/src/Base/FormControls/Select.jsx +150 -0
- package/src/Base/FormControls/TextArea.jsx +86 -0
- package/src/Base/FormControls/index.js +8 -0
- package/src/Base/Helpers/AsyncStateIndicator.jsx +9 -0
- package/src/Base/Helpers/GQLEntityProvider.jsx +163 -0
- package/src/Base/Helpers/NavigationHistoryProvider.jsx +178 -0
- package/src/Base/Helpers/PlaceChild.jsx +13 -0
- package/src/Base/Helpers/generateQuery.js +508 -0
- package/src/Base/Helpers/index.js +5 -0
- package/src/Base/Mutations/Create.jsx +152 -0
- package/src/Base/Mutations/Delete.jsx +237 -0
- package/src/Base/Mutations/General.jsx +243 -0
- package/src/Base/Mutations/InteractiveMutations.jsx +32 -0
- package/src/Base/Mutations/Update.jsx +275 -0
- package/src/Base/Mutations/helpers.jsx +7 -0
- package/src/Base/Mutations/index.js +5 -0
- package/src/Base/Pages/Page.jsx +235 -0
- package/src/Base/Pages/PageCatch.jsx +235 -0
- package/src/Base/Pages/PageNavbar.jsx +70 -0
- package/src/Base/Pages/PageVector.jsx +229 -0
- package/src/Base/Pages/RouterSegment.jsx +66 -0
- package/src/Base/Pages/index.js +5 -0
- package/src/Base/Queries/DeleteAsyncAction.jsx +32 -0
- package/src/Base/Queries/Fragments.jsx +101 -0
- package/src/Base/Queries/InsertAsyncAction.jsx +40 -0
- package/src/Base/Queries/ReadAsyncAction.jsx +44 -0
- package/src/Base/Queries/ReadPageAsyncAction.jsx +16 -0
- package/src/Base/Queries/SearchAsyncAction.jsx +16 -0
- package/src/Base/Queries/UpdateAsyncAction.jsx +40 -0
- package/src/Base/Queries/index.js +6 -0
- package/src/Base/Scalars/ScalarAttribute.jsx +49 -0
- package/src/Base/Scalars/index.js +1 -0
- package/src/Base/Vectors/VectorAttribute.jsx +137 -0
- package/src/Base/Vectors/index.js +1 -0
- package/src/Base/index.js +32 -0
- package/src/EventGQLModel/Components/A4Plan/A4Plan.jsx +363 -0
- package/src/EventGQLModel/Components/A4Plan/index.js +1 -0
- package/src/EventGQLModel/Components/CardCapsule.jsx +43 -0
- package/src/EventGQLModel/Components/Children.jsx +31 -0
- package/src/EventGQLModel/Components/ConfirmEdit.jsx +61 -0
- package/src/EventGQLModel/Components/Filter.jsx +14 -0
- package/src/EventGQLModel/Components/LargeCard.jsx +54 -0
- package/src/EventGQLModel/Components/Link.jsx +55 -0
- package/src/EventGQLModel/Components/LiveEdit.jsx +111 -0
- package/src/EventGQLModel/Components/MediumCard.jsx +39 -0
- package/src/EventGQLModel/Components/MediumContent.jsx +96 -0
- package/src/EventGQLModel/Components/MediumEditableContent.jsx +35 -0
- package/src/EventGQLModel/Components/Plan/PlanRow.jsx +470 -0
- package/src/EventGQLModel/Components/Plan/_utils.js +971 -0
- package/src/EventGQLModel/Components/Plan/calendarReducer.js +535 -0
- package/src/EventGQLModel/Components/Plan/index.js +3 -0
- package/src/EventGQLModel/Components/Table.jsx +7 -0
- package/src/EventGQLModel/Components/index.js +15 -0
- package/src/EventGQLModel/Mutations/Create.jsx +202 -0
- package/src/EventGQLModel/Mutations/Delete.jsx +173 -0
- package/src/EventGQLModel/Mutations/InteractiveMutations.jsx +30 -0
- package/src/EventGQLModel/Mutations/Update.jsx +147 -0
- package/src/EventGQLModel/Mutations/helpers.jsx +7 -0
- package/src/EventGQLModel/Pages/PageBase.jsx +56 -0
- package/src/EventGQLModel/Pages/PageCreateItem.jsx +28 -0
- package/src/EventGQLModel/Pages/PageDeleteItem.jsx +16 -0
- package/src/EventGQLModel/Pages/PageNavbar.jsx +160 -0
- package/src/EventGQLModel/Pages/PagePlan.jsx +42 -0
- package/src/EventGQLModel/Pages/PageReadItem.jsx +11 -0
- package/src/EventGQLModel/Pages/PageReadItemEx.jsx +42 -0
- package/src/EventGQLModel/Pages/PageSubevents.jsx +43 -0
- package/src/EventGQLModel/Pages/PageUpdateItem.jsx +14 -0
- package/src/EventGQLModel/Pages/PageVector.jsx +80 -0
- package/src/EventGQLModel/Pages/RouterSegment.jsx +82 -0
- package/src/EventGQLModel/Pages/index.js +2 -0
- package/src/EventGQLModel/Queries/DeleteAsyncAction.jsx +32 -0
- package/src/EventGQLModel/Queries/Fragments.jsx +123 -0
- package/src/EventGQLModel/Queries/InsertAsyncAction.jsx +40 -0
- package/src/EventGQLModel/Queries/ReadAsyncAction.jsx +44 -0
- package/src/EventGQLModel/Queries/ReadPageAsyncAction.jsx +13 -0
- package/src/EventGQLModel/Queries/ReadSubEventsAsyncAction.jsx +44 -0
- package/src/EventGQLModel/Queries/SearchAsyncAction.jsx +16 -0
- package/src/EventGQLModel/Queries/UpdateAsyncAction.jsx +40 -0
- package/src/EventGQLModel/Queries/index.js +6 -0
- package/src/EventGQLModel/Scalars/ScalarAttribute.jsx +54 -0
- package/src/EventGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
- package/src/EventGQLModel/Scalars/index.js +1 -0
- package/src/EventGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
- package/src/EventGQLModel/Vectors/VectorAttribute.jsx +56 -0
- package/src/EventGQLModel/Vectors/index.js +1 -0
- package/src/EventGQLModel/WhatToDo.md +44 -0
- package/src/EventGQLModel/index.js +71 -0
- package/src/GroupGQLModel/Components/CUDButton.jsx +128 -0
- package/src/GroupGQLModel/Components/CardCapsule.jsx +44 -0
- package/src/GroupGQLModel/Components/Children.jsx +31 -0
- package/src/GroupGQLModel/Components/ConfirmEdit.jsx +61 -0
- package/src/GroupGQLModel/Components/Filter.jsx +14 -0
- package/src/GroupGQLModel/Components/LargeCard.jsx +68 -0
- package/src/GroupGQLModel/Components/Link.jsx +54 -0
- package/src/GroupGQLModel/Components/LiveEdit.jsx +111 -0
- package/src/GroupGQLModel/Components/MediumCard.jsx +51 -0
- package/src/GroupGQLModel/Components/MediumContent.jsx +56 -0
- package/src/GroupGQLModel/Components/MediumEditableContent.jsx +52 -0
- package/src/GroupGQLModel/Components/Table.jsx +70 -0
- package/src/GroupGQLModel/Components/index.js +14 -0
- package/src/GroupGQLModel/Mutations/AddMembership.jsx +156 -0
- package/src/GroupGQLModel/Mutations/Create.jsx +73 -0
- package/src/GroupGQLModel/Mutations/Delete.jsx +87 -0
- package/src/GroupGQLModel/Mutations/InteractiveMutations.jsx +30 -0
- package/src/GroupGQLModel/Mutations/Update.jsx +74 -0
- package/src/GroupGQLModel/Pages/PageBase.jsx +56 -0
- package/src/GroupGQLModel/Pages/PageCreateItem.jsx +27 -0
- package/src/GroupGQLModel/Pages/PageDeleteItem.jsx +16 -0
- package/src/GroupGQLModel/Pages/PageNavbar.jsx +264 -0
- package/src/GroupGQLModel/Pages/PageReadItem.jsx +12 -0
- package/src/GroupGQLModel/Pages/PageReadItemEx.jsx +57 -0
- package/src/GroupGQLModel/Pages/PageUpdateItem.jsx +14 -0
- package/src/GroupGQLModel/Pages/PageVector.jsx +80 -0
- package/src/GroupGQLModel/Pages/RouterSegment.jsx +85 -0
- package/src/GroupGQLModel/Pages/index.js +2 -0
- package/src/GroupGQLModel/Queries/DeleteAsyncAction.jsx +22 -0
- package/src/GroupGQLModel/Queries/Fragments.jsx +145 -0
- package/src/GroupGQLModel/Queries/InsertAsyncAction.jsx +43 -0
- package/src/GroupGQLModel/Queries/ReadAsyncAction.jsx +44 -0
- package/src/GroupGQLModel/Queries/ReadPageAsyncAction.jsx +18 -0
- package/src/GroupGQLModel/Queries/SearchAsyncAction.jsx +15 -0
- package/src/GroupGQLModel/Queries/UpdateAsyncAction.jsx +56 -0
- package/src/GroupGQLModel/Queries/index.js +6 -0
- package/src/GroupGQLModel/Scalars/GroupRoles.jsx +69 -0
- package/src/GroupGQLModel/Scalars/MasterGroup.jsx +15 -0
- package/src/GroupGQLModel/Scalars/RBACObject.jsx +245 -0
- package/src/GroupGQLModel/Scalars/ScalarAttribute.jsx +54 -0
- package/src/GroupGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
- package/src/GroupGQLModel/Scalars/index.js +1 -0
- package/src/GroupGQLModel/Vectors/GroupMemberships.jsx +115 -0
- package/src/GroupGQLModel/Vectors/GroupRoles.jsx +112 -0
- package/src/GroupGQLModel/Vectors/GroupRolesOn.jsx +113 -0
- package/src/GroupGQLModel/Vectors/GroupSubgroups.jsx +97 -0
- package/src/GroupGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
- package/src/GroupGQLModel/Vectors/VectorAttribute.jsx +56 -0
- package/src/GroupGQLModel/Vectors/index.js +1 -0
- package/src/GroupGQLModel/index.js +7 -0
- package/src/GroupTypeGQLModel/Components/CUDButton.jsx +128 -0
- package/src/GroupTypeGQLModel/Components/CardCapsule.jsx +43 -0
- package/src/GroupTypeGQLModel/Components/Children.jsx +31 -0
- package/src/GroupTypeGQLModel/Components/ConfirmEdit.jsx +61 -0
- package/src/GroupTypeGQLModel/Components/Filter.jsx +14 -0
- package/src/GroupTypeGQLModel/Components/LargeCard.jsx +49 -0
- package/src/GroupTypeGQLModel/Components/Link.jsx +53 -0
- package/src/GroupTypeGQLModel/Components/LiveEdit.jsx +111 -0
- package/src/GroupTypeGQLModel/Components/MediumCard.jsx +39 -0
- package/src/GroupTypeGQLModel/Components/MediumContent.jsx +97 -0
- package/src/GroupTypeGQLModel/Components/MediumEditableContent.jsx +35 -0
- package/src/GroupTypeGQLModel/Components/Table.jsx +7 -0
- package/src/GroupTypeGQLModel/Components/index.js +14 -0
- package/src/GroupTypeGQLModel/Mutations/Create.jsx +67 -0
- package/src/GroupTypeGQLModel/Mutations/Delete.jsx +80 -0
- package/src/GroupTypeGQLModel/Mutations/InteractiveMutations.jsx +30 -0
- package/src/GroupTypeGQLModel/Mutations/Update.jsx +74 -0
- package/src/GroupTypeGQLModel/Pages/Page.jsx +3 -0
- package/src/GroupTypeGQLModel/Pages/PageBase.jsx +26 -0
- package/src/GroupTypeGQLModel/Pages/PageCreateItem.jsx +21 -0
- package/src/GroupTypeGQLModel/Pages/PageDeleteItem.jsx +13 -0
- package/src/GroupTypeGQLModel/Pages/PageNavbar.jsx +148 -0
- package/src/GroupTypeGQLModel/Pages/PageReadItem.jsx +28 -0
- package/src/GroupTypeGQLModel/Pages/PageUpdateItem.jsx +25 -0
- package/src/GroupTypeGQLModel/Pages/PageVector.jsx +83 -0
- package/src/GroupTypeGQLModel/Pages/RouterSegment.jsx +68 -0
- package/src/GroupTypeGQLModel/Pages/index.js +10 -0
- package/src/GroupTypeGQLModel/Queries/DeleteAsyncAction.jsx +27 -0
- package/src/GroupTypeGQLModel/Queries/Fragments.jsx +96 -0
- package/src/GroupTypeGQLModel/Queries/InsertAsyncAction.jsx +41 -0
- package/src/GroupTypeGQLModel/Queries/ReadAsyncAction.jsx +45 -0
- package/src/GroupTypeGQLModel/Queries/ReadPageAsyncAction.jsx +14 -0
- package/src/GroupTypeGQLModel/Queries/SearchAsyncAction.jsx +16 -0
- package/src/GroupTypeGQLModel/Queries/UpdateAsyncAction.jsx +42 -0
- package/src/GroupTypeGQLModel/Queries/index.js +6 -0
- package/src/GroupTypeGQLModel/Scalars/ScalarAttribute.jsx +54 -0
- package/src/GroupTypeGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
- package/src/GroupTypeGQLModel/Scalars/index.js +1 -0
- package/src/GroupTypeGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
- package/src/GroupTypeGQLModel/Vectors/VectorAttribute.jsx +56 -0
- package/src/GroupTypeGQLModel/Vectors/index.js +1 -0
- package/src/GroupTypeGQLModel/index.js +6 -0
- package/src/MembershipGQLModel/Components/CUDButton.jsx +128 -0
- package/src/MembershipGQLModel/Components/CardCapsule.jsx +43 -0
- package/src/MembershipGQLModel/Components/Children.jsx +31 -0
- package/src/MembershipGQLModel/Components/ConfirmEdit.jsx +61 -0
- package/src/MembershipGQLModel/Components/Filter.jsx +14 -0
- package/src/MembershipGQLModel/Components/LargeCard.jsx +49 -0
- package/src/MembershipGQLModel/Components/Link.jsx +54 -0
- package/src/MembershipGQLModel/Components/LiveEdit.jsx +111 -0
- package/src/MembershipGQLModel/Components/MediumCard.jsx +39 -0
- package/src/MembershipGQLModel/Components/MediumContent.jsx +97 -0
- package/src/MembershipGQLModel/Components/MediumEditableContent.jsx +35 -0
- package/src/MembershipGQLModel/Components/Table.jsx +7 -0
- package/src/MembershipGQLModel/Components/index.js +14 -0
- package/src/MembershipGQLModel/Mutations/Create.jsx +67 -0
- package/src/MembershipGQLModel/Mutations/Delete.jsx +80 -0
- package/src/MembershipGQLModel/Mutations/InteractiveMutations.jsx +31 -0
- package/src/MembershipGQLModel/Mutations/Update.jsx +74 -0
- package/src/MembershipGQLModel/Mutations/helpers.jsx +7 -0
- package/src/MembershipGQLModel/Pages/PageBase.jsx +57 -0
- package/src/MembershipGQLModel/Pages/PageCreateItem.jsx +28 -0
- package/src/MembershipGQLModel/Pages/PageDeleteItem.jsx +16 -0
- package/src/MembershipGQLModel/Pages/PageNavbar.jsx +110 -0
- package/src/MembershipGQLModel/Pages/PageReadItem.jsx +11 -0
- package/src/MembershipGQLModel/Pages/PageReadItemEx.jsx +42 -0
- package/src/MembershipGQLModel/Pages/PageUpdateItem.jsx +14 -0
- package/src/MembershipGQLModel/Pages/PageVector.jsx +80 -0
- package/src/MembershipGQLModel/Pages/RouterSegment.jsx +73 -0
- package/src/MembershipGQLModel/Pages/index.js +2 -0
- package/src/MembershipGQLModel/Queries/DeleteAsyncAction.jsx +32 -0
- package/src/MembershipGQLModel/Queries/Fragments.jsx +113 -0
- package/src/MembershipGQLModel/Queries/InsertAsyncAction.jsx +38 -0
- package/src/MembershipGQLModel/Queries/ReadAsyncAction.jsx +44 -0
- package/src/MembershipGQLModel/Queries/ReadPageAsyncAction.jsx +13 -0
- package/src/MembershipGQLModel/Queries/SearchAsyncAction.jsx +16 -0
- package/src/MembershipGQLModel/Queries/UpdateAsyncAction.jsx +40 -0
- package/src/MembershipGQLModel/Queries/index.js +6 -0
- package/src/MembershipGQLModel/Scalars/ScalarAttribute.jsx +54 -0
- package/src/MembershipGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
- package/src/MembershipGQLModel/Scalars/index.js +1 -0
- package/src/MembershipGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
- package/src/MembershipGQLModel/Vectors/VectorAttribute.jsx +56 -0
- package/src/MembershipGQLModel/Vectors/index.js +1 -0
- package/src/MembershipGQLModel/WhatToDo.md +44 -0
- package/src/MembershipGQLModel/index.js +6 -0
- package/src/RBACGQLModel/Components/CardCapsule.jsx +43 -0
- package/src/RBACGQLModel/Components/Children.jsx +31 -0
- package/src/RBACGQLModel/Components/ConfirmEdit.jsx +61 -0
- package/src/RBACGQLModel/Components/Filter.jsx +14 -0
- package/src/RBACGQLModel/Components/LargeCard.jsx +50 -0
- package/src/RBACGQLModel/Components/Link.jsx +54 -0
- package/src/RBACGQLModel/Components/LiveEdit.jsx +111 -0
- package/src/RBACGQLModel/Components/MediumCard.jsx +39 -0
- package/src/RBACGQLModel/Components/MediumContent.jsx +96 -0
- package/src/RBACGQLModel/Components/MediumEditableContent.jsx +212 -0
- package/src/RBACGQLModel/Components/Table.jsx +7 -0
- package/src/RBACGQLModel/Components/index.js +13 -0
- package/src/RBACGQLModel/Mutations/Create.jsx +202 -0
- package/src/RBACGQLModel/Mutations/Delete.jsx +173 -0
- package/src/RBACGQLModel/Mutations/InteractiveMutations.jsx +30 -0
- package/src/RBACGQLModel/Mutations/Update.jsx +147 -0
- package/src/RBACGQLModel/Mutations/helpers.jsx +7 -0
- package/src/RBACGQLModel/Pages/PageBase.jsx +56 -0
- package/src/RBACGQLModel/Pages/PageCreateItem.jsx +28 -0
- package/src/RBACGQLModel/Pages/PageDeleteItem.jsx +16 -0
- package/src/RBACGQLModel/Pages/PageNavbar.jsx +160 -0
- package/src/RBACGQLModel/Pages/PageReadItem.jsx +11 -0
- package/src/RBACGQLModel/Pages/PageReadItemEx.jsx +42 -0
- package/src/RBACGQLModel/Pages/PageUpdateItem.jsx +14 -0
- package/src/RBACGQLModel/Pages/PageVector.jsx +80 -0
- package/src/RBACGQLModel/Pages/RouterSegment.jsx +72 -0
- package/src/RBACGQLModel/Pages/index.js +2 -0
- package/src/RBACGQLModel/Queries/DeleteAsyncAction.jsx +32 -0
- package/src/RBACGQLModel/Queries/Fragments.jsx +101 -0
- package/src/RBACGQLModel/Queries/InsertAsyncAction.jsx +40 -0
- package/src/RBACGQLModel/Queries/ReadAsyncAction.jsx +44 -0
- package/src/RBACGQLModel/Queries/ReadPageAsyncAction.jsx +13 -0
- package/src/RBACGQLModel/Queries/SearchAsyncAction.jsx +16 -0
- package/src/RBACGQLModel/Queries/UpdateAsyncAction.jsx +40 -0
- package/src/RBACGQLModel/Queries/index.js +6 -0
- package/src/RBACGQLModel/Scalars/ScalarAttribute.jsx +54 -0
- package/src/RBACGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
- package/src/RBACGQLModel/Scalars/index.js +1 -0
- package/src/RBACGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
- package/src/RBACGQLModel/Vectors/VectorAttribute.jsx +56 -0
- package/src/RBACGQLModel/Vectors/index.js +1 -0
- package/src/RBACGQLModel/WhatToDo.md +44 -0
- package/src/RBACGQLModel/index.js +71 -0
- package/src/RoleGQLModel/Components/CUDButton.jsx +128 -0
- package/src/RoleGQLModel/Components/CardCapsule.jsx +43 -0
- package/src/RoleGQLModel/Components/Children.jsx +31 -0
- package/src/RoleGQLModel/Components/ConfirmEdit.jsx +61 -0
- package/src/RoleGQLModel/Components/Filter.jsx +14 -0
- package/src/RoleGQLModel/Components/LargeCard.jsx +49 -0
- package/src/RoleGQLModel/Components/Link.jsx +55 -0
- package/src/RoleGQLModel/Components/LiveEdit.jsx +111 -0
- package/src/RoleGQLModel/Components/MediumCard.jsx +39 -0
- package/src/RoleGQLModel/Components/MediumContent.jsx +97 -0
- package/src/RoleGQLModel/Components/MediumEditableContent.jsx +72 -0
- package/src/RoleGQLModel/Components/RBACObject.jsx +22 -0
- package/src/RoleGQLModel/Components/Table.jsx +82 -0
- package/src/RoleGQLModel/Components/index.js +14 -0
- package/src/RoleGQLModel/Mutations/AddRoleOnGroup.jsx +117 -0
- package/src/RoleGQLModel/Mutations/Create.jsx +67 -0
- package/src/RoleGQLModel/Mutations/Delete.jsx +80 -0
- package/src/RoleGQLModel/Mutations/InteractiveMutations.jsx +31 -0
- package/src/RoleGQLModel/Mutations/Update.jsx +74 -0
- package/src/RoleGQLModel/Pages/Page.jsx +3 -0
- package/src/RoleGQLModel/Pages/PageBase.jsx +26 -0
- package/src/RoleGQLModel/Pages/PageContent.jsx +31 -0
- package/src/RoleGQLModel/Pages/PageCreateItem.jsx +21 -0
- package/src/RoleGQLModel/Pages/PageDeleteItem.jsx +13 -0
- package/src/RoleGQLModel/Pages/PageNavbar.jsx +161 -0
- package/src/RoleGQLModel/Pages/PageReadItem.jsx +28 -0
- package/src/RoleGQLModel/Pages/PageUpdateItem.jsx +25 -0
- package/src/RoleGQLModel/Pages/PageVector.jsx +83 -0
- package/src/RoleGQLModel/Pages/RouterSegment.jsx +69 -0
- package/src/RoleGQLModel/Pages/index.js +10 -0
- package/src/RoleGQLModel/Queries/DeleteAsyncAction.jsx +22 -0
- package/src/RoleGQLModel/Queries/Fragments.jsx +123 -0
- package/src/RoleGQLModel/Queries/InsertAsyncAction.jsx +45 -0
- package/src/RoleGQLModel/Queries/ReadAsyncAction.jsx +45 -0
- package/src/RoleGQLModel/Queries/ReadPageAsyncAction.jsx +13 -0
- package/src/RoleGQLModel/Queries/UpdateAsyncAction.jsx +35 -0
- package/src/RoleGQLModel/Queries/index.js +6 -0
- package/src/RoleGQLModel/Scalars/ScalarAttribute.jsx +54 -0
- package/src/RoleGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
- package/src/RoleGQLModel/Scalars/index.js +1 -0
- package/src/RoleGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
- package/src/RoleGQLModel/Vectors/VectorAttribute.jsx +56 -0
- package/src/RoleGQLModel/Vectors/index.js +1 -0
- package/src/RoleGQLModel/index.js +6 -0
- package/src/RoleTypeGQLModel/Components/CUDButton.jsx +128 -0
- package/src/RoleTypeGQLModel/Components/CardCapsule.jsx +43 -0
- package/src/RoleTypeGQLModel/Components/Children.jsx +31 -0
- package/src/RoleTypeGQLModel/Components/ConfirmEdit.jsx +61 -0
- package/src/RoleTypeGQLModel/Components/Filter.jsx +14 -0
- package/src/RoleTypeGQLModel/Components/LargeCard.jsx +49 -0
- package/src/RoleTypeGQLModel/Components/Link.jsx +55 -0
- package/src/RoleTypeGQLModel/Components/LiveEdit.jsx +111 -0
- package/src/RoleTypeGQLModel/Components/MediumCard.jsx +39 -0
- package/src/RoleTypeGQLModel/Components/MediumContent.jsx +97 -0
- package/src/RoleTypeGQLModel/Components/MediumEditableContent.jsx +35 -0
- package/src/RoleTypeGQLModel/Components/Table.jsx +7 -0
- package/src/RoleTypeGQLModel/Components/index.js +14 -0
- package/src/RoleTypeGQLModel/Mutations/Create.jsx +67 -0
- package/src/RoleTypeGQLModel/Mutations/Delete.jsx +80 -0
- package/src/RoleTypeGQLModel/Mutations/InteractiveMutations.jsx +30 -0
- package/src/RoleTypeGQLModel/Mutations/Update.jsx +74 -0
- package/src/RoleTypeGQLModel/Pages/Page.jsx +3 -0
- package/src/RoleTypeGQLModel/Pages/PageBase.jsx +56 -0
- package/src/RoleTypeGQLModel/Pages/PageCreateItem.jsx +27 -0
- package/src/RoleTypeGQLModel/Pages/PageDeleteItem.jsx +16 -0
- package/src/RoleTypeGQLModel/Pages/PageNavbar.jsx +148 -0
- package/src/RoleTypeGQLModel/Pages/PageReadItem.jsx +11 -0
- package/src/RoleTypeGQLModel/Pages/PageUpdateItem.jsx +14 -0
- package/src/RoleTypeGQLModel/Pages/PageVector.jsx +79 -0
- package/src/RoleTypeGQLModel/Pages/RouterSegment.jsx +69 -0
- package/src/RoleTypeGQLModel/Pages/index.js +10 -0
- package/src/RoleTypeGQLModel/Queries/DeleteAsyncAction.jsx +32 -0
- package/src/RoleTypeGQLModel/Queries/Fragments.jsx +103 -0
- package/src/RoleTypeGQLModel/Queries/InsertAsyncAction.jsx +40 -0
- package/src/RoleTypeGQLModel/Queries/ReadAsyncAction.jsx +44 -0
- package/src/RoleTypeGQLModel/Queries/ReadPageAsyncAction.jsx +13 -0
- package/src/RoleTypeGQLModel/Queries/SearchAsyncAction.jsx +29 -0
- package/src/RoleTypeGQLModel/Queries/UpdateAsyncAction.jsx +40 -0
- package/src/RoleTypeGQLModel/Queries/index.js +6 -0
- package/src/RoleTypeGQLModel/Scalars/ScalarAttribute.jsx +54 -0
- package/src/RoleTypeGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
- package/src/RoleTypeGQLModel/Scalars/index.js +1 -0
- package/src/RoleTypeGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
- package/src/RoleTypeGQLModel/Vectors/VectorAttribute.jsx +56 -0
- package/src/RoleTypeGQLModel/Vectors/index.js +1 -0
- package/src/RoleTypeGQLModel/index.js +6 -0
- package/src/StateGQLModel/Components/CardCapsule.jsx +43 -0
- package/src/StateGQLModel/Components/Children.jsx +31 -0
- package/src/StateGQLModel/Components/ConfirmEdit.jsx +61 -0
- package/src/StateGQLModel/Components/Filter.jsx +14 -0
- package/src/StateGQLModel/Components/LargeCard.jsx +50 -0
- package/src/StateGQLModel/Components/Link.jsx +54 -0
- package/src/StateGQLModel/Components/LiveEdit.jsx +111 -0
- package/src/StateGQLModel/Components/MediumCard.jsx +39 -0
- package/src/StateGQLModel/Components/MediumContent.jsx +96 -0
- package/src/StateGQLModel/Components/MediumEditableContent.jsx +36 -0
- package/src/StateGQLModel/Components/Table.jsx +7 -0
- package/src/StateGQLModel/Components/index.js +13 -0
- package/src/StateGQLModel/Mutations/Create.jsx +79 -0
- package/src/StateGQLModel/Mutations/Delete.jsx +87 -0
- package/src/StateGQLModel/Mutations/InteractiveMutations.jsx +30 -0
- package/src/StateGQLModel/Mutations/Update.jsx +76 -0
- package/src/StateGQLModel/Mutations/helpers.jsx +7 -0
- package/src/StateGQLModel/Pages/PageBase.jsx +56 -0
- package/src/StateGQLModel/Pages/PageCreateItem.jsx +28 -0
- package/src/StateGQLModel/Pages/PageDeleteItem.jsx +16 -0
- package/src/StateGQLModel/Pages/PageNavbar.jsx +160 -0
- package/src/StateGQLModel/Pages/PageReadItem.jsx +11 -0
- package/src/StateGQLModel/Pages/PageReadItemEx.jsx +42 -0
- package/src/StateGQLModel/Pages/PageUpdateItem.jsx +14 -0
- package/src/StateGQLModel/Pages/PageVector.jsx +80 -0
- package/src/StateGQLModel/Pages/RouterSegment.jsx +72 -0
- package/src/StateGQLModel/Pages/index.js +2 -0
- package/src/StateGQLModel/Queries/DeleteAsyncAction.jsx +32 -0
- package/src/StateGQLModel/Queries/Fragments.jsx +109 -0
- package/src/StateGQLModel/Queries/InsertAsyncAction.jsx +104 -0
- package/src/StateGQLModel/Queries/ReadAsyncAction.jsx +48 -0
- package/src/StateGQLModel/Queries/ReadPageAsyncAction.jsx +23 -0
- package/src/StateGQLModel/Queries/SearchAsyncAction.jsx +16 -0
- package/src/StateGQLModel/Queries/UpdateAsyncAction.jsx +106 -0
- package/src/StateGQLModel/Queries/index.js +6 -0
- package/src/StateGQLModel/Scalars/ScalarAttribute.jsx +54 -0
- package/src/StateGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
- package/src/StateGQLModel/Scalars/index.js +1 -0
- package/src/StateGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
- package/src/StateGQLModel/Vectors/VectorAttribute.jsx +56 -0
- package/src/StateGQLModel/Vectors/index.js +1 -0
- package/src/StateGQLModel/index.js +71 -0
- package/src/StateMachineGQLModel/Components/CardCapsule.jsx +43 -0
- package/src/StateMachineGQLModel/Components/Children.jsx +31 -0
- package/src/StateMachineGQLModel/Components/ConfirmEdit.jsx +61 -0
- package/src/StateMachineGQLModel/Components/Filter.jsx +14 -0
- package/src/StateMachineGQLModel/Components/LargeCard.jsx +50 -0
- package/src/StateMachineGQLModel/Components/Link.jsx +54 -0
- package/src/StateMachineGQLModel/Components/LiveEdit.jsx +111 -0
- package/src/StateMachineGQLModel/Components/MediumCard.jsx +39 -0
- package/src/StateMachineGQLModel/Components/MediumContent.jsx +96 -0
- package/src/StateMachineGQLModel/Components/MediumEditableContent.jsx +989 -0
- package/src/StateMachineGQLModel/Components/Table.jsx +7 -0
- package/src/StateMachineGQLModel/Components/index.js +13 -0
- package/src/StateMachineGQLModel/Mutations/Create.jsx +79 -0
- package/src/StateMachineGQLModel/Mutations/Delete.jsx +80 -0
- package/src/StateMachineGQLModel/Mutations/InteractiveMutations.jsx +30 -0
- package/src/StateMachineGQLModel/Mutations/Update.jsx +74 -0
- package/src/StateMachineGQLModel/Mutations/helpers.jsx +7 -0
- package/src/StateMachineGQLModel/Pages/PageBase.jsx +56 -0
- package/src/StateMachineGQLModel/Pages/PageCreateItem.jsx +28 -0
- package/src/StateMachineGQLModel/Pages/PageDeleteItem.jsx +16 -0
- package/src/StateMachineGQLModel/Pages/PageNavbar.jsx +160 -0
- package/src/StateMachineGQLModel/Pages/PageReadItem.jsx +11 -0
- package/src/StateMachineGQLModel/Pages/PageReadItemEx.jsx +42 -0
- package/src/StateMachineGQLModel/Pages/PageUpdateItem.jsx +14 -0
- package/src/StateMachineGQLModel/Pages/PageVector.jsx +80 -0
- package/src/StateMachineGQLModel/Pages/RouterSegment.jsx +72 -0
- package/src/StateMachineGQLModel/Pages/index.js +2 -0
- package/src/StateMachineGQLModel/Queries/DeleteAsyncAction.jsx +32 -0
- package/src/StateMachineGQLModel/Queries/Fragments.jsx +148 -0
- package/src/StateMachineGQLModel/Queries/InsertAsyncAction.jsx +44 -0
- package/src/StateMachineGQLModel/Queries/ReadAsyncAction.jsx +48 -0
- package/src/StateMachineGQLModel/Queries/ReadPageAsyncAction.jsx +23 -0
- package/src/StateMachineGQLModel/Queries/SearchAsyncAction.jsx +16 -0
- package/src/StateMachineGQLModel/Queries/UpdateAsyncAction.jsx +40 -0
- package/src/StateMachineGQLModel/Queries/index.js +6 -0
- package/src/StateMachineGQLModel/Scalars/ScalarAttribute.jsx +54 -0
- package/src/StateMachineGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
- package/src/StateMachineGQLModel/Scalars/index.js +1 -0
- package/src/StateMachineGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
- package/src/StateMachineGQLModel/Vectors/VectorAttribute.jsx +56 -0
- package/src/StateMachineGQLModel/Vectors/index.js +1 -0
- package/src/StateMachineGQLModel/WhatToDo.md +44 -0
- package/src/StateMachineGQLModel/index.js +71 -0
- package/src/StateTransitionGQLModel/Components/CardCapsule.jsx +43 -0
- package/src/StateTransitionGQLModel/Components/Children.jsx +31 -0
- package/src/StateTransitionGQLModel/Components/ConfirmEdit.jsx +61 -0
- package/src/StateTransitionGQLModel/Components/Filter.jsx +14 -0
- package/src/StateTransitionGQLModel/Components/LargeCard.jsx +50 -0
- package/src/StateTransitionGQLModel/Components/Link.jsx +54 -0
- package/src/StateTransitionGQLModel/Components/LiveEdit.jsx +111 -0
- package/src/StateTransitionGQLModel/Components/MediumCard.jsx +39 -0
- package/src/StateTransitionGQLModel/Components/MediumContent.jsx +96 -0
- package/src/StateTransitionGQLModel/Components/MediumEditableContent.jsx +35 -0
- package/src/StateTransitionGQLModel/Components/Table.jsx +7 -0
- package/src/StateTransitionGQLModel/Components/index.js +13 -0
- package/src/StateTransitionGQLModel/Mutations/Create.jsx +79 -0
- package/src/StateTransitionGQLModel/Mutations/Delete.jsx +80 -0
- package/src/StateTransitionGQLModel/Mutations/InteractiveMutations.jsx +30 -0
- package/src/StateTransitionGQLModel/Mutations/Update.jsx +75 -0
- package/src/StateTransitionGQLModel/Mutations/helpers.jsx +7 -0
- package/src/StateTransitionGQLModel/Pages/PageBase.jsx +56 -0
- package/src/StateTransitionGQLModel/Pages/PageCreateItem.jsx +28 -0
- package/src/StateTransitionGQLModel/Pages/PageDeleteItem.jsx +16 -0
- package/src/StateTransitionGQLModel/Pages/PageNavbar.jsx +160 -0
- package/src/StateTransitionGQLModel/Pages/PageReadItem.jsx +11 -0
- package/src/StateTransitionGQLModel/Pages/PageReadItemEx.jsx +42 -0
- package/src/StateTransitionGQLModel/Pages/PageUpdateItem.jsx +14 -0
- package/src/StateTransitionGQLModel/Pages/PageVector.jsx +80 -0
- package/src/StateTransitionGQLModel/Pages/RouterSegment.jsx +72 -0
- package/src/StateTransitionGQLModel/Pages/index.js +2 -0
- package/src/StateTransitionGQLModel/Queries/DeleteAsyncAction.jsx +32 -0
- package/src/StateTransitionGQLModel/Queries/Fragments.jsx +150 -0
- package/src/StateTransitionGQLModel/Queries/InsertAsyncAction.jsx +107 -0
- package/src/StateTransitionGQLModel/Queries/ReadAsyncAction.jsx +48 -0
- package/src/StateTransitionGQLModel/Queries/ReadPageAsyncAction.jsx +23 -0
- package/src/StateTransitionGQLModel/Queries/SearchAsyncAction.jsx +16 -0
- package/src/StateTransitionGQLModel/Queries/UpdateAsyncAction.jsx +109 -0
- package/src/StateTransitionGQLModel/Queries/index.js +6 -0
- package/src/StateTransitionGQLModel/Scalars/ScalarAttribute.jsx +54 -0
- package/src/StateTransitionGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
- package/src/StateTransitionGQLModel/Scalars/index.js +1 -0
- package/src/StateTransitionGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
- package/src/StateTransitionGQLModel/Vectors/VectorAttribute.jsx +56 -0
- package/src/StateTransitionGQLModel/Vectors/index.js +1 -0
- package/src/StateTransitionGQLModel/WhatToDo.md +44 -0
- package/src/StateTransitionGQLModel/index.js +71 -0
- package/src/Template/Attributes/TemplateTrivialAttribute.jsx +21 -0
- package/src/Template/Attributes/index.js +1 -0
- package/src/Template/Components/CUDButton.jsx +128 -0
- package/src/Template/Components/CardCapsule.jsx +43 -0
- package/src/Template/Components/Children.jsx +31 -0
- package/src/Template/Components/ConfirmEdit.jsx +61 -0
- package/src/Template/Components/LargeCard.jsx +48 -0
- package/src/Template/Components/Link.jsx +41 -0
- package/src/Template/Components/LiveEdit.jsx +111 -0
- package/src/Template/Components/MediumCard.jsx +39 -0
- package/src/Template/Components/MediumContent.jsx +97 -0
- package/src/Template/Components/MediumEditableContent.jsx +36 -0
- package/src/Template/Components/Table.jsx +7 -0
- package/src/Template/Components/index.js +14 -0
- package/src/Template/Pages/Page.jsx +28 -0
- package/src/Template/Pages/PageCapsule.jsx +13 -0
- package/src/Template/Pages/PageContent.jsx +34 -0
- package/src/Template/Pages/PageEdit.jsx +17 -0
- package/src/Template/Pages/PageNavbar.jsx +110 -0
- package/src/Template/Pages/RouterSegment.jsx +52 -0
- package/src/Template/Pages/VectorPage.jsx +133 -0
- package/src/Template/Pages/index.js +6 -0
- package/src/Template/Queries/DeleteAsyncAction.jsx +22 -0
- package/src/Template/Queries/Fragments.jsx +92 -0
- package/src/Template/Queries/InsertAsyncAction.jsx +22 -0
- package/src/Template/Queries/ReadAsyncAction.jsx +45 -0
- package/src/Template/Queries/ReadPageAsyncAction.jsx +13 -0
- package/src/Template/Queries/UpdateAsyncAction.jsx +76 -0
- package/src/Template/Queries/index.js +6 -0
- package/src/Template/Scalars/ScalarAttribute.jsx +54 -0
- package/src/Template/Scalars/TemplateScalarAttribute.jsx +88 -0
- package/src/Template/Scalars/index.js +1 -0
- package/src/Template/Vectors/TemplateVectorsAttribute.jsx +326 -0
- package/src/Template/Vectors/VectorAttribute.jsx +56 -0
- package/src/Template/Vectors/index.js +1 -0
- package/src/Template/index.js +71 -0
- package/src/UserGQLModel/Components/CUDButton.jsx +128 -0
- package/src/UserGQLModel/Components/CardCapsule.jsx +43 -0
- package/src/UserGQLModel/Components/ConfirmEdit.jsx +61 -0
- package/src/UserGQLModel/Components/Filter.jsx +15 -0
- package/src/UserGQLModel/Components/LargeCard.jsx +82 -0
- package/src/UserGQLModel/Components/Link.jsx +54 -0
- package/src/UserGQLModel/Components/LiveEdit.jsx +111 -0
- package/src/UserGQLModel/Components/MediumCard.jsx +40 -0
- package/src/UserGQLModel/Components/MediumContent.jsx +49 -0
- package/src/UserGQLModel/Components/MediumEditableContent.jsx +57 -0
- package/src/UserGQLModel/Components/Table.jsx +7 -0
- package/src/UserGQLModel/Components/index.js +13 -0
- package/src/UserGQLModel/Mutations/AddMembership.jsx +136 -0
- package/src/UserGQLModel/Mutations/Create.jsx +68 -0
- package/src/UserGQLModel/Mutations/Delete.jsx +81 -0
- package/src/UserGQLModel/Mutations/InteractiveMutations.jsx +30 -0
- package/src/UserGQLModel/Mutations/Update.jsx +68 -0
- package/src/UserGQLModel/Mutations/helpers.jsx +7 -0
- package/src/UserGQLModel/Pages/PageAddMembership.jsx +15 -0
- package/src/UserGQLModel/Pages/PageBase.jsx +56 -0
- package/src/UserGQLModel/Pages/PageCreateItem.jsx +27 -0
- package/src/UserGQLModel/Pages/PageDeleteItem.jsx +16 -0
- package/src/UserGQLModel/Pages/PageNavbar.jsx +146 -0
- package/src/UserGQLModel/Pages/PageReadItem.jsx +12 -0
- package/src/UserGQLModel/Pages/PageReadItemEx.jsx +62 -0
- package/src/UserGQLModel/Pages/PageUpdateItem.jsx +14 -0
- package/src/UserGQLModel/Pages/PageVector.jsx +78 -0
- package/src/UserGQLModel/Pages/RouterSegment.jsx +77 -0
- package/src/UserGQLModel/Pages/index.js +9 -0
- package/src/UserGQLModel/Queries/DeleteAsyncAction.jsx +22 -0
- package/src/UserGQLModel/Queries/Fragments.jsx +120 -0
- package/src/UserGQLModel/Queries/InsertAsyncAction.jsx +22 -0
- package/src/UserGQLModel/Queries/ReadAsyncAction.jsx +45 -0
- package/src/UserGQLModel/Queries/ReadPageAsyncAction.jsx +17 -0
- package/src/UserGQLModel/Queries/SearchAsyncAction.jsx +15 -0
- package/src/UserGQLModel/Queries/UpdateAsyncAction.jsx +76 -0
- package/src/UserGQLModel/Queries/index.js +6 -0
- package/src/UserGQLModel/Scalars/ScalarAttribute.jsx +54 -0
- package/src/UserGQLModel/Scalars/TemplateScalarAttribute.jsx +88 -0
- package/src/UserGQLModel/Scalars/index.js +1 -0
- package/src/UserGQLModel/Vectors/Roles.jsx +23 -0
- package/src/UserGQLModel/Vectors/TemplateVectorsAttribute.jsx +326 -0
- package/src/UserGQLModel/Vectors/UserMemberships.jsx +56 -0
- package/src/UserGQLModel/Vectors/UserRoles.jsx +81 -0
- package/src/UserGQLModel/Vectors/VectorAttribute.jsx +56 -0
- package/src/UserGQLModel/Vectors/index.js +1 -0
- package/src/UserGQLModel/index.js +6 -0
- package/src/_Template/Components/CardCapsule.jsx +43 -0
- package/src/_Template/Components/Children.jsx +31 -0
- package/src/_Template/Components/ConfirmEdit.jsx +61 -0
- package/src/_Template/Components/Filter.jsx +14 -0
- package/src/_Template/Components/LargeCard.jsx +50 -0
- package/src/_Template/Components/Link.jsx +54 -0
- package/src/_Template/Components/LiveEdit.jsx +111 -0
- package/src/_Template/Components/MediumCard.jsx +39 -0
- package/src/_Template/Components/MediumContent.jsx +96 -0
- package/src/_Template/Components/MediumEditableContent.jsx +35 -0
- package/src/_Template/Components/Table.jsx +7 -0
- package/src/_Template/Components/index.js +13 -0
- package/src/_Template/Mutations/Create.jsx +202 -0
- package/src/_Template/Mutations/Delete.jsx +173 -0
- package/src/_Template/Mutations/InteractiveMutations.jsx +30 -0
- package/src/_Template/Mutations/Update.jsx +147 -0
- package/src/_Template/Mutations/helpers.jsx +7 -0
- package/src/_Template/Pages/PageBase.jsx +56 -0
- package/src/_Template/Pages/PageCreateItem.jsx +28 -0
- package/src/_Template/Pages/PageDeleteItem.jsx +16 -0
- package/src/_Template/Pages/PageNavbar.jsx +160 -0
- package/src/_Template/Pages/PageReadItem.jsx +11 -0
- package/src/_Template/Pages/PageReadItemEx.jsx +42 -0
- package/src/_Template/Pages/PageUpdateItem.jsx +14 -0
- package/src/_Template/Pages/PageVector.jsx +80 -0
- package/src/_Template/Pages/RouterSegment.jsx +72 -0
- package/src/_Template/Pages/index.js +2 -0
- package/src/_Template/Queries/DeleteAsyncAction.jsx +32 -0
- package/src/_Template/Queries/Fragments.jsx +101 -0
- package/src/_Template/Queries/InsertAsyncAction.jsx +40 -0
- package/src/_Template/Queries/ReadAsyncAction.jsx +44 -0
- package/src/_Template/Queries/ReadPageAsyncAction.jsx +13 -0
- package/src/_Template/Queries/SearchAsyncAction.jsx +16 -0
- package/src/_Template/Queries/UpdateAsyncAction.jsx +40 -0
- package/src/_Template/Queries/index.js +6 -0
- package/src/_Template/Scalars/ScalarAttribute.jsx +54 -0
- package/src/_Template/Scalars/TemplateScalarAttribute.jsx +88 -0
- package/src/_Template/Scalars/index.js +1 -0
- package/src/_Template/Vectors/TemplateVectorsAttribute.jsx +326 -0
- package/src/_Template/Vectors/VectorAttribute.jsx +56 -0
- package/src/_Template/Vectors/index.js +1 -0
- package/src/_Template/WhatToDo.md +44 -0
- package/src/_Template/index.js +71 -0
- package/src/index.js +8 -0
- package/src/uriroot.js +158 -0
|
@@ -0,0 +1,363 @@
|
|
|
1
|
+
import { useMemo } from "react";
|
|
2
|
+
import {
|
|
3
|
+
FlexContainer,
|
|
4
|
+
FlexRow,
|
|
5
|
+
WeekHeaderContent,
|
|
6
|
+
WeekGridItem
|
|
7
|
+
} from "../Plan";
|
|
8
|
+
import {
|
|
9
|
+
getContrastTextColor,
|
|
10
|
+
toLocalDate,
|
|
11
|
+
addDays
|
|
12
|
+
} from "../Plan";
|
|
13
|
+
|
|
14
|
+
/* =========================
|
|
15
|
+
KONSTANTY
|
|
16
|
+
========================= */
|
|
17
|
+
|
|
18
|
+
const DAY_NAMES = ["pondělí", "úterý", "středa", "čtvrtek", "pátek"];
|
|
19
|
+
const ISO_DAY_INDEXES = [1, 2, 3, 4, 5]; // Po..Pá
|
|
20
|
+
|
|
21
|
+
const DAY_START_MINUTES = 8 * 60; // 8:00
|
|
22
|
+
const DAY_END_MINUTES = 18 * 60; // 18:00
|
|
23
|
+
const DAY_TOTAL_MINUTES = DAY_END_MINUTES - DAY_START_MINUTES;
|
|
24
|
+
|
|
25
|
+
const TIME_MARKS = [
|
|
26
|
+
{ label: "8:00", minutes: 8 * 60 },
|
|
27
|
+
{ label: "9:30", minutes: 9 * 60 + 30 },
|
|
28
|
+
{ label: "9:50", minutes: 9 * 60 + 50 },
|
|
29
|
+
{ label: "11:20", minutes: 11 * 60 + 20 },
|
|
30
|
+
{ label: "11:40", minutes: 11 * 60 + 40 },
|
|
31
|
+
{ label: "13:10", minutes: 13 * 60 + 10 },
|
|
32
|
+
{ label: "14:30", minutes: 14 * 60 + 30 },
|
|
33
|
+
{ label: "16:00", minutes: 16 * 60 + 0 },
|
|
34
|
+
{ label: "16:20", minutes: 16 * 60 + 20 },
|
|
35
|
+
{ label: "17:50", minutes: 17 * 60 + 50 }
|
|
36
|
+
];
|
|
37
|
+
|
|
38
|
+
/* =========================
|
|
39
|
+
DATE HELPERS
|
|
40
|
+
========================= */
|
|
41
|
+
|
|
42
|
+
function toDateTime(value) {
|
|
43
|
+
if (value instanceof Date) return new Date(value.getTime());
|
|
44
|
+
return new Date(value);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
function startOfDay(dateLike) {
|
|
48
|
+
const d = toDateTime(dateLike);
|
|
49
|
+
return new Date(d.getFullYear(), d.getMonth(), d.getDate(), 0, 0, 0, 0);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
function endOfDay(dateLike) {
|
|
53
|
+
const d = toDateTime(dateLike);
|
|
54
|
+
return new Date(d.getFullYear(), d.getMonth(), d.getDate(), 23, 59, 59, 999);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
function minutesOfDay(date) {
|
|
58
|
+
return date.getHours() * 60 + date.getMinutes();
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
function rangesIntersect(aStart, aEnd, bStart, bEnd) {
|
|
62
|
+
return aStart <= bEnd && bStart <= aEnd;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
function getISOWeekday(date) {
|
|
66
|
+
const jsDay = date.getDay();
|
|
67
|
+
return jsDay === 0 ? 7 : jsDay;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
function startOfISOWeek(dateLike) {
|
|
71
|
+
const d = startOfDay(dateLike);
|
|
72
|
+
return addDays(d, 1 - getISOWeekday(d));
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
function pad2(n) {
|
|
76
|
+
return String(n).padStart(2, "0");
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
function getISOWeek(date) {
|
|
80
|
+
const d = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()));
|
|
81
|
+
const dayNum = d.getUTCDay() || 7;
|
|
82
|
+
d.setUTCDate(d.getUTCDate() + 4 - dayNum);
|
|
83
|
+
const yearStart = new Date(Date.UTC(d.getUTCFullYear(), 0, 1));
|
|
84
|
+
return Math.ceil((((d - yearStart) / 86400000) + 1) / 7);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
function buildWeeksInRange(startdate, enddate) {
|
|
88
|
+
const start = startOfISOWeek(startdate);
|
|
89
|
+
const end = startOfISOWeek(enddate);
|
|
90
|
+
|
|
91
|
+
const result = [];
|
|
92
|
+
let cursor = new Date(start);
|
|
93
|
+
|
|
94
|
+
while (cursor <= end) {
|
|
95
|
+
const weekStart = new Date(cursor);
|
|
96
|
+
const weekEnd = addDays(weekStart, 6);
|
|
97
|
+
|
|
98
|
+
const isoYear = (() => {
|
|
99
|
+
const d = new Date(Date.UTC(weekStart.getFullYear(), weekStart.getMonth(), weekStart.getDate()));
|
|
100
|
+
const dayNum = d.getUTCDay() || 7;
|
|
101
|
+
d.setUTCDate(d.getUTCDate() + 4 - dayNum);
|
|
102
|
+
return d.getUTCFullYear();
|
|
103
|
+
})();
|
|
104
|
+
|
|
105
|
+
const isoWeek = getISOWeek(weekStart);
|
|
106
|
+
|
|
107
|
+
result.push({
|
|
108
|
+
id: `${isoYear}-W${String(isoWeek).padStart(2, "0")}`,
|
|
109
|
+
isoYear,
|
|
110
|
+
isoWeek,
|
|
111
|
+
label: `${isoWeek}`,
|
|
112
|
+
labelFull: `${isoYear}/W${isoWeek}`,
|
|
113
|
+
weekStart,
|
|
114
|
+
weekEnd,
|
|
115
|
+
firstHalfStart: weekStart,
|
|
116
|
+
firstHalfEnd: addDays(weekStart, 2),
|
|
117
|
+
secondHalfStart: addDays(weekStart, 3),
|
|
118
|
+
secondHalfEnd: weekEnd
|
|
119
|
+
});
|
|
120
|
+
|
|
121
|
+
cursor = addDays(cursor, 7);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
return result;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
function normalizeEvent(event) {
|
|
128
|
+
const startRaw = event?.start ?? event?.startDate ?? event?.startdate;
|
|
129
|
+
const endRaw = event?.end ?? event?.endDate ?? event?.enddate ?? startRaw;
|
|
130
|
+
|
|
131
|
+
const start = toDateTime(startRaw);
|
|
132
|
+
const end = toDateTime(endRaw);
|
|
133
|
+
|
|
134
|
+
if (Number.isNaN(start.getTime()) || Number.isNaN(end.getTime())) {
|
|
135
|
+
return null;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
return start <= end
|
|
139
|
+
? { ...event, startDateTimeObj: start, endDateTimeObj: end }
|
|
140
|
+
: { ...event, startDateTimeObj: end, endDateTimeObj: start };
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
function getWeekDayDate(week, isoDay) {
|
|
144
|
+
return addDays(week.weekStart, isoDay - 1);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
function getEventColor(event) {
|
|
148
|
+
return event?.color ?? event?.type?.color ?? "#777777";
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
function getEventLabel(event) {
|
|
152
|
+
return event?.abbreviation ?? event?.type?.abbreviation ?? event?.title ?? event?.name ?? "";
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
function clipEventToDay(event, dayDate) {
|
|
156
|
+
const dayStart = startOfDay(dayDate);
|
|
157
|
+
const dayEnd = endOfDay(dayDate);
|
|
158
|
+
|
|
159
|
+
if (!rangesIntersect(event.startDateTimeObj, event.endDateTimeObj, dayStart, dayEnd)) {
|
|
160
|
+
return null;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
const clippedStart = event.startDateTimeObj < dayStart ? dayStart : event.startDateTimeObj;
|
|
164
|
+
const clippedEnd = event.endDateTimeObj > dayEnd ? dayEnd : event.endDateTimeObj;
|
|
165
|
+
|
|
166
|
+
const startMinutes = Math.max(minutesOfDay(clippedStart), DAY_START_MINUTES);
|
|
167
|
+
const endMinutes = Math.min(minutesOfDay(clippedEnd), DAY_END_MINUTES);
|
|
168
|
+
|
|
169
|
+
if (endMinutes <= DAY_START_MINUTES || startMinutes >= DAY_END_MINUTES || endMinutes <= startMinutes) {
|
|
170
|
+
return null;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
return {
|
|
174
|
+
...event,
|
|
175
|
+
clippedStart,
|
|
176
|
+
clippedEnd,
|
|
177
|
+
topPct: ((startMinutes - DAY_START_MINUTES) / DAY_TOTAL_MINUTES) * 100,
|
|
178
|
+
heightPct: ((endMinutes - startMinutes) / DAY_TOTAL_MINUTES) * 100
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
/* =========================
|
|
183
|
+
UI
|
|
184
|
+
========================= */
|
|
185
|
+
|
|
186
|
+
const DayLabelCell = ({ label, height = 180 }) => {
|
|
187
|
+
return (
|
|
188
|
+
<div
|
|
189
|
+
className="border rounded overflow-hidden d-flex align-items-center justify-content-center user-select-none"
|
|
190
|
+
style={{
|
|
191
|
+
width: "40px",
|
|
192
|
+
minWidth: "40px",
|
|
193
|
+
height: `${height}px`,
|
|
194
|
+
writingMode: "vertical-rl",
|
|
195
|
+
transform: "rotate(180deg)",
|
|
196
|
+
textAlign: "center",
|
|
197
|
+
fontSize: "14px",
|
|
198
|
+
flex: "0 0 auto"
|
|
199
|
+
}}
|
|
200
|
+
>
|
|
201
|
+
{label}
|
|
202
|
+
{/* <TimeMarksLayer /> */}
|
|
203
|
+
</div>
|
|
204
|
+
);
|
|
205
|
+
};
|
|
206
|
+
|
|
207
|
+
const TimeMarksLayer = () => {
|
|
208
|
+
return (
|
|
209
|
+
<>
|
|
210
|
+
{TIME_MARKS.map((mark) => {
|
|
211
|
+
const topPct = ((mark.minutes - DAY_START_MINUTES) / DAY_TOTAL_MINUTES) * 100;
|
|
212
|
+
|
|
213
|
+
return (
|
|
214
|
+
<div
|
|
215
|
+
key={mark.label}
|
|
216
|
+
className="position-absolute"
|
|
217
|
+
style={{
|
|
218
|
+
left: 0,
|
|
219
|
+
right: 0,
|
|
220
|
+
top: `${topPct}%`,
|
|
221
|
+
borderTop: "1px solid #a72727"
|
|
222
|
+
}}
|
|
223
|
+
/>
|
|
224
|
+
);
|
|
225
|
+
})}
|
|
226
|
+
</>
|
|
227
|
+
);
|
|
228
|
+
};
|
|
229
|
+
|
|
230
|
+
const DayEventsLayer = ({ events }) => {
|
|
231
|
+
return (
|
|
232
|
+
<>
|
|
233
|
+
{events.map((event, index) => {
|
|
234
|
+
const backgroundColor = getEventColor(event);
|
|
235
|
+
const color = getContrastTextColor(backgroundColor);
|
|
236
|
+
|
|
237
|
+
return (
|
|
238
|
+
<div
|
|
239
|
+
key={event.id ?? `${index}-${event.topPct}`}
|
|
240
|
+
className="position-absolute border rounded overflow-hidden"
|
|
241
|
+
title={getEventLabel(event)}
|
|
242
|
+
style={{
|
|
243
|
+
left: "2px",
|
|
244
|
+
right: "2px",
|
|
245
|
+
top: `${event.topPct}%`,
|
|
246
|
+
height: `${event.heightPct}%`,
|
|
247
|
+
minHeight: "8px",
|
|
248
|
+
backgroundColor,
|
|
249
|
+
color,
|
|
250
|
+
fontSize: "9px",
|
|
251
|
+
lineHeight: 1.1,
|
|
252
|
+
padding: "1px 2px",
|
|
253
|
+
boxSizing: "border-box"
|
|
254
|
+
}}
|
|
255
|
+
>
|
|
256
|
+
{getEventLabel(event)}
|
|
257
|
+
</div>
|
|
258
|
+
);
|
|
259
|
+
})}
|
|
260
|
+
</>
|
|
261
|
+
);
|
|
262
|
+
};
|
|
263
|
+
|
|
264
|
+
/**
|
|
265
|
+
* Náhrada za ClickableBox:
|
|
266
|
+
* jedna buňka = jeden týden + jeden konkrétní den v týdnu
|
|
267
|
+
*/
|
|
268
|
+
const DayWeekCell = ({ week, dayIndex, events, height = 240 }) => {
|
|
269
|
+
const dayDate = useMemo(() => getWeekDayDate(week, dayIndex), [week, dayIndex]);
|
|
270
|
+
|
|
271
|
+
const dayEvents = useMemo(() => {
|
|
272
|
+
return events
|
|
273
|
+
.map((event) => clipEventToDay(event, dayDate))
|
|
274
|
+
.filter(Boolean);
|
|
275
|
+
}, [events, dayDate]);
|
|
276
|
+
|
|
277
|
+
return (
|
|
278
|
+
<WeekGridItem
|
|
279
|
+
height={height}
|
|
280
|
+
title={`${DAY_NAMES[dayIndex - 1]} ${dayDate.getDate()}.${dayDate.getMonth() + 1}.${dayDate.getFullYear()}`}
|
|
281
|
+
>
|
|
282
|
+
<div
|
|
283
|
+
className="position-relative"
|
|
284
|
+
style={{
|
|
285
|
+
width: "100%",
|
|
286
|
+
height: "100%",
|
|
287
|
+
backgroundColor: "#fff"
|
|
288
|
+
}}
|
|
289
|
+
>
|
|
290
|
+
<TimeMarksLayer />
|
|
291
|
+
<DayEventsLayer events={dayEvents} />
|
|
292
|
+
|
|
293
|
+
</div>
|
|
294
|
+
</WeekGridItem>
|
|
295
|
+
);
|
|
296
|
+
};
|
|
297
|
+
|
|
298
|
+
const A4PlanDayRow = ({ dayName, dayIndex, weeks, events, rowHeight = 240 }) => {
|
|
299
|
+
return (
|
|
300
|
+
<FlexRow>
|
|
301
|
+
<DayLabelCell label={dayName} height={rowHeight} />
|
|
302
|
+
{weeks.slice(1).map((week) => (
|
|
303
|
+
<DayWeekCell
|
|
304
|
+
key={`${week.id}-${dayIndex}`}
|
|
305
|
+
week={week}
|
|
306
|
+
dayIndex={dayIndex}
|
|
307
|
+
events={events}
|
|
308
|
+
height={rowHeight}
|
|
309
|
+
/>
|
|
310
|
+
))}
|
|
311
|
+
</FlexRow>
|
|
312
|
+
);
|
|
313
|
+
};
|
|
314
|
+
|
|
315
|
+
export const A4Plan = ({ item, startdate, enddate }) => {
|
|
316
|
+
const { subevents:events=[] } = item || {}
|
|
317
|
+
const weeks = useMemo(
|
|
318
|
+
() => buildWeeksInRange(startdate, enddate),
|
|
319
|
+
[startdate, enddate]
|
|
320
|
+
);
|
|
321
|
+
|
|
322
|
+
const normalizedEvents = useMemo(
|
|
323
|
+
() => events.map(normalizeEvent).filter(Boolean),
|
|
324
|
+
[events]
|
|
325
|
+
);
|
|
326
|
+
|
|
327
|
+
const academicYear = useMemo(() => {
|
|
328
|
+
const firstWeek = weeks[0];
|
|
329
|
+
const lastWeek = weeks[weeks.length - 1];
|
|
330
|
+
|
|
331
|
+
if (!firstWeek || !lastWeek) {
|
|
332
|
+
return {
|
|
333
|
+
year: new Date().getFullYear(),
|
|
334
|
+
startWeek: 1,
|
|
335
|
+
endWeek: 1
|
|
336
|
+
};
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
return {
|
|
340
|
+
year: firstWeek.isoYear,
|
|
341
|
+
startWeek: firstWeek.isoWeek,
|
|
342
|
+
endWeek: lastWeek.isoWeek
|
|
343
|
+
};
|
|
344
|
+
}, [weeks]);
|
|
345
|
+
|
|
346
|
+
return (
|
|
347
|
+
<FlexContainer>
|
|
348
|
+
<FlexRow>
|
|
349
|
+
<WeekHeaderContent academicYear={academicYear} />
|
|
350
|
+
</FlexRow>
|
|
351
|
+
|
|
352
|
+
{DAY_NAMES.map((dayName, index) => (
|
|
353
|
+
<A4PlanDayRow
|
|
354
|
+
key={dayName}
|
|
355
|
+
dayName={dayName}
|
|
356
|
+
dayIndex={ISO_DAY_INDEXES[index]}
|
|
357
|
+
weeks={weeks}
|
|
358
|
+
events={normalizedEvents}
|
|
359
|
+
/>
|
|
360
|
+
))}
|
|
361
|
+
</FlexContainer>
|
|
362
|
+
);
|
|
363
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './A4Plan'
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { PersonFill } from "react-bootstrap-icons"
|
|
2
|
+
import { Link } from "./Link"
|
|
3
|
+
import { CardCapsule as CardCapsule_ } from "../../../../_template/src/Base/Components"
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* A specialized card component that displays an `TemplateLink` as its title and encapsulates additional content.
|
|
7
|
+
*
|
|
8
|
+
* This component extends the `CardCapsule` component by using a combination of a `PersonFill` icon and
|
|
9
|
+
* an `TemplateLink` component in the card's header. The `children` prop is used to render any content
|
|
10
|
+
* inside the card body. It is designed for use with entities represented by the `template` object.
|
|
11
|
+
*
|
|
12
|
+
* @component
|
|
13
|
+
* @param {Object} props - The props for the TemplateCardCapsule component.
|
|
14
|
+
* @param {Object} props.template - The object representing the template entity.
|
|
15
|
+
* @param {string|number} props.template.id - The unique identifier for the template entity.
|
|
16
|
+
* @param {string} props.template.name - The display name for the template entity.
|
|
17
|
+
* @param {React.ReactNode} [props.children=null] - The content to render inside the card's body.
|
|
18
|
+
*
|
|
19
|
+
* @returns {JSX.Element} The rendered card component with a dynamic title and body content.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* // Example usage:
|
|
23
|
+
* import { TemplateCardCapsule } from './TemplateCardCapsule';
|
|
24
|
+
* import { Button } from 'react-bootstrap';
|
|
25
|
+
*
|
|
26
|
+
* const templateEntity = { id: 123, name: "Example Entity" };
|
|
27
|
+
*
|
|
28
|
+
* <TemplateCardCapsule template={templateEntity}>
|
|
29
|
+
* <Button variant="primary">Click Me</Button>
|
|
30
|
+
* </TemplateCardCapsule>
|
|
31
|
+
*/
|
|
32
|
+
export const CardCapsule = ({ item, children, title=null}) => {
|
|
33
|
+
|
|
34
|
+
if (!title) {
|
|
35
|
+
title = <><PersonFill /> <Link item={item} /></>
|
|
36
|
+
}
|
|
37
|
+
return (
|
|
38
|
+
|
|
39
|
+
<CardCapsule_ title={title}>
|
|
40
|
+
{children}
|
|
41
|
+
</CardCapsule_>
|
|
42
|
+
)
|
|
43
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { ChildWrapper } from "@hrbolek/uoisfrontend-shared";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* TemplateChildren Component
|
|
5
|
+
*
|
|
6
|
+
* A utility React component that wraps its children with the `ChildWrapper` component,
|
|
7
|
+
* passing down an `template` entity along with other props to all child elements.
|
|
8
|
+
* This component is useful for injecting a common `template` entity into multiple children
|
|
9
|
+
* while preserving their existing functionality.
|
|
10
|
+
*
|
|
11
|
+
* @component
|
|
12
|
+
* @param {Object} props - The props for the TemplateChildren component.
|
|
13
|
+
* @param {any} props.template - An entity (e.g., object, string, or other data) to be passed to the children.
|
|
14
|
+
* @param {React.ReactNode} props.children - The children elements to be wrapped and enhanced.
|
|
15
|
+
* @param {...any} props - Additional props to be passed to each child element.
|
|
16
|
+
*
|
|
17
|
+
* @returns {JSX.Element} A `ChildWrapper` component containing the children with the injected `template` entity.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* // Example usage:
|
|
21
|
+
* const templateEntity = { id: 1, message: "No data available" };
|
|
22
|
+
*
|
|
23
|
+
* <TemplateChildren template={templateEntity}>
|
|
24
|
+
* <CustomMessage />
|
|
25
|
+
* <CustomIcon />
|
|
26
|
+
* </TemplateChildren>
|
|
27
|
+
*
|
|
28
|
+
* // Result: Both <CustomMessage /> and <CustomIcon /> receive the 'template' prop with the specified entity.
|
|
29
|
+
*/
|
|
30
|
+
export const Children = ({item, children, ...props}) =>
|
|
31
|
+
<ChildWrapper item={item} children={children} {...props} />
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { UpdateAsyncAction } from "../Queries";
|
|
2
|
+
import { MediumEditableContent } from "./MediumEditableContent";
|
|
3
|
+
import { useEditAction } from "../../../../dynamic/src/Hooks/useEditAction";
|
|
4
|
+
import { useCallback } from "react";
|
|
5
|
+
import { useGQLEntityContext } from "../../../../_template/src/Base/Helpers/GQLEntityProvider";
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
export const ConfirmEdit = ({ item, children }) => {
|
|
9
|
+
const { run , error, loading, entity, data, onChange: contextOnChange, onBlur: contextOnBlur } = useGQLEntityContext()
|
|
10
|
+
|
|
11
|
+
const localOnMutationEvent = useCallback((mutationHandler, notifyHandler) => async (e) => {
|
|
12
|
+
const newItem = { ...item, [e.target.id]: e.target.value }
|
|
13
|
+
const newEvent = { target: { value: newItem } }
|
|
14
|
+
|
|
15
|
+
await notifyHandler(newEvent)
|
|
16
|
+
return await mutationHandler(e)
|
|
17
|
+
})
|
|
18
|
+
|
|
19
|
+
const {
|
|
20
|
+
draft,
|
|
21
|
+
dirty,
|
|
22
|
+
onChange,
|
|
23
|
+
onBlur,
|
|
24
|
+
onCancel,
|
|
25
|
+
onConfirm,
|
|
26
|
+
} = useEditAction(UpdateAsyncAction, item, {mode: "confirm"})
|
|
27
|
+
|
|
28
|
+
const handleConfirm = useCallback(async () => {
|
|
29
|
+
const result = await onConfirm();
|
|
30
|
+
console.log("ConfirmEdit handleConfirm result", result, "draft", draft)
|
|
31
|
+
if (result) {
|
|
32
|
+
const event = { target: { value: result } };
|
|
33
|
+
// důležité: použij params z kontextu (provider si je drží jako "poslední vars")
|
|
34
|
+
await contextOnChange(event);
|
|
35
|
+
}
|
|
36
|
+
return result;
|
|
37
|
+
}, [onConfirm, contextOnChange]);
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
return (
|
|
41
|
+
<MediumEditableContent item={item} onChange={onChange} onBlur={onBlur} >
|
|
42
|
+
{children}
|
|
43
|
+
<hr />
|
|
44
|
+
{/* <pre>{JSON.stringify(item, null, 2)}</pre> */}
|
|
45
|
+
<button
|
|
46
|
+
className="btn btn-warning form-control"
|
|
47
|
+
onClick={onCancel}
|
|
48
|
+
disabled={!dirty || loading}
|
|
49
|
+
>
|
|
50
|
+
Zrušit změny
|
|
51
|
+
</button>
|
|
52
|
+
<button
|
|
53
|
+
className="btn btn-primary form-control"
|
|
54
|
+
onClick={handleConfirm}
|
|
55
|
+
disabled={!dirty || loading}
|
|
56
|
+
>
|
|
57
|
+
Uložit změny
|
|
58
|
+
</button>
|
|
59
|
+
</MediumEditableContent>
|
|
60
|
+
)
|
|
61
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { DateTimeFilter, Filter as BaseFilter, StringFilter, UUIDFilter } from "../../../../_template/src/Base/FormControls/Filter"
|
|
2
|
+
|
|
3
|
+
export const Filter = ({ id, onChange: handleChange, children }) => {
|
|
4
|
+
return (
|
|
5
|
+
<BaseFilter id={id} onChange={handleChange}>
|
|
6
|
+
<UUIDFilter id="id" />
|
|
7
|
+
<StringFilter id="name" />
|
|
8
|
+
<DateTimeFilter id="created" emitUtcIso={false} />
|
|
9
|
+
{/* <FloatFilter id="count" /> */}
|
|
10
|
+
{children}
|
|
11
|
+
</BaseFilter>
|
|
12
|
+
)
|
|
13
|
+
}
|
|
14
|
+
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
// import Row from "react-bootstrap/Row"
|
|
2
|
+
import { MediumCard } from "./MediumCard"
|
|
3
|
+
import { CardCapsule as CardCapsule_} from "./CardCapsule"
|
|
4
|
+
import { Row } from "../../../../_template/src/Base/Components/Row"
|
|
5
|
+
// import { LeftColumn, MiddleColumn } from "@hrbolek/uoisfrontend-shared"
|
|
6
|
+
import { MediumContent as MediumContent_ } from "./MediumContent"
|
|
7
|
+
import { InteractiveMutations } from '../Mutations/InteractiveMutations'
|
|
8
|
+
import { LeftColumn, MiddleColumn } from "../../../../_template/src/Base/Components/Col"
|
|
9
|
+
import { PlanRow } from "./Plan/PlanRow"
|
|
10
|
+
import { A4Plan } from "./A4Plan"
|
|
11
|
+
/**
|
|
12
|
+
* A large card component for displaying detailed content and layout for an template entity.
|
|
13
|
+
*
|
|
14
|
+
* This component wraps an `TemplateCardCapsule` with a flexible layout that includes multiple
|
|
15
|
+
* columns. It uses a `Row` layout with a `LeftColumn` for displaying an `TemplateMediumCard`
|
|
16
|
+
* and a `MiddleColumn` for rendering additional children.
|
|
17
|
+
*
|
|
18
|
+
* @component
|
|
19
|
+
* @param {Object} props - The properties for the TemplateLargeCard component.
|
|
20
|
+
* @param {Object} props.template - The object representing the template entity.
|
|
21
|
+
* @param {string|number} props.template.id - The unique identifier for the template entity.
|
|
22
|
+
* @param {string} props.template.name - The name or label of the template entity.
|
|
23
|
+
* @param {React.ReactNode} [props.children=null] - Additional content to render in the middle column.
|
|
24
|
+
*
|
|
25
|
+
* @returns {JSX.Element} A JSX element combining a large card layout with dynamic content.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* // Example usage:
|
|
29
|
+
* const templateEntity = { id: 123, name: "Sample Entity" };
|
|
30
|
+
*
|
|
31
|
+
* <TemplateLargeCard template={templateEntity}>
|
|
32
|
+
* <p>Additional content for the middle column.</p>
|
|
33
|
+
* </TemplateLargeCard>
|
|
34
|
+
*/
|
|
35
|
+
export const LargeCard = ({ item, children, CardCapsule=CardCapsule_, MediumContent=MediumContent_ }) => {
|
|
36
|
+
// console.log("LargeCard.item", item)
|
|
37
|
+
return (
|
|
38
|
+
<CardCapsule item={item} >
|
|
39
|
+
<Row>
|
|
40
|
+
<LeftColumn>
|
|
41
|
+
<CardCapsule item={item} title="Detail">
|
|
42
|
+
<MediumContent item={item} />
|
|
43
|
+
</CardCapsule>
|
|
44
|
+
<InteractiveMutations item={item} />
|
|
45
|
+
</LeftColumn>
|
|
46
|
+
<MiddleColumn>
|
|
47
|
+
<PlanRow item={item}/>
|
|
48
|
+
<A4Plan item={item} startdate={"2023-09-01"} enddate={"2024-03-31"}/>
|
|
49
|
+
{children}
|
|
50
|
+
</MiddleColumn>
|
|
51
|
+
</Row>
|
|
52
|
+
</CardCapsule>
|
|
53
|
+
)
|
|
54
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { URIRoot } from "../../uriroot";
|
|
2
|
+
import { registerLink } from "../../../../_template/src/Base/Components/Link";
|
|
3
|
+
import { ProxyLink } from "../../../../_template/src/Base/Components/ProxyLink";
|
|
4
|
+
|
|
5
|
+
const modelURI = `${URIRoot}/EventGQLModel`
|
|
6
|
+
export const ListURI = `${modelURI}/list/`;
|
|
7
|
+
export const CreateURI = `${modelURI}/create/`;
|
|
8
|
+
export const ReadURI = `${modelURI}/view/`;
|
|
9
|
+
export const UpdateURI = `${modelURI}/edit/`;
|
|
10
|
+
export const DeleteURI = `${modelURI}/delete/`;
|
|
11
|
+
|
|
12
|
+
export const LinkURI = ReadURI;
|
|
13
|
+
export const VectorItemsURI = ListURI;
|
|
14
|
+
|
|
15
|
+
const idParam = ":id"
|
|
16
|
+
export const ReadItemURI = `${LinkURI}${idParam}`;
|
|
17
|
+
export const UpdateItemURI = `${UpdateURI}${idParam}`;
|
|
18
|
+
export const DeleteItemURI = `${DeleteURI}${idParam}`;
|
|
19
|
+
export const PlanItemURI = `${LinkURI}${idParam}`;
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* A React component that renders a `ProxyLink` to an "template" entity's view page.
|
|
23
|
+
*
|
|
24
|
+
* The target URL is dynamically constructed using the `template` object's `id`, and the link displays
|
|
25
|
+
* the `template` object's `name` as its clickable content.
|
|
26
|
+
*
|
|
27
|
+
* @function TemplateLink
|
|
28
|
+
* @param {Object} props - The properties for the `TemplateLink` component.
|
|
29
|
+
* @param {Object} props.template - The object representing the "template" entity.
|
|
30
|
+
* @param {string|number} props.template.id - The unique identifier for the "template" entity. Used to construct the target URL.
|
|
31
|
+
* @param {string} props.template.name - The display name for the "template" entity. Used as the link text.
|
|
32
|
+
*
|
|
33
|
+
* @returns {JSX.Element} A `ProxyLink` component linking to the specified "template" entity's view page.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* // Example usage with a sample template entity:
|
|
37
|
+
* const templateEntity = { id: 123, name: "Example Template Entity" };
|
|
38
|
+
*
|
|
39
|
+
* <TemplateLink template={templateEntity} />
|
|
40
|
+
* // Renders: <ProxyLink to="/template/template/view/123">Example Template Entity</ProxyLink>
|
|
41
|
+
*
|
|
42
|
+
* @remarks
|
|
43
|
+
* - This component utilizes `ProxyLink` to ensure consistent link behavior, including parameter preservation and conditional reloads.
|
|
44
|
+
* - The URL format `/template/template/view/:id` must be supported by the application routing.
|
|
45
|
+
*
|
|
46
|
+
* @see ProxyLink - The base component used for rendering the link.
|
|
47
|
+
*/
|
|
48
|
+
export const Link = ({ item, LinkURI: LinkURI_ = LinkURI, action="view", children, ...props}) => {
|
|
49
|
+
const targetURI = LinkURI_.replace('view', action);
|
|
50
|
+
return <ProxyLink to={targetURI + item?.id} {...props}>{children || item?.fullname || item?.name || item?.id || "Nevim"}</ProxyLink>
|
|
51
|
+
// return <BaseUI.Link item={item} />
|
|
52
|
+
// return <a>{children || item?.fullname || item?.name || item?.id || "Nevim"}</a>
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
registerLink('EventGQLModel', Link)
|