@solidstarters/solid-core-ui 1.1.11 → 1.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (179) hide show
  1. package/dist/components/auth/SolidForgotPassword.d.ts.map +1 -1
  2. package/dist/components/auth/SolidForgotPassword.js +2 -1
  3. package/dist/components/auth/SolidForgotPassword.js.map +1 -1
  4. package/dist/components/auth/SolidInitialLoginOtp.d.ts.map +1 -1
  5. package/dist/components/auth/SolidInitialLoginOtp.js +2 -1
  6. package/dist/components/auth/SolidInitialLoginOtp.js.map +1 -1
  7. package/dist/components/auth/SolidInitiateRegisterOtp.d.ts.map +1 -1
  8. package/dist/components/auth/SolidInitiateRegisterOtp.js +2 -1
  9. package/dist/components/auth/SolidInitiateRegisterOtp.js.map +1 -1
  10. package/dist/components/auth/SolidLogin.d.ts.map +1 -1
  11. package/dist/components/auth/SolidLogin.js +2 -1
  12. package/dist/components/auth/SolidLogin.js.map +1 -1
  13. package/dist/components/auth/SolidOTPVerify.d.ts.map +1 -1
  14. package/dist/components/auth/SolidOTPVerify.js +2 -1
  15. package/dist/components/auth/SolidOTPVerify.js.map +1 -1
  16. package/dist/components/auth/SolidRegister.d.ts.map +1 -1
  17. package/dist/components/auth/SolidRegister.js +125 -103
  18. package/dist/components/auth/SolidRegister.js.map +1 -1
  19. package/dist/components/auth/SolidResetPassword.d.ts.map +1 -1
  20. package/dist/components/auth/SolidResetPassword.js +2 -1
  21. package/dist/components/auth/SolidResetPassword.js.map +1 -1
  22. package/dist/components/common/DropzonePlaceholder.js +1 -1
  23. package/dist/components/common/DropzonePlaceholder.js.map +1 -1
  24. package/dist/components/common/GeneralSettings.d.ts.map +1 -1
  25. package/dist/components/common/GeneralSettings.js +43 -31
  26. package/dist/components/common/GeneralSettings.js.map +1 -1
  27. package/dist/components/core/common/FilterComponent.d.ts +2 -1
  28. package/dist/components/core/common/FilterComponent.d.ts.map +1 -1
  29. package/dist/components/core/common/FilterComponent.js +52 -16
  30. package/dist/components/core/common/FilterComponent.js.map +1 -1
  31. package/dist/components/core/common/SolidConfigureLayoutElement.d.ts +1 -1
  32. package/dist/components/core/common/SolidConfigureLayoutElement.d.ts.map +1 -1
  33. package/dist/components/core/common/SolidConfigureLayoutElement.js +5 -2
  34. package/dist/components/core/common/SolidConfigureLayoutElement.js.map +1 -1
  35. package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
  36. package/dist/components/core/common/SolidGlobalSearchElement.js +131 -23
  37. package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
  38. package/dist/components/core/filter/SolidManyToOneFilterElement.d.ts.map +1 -1
  39. package/dist/components/core/filter/SolidManyToOneFilterElement.js +1 -1
  40. package/dist/components/core/filter/SolidManyToOneFilterElement.js.map +1 -1
  41. package/dist/components/core/filter/SolidSelectionDynamicFilterElement.js +1 -1
  42. package/dist/components/core/filter/SolidSelectionDynamicFilterElement.js.map +1 -1
  43. package/dist/components/core/filter/SolidSelectionStaticFilterElement.js +1 -1
  44. package/dist/components/core/filter/SolidSelectionStaticFilterElement.js.map +1 -1
  45. package/dist/components/core/filter/SolidVarInputsFilterElement.d.ts.map +1 -1
  46. package/dist/components/core/filter/SolidVarInputsFilterElement.js +11 -10
  47. package/dist/components/core/filter/SolidVarInputsFilterElement.js.map +1 -1
  48. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  49. package/dist/components/core/form/SolidFormView.js +18 -9
  50. package/dist/components/core/form/SolidFormView.js.map +1 -1
  51. package/dist/components/core/form/fields/SolidBooleanField.d.ts.map +1 -1
  52. package/dist/components/core/form/fields/SolidBooleanField.js +4 -4
  53. package/dist/components/core/form/fields/SolidBooleanField.js.map +1 -1
  54. package/dist/components/core/form/fields/SolidDateField.js +7 -7
  55. package/dist/components/core/form/fields/SolidDateField.js.map +1 -1
  56. package/dist/components/core/form/fields/SolidDateTimeField.d.ts.map +1 -1
  57. package/dist/components/core/form/fields/SolidDateTimeField.js +7 -7
  58. package/dist/components/core/form/fields/SolidDateTimeField.js.map +1 -1
  59. package/dist/components/core/form/fields/SolidDecimalField.d.ts.map +1 -1
  60. package/dist/components/core/form/fields/SolidDecimalField.js +4 -4
  61. package/dist/components/core/form/fields/SolidDecimalField.js.map +1 -1
  62. package/dist/components/core/form/fields/SolidIntegerField.d.ts.map +1 -1
  63. package/dist/components/core/form/fields/SolidIntegerField.js +4 -4
  64. package/dist/components/core/form/fields/SolidIntegerField.js.map +1 -1
  65. package/dist/components/core/form/fields/SolidJsonField.d.ts.map +1 -1
  66. package/dist/components/core/form/fields/SolidJsonField.js +2 -2
  67. package/dist/components/core/form/fields/SolidJsonField.js.map +1 -1
  68. package/dist/components/core/form/fields/SolidLongTextField.d.ts.map +1 -1
  69. package/dist/components/core/form/fields/SolidLongTextField.js +2 -2
  70. package/dist/components/core/form/fields/SolidLongTextField.js.map +1 -1
  71. package/dist/components/core/form/fields/SolidMediaMultipleField.d.ts.map +1 -1
  72. package/dist/components/core/form/fields/SolidMediaMultipleField.js +155 -46
  73. package/dist/components/core/form/fields/SolidMediaMultipleField.js.map +1 -1
  74. package/dist/components/core/form/fields/SolidMediaSingleField.d.ts.map +1 -1
  75. package/dist/components/core/form/fields/SolidMediaSingleField.js +87 -31
  76. package/dist/components/core/form/fields/SolidMediaSingleField.js.map +1 -1
  77. package/dist/components/core/form/fields/SolidRichTextField.d.ts.map +1 -1
  78. package/dist/components/core/form/fields/SolidRichTextField.js +2 -2
  79. package/dist/components/core/form/fields/SolidRichTextField.js.map +1 -1
  80. package/dist/components/core/form/fields/SolidSelectionDynamicField.d.ts.map +1 -1
  81. package/dist/components/core/form/fields/SolidSelectionDynamicField.js +4 -4
  82. package/dist/components/core/form/fields/SolidSelectionDynamicField.js.map +1 -1
  83. package/dist/components/core/form/fields/SolidSelectionStaticField.d.ts.map +1 -1
  84. package/dist/components/core/form/fields/SolidSelectionStaticField.js +4 -4
  85. package/dist/components/core/form/fields/SolidSelectionStaticField.js.map +1 -1
  86. package/dist/components/core/form/fields/SolidShortTextField.d.ts.map +1 -1
  87. package/dist/components/core/form/fields/SolidShortTextField.js +2 -2
  88. package/dist/components/core/form/fields/SolidShortTextField.js.map +1 -1
  89. package/dist/components/core/form/fields/SolidTimeField.d.ts.map +1 -1
  90. package/dist/components/core/form/fields/SolidTimeField.js +7 -7
  91. package/dist/components/core/form/fields/SolidTimeField.js.map +1 -1
  92. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js +2 -2
  93. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js.map +1 -1
  94. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
  95. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +2 -2
  96. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  97. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js +2 -2
  98. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js.map +1 -1
  99. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  100. package/dist/components/core/list/SolidListView.js +57 -54
  101. package/dist/components/core/list/SolidListView.js.map +1 -1
  102. package/dist/components/core/model/CreateModel.d.ts.map +1 -1
  103. package/dist/components/core/model/CreateModel.js +20 -16
  104. package/dist/components/core/model/CreateModel.js.map +1 -1
  105. package/dist/components/core/module/CreateModule.d.ts.map +1 -1
  106. package/dist/components/core/module/CreateModule.js +23 -23
  107. package/dist/components/core/module/CreateModule.js.map +1 -1
  108. package/dist/components/layout/AppSidebar.d.ts.map +1 -1
  109. package/dist/components/layout/AppSidebar.js +42 -11
  110. package/dist/components/layout/AppSidebar.js.map +1 -1
  111. package/dist/components/layout/navbar-two-menu.d.ts.map +1 -1
  112. package/dist/components/layout/navbar-two-menu.js +6 -2
  113. package/dist/components/layout/navbar-two-menu.js.map +1 -1
  114. package/dist/components/layout/user-profile-menu.d.ts.map +1 -1
  115. package/dist/components/layout/user-profile-menu.js +7 -3
  116. package/dist/components/layout/user-profile-menu.js.map +1 -1
  117. package/dist/helpers/AppTitle.d.ts +4 -0
  118. package/dist/helpers/AppTitle.d.ts.map +1 -0
  119. package/dist/helpers/AppTitle.js +8 -0
  120. package/dist/helpers/AppTitle.js.map +1 -0
  121. package/dist/index.d.ts +1 -0
  122. package/dist/index.d.ts.map +1 -1
  123. package/dist/index.js +3 -2
  124. package/dist/index.js.map +1 -1
  125. package/package.json +1 -1
  126. package/src/components/auth/SolidForgotPassword.tsx +2 -6
  127. package/src/components/auth/SolidInitialLoginOtp.tsx +2 -6
  128. package/src/components/auth/SolidInitiateRegisterOtp.tsx +2 -6
  129. package/src/components/auth/SolidLogin.tsx +2 -5
  130. package/src/components/auth/SolidOTPVerify.tsx +4 -7
  131. package/src/components/auth/SolidRegister.tsx +207 -178
  132. package/src/components/auth/SolidResetPassword.tsx +2 -6
  133. package/src/components/common/DropzonePlaceholder.tsx +1 -1
  134. package/src/components/common/GeneralSettings.tsx +310 -193
  135. package/src/components/core/common/FilterComponent.tsx +148 -202
  136. package/src/components/core/common/SolidConfigureLayoutElement.tsx +6 -4
  137. package/src/components/core/common/SolidGlobalSearchElement.tsx +193 -50
  138. package/src/components/core/filter/SolidManyToOneFilterElement.tsx +3 -1
  139. package/src/components/core/filter/SolidSelectionDynamicFilterElement.tsx +1 -1
  140. package/src/components/core/filter/SolidSelectionStaticFilterElement.tsx +1 -1
  141. package/src/components/core/filter/SolidVarInputsFilterElement.tsx +103 -135
  142. package/src/components/core/form/SolidFormView.tsx +32 -21
  143. package/src/components/core/form/fields/SolidBooleanField.tsx +8 -6
  144. package/src/components/core/form/fields/SolidDateField.tsx +5 -5
  145. package/src/components/core/form/fields/SolidDateTimeField.tsx +23 -22
  146. package/src/components/core/form/fields/SolidDecimalField.tsx +5 -3
  147. package/src/components/core/form/fields/SolidIntegerField.tsx +18 -16
  148. package/src/components/core/form/fields/SolidJsonField.tsx +14 -12
  149. package/src/components/core/form/fields/SolidLongTextField.tsx +18 -17
  150. package/src/components/core/form/fields/SolidMediaMultipleField.tsx +257 -79
  151. package/src/components/core/form/fields/SolidMediaSingleField.tsx +148 -61
  152. package/src/components/core/form/fields/SolidRichTextField.tsx +6 -4
  153. package/src/components/core/form/fields/SolidSelectionDynamicField.tsx +6 -5
  154. package/src/components/core/form/fields/SolidSelectionStaticField.tsx +24 -23
  155. package/src/components/core/form/fields/SolidShortTextField.tsx +19 -17
  156. package/src/components/core/form/fields/SolidTimeField.tsx +23 -21
  157. package/src/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +2 -2
  158. package/src/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +17 -16
  159. package/src/components/core/form/fields/relations/SolidRelationOneToManyField.tsx +2 -2
  160. package/src/components/core/list/SolidListView.tsx +60 -43
  161. package/src/components/core/model/CreateModel.tsx +92 -81
  162. package/src/components/core/module/CreateModule.tsx +181 -183
  163. package/src/components/layout/AppSidebar.tsx +35 -10
  164. package/src/components/layout/navbar-two-menu.tsx +6 -1
  165. package/src/components/layout/user-profile-menu.tsx +20 -8
  166. package/src/helpers/AppTitle.tsx +14 -0
  167. package/src/index.ts +2 -1
  168. package/dist/components/common/FilterComponent.d.ts +0 -3
  169. package/dist/components/common/FilterComponent.d.ts.map +0 -1
  170. package/dist/components/common/FilterComponent.js +0 -214
  171. package/dist/components/common/FilterComponent.js.map +0 -1
  172. package/dist/components/core/extension/dynamicComponentMap.d.ts +0 -3
  173. package/dist/components/core/extension/dynamicComponentMap.d.ts.map +0 -1
  174. package/dist/components/core/extension/dynamicComponentMap.js +0 -6
  175. package/dist/components/core/extension/dynamicComponentMap.js.map +0 -1
  176. package/dist/components/core/hooks/GlobalStateContext.d.ts +0 -11
  177. package/dist/components/core/hooks/GlobalStateContext.d.ts.map +0 -1
  178. package/dist/components/core/hooks/GlobalStateContext.js +0 -17
  179. package/dist/components/core/hooks/GlobalStateContext.js.map +0 -1
@@ -54,7 +54,7 @@ export class SolidRelationOneToManyField implements ISolidField {
54
54
  const fieldMetadata = this.fieldContext.fieldMetadata;
55
55
 
56
56
  const fieldLayoutInfo = this.fieldContext.field;
57
- const className = fieldLayoutInfo.attrs?.className || 'field col-12 flex flex-column gap-2 mt-3';
57
+ const className = fieldLayoutInfo.attrs?.className || 'field col-12';
58
58
  const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;
59
59
  const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;
60
60
  const solidFormViewMetaData = this.fieldContext.solidFormViewMetaData;
@@ -151,7 +151,7 @@ export class SolidRelationOneToManyField implements ISolidField {
151
151
 
152
152
  const fieldMetadata = this.fieldContext.fieldMetadata;
153
153
  const fieldLayoutInfo = this.fieldContext.field;
154
- const className = fieldLayoutInfo.attrs?.className || 'col-12 s-field';
154
+ const className = fieldLayoutInfo.attrs?.className || 'col-12';
155
155
  const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;
156
156
 
157
157
 
@@ -31,6 +31,8 @@ import { SolidConfigureLayoutElement } from '../common/SolidConfigureLayoutEleme
31
31
  import { FilterIcon } from '../../modelsComponents/filterIcon';
32
32
  import { OverlayPanel } from "primereact/overlaypanel";
33
33
  import { Toast } from "primereact/toast";
34
+ import { Divider } from "primereact/divider";
35
+
34
36
  const getRandomInt = (min: number, max: number) => {
35
37
  return Math.floor(Math.random() * (max - min + 1)) + min;
36
38
  }
@@ -443,8 +445,12 @@ export const SolidListView = (params: SolidListViewParams) => {
443
445
  solidGlobalSearchElementRef.current.clearFilter()
444
446
  };
445
447
 
446
- const [solidsolidViewDataId, setSolidViewDataId] = useState<number | null>()
448
+ const [solidsolidViewDataId, setSolidViewDataId] = useState<number | null>();
449
+ const [solidFieldName, setSolidFieldName] = useState<string>("")
450
+
447
451
  const op = useRef(null)
452
+ const [deleteEntity, setDeleteEntity] = useState(false);
453
+
448
454
 
449
455
  // clickable link allowing one to open the detail / form view.
450
456
  const detailsBodyTemplate = (solidViewData: any) => {
@@ -458,7 +464,8 @@ export const SolidListView = (params: SolidListViewParams) => {
458
464
  // @ts-ignore
459
465
  {
460
466
  op.current.toggle(e);
461
- setSolidViewDataId(solidViewData.id)
467
+ setSolidViewDataId(solidViewData.id);
468
+ setSolidFieldName(solidViewData?.singularName)
462
469
  }
463
470
  }
464
471
 
@@ -497,8 +504,30 @@ export const SolidListView = (params: SolidListViewParams) => {
497
504
  icon={<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none">
498
505
  <path d="M4.66666 14C4.29999 14 3.9861 13.8694 3.72499 13.6083C3.46388 13.3472 3.33332 13.0333 3.33332 12.6667V4H2.66666V2.66667H5.99999V2H9.99999V2.66667H13.3333V4H12.6667V12.6667C12.6667 13.0333 12.5361 13.3472 12.275 13.6083C12.0139 13.8694 11.7 14 11.3333 14H4.66666ZM11.3333 4H4.66666V12.6667H11.3333V4ZM5.99999 11.3333H7.33332V5.33333H5.99999V11.3333ZM8.66666 11.3333H9.99999V5.33333H8.66666V11.3333Z" fill="#4B4D52" />
499
506
  </svg>}
500
- onClick={() => deleteSolidSingleEntiry(solidViewData.id)}
507
+ onClick={() => setDeleteEntity(true)}
501
508
  />
509
+ {solidListViewMetaData?.data?.solidView?.layout?.attrs?.rowButtons &&
510
+ solidListViewMetaData?.data?.solidView?.layout?.attrs?.rowButtons.map((rowAction: any) => {
511
+ return (
512
+ <Button
513
+ text
514
+ size="small"
515
+ icon={rowAction?.attrs?.className ? rowAction?.attrs?.className : "pi pi-pencil"}
516
+ onClick={() => {
517
+ setListRowActionData({
518
+ modelName: params.modelName,
519
+ moduleName: params.moduleName,
520
+ rowAction: rowAction,
521
+ rowData: solidViewData,
522
+ closeListViewRowActionPopup: closeListViewRowActionPopup
523
+
524
+ });
525
+ setListViewRowActionPopupState(true)
526
+ }
527
+ }
528
+ />
529
+ );
530
+ })}
502
531
  </div>
503
532
  </OverlayPanel>
504
533
  </div>
@@ -649,7 +678,7 @@ export const SolidListView = (params: SolidListViewParams) => {
649
678
  return (
650
679
  <>
651
680
  <div className="page-header">
652
- <Toast ref={toast} />
681
+ <Toast ref={toast} />
653
682
  <div className="flex gap-3 align-items-center">
654
683
 
655
684
 
@@ -658,10 +687,9 @@ export const SolidListView = (params: SolidListViewParams) => {
658
687
  label="Delete"
659
688
  size="small"
660
689
  onClick={() => setDialogVisible(true)}
661
- className="small-button"
662
690
  severity="danger"
663
691
  />}
664
- {isFilterApplied &&
692
+ {/* {isFilterApplied &&
665
693
  <Button
666
694
  type="button"
667
695
  icon="pi pi-filter-slash"
@@ -671,10 +699,10 @@ export const SolidListView = (params: SolidListViewParams) => {
671
699
  onClick={clearFilter}
672
700
  className="small-button"
673
701
  />
674
- }
702
+ } */}
675
703
 
676
704
  {solidListViewMetaData?.data?.solidView?.layout?.attrs?.enableGlobalSearch === true && params.embeded === false &&
677
- <SolidGlobalSearchElement ref={solidGlobalSearchElementRef} viewData={solidListViewMetaData} handleApplyCustomFilter={handleApplyCustomFilter} setShowArchived={setShowArchived} showArchived={showArchived}></SolidGlobalSearchElement>
705
+ <SolidGlobalSearchElement filters={filters} clearFilter={clearFilter} ref={solidGlobalSearchElementRef} viewData={solidListViewMetaData} handleApplyCustomFilter={handleApplyCustomFilter}></SolidGlobalSearchElement>
678
706
  }
679
707
  </div>
680
708
  <div className="flex align-items-center gap-3">
@@ -684,12 +712,12 @@ export const SolidListView = (params: SolidListViewParams) => {
684
712
  }
685
713
  {actionsAllowed.includes(`${createPermission(params.modelName)}`) && solidListViewMetaData?.data?.solidView?.layout?.attrs?.create !== false && params.embeded == true && params.inlineCreate == true &&
686
714
  // < SolidCreateButton url={createButtonUrl} />
687
- <Button type="button" icon="pi pi-plus" label="Add" size='small' className='small-button'
715
+ <Button type="button" icon="pi pi-plus" label="Add" size='small'
688
716
  onClick={() => params.handlePopUpOpen(true)}
689
717
  ></Button>
690
718
  }
691
- {showArchived && <Button type="button" icon="pi pi-refresh" label="Recover" size='small' severity="warning"
692
- onClick={() => setRecoverDialogVisible(true)}
719
+ {showArchived && <Button type="button" icon="pi pi-refresh" label="Recover" size='small' severity="secondary"
720
+ onClick={() => setRecoverDialogVisible(true)}
693
721
  ></Button>}
694
722
  <SolidLayoutViews
695
723
  sizeOptions={sizeOptions}
@@ -700,7 +728,7 @@ export const SolidListView = (params: SolidListViewParams) => {
700
728
  view={view}
701
729
  />
702
730
  {params.embeded === false &&
703
- <SolidConfigureLayoutElement></SolidConfigureLayoutElement>
731
+ <SolidConfigureLayoutElement setShowArchived={setShowArchived} showArchived={showArchived} viewData={solidListViewMetaData}></SolidConfigureLayoutElement>
704
732
  }
705
733
  {/* {params.embeded === false &&
706
734
  <SolidListViewOptions></SolidListViewOptions>
@@ -749,39 +777,15 @@ export const SolidListView = (params: SolidListViewParams) => {
749
777
 
750
778
  {renderColumnsDynamically(listViewMetaData)}
751
779
  {actionsAllowed.includes(`${updatePermission(params.modelName)}`) && solidListViewMetaData?.data?.solidView?.layout?.attrs?.edit !== false &&
752
- <Column body={(rowData) => (
753
- rowData.deletedAt ? (
780
+ <Column frozen alignFrozen="right" body={(rowData) => (
781
+ rowData?.deletedAt ? (
754
782
  <a onClick={() => recoverById(rowData.id)} className="retrieve-button">
755
- <i className="pi pi-refresh" style={{ fontSize: "1rem" }}/>
783
+ <i className="pi pi-refresh" style={{ fontSize: "1rem" }} />
756
784
  </a>
757
785
  ) :
758
786
  detailsBodyTemplate(rowData)
759
787
  )}></Column>
760
788
  }
761
- {solidListViewMetaData?.data?.solidView?.layout?.attrs?.rowButtons &&
762
- solidListViewMetaData?.data?.solidView?.layout?.attrs?.rowButtons.map((rowAction: any) => {
763
- return (
764
- <Column
765
- key={rowAction}
766
- body={(rowData) => (
767
- <a onClick={() => {
768
- setListRowActionData({
769
- modelName: params.modelName,
770
- moduleName: params.moduleName,
771
- rowAction: rowAction,
772
- rowData: rowData,
773
- closeListViewRowActionPopup: closeListViewRowActionPopup
774
-
775
- });
776
- setListViewRowActionPopupState(true)
777
- }
778
- }>
779
- <i className={rowAction?.attrs?.className ? rowAction?.attrs?.className : "pi pi-pencil"} /> {/* PrimeIcons pencil icon */}
780
- </a>
781
- )}
782
- />
783
- );
784
- })}
785
789
  </DataTable>
786
790
  </div>
787
791
  <Dialog
@@ -790,8 +794,8 @@ export const SolidListView = (params: SolidListViewParams) => {
790
794
  modal
791
795
  footer={() => (
792
796
  <div className="flex justify-content-center">
793
- <Button label="Yes" icon="pi pi-check" className='small-button' severity="danger" autoFocus onClick={deleteBulk} />
794
- <Button label="No" icon="pi pi-times" className='small-button' onClick={onDeleteClose} />
797
+ <Button label="Yes" icon="pi pi-check" severity="danger" autoFocus onClick={deleteBulk} />
798
+ <Button label="No" icon="pi pi-times" onClick={onDeleteClose} />
795
799
  </div>
796
800
  )}
797
801
  onHide={() => setDialogVisible(false)}
@@ -805,8 +809,8 @@ export const SolidListView = (params: SolidListViewParams) => {
805
809
  modal
806
810
  footer={() => (
807
811
  <div className="flex justify-content-center">
808
- <Button label="Yes" icon="pi pi-check" className='small-button' severity="danger" autoFocus onClick={recoverAll} />
809
- <Button label="No" icon="pi pi-times" className='small-button' onClick={() => setRecoverDialogVisible(false)} />
812
+ <Button label="Yes" icon="pi pi-check" severity="danger" autoFocus onClick={recoverAll} />
813
+ <Button label="No" icon="pi pi-times" onClick={() => setRecoverDialogVisible(false)} />
810
814
  </div>
811
815
  )}
812
816
  onHide={() => setRecoverDialogVisible(false)}
@@ -823,6 +827,19 @@ export const SolidListView = (params: SolidListViewParams) => {
823
827
  <ListViewRowActionPopup context={listViewRowActionData}></ListViewRowActionPopup>
824
828
  </Dialog>
825
829
  }
830
+ <Dialog header="Delete Field" headerClassName="py-2" contentClassName="px-0 pb-0" visible={deleteEntity} style={{ width: '20vw' }} onHide={() => { if (!deleteEntity) return; setDeleteEntity(false); }}>
831
+ <Divider className="m-0" />
832
+ <div className="p-4">
833
+ <p className="m-0 solid-primary-title" style={{ fontSize: 16 }}>
834
+ Are you sure you want to delete this Field ?
835
+ </p>
836
+ <p className="" style={{ color: 'var{--solid-grey-500}' }}>{solidFieldName}</p>
837
+ <div className="flex align-items-center gap-2 mt-3">
838
+ <Button label="Delete" size="small" onClick={() => { deleteSolidSingleEntiry(solidsolidViewDataId); setDeleteEntity(false); }} />
839
+ <Button label="Cancel" size="small" onClick={() => setDeleteEntity(false)} outlined />
840
+ </div>
841
+ </div>
842
+ </Dialog>
826
843
  </>
827
844
  );
828
845
  };
@@ -15,7 +15,8 @@ import FieldMetaData from "./FieldMetaData";
15
15
  import ModelMetaData from "./ModelMetaData";
16
16
  import { BackButton } from "@/components/common/BackButton";
17
17
  import { SolidFormStepper } from "@/components/common/SolidFormStepper";
18
-
18
+ import { Dialog } from "primereact/dialog";
19
+ import { Divider } from "primereact/divider";
19
20
 
20
21
  interface ErrorResponseData {
21
22
  message: string;
@@ -28,6 +29,7 @@ const CreateModel = ({ data, params }: any) => {
28
29
  const toast = useRef<Toast>(null);
29
30
  const router = useRouter();
30
31
  const pathname = usePathname();
32
+ const [deleteEntity, setDeleteEntity] = useState(false);
31
33
  const [isLoadingData, setIsLoadingData] = useState(data ? true : false);
32
34
  const formikModelMetadataRef = useRef<any>();
33
35
  const formikFieldsMetadataRef = useRef();
@@ -262,95 +264,104 @@ const CreateModel = ({ data, params }: any) => {
262
264
 
263
265
  }, [isCreateModelError, isDeleteModelError, isUpdateModelError])
264
266
 
265
-
266
-
267
-
268
267
  return (
269
268
  <div className="solid-form-wrapper">
270
269
  <Toast ref={toast} />
270
+ <div style={{ width: '77.5%', borderRight: '1px solid var(--primary-light-color' }}>
271
+ <div className="solid-form-header">
272
+ {params.id === "new" ?
273
+ <>
274
+ <div className="flex align-items-center gap-3">
275
+ <BackButton />
276
+ <div className="form-wrapper-title">Create Model</div>
277
+ </div>
278
+ <div className="gap-3 flex">
279
+ <Button label="Save" size="small" onClick={handleSubmit} type="submit" />
280
+ <CancelButton />
281
+ </div>
282
+ </>
283
+ :
284
+ <>
285
+ <div className="flex align-items-center gap-3">
286
+ <BackButton />
287
+ <div className="form-wrapper-title">Edit Model</div>
288
+ </div>
289
+ <div className="gap-3 flex">
290
+ {data?.isSystem !== true &&
291
+ <>
292
+ <div>
293
+ <Button label="Save" size="small" type="submit" onClick={handleSubmit} />
294
+ </div>
295
+ <div>
296
+ <Button outlined label="Delete" size="small" severity="danger" type="button" onClick={() => setDeleteEntity(true)} />
297
+ </div>
298
+ </>
299
+ }
300
+ <CancelButton />
301
+ </div>
302
+ </>
303
+ }
304
+ </div>
305
+ <div className="solid-form-stepper">
306
+ <SolidFormStepper />
307
+ </div>
308
+ <div className="p-4 solid-form-content">
309
+ <TabView
310
+ activeIndex={activeIndex}
311
+ onTabChange={(e) => {
312
+ if (activeIndex == 0) {
313
+ formikModelMetadataRef.current.handleSubmit();
314
+ setActiveIndex(e.index)
271
315
 
272
- <div className="solid-form-header">
273
- {params.id === "new" ?
274
- <>
275
- <div className="flex align-items-center gap-3">
276
- <BackButton />
277
- <div className="form-wrapper-title">Create Model</div>
278
- </div>
279
- <div className="gap-3 flex">
280
- <Button label="Save" size="small" onClick={handleSubmit} type="submit" />
281
- <CancelButton />
282
- </div>
283
- </>
284
- :
285
- <>
286
- <div className="flex align-items-center gap-3">
287
- <BackButton />
288
- <div className="form-wrapper-title">Edit Model</div>
289
- </div>
290
- <div className="gap-3 flex">
291
- {data?.isSystem !== true &&
292
- <>
293
- <div>
294
- <Button label="Save" size="small" type="submit" onClick={handleSubmit} />
295
- </div>
296
- <div>
297
- <Button outlined label="Delete" size="small" severity="danger" type="button" onClick={deleteModelFunction} />
298
- </div>
299
- </>
300
316
  }
301
- <CancelButton />
302
- </div>
303
- </>
304
- }
317
+ if (activeIndex == 1) {
318
+ setActiveIndex(e.index)
319
+ }
320
+
321
+ }}
322
+ >
323
+ <TabPanel header="Model">
324
+ <ModelMetaData
325
+ modelMetaData={modelMetaData}
326
+ setModelMetaData={setModelMetaData}
327
+ allModelsNames={allModelsNames}
328
+ deleteModelFunction={deleteModelFunction}
329
+ nextTab={nextTab}
330
+ formikModelMetadataRef={formikModelMetadataRef}
331
+ params={params}
332
+ ></ModelMetaData>
333
+ </TabPanel>
334
+ <TabPanel header="Fields" >
335
+ <FieldMetaData
336
+ modelMetaData={modelMetaData}
337
+ fieldMetaData={fieldMetaData}
338
+ setFieldMetaData={setFieldMetaData}
339
+ deleteModelFunction={deleteModelFunction}
340
+ nextTab={nextTab}
341
+ formikFieldsMetadataRef={formikFieldsMetadataRef}
342
+ params={params}
343
+ ></FieldMetaData>
344
+ </TabPanel>
345
+ </TabView>
346
+ </div>
305
347
  </div>
306
- <div className="solid-form-stepper">
307
- <SolidFormStepper />
348
+ <div style={{ width: '22.5%' }}>
308
349
  </div>
309
- <div className="p-4 solid-form-content">
310
- <div className="grid">
311
- <div className="col-8 mx-auto">
312
- <TabView
313
- activeIndex={activeIndex}
314
- onTabChange={(e) => {
315
- if (activeIndex == 0) {
316
- formikModelMetadataRef.current.handleSubmit();
317
- setActiveIndex(e.index)
318
-
319
- }
320
- if (activeIndex == 1) {
321
- setActiveIndex(e.index)
322
- }
323
-
324
- }}
325
- >
326
- <TabPanel header="Model">
327
- <ModelMetaData
328
- modelMetaData={modelMetaData}
329
- setModelMetaData={setModelMetaData}
330
- allModelsNames={allModelsNames}
331
- deleteModelFunction={deleteModelFunction}
332
- nextTab={nextTab}
333
- formikModelMetadataRef={formikModelMetadataRef}
334
- params={params}
335
- ></ModelMetaData>
336
- </TabPanel>
337
- <TabPanel header="Fields" >
338
- <FieldMetaData
339
- modelMetaData={modelMetaData}
340
- fieldMetaData={fieldMetaData}
341
- setFieldMetaData={setFieldMetaData}
342
- deleteModelFunction={deleteModelFunction}
343
- nextTab={nextTab}
344
- formikFieldsMetadataRef={formikFieldsMetadataRef}
345
- params={params}
346
- ></FieldMetaData>
347
- </TabPanel>
348
- </TabView>
350
+ <Dialog header="Delete Field" headerClassName="py-2" contentClassName="px-0 pb-0" visible={deleteEntity} style={{ width: '20vw' }} onHide={() => { if (!deleteEntity) return; setDeleteEntity(false); }}>
351
+ <Divider className="m-0" />
352
+ <div className="p-4">
353
+ <p className="m-0 solid-primary-title" style={{ fontSize: 16 }}>
354
+ Are you sure you want to delete this Field ?
355
+ </p>
356
+ <p className="" style={{ color: 'var{--solid-grey-500}' }}>{modelMetaData?.singularName}</p>
357
+ <div className="flex align-items-center gap-2 mt-3">
358
+ <Button label="Delete" size="small" onClick={deleteModelFunction} />
359
+ <Button label="Cancel" size="small" onClick={() => setDeleteEntity(false)} outlined />
349
360
  </div>
350
361
  </div>
351
- </div>
352
- </div >
362
+ </Dialog>
363
+ </div>
353
364
  );
354
365
  };
355
366
 
356
- export default CreateModel;
367
+ export default CreateModel;