@solidstarters/solid-core-ui 1.1.70 → 1.1.72
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/components/CustomFooter/CustomFooter.tsx +264 -0
- package/dist/components/CustomFooter/FooterForm.tsx +19 -0
- package/dist/components/CustomHeader/CallIcon.tsx +20 -0
- package/dist/components/CustomHeader/CustomDropdown.tsx +175 -0
- package/dist/components/CustomHeader/CustomHeader.tsx +64 -0
- package/dist/components/CustomHeader/EmailIcon.tsx +12 -0
- package/dist/components/CustomHeader/HeaderCart.tsx +15 -0
- package/dist/components/CustomHeader/productNavData.tsx +180 -0
- package/dist/components/FormView/DetailsViews.tsx +46 -0
- package/dist/components/FormView/OrderAddressDetails.tsx +70 -0
- package/dist/components/FormView/OrderPaymentDetails.tsx +18 -0
- package/dist/components/FormView/OrderTableDetails.tsx +36 -0
- package/dist/components/FormView/OrderedProductDetail.tsx +22 -0
- package/dist/components/Svg/ExcelSvg.tsx +15 -0
- package/dist/components/Svg/FileSvg.tsx +19 -0
- package/dist/components/Svg/PDFSvg.tsx +15 -0
- package/dist/components/Svg/RightArrowSvg.d.ts +2 -0
- package/dist/components/Svg/RightArrowSvg.d.ts.map +1 -0
- package/dist/components/Svg/RightArrowSvg.js +5 -0
- package/dist/components/Svg/RightArrowSvg.js.map +1 -0
- package/dist/components/Svg/RightArrowSvg.tsx +9 -0
- package/dist/components/Tag/CustomTag.tsx +50 -0
- package/dist/components/auth/AuthLayout.js +3 -3
- package/dist/components/auth/AuthLayout.js.map +1 -1
- package/dist/components/auth/AuthLayout.tsx +140 -0
- package/dist/components/auth/ForgotPasswordThankYou.tsx +48 -0
- package/dist/components/auth/GoogleAuthChecking.tsx +60 -0
- package/dist/components/auth/Login.tsx +155 -0
- package/dist/components/auth/Register.tsx +239 -0
- package/dist/components/auth/SolidChangeForcePassword.tsx +145 -0
- package/dist/components/auth/SolidForgotPassword.tsx +125 -0
- package/dist/components/auth/SolidInitialLoginOtp.tsx +152 -0
- package/dist/components/auth/SolidInitiateRegisterOtp.tsx +141 -0
- package/dist/components/auth/SolidLogin.js +5 -5
- package/dist/components/auth/SolidLogin.js.map +1 -1
- package/dist/components/auth/SolidLogin.tsx +275 -0
- package/dist/components/auth/SolidOTPVerify.tsx +132 -0
- package/dist/components/auth/SolidRegister.js +4 -4
- package/dist/components/auth/SolidRegister.js.map +1 -1
- package/dist/components/auth/SolidRegister.tsx +348 -0
- package/dist/components/auth/SolidResetPassword.tsx +162 -0
- package/dist/components/common/AuthBanner.tsx +41 -0
- package/dist/components/common/AutoCompleteField.tsx +76 -0
- package/dist/components/common/BackButton.tsx +27 -0
- package/dist/components/common/CancelButton.tsx +48 -0
- package/dist/components/common/CodeEditor.tsx +26 -0
- package/dist/components/common/CreateButton.tsx +17 -0
- package/dist/components/common/DropzonePlaceholder.tsx +31 -0
- package/dist/components/common/DropzoneUpload.tsx +11 -0
- package/dist/components/common/FileReaderExt.tsx +20 -0
- package/dist/components/common/GeneralSettings.d.ts.map +1 -1
- package/dist/components/common/GeneralSettings.js +48 -48
- package/dist/components/common/GeneralSettings.js.map +1 -1
- package/dist/components/common/GeneralSettings.tsx +414 -0
- package/dist/components/common/HeaderDynamicTitles.tsx +13 -0
- package/dist/components/common/MarkdownViewer.tsx +16 -0
- package/dist/components/common/MultipleSelectAutoCompleteField.tsx +62 -0
- package/dist/components/common/NotFound.tsx +22 -0
- package/dist/components/common/SingleSelectAutoCompleteField.tsx +67 -0
- package/dist/components/common/SocialMediaLogin.tsx +53 -0
- package/dist/components/common/SolidAdmin.tsx +7 -0
- package/dist/components/common/SolidBreadcrumb.tsx +103 -0
- package/dist/components/common/SolidFormHeader.tsx +22 -0
- package/dist/components/common/SolidFormStepper.tsx +213 -0
- package/dist/components/common/SolidModuleHome.tsx +61 -0
- package/dist/components/common/SolidThemeLink.tsx +5 -0
- package/dist/components/common/SolidThemeProvider.tsx +44 -0
- package/dist/components/common/error.tsx +30 -0
- package/dist/components/core/chatter/SolidChatter.d.ts +7 -0
- package/dist/components/core/chatter/SolidChatter.d.ts.map +1 -0
- package/dist/components/core/chatter/SolidChatter.js +269 -0
- package/dist/components/core/chatter/SolidChatter.js.map +1 -0
- package/dist/components/core/chatter/SolidChatter.tsx +252 -0
- package/dist/components/core/chatter/SolidChatterDateDivider.d.ts +6 -0
- package/dist/components/core/chatter/SolidChatterDateDivider.d.ts.map +1 -0
- package/dist/components/core/chatter/SolidChatterDateDivider.js +7 -0
- package/dist/components/core/chatter/SolidChatterDateDivider.js.map +1 -0
- package/dist/components/core/chatter/SolidChatterDateDivider.tsx +16 -0
- package/dist/components/core/chatter/SolidChatterHeader.d.ts +17 -0
- package/dist/components/core/chatter/SolidChatterHeader.d.ts.map +1 -0
- package/dist/components/core/chatter/SolidChatterHeader.js +67 -0
- package/dist/components/core/chatter/SolidChatterHeader.js.map +1 -0
- package/dist/components/core/chatter/SolidChatterHeader.tsx +178 -0
- package/dist/components/core/chatter/SolidChatterMessageBox.d.ts +19 -0
- package/dist/components/core/chatter/SolidChatterMessageBox.d.ts.map +1 -0
- package/dist/components/core/chatter/SolidChatterMessageBox.js +46 -0
- package/dist/components/core/chatter/SolidChatterMessageBox.js.map +1 -0
- package/dist/components/core/chatter/SolidChatterMessageBox.tsx +165 -0
- package/dist/components/core/chatter/SolidMessageComposer.d.ts +7 -0
- package/dist/components/core/chatter/SolidMessageComposer.d.ts.map +1 -0
- package/dist/components/core/chatter/SolidMessageComposer.js +119 -0
- package/dist/components/core/chatter/SolidMessageComposer.js.map +1 -0
- package/dist/components/core/chatter/SolidMessageComposer.tsx +145 -0
- package/dist/components/core/chatter/chatter.module.css +70 -0
- package/dist/components/core/common/FilterComponent.tsx +434 -0
- package/dist/components/core/common/LoadDynamicJsxComponent.tsx +70 -0
- package/dist/components/core/common/SolidCreateButton.tsx +20 -0
- package/dist/components/core/common/SolidGlobalSearchElement.tsx +843 -0
- package/dist/components/core/common/SolidLayoutViews.tsx +87 -0
- package/dist/components/core/common/SolidListViewOptions.tsx +31 -0
- package/dist/components/core/common/SolidSaveCustomFilterForm.tsx +74 -0
- package/dist/components/core/common/SolidSearchBox.tsx +17 -0
- package/dist/components/core/common/SolidViewLayoutManager.d.ts +1 -1
- package/dist/components/core/common/SolidViewLayoutManager.ts +85 -0
- package/dist/components/core/extension/solid-core/emailTemplate/emailFormTypeChangeHandler.ts +18 -0
- package/dist/components/core/extension/solid-core/emailTemplate/emailFormTypeLoad.ts +18 -0
- package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.tsx +59 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.tsx +38 -0
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.d.ts +2 -2
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.d.ts.map +1 -1
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js.map +1 -1
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx +123 -0
- package/dist/components/core/field/FieldListViewData.tsx +312 -0
- package/dist/components/core/filter/SolidFilterFields.tsx +128 -0
- package/dist/components/core/filter/SolidManyToOneFilterElement.tsx +60 -0
- package/dist/components/core/filter/SolidSelectionDynamicFilterElement.tsx +50 -0
- package/dist/components/core/filter/SolidSelectionStaticFilterElement.tsx +32 -0
- package/dist/components/core/filter/SolidVarInputsFilterElement.tsx +180 -0
- package/dist/components/core/filter/fields/SolidBigintField.tsx +9 -0
- package/dist/components/core/filter/fields/SolidBooleanField.tsx +50 -0
- package/dist/components/core/filter/fields/SolidComputedField.tsx +23 -0
- package/dist/components/core/filter/fields/SolidDateField.tsx +58 -0
- package/dist/components/core/filter/fields/SolidDatetimeField.tsx +51 -0
- package/dist/components/core/filter/fields/SolidDecimalField.tsx +9 -0
- package/dist/components/core/filter/fields/SolidExternalIdField.tsx +46 -0
- package/dist/components/core/filter/fields/SolidFloatField.tsx +9 -0
- package/dist/components/core/filter/fields/SolidIdField.tsx +46 -0
- package/dist/components/core/filter/fields/SolidIntField.tsx +56 -0
- package/dist/components/core/filter/fields/SolidLongTextField.tsx +9 -0
- package/dist/components/core/filter/fields/SolidMediaMultipleField.tsx +54 -0
- package/dist/components/core/filter/fields/SolidMediaSingleField.tsx +56 -0
- package/dist/components/core/filter/fields/SolidRelationField.tsx +13 -0
- package/dist/components/core/filter/fields/SolidRichTextField.tsx +9 -0
- package/dist/components/core/filter/fields/SolidSelectionDynamicField.tsx +46 -0
- package/dist/components/core/filter/fields/SolidSelectionStaticField.tsx +48 -0
- package/dist/components/core/filter/fields/SolidShortTextField.tsx +54 -0
- package/dist/components/core/filter/fields/SolidTimeField.tsx +45 -0
- package/dist/components/core/filter/fields/SolidUuidField.tsx +45 -0
- package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.tsx +80 -0
- package/dist/components/core/form/SolidFormLayouts.tsx +104 -0
- package/dist/components/core/form/SolidFormUserViewLayout.tsx +85 -0
- package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
- package/dist/components/core/form/SolidFormView.js +53 -46
- package/dist/components/core/form/SolidFormView.js.map +1 -1
- package/dist/components/core/form/SolidFormView.tsx +1352 -0
- package/dist/components/core/form/fields/ISolidField.tsx +69 -0
- package/dist/components/core/form/fields/SolidBooleanField.d.ts +4 -1
- package/dist/components/core/form/fields/SolidBooleanField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidBooleanField.js +80 -29
- package/dist/components/core/form/fields/SolidBooleanField.js.map +1 -1
- package/dist/components/core/form/fields/SolidBooleanField.tsx +269 -0
- package/dist/components/core/form/fields/SolidDateField.d.ts +3 -0
- package/dist/components/core/form/fields/SolidDateField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidDateField.js +45 -25
- package/dist/components/core/form/fields/SolidDateField.js.map +1 -1
- package/dist/components/core/form/fields/SolidDateField.tsx +153 -0
- package/dist/components/core/form/fields/SolidDateTimeField.d.ts +3 -0
- package/dist/components/core/form/fields/SolidDateTimeField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidDateTimeField.js +44 -25
- package/dist/components/core/form/fields/SolidDateTimeField.js.map +1 -1
- package/dist/components/core/form/fields/SolidDateTimeField.tsx +154 -0
- package/dist/components/core/form/fields/SolidDecimalField.d.ts +3 -0
- package/dist/components/core/form/fields/SolidDecimalField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidDecimalField.js +41 -21
- package/dist/components/core/form/fields/SolidDecimalField.js.map +1 -1
- package/dist/components/core/form/fields/SolidDecimalField.tsx +155 -0
- package/dist/components/core/form/fields/SolidEmailField.d.ts +3 -0
- package/dist/components/core/form/fields/SolidEmailField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidEmailField.js +41 -21
- package/dist/components/core/form/fields/SolidEmailField.js.map +1 -1
- package/dist/components/core/form/fields/SolidEmailField.tsx +168 -0
- package/dist/components/core/form/fields/SolidIntegerField.d.ts +3 -0
- package/dist/components/core/form/fields/SolidIntegerField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidIntegerField.js +41 -21
- package/dist/components/core/form/fields/SolidIntegerField.js.map +1 -1
- package/dist/components/core/form/fields/SolidIntegerField.tsx +158 -0
- package/dist/components/core/form/fields/SolidJsonField.d.ts +4 -0
- package/dist/components/core/form/fields/SolidJsonField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidJsonField.js +51 -15
- package/dist/components/core/form/fields/SolidJsonField.js.map +1 -1
- package/dist/components/core/form/fields/SolidJsonField.tsx +173 -0
- package/dist/components/core/form/fields/SolidLongTextField.d.ts +3 -2
- package/dist/components/core/form/fields/SolidLongTextField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidLongTextField.js +33 -52
- package/dist/components/core/form/fields/SolidLongTextField.js.map +1 -1
- package/dist/components/core/form/fields/SolidLongTextField.tsx +161 -0
- package/dist/components/core/form/fields/SolidMediaMultipleField.d.ts +4 -0
- package/dist/components/core/form/fields/SolidMediaMultipleField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidMediaMultipleField.js +262 -153
- package/dist/components/core/form/fields/SolidMediaMultipleField.js.map +1 -1
- package/dist/components/core/form/fields/SolidMediaMultipleField.tsx +639 -0
- package/dist/components/core/form/fields/SolidMediaSingleField.d.ts +4 -0
- package/dist/components/core/form/fields/SolidMediaSingleField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidMediaSingleField.js +243 -149
- package/dist/components/core/form/fields/SolidMediaSingleField.js.map +1 -1
- package/dist/components/core/form/fields/SolidMediaSingleField.tsx +522 -0
- package/dist/components/core/form/fields/SolidPasswordField.d.ts +4 -0
- package/dist/components/core/form/fields/SolidPasswordField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidPasswordField.js +50 -20
- package/dist/components/core/form/fields/SolidPasswordField.js.map +1 -1
- package/dist/components/core/form/fields/SolidPasswordField.tsx +187 -0
- package/dist/components/core/form/fields/SolidRelationField.tsx +54 -0
- package/dist/components/core/form/fields/SolidRichTextField.d.ts +4 -0
- package/dist/components/core/form/fields/SolidRichTextField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidRichTextField.js +49 -20
- package/dist/components/core/form/fields/SolidRichTextField.js.map +1 -1
- package/dist/components/core/form/fields/SolidRichTextField.tsx +177 -0
- package/dist/components/core/form/fields/SolidSelectionDynamicField.d.ts +4 -0
- package/dist/components/core/form/fields/SolidSelectionDynamicField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidSelectionDynamicField.js +88 -60
- package/dist/components/core/form/fields/SolidSelectionDynamicField.js.map +1 -1
- package/dist/components/core/form/fields/SolidSelectionDynamicField.tsx +204 -0
- package/dist/components/core/form/fields/SolidSelectionStaticField.d.ts +5 -1
- package/dist/components/core/form/fields/SolidSelectionStaticField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidSelectionStaticField.js +88 -27
- package/dist/components/core/form/fields/SolidSelectionStaticField.js.map +1 -1
- package/dist/components/core/form/fields/SolidSelectionStaticField.tsx +272 -0
- package/dist/components/core/form/fields/SolidShortTextField.d.ts +4 -0
- package/dist/components/core/form/fields/SolidShortTextField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidShortTextField.js +57 -26
- package/dist/components/core/form/fields/SolidShortTextField.js.map +1 -1
- package/dist/components/core/form/fields/SolidShortTextField.tsx +208 -0
- package/dist/components/core/form/fields/SolidTimeField.d.ts +3 -0
- package/dist/components/core/form/fields/SolidTimeField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidTimeField.js +44 -22
- package/dist/components/core/form/fields/SolidTimeField.js.map +1 -1
- package/dist/components/core/form/fields/SolidTimeField.tsx +147 -0
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts +4 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js +77 -19
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +309 -0
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts +5 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +136 -107
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +291 -0
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.d.ts +5 -1
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js +159 -107
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.tsx +311 -0
- package/dist/components/core/form/fields/relations/widgets/SolidRelationManyToManyAutocompleteWidget.d.ts +1 -1
- package/dist/components/core/form/fields/relations/widgets/SolidRelationManyToManyCheckboxWidget.d.ts +1 -1
- package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.tsx +33 -0
- package/dist/components/core/form/fields/relations/widgets/helpers/useRelationEntityHandler.ts +64 -0
- package/dist/components/core/form/fields/widgets/SolidBooleanCheckboxFieldWidget.d.ts +1 -1
- package/dist/components/core/form/fields/widgets/SolidBooleanSelectFieldWidget.d.ts +1 -1
- package/dist/components/core/form/fields/widgets/SolidFormFieldViewMediaMultipleWidget.d.ts +1 -1
- package/dist/components/core/form/fields/widgets/SolidFormFieldViewMediaSingleWidget.d.ts +1 -1
- package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.d.ts +3 -0
- package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.d.ts.map +1 -0
- package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.js +29 -0
- package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.js.map +1 -0
- package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.tsx +46 -0
- package/dist/components/core/form/fields/widgets/SolidSelectionStaticAutocompleteFieldWidget.d.ts +1 -1
- package/dist/components/core/form/fields/widgets/SolidSelectionStaticRadioFieldWidget.d.ts +1 -1
- package/dist/components/core/form/widgets/CustomHtml.d.ts +1 -1
- package/dist/components/core/form/widgets/CustomHtml.tsx +19 -0
- package/dist/components/core/kanban/KanbanBoard.tsx +131 -0
- package/dist/components/core/kanban/KanbanCard.tsx +255 -0
- package/dist/components/core/kanban/KanbanColumn.tsx +139 -0
- package/dist/components/core/kanban/KanbanUserViewLayout.tsx +85 -0
- package/dist/components/core/kanban/SolidKanbanView.tsx +803 -0
- package/dist/components/core/kanban/SolidKanbanViewConfigure.tsx +146 -0
- package/dist/components/core/kanban/SolidKanbanViewFields.tsx +164 -0
- package/dist/components/core/kanban/SolidManyToOneFilterElement.tsx +59 -0
- package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.tsx +50 -0
- package/dist/components/core/kanban/SolidSelectionStaticFilterElement.tsx +32 -0
- package/dist/components/core/kanban/SolidVarInputsFilterElement.tsx +184 -0
- package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.tsx +9 -0
- package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.tsx +13 -0
- package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.tsx +23 -0
- package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.tsx +14 -0
- package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.tsx +13 -0
- package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.tsx +9 -0
- package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.tsx +12 -0
- package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.tsx +9 -0
- package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.tsx +14 -0
- package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.tsx +20 -0
- package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.tsx +9 -0
- package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.tsx +136 -0
- package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.tsx +158 -0
- package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.tsx +13 -0
- package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.tsx +9 -0
- package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.tsx +13 -0
- package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.tsx +14 -0
- package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js +6 -6
- package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js.map +1 -1
- package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.tsx +121 -0
- package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.tsx +12 -0
- package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.tsx +13 -0
- package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.tsx +16 -0
- package/dist/components/core/list/ListViewRowActionPopup.tsx +42 -0
- package/dist/components/core/list/SolidListColumnSelector.tsx +167 -0
- package/dist/components/core/list/SolidListView.js +1 -1
- package/dist/components/core/list/SolidListView.js.map +1 -1
- package/dist/components/core/list/SolidListView.tsx +961 -0
- package/dist/components/core/list/SolidListViewColumn.tsx +162 -0
- package/dist/components/core/list/SolidListViewConfigure.tsx +198 -0
- package/dist/components/core/list/SolidListingHeader.tsx +42 -0
- package/dist/components/core/list/SolidManyToOneFilterElement.tsx +59 -0
- package/dist/components/core/list/SolidSelectionDynamicFilterElement.tsx +50 -0
- package/dist/components/core/list/SolidSelectionStaticFilterElement.tsx +32 -0
- package/dist/components/core/list/SolidTableRowCell.tsx +12 -0
- package/dist/components/core/list/SolidVarInputsFilterElement.tsx +184 -0
- package/dist/components/core/list/columns/SolidBigintColumn.tsx +9 -0
- package/dist/components/core/list/columns/SolidBooleanColumn.d.ts +2 -0
- package/dist/components/core/list/columns/SolidBooleanColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidBooleanColumn.js +33 -2
- package/dist/components/core/list/columns/SolidBooleanColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidBooleanColumn.tsx +89 -0
- package/dist/components/core/list/columns/SolidComputedColumn.tsx +23 -0
- package/dist/components/core/list/columns/SolidDateColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidDateColumn.js +27 -3
- package/dist/components/core/list/columns/SolidDateColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidDateColumn.tsx +90 -0
- package/dist/components/core/list/columns/SolidDatetimeColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidDatetimeColumn.js +27 -3
- package/dist/components/core/list/columns/SolidDatetimeColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidDatetimeColumn.tsx +79 -0
- package/dist/components/core/list/columns/SolidDecimalColumn.tsx +9 -0
- package/dist/components/core/list/columns/SolidExternalIdColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidExternalIdColumn.js +27 -3
- package/dist/components/core/list/columns/SolidExternalIdColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidExternalIdColumn.tsx +80 -0
- package/dist/components/core/list/columns/SolidFloatColumn.tsx +9 -0
- package/dist/components/core/list/columns/SolidIdColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidIdColumn.js +27 -3
- package/dist/components/core/list/columns/SolidIdColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidIdColumn.tsx +79 -0
- package/dist/components/core/list/columns/SolidIntColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidIntColumn.js +27 -3
- package/dist/components/core/list/columns/SolidIntColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidIntColumn.tsx +87 -0
- package/dist/components/core/list/columns/SolidLongTextColumn.tsx +9 -0
- package/dist/components/core/list/columns/SolidMediaMultipleColumn.d.ts +2 -0
- package/dist/components/core/list/columns/SolidMediaMultipleColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidMediaMultipleColumn.js +48 -22
- package/dist/components/core/list/columns/SolidMediaMultipleColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidMediaMultipleColumn.tsx +100 -0
- package/dist/components/core/list/columns/SolidMediaSingleColumn.d.ts +2 -0
- package/dist/components/core/list/columns/SolidMediaSingleColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidMediaSingleColumn.js +41 -13
- package/dist/components/core/list/columns/SolidMediaSingleColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidMediaSingleColumn.tsx +98 -0
- package/dist/components/core/list/columns/SolidRelationColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidRelationColumn.js +7 -0
- package/dist/components/core/list/columns/SolidRelationColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidRelationColumn.tsx +20 -0
- package/dist/components/core/list/columns/SolidRichTextColumn.tsx +9 -0
- package/dist/components/core/list/columns/SolidSelectionDynamicColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidSelectionDynamicColumn.js +27 -3
- package/dist/components/core/list/columns/SolidSelectionDynamicColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidSelectionDynamicColumn.tsx +80 -0
- package/dist/components/core/list/columns/SolidSelectionStaticColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidSelectionStaticColumn.js +27 -3
- package/dist/components/core/list/columns/SolidSelectionStaticColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidSelectionStaticColumn.tsx +81 -0
- package/dist/components/core/list/columns/SolidShortTextColumn.d.ts +2 -0
- package/dist/components/core/list/columns/SolidShortTextColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidShortTextColumn.js +16 -37
- package/dist/components/core/list/columns/SolidShortTextColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidShortTextColumn.tsx +103 -0
- package/dist/components/core/list/columns/SolidTimeColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidTimeColumn.js +27 -3
- package/dist/components/core/list/columns/SolidTimeColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidTimeColumn.tsx +78 -0
- package/dist/components/core/list/columns/SolidUuidColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidUuidColumn.js +27 -3
- package/dist/components/core/list/columns/SolidUuidColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidUuidColumn.tsx +79 -0
- package/dist/components/core/list/columns/relations/SolidRelationManyToManyColumn.d.ts +6 -0
- package/dist/components/core/list/columns/relations/SolidRelationManyToManyColumn.d.ts.map +1 -0
- package/dist/components/core/list/columns/relations/SolidRelationManyToManyColumn.js +70 -0
- package/dist/components/core/list/columns/relations/SolidRelationManyToManyColumn.js.map +1 -0
- package/dist/components/core/list/columns/relations/SolidRelationManyToManyColumn.tsx +110 -0
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.d.ts +2 -0
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js +42 -17
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx +95 -0
- package/dist/components/core/list/columns/relations/SolidRelationOneToManyColumn.d.ts +6 -0
- package/dist/components/core/list/columns/relations/SolidRelationOneToManyColumn.d.ts.map +1 -0
- package/dist/components/core/list/columns/relations/SolidRelationOneToManyColumn.js +70 -0
- package/dist/components/core/list/columns/relations/SolidRelationOneToManyColumn.js.map +1 -0
- package/dist/components/core/list/columns/relations/SolidRelationOneToManyColumn.tsx +111 -0
- package/dist/components/core/list/widgets/SolidRelationAvatarWidget.d.ts +4 -0
- package/dist/components/core/list/widgets/SolidRelationAvatarWidget.d.ts.map +1 -0
- package/dist/components/core/list/widgets/SolidRelationAvatarWidget.js +60 -0
- package/dist/components/core/list/widgets/SolidRelationAvatarWidget.js.map +1 -0
- package/dist/components/core/list/widgets/SolidRelationAvatarWidget.tsx +89 -0
- package/dist/components/core/list/widgets/SolidShortTextAvatarWidget.d.ts +3 -0
- package/dist/components/core/list/widgets/SolidShortTextAvatarWidget.d.ts.map +1 -0
- package/dist/components/core/list/widgets/SolidShortTextAvatarWidget.js +42 -0
- package/dist/components/core/list/widgets/SolidShortTextAvatarWidget.js.map +1 -0
- package/{src/components/core/list/widgets/SolidUserNameAvatarWidget.tsx → dist/components/core/list/widgets/SolidShortTextAvatarWidget.tsx} +18 -11
- package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.d.ts +2 -1
- package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.d.ts.map +1 -1
- package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.js +4 -4
- package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.js.map +1 -1
- package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.tsx +21 -0
- package/dist/components/core/model/CreateModel.tsx +476 -0
- package/dist/components/core/model/FieldMetaData.tsx +193 -0
- package/dist/components/core/model/FieldMetaDataForm.js +1 -1
- package/dist/components/core/model/FieldMetaDataForm.js.map +1 -1
- package/dist/components/core/model/FieldMetaDataForm.tsx +3048 -0
- package/dist/components/core/model/FieldSelector.tsx +62 -0
- package/dist/components/core/model/ModelListViewData.tsx +383 -0
- package/dist/components/core/model/ModelMetaData.tsx +840 -0
- package/dist/components/core/module/CreateModule.tsx +620 -0
- package/dist/components/core/module/ModuleListViewData.tsx +429 -0
- package/dist/components/core/users/CreateUser.d.ts.map +1 -1
- package/dist/components/core/users/CreateUser.js +16 -16
- package/dist/components/core/users/CreateUser.js.map +1 -1
- package/dist/components/core/users/CreateUser.tsx +436 -0
- package/dist/components/core/users/CreateUserRole.tsx +211 -0
- package/dist/components/core/users/UserListView.tsx +374 -0
- package/dist/components/layout/AdminLayout.tsx +62 -0
- package/dist/components/layout/AdminSidebar.tsx +65 -0
- package/dist/components/layout/AppConfig.d.ts +1 -1
- package/dist/components/layout/AppConfig.tsx +104 -0
- package/dist/components/layout/AppSidebar.tsx +225 -0
- package/dist/components/layout/ButtonLoader.tsx +7 -0
- package/dist/components/layout/CustomPagination.tsx +55 -0
- package/dist/components/layout/DashboardHeader.tsx +89 -0
- package/dist/components/layout/FilterMenu.tsx +122 -0
- package/dist/components/layout/Footer.tsx +13 -0
- package/dist/components/layout/GlobalSearch.tsx +37 -0
- package/dist/components/layout/Header.tsx +8 -0
- package/dist/components/layout/Layout.d.ts +1 -1
- package/dist/components/layout/Layout.tsx +136 -0
- package/dist/components/layout/ListingHeader.tsx +204 -0
- package/dist/components/layout/Loader.tsx +16 -0
- package/dist/components/layout/UserSidebar.tsx +53 -0
- package/dist/components/layout/context/layoutcontext.d.ts +1 -1
- package/dist/components/layout/context/layoutcontext.tsx +52 -0
- package/dist/components/layout/navbar-one.tsx +258 -0
- package/dist/components/layout/navbar-two-menu.tsx +73 -0
- package/dist/components/layout/navbar-two.tsx +37 -0
- package/dist/components/layout/user-profile-menu.tsx +120 -0
- package/dist/components/layout/user-profile.tsx +7 -0
- package/dist/components/modelsComponents/filterIcon.tsx +9 -0
- package/dist/components/tables/DemoData.tsx +318 -0
- package/dist/components/tables/DynamicTable.tsx +56 -0
- package/dist/components/tables/ListViewTable.tsx +156 -0
- package/dist/declarations.d.ts +19 -0
- package/dist/helpers/AppTitle.tsx +12 -0
- package/dist/helpers/ToastContainer.tsx +93 -0
- package/dist/helpers/authHeader.ts +20 -0
- package/dist/helpers/countries.tsx +260 -0
- package/dist/helpers/downloadMediaFile.tsx +19 -0
- package/dist/helpers/getAcceptedFileTypes.tsx +22 -0
- package/dist/helpers/getRandomColors.d.ts +4 -0
- package/dist/helpers/getRandomColors.d.ts.map +1 -0
- package/dist/helpers/getRandomColors.js +63 -0
- package/dist/helpers/getRandomColors.js.map +1 -0
- package/dist/helpers/getRandomColors.tsx +68 -0
- package/dist/helpers/helpers.ts +40 -0
- package/dist/helpers/menu.tsx +670 -0
- package/dist/helpers/permissions.ts +19 -0
- package/dist/helpers/registry.d.ts.map +1 -1
- package/dist/helpers/registry.js +77 -35
- package/dist/helpers/registry.js.map +1 -1
- package/dist/helpers/registry.ts +173 -0
- package/dist/helpers/revalidate.ts +7 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/index.ts +642 -0
- package/dist/nextAuth/authProviders.tsx +221 -0
- package/dist/nextAuth/refreshAccessToken.tsx +27 -0
- package/dist/redux/api/articleApi.ts +55 -0
- package/dist/redux/api/authApi.ts +131 -0
- package/dist/redux/api/automationApi.ts +55 -0
- package/dist/redux/api/categoryApi.tsx +46 -0
- package/dist/redux/api/cityApi.tsx +56 -0
- package/dist/redux/api/cmsBannerImageApi.tsx +55 -0
- package/dist/redux/api/countryApi.tsx +56 -0
- package/dist/redux/api/fetchBaseQuery.tsx +15 -0
- package/dist/redux/api/fieldApi.ts +78 -0
- package/dist/redux/api/mediaApi.ts +55 -0
- package/dist/redux/api/mediaStorageProviderApi.ts +55 -0
- package/dist/redux/api/menuApi.tsx +55 -0
- package/dist/redux/api/menuItemsApi.tsx +56 -0
- package/dist/redux/api/modelApi.ts +77 -0
- package/dist/redux/api/moduleApi.ts +72 -0
- package/dist/redux/api/orderAttributeApi.tsx +37 -0
- package/dist/redux/api/permissionApi.ts +32 -0
- package/dist/redux/api/pincodeApi.tsx +56 -0
- package/dist/redux/api/productData.tsx +87 -0
- package/dist/redux/api/radixExtraModelAttributeApi.tsx +37 -0
- package/dist/redux/api/radixModelMetadataApi.tsx +62 -0
- package/dist/redux/api/radixModelsApi.tsx +64 -0
- package/dist/redux/api/ratingApi.ts +55 -0
- package/dist/redux/api/reviewApi.ts +55 -0
- package/dist/redux/api/roleApi.ts +58 -0
- package/dist/redux/api/solidActionApi.ts +66 -0
- package/dist/redux/api/solidChatterMessageApi.d.ts +7 -0
- package/dist/redux/api/solidChatterMessageApi.d.ts.map +1 -0
- package/dist/redux/api/solidChatterMessageApi.js +29 -0
- package/dist/redux/api/solidChatterMessageApi.js.map +1 -0
- package/dist/redux/api/solidChatterMessageApi.ts +30 -0
- package/dist/redux/api/solidEntityApi.tsx +110 -0
- package/dist/redux/api/solidMenuApi.ts +71 -0
- package/dist/redux/api/solidSettingsApi.d.ts +2 -1
- package/dist/redux/api/solidSettingsApi.d.ts.map +1 -1
- package/dist/redux/api/solidSettingsApi.js +11 -1
- package/dist/redux/api/solidSettingsApi.js.map +1 -1
- package/dist/redux/api/solidSettingsApi.tsx +55 -0
- package/dist/redux/api/solidViewApi.ts +73 -0
- package/dist/redux/api/stateApi.tsx +56 -0
- package/dist/redux/api/tagApi.ts +55 -0
- package/dist/redux/api/tagGroupApi.tsx +55 -0
- package/dist/redux/api/testApi.ts +21 -0
- package/dist/redux/api/userApi.ts +120 -0
- package/dist/redux/features/authSlice.ts +19 -0
- package/dist/redux/features/dataViewSlice.ts +26 -0
- package/dist/redux/features/navbarSlice.ts +21 -0
- package/dist/redux/features/popupSlice.ts +27 -0
- package/dist/redux/features/themeSlice.ts +17 -0
- package/dist/redux/features/userSlice.ts +28 -0
- package/dist/resources/globals.css +59 -0
- package/dist/types/index.d.ts +60 -0
- package/dist/types/layout.d.ts +94 -0
- package/dist/types/next-auth.d.ts +0 -0
- package/dist/types/next.d.ts +46 -0
- package/dist/types/solid-core.d.ts +139 -0
- package/package.json +4 -3
- package/src/components/Svg/RightArrowSvg.tsx +9 -0
- package/src/components/auth/AuthLayout.tsx +3 -3
- package/src/components/auth/SolidLogin.tsx +6 -6
- package/src/components/auth/SolidRegister.tsx +5 -5
- package/src/components/common/GeneralSettings.tsx +293 -285
- package/src/components/core/chatter/SolidChatter.tsx +252 -0
- package/src/components/core/chatter/SolidChatterDateDivider.tsx +16 -0
- package/src/components/core/chatter/SolidChatterHeader.tsx +178 -0
- package/src/components/core/chatter/SolidChatterMessageBox.tsx +165 -0
- package/src/components/core/chatter/SolidMessageComposer.tsx +145 -0
- package/src/components/core/chatter/chatter.module.css +70 -0
- package/src/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx +2 -2
- package/src/components/core/form/SolidFormView.tsx +166 -136
- package/src/components/core/form/fields/SolidBooleanField.tsx +170 -48
- package/src/components/core/form/fields/SolidDateField.tsx +86 -51
- package/src/components/core/form/fields/SolidDateTimeField.tsx +89 -52
- package/src/components/core/form/fields/SolidDecimalField.tsx +84 -49
- package/src/components/core/form/fields/SolidEmailField.tsx +90 -51
- package/src/components/core/form/fields/SolidIntegerField.tsx +86 -49
- package/src/components/core/form/fields/SolidJsonField.tsx +112 -42
- package/src/components/core/form/fields/SolidLongTextField.tsx +76 -117
- package/src/components/core/form/fields/SolidMediaMultipleField.tsx +474 -258
- package/src/components/core/form/fields/SolidMediaSingleField.tsx +408 -249
- package/src/components/core/form/fields/SolidPasswordField.tsx +112 -55
- package/src/components/core/form/fields/SolidRichTextField.tsx +105 -52
- package/src/components/core/form/fields/SolidSelectionDynamicField.tsx +138 -91
- package/src/components/core/form/fields/SolidSelectionStaticField.tsx +169 -37
- package/src/components/core/form/fields/SolidShortTextField.tsx +131 -74
- package/src/components/core/form/fields/SolidTimeField.tsx +85 -53
- package/src/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +193 -30
- package/src/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +206 -165
- package/src/components/core/form/fields/relations/SolidRelationOneToManyField.tsx +223 -142
- package/src/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.tsx +46 -0
- package/src/components/core/kanban/kanban-fields/SolidShortTextKanbanField.tsx +10 -10
- package/src/components/core/list/SolidListView.tsx +1 -1
- package/src/components/core/list/columns/SolidBooleanColumn.tsx +30 -2
- package/src/components/core/list/columns/SolidDateColumn.tsx +23 -8
- package/src/components/core/list/columns/SolidDatetimeColumn.tsx +24 -8
- package/src/components/core/list/columns/SolidExternalIdColumn.tsx +23 -8
- package/src/components/core/list/columns/SolidIdColumn.tsx +22 -7
- package/src/components/core/list/columns/SolidIntColumn.tsx +22 -7
- package/src/components/core/list/columns/SolidMediaMultipleColumn.tsx +68 -45
- package/src/components/core/list/columns/SolidMediaSingleColumn.tsx +48 -26
- package/src/components/core/list/columns/SolidRelationColumn.tsx +7 -0
- package/src/components/core/list/columns/SolidSelectionDynamicColumn.tsx +22 -7
- package/src/components/core/list/columns/SolidSelectionStaticColumn.tsx +24 -9
- package/src/components/core/list/columns/SolidShortTextColumn.tsx +26 -39
- package/src/components/core/list/columns/SolidTimeColumn.tsx +22 -7
- package/src/components/core/list/columns/SolidUuidColumn.tsx +22 -7
- package/src/components/core/list/columns/relations/SolidRelationManyToManyColumn.tsx +110 -0
- package/src/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx +43 -19
- package/src/components/core/list/columns/relations/SolidRelationOneToManyColumn.tsx +111 -0
- package/src/components/core/list/widgets/SolidRelationAvatarWidget.tsx +89 -0
- package/src/components/core/list/widgets/SolidShortTextAvatarWidget.tsx +59 -0
- package/src/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.tsx +5 -3
- package/src/components/core/model/FieldMetaDataForm.tsx +1 -1
- package/src/components/core/users/CreateUser.tsx +173 -171
- package/src/helpers/getRandomColors.tsx +68 -0
- package/src/helpers/registry.ts +90 -38
- package/src/index.ts +1 -0
- package/src/redux/api/solidChatterMessageApi.ts +30 -0
- package/src/redux/api/solidSettingsApi.tsx +8 -0
- package/src/resources/globals.css +59 -0
- package/src/types/solid-core.d.ts +24 -16
- package/src/components/core/form/fields/relations/widgets/SolidRelationManyToManyAutocompleteWidget.tsx +0 -74
- package/src/components/core/form/fields/relations/widgets/SolidRelationManyToManyCheckboxWidget.tsx +0 -103
- package/src/components/core/form/fields/widgets/SolidBooleanCheckboxFieldWidget.tsx +0 -79
- package/src/components/core/form/fields/widgets/SolidBooleanSelectFieldWidget.tsx +0 -68
- package/src/components/core/form/fields/widgets/SolidFormFieldJsonViewModeWidget.tsx +0 -23
- package/src/components/core/form/fields/widgets/SolidFormFieldMediaViewModeWidget.tsx +0 -13
- package/src/components/core/form/fields/widgets/SolidFormFieldPasswordViewModeWidget.tsx +0 -23
- package/src/components/core/form/fields/widgets/SolidFormFieldRelationViewModeWidget.tsx +0 -32
- package/src/components/core/form/fields/widgets/SolidFormFieldRichTextViewModeWidget.tsx +0 -17
- package/src/components/core/form/fields/widgets/SolidFormFieldViewMediaMultipleWidget.tsx +0 -174
- package/src/components/core/form/fields/widgets/SolidFormFieldViewMediaSingleWidget.tsx +0 -115
- package/src/components/core/form/fields/widgets/SolidFormFieldViewModeWidget.tsx +0 -11
- package/src/components/core/form/fields/widgets/SolidSelectionStaticAutocompleteFieldWidget.tsx +0 -72
- package/src/components/core/form/fields/widgets/SolidSelectionStaticRadioFieldWidget.tsx +0 -72
- package/src/components/core/list/widgets/SolidShortTextFieldTextRenderModeWidget.tsx +0 -11
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { Button } from 'primereact/button';
|
|
3
|
+
import { OverlayPanel } from 'primereact/overlaypanel';
|
|
4
|
+
import { RadioButton } from 'primereact/radiobutton';
|
|
5
|
+
import { useRef } from 'react';
|
|
6
|
+
interface Props {
|
|
7
|
+
sizeOptions: { label: string; value: string, image: string }[];
|
|
8
|
+
setSize: (value: string) => void;
|
|
9
|
+
size: string;
|
|
10
|
+
viewModes: { label: string; value: string, image: string }[];
|
|
11
|
+
setView: (value: string) => void;
|
|
12
|
+
view: string;
|
|
13
|
+
}
|
|
14
|
+
export const SolidLayoutViews = ({ sizeOptions, setSize, size, viewModes, setView, view }: Props) => {
|
|
15
|
+
const op = useRef(null);
|
|
16
|
+
|
|
17
|
+
return (
|
|
18
|
+
<div className="position-relative">
|
|
19
|
+
<Button
|
|
20
|
+
type="button"
|
|
21
|
+
size='small'
|
|
22
|
+
severity='secondary'
|
|
23
|
+
icon={
|
|
24
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none">
|
|
25
|
+
<path d="M14.9016 13.1969L10.8031 9.09845L14.9016 5L19 9.09845L14.9016 13.1969ZM5 11.7461V5.94301H10.8031V11.7461H5ZM12.2539 19V13.1969H18.057V19H12.2539ZM5 19V13.1969H10.8031V19H5ZM6.45078 10.2953H9.35233V7.39378H6.45078V10.2953ZM14.9197 11.1658L16.9689 9.11658L14.9197 7.06736L12.8705 9.11658L14.9197 11.1658ZM13.7047 17.5492H16.6062V14.6477H13.7047V17.5492ZM6.45078 17.5492H9.35233V14.6477H6.45078V17.5492Z" fill="#4B4D52" />
|
|
26
|
+
</svg>
|
|
27
|
+
}
|
|
28
|
+
className='custom-icon-button'
|
|
29
|
+
outlined
|
|
30
|
+
// @ts-ignore
|
|
31
|
+
onClick={(e) => op.current.toggle(e)}
|
|
32
|
+
/>
|
|
33
|
+
<OverlayPanel ref={op} className='solid-header-dropdown-panel'>
|
|
34
|
+
<div className='secondary-border-bottom p-1'>
|
|
35
|
+
<p className='px-3 pt-2'>Density</p>
|
|
36
|
+
<div className="flex flex-column gap-1">
|
|
37
|
+
{sizeOptions.map((option) => (
|
|
38
|
+
<div key={option.value} className={`flex align-items-center ${option.value === size ? 'solid-active-view' : 'solid-view'}`}>
|
|
39
|
+
<RadioButton
|
|
40
|
+
inputId={option.value}
|
|
41
|
+
name="sizes"
|
|
42
|
+
value={option.value}
|
|
43
|
+
onChange={(e) => setSize(e.value)}
|
|
44
|
+
checked={option.value === size}
|
|
45
|
+
/>
|
|
46
|
+
<label htmlFor={option.value} className="ml-2 flex align-items-center justify-content-between w-full">
|
|
47
|
+
{option.label}
|
|
48
|
+
<img
|
|
49
|
+
src={option.image}
|
|
50
|
+
alt={option.value}
|
|
51
|
+
className='img-fluid position-relative'
|
|
52
|
+
style={{ width: '2.75rem' }}
|
|
53
|
+
/>
|
|
54
|
+
</label>
|
|
55
|
+
</div>
|
|
56
|
+
))}
|
|
57
|
+
</div>
|
|
58
|
+
</div>
|
|
59
|
+
<div className='p-1'>
|
|
60
|
+
<p className='px-3 pt-2'>View Mode</p>
|
|
61
|
+
<div className="flex flex-column gap-1">
|
|
62
|
+
{viewModes.map((option) => (
|
|
63
|
+
<div key={option.value} className={`flex align-items-center ${option.value === view ? 'solid-active-view' : 'solid-view'}`}>
|
|
64
|
+
<RadioButton
|
|
65
|
+
inputId={option.value}
|
|
66
|
+
name="views"
|
|
67
|
+
value={option.value}
|
|
68
|
+
onChange={(e) => setView(e.value)}
|
|
69
|
+
checked={option.value === view}
|
|
70
|
+
/>
|
|
71
|
+
<label htmlFor={option.value} className="ml-2 flex align-items-center justify-content-between w-full">
|
|
72
|
+
{option.label}
|
|
73
|
+
<img
|
|
74
|
+
src={option.image}
|
|
75
|
+
alt={option.value}
|
|
76
|
+
className='img-fluid position-relative'
|
|
77
|
+
style={{ width: '2.75rem' }}
|
|
78
|
+
/>
|
|
79
|
+
</label>
|
|
80
|
+
</div>
|
|
81
|
+
))}
|
|
82
|
+
</div>
|
|
83
|
+
</div>
|
|
84
|
+
</OverlayPanel>
|
|
85
|
+
</div>
|
|
86
|
+
);
|
|
87
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { Dialog } from "primereact/dialog";
|
|
3
|
+
import { useState } from "react";
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
export const SolidListViewOptions = ({ }: any) => {
|
|
7
|
+
|
|
8
|
+
const [visible, setVisible] = useState<boolean>(false);
|
|
9
|
+
|
|
10
|
+
const [componentsToRender, setComponentsToRender] = useState(["Header", "NonExistentComponent"]);
|
|
11
|
+
|
|
12
|
+
return (
|
|
13
|
+
<div className="card flex justify-content-center">
|
|
14
|
+
<i className="pi pi-cog" onClick={() => setVisible(true)}></i>
|
|
15
|
+
|
|
16
|
+
<Dialog header="Header" visible={visible} style={{ width: '50vw' }} onHide={() => { if (!visible) return; setVisible(false); }}>
|
|
17
|
+
<p className="m-0">
|
|
18
|
+
ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
|
|
19
|
+
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
|
|
20
|
+
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
|
|
21
|
+
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
|
|
22
|
+
</p>
|
|
23
|
+
<div>
|
|
24
|
+
|
|
25
|
+
</div>
|
|
26
|
+
|
|
27
|
+
</Dialog>
|
|
28
|
+
</div>
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { Button } from "primereact/button";
|
|
2
|
+
import { Checkbox } from "primereact/checkbox";
|
|
3
|
+
import { useState } from "react";
|
|
4
|
+
|
|
5
|
+
interface SolidSaveCustomFilterFormProps {
|
|
6
|
+
currentSavedFilterData: any,
|
|
7
|
+
handleSaveFilter: ({ }) => void;
|
|
8
|
+
closeDialog: any
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export const SolidSaveCustomFilterForm: React.FC<SolidSaveCustomFilterFormProps> = ({ currentSavedFilterData, handleSaveFilter, closeDialog }) => {
|
|
12
|
+
const [formValues, setFormValues] = useState({ name: currentSavedFilterData ? currentSavedFilterData.name : "", isPrivate: currentSavedFilterData ? currentSavedFilterData.isPrivate : false });
|
|
13
|
+
|
|
14
|
+
const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {
|
|
15
|
+
const { name, value, type, checked } = e.target;
|
|
16
|
+
setFormValues((prev) => ({
|
|
17
|
+
...prev,
|
|
18
|
+
[name]: type === "checkbox" ? checked : value,
|
|
19
|
+
}));
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
const handleSubmit = (e: React.FormEvent) => {
|
|
23
|
+
e.preventDefault();
|
|
24
|
+
const formData = {
|
|
25
|
+
id: currentSavedFilterData ? currentSavedFilterData.id : null,
|
|
26
|
+
name: formValues.name,
|
|
27
|
+
isPrivate: formValues.isPrivate === true ? true : "",
|
|
28
|
+
}
|
|
29
|
+
handleSaveFilter(formData);
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
return (
|
|
33
|
+
<form onSubmit={handleSubmit}>
|
|
34
|
+
<div className="flex flex-column gap-2">
|
|
35
|
+
<label htmlFor="name">Name:</label>
|
|
36
|
+
<input
|
|
37
|
+
type="text"
|
|
38
|
+
id="name"
|
|
39
|
+
name="name"
|
|
40
|
+
placeholder="Filter Title"
|
|
41
|
+
className="p-inputtext p-inputtext-sm p-component"
|
|
42
|
+
value={formValues.name}
|
|
43
|
+
onChange={handleChange}
|
|
44
|
+
readOnly={currentSavedFilterData}
|
|
45
|
+
/>
|
|
46
|
+
</div>
|
|
47
|
+
<div className="mt-3 flex align-items-center ">
|
|
48
|
+
<Checkbox
|
|
49
|
+
inputId="isPrivate"
|
|
50
|
+
name="isPrivate"
|
|
51
|
+
checked={formValues.isPrivate}
|
|
52
|
+
onChange={(e: any) => handleChange(e)}
|
|
53
|
+
>
|
|
54
|
+
</Checkbox>
|
|
55
|
+
<label htmlFor="isPrivate" className="ml-2">Is Private</label>
|
|
56
|
+
</div>
|
|
57
|
+
<div className="mt-3 flex align-items-center gap-2">
|
|
58
|
+
<Button
|
|
59
|
+
type="submit"
|
|
60
|
+
label="Save"
|
|
61
|
+
size="small"
|
|
62
|
+
/>
|
|
63
|
+
<Button
|
|
64
|
+
type="button"
|
|
65
|
+
label="Cancel"
|
|
66
|
+
size="small"
|
|
67
|
+
outlined
|
|
68
|
+
onClick={() => closeDialog()}
|
|
69
|
+
/>
|
|
70
|
+
</div>
|
|
71
|
+
</form>
|
|
72
|
+
);
|
|
73
|
+
};
|
|
74
|
+
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { AutoComplete } from "primereact/autocomplete";
|
|
3
|
+
import { useState } from "react";
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
export const SolidSearchBox = ({ viewData }: any) => {
|
|
7
|
+
const [value, setValue] = useState<string>('');
|
|
8
|
+
const [items, setItems] = useState<string[]>([]);
|
|
9
|
+
const search = (event: any) => {
|
|
10
|
+
// setItems([...Array(10).keys()].map(item => event.query + '-' + item));
|
|
11
|
+
}
|
|
12
|
+
return (
|
|
13
|
+
<div className="card flex justify-content-center">
|
|
14
|
+
<AutoComplete value={value} suggestions={items} completeMethod={search} onChange={(e) => setValue(e.value)} />
|
|
15
|
+
</div>
|
|
16
|
+
)
|
|
17
|
+
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { LayoutAttribute, LayoutNode } from "@/types/solid-core";
|
|
2
|
+
|
|
3
|
+
export class SolidViewLayoutManager {
|
|
4
|
+
private layout: LayoutNode;
|
|
5
|
+
|
|
6
|
+
constructor(layout: LayoutNode) {
|
|
7
|
+
// Create a deep copy to prevent modifying the original object
|
|
8
|
+
this.layout = structuredClone ? structuredClone(layout) : JSON.parse(JSON.stringify(layout));
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
// Helper function to find a node by name
|
|
12
|
+
private findNode(node: LayoutNode, name: string): LayoutNode | null {
|
|
13
|
+
if (node.attrs.name === name) {
|
|
14
|
+
return node;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
if (node.children) {
|
|
18
|
+
for (let child of node.children) {
|
|
19
|
+
const found = this.findNode(child, name);
|
|
20
|
+
if (found) return found;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
// Helper function to find and remove a node
|
|
27
|
+
private removeNodeRecursive(parent: LayoutNode, name: string): boolean {
|
|
28
|
+
if (!parent.children) return false;
|
|
29
|
+
|
|
30
|
+
const index = parent.children.findIndex((child) => child.attrs.name === name);
|
|
31
|
+
if (index !== -1) {
|
|
32
|
+
parent.children.splice(index, 1); // Remove the node
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
return parent.children.some((child) => this.removeNodeRecursive(child, name));
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
// Get a deep copy of the layout
|
|
40
|
+
getLayout(): LayoutNode {
|
|
41
|
+
// return structuredClone ? structuredClone(this.layout) : JSON.parse(JSON.stringify(this.layout));
|
|
42
|
+
return this.layout;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// Update attributes of a node
|
|
46
|
+
updateNodeAttributes(name: string, newAttributes: Partial<LayoutAttribute>): boolean {
|
|
47
|
+
const node = this.findNode(this.layout, name);
|
|
48
|
+
if (node) {
|
|
49
|
+
node.attrs = { ...node.attrs, ...newAttributes };
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
return false;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// Add a child node to a parent node
|
|
56
|
+
addChildNode(parentName: string, newNode: LayoutNode): boolean {
|
|
57
|
+
const parentNode = this.findNode(this.layout, parentName);
|
|
58
|
+
if (parentNode) {
|
|
59
|
+
if (!parentNode.children) {
|
|
60
|
+
parentNode.children = [];
|
|
61
|
+
}
|
|
62
|
+
parentNode.children.push(newNode);
|
|
63
|
+
return true;
|
|
64
|
+
}
|
|
65
|
+
return false;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// Remove a node and its children
|
|
69
|
+
removeNode(name: string): boolean {
|
|
70
|
+
if (this.layout.attrs.name === name) {
|
|
71
|
+
console.warn("Cannot remove the root node.");
|
|
72
|
+
return false;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
return this.removeNodeRecursive(this.layout, name);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
// Recursively traverse the layout and execute a callback function
|
|
79
|
+
traverse(callback: (node: LayoutNode) => void, node: LayoutNode = this.layout) {
|
|
80
|
+
callback(node);
|
|
81
|
+
if (node.children) {
|
|
82
|
+
node.children.forEach((child) => this.traverse(callback, child));
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { SolidViewLayoutManager } from "@/components/core/common/SolidViewLayoutManager";
|
|
2
|
+
|
|
3
|
+
const hanldeEmailFormTypeChange = (event: any) => {
|
|
4
|
+
|
|
5
|
+
const { modifiedField, modifiedFieldValue, viewMetadata, } = event;
|
|
6
|
+
const layout = viewMetadata.layout;
|
|
7
|
+
if (modifiedField === 'type') {
|
|
8
|
+
const layoutManager = new SolidViewLayoutManager(layout);
|
|
9
|
+
const renderMode = modifiedFieldValue.value === 'text' ? 'longText' : 'richText';
|
|
10
|
+
layoutManager.updateNodeAttributes('body', { "renderMode": renderMode});
|
|
11
|
+
return {
|
|
12
|
+
layoutChanged: true,
|
|
13
|
+
dataChanged: false,
|
|
14
|
+
newLayout: layoutManager.getLayout(),
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export default hanldeEmailFormTypeChange;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { SolidViewLayoutManager } from "@/components/core/common/SolidViewLayoutManager";
|
|
2
|
+
|
|
3
|
+
const hanldeEmailFormTypeLoad = (event: any) => {
|
|
4
|
+
|
|
5
|
+
const { formData, type, viewMetadata } = event;
|
|
6
|
+
const layout = viewMetadata.layout;
|
|
7
|
+
if (formData?.type && type === 'onFormLayoutLoad') {
|
|
8
|
+
const layoutManager = new SolidViewLayoutManager(layout);
|
|
9
|
+
const renderMode = formData.type === 'text' ? 'longText' : 'richText';
|
|
10
|
+
layoutManager.updateNodeAttributes('body', { "renderMode": renderMode});
|
|
11
|
+
return {
|
|
12
|
+
layoutChanged: true,
|
|
13
|
+
dataChanged: false,
|
|
14
|
+
newLayout: layoutManager.getLayout(),
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export default hanldeEmailFormTypeLoad;
|
package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.tsx
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { useGenerateCodeForModelMutation } from "@/redux/api/modelApi";
|
|
3
|
+
import { useSeederMutation } from "@/redux/api/testApi";
|
|
4
|
+
import { Button } from "primereact/button";
|
|
5
|
+
import { useEffect } from "react";
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
const GenerateModelCodeRowAction = ({ context }: any) => {
|
|
9
|
+
const [
|
|
10
|
+
generateCode,
|
|
11
|
+
{ isLoading: isGenerateCodeUpdating, isSuccess: isGenerateCodeSuceess, isError: isGenerateCodeError, error: generateCodeError, data: generateCodeData },
|
|
12
|
+
] = useGenerateCodeForModelMutation();
|
|
13
|
+
|
|
14
|
+
const [triggerSeeder, {data}] = useSeederMutation();
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
const generateCodeHandler = async () => {
|
|
18
|
+
const response = await generateCode({ id: context?.rowData?.id });
|
|
19
|
+
context.closeListViewRowActionPopup();
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
useEffect(() => {
|
|
23
|
+
const seeder = async () => {
|
|
24
|
+
if(isGenerateCodeSuceess) {
|
|
25
|
+
await triggerSeeder("ModuleMetadataSeederService");
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
seeder();
|
|
29
|
+
}, [isGenerateCodeSuceess])
|
|
30
|
+
|
|
31
|
+
return (
|
|
32
|
+
<>
|
|
33
|
+
{context?.rowData?.module?.name != "solid-core" ? <div>
|
|
34
|
+
<p className="">Click Ok to proceed with model code generation, please note that if the file already exists and <br></br>you have made custom changes to this file we will create a .bkp file as a backup of the existing file.</p>
|
|
35
|
+
<p>Below is the list of files that will be created </p>
|
|
36
|
+
<ul>
|
|
37
|
+
<li>Model Entity File</li>
|
|
38
|
+
<li>Model Controller File</li>
|
|
39
|
+
<li>Model Service File</li>
|
|
40
|
+
<li>Model Create and Update Dto files</li>
|
|
41
|
+
</ul>
|
|
42
|
+
<div className="flex gap-5 justify-content-center">
|
|
43
|
+
<Button label="Ok" icon="pi pi-check" className='small-button' severity="danger" autoFocus onClick={generateCodeHandler} />
|
|
44
|
+
<Button label="Cancel" icon="pi pi-times" className='small-button' onClick={() => context.closeListViewRowActionPopup()} />
|
|
45
|
+
</div>
|
|
46
|
+
</div > :
|
|
47
|
+
<div>
|
|
48
|
+
<p className="">You cannot generate code for Solid Core models</p>
|
|
49
|
+
<div className="flex gap-5 justify-content-center">
|
|
50
|
+
{/* <Button label="Ok" icon="pi pi-check" className='small-button' severity="danger" autoFocus onClick={generateCodeHandler} /> */}
|
|
51
|
+
<Button label="Close" icon="pi pi-times" className='small-button' onClick={() => context.closeListViewRowActionPopup()} />
|
|
52
|
+
</div>
|
|
53
|
+
</div >
|
|
54
|
+
}
|
|
55
|
+
</>
|
|
56
|
+
)
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export default GenerateModelCodeRowAction;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { useGenerateCodeFormoduleMutation } from "@/redux/api/moduleApi";
|
|
3
|
+
import { Button } from "primereact/button";
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
const GenerateModuleCodeRowAction = ({ context }: any) => {
|
|
7
|
+
const [
|
|
8
|
+
generateCode,
|
|
9
|
+
{ isLoading: isGenerateCodeUpdating, isSuccess: isGenerateCodeSuceess, isError: isGenerateCodeError, error: generateCodeError, data: generateCodeData },
|
|
10
|
+
] = useGenerateCodeFormoduleMutation();
|
|
11
|
+
|
|
12
|
+
const generateCodeHandler = async () => {
|
|
13
|
+
const response = await generateCode({ id: context?.rowData?.id })
|
|
14
|
+
context.closeListViewRowActionPopup();
|
|
15
|
+
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
return (
|
|
19
|
+
<>
|
|
20
|
+
{context?.rowData?.name != "solid-core" ? <div>
|
|
21
|
+
<p className="text-center">Click Ok to proceed with module code generation, please note that if the file already exists and <br></br>you have made custom changes to this file we will create a .bkp file as a backup of the existing file.</p>
|
|
22
|
+
<div className="flex gap-5 justify-content-center">
|
|
23
|
+
<Button label="Ok" icon="pi pi-check" className='small-button' severity="danger" autoFocus onClick={generateCodeHandler} />
|
|
24
|
+
<Button label="Cancel" icon="pi pi-times" className='small-button' onClick={() => context.closeListViewRowActionPopup()} />
|
|
25
|
+
</div>
|
|
26
|
+
</div> :
|
|
27
|
+
<div>
|
|
28
|
+
<p className="">You cannot generate code for Solid Core modules</p>
|
|
29
|
+
<div className="flex gap-5 justify-content-center">
|
|
30
|
+
{/* <Button label="Ok" icon="pi pi-check" className='small-button' severity="danger" autoFocus onClick={generateCodeHandler} /> */}
|
|
31
|
+
<Button label="Close" icon="pi pi-times" className='small-button' onClick={() => context.closeListViewRowActionPopup()} />
|
|
32
|
+
</div>
|
|
33
|
+
</div >}
|
|
34
|
+
</>
|
|
35
|
+
)
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export default GenerateModuleCodeRowAction;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const RolePermissionsManyToManyFieldWidget: ({ formik, fieldContext }:
|
|
1
|
+
import { SolidFormFieldWidgetProps } from "../../../../../types/solid-core";
|
|
2
|
+
export declare const RolePermissionsManyToManyFieldWidget: ({ formik, fieldContext }: SolidFormFieldWidgetProps) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
//# sourceMappingURL=RolePermissionsManyToManyFieldWidget.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RolePermissionsManyToManyFieldWidget.d.ts","sourceRoot":"","sources":["../../../../../../src/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RolePermissionsManyToManyFieldWidget.d.ts","sourceRoot":"","sources":["../../../../../../src/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAc/D,eAAO,MAAM,oCAAoC,6BAA8B,yBAAyB,4CAmGvG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RolePermissionsManyToManyFieldWidget.js","sourceRoot":"","sources":["../../../../../../src/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"RolePermissionsManyToManyFieldWidget.js","sourceRoot":"","sources":["../../../../../../src/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { capitalize } from "lodash";
|
|
3
|
+
import { Panel } from "primereact/panel";
|
|
4
|
+
import { useEffect, useState } from "react";
|
|
5
|
+
import { Button } from "primereact/button";
|
|
6
|
+
import { InputSwitch } from "primereact/inputswitch";
|
|
7
|
+
import { useRelationEntityHandler } from "@/components/core/form/fields/relations/widgets/helpers/useRelationEntityHandler";
|
|
8
|
+
import { InlineRelationEntityDialog } from "@/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog";
|
|
9
|
+
import { Checkbox } from "primereact/checkbox";
|
|
10
|
+
import { SolidFormFieldWidgetProps } from "@/types/solid-core";
|
|
11
|
+
|
|
12
|
+
const groupByController = (items: any[]) => {
|
|
13
|
+
const grouped: { [key: string]: any[] } = {};
|
|
14
|
+
items.forEach((item) => {
|
|
15
|
+
const controllerName = item.label.split(".")[0];
|
|
16
|
+
if (!grouped[controllerName]) {
|
|
17
|
+
grouped[controllerName] = [];
|
|
18
|
+
}
|
|
19
|
+
grouped[controllerName].push(item);
|
|
20
|
+
});
|
|
21
|
+
return grouped;
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export const RolePermissionsManyToManyFieldWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {
|
|
25
|
+
const fieldLayoutInfo = fieldContext.field;
|
|
26
|
+
|
|
27
|
+
const readOnlyPermission = fieldContext.readOnly;
|
|
28
|
+
const [visibleCreateDialog, setVisibleCreateDialog] = useState(false);
|
|
29
|
+
const { autoCompleteItems, fetchRelationEntities, addNewRelation } = useRelationEntityHandler({ fieldContext, formik });
|
|
30
|
+
const [visibleDialogs, setVisibleDialogs] = useState<{ [key: string]: boolean }>({});
|
|
31
|
+
|
|
32
|
+
useEffect(() => {
|
|
33
|
+
fetchRelationEntities();
|
|
34
|
+
}, []);
|
|
35
|
+
|
|
36
|
+
const handleCheckboxChange = (e: any) => {
|
|
37
|
+
if (formik.values[fieldLayoutInfo.attrs.name].some((item: any) => item.value === e.value)) {
|
|
38
|
+
formik.setFieldValue(fieldLayoutInfo.attrs.name, formik.values[fieldLayoutInfo.attrs.name].filter((s: any) => s.value !== e.value));
|
|
39
|
+
} else {
|
|
40
|
+
formik.setFieldValue(fieldLayoutInfo.attrs.name, [...formik.values[fieldLayoutInfo.attrs.name], e]);
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
const getHeaderTemplate = (controllerName: string) => (options: any) => {
|
|
45
|
+
const className = `${options.className} justify-content-space-between`;
|
|
46
|
+
|
|
47
|
+
return (
|
|
48
|
+
<div className={className}>
|
|
49
|
+
<div className="flex align-items-center gap-3">
|
|
50
|
+
<label className="form-field-label text-lg font-bold">
|
|
51
|
+
{controllerName}
|
|
52
|
+
</label>
|
|
53
|
+
{fieldContext.field.attrs.inlineCreate && (
|
|
54
|
+
<>
|
|
55
|
+
<Button
|
|
56
|
+
icon="pi pi-plus"
|
|
57
|
+
rounded
|
|
58
|
+
outlined
|
|
59
|
+
aria-label="Add"
|
|
60
|
+
type="button"
|
|
61
|
+
size="small"
|
|
62
|
+
onClick={() =>
|
|
63
|
+
setVisibleDialogs((prev) => ({
|
|
64
|
+
...prev,
|
|
65
|
+
[controllerName]: true,
|
|
66
|
+
}))
|
|
67
|
+
}
|
|
68
|
+
className="custom-add-button"
|
|
69
|
+
/>
|
|
70
|
+
<InlineRelationEntityDialog
|
|
71
|
+
visible={visibleCreateDialog}
|
|
72
|
+
setVisible={setVisibleCreateDialog}
|
|
73
|
+
fieldContext={fieldContext}
|
|
74
|
+
onCreate={addNewRelation}
|
|
75
|
+
/>
|
|
76
|
+
</>
|
|
77
|
+
)}
|
|
78
|
+
</div>
|
|
79
|
+
<div>{options.togglerElement}</div>
|
|
80
|
+
</div>
|
|
81
|
+
);
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
const groupedEntities = groupByController(autoCompleteItems || []);
|
|
85
|
+
return (
|
|
86
|
+
<div>
|
|
87
|
+
{Object.keys(groupedEntities).map((controllerName) => (
|
|
88
|
+
<Panel toggleable headerTemplate={getHeaderTemplate(controllerName)} key={controllerName} className="mt-4">
|
|
89
|
+
<div className="formgrid grid">
|
|
90
|
+
{groupedEntities[controllerName].map((entity: any, i: number) => {
|
|
91
|
+
const isChecked = formik.values[fieldLayoutInfo.attrs.name].some((item: any) => item.value === entity.value);
|
|
92
|
+
return (
|
|
93
|
+
<div key={entity.label} className={`field col-6 flex gap-2 ${i >= 2 ? 'mt-3' : ''}`}>
|
|
94
|
+
<Checkbox
|
|
95
|
+
readOnly={readOnlyPermission}
|
|
96
|
+
inputId={entity.label}
|
|
97
|
+
checked={isChecked}
|
|
98
|
+
onChange={() => handleCheckboxChange(entity)}
|
|
99
|
+
/>
|
|
100
|
+
<label htmlFor={entity.label} className="form-field-label m-0"> {entity.label}</label>
|
|
101
|
+
</div>
|
|
102
|
+
)
|
|
103
|
+
})}
|
|
104
|
+
</div>
|
|
105
|
+
</Panel>
|
|
106
|
+
))}
|
|
107
|
+
{Object.keys(groupedEntities).map((controllerName) => (
|
|
108
|
+
<InlineRelationEntityDialog
|
|
109
|
+
key={`dialog-${controllerName}`}
|
|
110
|
+
visible={visibleDialogs[controllerName] || false}
|
|
111
|
+
setVisible={(visible: any) =>
|
|
112
|
+
setVisibleDialogs((prev) => ({
|
|
113
|
+
...prev,
|
|
114
|
+
[controllerName]: visible,
|
|
115
|
+
}))
|
|
116
|
+
}
|
|
117
|
+
fieldContext={fieldContext}
|
|
118
|
+
onCreate={addNewRelation}
|
|
119
|
+
/>
|
|
120
|
+
))}
|
|
121
|
+
</div>
|
|
122
|
+
)
|
|
123
|
+
};
|