@solidstarters/solid-core-ui 1.1.17 → 1.1.19

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 (295) hide show
  1. package/dist/components/Svg/FileSvg.d.ts +4 -0
  2. package/dist/components/Svg/FileSvg.d.ts.map +1 -0
  3. package/dist/components/Svg/FileSvg.js +15 -0
  4. package/dist/components/Svg/FileSvg.js.map +1 -0
  5. package/dist/components/auth/AuthLayout.d.ts.map +1 -1
  6. package/dist/components/auth/AuthLayout.js +6 -6
  7. package/dist/components/auth/AuthLayout.js.map +1 -1
  8. package/dist/components/auth/SolidForgotPassword.js +1 -1
  9. package/dist/components/auth/SolidForgotPassword.js.map +1 -1
  10. package/dist/components/auth/SolidInitialLoginOtp.js +1 -1
  11. package/dist/components/auth/SolidInitialLoginOtp.js.map +1 -1
  12. package/dist/components/auth/SolidInitiateRegisterOtp.js +1 -1
  13. package/dist/components/auth/SolidInitiateRegisterOtp.js.map +1 -1
  14. package/dist/components/auth/SolidResetPassword.js +1 -1
  15. package/dist/components/auth/SolidResetPassword.js.map +1 -1
  16. package/dist/components/common/DropzonePlaceholder.d.ts +6 -1
  17. package/dist/components/common/DropzonePlaceholder.d.ts.map +1 -1
  18. package/dist/components/common/DropzonePlaceholder.js +8 -2
  19. package/dist/components/common/DropzonePlaceholder.js.map +1 -1
  20. package/dist/components/common/FileReaderExt.d.ts.map +1 -1
  21. package/dist/components/common/FileReaderExt.js +2 -1
  22. package/dist/components/common/FileReaderExt.js.map +1 -1
  23. package/dist/components/common/SingleSelectAutoCompleteField.d.ts.map +1 -1
  24. package/dist/components/common/SingleSelectAutoCompleteField.js +3 -1
  25. package/dist/components/common/SingleSelectAutoCompleteField.js.map +1 -1
  26. package/dist/components/core/common/SolidConfigureLayoutElement.d.ts.map +1 -1
  27. package/dist/components/core/common/SolidConfigureLayoutElement.js +28 -6
  28. package/dist/components/core/common/SolidConfigureLayoutElement.js.map +1 -1
  29. package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
  30. package/dist/components/core/common/SolidGlobalSearchElement.js +6 -6
  31. package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
  32. package/dist/components/core/form/SolidFormView.js +3 -5
  33. package/dist/components/core/form/SolidFormView.js.map +1 -1
  34. package/dist/components/core/form/fields/SolidBooleanField.d.ts.map +1 -1
  35. package/dist/components/core/form/fields/SolidBooleanField.js +9 -7
  36. package/dist/components/core/form/fields/SolidBooleanField.js.map +1 -1
  37. package/dist/components/core/form/fields/SolidDateField.d.ts.map +1 -1
  38. package/dist/components/core/form/fields/SolidDateField.js +7 -5
  39. package/dist/components/core/form/fields/SolidDateField.js.map +1 -1
  40. package/dist/components/core/form/fields/SolidDateTimeField.d.ts.map +1 -1
  41. package/dist/components/core/form/fields/SolidDateTimeField.js +7 -5
  42. package/dist/components/core/form/fields/SolidDateTimeField.js.map +1 -1
  43. package/dist/components/core/form/fields/SolidDecimalField.d.ts.map +1 -1
  44. package/dist/components/core/form/fields/SolidDecimalField.js +9 -7
  45. package/dist/components/core/form/fields/SolidDecimalField.js.map +1 -1
  46. package/dist/components/core/form/fields/SolidIntegerField.d.ts.map +1 -1
  47. package/dist/components/core/form/fields/SolidIntegerField.js +9 -7
  48. package/dist/components/core/form/fields/SolidIntegerField.js.map +1 -1
  49. package/dist/components/core/form/fields/SolidJsonField.d.ts.map +1 -1
  50. package/dist/components/core/form/fields/SolidJsonField.js +6 -4
  51. package/dist/components/core/form/fields/SolidJsonField.js.map +1 -1
  52. package/dist/components/core/form/fields/SolidLongTextField.d.ts.map +1 -1
  53. package/dist/components/core/form/fields/SolidLongTextField.js +8 -6
  54. package/dist/components/core/form/fields/SolidLongTextField.js.map +1 -1
  55. package/dist/components/core/form/fields/SolidMediaMultipleField.d.ts.map +1 -1
  56. package/dist/components/core/form/fields/SolidMediaMultipleField.js +61 -57
  57. package/dist/components/core/form/fields/SolidMediaMultipleField.js.map +1 -1
  58. package/dist/components/core/form/fields/SolidMediaSingleField.d.ts.map +1 -1
  59. package/dist/components/core/form/fields/SolidMediaSingleField.js +74 -91
  60. package/dist/components/core/form/fields/SolidMediaSingleField.js.map +1 -1
  61. package/dist/components/core/form/fields/SolidRichTextField.d.ts.map +1 -1
  62. package/dist/components/core/form/fields/SolidRichTextField.js +9 -7
  63. package/dist/components/core/form/fields/SolidRichTextField.js.map +1 -1
  64. package/dist/components/core/form/fields/SolidSelectionDynamicField.d.ts.map +1 -1
  65. package/dist/components/core/form/fields/SolidSelectionDynamicField.js +10 -8
  66. package/dist/components/core/form/fields/SolidSelectionDynamicField.js.map +1 -1
  67. package/dist/components/core/form/fields/SolidSelectionStaticField.d.ts.map +1 -1
  68. package/dist/components/core/form/fields/SolidSelectionStaticField.js +10 -8
  69. package/dist/components/core/form/fields/SolidSelectionStaticField.js.map +1 -1
  70. package/dist/components/core/form/fields/SolidShortTextField.d.ts.map +1 -1
  71. package/dist/components/core/form/fields/SolidShortTextField.js +8 -6
  72. package/dist/components/core/form/fields/SolidShortTextField.js.map +1 -1
  73. package/dist/components/core/form/fields/SolidTimeField.d.ts.map +1 -1
  74. package/dist/components/core/form/fields/SolidTimeField.js +7 -5
  75. package/dist/components/core/form/fields/SolidTimeField.js.map +1 -1
  76. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
  77. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js +15 -11
  78. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js.map +1 -1
  79. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts +1 -0
  80. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
  81. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +66 -7
  82. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  83. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.d.ts.map +1 -1
  84. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js +12 -10
  85. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js.map +1 -1
  86. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  87. package/dist/components/core/list/SolidListView.js +42 -34
  88. package/dist/components/core/list/SolidListView.js.map +1 -1
  89. package/dist/components/core/list/columns/SolidMediaMultipleColumn.d.ts.map +1 -1
  90. package/dist/components/core/list/columns/SolidMediaMultipleColumn.js +9 -2
  91. package/dist/components/core/list/columns/SolidMediaMultipleColumn.js.map +1 -1
  92. package/dist/components/core/list/columns/SolidMediaSingleColumn.d.ts.map +1 -1
  93. package/dist/components/core/list/columns/SolidMediaSingleColumn.js +10 -3
  94. package/dist/components/core/list/columns/SolidMediaSingleColumn.js.map +1 -1
  95. package/dist/components/core/model/CreateModel.js +3 -4
  96. package/dist/components/core/model/CreateModel.js.map +1 -1
  97. package/dist/components/core/model/FieldMetaData.d.ts.map +1 -1
  98. package/dist/components/core/model/FieldMetaData.js +54 -1
  99. package/dist/components/core/model/FieldMetaData.js.map +1 -1
  100. package/dist/components/core/model/FieldMetaDataForm.d.ts +1 -1
  101. package/dist/components/core/model/FieldMetaDataForm.d.ts.map +1 -1
  102. package/dist/components/core/model/FieldMetaDataForm.js +118 -51
  103. package/dist/components/core/model/FieldMetaDataForm.js.map +1 -1
  104. package/dist/components/core/module/CreateModule.js +5 -5
  105. package/dist/components/core/module/CreateModule.js.map +1 -1
  106. package/dist/components/core/users/CreateUser.js +1 -2
  107. package/dist/components/core/users/CreateUser.js.map +1 -1
  108. package/dist/components/layout/AppConfig.js +1 -1
  109. package/dist/components/layout/navbar-two-menu.js +1 -1
  110. package/dist/components/layout/user-profile-menu.d.ts.map +1 -1
  111. package/dist/components/layout/user-profile-menu.js +1 -1
  112. package/dist/components/layout/user-profile-menu.js.map +1 -1
  113. package/dist/helpers/downloadMediaFile.d.ts +2 -0
  114. package/dist/helpers/downloadMediaFile.d.ts.map +1 -0
  115. package/dist/helpers/downloadMediaFile.js +66 -0
  116. package/dist/helpers/downloadMediaFile.js.map +1 -0
  117. package/dist/helpers/getAcceptedFileTypes.d.ts +4 -0
  118. package/dist/helpers/getAcceptedFileTypes.d.ts.map +1 -0
  119. package/dist/helpers/getAcceptedFileTypes.js +20 -0
  120. package/dist/helpers/getAcceptedFileTypes.js.map +1 -0
  121. package/dist/index.js +2 -2
  122. package/dist/nextAuth/authProviders.d.ts.map +1 -1
  123. package/dist/nextAuth/authProviders.js +15 -10
  124. package/dist/nextAuth/authProviders.js.map +1 -1
  125. package/dist/redux/api/modelApi.d.ts +2 -1
  126. package/dist/redux/api/modelApi.d.ts.map +1 -1
  127. package/dist/redux/api/modelApi.js +9 -2
  128. package/dist/redux/api/modelApi.js.map +1 -1
  129. package/dist/stylesheets/globals.css +2476 -0
  130. package/dist/stylesheets/styles/SF-Pro-Display-Regular.otf +0 -0
  131. package/dist/stylesheets/styles/layout/_config.scss +54 -0
  132. package/dist/stylesheets/styles/layout/_content.scss +77 -0
  133. package/dist/stylesheets/styles/layout/_footer.scss +8 -0
  134. package/dist/stylesheets/styles/layout/_main.scss +47 -0
  135. package/dist/stylesheets/styles/layout/_menu.scss +185 -0
  136. package/dist/stylesheets/styles/layout/_mixins.scss +13 -0
  137. package/dist/stylesheets/styles/layout/_responsive.scss +99 -0
  138. package/dist/stylesheets/styles/layout/_topbar.scss +149 -0
  139. package/dist/stylesheets/styles/layout/_typography.scss +63 -0
  140. package/dist/stylesheets/styles/layout/_utils.scss +27 -0
  141. package/dist/stylesheets/styles/layout/_variables.scss +3 -0
  142. package/dist/stylesheets/styles/layout/layout.scss +11 -0
  143. package/dist/stylesheets/themes/solid-dark-purple/fonts/SF-Pro-Display-Black.otf +0 -0
  144. package/dist/stylesheets/themes/solid-dark-purple/fonts/SF-Pro-Display-Bold.otf +0 -0
  145. package/dist/stylesheets/themes/solid-dark-purple/fonts/SF-Pro-Display-Heavy.otf +0 -0
  146. package/dist/stylesheets/themes/solid-dark-purple/fonts/SF-Pro-Display-Light.otf +0 -0
  147. package/dist/stylesheets/themes/solid-dark-purple/fonts/SF-Pro-Display-Medium.otf +0 -0
  148. package/dist/stylesheets/themes/solid-dark-purple/fonts/SF-Pro-Display-Regular.otf +0 -0
  149. package/dist/stylesheets/themes/solid-dark-purple/fonts/SF-Pro-Display-Semibold.otf +0 -0
  150. package/dist/stylesheets/themes/solid-dark-purple/fonts/SF-Pro-Display-Thin.otf +0 -0
  151. package/dist/stylesheets/themes/solid-dark-purple/fonts/SF-Pro-Display-Ultralight.otf +0 -0
  152. package/dist/stylesheets/themes/solid-dark-purple/theme.css +9051 -0
  153. package/dist/stylesheets/themes/solid-light-purple/fonts/SF-Pro-Display-Black.otf +0 -0
  154. package/dist/stylesheets/themes/solid-light-purple/fonts/SF-Pro-Display-Bold.otf +0 -0
  155. package/dist/stylesheets/themes/solid-light-purple/fonts/SF-Pro-Display-Heavy.otf +0 -0
  156. package/dist/stylesheets/themes/solid-light-purple/fonts/SF-Pro-Display-Light.otf +0 -0
  157. package/dist/stylesheets/themes/solid-light-purple/fonts/SF-Pro-Display-Medium.otf +0 -0
  158. package/dist/stylesheets/themes/solid-light-purple/fonts/SF-Pro-Display-Regular.otf +0 -0
  159. package/dist/stylesheets/themes/solid-light-purple/fonts/SF-Pro-Display-Semibold.otf +0 -0
  160. package/dist/stylesheets/themes/solid-light-purple/fonts/SF-Pro-Display-Thin.otf +0 -0
  161. package/dist/stylesheets/themes/solid-light-purple/fonts/SF-Pro-Display-Ultralight.otf +0 -0
  162. package/dist/stylesheets/themes/solid-light-purple/theme.css +9077 -0
  163. package/package.json +1 -1
  164. package/src/components/Svg/FileSvg.tsx +18 -0
  165. package/src/components/auth/AuthLayout.tsx +7 -5
  166. package/src/components/auth/SolidForgotPassword.tsx +1 -1
  167. package/src/components/auth/SolidInitialLoginOtp.tsx +1 -1
  168. package/src/components/auth/SolidInitiateRegisterOtp.tsx +1 -1
  169. package/src/components/auth/SolidResetPassword.tsx +1 -1
  170. package/src/components/common/DropzonePlaceholder.tsx +22 -9
  171. package/src/components/common/FileReaderExt.tsx +5 -3
  172. package/src/components/common/SingleSelectAutoCompleteField.tsx +3 -1
  173. package/src/components/core/common/SolidConfigureLayoutElement.tsx +72 -31
  174. package/src/components/core/common/SolidGlobalSearchElement.tsx +7 -6
  175. package/src/components/core/form/SolidFormView.tsx +4 -4
  176. package/src/components/core/form/fields/SolidBooleanField.tsx +6 -3
  177. package/src/components/core/form/fields/SolidDateField.tsx +6 -3
  178. package/src/components/core/form/fields/SolidDateTimeField.tsx +6 -3
  179. package/src/components/core/form/fields/SolidDecimalField.tsx +6 -3
  180. package/src/components/core/form/fields/SolidIntegerField.tsx +6 -3
  181. package/src/components/core/form/fields/SolidJsonField.tsx +6 -3
  182. package/src/components/core/form/fields/SolidLongTextField.tsx +6 -3
  183. package/src/components/core/form/fields/SolidMediaMultipleField.tsx +122 -98
  184. package/src/components/core/form/fields/SolidMediaSingleField.tsx +115 -126
  185. package/src/components/core/form/fields/SolidRichTextField.tsx +7 -3
  186. package/src/components/core/form/fields/SolidSelectionDynamicField.tsx +6 -3
  187. package/src/components/core/form/fields/SolidSelectionStaticField.tsx +6 -3
  188. package/src/components/core/form/fields/SolidShortTextField.tsx +8 -4
  189. package/src/components/core/form/fields/SolidTimeField.tsx +7 -4
  190. package/src/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +29 -25
  191. package/src/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +92 -2
  192. package/src/components/core/form/fields/relations/SolidRelationOneToManyField.tsx +5 -1
  193. package/src/components/core/list/SolidListView.tsx +12 -3
  194. package/src/components/core/list/columns/SolidMediaMultipleColumn.tsx +18 -0
  195. package/src/components/core/list/columns/SolidMediaSingleColumn.tsx +21 -0
  196. package/src/components/core/model/CreateModel.tsx +4 -4
  197. package/src/components/core/model/FieldMetaData.tsx +25 -1
  198. package/src/components/core/model/FieldMetaDataForm.tsx +108 -18
  199. package/src/components/core/module/CreateModule.tsx +5 -5
  200. package/src/components/core/users/CreateUser.tsx +2 -2
  201. package/src/components/layout/AppConfig.tsx +1 -1
  202. package/src/components/layout/navbar-two-menu.tsx +1 -1
  203. package/src/components/layout/user-profile-menu.tsx +7 -8
  204. package/src/helpers/downloadMediaFile.tsx +19 -0
  205. package/src/helpers/getAcceptedFileTypes.tsx +22 -0
  206. package/src/nextAuth/authProviders.tsx +3 -2
  207. package/src/redux/api/modelApi.ts +9 -2
  208. package/dist/components/common/FilterComponent.d.ts +0 -3
  209. package/dist/components/common/FilterComponent.d.ts.map +0 -1
  210. package/dist/components/common/FilterComponent.js +0 -214
  211. package/dist/components/common/FilterComponent.js.map +0 -1
  212. package/dist/components/core/filter/columns/SolidBigintField.d.ts +0 -4
  213. package/dist/components/core/filter/columns/SolidBigintField.d.ts.map +0 -1
  214. package/dist/components/core/filter/columns/SolidBigintField.js +0 -8
  215. package/dist/components/core/filter/columns/SolidBigintField.js.map +0 -1
  216. package/dist/components/core/filter/columns/SolidBooleanField.d.ts +0 -4
  217. package/dist/components/core/filter/columns/SolidBooleanField.d.ts.map +0 -1
  218. package/dist/components/core/filter/columns/SolidBooleanField.js +0 -27
  219. package/dist/components/core/filter/columns/SolidBooleanField.js.map +0 -1
  220. package/dist/components/core/filter/columns/SolidComputedField.d.ts +0 -4
  221. package/dist/components/core/filter/columns/SolidComputedField.d.ts.map +0 -1
  222. package/dist/components/core/filter/columns/SolidComputedField.js +0 -22
  223. package/dist/components/core/filter/columns/SolidComputedField.js.map +0 -1
  224. package/dist/components/core/filter/columns/SolidDateField.d.ts +0 -9
  225. package/dist/components/core/filter/columns/SolidDateField.d.ts.map +0 -1
  226. package/dist/components/core/filter/columns/SolidDateField.js +0 -35
  227. package/dist/components/core/filter/columns/SolidDateField.js.map +0 -1
  228. package/dist/components/core/filter/columns/SolidDatetimeField.d.ts +0 -4
  229. package/dist/components/core/filter/columns/SolidDatetimeField.d.ts.map +0 -1
  230. package/dist/components/core/filter/columns/SolidDatetimeField.js +0 -24
  231. package/dist/components/core/filter/columns/SolidDatetimeField.js.map +0 -1
  232. package/dist/components/core/filter/columns/SolidDecimalField.d.ts +0 -4
  233. package/dist/components/core/filter/columns/SolidDecimalField.d.ts.map +0 -1
  234. package/dist/components/core/filter/columns/SolidDecimalField.js +0 -8
  235. package/dist/components/core/filter/columns/SolidDecimalField.js.map +0 -1
  236. package/dist/components/core/filter/columns/SolidExternalIdField.d.ts +0 -4
  237. package/dist/components/core/filter/columns/SolidExternalIdField.d.ts.map +0 -1
  238. package/dist/components/core/filter/columns/SolidExternalIdField.js +0 -25
  239. package/dist/components/core/filter/columns/SolidExternalIdField.js.map +0 -1
  240. package/dist/components/core/filter/columns/SolidFloatField.d.ts +0 -4
  241. package/dist/components/core/filter/columns/SolidFloatField.d.ts.map +0 -1
  242. package/dist/components/core/filter/columns/SolidFloatField.js +0 -8
  243. package/dist/components/core/filter/columns/SolidFloatField.js.map +0 -1
  244. package/dist/components/core/filter/columns/SolidIdField.d.ts +0 -4
  245. package/dist/components/core/filter/columns/SolidIdField.d.ts.map +0 -1
  246. package/dist/components/core/filter/columns/SolidIdField.js +0 -25
  247. package/dist/components/core/filter/columns/SolidIdField.js.map +0 -1
  248. package/dist/components/core/filter/columns/SolidIntField.d.ts +0 -4
  249. package/dist/components/core/filter/columns/SolidIntField.d.ts.map +0 -1
  250. package/dist/components/core/filter/columns/SolidIntField.js +0 -34
  251. package/dist/components/core/filter/columns/SolidIntField.js.map +0 -1
  252. package/dist/components/core/filter/columns/SolidLongTextField.d.ts +0 -4
  253. package/dist/components/core/filter/columns/SolidLongTextField.d.ts.map +0 -1
  254. package/dist/components/core/filter/columns/SolidLongTextField.js +0 -8
  255. package/dist/components/core/filter/columns/SolidLongTextField.js.map +0 -1
  256. package/dist/components/core/filter/columns/SolidMediaMultipleField.d.ts +0 -4
  257. package/dist/components/core/filter/columns/SolidMediaMultipleField.d.ts.map +0 -1
  258. package/dist/components/core/filter/columns/SolidMediaMultipleField.js +0 -35
  259. package/dist/components/core/filter/columns/SolidMediaMultipleField.js.map +0 -1
  260. package/dist/components/core/filter/columns/SolidMediaSingleField.d.ts +0 -4
  261. package/dist/components/core/filter/columns/SolidMediaSingleField.d.ts.map +0 -1
  262. package/dist/components/core/filter/columns/SolidMediaSingleField.js +0 -35
  263. package/dist/components/core/filter/columns/SolidMediaSingleField.js.map +0 -1
  264. package/dist/components/core/filter/columns/SolidRelationField.d.ts +0 -4
  265. package/dist/components/core/filter/columns/SolidRelationField.d.ts.map +0 -1
  266. package/dist/components/core/filter/columns/SolidRelationField.js +0 -12
  267. package/dist/components/core/filter/columns/SolidRelationField.js.map +0 -1
  268. package/dist/components/core/filter/columns/SolidRichTextField.d.ts +0 -4
  269. package/dist/components/core/filter/columns/SolidRichTextField.d.ts.map +0 -1
  270. package/dist/components/core/filter/columns/SolidRichTextField.js +0 -8
  271. package/dist/components/core/filter/columns/SolidRichTextField.js.map +0 -1
  272. package/dist/components/core/filter/columns/SolidSelectionDynamicField.d.ts +0 -4
  273. package/dist/components/core/filter/columns/SolidSelectionDynamicField.d.ts.map +0 -1
  274. package/dist/components/core/filter/columns/SolidSelectionDynamicField.js +0 -25
  275. package/dist/components/core/filter/columns/SolidSelectionDynamicField.js.map +0 -1
  276. package/dist/components/core/filter/columns/SolidSelectionStaticField.d.ts +0 -4
  277. package/dist/components/core/filter/columns/SolidSelectionStaticField.d.ts.map +0 -1
  278. package/dist/components/core/filter/columns/SolidSelectionStaticField.js +0 -26
  279. package/dist/components/core/filter/columns/SolidSelectionStaticField.js.map +0 -1
  280. package/dist/components/core/filter/columns/SolidShortTextField.d.ts +0 -4
  281. package/dist/components/core/filter/columns/SolidShortTextField.d.ts.map +0 -1
  282. package/dist/components/core/filter/columns/SolidShortTextField.js +0 -33
  283. package/dist/components/core/filter/columns/SolidShortTextField.js.map +0 -1
  284. package/dist/components/core/filter/columns/SolidTimeField.d.ts +0 -4
  285. package/dist/components/core/filter/columns/SolidTimeField.d.ts.map +0 -1
  286. package/dist/components/core/filter/columns/SolidTimeField.js +0 -24
  287. package/dist/components/core/filter/columns/SolidTimeField.js.map +0 -1
  288. package/dist/components/core/filter/columns/SolidUuidField.d.ts +0 -4
  289. package/dist/components/core/filter/columns/SolidUuidField.d.ts.map +0 -1
  290. package/dist/components/core/filter/columns/SolidUuidField.js +0 -25
  291. package/dist/components/core/filter/columns/SolidUuidField.js.map +0 -1
  292. package/dist/components/core/filter/columns/relations/SolidRelationManyToOneField.d.ts +0 -4
  293. package/dist/components/core/filter/columns/relations/SolidRelationManyToOneField.d.ts.map +0 -1
  294. package/dist/components/core/filter/columns/relations/SolidRelationManyToOneField.js +0 -54
  295. package/dist/components/core/filter/columns/relations/SolidRelationManyToOneField.js.map +0 -1
@@ -7,6 +7,12 @@ import { useState } from "react";
7
7
  import * as Yup from 'yup';
8
8
  import { Schema } from "yup";
9
9
  import { FormikObject, ISolidField, SolidFieldProps } from "../ISolidField";
10
+ import { camelCase, capitalize } from "lodash";
11
+ import { Button } from "primereact/button";
12
+ import { Checkbox } from "primereact/checkbox";
13
+ import { Dialog } from "primereact/dialog";
14
+ import { Panel } from "primereact/panel";
15
+ import SolidFormView from "../../SolidFormView";
10
16
 
11
17
 
12
18
  export class SolidRelationManyToOneField implements ISolidField {
@@ -57,6 +63,8 @@ export class SolidRelationManyToOneField implements ISolidField {
57
63
  const className = fieldLayoutInfo.attrs?.className || 'field col-12';
58
64
  const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;
59
65
  const solidFormViewMetaData = this.fieldContext.solidFormViewMetaData;
66
+ const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;
67
+ const [visibleCreateRelationEntity, setvisibleCreateRelationEntity] = useState(false);
60
68
 
61
69
  // auto complete specific code.
62
70
  const entityApi = createSolidEntityApi(fieldMetadata.relationModelSingularName);
@@ -106,11 +114,36 @@ export class SolidRelationManyToOneField implements ISolidField {
106
114
 
107
115
  const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];
108
116
 
117
+
118
+
119
+
120
+ const disabled = fieldLayoutInfo.attrs?.disabled;
121
+ const readOnly = fieldLayoutInfo.attrs?.readOnly;
122
+
123
+
124
+ const customCreateHandler = (values: any) => {
125
+ const currentRelationData = formik.values[fieldLayoutInfo.attrs.name] || [];
126
+ const jsonValues = Object.fromEntries(values.entries());
127
+ const updatedRelationData = [
128
+ ...currentRelationData,
129
+ {
130
+ label: jsonValues[fieldMetadata?.relationModel?.userKeyField?.name],
131
+ value: "new",
132
+ original: jsonValues,
133
+ },
134
+ ];
135
+
136
+ formik.setFieldValue(fieldLayoutInfo.attrs.name, updatedRelationData);
137
+
138
+ }
109
139
  return (
110
140
  <div className={className}>
111
141
  <div className="flex flex-column gap-2 mt-4">
112
- <label htmlFor={fieldLayoutInfo.attrs.name} className="form-field-label">{fieldLabel}
113
- </label>
142
+ {showFieldLabel != false &&
143
+ <label htmlFor={fieldLayoutInfo.attrs.name} className="form-field-label">
144
+ {fieldLabel}
145
+ </label>
146
+ }
114
147
  <AutoComplete
115
148
  readOnly={formReadonly || fieldReadonly}
116
149
  disabled={formDisabled || fieldDisabled}
@@ -124,6 +157,9 @@ export class SolidRelationManyToOneField implements ISolidField {
124
157
  onChange={formik.handleChange}
125
158
  className="w-full solid-standard-autocomplete"
126
159
  />
160
+ {fieldLayoutInfo.attrs.inlineCreate === "true" &&
161
+ this.renderSolidFormEmbededView(formik, customCreateHandler, visibleCreateRelationEntity, setvisibleCreateRelationEntity)
162
+ }
127
163
  </div>
128
164
  {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (
129
165
  <Message severity="error" text={formik?.errors[fieldLayoutInfo.attrs.name]?.toString()} />
@@ -131,4 +167,58 @@ export class SolidRelationManyToOneField implements ISolidField {
131
167
  </div>
132
168
  );
133
169
  }
170
+
171
+
172
+ renderSolidFormEmbededView(formik: FormikObject, customCreateHandler: any, visibleCreateRelationEntity: any, setvisibleCreateRelationEntity: any) {
173
+
174
+ const fieldMetadata = this.fieldContext.fieldMetadata;
175
+ const fieldLayoutInfo = this.fieldContext.field;
176
+ const className = fieldLayoutInfo.attrs?.className || 'field col-6 flex flex-column gap-2 mt-4';
177
+ const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;
178
+
179
+ const params = {
180
+ moduleName: this.fieldContext.fieldMetadata.relationModelModuleName,
181
+ id: "new",
182
+ embeded: true,
183
+ layout: fieldLayoutInfo?.attrs?.inlineCreateLayout,
184
+ customCreateHandler: ((values: any) => {
185
+ setvisibleCreateRelationEntity(false);
186
+ customCreateHandler(values)
187
+ }),
188
+ inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,
189
+ handlePopupClose: (() => {
190
+ setvisibleCreateRelationEntity(false);
191
+ }),
192
+ modelName: camelCase(this.fieldContext.fieldMetadata.relationModelSingularName)
193
+ }
194
+
195
+ return (
196
+ <div >
197
+ <Button
198
+ icon="pi pi-plus"
199
+ rounded
200
+ outlined
201
+ aria-label="Filter"
202
+ type="button"
203
+ size="small"
204
+ onClick={() => setvisibleCreateRelationEntity(true)}
205
+ className="custom-add-button"
206
+ />
207
+ <Dialog
208
+ header=""
209
+ showHeader={false}
210
+ visible={visibleCreateRelationEntity}
211
+ style={{ width: fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.width ?? "60vw" }}
212
+ onHide={() => {
213
+ if (!visibleCreateRelationEntity) return;
214
+ setvisibleCreateRelationEntity(false);
215
+ }}
216
+ className="solid-dialog"
217
+ >
218
+ <SolidFormView {...params} />
219
+
220
+ </Dialog>
221
+ </div>
222
+ )
223
+ }
134
224
  }
@@ -62,6 +62,7 @@ export class SolidRelationOneToManyField implements ISolidField {
62
62
  const [listViewParams, setListViewParams] = useState<any>()
63
63
  const [formViewParams, setformViewParams] = useState<any>()
64
64
  const [refreshList, setRefreshList] = useState(false); // Added state for rerender
65
+ const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;
65
66
 
66
67
 
67
68
  const handlePopupOpen = (id: any) => {
@@ -133,7 +134,10 @@ export class SolidRelationOneToManyField implements ISolidField {
133
134
  return (
134
135
  <div className={className}>
135
136
  {/* <div className="justify-content-center align-items-center"> */}
136
- <label htmlFor={fieldLayoutInfo.attrs.name} className="form-field-label">{fieldLabel}&nbsp;{fieldDescription && <span className="form_field_help">({fieldDescription}) </span>}</label>
137
+ {showFieldLabel != false &&
138
+ <label htmlFor={fieldLayoutInfo.attrs.name} className="form-field-label">{fieldLabel}&nbsp;{fieldDescription && <span className="form_field_help">({fieldDescription}) </span>}</label>
139
+ }
140
+
137
141
  {/* </div>
138
142
  <br></br> */}
139
143
  {listViewParams &&
@@ -59,6 +59,7 @@ export const SolidListView = (params: SolidListViewParams) => {
59
59
  // const [showGlobalSearchElement, setShowGlobalSearchElement] = useState<boolean>(false);
60
60
 
61
61
  const [toPopulate, setToPopulate] = useState<string[]>([]);
62
+ const [toPopulateMedia, setToPopulateMedia] = useState<string[]>([]);
62
63
  const [actionsAllowed, setActionsAllowed] = useState<string[]>([]);
63
64
 
64
65
  const [triggerCheckIfPermissionExists] = useLazyCheckIfPermissionExistsQuery();
@@ -123,6 +124,8 @@ export const SolidListView = (params: SolidListViewParams) => {
123
124
 
124
125
  const initialFilters: any = {};
125
126
  const toPopulate: string[] = [];
127
+ const toPopulateMedia: string[] = [];
128
+
126
129
  for (let i = 0; i < solidView.layout.children?.length; i++) {
127
130
  const column = solidView.layout.children[i];
128
131
  const fieldMetadata = solidFieldsMetadata[column.attrs.name];
@@ -155,10 +158,14 @@ export const SolidListView = (params: SolidListViewParams) => {
155
158
  if (fieldMetadata.type === 'relation' && fieldMetadata.relationType === 'many-to-one') {
156
159
  toPopulate.push(fieldMetadata.name);
157
160
  }
161
+ if (fieldMetadata.type === 'mediaSingle' || fieldMetadata.relationType === 'mediaMultiple') {
162
+ toPopulateMedia.push(fieldMetadata.name);
163
+ }
158
164
  }
159
165
  // setFilters(initialFilters);
160
166
  setRows(solidListViewMetaData?.data?.solidView?.layout?.attrs?.defaultPageSize ? solidListViewMetaData?.data?.solidView?.layout?.attrs.defaultPageSize : 25)
161
167
  setToPopulate(toPopulate);
168
+ setToPopulateMedia(toPopulateMedia);
162
169
  }
163
170
 
164
171
  useEffect(() => {
@@ -268,11 +275,12 @@ export const SolidListView = (params: SolidListViewParams) => {
268
275
 
269
276
  // Fetch data after toPopulate has been populated...
270
277
  useEffect(() => {
271
- if (toPopulate) {
278
+ if (toPopulate || toPopulateMedia) {
272
279
  const queryData = {
273
280
  offset: 0,
274
281
  limit: 25,
275
282
  populate: toPopulate,
283
+ populateMedia: toPopulateMedia,
276
284
  sort: [`id:desc`],
277
285
  filters: { ...params.customFilter }
278
286
  };
@@ -288,7 +296,7 @@ export const SolidListView = (params: SolidListViewParams) => {
288
296
  setSelectedRecoverRecords([]);
289
297
  setShowArchived(false);
290
298
  }
291
- }, [isDeleteSolidEntitiesSucess, isDeleteSolidSingleEntitySuccess, toPopulate]);
299
+ }, [isDeleteSolidEntitiesSucess, isDeleteSolidSingleEntitySuccess, toPopulate, toPopulateMedia]);
292
300
 
293
301
  // Handle pagination event.
294
302
  const onPageChange = (event: any) => {
@@ -402,6 +410,7 @@ export const SolidListView = (params: SolidListViewParams) => {
402
410
  limit: limit ?? rows,
403
411
  filters: filters ?? filters,
404
412
  populate: toPopulate,
413
+ populateMedia: toPopulateMedia
405
414
  };
406
415
 
407
416
  if (sortField) {
@@ -702,7 +711,7 @@ export const SolidListView = (params: SolidListViewParams) => {
702
711
  rows={rows}
703
712
  rowsPerPageOptions={solidListViewMetaData?.data?.solidView?.layout?.attrs?.pageSizeOptions}
704
713
  dataKey="id"
705
- emptyMessage="No Entities found."
714
+ emptyMessage={solidListViewMetaData?.data?.solidView?.model?.description || 'No Entities found.'}
706
715
  filterDisplay="menu"
707
716
  totalRecords={totalRecords}
708
717
  first={first}
@@ -9,11 +9,29 @@ const SolidMediaMultipleColumn = ({ solidListViewMetaData, fieldMetadata, column
9
9
  const showFilterOperator = false;
10
10
  const columnDataType = undefined;
11
11
  const header = column.attrs.label ?? fieldMetadata.displayName;
12
+ const imageBodyTemplate = (product: any) => {
13
+ if (!product?._media?.[fieldMetadata.name]) return null;
12
14
 
15
+ const imageUrls = product._media[fieldMetadata.name].map((i: any) => i._full_url);
16
+
17
+ return (
18
+ <>
19
+ {imageUrls.map((url: string, index: number) => (
20
+ <img
21
+ key={index}
22
+ src={url}
23
+ alt={`product-image-${index}`}
24
+ className="w-6rem shadow-2 border-round"
25
+ />
26
+ ))}
27
+ </>
28
+ );
29
+ };
13
30
  return (
14
31
  <Column
15
32
  key={fieldMetadata.name}
16
33
  field={fieldMetadata.name}
34
+ body={imageBodyTemplate}
17
35
  header={header}
18
36
  // className="text-sm"
19
37
  sortable={column.attrs.sortable}
@@ -8,16 +8,37 @@ import { FilterMatchMode } from 'primereact/api';
8
8
 
9
9
  const SolidMediaSingleColumn = ({ solidListViewMetaData, fieldMetadata, column }: SolidListViewColumnParams) => {
10
10
  // const filterable = column.attrs.filterable;
11
+
11
12
  const filterable = false;
12
13
  const showFilterOperator = false;
13
14
  const columnDataType = undefined;
14
15
  const header = column.attrs.label ?? fieldMetadata.displayName;
15
16
 
17
+ const imageBodyTemplate = (product: any) => {
18
+ if (!product?._media?.[fieldMetadata.name]) return null;
19
+
20
+ const imageUrls = product._media[fieldMetadata.name].map((i: any) => i._full_url);
21
+
22
+ return (
23
+ <>
24
+ {imageUrls.map((url: string, index: number) => (
25
+ <img
26
+ key={index}
27
+ src={url}
28
+ alt={`product-image-${index}`}
29
+ className="w-6rem shadow-2 border-round"
30
+ />
31
+ ))}
32
+ </>
33
+ );
34
+ };
35
+
16
36
  return (
17
37
  <Column
18
38
  key={fieldMetadata.name}
19
39
  field={fieldMetadata.name}
20
40
  header={header}
41
+ body={imageBodyTemplate}
21
42
  // className="text-sm"
22
43
  sortable={column.attrs.sortable}
23
44
  // filter={filterable}
@@ -321,8 +321,8 @@ const CreateModel = ({ data, params }: any) => {
321
321
  size="small"
322
322
  className="bg-primary-reverse p-0"
323
323
  style={{
324
- height: 32,
325
- width: 32
324
+ height: 33.06,
325
+ width: 33.06
326
326
  }}
327
327
  onClick={(e) =>
328
328
  // @ts-ignore
@@ -400,9 +400,9 @@ const CreateModel = ({ data, params }: any) => {
400
400
  </>
401
401
  }
402
402
  </div>
403
- <div className="solid-form-stepper">
403
+ {/* <div className="solid-form-stepper">
404
404
  <SolidFormStepper />
405
- </div>
405
+ </div> */}
406
406
  <div className="p-4 solid-form-content">
407
407
  <TabView
408
408
  activeIndex={activeIndex}
@@ -74,6 +74,30 @@ const FieldMetaData = ({ modelMetaData, fieldMetaData, setFieldMetaData, deleteM
74
74
  )
75
75
  };
76
76
 
77
+ const showToaster = async (message: any, severity: any) => {
78
+ const errorMessages = Object.values(message);
79
+ if (errorMessages.length > 0) {
80
+ toast?.current?.show({
81
+ severity: severity,
82
+ summary: "Can you send me the report?",
83
+ life: 3000,
84
+ //@ts-ignore
85
+ content: (props) => (
86
+ <div
87
+ className="flex flex-column align-items-left"
88
+ style={{ flex: "1" }}
89
+ >
90
+ {errorMessages.map((m, index) => (
91
+ <div className="flex align-items-center gap-2" key={index}>
92
+ <span className="font-bold text-900">{String(m)}</span>
93
+ </div>
94
+ ))}
95
+ </div>
96
+ ),
97
+ });
98
+ }
99
+ };
100
+
77
101
 
78
102
 
79
103
  return (
@@ -132,7 +156,7 @@ const FieldMetaData = ({ modelMetaData, fieldMetaData, setFieldMetaData, deleteM
132
156
  }}
133
157
  showHeader={false}
134
158
  >
135
- <FieldMetaDataForm modelMetaData={modelMetaData} fieldMetaData={selectedFieldMetaData} allFields={fieldMetaData} setFieldMetaData={setFieldMetaData} deleteModelFunction={deleteModelFunction} setVisiblePopup={setVisiblePopup} formikFieldsMetadataRef={formikFieldsMetadataRef} params={params} setIsRequiredPopUp={setIsRequiredPopUp}></FieldMetaDataForm>
159
+ <FieldMetaDataForm modelMetaData={modelMetaData} fieldMetaData={selectedFieldMetaData} allFields={fieldMetaData} setFieldMetaData={setFieldMetaData} deleteModelFunction={deleteModelFunction} setVisiblePopup={setVisiblePopup} formikFieldsMetadataRef={formikFieldsMetadataRef} params={params} setIsRequiredPopUp={setIsRequiredPopUp} showToaster={showToaster}></FieldMetaDataForm>
136
160
  </Dialog>
137
161
  <Dialog
138
162
  visible={isRequiredPopUp}
@@ -4,7 +4,7 @@ import { SingleSelectAutoCompleteField } from "@/components/common/SingleSelectA
4
4
  import { getSingularAndPlural } from "@/helpers/helpers";
5
5
  import { useGetFieldDefaultMetaDataQuery } from "@/redux/api/fieldApi";
6
6
  import { useLazyGetMediaStorageProvidersQuery } from "@/redux/api/mediaStorageProviderApi";
7
- import { useLazyGetModelsQuery } from "@/redux/api/modelApi";
7
+ import { useLazyGetModelsQuery, useUpdateUserKeyMutation } from "@/redux/api/modelApi";
8
8
  import { useLazyGetmodulesQuery } from "@/redux/api/moduleApi";
9
9
  import { useFormik } from "formik";
10
10
  import { capitalize } from "lodash";
@@ -506,7 +506,7 @@ const createValidationSchema = (currentFields: any, selectedType: any, allFields
506
506
  return Yup.object(schema);
507
507
  };
508
508
 
509
- const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, allFields, deleteModelFunction, setVisiblePopup, params, setIsRequiredPopUp }: any) => {
509
+ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, allFields, deleteModelFunction, setVisiblePopup, params, setIsRequiredPopUp, showToaster }: any) => {
510
510
 
511
511
  const booleanOptions = ["false", "true"];
512
512
  const [isBackPopupVisible, setIsBackPopupVisible] = useState(false);
@@ -523,6 +523,10 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
523
523
  const [triggerGetMediaStorageProvider, { data: MediaStorageProviderData, isFetching: isMediaStorageProviderFetching, error: MediaStorageProviderError }] = useLazyGetMediaStorageProvidersQuery();
524
524
  const [triggerGetModules, { data: moduleData, isFetching: isModuleFetching, error: moduleError }] = useLazyGetmodulesQuery();
525
525
  const [triggerGetModels, { data: modelData, isFetching: ismodelFetching, error: modelError }] = useLazyGetModelsQuery();
526
+ const [
527
+ updateUserKey,
528
+ { isLoading: isUpdateUserKeyLoading, isSuccess: isUpdateUserKeySuccess, isError: isUpdateUserKeyError, error: UpdateUserKeyError, data: newModel },
529
+ ] = useUpdateUserKeyMutation();
526
530
 
527
531
 
528
532
  const [markdownText, setMarkdownText] = useState<string>();
@@ -543,7 +547,8 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
543
547
  const [ormTypeOptions, setOrmTypeOptions] = useState([]);
544
548
  const [selectedOrmType, setSelectedOrmType] = useState<any>(fieldMetaData?.ormType);
545
549
 
546
-
550
+ const [isUserKeyFields, setUserKeyFields] = useState(false);
551
+ const [userKeyData, setUserKeyData] = useState([]);
547
552
 
548
553
  const [
549
554
  filteredExternalIdProvider,
@@ -734,7 +739,9 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
734
739
  }
735
740
  };
736
741
 
737
-
742
+ const searchUserKeyField = () => {
743
+ return userKeyData;
744
+ }
738
745
 
739
746
  const searchComputedFieldValueType = async (event: any) => {
740
747
  const query = event.query;
@@ -904,7 +911,8 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
904
911
  isUserKey: fieldMetaData ? fieldMetaData?.isUserKey : false,
905
912
  relationJoinColumnName: fieldMetaData ? fieldMetaData?.relationJoinColumnName : null,
906
913
  joinColumnName: fieldMetaData ? fieldMetaData?.joinColumnName : null,
907
- relationJoinTableName: fieldMetaData ? fieldMetaData?.relationJoinTableName : null
914
+ relationJoinTableName: fieldMetaData ? fieldMetaData?.relationJoinTableName : null,
915
+ userKey: fieldMetaData ? fieldMetaData?.userKey : null
908
916
  };
909
917
 
910
918
 
@@ -914,7 +922,6 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
914
922
  enableReinitialize: true,
915
923
  onSubmit: async (values) => {
916
924
  try {
917
-
918
925
  setFieldMetaData((prevItems: any) => {
919
926
  const newFieldData = { ...values, isSystem: values.isSystem == true ? true : '' }
920
927
  const formtatedFieldPayload = fieldBasedPayloadFormating(newFieldData, currentFields, fieldMetaData);
@@ -931,6 +938,13 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
931
938
  return [...prevItems, formtatedFieldPayload]
932
939
  }
933
940
  });
941
+ if (values.userKey) {
942
+ const data = {
943
+ modelName: values.relationModelSingularName,
944
+ fieldName: values.userKey
945
+ }
946
+ updateUserKey(data);
947
+ }
934
948
  // nextTab()
935
949
  setVisiblePopup(false);
936
950
 
@@ -972,7 +986,13 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
972
986
  }
973
987
  };
974
988
 
975
-
989
+ useEffect(() => {
990
+ if (isUpdateUserKeySuccess) {
991
+ showToaster([newModel?.data?.message], "success");
992
+ } if (isUpdateUserKeyError) {
993
+ showToaster(UpdateUserKeyError, 'error')
994
+ }
995
+ }, [isUpdateUserKeySuccess, isUpdateUserKeyError])
976
996
 
977
997
  const handleTypeSelect = (e: any, label: string) => {
978
998
 
@@ -1012,6 +1032,40 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
1012
1032
  }
1013
1033
  }, [fieldMetaData])
1014
1034
 
1035
+ useEffect(() => {
1036
+ const fetchFields = async () => {
1037
+ const queryData: any = {
1038
+ limit: 10,
1039
+ offset: 0,
1040
+ filters: {
1041
+ singularName: {
1042
+ $eq: formik.values.relationModelSingularName
1043
+ }
1044
+ },
1045
+ populate: ['fields']
1046
+ };
1047
+ const queryString = qs.stringify(queryData, {
1048
+ encodeValuesOnly: true,
1049
+ });
1050
+
1051
+ const result = await triggerGetModels(queryString).unwrap();
1052
+
1053
+ if (result && result.records) {
1054
+ if (!result?.records[0]?.userKeyField) {
1055
+ setUserKeyFields(true);
1056
+ const fieldsWithUnique = result?.records[0]?.fields?.filter((field: any) => field?.unique === true);
1057
+ setUserKeyData(fieldsWithUnique)
1058
+ } else {
1059
+ setUserKeyFields(false);
1060
+ setUserKeyData([]);
1061
+ }
1062
+ }
1063
+ }
1064
+ if (formik.values.relationModelSingularName) {
1065
+ fetchFields();
1066
+ }
1067
+ }, [formik.values.relationModelSingularName])
1068
+
1015
1069
  const updateEnumValues = (index: number, updatedString: string) => {
1016
1070
  const updatedValues = formik.values.selectionStaticValues.map((enumValue: string, i: number) =>
1017
1071
  i === index ? updatedString : enumValue
@@ -1826,6 +1880,39 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
1826
1880
  </div>
1827
1881
  )}
1828
1882
 
1883
+ {isUserKeyFields && (
1884
+ <div className="field col-6 flex-flex-column gap-2">
1885
+ <label
1886
+ htmlFor="userKey"
1887
+ className="form-field-label"
1888
+ >
1889
+ Set User Key
1890
+ </label>
1891
+
1892
+
1893
+ <SingleSelectAutoCompleteField
1894
+ key="userKey"
1895
+ formik={formik}
1896
+ isFormFieldValid={isFormFieldValid}
1897
+ fieldName="userKey"
1898
+ fieldNameId="userKey"
1899
+ labelKey="displayName"
1900
+ valueKey="name"
1901
+ searchData={searchUserKeyField}
1902
+ existingData={formik.values.userKey}
1903
+ />
1904
+ {isFormFieldValid(
1905
+ formik,
1906
+ "userKey"
1907
+ ) && (
1908
+ <Message
1909
+ severity="error"
1910
+ text={formik?.errors?.userKey?.toString()}
1911
+ />
1912
+ )}
1913
+ </div>
1914
+ )}
1915
+
1829
1916
  {currentFields.includes("relationCreateInverse") && formik.values.relationType === "many-to-many" && (
1830
1917
  <div className="field col-6 flex flex-column gap-2 mt-3">
1831
1918
  <label htmlFor="relationCreateInverse" className="form-field-label">
@@ -1838,7 +1925,7 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
1838
1925
  checked={Boolean(formik.values.relationCreateInverse)}
1839
1926
  onChange={(e) => formik.setFieldValue("relationCreateInverse", e.checked)}
1840
1927
  />
1841
- <label htmlFor="relationCreateInverse" className="ml-2">Enable</label>
1928
+ <label htmlFor="relationCreateInverse" className="ml-2">Create Inverse</label>
1842
1929
  </div>
1843
1930
  {isFormFieldValid(formik, "relationCreateInverse") && (
1844
1931
  <Message severity="error" text={formik?.errors?.relationCreateInverse?.toString()} />
@@ -2045,7 +2132,7 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
2045
2132
  e.value
2046
2133
  )
2047
2134
  }
2048
- placeholder="Select a Data Source"
2135
+ placeholder="Select Value Type"
2049
2136
  className={classNames("", {
2050
2137
  "p-invalid": isFormFieldValid(
2051
2138
  formik,
@@ -2346,7 +2433,7 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
2346
2433
 
2347
2434
  </div>
2348
2435
  )}
2349
- {(currentFields.includes("regexPattern") || currentFields.includes("min") || currentFields.includes("max") || currentFields.includes("ormType")) && ormTypeOptions && formik.values.relationType !== "many-to-many" &&
2436
+ {(currentFields.includes("regexPattern") || currentFields.includes("min") || currentFields.includes("max") || currentFields.includes("ormType")) && ormTypeOptions && selectedType.value !== 'relation' &&
2350
2437
  <>
2351
2438
  <p className="form-wrapper-heading text-base">Validations</p>
2352
2439
  <div className="formgrid grid">
@@ -2439,7 +2526,7 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
2439
2526
  {currentFields.includes("min") && (
2440
2527
  <div className="field col-6 flex-flex-column gap-2 mt-3">
2441
2528
  <label htmlFor="min" className="form-field-label">
2442
- Min (Characters Allowed)
2529
+ Min {(selectedType.value !== "int" && selectedType.value !== "decimal") && `(Characters Allowed)`}
2443
2530
 
2444
2531
  </label>
2445
2532
  {/* <InputText
@@ -2472,6 +2559,7 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
2472
2559
  "min"
2473
2560
  ),
2474
2561
  })}
2562
+ disabled={fieldMetaData?.id}
2475
2563
  />
2476
2564
  }
2477
2565
 
@@ -2486,7 +2574,8 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
2486
2574
  {currentFields.includes("max") && (
2487
2575
  <div className="field col-6 flex-flex-column gap-2 mt-3">
2488
2576
  <label htmlFor="max" className="form-field-label">
2489
- Max (Character allowed)
2577
+ Max {(selectedType.value !== "int" &&
2578
+ selectedType.value !== "decimal") && `(Characters allowed)`}
2490
2579
  </label>
2491
2580
  {/* <InputText
2492
2581
  type="text"
@@ -2517,6 +2606,7 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
2517
2606
  "max"
2518
2607
  ),
2519
2608
  })}
2609
+ disabled={fieldMetaData?.id}
2520
2610
  />
2521
2611
  }
2522
2612
 
@@ -2586,7 +2676,7 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
2586
2676
 
2587
2677
  <p className="form-wrapper-heading text-base">Settings</p>
2588
2678
  <div className="formgrid grid">
2589
- {currentFields.includes("required") && (
2679
+ {currentFields.includes("required") && selectedType.value !== 'relation' && (
2590
2680
  <div className="field col-6 flex-flex-column gap-2 mt-3">
2591
2681
  <div className="flex align-items-center">
2592
2682
  <Checkbox
@@ -2610,7 +2700,7 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
2610
2700
  )}
2611
2701
  </div>
2612
2702
  )}
2613
- {currentFields.includes("unique") && (
2703
+ {currentFields.includes("unique") && selectedType.value !== 'relation' && (
2614
2704
  <div className="field col-6 flex-flex-column gap-2">
2615
2705
  <div className="flex align-items-center">
2616
2706
  <Checkbox
@@ -2634,7 +2724,7 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
2634
2724
  )}
2635
2725
  </div>
2636
2726
  )}
2637
- {currentFields.includes("index") && (
2727
+ {currentFields.includes("index") && selectedType.value !== 'relation' && (
2638
2728
  <div className="field col-6 flex-flex-column gap-2 mt-3">
2639
2729
  <div className="flex align-items-center">
2640
2730
  <Checkbox
@@ -2656,7 +2746,7 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
2656
2746
  )}
2657
2747
  </div>
2658
2748
  )}
2659
- {currentFields.includes("private") && (
2749
+ {currentFields.includes("private") && selectedType.value !== 'relation' && (
2660
2750
  <div className="field col-6 flex-flex-column gap-2 mt-3">
2661
2751
  <div className="flex align-items-center">
2662
2752
  <Checkbox
@@ -2681,7 +2771,7 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
2681
2771
  )}
2682
2772
  </div>
2683
2773
  )}
2684
- {currentFields.includes("encrypt") && (
2774
+ {currentFields.includes("encrypt") && selectedType.value !== 'relation' && (
2685
2775
  <div className="field col-6 flex-flex-column gap-2 mt-3">
2686
2776
  <div className="flex align-items-center gap-2">
2687
2777
  <Checkbox
@@ -2742,7 +2832,7 @@ const FieldMetaDataForm = ({ modelMetaData, fieldMetaData, setFieldMetaData, all
2742
2832
  Is Userkey
2743
2833
  </label>
2744
2834
  </div>
2745
- <p className="fieldSubTitle">If userkey already then it will be replaced with this key</p>
2835
+ <p className="fieldSubTitle">By selecting this option, you are setting this field as the model's user key. Any existing user key configuration will be overwritten</p>
2746
2836
 
2747
2837
  {isFormFieldValid(formik, "isUserKey") && (
2748
2838
  <Message