@solidxai/core-ui 0.1.7-beta.4 → 0.1.7-beta.5

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 (221) hide show
  1. package/dist/components/auth/AuthLayout.d.ts.map +1 -1
  2. package/dist/components/auth/AuthLayout.js +1 -1
  3. package/dist/components/auth/AuthLayout.js.map +1 -1
  4. package/dist/components/auth/AuthLayout.tsx +5 -3
  5. package/dist/components/auth/SolidLogin.js +3 -3
  6. package/dist/components/auth/SolidLogin.js.map +1 -1
  7. package/dist/components/auth/SolidLogin.tsx +2 -2
  8. package/dist/components/common/DropzonePlaceholder.d.ts.map +1 -1
  9. package/dist/components/common/DropzonePlaceholder.js +1 -1
  10. package/dist/components/common/DropzonePlaceholder.js.map +1 -1
  11. package/dist/components/common/DropzonePlaceholder.tsx +8 -6
  12. package/dist/components/core/chatter/SolidChatter.d.ts +2 -1
  13. package/dist/components/core/chatter/SolidChatter.d.ts.map +1 -1
  14. package/dist/components/core/chatter/SolidChatter.js +2 -4
  15. package/dist/components/core/chatter/SolidChatter.js.map +1 -1
  16. package/dist/components/core/chatter/SolidChatter.tsx +3 -4
  17. package/dist/components/core/chatter/SolidChatterHeader.d.ts +1 -0
  18. package/dist/components/core/chatter/SolidChatterHeader.d.ts.map +1 -1
  19. package/dist/components/core/chatter/SolidChatterHeader.js +2 -2
  20. package/dist/components/core/chatter/SolidChatterHeader.js.map +1 -1
  21. package/dist/components/core/chatter/SolidChatterHeader.tsx +4 -3
  22. package/dist/components/core/chatter/chatter.module.css +42 -32
  23. package/dist/components/core/common/SolidGenericImport/SolidGenericImport.js +1 -1
  24. package/dist/components/core/common/SolidGenericImport/SolidGenericImport.js.map +1 -1
  25. package/dist/components/core/common/SolidGenericImport/SolidGenericImport.tsx +2 -2
  26. package/dist/components/core/common/SolidGenericImport/SolidImport.module.css +153 -30
  27. package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.d.ts.map +1 -1
  28. package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.js +7 -7
  29. package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.js.map +1 -1
  30. package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.tsx +9 -10
  31. package/dist/components/core/extension/solid-core/media/card/MediaCardWidget.d.ts.map +1 -1
  32. package/dist/components/core/extension/solid-core/media/card/MediaCardWidget.js +1 -1
  33. package/dist/components/core/extension/solid-core/media/card/MediaCardWidget.js.map +1 -1
  34. package/dist/components/core/extension/solid-core/media/card/MediaCardWidget.tsx +6 -4
  35. package/dist/components/core/extension/solid-core/mqMessage/kanban/MqMessageKanbanCardWidget.d.ts.map +1 -1
  36. package/dist/components/core/extension/solid-core/mqMessage/kanban/MqMessageKanbanCardWidget.js +1 -1
  37. package/dist/components/core/extension/solid-core/mqMessage/kanban/MqMessageKanbanCardWidget.js.map +1 -1
  38. package/dist/components/core/extension/solid-core/mqMessage/kanban/MqMessageKanbanCardWidget.tsx +3 -1
  39. package/dist/components/core/form/SolidFormActionHeader.d.ts.map +1 -1
  40. package/dist/components/core/form/SolidFormActionHeader.js +13 -13
  41. package/dist/components/core/form/SolidFormActionHeader.js.map +1 -1
  42. package/dist/components/core/form/SolidFormActionHeader.tsx +21 -24
  43. package/dist/components/core/form/SolidFormFooter.d.ts.map +1 -1
  44. package/dist/components/core/form/SolidFormFooter.js +1 -1
  45. package/dist/components/core/form/SolidFormFooter.js.map +1 -1
  46. package/dist/components/core/form/SolidFormFooter.tsx +0 -1
  47. package/dist/components/core/form/SolidFormUserViewLayout.js +1 -1
  48. package/dist/components/core/form/SolidFormUserViewLayout.js.map +1 -1
  49. package/dist/components/core/form/SolidFormUserViewLayout.tsx +1 -1
  50. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  51. package/dist/components/core/form/SolidFormView.js +22 -33
  52. package/dist/components/core/form/SolidFormView.js.map +1 -1
  53. package/dist/components/core/form/SolidFormView.tsx +38 -59
  54. package/dist/components/core/form/SolidFormViewNormalHeaderButton.d.ts.map +1 -1
  55. package/dist/components/core/form/SolidFormViewNormalHeaderButton.js +12 -1
  56. package/dist/components/core/form/SolidFormViewNormalHeaderButton.js.map +1 -1
  57. package/dist/components/core/form/SolidFormViewNormalHeaderButton.tsx +1 -0
  58. package/dist/components/core/form/fields/SolidLongTextField.js +4 -4
  59. package/dist/components/core/form/fields/SolidLongTextField.js.map +1 -1
  60. package/dist/components/core/form/fields/SolidLongTextField.tsx +4 -4
  61. package/dist/components/core/form/fields/SolidMediaMultipleField.d.ts.map +1 -1
  62. package/dist/components/core/form/fields/SolidMediaMultipleField.js +14 -14
  63. package/dist/components/core/form/fields/SolidMediaMultipleField.js.map +1 -1
  64. package/dist/components/core/form/fields/SolidMediaMultipleField.tsx +35 -21
  65. package/dist/components/core/form/fields/SolidMediaSingleField.d.ts.map +1 -1
  66. package/dist/components/core/form/fields/SolidMediaSingleField.js +2 -2
  67. package/dist/components/core/form/fields/SolidMediaSingleField.js.map +1 -1
  68. package/dist/components/core/form/fields/SolidMediaSingleField.tsx +48 -34
  69. package/dist/components/core/form/fields/SolidPasswordField.d.ts.map +1 -1
  70. package/dist/components/core/form/fields/SolidPasswordField.js +2 -2
  71. package/dist/components/core/form/fields/SolidPasswordField.js.map +1 -1
  72. package/dist/components/core/form/fields/SolidPasswordField.tsx +46 -42
  73. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
  74. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js +23 -27
  75. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js.map +1 -1
  76. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +64 -66
  77. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
  78. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +2 -6
  79. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  80. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +4 -7
  81. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.d.ts.map +1 -1
  82. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js +12 -15
  83. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js.map +1 -1
  84. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.tsx +30 -16
  85. package/dist/components/core/form/fields/solidFields.module.css +86 -15
  86. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.d.ts +3 -0
  87. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.d.ts.map +1 -0
  88. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.js +92 -0
  89. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.js.map +1 -0
  90. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.tsx +68 -0
  91. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.d.ts.map +1 -1
  92. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js +18 -28
  93. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js.map +1 -1
  94. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.tsx +52 -48
  95. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.d.ts +3 -0
  96. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.d.ts.map +1 -0
  97. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.js +111 -0
  98. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.js.map +1 -0
  99. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.tsx +122 -0
  100. package/dist/components/core/form/fields/widgets/SolidS3FileViewerWidget.d.ts.map +1 -1
  101. package/dist/components/core/form/fields/widgets/SolidS3FileViewerWidget.js +1 -1
  102. package/dist/components/core/form/fields/widgets/SolidS3FileViewerWidget.js.map +1 -1
  103. package/dist/components/core/form/fields/widgets/SolidS3FileViewerWidget.tsx +5 -4
  104. package/dist/components/core/kanban/KanbanBoard.d.ts.map +1 -1
  105. package/dist/components/core/kanban/KanbanBoard.js +11 -5
  106. package/dist/components/core/kanban/KanbanBoard.js.map +1 -1
  107. package/dist/components/core/kanban/KanbanBoard.tsx +8 -0
  108. package/dist/components/core/kanban/KanbanCard.d.ts +1 -0
  109. package/dist/components/core/kanban/KanbanCard.d.ts.map +1 -1
  110. package/dist/components/core/kanban/KanbanCard.js +4 -4
  111. package/dist/components/core/kanban/KanbanCard.js.map +1 -1
  112. package/dist/components/core/kanban/KanbanCard.tsx +5 -4
  113. package/dist/components/core/kanban/KanbanColumn.d.ts +2 -1
  114. package/dist/components/core/kanban/KanbanColumn.d.ts.map +1 -1
  115. package/dist/components/core/kanban/KanbanColumn.js +3 -3
  116. package/dist/components/core/kanban/KanbanColumn.js.map +1 -1
  117. package/dist/components/core/kanban/KanbanColumn.tsx +4 -3
  118. package/dist/components/core/list/SolidDataTable.d.ts +1 -0
  119. package/dist/components/core/list/SolidDataTable.d.ts.map +1 -1
  120. package/dist/components/core/list/SolidDataTable.js +19 -2
  121. package/dist/components/core/list/SolidDataTable.js.map +1 -1
  122. package/dist/components/core/list/SolidDataTable.tsx +30 -2
  123. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  124. package/dist/components/core/list/SolidListView.js +1 -1
  125. package/dist/components/core/list/SolidListView.js.map +1 -1
  126. package/dist/components/core/list/SolidListView.tsx +1 -0
  127. package/dist/components/core/list/SolidListViewConfigure.js.map +1 -1
  128. package/dist/components/core/list/SolidListViewConfigure.tsx +1 -1
  129. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.d.ts +3 -0
  130. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.d.ts.map +1 -0
  131. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.js +87 -0
  132. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.js.map +1 -0
  133. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.tsx +70 -0
  134. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.d.ts +3 -0
  135. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.d.ts.map +1 -0
  136. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.js +33 -0
  137. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.js.map +1 -0
  138. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.tsx +50 -0
  139. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.d.ts +3 -0
  140. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.d.ts.map +1 -0
  141. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.js +158 -0
  142. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.js.map +1 -0
  143. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.tsx +185 -0
  144. package/dist/components/core/locales/SolidChatterLocaleTabView.d.ts.map +1 -1
  145. package/dist/components/core/locales/SolidChatterLocaleTabView.js +7 -4
  146. package/dist/components/core/locales/SolidChatterLocaleTabView.js.map +1 -1
  147. package/dist/components/core/locales/SolidChatterLocaleTabView.tsx +28 -11
  148. package/dist/components/core/locales/SolidLocale.js +4 -4
  149. package/dist/components/core/locales/SolidLocale.js.map +1 -1
  150. package/dist/components/core/locales/SolidLocale.tsx +18 -18
  151. package/dist/components/core/locales/solid-locale.css +105 -7
  152. package/dist/components/core/model/CreateModel.js +2 -2
  153. package/dist/components/core/model/CreateModel.js.map +1 -1
  154. package/dist/components/core/model/CreateModel.tsx +2 -2
  155. package/dist/components/core/model/FieldMetaData.d.ts.map +1 -1
  156. package/dist/components/core/model/FieldMetaData.js +3 -3
  157. package/dist/components/core/model/FieldMetaData.js.map +1 -1
  158. package/dist/components/core/model/FieldMetaData.tsx +45 -22
  159. package/dist/components/core/users/ApiKeysTab/ApiKeysTab.d.ts +7 -0
  160. package/dist/components/core/users/ApiKeysTab/ApiKeysTab.d.ts.map +1 -0
  161. package/dist/components/core/users/ApiKeysTab/ApiKeysTab.js +138 -0
  162. package/dist/components/core/users/ApiKeysTab/ApiKeysTab.js.map +1 -0
  163. package/dist/components/core/users/ApiKeysTab/ApiKeysTab.tsx +246 -0
  164. package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.d.ts +8 -0
  165. package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.d.ts.map +1 -0
  166. package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.js +156 -0
  167. package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.js.map +1 -0
  168. package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.tsx +184 -0
  169. package/dist/components/core/users/ApiKeysTab/RevealApiKeyModal.d.ts +9 -0
  170. package/dist/components/core/users/ApiKeysTab/RevealApiKeyModal.d.ts.map +1 -0
  171. package/dist/components/core/users/ApiKeysTab/RevealApiKeyModal.js +37 -0
  172. package/dist/components/core/users/ApiKeysTab/RevealApiKeyModal.js.map +1 -0
  173. package/dist/components/core/users/ApiKeysTab/RevealApiKeyModal.tsx +111 -0
  174. package/dist/components/core/users/ApiKeysTab/index.d.ts +4 -0
  175. package/dist/components/core/users/ApiKeysTab/index.d.ts.map +1 -0
  176. package/dist/components/core/users/ApiKeysTab/index.js +4 -0
  177. package/dist/components/core/users/ApiKeysTab/index.js.map +1 -0
  178. package/dist/components/core/users/ApiKeysTab/index.ts +3 -0
  179. package/dist/components/layout/AppSidebar.d.ts.map +1 -1
  180. package/dist/components/layout/AppSidebar.js +75 -7
  181. package/dist/components/layout/AppSidebar.js.map +1 -1
  182. package/dist/components/layout/AppSidebar.tsx +84 -7
  183. package/dist/components/shad-cn-ui/SolidCodeEditor.d.ts.map +1 -1
  184. package/dist/components/shad-cn-ui/SolidCodeEditor.js +13 -7
  185. package/dist/components/shad-cn-ui/SolidCodeEditor.js.map +1 -1
  186. package/dist/components/shad-cn-ui/SolidCodeEditor.tsx +22 -12
  187. package/dist/components/shad-cn-ui/SolidDialog.d.ts +2 -1
  188. package/dist/components/shad-cn-ui/SolidDialog.d.ts.map +1 -1
  189. package/dist/components/shad-cn-ui/SolidDialog.js +2 -2
  190. package/dist/components/shad-cn-ui/SolidDialog.js.map +1 -1
  191. package/dist/components/shad-cn-ui/SolidDialog.tsx +6 -3
  192. package/dist/components/shad-cn-ui/SolidSelect.d.ts +2 -1
  193. package/dist/components/shad-cn-ui/SolidSelect.d.ts.map +1 -1
  194. package/dist/components/shad-cn-ui/SolidSelect.js +2 -2
  195. package/dist/components/shad-cn-ui/SolidSelect.js.map +1 -1
  196. package/dist/components/shad-cn-ui/SolidSelect.tsx +3 -0
  197. package/dist/components/shad-cn-ui/SolidTextarea.d.ts +1 -1
  198. package/dist/components/shad-cn-ui/SolidTextarea.d.ts.map +1 -1
  199. package/dist/components/shad-cn-ui/SolidTextarea.js +3 -2
  200. package/dist/components/shad-cn-ui/SolidTextarea.js.map +1 -1
  201. package/dist/components/shad-cn-ui/SolidTextarea.tsx +17 -2
  202. package/dist/helpers/# no such endpoints exist, need to calle +3 -0
  203. package/dist/helpers/registry.d.ts.map +1 -1
  204. package/dist/helpers/registry.js +10 -0
  205. package/dist/helpers/registry.js.map +1 -1
  206. package/dist/helpers/registry.ts +16 -0
  207. package/dist/index.d.ts +3 -2
  208. package/dist/index.d.ts.map +1 -1
  209. package/dist/index.js +3 -2
  210. package/dist/index.js.map +1 -1
  211. package/dist/index.ts +71 -2
  212. package/dist/redux/api/apiKeyApi.d.ts +40 -0
  213. package/dist/redux/api/apiKeyApi.d.ts.map +1 -0
  214. package/dist/redux/api/apiKeyApi.js +36 -0
  215. package/dist/redux/api/apiKeyApi.js.map +1 -0
  216. package/dist/redux/api/apiKeyApi.ts +60 -0
  217. package/dist/resources/globals.css +628 -67
  218. package/dist/resources/shadcn-base.css +333 -7
  219. package/dist/resources/solid-responsive.css +6 -6
  220. package/dist/resources/themes/solid-dark-purple/theme.css +1 -1
  221. package/package.json +1 -1
@@ -516,22 +516,19 @@ export const RenderSolidFormEmbededView = ({ formik, fieldContext, customCreateH
516
516
  variant="outline"
517
517
  aria-label="Filter"
518
518
  type="button"
519
- size="small"
519
+ size="sm"
520
520
  onClick={() => setvisibleCreateRelationEntity(true)}
521
521
  className="custom-add-button"
522
522
  />
523
523
  </div>
524
524
  <SolidDialog
525
- visible={visibleCreateRelationEntity}
526
- showHeader={false}
525
+ open={visibleCreateRelationEntity}
526
+ onOpenChange={setvisibleCreateRelationEntity}
527
527
  style={{
528
528
  width: fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.width ?? "60vw",
529
529
  height: fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.height ?? "auto"
530
530
  }}
531
- onHide={() => {
532
- if (!visibleCreateRelationEntity) return;
533
- setvisibleCreateRelationEntity(false);
534
- }}
531
+ showHeader={false}
535
532
  className="solid-dialog"
536
533
  breakpoints={{ '1199px': '35rem', "767px": '85vw', "550px": '90vw' }}
537
534
 
@@ -1 +1 @@
1
- {"version":3,"file":"SolidRelationOneToManyField.d.ts","sourceRoot":"","sources":["../../../../../../src/components/core/form/fields/relations/SolidRelationOneToManyField.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAE3B,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAI5E,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAQlG,MAAM,MAAM,cAAc,GAAG;IACzB,UAAU,EAAE,GAAG,CAAC;IAChB,EAAE,EAAE,GAAG,CAAC;IACR,OAAO,EAAE,GAAG,CAAC;IACb,cAAc,EAAE,GAAG,CAAC;IACpB,YAAY,EAAE,GAAG,CAAC;IAClB,SAAS,EAAE,GAAG,CAAC;IACf,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,UAAU,EAAE,GAAG,CAAC;IAChB,kBAAkB,EAAE,GAAG,CAAC;IACxB,oBAAoB,EAAE,GAAG,CAAC;IAC1B,mBAAmB,CAAC,EAAE,GAAG,CAAC;IAC1B,gBAAgB,CAAC,EAAE,GAAG,CAAA;CACzB,CAAA;AAED,qBAAa,2BAA4B,YAAW,WAAW;IAE3D,OAAO,CAAC,YAAY,CAAkB;gBAC1B,YAAY,EAAE,eAAe;IAIzC,YAAY,IAAI,GAAG;IAYnB,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,GAAG,GAAG;IAWnD,gBAAgB,IAAI,GAAG,CAAC,MAAM;IAc9B,MAAM,CAAC,MAAM,EAAE,YAAY;IAkD3B,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY;CAcjE;AA4CD,eAAO,MAAM,sCAAsC,6BAA8B,yBAAyB,4CAwKzG,CAAA;AAGD,eAAO,MAAM,sCAAsC,6BAA8B,yBAAyB,4CAwHzG,CAAA;AAGD,eAAO,MAAM,0BAA0B,4IAA6I,GAAG,4CAmDtL,CAAA;AAGD,eAAO,MAAM,iCAAiC,oEAAqE,oBAAoB,4CA0JtI,CAAA"}
1
+ {"version":3,"file":"SolidRelationOneToManyField.d.ts","sourceRoot":"","sources":["../../../../../../src/components/core/form/fields/relations/SolidRelationOneToManyField.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAE3B,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAI5E,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAQlG,MAAM,MAAM,cAAc,GAAG;IACzB,UAAU,EAAE,GAAG,CAAC;IAChB,EAAE,EAAE,GAAG,CAAC;IACR,OAAO,EAAE,GAAG,CAAC;IACb,cAAc,EAAE,GAAG,CAAC;IACpB,YAAY,EAAE,GAAG,CAAC;IAClB,SAAS,EAAE,GAAG,CAAC;IACf,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,UAAU,EAAE,GAAG,CAAC;IAChB,kBAAkB,EAAE,GAAG,CAAC;IACxB,oBAAoB,EAAE,GAAG,CAAC;IAC1B,mBAAmB,CAAC,EAAE,GAAG,CAAC;IAC1B,gBAAgB,CAAC,EAAE,GAAG,CAAA;CACzB,CAAA;AAED,qBAAa,2BAA4B,YAAW,WAAW;IAE3D,OAAO,CAAC,YAAY,CAAkB;gBAC1B,YAAY,EAAE,eAAe;IAIzC,YAAY,IAAI,GAAG;IAYnB,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,GAAG,GAAG;IAWnD,gBAAgB,IAAI,GAAG,CAAC,MAAM;IAc9B,MAAM,CAAC,MAAM,EAAE,YAAY;IAkD3B,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY;CAcjE;AA4CD,eAAO,MAAM,sCAAsC,6BAA8B,yBAAyB,4CAyLzG,CAAA;AAGD,eAAO,MAAM,sCAAsC,6BAA8B,yBAAyB,4CAwHzG,CAAA;AAGD,eAAO,MAAM,0BAA0B,4IAA6I,GAAG,4CAgDtL,CAAA;AAGD,eAAO,MAAM,iCAAiC,oEAAqE,oBAAoB,4CA0JtI,CAAA"}
@@ -56,7 +56,7 @@ import { useRouter } from "../../../../../hooks/useRouter";
56
56
  import { getExtensionComponent } from "../../../../../helpers/registry";
57
57
  import { SolidFieldTooltip } from "../../../../../components/common/SolidFieldTooltip";
58
58
  import { SolidButton } from "../../../../shad-cn-ui/SolidButton";
59
- import { SolidDialog } from "../../../../shad-cn-ui/SolidDialog";
59
+ import { SolidDialog, SolidDialogBody, SolidDialogClose, SolidDialogHeader, SolidDialogTitle } from "../../../../shad-cn-ui/SolidDialog";
60
60
  import { ERROR_MESSAGES } from "../../../../../constants/error-messages";
61
61
  import styles from "../solidFields.module.css";
62
62
  var SolidRelationOneToManyField = /** @class */ (function () {
@@ -190,7 +190,7 @@ var buildRelationCustomFilter = function (_a) {
190
190
  }
191
191
  };
192
192
  export var DefaultRelationOneToManyFormEditWidget = function (_a) {
193
- var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
193
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
194
194
  var formik = _a.formik, fieldContext = _a.fieldContext;
195
195
  var fieldMetadata = fieldContext.fieldMetadata;
196
196
  var router = useRouter();
@@ -199,10 +199,10 @@ export var DefaultRelationOneToManyFormEditWidget = function (_a) {
199
199
  var fieldLabel = (_c = fieldLayoutInfo.attrs.label) !== null && _c !== void 0 ? _c : fieldMetadata.displayName;
200
200
  var fieldDescription = (_d = fieldLayoutInfo.attrs.description) !== null && _d !== void 0 ? _d : fieldMetadata.description;
201
201
  var solidFormViewMetaData = fieldContext.solidFormViewMetaData;
202
- var _w = useState(false), visibleCreateRelationEntity = _w[0], setvisibleCreateRelationEntity = _w[1];
203
- var _x = useState(), listViewParams = _x[0], setListViewParams = _x[1];
204
- var _y = useState(), formViewParams = _y[0], setformViewParams = _y[1];
205
- var _z = useState(false), refreshList = _z[0], setRefreshList = _z[1]; // Added state for rerender
202
+ var _t = useState(false), visibleCreateRelationEntity = _t[0], setvisibleCreateRelationEntity = _t[1];
203
+ var _u = useState(), listViewParams = _u[0], setListViewParams = _u[1];
204
+ var _v = useState(), formViewParams = _v[0], setformViewParams = _v[1];
205
+ var _w = useState(false), refreshList = _w[0], setRefreshList = _w[1]; // Added state for rerender
206
206
  var showFieldLabel = (_e = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _e === void 0 ? void 0 : _e.showLabel;
207
207
  var readOnlyPermission = fieldContext.readOnly;
208
208
  var pathname = usePathname();
@@ -211,7 +211,7 @@ export var DefaultRelationOneToManyFormEditWidget = function (_a) {
211
211
  var _ = _a[0], value = _a[1];
212
212
  return value.isUserKey;
213
213
  })) === null || _f === void 0 ? void 0 : _f[0];
214
- var _0 = useState(false), showSaveParentEntityConfirmationPopup = _0[0], setShowSaveParentEntityConfirmationPopup = _0[1];
214
+ var _x = useState(false), showSaveParentEntityConfirmationPopup = _x[0], setShowSaveParentEntityConfirmationPopup = _x[1];
215
215
  useEffect(function () {
216
216
  var urlParams = new URLSearchParams(window.location.search);
217
217
  var childEntity = urlParams.get('childEntity');
@@ -332,8 +332,9 @@ export var DefaultRelationOneToManyFormEditWidget = function (_a) {
332
332
  return (_jsxs("div", { children: [showFieldLabel != false &&
333
333
  _jsxs("label", { htmlFor: fieldLayoutInfo.attrs.name, className: "".concat(styles.fieldLabel, " form-field-label"), children: [fieldLabel, fieldMetadata.required && _jsx("span", { className: "text-red-500", children: " *" }), _jsx(SolidFieldTooltip, { fieldContext: fieldContext })] }), listViewParams &&
334
334
  _jsx(SolidListView, __assign({}, listViewParams, { handleAddClickForEmbeddedView: handleAddOrEditClickForEmbeddedView, handleEditClickForEmbeddedView: handleAddOrEditClickForEmbeddedView }), refreshList.toString()), readOnlyPermission !== true && formViewParams &&
335
- _jsx(RenderSolidFormEmbededView, { formik: formik, fieldContext: fieldContext, visibleCreateRelationEntity: visibleCreateRelationEntity, setvisibleCreateRelationEntity: setvisibleCreateRelationEntity, formViewParams: formViewParams, handlePopupClose: handlePopupClose }), _jsx(SolidDialog, { header: "Save Required", headerClassName: "py-2", contentClassName: "px-0 pb-0", className: "solid-confirm-dialog", contentStyle: { borderRadius: 6 }, visible: showSaveParentEntityConfirmationPopup, style: { width: '20vw' }, onHide: function () { if (!showSaveParentEntityConfirmationPopup)
336
- return; setShowSaveParentEntityConfirmationPopup(false); }, children: _jsxs("div", { className: "p-4", children: [_jsxs("p", { className: "m-0 solid-primary-title", style: { fontSize: 16 }, children: ["Before Creating ", fieldLabel, " you need to save ", ((_s = (_r = (_q = solidFormViewMetaData === null || solidFormViewMetaData === void 0 ? void 0 : solidFormViewMetaData.data) === null || _q === void 0 ? void 0 : _q.solidView) === null || _r === void 0 ? void 0 : _r.model) === null || _s === void 0 ? void 0 : _s.displayName) ? (_v = (_u = (_t = solidFormViewMetaData === null || solidFormViewMetaData === void 0 ? void 0 : solidFormViewMetaData.data) === null || _t === void 0 ? void 0 : _t.solidView) === null || _u === void 0 ? void 0 : _u.model) === null || _v === void 0 ? void 0 : _v.displayName : capitalize(fieldContext.modelName), ". Please click save if you wish to proceed ?"] }), _jsxs("div", { className: "flex align-items-center justify-content-start gap-2 mt-3", children: [_jsx(SolidButton, { label: "Save", size: "small", onClick: saveParentEntity }), _jsx(SolidButton, { label: "Cancel", size: "small", onClick: function () { return setShowSaveParentEntityConfirmationPopup(false); }, variant: "outline", className: 'bg-primary-reverse' })] })] }) })] }));
335
+ _jsx(RenderSolidFormEmbededView, { formik: formik, fieldContext: fieldContext, visibleCreateRelationEntity: visibleCreateRelationEntity, setvisibleCreateRelationEntity: setvisibleCreateRelationEntity, formViewParams: formViewParams, handlePopupClose: handlePopupClose }), _jsxs(SolidDialog, { open: showSaveParentEntityConfirmationPopup, onOpenChange: setShowSaveParentEntityConfirmationPopup, className: "solid-confirm-dialog solid-field-confirm-dialog", style: { width: "min(420px, calc(100vw - 2rem))" }, children: [_jsxs(SolidDialogHeader, { className: "solid-field-confirm-header", children: [_jsx(SolidDialogTitle, { children: "Save Required" }), _jsx(SolidDialogClose, {})] }), _jsx(SolidDialogBody, { className: "solid-field-confirm-dialog-body", children: _jsxs("p", { className: "solid-field-confirm-message", children: ["Before creating ", fieldLabel, ", you need to save", " ", ((_s = (_r = (_q = solidFormViewMetaData === null || solidFormViewMetaData === void 0 ? void 0 : solidFormViewMetaData.data) === null || _q === void 0 ? void 0 : _q.solidView) === null || _r === void 0 ? void 0 : _r.model) === null || _s === void 0 ? void 0 : _s.displayName)
336
+ ? solidFormViewMetaData.data.solidView.model.displayName
337
+ : capitalize(fieldContext.modelName), ". Please save first if you want to continue."] }) }), _jsxs("div", { className: "solid-radix-dialog-footer solid-field-confirm-actions", children: [_jsx(SolidButton, { label: "Save", size: "sm", onClick: saveParentEntity, autoFocus: true }), _jsx(SolidButton, { label: "Cancel", size: "sm", onClick: function () { return setShowSaveParentEntityConfirmationPopup(false); }, variant: "outline" })] })] })] }));
337
338
  };
338
339
  export var DefaultRelationOneToManyFormViewWidget = function (_a) {
339
340
  var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
@@ -455,14 +456,10 @@ export var RenderSolidFormEmbededView = function (_a) {
455
456
  onEmbeddedFormSave: formViewParams.onEmbeddedFormSave,
456
457
  isCustomCreate: formViewParams.isCustomCreate
457
458
  };
458
- return (_jsx("div", { className: "many-to-many-add", children: _jsx(SolidDialog, { visible: visibleCreateRelationEntity, showHeader: false, className: "solid-dialog", style: {
459
+ return (_jsx("div", { className: "many-to-many-add", children: _jsx(SolidDialog, { open: visibleCreateRelationEntity, onOpenChange: setvisibleCreateRelationEntity, className: "solid-dialog", style: {
459
460
  width: (_e = (_d = (_c = (_b = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _b === void 0 ? void 0 : _b.inlineCreateLayout) === null || _c === void 0 ? void 0 : _c.attrs) === null || _d === void 0 ? void 0 : _d.width) !== null && _e !== void 0 ? _e : "60vw",
460
461
  height: (_j = (_h = (_g = (_f = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _f === void 0 ? void 0 : _f.inlineCreateLayout) === null || _g === void 0 ? void 0 : _g.attrs) === null || _h === void 0 ? void 0 : _h.height) !== null && _j !== void 0 ? _j : "auto"
461
- }, onHide: function () {
462
- if (!visibleCreateRelationEntity)
463
- return;
464
- setvisibleCreateRelationEntity(false);
465
- }, breakpoints: { '1199px': '35rem', "767px": '85vw', "550px": '90vw' }, children: params &&
462
+ }, showHeader: false, breakpoints: { '1199px': '35rem', "767px": '85vw', "550px": '90vw' }, children: params &&
466
463
  _jsx(SolidFormView, __assign({}, params)) }) }));
467
464
  };
468
465
  export var PseudoRelationOneToManyFormWidget = function (_a) {
@@ -1 +1 @@
1
- {"version":3,"file":"SolidRelationOneToManyField.js","sourceRoot":"","sources":["../../../../../../src/components/core/form/fields/relations/SolidRelationOneToManyField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { SolidListView } from \"../../../../../components/core/list/SolidListView\";\nimport { camelCase, capitalize } from \"lodash\";\nimport { useEffect, useState } from \"react\";\nimport * as Yup from 'yup';\nimport SolidFormView from '../../../../../components/core/form/SolidFormView';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"../ISolidField\";\nimport { usePathname } from \"../../../../../hooks/usePathname\";\nimport { useRouter } from \"../../../../../hooks/useRouter\";\nimport { getExtensionComponent } from \"../../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps, SolidFormWidgetProps } from \"../../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../../components/common/SolidFieldTooltip\";\nimport { SolidButton } from \"../../../../shad-cn-ui/SolidButton\";\nimport { SolidDialog } from \"../../../../shad-cn-ui/SolidDialog\";\nimport { SolidMessage } from \"../../../../shad-cn-ui/SolidMessage\";\nimport { ERROR_MESSAGES } from \"../../../../../constants/error-messages\";\nimport styles from \"../solidFields.module.css\";\n\nexport type FormViewParams = {\n moduleName: any;\n id: any;\n embeded: any;\n isCustomCreate: any;\n customLayout: any;\n modelName: any;\n parentFieldName?: any;\n parentData: any;\n onEmbeddedFormSave: any;\n inlineCreateAutoSave: any;\n customCreateHandler?: any;\n handlePopupClose?: any\n}\n\nexport class SolidRelationOneToManyField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n initialValue(): any {\n\n // const manyToOneFieldData = this.fieldContext.data[this.fieldContext.field.attrs.name];\n // const fieldMetadata = this.fieldContext.fieldMetadata;\n // const userKeyField = fieldMetadata.relationModel.userKeyField.name;\n // const manyToOneColVal = manyToOneFieldData ? manyToOneFieldData[userKeyField] : '';\n\n // return { label: manyToOneColVal || '', value: manyToOneFieldData?.id || '' };\n\n return '';\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n // if(!value || value.length === 0) {\n // formData.append(`${fieldLayoutInfo.attrs.name}Command`, \"clear\");\n\n // }\n if (value) {\n formData.append(`${fieldLayoutInfo.attrs.name}Id`, value.value);\n }\n }\n\n validationSchema(): Yup.Schema {\n let schema = Yup.object();\n\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n // 1. required \n if (fieldMetadata.required) {\n schema = schema.required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n }\n return schema;\n }\n\n render(formik: FormikObject) {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n\n const userKeyFieldName = fieldMetadata.relationModel?.userKeyField?.name;\n\n let DynamicWidget = getExtensionComponent(\"SolidFormFieldRelationViewModeWidget\");\n const widgetProps = {\n label: fieldLabel,\n value: (this.fieldContext.data?.[fieldLayoutInfo.attrs.name] || []).map(\n (item: any) => ({ label: item[userKeyFieldName] ?? '' })\n ),\n layout: fieldLayoutInfo\n }\n\n // DefaultRelationOneToManyFormEditWidget\n\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultRelationOneToManyFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultRelationOneToManyFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n return (\n <>\n <div className={className}>\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" && (\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n )\n }\n </div>\n </>\n );\n\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n\n\n}\n\n\n\nconst buildRelationCustomFilter = ({\n fieldContext,\n fieldLayoutInfo,\n}: {\n fieldContext: any;\n fieldLayoutInfo?: any;\n}) => {\n if (!fieldContext) {\n return { id: { $eq: -1 } };\n }\n const relationFieldName =\n fieldContext.fieldMetadata?.relationCoModelFieldName ??\n fieldContext.modelName;\n\n const parentId = fieldContext.data?.id ?? -1;\n\n\n const baseFilter = {\n [relationFieldName]: {\n id: { $eq: parentId },\n },\n };\n\n const whereClause = fieldLayoutInfo?.attrs?.whereClause;\n\n if (!whereClause) return { $and: [baseFilter] };\n\n try {\n const parsedWhereClause = JSON.parse(whereClause);\n\n return {\n $and: [baseFilter, parsedWhereClause],\n };\n } catch (error) {\n console.error(\"Failed to parse whereClause:\", error);\n return { $and: [baseFilter] };\n }\n};\n\n\nexport const DefaultRelationOneToManyFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const router = useRouter();\n\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const [visibleCreateRelationEntity, setvisibleCreateRelationEntity] = useState(false);\n const [listViewParams, setListViewParams] = useState<any>()\n const [formViewParams, setformViewParams] = useState<FormViewParams>()\n const [refreshList, setRefreshList] = useState(false); // Added state for rerender\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n const pathname = usePathname();\n const lastPathSegment = pathname.split('/').pop();\n const userKeyField: any = Object.entries(fieldContext.solidFormViewMetaData.data.solidFieldsMetadata).find(([_, value]: any) => value.isUserKey)?.[0];\n const [showSaveParentEntityConfirmationPopup, setShowSaveParentEntityConfirmationPopup] = useState(false);\n\n useEffect(() => {\n const urlParams = new URLSearchParams(window.location.search);\n const childEntity = urlParams.get('childEntity');\n if (childEntity === fieldLayoutInfo.attrs.name && lastPathSegment !== \"new\") {\n handleAddOrEditClickForEmbeddedView('new');\n }\n }, [])\n\n const handleAddOrEditClickForEmbeddedView = (id: any) => {\n if (lastPathSegment === \"new\") {\n setShowSaveParentEntityConfirmationPopup(true);\n } else {\n\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n id: id,\n embeded: true,\n isCustomCreate: false,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n }\n setformViewParams(formviewparams);\n setvisibleCreateRelationEntity(true);\n }\n }\n\n const handlePopupClose = () => {\n setvisibleCreateRelationEntity(false);\n const currentUrl = new URL(window.location.href);\n currentUrl.searchParams.delete('childEntity');\n router.push(currentUrl.toString());\n setRefreshList((prev) => !prev);\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const lisviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n }\n setListViewParams(lisviewparams)\n }\n\n //Intial Params \n useEffect(() => {\n\n\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const listviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n\n }\n setListViewParams(listviewparams);\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n id: \"new\",\n embeded: true,\n isCustomCreate: false,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n }\n\n\n\n setformViewParams(formviewparams)\n\n }, [readOnlyPermission])\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n const saveParentEntity = async () => {\n const currentPath = window.location.pathname;\n const currentUrl = new URL(window.location.href);\n currentUrl.searchParams.set('childEntity', fieldLayoutInfo.attrs.name);\n currentUrl.searchParams.set('viewMode', 'edit');\n const updatedPath = currentUrl.toString();\n try {\n console.log(\"updatedPath\", updatedPath);\n router.push(updatedPath);\n await formik.handleSubmit();\n } catch {\n\n }\n setShowSaveParentEntityConfirmationPopup(false);\n };\n\n\n\n return (\n <div>\n {/* <div className=\"justify-content-center align-items-center\"> */}\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n }\n\n {/* {lastPathSegment === 'new' && <p>Please save the {solidFormViewMetaData.data.solidView.model.displayName} to be able to save {fieldMetadata.displayName}</p>} */}\n {listViewParams &&\n <SolidListView key={refreshList.toString()} {...listViewParams} handleAddClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} handleEditClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} />\n }\n {readOnlyPermission !== true && formViewParams &&\n <RenderSolidFormEmbededView formik={formik} fieldContext={fieldContext} visibleCreateRelationEntity={visibleCreateRelationEntity} setvisibleCreateRelationEntity={setvisibleCreateRelationEntity} formViewParams={formViewParams} handlePopupClose={handlePopupClose}></RenderSolidFormEmbededView>\n }\n\n <SolidDialog header=\"Save Required\" headerClassName=\"py-2\" contentClassName=\"px-0 pb-0\" className=\"solid-confirm-dialog\" contentStyle={{ borderRadius: 6 }} visible={showSaveParentEntityConfirmationPopup} style={{ width: '20vw' }} onHide={() => { if (!showSaveParentEntityConfirmationPopup) return; setShowSaveParentEntityConfirmationPopup(false); }}>\n <div className=\"p-4\">\n <p className=\"m-0 solid-primary-title\" style={{ fontSize: 16 }}>\n Before Creating {fieldLabel} you need to save {solidFormViewMetaData?.data?.solidView?.model?.displayName ? solidFormViewMetaData?.data?.solidView?.model?.displayName : capitalize(fieldContext.modelName)}.\n Please click save if you wish to proceed ?\n </p>\n <div className=\"flex align-items-center justify-content-start gap-2 mt-3\">\n <SolidButton label=\"Save\" size=\"small\" onClick={saveParentEntity} />\n <SolidButton label=\"Cancel\" size=\"small\" onClick={() => setShowSaveParentEntityConfirmationPopup(false)} variant=\"outline\" className='bg-primary-reverse' />\n </div>\n </div>\n </SolidDialog>\n\n </div>\n );\n}\n\n\nexport const DefaultRelationOneToManyFormViewWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const [visibleCreateRelationEntity, setvisibleCreateRelationEntity] = useState(false);\n const [listViewParams, setListViewParams] = useState<any>()\n const [formViewParams, setformViewParams] = useState<FormViewParams>()\n const [refreshList, setRefreshList] = useState(false); // Added state for rerender\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n const pathname = usePathname();\n const lastPathSegment = pathname.split('/').pop();\n const userKeyField: any = Object.entries(fieldContext.solidFormViewMetaData.data.solidFieldsMetadata).find(([_, value]: any) => value.isUserKey)?.[0];\n\n\n const handleAddOrEditClickForEmbeddedView = (id: any) => {\n\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n id: id,\n embeded: true,\n isCustomCreate: false,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n\n }\n setformViewParams(formviewparams);\n setvisibleCreateRelationEntity(true);\n\n\n }\n\n const handlePopupClose = () => {\n setvisibleCreateRelationEntity(false);\n setRefreshList((prev) => !prev);\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const lisviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n }\n setListViewParams(lisviewparams)\n }\n //Intial Params \n useEffect(() => {\n\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const listviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n }\n setListViewParams(listviewparams);\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n id: \"new\",\n embeded: true,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n isCustomCreate: false\n\n }\n setformViewParams(formviewparams)\n\n }, [readOnlyPermission])\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n\n\n return (\n <div>\n {/* <div className=\"justify-content-center align-items-center\"> */}\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n }\n\n {/* {lastPathSegment === 'new' && <p>Please save the {solidFormViewMetaData.data.solidView.model.displayName} to be able to save {fieldMetadata.displayName}</p>} */}\n {listViewParams &&\n <SolidListView key={refreshList.toString()} {...listViewParams} handleAddClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} handleEditClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} />\n }\n {readOnlyPermission !== true && formViewParams &&\n <RenderSolidFormEmbededView fieldLayoutInfo={fieldLayoutInfo} visibleCreateRelationEntity={visibleCreateRelationEntity} setvisibleCreateRelationEntity={setvisibleCreateRelationEntity} formViewParams={formViewParams} handlePopupClose={handlePopupClose}></RenderSolidFormEmbededView>\n }\n\n\n </div>\n );\n}\n\n\nexport const RenderSolidFormEmbededView = ({ fieldLayoutInfo, customCreateHandler, visibleCreateRelationEntity, setvisibleCreateRelationEntity, formViewParams, handlePopupClose }: any) => {\n const router = useRouter();\n\n const params: FormViewParams = {\n moduleName: formViewParams.moduleName,\n id: formViewParams?.id,\n modelName: camelCase(formViewParams.modelName),\n embeded: formViewParams.embeded,\n customLayout: formViewParams.customLayout,\n customCreateHandler: ((values: any) => {\n setvisibleCreateRelationEntity(false);\n customCreateHandler(values)\n }),\n inlineCreateAutoSave: formViewParams.inlineCreateAutoSave,\n handlePopupClose: handlePopupClose,\n parentFieldName: formViewParams.parentFieldName,\n parentData: formViewParams.parentData,\n onEmbeddedFormSave: formViewParams.onEmbeddedFormSave,\n isCustomCreate: formViewParams.isCustomCreate\n }\n\n return (\n <div className=\"many-to-many-add\" >\n {/* <Button icon=\"si si-plus\"\n rounded\n outlined\n aria-label=\"Filter\"\n type=\"button\"\n onClick={() => setvisibleCreateRelationEntity(true)}\n /> */}\n <SolidDialog\n visible={visibleCreateRelationEntity}\n showHeader={false}\n className=\"solid-dialog\"\n style={{\n width: fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.width ?? \"60vw\",\n height: fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.height ?? \"auto\"\n }}\n onHide={() => {\n if (!visibleCreateRelationEntity) return;\n setvisibleCreateRelationEntity(false);\n }}\n breakpoints={{ '1199px': '35rem', \"767px\": '85vw', \"550px\": '90vw' }}\n\n >\n {params &&\n <SolidFormView {...params} />\n }\n </SolidDialog>\n </div>\n )\n}\n\n\nexport const PseudoRelationOneToManyFormWidget = ({ formData, field, fieldsMetadata, viewMetadata, formViewData }: SolidFormWidgetProps) => {\n\n const fieldLayoutInfo = field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const fieldLabel = fieldLayoutInfo.attrs.label;\n const fieldDescription = fieldLayoutInfo.attrs.description;\n const [visibleCreateRelationEntity, setvisibleCreateRelationEntity] = useState(false);\n const [listViewParams, setListViewParams] = useState<any>()\n const [formViewParams, setformViewParams] = useState<FormViewParams | null>(null)\n const [refreshList, setRefreshList] = useState(false); // Added state for rerender\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldLayoutInfo.readOnly ? fieldLayoutInfo.readOnly : false;\n const pathname = usePathname();\n\n const parentModelName = fieldLayoutInfo?.attrs?.parentModelName;\n const childModelName = fieldLayoutInfo?.attrs?.childModelName;\n const parentFieldName = fieldLayoutInfo?.attrs?.parentFieldName;\n const childFieldName = fieldLayoutInfo?.attrs?.childFieldName;\n const parentModuleName = fieldLayoutInfo?.attrs?.parentModuleName;\n const childModuleName = fieldLayoutInfo?.attrs?.childModuleName\n\n\n const buildCustomFilter = ({ childFieldName, parentFieldName, formViewData, fieldLayoutInfo,\n }: {\n childFieldName?: string;\n parentFieldName?: string;\n formViewData?: any;\n fieldLayoutInfo?: any;\n }) => {\n const baseFilter =\n childFieldName && formViewData?.data\n ? {\n [childFieldName]: {\n $eq: formViewData.data[parentFieldName as string],\n },\n }\n : { id: { $eq: -1 } };\n\n // 2️⃣ Optional whereClause merge\n const whereClause = fieldLayoutInfo?.attrs?.whereClause;\n\n if (!whereClause) return { $and: [baseFilter] };\n\n try {\n const parsedWhereClause = JSON.parse(whereClause);\n\n // If both filters exist, merge safely\n return {\n $and: [baseFilter, parsedWhereClause]\n };\n } catch (error) {\n console.error(\"Failed to parse whereClause:\", error);\n return { $and: [baseFilter] };\n }\n };\n\n\n\n const handleAddOrEditClickForEmbeddedView = (id: any) => {\n\n const formviewparams: FormViewParams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n id: id,\n embeded: true,\n isCustomCreate: false,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n parentFieldName: parentFieldName,\n parentData: childFieldName && formViewData?.data && formViewData?.data[parentFieldName] ? { [childFieldName]: formViewData.data[parentFieldName] } : {},\n onEmbeddedFormSave: fieldLayoutInfo.onEmbeddedFormSave ? fieldLayoutInfo : false\n }\n setformViewParams(formviewparams);\n setvisibleCreateRelationEntity(true);\n\n\n }\n\n const handlePopupClose = () => {\n setvisibleCreateRelationEntity(false);\n setRefreshList((prev) => !prev);\n const lisviewparams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: formViewData && formViewData?.data ? formViewData?.data?.id : 'new',\n customFilter: buildCustomFilter({\n childFieldName,\n parentFieldName,\n formViewData,\n fieldLayoutInfo,\n })\n }\n setListViewParams(lisviewparams)\n }\n //Intial Params \n useEffect(() => {\n\n const listviewparams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: formViewData && formViewData?.data ? formViewData?.data?.id : 'new',\n customFilter: buildCustomFilter({\n childFieldName,\n parentFieldName,\n formViewData,\n fieldLayoutInfo,\n })\n }\n setListViewParams(listviewparams);\n const formviewparams: FormViewParams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n id: \"new\",\n embeded: true,\n isCustomCreate: false,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n parentFieldName: parentFieldName,\n parentData: childFieldName && formViewData && formViewData?.data && formViewData?.data[parentFieldName] ? { [childFieldName]: formViewData.data[parentFieldName] } : {},\n onEmbeddedFormSave: formViewData && formViewData.onEmbeddedFormSave\n\n }\n\n setformViewParams(formviewparams)\n\n\n }, [readOnlyPermission, formViewData])\n\n return (\n <div>\n {/* <div className=\"justify-content-center align-items-center\"> */}\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {/* {fieldMetadata.required && <span className=\"text-red-500\"> *</span>} */}\n {/* <SolidFieldTooltip fieldContext={fieldContext} /> */}\n </label>\n }\n\n {/* {lastPathSegment === 'new' && <p>Please save the {solidFormViewMetaData.data.solidView.model.displayName} to be able to save {fieldMetadata.displayName}</p>} */}\n {listViewParams &&\n <SolidListView key={refreshList.toString()} {...listViewParams} handleAddClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} handleEditClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} />\n }\n {readOnlyPermission !== true && formViewParams &&\n <RenderSolidFormEmbededView fieldLayoutInfo={fieldLayoutInfo} visibleCreateRelationEntity={visibleCreateRelationEntity} setvisibleCreateRelationEntity={setvisibleCreateRelationEntity} formViewParams={formViewParams} handlePopupClose={handlePopupClose}></RenderSolidFormEmbededView>\n }\n\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"SolidRelationOneToManyField.js","sourceRoot":"","sources":["../../../../../../src/components/core/form/fields/relations/SolidRelationOneToManyField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { SolidListView } from \"../../../../../components/core/list/SolidListView\";\nimport { camelCase, capitalize } from \"lodash\";\nimport { useEffect, useState } from \"react\";\nimport * as Yup from 'yup';\nimport SolidFormView from '../../../../../components/core/form/SolidFormView';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"../ISolidField\";\nimport { usePathname } from \"../../../../../hooks/usePathname\";\nimport { useRouter } from \"../../../../../hooks/useRouter\";\nimport { getExtensionComponent } from \"../../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps, SolidFormWidgetProps } from \"../../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../../components/common/SolidFieldTooltip\";\nimport { SolidButton } from \"../../../../shad-cn-ui/SolidButton\";\nimport { SolidDialog, SolidDialogBody, SolidDialogClose, SolidDialogHeader, SolidDialogTitle } from \"../../../../shad-cn-ui/SolidDialog\";\nimport { SolidMessage } from \"../../../../shad-cn-ui/SolidMessage\";\nimport { ERROR_MESSAGES } from \"../../../../../constants/error-messages\";\nimport styles from \"../solidFields.module.css\";\n\nexport type FormViewParams = {\n moduleName: any;\n id: any;\n embeded: any;\n isCustomCreate: any;\n customLayout: any;\n modelName: any;\n parentFieldName?: any;\n parentData: any;\n onEmbeddedFormSave: any;\n inlineCreateAutoSave: any;\n customCreateHandler?: any;\n handlePopupClose?: any\n}\n\nexport class SolidRelationOneToManyField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n initialValue(): any {\n\n // const manyToOneFieldData = this.fieldContext.data[this.fieldContext.field.attrs.name];\n // const fieldMetadata = this.fieldContext.fieldMetadata;\n // const userKeyField = fieldMetadata.relationModel.userKeyField.name;\n // const manyToOneColVal = manyToOneFieldData ? manyToOneFieldData[userKeyField] : '';\n\n // return { label: manyToOneColVal || '', value: manyToOneFieldData?.id || '' };\n\n return '';\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n // if(!value || value.length === 0) {\n // formData.append(`${fieldLayoutInfo.attrs.name}Command`, \"clear\");\n\n // }\n if (value) {\n formData.append(`${fieldLayoutInfo.attrs.name}Id`, value.value);\n }\n }\n\n validationSchema(): Yup.Schema {\n let schema = Yup.object();\n\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n // 1. required \n if (fieldMetadata.required) {\n schema = schema.required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n }\n return schema;\n }\n\n render(formik: FormikObject) {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n\n const userKeyFieldName = fieldMetadata.relationModel?.userKeyField?.name;\n\n let DynamicWidget = getExtensionComponent(\"SolidFormFieldRelationViewModeWidget\");\n const widgetProps = {\n label: fieldLabel,\n value: (this.fieldContext.data?.[fieldLayoutInfo.attrs.name] || []).map(\n (item: any) => ({ label: item[userKeyFieldName] ?? '' })\n ),\n layout: fieldLayoutInfo\n }\n\n // DefaultRelationOneToManyFormEditWidget\n\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultRelationOneToManyFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultRelationOneToManyFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n return (\n <>\n <div className={className}>\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" && (\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n )\n }\n </div>\n </>\n );\n\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n\n\n}\n\n\n\nconst buildRelationCustomFilter = ({\n fieldContext,\n fieldLayoutInfo,\n}: {\n fieldContext: any;\n fieldLayoutInfo?: any;\n}) => {\n if (!fieldContext) {\n return { id: { $eq: -1 } };\n }\n const relationFieldName =\n fieldContext.fieldMetadata?.relationCoModelFieldName ??\n fieldContext.modelName;\n\n const parentId = fieldContext.data?.id ?? -1;\n\n\n const baseFilter = {\n [relationFieldName]: {\n id: { $eq: parentId },\n },\n };\n\n const whereClause = fieldLayoutInfo?.attrs?.whereClause;\n\n if (!whereClause) return { $and: [baseFilter] };\n\n try {\n const parsedWhereClause = JSON.parse(whereClause);\n\n return {\n $and: [baseFilter, parsedWhereClause],\n };\n } catch (error) {\n console.error(\"Failed to parse whereClause:\", error);\n return { $and: [baseFilter] };\n }\n};\n\n\nexport const DefaultRelationOneToManyFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const router = useRouter();\n\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const [visibleCreateRelationEntity, setvisibleCreateRelationEntity] = useState(false);\n const [listViewParams, setListViewParams] = useState<any>()\n const [formViewParams, setformViewParams] = useState<FormViewParams>()\n const [refreshList, setRefreshList] = useState(false); // Added state for rerender\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n const pathname = usePathname();\n const lastPathSegment = pathname.split('/').pop();\n const userKeyField: any = Object.entries(fieldContext.solidFormViewMetaData.data.solidFieldsMetadata).find(([_, value]: any) => value.isUserKey)?.[0];\n const [showSaveParentEntityConfirmationPopup, setShowSaveParentEntityConfirmationPopup] = useState(false);\n\n useEffect(() => {\n const urlParams = new URLSearchParams(window.location.search);\n const childEntity = urlParams.get('childEntity');\n if (childEntity === fieldLayoutInfo.attrs.name && lastPathSegment !== \"new\") {\n handleAddOrEditClickForEmbeddedView('new');\n }\n }, [])\n\n const handleAddOrEditClickForEmbeddedView = (id: any) => {\n if (lastPathSegment === \"new\") {\n setShowSaveParentEntityConfirmationPopup(true);\n } else {\n\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n id: id,\n embeded: true,\n isCustomCreate: false,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n }\n setformViewParams(formviewparams);\n setvisibleCreateRelationEntity(true);\n }\n }\n\n const handlePopupClose = () => {\n setvisibleCreateRelationEntity(false);\n const currentUrl = new URL(window.location.href);\n currentUrl.searchParams.delete('childEntity');\n router.push(currentUrl.toString());\n setRefreshList((prev) => !prev);\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const lisviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n }\n setListViewParams(lisviewparams)\n }\n\n //Intial Params \n useEffect(() => {\n\n\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const listviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n\n }\n setListViewParams(listviewparams);\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n id: \"new\",\n embeded: true,\n isCustomCreate: false,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n }\n\n\n\n setformViewParams(formviewparams)\n\n }, [readOnlyPermission])\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n const saveParentEntity = async () => {\n const currentPath = window.location.pathname;\n const currentUrl = new URL(window.location.href);\n currentUrl.searchParams.set('childEntity', fieldLayoutInfo.attrs.name);\n currentUrl.searchParams.set('viewMode', 'edit');\n const updatedPath = currentUrl.toString();\n try {\n console.log(\"updatedPath\", updatedPath);\n router.push(updatedPath);\n await formik.handleSubmit();\n } catch {\n\n }\n setShowSaveParentEntityConfirmationPopup(false);\n };\n\n\n\n return (\n <div>\n {/* <div className=\"justify-content-center align-items-center\"> */}\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n }\n\n {/* {lastPathSegment === 'new' && <p>Please save the {solidFormViewMetaData.data.solidView.model.displayName} to be able to save {fieldMetadata.displayName}</p>} */}\n {listViewParams &&\n <SolidListView key={refreshList.toString()} {...listViewParams} handleAddClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} handleEditClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} />\n }\n {readOnlyPermission !== true && formViewParams &&\n <RenderSolidFormEmbededView formik={formik} fieldContext={fieldContext} visibleCreateRelationEntity={visibleCreateRelationEntity} setvisibleCreateRelationEntity={setvisibleCreateRelationEntity} formViewParams={formViewParams} handlePopupClose={handlePopupClose}></RenderSolidFormEmbededView>\n }\n\n <SolidDialog\n open={showSaveParentEntityConfirmationPopup}\n onOpenChange={setShowSaveParentEntityConfirmationPopup}\n className=\"solid-confirm-dialog solid-field-confirm-dialog\"\n style={{ width: \"min(420px, calc(100vw - 2rem))\" }}\n >\n <SolidDialogHeader className=\"solid-field-confirm-header\">\n <SolidDialogTitle>Save Required</SolidDialogTitle>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogBody className=\"solid-field-confirm-dialog-body\">\n <p className=\"solid-field-confirm-message\">\n Before creating {fieldLabel}, you need to save{\" \"}\n {solidFormViewMetaData?.data?.solidView?.model?.displayName\n ? solidFormViewMetaData.data.solidView.model.displayName\n : capitalize(fieldContext.modelName)}\n . Please save first if you want to continue.\n </p>\n </SolidDialogBody>\n <div className=\"solid-radix-dialog-footer solid-field-confirm-actions\">\n <SolidButton label=\"Save\" size=\"sm\" onClick={saveParentEntity} autoFocus />\n <SolidButton\n label=\"Cancel\"\n size=\"sm\"\n onClick={() => setShowSaveParentEntityConfirmationPopup(false)}\n variant=\"outline\"\n />\n </div>\n </SolidDialog>\n\n </div>\n );\n}\n\n\nexport const DefaultRelationOneToManyFormViewWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const [visibleCreateRelationEntity, setvisibleCreateRelationEntity] = useState(false);\n const [listViewParams, setListViewParams] = useState<any>()\n const [formViewParams, setformViewParams] = useState<FormViewParams>()\n const [refreshList, setRefreshList] = useState(false); // Added state for rerender\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n const pathname = usePathname();\n const lastPathSegment = pathname.split('/').pop();\n const userKeyField: any = Object.entries(fieldContext.solidFormViewMetaData.data.solidFieldsMetadata).find(([_, value]: any) => value.isUserKey)?.[0];\n\n\n const handleAddOrEditClickForEmbeddedView = (id: any) => {\n\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n id: id,\n embeded: true,\n isCustomCreate: false,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n\n }\n setformViewParams(formviewparams);\n setvisibleCreateRelationEntity(true);\n\n\n }\n\n const handlePopupClose = () => {\n setvisibleCreateRelationEntity(false);\n setRefreshList((prev) => !prev);\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const lisviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n }\n setListViewParams(lisviewparams)\n }\n //Intial Params \n useEffect(() => {\n\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const listviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n }\n setListViewParams(listviewparams);\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n id: \"new\",\n embeded: true,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n isCustomCreate: false\n\n }\n setformViewParams(formviewparams)\n\n }, [readOnlyPermission])\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n\n\n return (\n <div>\n {/* <div className=\"justify-content-center align-items-center\"> */}\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n }\n\n {/* {lastPathSegment === 'new' && <p>Please save the {solidFormViewMetaData.data.solidView.model.displayName} to be able to save {fieldMetadata.displayName}</p>} */}\n {listViewParams &&\n <SolidListView key={refreshList.toString()} {...listViewParams} handleAddClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} handleEditClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} />\n }\n {readOnlyPermission !== true && formViewParams &&\n <RenderSolidFormEmbededView fieldLayoutInfo={fieldLayoutInfo} visibleCreateRelationEntity={visibleCreateRelationEntity} setvisibleCreateRelationEntity={setvisibleCreateRelationEntity} formViewParams={formViewParams} handlePopupClose={handlePopupClose}></RenderSolidFormEmbededView>\n }\n\n\n </div>\n );\n}\n\n\nexport const RenderSolidFormEmbededView = ({ fieldLayoutInfo, customCreateHandler, visibleCreateRelationEntity, setvisibleCreateRelationEntity, formViewParams, handlePopupClose }: any) => {\n const router = useRouter();\n\n const params: FormViewParams = {\n moduleName: formViewParams.moduleName,\n id: formViewParams?.id,\n modelName: camelCase(formViewParams.modelName),\n embeded: formViewParams.embeded,\n customLayout: formViewParams.customLayout,\n customCreateHandler: ((values: any) => {\n setvisibleCreateRelationEntity(false);\n customCreateHandler(values)\n }),\n inlineCreateAutoSave: formViewParams.inlineCreateAutoSave,\n handlePopupClose: handlePopupClose,\n parentFieldName: formViewParams.parentFieldName,\n parentData: formViewParams.parentData,\n onEmbeddedFormSave: formViewParams.onEmbeddedFormSave,\n isCustomCreate: formViewParams.isCustomCreate\n }\n\n return (\n <div className=\"many-to-many-add\" >\n {/* <Button icon=\"si si-plus\"\n rounded\n outlined\n aria-label=\"Filter\"\n type=\"button\"\n onClick={() => setvisibleCreateRelationEntity(true)}\n /> */}\n <SolidDialog\n open={visibleCreateRelationEntity}\n onOpenChange={setvisibleCreateRelationEntity}\n className=\"solid-dialog\"\n style={{\n width: fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.width ?? \"60vw\",\n height: fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.height ?? \"auto\"\n }}\n showHeader={false}\n breakpoints={{ '1199px': '35rem', \"767px\": '85vw', \"550px\": '90vw' }}\n\n >\n {params &&\n <SolidFormView {...params} />\n }\n </SolidDialog>\n </div>\n )\n}\n\n\nexport const PseudoRelationOneToManyFormWidget = ({ formData, field, fieldsMetadata, viewMetadata, formViewData }: SolidFormWidgetProps) => {\n\n const fieldLayoutInfo = field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const fieldLabel = fieldLayoutInfo.attrs.label;\n const fieldDescription = fieldLayoutInfo.attrs.description;\n const [visibleCreateRelationEntity, setvisibleCreateRelationEntity] = useState(false);\n const [listViewParams, setListViewParams] = useState<any>()\n const [formViewParams, setformViewParams] = useState<FormViewParams | null>(null)\n const [refreshList, setRefreshList] = useState(false); // Added state for rerender\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldLayoutInfo.readOnly ? fieldLayoutInfo.readOnly : false;\n const pathname = usePathname();\n\n const parentModelName = fieldLayoutInfo?.attrs?.parentModelName;\n const childModelName = fieldLayoutInfo?.attrs?.childModelName;\n const parentFieldName = fieldLayoutInfo?.attrs?.parentFieldName;\n const childFieldName = fieldLayoutInfo?.attrs?.childFieldName;\n const parentModuleName = fieldLayoutInfo?.attrs?.parentModuleName;\n const childModuleName = fieldLayoutInfo?.attrs?.childModuleName\n\n\n const buildCustomFilter = ({ childFieldName, parentFieldName, formViewData, fieldLayoutInfo,\n }: {\n childFieldName?: string;\n parentFieldName?: string;\n formViewData?: any;\n fieldLayoutInfo?: any;\n }) => {\n const baseFilter =\n childFieldName && formViewData?.data\n ? {\n [childFieldName]: {\n $eq: formViewData.data[parentFieldName as string],\n },\n }\n : { id: { $eq: -1 } };\n\n // 2️⃣ Optional whereClause merge\n const whereClause = fieldLayoutInfo?.attrs?.whereClause;\n\n if (!whereClause) return { $and: [baseFilter] };\n\n try {\n const parsedWhereClause = JSON.parse(whereClause);\n\n // If both filters exist, merge safely\n return {\n $and: [baseFilter, parsedWhereClause]\n };\n } catch (error) {\n console.error(\"Failed to parse whereClause:\", error);\n return { $and: [baseFilter] };\n }\n };\n\n\n\n const handleAddOrEditClickForEmbeddedView = (id: any) => {\n\n const formviewparams: FormViewParams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n id: id,\n embeded: true,\n isCustomCreate: false,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n parentFieldName: parentFieldName,\n parentData: childFieldName && formViewData?.data && formViewData?.data[parentFieldName] ? { [childFieldName]: formViewData.data[parentFieldName] } : {},\n onEmbeddedFormSave: fieldLayoutInfo.onEmbeddedFormSave ? fieldLayoutInfo : false\n }\n setformViewParams(formviewparams);\n setvisibleCreateRelationEntity(true);\n\n\n }\n\n const handlePopupClose = () => {\n setvisibleCreateRelationEntity(false);\n setRefreshList((prev) => !prev);\n const lisviewparams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: formViewData && formViewData?.data ? formViewData?.data?.id : 'new',\n customFilter: buildCustomFilter({\n childFieldName,\n parentFieldName,\n formViewData,\n fieldLayoutInfo,\n })\n }\n setListViewParams(lisviewparams)\n }\n //Intial Params \n useEffect(() => {\n\n const listviewparams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: formViewData && formViewData?.data ? formViewData?.data?.id : 'new',\n customFilter: buildCustomFilter({\n childFieldName,\n parentFieldName,\n formViewData,\n fieldLayoutInfo,\n })\n }\n setListViewParams(listviewparams);\n const formviewparams: FormViewParams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n id: \"new\",\n embeded: true,\n isCustomCreate: false,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n parentFieldName: parentFieldName,\n parentData: childFieldName && formViewData && formViewData?.data && formViewData?.data[parentFieldName] ? { [childFieldName]: formViewData.data[parentFieldName] } : {},\n onEmbeddedFormSave: formViewData && formViewData.onEmbeddedFormSave\n\n }\n\n setformViewParams(formviewparams)\n\n\n }, [readOnlyPermission, formViewData])\n\n return (\n <div>\n {/* <div className=\"justify-content-center align-items-center\"> */}\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {/* {fieldMetadata.required && <span className=\"text-red-500\"> *</span>} */}\n {/* <SolidFieldTooltip fieldContext={fieldContext} /> */}\n </label>\n }\n\n {/* {lastPathSegment === 'new' && <p>Please save the {solidFormViewMetaData.data.solidView.model.displayName} to be able to save {fieldMetadata.displayName}</p>} */}\n {listViewParams &&\n <SolidListView key={refreshList.toString()} {...listViewParams} handleAddClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} handleEditClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} />\n }\n {readOnlyPermission !== true && formViewParams &&\n <RenderSolidFormEmbededView fieldLayoutInfo={fieldLayoutInfo} visibleCreateRelationEntity={visibleCreateRelationEntity} setvisibleCreateRelationEntity={setvisibleCreateRelationEntity} formViewParams={formViewParams} handlePopupClose={handlePopupClose}></RenderSolidFormEmbededView>\n }\n\n </div>\n );\n}\n"]}
@@ -11,7 +11,7 @@ import { getExtensionComponent } from "../../../../../helpers/registry";
11
11
  import { SolidFormFieldWidgetProps, SolidFormWidgetProps } from "../../../../../types/solid-core";
12
12
  import { SolidFieldTooltip } from "../../../../../components/common/SolidFieldTooltip";
13
13
  import { SolidButton } from "../../../../shad-cn-ui/SolidButton";
14
- import { SolidDialog } from "../../../../shad-cn-ui/SolidDialog";
14
+ import { SolidDialog, SolidDialogBody, SolidDialogClose, SolidDialogHeader, SolidDialogTitle } from "../../../../shad-cn-ui/SolidDialog";
15
15
  import { SolidMessage } from "../../../../shad-cn-ui/SolidMessage";
16
16
  import { ERROR_MESSAGES } from "../../../../../constants/error-messages";
17
17
  import styles from "../solidFields.module.css";
@@ -336,16 +336,33 @@ export const DefaultRelationOneToManyFormEditWidget = ({ formik, fieldContext }:
336
336
  <RenderSolidFormEmbededView formik={formik} fieldContext={fieldContext} visibleCreateRelationEntity={visibleCreateRelationEntity} setvisibleCreateRelationEntity={setvisibleCreateRelationEntity} formViewParams={formViewParams} handlePopupClose={handlePopupClose}></RenderSolidFormEmbededView>
337
337
  }
338
338
 
339
- <SolidDialog header="Save Required" headerClassName="py-2" contentClassName="px-0 pb-0" className="solid-confirm-dialog" contentStyle={{ borderRadius: 6 }} visible={showSaveParentEntityConfirmationPopup} style={{ width: '20vw' }} onHide={() => { if (!showSaveParentEntityConfirmationPopup) return; setShowSaveParentEntityConfirmationPopup(false); }}>
340
- <div className="p-4">
341
- <p className="m-0 solid-primary-title" style={{ fontSize: 16 }}>
342
- Before Creating {fieldLabel} you need to save {solidFormViewMetaData?.data?.solidView?.model?.displayName ? solidFormViewMetaData?.data?.solidView?.model?.displayName : capitalize(fieldContext.modelName)}.
343
- Please click save if you wish to proceed ?
339
+ <SolidDialog
340
+ open={showSaveParentEntityConfirmationPopup}
341
+ onOpenChange={setShowSaveParentEntityConfirmationPopup}
342
+ className="solid-confirm-dialog solid-field-confirm-dialog"
343
+ style={{ width: "min(420px, calc(100vw - 2rem))" }}
344
+ >
345
+ <SolidDialogHeader className="solid-field-confirm-header">
346
+ <SolidDialogTitle>Save Required</SolidDialogTitle>
347
+ <SolidDialogClose />
348
+ </SolidDialogHeader>
349
+ <SolidDialogBody className="solid-field-confirm-dialog-body">
350
+ <p className="solid-field-confirm-message">
351
+ Before creating {fieldLabel}, you need to save{" "}
352
+ {solidFormViewMetaData?.data?.solidView?.model?.displayName
353
+ ? solidFormViewMetaData.data.solidView.model.displayName
354
+ : capitalize(fieldContext.modelName)}
355
+ . Please save first if you want to continue.
344
356
  </p>
345
- <div className="flex align-items-center justify-content-start gap-2 mt-3">
346
- <SolidButton label="Save" size="small" onClick={saveParentEntity} />
347
- <SolidButton label="Cancel" size="small" onClick={() => setShowSaveParentEntityConfirmationPopup(false)} variant="outline" className='bg-primary-reverse' />
348
- </div>
357
+ </SolidDialogBody>
358
+ <div className="solid-radix-dialog-footer solid-field-confirm-actions">
359
+ <SolidButton label="Save" size="sm" onClick={saveParentEntity} autoFocus />
360
+ <SolidButton
361
+ label="Cancel"
362
+ size="sm"
363
+ onClick={() => setShowSaveParentEntityConfirmationPopup(false)}
364
+ variant="outline"
365
+ />
349
366
  </div>
350
367
  </SolidDialog>
351
368
 
@@ -508,17 +525,14 @@ export const RenderSolidFormEmbededView = ({ fieldLayoutInfo, customCreateHandle
508
525
  onClick={() => setvisibleCreateRelationEntity(true)}
509
526
  /> */}
510
527
  <SolidDialog
511
- visible={visibleCreateRelationEntity}
512
- showHeader={false}
528
+ open={visibleCreateRelationEntity}
529
+ onOpenChange={setvisibleCreateRelationEntity}
513
530
  className="solid-dialog"
514
531
  style={{
515
532
  width: fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.width ?? "60vw",
516
533
  height: fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.height ?? "auto"
517
534
  }}
518
- onHide={() => {
519
- if (!visibleCreateRelationEntity) return;
520
- setvisibleCreateRelationEntity(false);
521
- }}
535
+ showHeader={false}
522
536
  breakpoints={{ '1199px': '35rem', "767px": '85vw', "550px": '90vw' }}
523
537
 
524
538
  >
@@ -11,18 +11,20 @@
11
11
  .fieldWrapper {
12
12
  display: flex;
13
13
  flex-direction: column;
14
- gap: 5px;
15
- margin-top: 12px;
14
+ gap: 4px;
15
+ margin-top: 10px;
16
16
  }
17
17
 
18
18
  .fieldLabel {
19
- font-size: 12px;
20
- color: var(--muted-foreground);
19
+ font-size: 11px;
20
+ color: color-mix(in srgb, var(--muted-foreground) 84%, var(--background) 16%);
21
21
  font-weight: 500;
22
22
  display: flex;
23
23
  align-items: center;
24
- gap: 3px;
24
+ gap: 4px;
25
25
  margin: 0;
26
+ line-height: 1.35;
27
+ letter-spacing: 0.01em;
26
28
  }
27
29
 
28
30
  .fieldInput {
@@ -30,7 +32,7 @@
30
32
  height: 34px !important;
31
33
  border-radius: 8px !important;
32
34
  border: 1px solid var(--border) !important;
33
- background: var(--background) !important;
35
+ background: var(--solid-form-control-bg, color-mix(in srgb, var(--card) 98%, var(--background) 2%)) !important;
34
36
  color: var(--foreground) !important;
35
37
  padding: 0 11px !important;
36
38
  font-size: 13px !important;
@@ -48,14 +50,14 @@
48
50
  .fieldInput:disabled {
49
51
  opacity: 0.75 !important;
50
52
  cursor: not-allowed !important;
51
- background: color-mix(in srgb, var(--muted) 35%, transparent) !important;
53
+ background: var(--solid-form-control-bg-disabled, color-mix(in srgb, var(--muted) 18%, var(--card) 82%)) !important;
52
54
  }
53
55
 
54
56
  .fieldTextarea {
55
57
  width: 100% !important;
56
58
  border-radius: 8px !important;
57
59
  border: 1px solid var(--border) !important;
58
- background: var(--background) !important;
60
+ background: var(--solid-form-control-bg, color-mix(in srgb, var(--card) 98%, var(--background) 2%)) !important;
59
61
  color: var(--foreground) !important;
60
62
  padding: 8px 11px !important;
61
63
  font-size: 13px !important;
@@ -75,7 +77,7 @@
75
77
  .fieldTextarea:disabled {
76
78
  opacity: 0.75 !important;
77
79
  cursor: not-allowed !important;
78
- background: color-mix(in srgb, var(--muted) 35%, transparent) !important;
80
+ background: var(--solid-form-control-bg-disabled, color-mix(in srgb, var(--muted) 18%, var(--card) 82%)) !important;
79
81
  }
80
82
 
81
83
  /* InputNumber wrapper — className lands on the outer span */
@@ -92,7 +94,7 @@
92
94
  height: 34px !important;
93
95
  border-radius: 8px !important;
94
96
  border: 1px solid var(--border) !important;
95
- background: var(--background) !important;
97
+ background: var(--solid-form-control-bg, color-mix(in srgb, var(--card) 98%, var(--background) 2%)) !important;
96
98
  color: var(--foreground) !important;
97
99
  padding: 0 11px !important;
98
100
  font-size: 13px !important;
@@ -109,7 +111,7 @@
109
111
  .fieldNumberWrapper :global(.p-inputnumber-input):disabled {
110
112
  opacity: 0.75 !important;
111
113
  cursor: not-allowed !important;
112
- background: color-mix(in srgb, var(--muted) 35%, transparent) !important;
114
+ background: var(--solid-form-control-bg-disabled, color-mix(in srgb, var(--muted) 18%, var(--card) 82%)) !important;
113
115
  }
114
116
 
115
117
  .fieldError {
@@ -178,15 +180,17 @@
178
180
  .fieldViewWrapper {
179
181
  display: flex;
180
182
  flex-direction: column;
181
- gap: 3px;
182
- margin-top: 12px;
183
+ gap: 2px;
184
+ margin-top: 10px;
183
185
  }
184
186
 
185
187
  .fieldViewLabel {
186
188
  margin: 0;
187
- font-size: 12px;
188
- color: var(--muted-foreground);
189
+ font-size: 11px;
190
+ color: color-mix(in srgb, var(--muted-foreground) 84%, var(--background) 16%);
189
191
  font-weight: 500;
192
+ line-height: 1.35;
193
+ letter-spacing: 0.01em;
190
194
  }
191
195
 
192
196
  .fieldViewValue {
@@ -196,3 +200,70 @@
196
200
  min-height: 18px;
197
201
  line-height: 1.4;
198
202
  }
203
+
204
+ .mediaAttachmentCard {
205
+ display: flex;
206
+ align-items: center;
207
+ border: 1px solid var(--border);
208
+ border-radius: 12px;
209
+ background: color-mix(in srgb, var(--card) 97%, var(--background) 3%);
210
+ padding: 12px 14px;
211
+ box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
212
+ }
213
+
214
+ .mediaAttachmentCardView {
215
+ margin-top: 10px;
216
+ }
217
+
218
+ .mediaAttachmentRow {
219
+ width: 100%;
220
+ }
221
+
222
+ .mediaAttachmentMeta {
223
+ min-width: 0;
224
+ display: flex;
225
+ flex-direction: column;
226
+ gap: 6px;
227
+ }
228
+
229
+ .mediaAttachmentName {
230
+ appearance: none;
231
+ background: transparent;
232
+ border: 0;
233
+ padding: 0;
234
+ margin: 0;
235
+ text-align: left;
236
+ color: var(--foreground);
237
+ font-size: 13px;
238
+ font-weight: 600;
239
+ line-height: 1.35;
240
+ letter-spacing: -0.01em;
241
+ cursor: pointer;
242
+ min-width: 0;
243
+ flex: 1;
244
+ white-space: nowrap;
245
+ overflow: hidden;
246
+ text-overflow: ellipsis;
247
+ transition: color 0.15s ease;
248
+ }
249
+
250
+ .mediaAttachmentName:hover {
251
+ color: var(--primary-color, var(--primary));
252
+ }
253
+
254
+ .mediaAttachmentName:focus-visible {
255
+ outline: none;
256
+ color: var(--primary-color, var(--primary));
257
+ }
258
+
259
+ .mediaAttachmentSize {
260
+ font-size: 11.5px;
261
+ line-height: 1.3;
262
+ font-weight: 500;
263
+ color: var(--muted-foreground);
264
+ letter-spacing: 0.01em;
265
+ }
266
+
267
+ .mediaAttachmentActions {
268
+ flex-shrink: 0;
269
+ }