@rchemist/listgrid 0.2.6

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 (592) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +343 -0
  3. package/dist/adapters/next/NextListGridProvider.d.ts +5 -0
  4. package/dist/adapters/next/NextListGridProvider.js +7 -0
  5. package/dist/adapters/next/NextRouterAdapter.d.ts +2 -0
  6. package/dist/adapters/next/NextRouterAdapter.js +34 -0
  7. package/dist/adapters/next/NextUrlStateAdapter.d.ts +2 -0
  8. package/dist/adapters/next/NextUrlStateAdapter.js +31 -0
  9. package/dist/adapters/next/index.d.ts +4 -0
  10. package/dist/adapters/next/index.js +12 -0
  11. package/dist/index.d.ts +1 -0
  12. package/dist/index.js +3 -0
  13. package/dist/listgrid/api/ApiClient.d.ts +20 -0
  14. package/dist/listgrid/api/ApiClient.js +32 -0
  15. package/dist/listgrid/api/index.d.ts +4 -0
  16. package/dist/listgrid/api/index.js +2 -0
  17. package/dist/listgrid/api/types.d.ts +21 -0
  18. package/dist/listgrid/api/types.js +30 -0
  19. package/dist/listgrid/auth/AuthContext.d.ts +12 -0
  20. package/dist/listgrid/auth/AuthContext.js +25 -0
  21. package/dist/listgrid/auth/SessionProvider.d.ts +4 -0
  22. package/dist/listgrid/auth/SessionProvider.js +16 -0
  23. package/dist/listgrid/auth/index.d.ts +6 -0
  24. package/dist/listgrid/auth/index.js +17 -0
  25. package/dist/listgrid/auth/types.d.ts +15 -0
  26. package/dist/listgrid/auth/types.js +12 -0
  27. package/dist/listgrid/common/func.d.ts +16 -0
  28. package/dist/listgrid/common/func.js +351 -0
  29. package/dist/listgrid/common/type.d.ts +35 -0
  30. package/dist/listgrid/common/type.js +46 -0
  31. package/dist/listgrid/components/api/ApiSpecificationButton.d.ts +5 -0
  32. package/dist/listgrid/components/api/ApiSpecificationButton.js +16 -0
  33. package/dist/listgrid/components/api/Type.d.ts +23 -0
  34. package/dist/listgrid/components/api/Type.js +8 -0
  35. package/dist/listgrid/components/api/ViewApiSpecification.d.ts +2 -0
  36. package/dist/listgrid/components/api/ViewApiSpecification.js +32 -0
  37. package/dist/listgrid/components/fields/ApplyFullAddressFields.d.ts +45 -0
  38. package/dist/listgrid/components/fields/ApplyFullAddressFields.js +177 -0
  39. package/dist/listgrid/components/fields/BirthdayField.d.ts +39 -0
  40. package/dist/listgrid/components/fields/BirthdayField.js +205 -0
  41. package/dist/listgrid/components/fields/BooleanField.d.ts +38 -0
  42. package/dist/listgrid/components/fields/BooleanField.js +141 -0
  43. package/dist/listgrid/components/fields/CheckboxField.d.ts +23 -0
  44. package/dist/listgrid/components/fields/CheckboxField.js +33 -0
  45. package/dist/listgrid/components/fields/ColorField.d.ts +18 -0
  46. package/dist/listgrid/components/fields/ColorField.js +63 -0
  47. package/dist/listgrid/components/fields/ColorPresetField.d.ts +19 -0
  48. package/dist/listgrid/components/fields/ColorPresetField.js +56 -0
  49. package/dist/listgrid/components/fields/CustomOptionField.d.ts +45 -0
  50. package/dist/listgrid/components/fields/CustomOptionField.js +176 -0
  51. package/dist/listgrid/components/fields/DateField.d.ts +34 -0
  52. package/dist/listgrid/components/fields/DateField.js +116 -0
  53. package/dist/listgrid/components/fields/DatetimeField.d.ts +29 -0
  54. package/dist/listgrid/components/fields/DatetimeField.js +93 -0
  55. package/dist/listgrid/components/fields/EmailField.d.ts +37 -0
  56. package/dist/listgrid/components/fields/EmailField.js +144 -0
  57. package/dist/listgrid/components/fields/FileField.d.ts +36 -0
  58. package/dist/listgrid/components/fields/FileField.js +157 -0
  59. package/dist/listgrid/components/fields/HtmlField.d.ts +24 -0
  60. package/dist/listgrid/components/fields/HtmlField.js +70 -0
  61. package/dist/listgrid/components/fields/ImageField.d.ts +34 -0
  62. package/dist/listgrid/components/fields/ImageField.js +125 -0
  63. package/dist/listgrid/components/fields/InlineMapField.d.ts +40 -0
  64. package/dist/listgrid/components/fields/InlineMapField.js +85 -0
  65. package/dist/listgrid/components/fields/LinkField.d.ts +26 -0
  66. package/dist/listgrid/components/fields/LinkField.js +61 -0
  67. package/dist/listgrid/components/fields/ManyToOneField.d.ts +80 -0
  68. package/dist/listgrid/components/fields/ManyToOneField.js +416 -0
  69. package/dist/listgrid/components/fields/MappedJoinField.d.ts +16 -0
  70. package/dist/listgrid/components/fields/MappedJoinField.js +29 -0
  71. package/dist/listgrid/components/fields/MarkdownField.d.ts +20 -0
  72. package/dist/listgrid/components/fields/MarkdownField.js +58 -0
  73. package/dist/listgrid/components/fields/MessageViewField.d.ts +20 -0
  74. package/dist/listgrid/components/fields/MessageViewField.js +27 -0
  75. package/dist/listgrid/components/fields/MonthField.d.ts +25 -0
  76. package/dist/listgrid/components/fields/MonthField.js +68 -0
  77. package/dist/listgrid/components/fields/MultiSelectField.d.ts +59 -0
  78. package/dist/listgrid/components/fields/MultiSelectField.js +74 -0
  79. package/dist/listgrid/components/fields/MultipleAssetField.d.ts +31 -0
  80. package/dist/listgrid/components/fields/MultipleAssetField.js +200 -0
  81. package/dist/listgrid/components/fields/NumberField.d.ts +54 -0
  82. package/dist/listgrid/components/fields/NumberField.js +216 -0
  83. package/dist/listgrid/components/fields/PasswordField.d.ts +23 -0
  84. package/dist/listgrid/components/fields/PasswordField.js +70 -0
  85. package/dist/listgrid/components/fields/PhoneNumberField.d.ts +39 -0
  86. package/dist/listgrid/components/fields/PhoneNumberField.js +91 -0
  87. package/dist/listgrid/components/fields/Preset.d.ts +68 -0
  88. package/dist/listgrid/components/fields/Preset.js +306 -0
  89. package/dist/listgrid/components/fields/ProfileField.d.ts +14 -0
  90. package/dist/listgrid/components/fields/ProfileField.js +25 -0
  91. package/dist/listgrid/components/fields/QrField.d.ts +21 -0
  92. package/dist/listgrid/components/fields/QrField.js +31 -0
  93. package/dist/listgrid/components/fields/RuleField.d.ts +11 -0
  94. package/dist/listgrid/components/fields/RuleField.js +24 -0
  95. package/dist/listgrid/components/fields/SelectField.d.ts +223 -0
  96. package/dist/listgrid/components/fields/SelectField.js +379 -0
  97. package/dist/listgrid/components/fields/SelectFieldRenderer.d.ts +35 -0
  98. package/dist/listgrid/components/fields/SelectFieldRenderer.js +363 -0
  99. package/dist/listgrid/components/fields/StatusChangeReasonModal.d.ts +18 -0
  100. package/dist/listgrid/components/fields/StatusChangeReasonModal.js +25 -0
  101. package/dist/listgrid/components/fields/StringField.d.ts +34 -0
  102. package/dist/listgrid/components/fields/StringField.js +131 -0
  103. package/dist/listgrid/components/fields/TagField.d.ts +35 -0
  104. package/dist/listgrid/components/fields/TagField.js +75 -0
  105. package/dist/listgrid/components/fields/TelephoneNumberField.d.ts +35 -0
  106. package/dist/listgrid/components/fields/TelephoneNumberField.js +121 -0
  107. package/dist/listgrid/components/fields/TextareaField.d.ts +27 -0
  108. package/dist/listgrid/components/fields/TextareaField.js +47 -0
  109. package/dist/listgrid/components/fields/TimeField.d.ts +21 -0
  110. package/dist/listgrid/components/fields/TimeField.js +40 -0
  111. package/dist/listgrid/components/fields/XrefAvailableDateMappingField.d.ts +22 -0
  112. package/dist/listgrid/components/fields/XrefAvailableDateMappingField.js +39 -0
  113. package/dist/listgrid/components/fields/XrefMappingField.d.ts +30 -0
  114. package/dist/listgrid/components/fields/XrefMappingField.js +59 -0
  115. package/dist/listgrid/components/fields/XrefPreferMappingField.d.ts +30 -0
  116. package/dist/listgrid/components/fields/XrefPreferMappingField.js +53 -0
  117. package/dist/listgrid/components/fields/XrefPriceMappingField.d.ts +33 -0
  118. package/dist/listgrid/components/fields/XrefPriceMappingField.js +56 -0
  119. package/dist/listgrid/components/fields/YearField.d.ts +32 -0
  120. package/dist/listgrid/components/fields/YearField.js +99 -0
  121. package/dist/listgrid/components/fields/abstract/AbstractDateField.d.ts +33 -0
  122. package/dist/listgrid/components/fields/abstract/AbstractDateField.js +61 -0
  123. package/dist/listgrid/components/fields/abstract/AbstractManyToOneField.d.ts +97 -0
  124. package/dist/listgrid/components/fields/abstract/AbstractManyToOneField.js +50 -0
  125. package/dist/listgrid/components/fields/abstract/CheckButtonValidationField.d.ts +22 -0
  126. package/dist/listgrid/components/fields/abstract/CheckButtonValidationField.js +92 -0
  127. package/dist/listgrid/components/fields/abstract/FormField.d.ts +250 -0
  128. package/dist/listgrid/components/fields/abstract/FormField.js +606 -0
  129. package/dist/listgrid/components/fields/abstract/ListableFormField.d.ts +140 -0
  130. package/dist/listgrid/components/fields/abstract/ListableFormField.js +285 -0
  131. package/dist/listgrid/components/fields/abstract/OptionalField.d.ts +96 -0
  132. package/dist/listgrid/components/fields/abstract/OptionalField.js +310 -0
  133. package/dist/listgrid/components/fields/abstract/index.d.ts +6 -0
  134. package/dist/listgrid/components/fields/abstract/index.js +12 -0
  135. package/dist/listgrid/components/fields/address/AddressFieldView.d.ts +9 -0
  136. package/dist/listgrid/components/fields/address/AddressFieldView.js +92 -0
  137. package/dist/listgrid/components/fields/address/AddressMapField.d.ts +33 -0
  138. package/dist/listgrid/components/fields/address/AddressMapField.js +49 -0
  139. package/dist/listgrid/components/fields/address/KakaoMap.d.ts +10 -0
  140. package/dist/listgrid/components/fields/address/KakaoMap.js +50 -0
  141. package/dist/listgrid/components/fields/address/PostCodeSelector.d.ts +9 -0
  142. package/dist/listgrid/components/fields/address/PostCodeSelector.js +125 -0
  143. package/dist/listgrid/components/fields/contentasset/ContentAssetField.d.ts +61 -0
  144. package/dist/listgrid/components/fields/contentasset/ContentAssetField.js +80 -0
  145. package/dist/listgrid/components/fields/contentasset/ContentAssetItem.d.ts +17 -0
  146. package/dist/listgrid/components/fields/contentasset/ContentAssetItem.js +67 -0
  147. package/dist/listgrid/components/fields/contentasset/components/AddContentDialog.d.ts +11 -0
  148. package/dist/listgrid/components/fields/contentasset/components/AddContentDialog.js +68 -0
  149. package/dist/listgrid/components/fields/contentasset/components/ContentAssetItemUI.d.ts +30 -0
  150. package/dist/listgrid/components/fields/contentasset/components/ContentAssetItemUI.js +38 -0
  151. package/dist/listgrid/components/fields/contentasset/hooks/useContentAsset.d.ts +36 -0
  152. package/dist/listgrid/components/fields/contentasset/hooks/useContentAsset.js +188 -0
  153. package/dist/listgrid/components/fields/contentasset/index.d.ts +2 -0
  154. package/dist/listgrid/components/fields/contentasset/index.js +1 -0
  155. package/dist/listgrid/components/fields/contentasset/types.d.ts +50 -0
  156. package/dist/listgrid/components/fields/contentasset/types.js +48 -0
  157. package/dist/listgrid/components/fields/filter/DatetimeFilter.d.ts +7 -0
  158. package/dist/listgrid/components/fields/filter/DatetimeFilter.js +46 -0
  159. package/dist/listgrid/components/fields/filter/NumberFilter.d.ts +7 -0
  160. package/dist/listgrid/components/fields/filter/NumberFilter.js +74 -0
  161. package/dist/listgrid/components/fields/rule/RuleBasedFieldView.d.ts +15 -0
  162. package/dist/listgrid/components/fields/rule/RuleBasedFieldView.js +351 -0
  163. package/dist/listgrid/components/fields/rule/RuleBasedSelector.d.ts +13 -0
  164. package/dist/listgrid/components/fields/rule/RuleBasedSelector.js +75 -0
  165. package/dist/listgrid/components/fields/rule/RuleCondition.d.ts +14 -0
  166. package/dist/listgrid/components/fields/rule/RuleCondition.js +173 -0
  167. package/dist/listgrid/components/fields/rule/RuleFieldRenderer.d.ts +7 -0
  168. package/dist/listgrid/components/fields/rule/RuleFieldRenderer.js +21 -0
  169. package/dist/listgrid/components/fields/rule/RuleFieldView.d.ts +7 -0
  170. package/dist/listgrid/components/fields/rule/RuleFieldView.js +28 -0
  171. package/dist/listgrid/components/fields/rule/Type.d.ts +54 -0
  172. package/dist/listgrid/components/fields/rule/Type.js +72 -0
  173. package/dist/listgrid/components/fields/view/CardManyToOneView.d.ts +93 -0
  174. package/dist/listgrid/components/fields/view/CardManyToOneView.js +409 -0
  175. package/dist/listgrid/components/fields/view/CopyableTextView.d.ts +11 -0
  176. package/dist/listgrid/components/fields/view/CopyableTextView.js +44 -0
  177. package/dist/listgrid/components/fields/view/DynamicSelectFieldView.d.ts +28 -0
  178. package/dist/listgrid/components/fields/view/DynamicSelectFieldView.js +119 -0
  179. package/dist/listgrid/components/fields/view/LinkFieldView.d.ts +14 -0
  180. package/dist/listgrid/components/fields/view/LinkFieldView.js +41 -0
  181. package/dist/listgrid/components/fields/view/ManyToOneListView.d.ts +8 -0
  182. package/dist/listgrid/components/fields/view/ManyToOneListView.js +25 -0
  183. package/dist/listgrid/components/fields/view/ManyToOneMultiFilterView.d.ts +12 -0
  184. package/dist/listgrid/components/fields/view/ManyToOneMultiFilterView.js +142 -0
  185. package/dist/listgrid/components/fields/view/ManyToOneView.d.ts +8 -0
  186. package/dist/listgrid/components/fields/view/ManyToOneView.js +322 -0
  187. package/dist/listgrid/components/fields/view/MultipleAssetUpload.d.ts +7 -0
  188. package/dist/listgrid/components/fields/view/MultipleAssetUpload.js +47 -0
  189. package/dist/listgrid/components/fields/view/PhoneNumberFieldView.d.ts +19 -0
  190. package/dist/listgrid/components/fields/view/PhoneNumberFieldView.js +82 -0
  191. package/dist/listgrid/components/fields/view/PhoneNumberListView.d.ts +9 -0
  192. package/dist/listgrid/components/fields/view/PhoneNumberListView.js +49 -0
  193. package/dist/listgrid/components/fields/view/SelectBoxManyToOneView.d.ts +47 -0
  194. package/dist/listgrid/components/fields/view/SelectBoxManyToOneView.js +286 -0
  195. package/dist/listgrid/components/fields/view/SmsModal.d.ts +6 -0
  196. package/dist/listgrid/components/fields/view/SmsModal.js +124 -0
  197. package/dist/listgrid/components/fields/view/TreeSelectView.d.ts +11 -0
  198. package/dist/listgrid/components/fields/view/TreeSelectView.js +118 -0
  199. package/dist/listgrid/components/fields/view/XrefAvailableDateMappingView.d.ts +19 -0
  200. package/dist/listgrid/components/fields/view/XrefAvailableDateMappingView.js +305 -0
  201. package/dist/listgrid/components/fields/view/XrefMappingView.d.ts +16 -0
  202. package/dist/listgrid/components/fields/view/XrefMappingView.js +173 -0
  203. package/dist/listgrid/components/fields/view/XrefPiceMappingView.d.ts +19 -0
  204. package/dist/listgrid/components/fields/view/XrefPiceMappingView.js +319 -0
  205. package/dist/listgrid/components/fields/view/XrefPreferMappingView.d.ts +19 -0
  206. package/dist/listgrid/components/fields/view/XrefPreferMappingView.js +261 -0
  207. package/dist/listgrid/components/fields/view/XrefPriorityMappingView.d.ts +19 -0
  208. package/dist/listgrid/components/fields/view/XrefPriorityMappingView.js +180 -0
  209. package/dist/listgrid/components/form/FieldRenderer.d.ts +23 -0
  210. package/dist/listgrid/components/form/FieldRenderer.js +292 -0
  211. package/dist/listgrid/components/form/SubCollectionRenderer.d.ts +22 -0
  212. package/dist/listgrid/components/form/SubCollectionRenderer.js +46 -0
  213. package/dist/listgrid/components/form/ViewEntityForm.d.ts +14 -0
  214. package/dist/listgrid/components/form/ViewEntityForm.js +124 -0
  215. package/dist/listgrid/components/form/ViewFieldGroup.d.ts +27 -0
  216. package/dist/listgrid/components/form/ViewFieldGroup.js +164 -0
  217. package/dist/listgrid/components/form/ViewTab.d.ts +24 -0
  218. package/dist/listgrid/components/form/ViewTab.js +68 -0
  219. package/dist/listgrid/components/form/ViewTabPanel.d.ts +14 -0
  220. package/dist/listgrid/components/form/ViewTabPanel.js +32 -0
  221. package/dist/listgrid/components/form/context/EntityFormThemeContext.d.ts +52 -0
  222. package/dist/listgrid/components/form/context/EntityFormThemeContext.js +129 -0
  223. package/dist/listgrid/components/form/context/index.d.ts +1 -0
  224. package/dist/listgrid/components/form/context/index.js +1 -0
  225. package/dist/listgrid/components/form/hooks/useAlertManager.d.ts +12 -0
  226. package/dist/listgrid/components/form/hooks/useAlertManager.js +103 -0
  227. package/dist/listgrid/components/form/hooks/useEntityFormAutoSave.d.ts +23 -0
  228. package/dist/listgrid/components/form/hooks/useEntityFormAutoSave.js +145 -0
  229. package/dist/listgrid/components/form/hooks/useEntityFormInitializer.d.ts +24 -0
  230. package/dist/listgrid/components/form/hooks/useEntityFormInitializer.js +109 -0
  231. package/dist/listgrid/components/form/hooks/useEntityFormLogic.d.ts +63 -0
  232. package/dist/listgrid/components/form/hooks/useEntityFormLogic.js +513 -0
  233. package/dist/listgrid/components/form/hooks/useEntityFormSave.d.ts +28 -0
  234. package/dist/listgrid/components/form/hooks/useEntityFormSave.js +89 -0
  235. package/dist/listgrid/components/form/hooks/useEntityFormTitle.d.ts +12 -0
  236. package/dist/listgrid/components/form/hooks/useEntityFormTitle.js +53 -0
  237. package/dist/listgrid/components/form/themes/defaultTheme.d.ts +11 -0
  238. package/dist/listgrid/components/form/themes/defaultTheme.js +129 -0
  239. package/dist/listgrid/components/form/themes/index.d.ts +1 -0
  240. package/dist/listgrid/components/form/themes/index.js +1 -0
  241. package/dist/listgrid/components/form/types/ViewEntityForm.types.d.ts +169 -0
  242. package/dist/listgrid/components/form/types/ViewEntityForm.types.js +1 -0
  243. package/dist/listgrid/components/form/types/ViewEntityFormAlerts.types.d.ts +26 -0
  244. package/dist/listgrid/components/form/types/ViewEntityFormAlerts.types.js +1 -0
  245. package/dist/listgrid/components/form/types/ViewEntityFormButtons.types.d.ts +49 -0
  246. package/dist/listgrid/components/form/types/ViewEntityFormButtons.types.js +1 -0
  247. package/dist/listgrid/components/form/types/ViewEntityFormTheme.types.d.ts +518 -0
  248. package/dist/listgrid/components/form/types/ViewEntityFormTheme.types.js +1 -0
  249. package/dist/listgrid/components/form/ui/AlertItem.d.ts +7 -0
  250. package/dist/listgrid/components/form/ui/AlertItem.js +18 -0
  251. package/dist/listgrid/components/form/ui/CreateStepButtons.d.ts +25 -0
  252. package/dist/listgrid/components/form/ui/CreateStepButtons.js +18 -0
  253. package/dist/listgrid/components/form/ui/CreateStepView.d.ts +39 -0
  254. package/dist/listgrid/components/form/ui/CreateStepView.js +50 -0
  255. package/dist/listgrid/components/form/ui/ViewEntityError.d.ts +13 -0
  256. package/dist/listgrid/components/form/ui/ViewEntityError.js +90 -0
  257. package/dist/listgrid/components/form/ui/ViewEntityFormAlerts.d.ts +3 -0
  258. package/dist/listgrid/components/form/ui/ViewEntityFormAlerts.js +24 -0
  259. package/dist/listgrid/components/form/ui/ViewEntityFormButtons.d.ts +24 -0
  260. package/dist/listgrid/components/form/ui/ViewEntityFormButtons.js +208 -0
  261. package/dist/listgrid/components/form/ui/ViewEntityFormErrors.d.ts +25 -0
  262. package/dist/listgrid/components/form/ui/ViewEntityFormErrors.js +9 -0
  263. package/dist/listgrid/components/form/ui/ViewEntityFormFields.d.ts +38 -0
  264. package/dist/listgrid/components/form/ui/ViewEntityFormFields.js +25 -0
  265. package/dist/listgrid/components/form/ui/ViewEntityFormSkeleton.d.ts +16 -0
  266. package/dist/listgrid/components/form/ui/ViewEntityFormSkeleton.js +79 -0
  267. package/dist/listgrid/components/form/ui/ViewEntityFormTitle.d.ts +15 -0
  268. package/dist/listgrid/components/form/ui/ViewEntityFormTitle.js +21 -0
  269. package/dist/listgrid/components/form/ui/ViewFieldError.d.ts +5 -0
  270. package/dist/listgrid/components/form/ui/ViewFieldError.js +12 -0
  271. package/dist/listgrid/components/form/ui/ViewHelpIcon.d.ts +5 -0
  272. package/dist/listgrid/components/form/ui/ViewHelpIcon.js +13 -0
  273. package/dist/listgrid/components/form/ui/ViewHelpText.d.ts +5 -0
  274. package/dist/listgrid/components/form/ui/ViewHelpText.js +10 -0
  275. package/dist/listgrid/components/form/ui/buttons/ClosePopupButton.d.ts +8 -0
  276. package/dist/listgrid/components/form/ui/buttons/ClosePopupButton.js +32 -0
  277. package/dist/listgrid/components/form/ui/buttons/DeleteButton.d.ts +2 -0
  278. package/dist/listgrid/components/form/ui/buttons/DeleteButton.js +101 -0
  279. package/dist/listgrid/components/form/ui/buttons/ListButton.d.ts +2 -0
  280. package/dist/listgrid/components/form/ui/buttons/ListButton.js +55 -0
  281. package/dist/listgrid/components/form/ui/buttons/SaveButton.d.ts +2 -0
  282. package/dist/listgrid/components/form/ui/buttons/SaveButton.js +55 -0
  283. package/dist/listgrid/components/helper/FieldRendererHelper.d.ts +23 -0
  284. package/dist/listgrid/components/helper/FieldRendererHelper.js +27 -0
  285. package/dist/listgrid/components/helper/ShowNotifications.d.ts +13 -0
  286. package/dist/listgrid/components/helper/ShowNotifications.js +58 -0
  287. package/dist/listgrid/components/list/AdvancedSearchForm.d.ts +17 -0
  288. package/dist/listgrid/components/list/AdvancedSearchForm.js +113 -0
  289. package/dist/listgrid/components/list/AdvancedSearchFormV2.d.ts +19 -0
  290. package/dist/listgrid/components/list/AdvancedSearchFormV2.js +347 -0
  291. package/dist/listgrid/components/list/ListGridHeader.d.ts +2 -0
  292. package/dist/listgrid/components/list/ListGridHeader.js +21 -0
  293. package/dist/listgrid/components/list/QuickSearchBar.d.ts +22 -0
  294. package/dist/listgrid/components/list/QuickSearchBar.js +17 -0
  295. package/dist/listgrid/components/list/RowItem.d.ts +2 -0
  296. package/dist/listgrid/components/list/RowItem.js +70 -0
  297. package/dist/listgrid/components/list/SubCollectionButtons.d.ts +2 -0
  298. package/dist/listgrid/components/list/SubCollectionButtons.js +36 -0
  299. package/dist/listgrid/components/list/ViewFieldSelector.d.ts +10 -0
  300. package/dist/listgrid/components/list/ViewFieldSelector.js +48 -0
  301. package/dist/listgrid/components/list/ViewListGrid.d.ts +2 -0
  302. package/dist/listgrid/components/list/ViewListGrid.js +359 -0
  303. package/dist/listgrid/components/list/context/EntityFormScopeContext.d.ts +39 -0
  304. package/dist/listgrid/components/list/context/EntityFormScopeContext.js +75 -0
  305. package/dist/listgrid/components/list/context/ListGridThemeContext.d.ts +70 -0
  306. package/dist/listgrid/components/list/context/ListGridThemeContext.js +157 -0
  307. package/dist/listgrid/components/list/context/index.d.ts +2 -0
  308. package/dist/listgrid/components/list/context/index.js +1 -0
  309. package/dist/listgrid/components/list/hooks/searchFormUrlSync.d.ts +42 -0
  310. package/dist/listgrid/components/list/hooks/searchFormUrlSync.js +212 -0
  311. package/dist/listgrid/components/list/hooks/urlStateParsers.d.ts +63 -0
  312. package/dist/listgrid/components/list/hooks/urlStateParsers.js +241 -0
  313. package/dist/listgrid/components/list/hooks/useCardSubCollectionData.d.ts +34 -0
  314. package/dist/listgrid/components/list/hooks/useCardSubCollectionData.js +181 -0
  315. package/dist/listgrid/components/list/hooks/useListGridHeader.d.ts +6 -0
  316. package/dist/listgrid/components/list/hooks/useListGridHeader.js +92 -0
  317. package/dist/listgrid/components/list/hooks/useListGridLogic.d.ts +2 -0
  318. package/dist/listgrid/components/list/hooks/useListGridLogic.js +625 -0
  319. package/dist/listgrid/components/list/hooks/useListGridUrlState.d.ts +45 -0
  320. package/dist/listgrid/components/list/hooks/useListGridUrlState.js +131 -0
  321. package/dist/listgrid/components/list/hooks/useQuickSearchBar.d.ts +22 -0
  322. package/dist/listgrid/components/list/hooks/useQuickSearchBar.js +104 -0
  323. package/dist/listgrid/components/list/hooks/useSubCollectionExpansion.d.ts +21 -0
  324. package/dist/listgrid/components/list/hooks/useSubCollectionExpansion.js +62 -0
  325. package/dist/listgrid/components/list/themes/defaultListGridTheme.d.ts +14 -0
  326. package/dist/listgrid/components/list/themes/defaultListGridTheme.js +169 -0
  327. package/dist/listgrid/components/list/themes/index.d.ts +4 -0
  328. package/dist/listgrid/components/list/themes/index.js +4 -0
  329. package/dist/listgrid/components/list/themes/variants/mainTheme.d.ts +8 -0
  330. package/dist/listgrid/components/list/themes/variants/mainTheme.js +37 -0
  331. package/dist/listgrid/components/list/themes/variants/modalTheme.d.ts +8 -0
  332. package/dist/listgrid/components/list/themes/variants/modalTheme.js +47 -0
  333. package/dist/listgrid/components/list/themes/variants/subCollectionTheme.d.ts +8 -0
  334. package/dist/listgrid/components/list/themes/variants/subCollectionTheme.js +101 -0
  335. package/dist/listgrid/components/list/types/ListGridHeader.types.d.ts +35 -0
  336. package/dist/listgrid/components/list/types/ListGridHeader.types.js +3 -0
  337. package/dist/listgrid/components/list/types/RowItem.types.d.ts +57 -0
  338. package/dist/listgrid/components/list/types/RowItem.types.js +1 -0
  339. package/dist/listgrid/components/list/types/SubCollectionButtons.type.d.ts +29 -0
  340. package/dist/listgrid/components/list/types/SubCollectionButtons.type.js +1 -0
  341. package/dist/listgrid/components/list/types/ViewListGrid.types.d.ts +152 -0
  342. package/dist/listgrid/components/list/types/ViewListGrid.types.js +2 -0
  343. package/dist/listgrid/components/list/types/ViewListGridTheme.types.d.ts +374 -0
  344. package/dist/listgrid/components/list/types/ViewListGridTheme.types.js +1 -0
  345. package/dist/listgrid/components/list/ui/CardFieldRenderer.d.ts +31 -0
  346. package/dist/listgrid/components/list/ui/CardFieldRenderer.js +71 -0
  347. package/dist/listgrid/components/list/ui/CardFieldSection.d.ts +27 -0
  348. package/dist/listgrid/components/list/ui/CardFieldSection.js +108 -0
  349. package/dist/listgrid/components/list/ui/CardItem.d.ts +28 -0
  350. package/dist/listgrid/components/list/ui/CardItem.js +376 -0
  351. package/dist/listgrid/components/list/ui/CardSubCollectionModal.d.ts +38 -0
  352. package/dist/listgrid/components/list/ui/CardSubCollectionModal.js +80 -0
  353. package/dist/listgrid/components/list/ui/CardSubCollectionView.d.ts +44 -0
  354. package/dist/listgrid/components/list/ui/CardSubCollectionView.js +238 -0
  355. package/dist/listgrid/components/list/ui/DataTransferModal.d.ts +12 -0
  356. package/dist/listgrid/components/list/ui/DataTransferModal.js +10 -0
  357. package/dist/listgrid/components/list/ui/EntireChecker.d.ts +11 -0
  358. package/dist/listgrid/components/list/ui/EntireChecker.js +46 -0
  359. package/dist/listgrid/components/list/ui/FieldSelector.d.ts +11 -0
  360. package/dist/listgrid/components/list/ui/FieldSelector.js +40 -0
  361. package/dist/listgrid/components/list/ui/FilterButton.d.ts +7 -0
  362. package/dist/listgrid/components/list/ui/FilterButton.js +5 -0
  363. package/dist/listgrid/components/list/ui/FilterDropdown.d.ts +15 -0
  364. package/dist/listgrid/components/list/ui/FilterDropdown.js +106 -0
  365. package/dist/listgrid/components/list/ui/FilterView.d.ts +12 -0
  366. package/dist/listgrid/components/list/ui/FilterView.js +22 -0
  367. package/dist/listgrid/components/list/ui/HeaderActionButtons.d.ts +10 -0
  368. package/dist/listgrid/components/list/ui/HeaderActionButtons.js +39 -0
  369. package/dist/listgrid/components/list/ui/HeaderField.d.ts +19 -0
  370. package/dist/listgrid/components/list/ui/HeaderField.js +32 -0
  371. package/dist/listgrid/components/list/ui/HeaderFieldFilter.d.ts +14 -0
  372. package/dist/listgrid/components/list/ui/HeaderFieldFilter.js +166 -0
  373. package/dist/listgrid/components/list/ui/HeaderTitle.d.ts +4 -0
  374. package/dist/listgrid/components/list/ui/HeaderTitle.js +13 -0
  375. package/dist/listgrid/components/list/ui/InlineSubCollectionView.d.ts +30 -0
  376. package/dist/listgrid/components/list/ui/InlineSubCollectionView.js +260 -0
  377. package/dist/listgrid/components/list/ui/MemoizedFilterField.d.ts +14 -0
  378. package/dist/listgrid/components/list/ui/MemoizedFilterField.js +67 -0
  379. package/dist/listgrid/components/list/ui/QuickSearchInput.d.ts +9 -0
  380. package/dist/listgrid/components/list/ui/QuickSearchInput.js +17 -0
  381. package/dist/listgrid/components/list/ui/SearchBarActions.d.ts +19 -0
  382. package/dist/listgrid/components/list/ui/SearchBarActions.js +39 -0
  383. package/dist/listgrid/components/list/ui/SortField.d.ts +8 -0
  384. package/dist/listgrid/components/list/ui/SortField.js +42 -0
  385. package/dist/listgrid/components/list/ui/SubCollectionInlineView.d.ts +23 -0
  386. package/dist/listgrid/components/list/ui/SubCollectionInlineView.js +47 -0
  387. package/dist/listgrid/components/list/ui/SubCollectionModal.d.ts +15 -0
  388. package/dist/listgrid/components/list/ui/SubCollectionModal.js +34 -0
  389. package/dist/listgrid/components/list/ui/SubCollectionViewModal.d.ts +13 -0
  390. package/dist/listgrid/components/list/ui/SubCollectionViewModal.js +33 -0
  391. package/dist/listgrid/components/list/ui/SyncTopScrollbar.d.ts +18 -0
  392. package/dist/listgrid/components/list/ui/SyncTopScrollbar.js +91 -0
  393. package/dist/listgrid/components/list/ui/TableSubCollectionView.d.ts +25 -0
  394. package/dist/listgrid/components/list/ui/TableSubCollectionView.js +213 -0
  395. package/dist/listgrid/components/list/ui/ViewColumn.d.ts +2 -0
  396. package/dist/listgrid/components/list/ui/ViewColumn.js +56 -0
  397. package/dist/listgrid/components/list/ui/ViewListGridSkeleton.d.ts +20 -0
  398. package/dist/listgrid/components/list/ui/ViewListGridSkeleton.js +82 -0
  399. package/dist/listgrid/components/list/ui/ViewRows.d.ts +15 -0
  400. package/dist/listgrid/components/list/ui/ViewRows.js +283 -0
  401. package/dist/listgrid/components/list/ui/buttons/CacheClearButton.d.ts +9 -0
  402. package/dist/listgrid/components/list/ui/buttons/CacheClearButton.js +35 -0
  403. package/dist/listgrid/components/list/ui/buttons/CreateButton.d.ts +13 -0
  404. package/dist/listgrid/components/list/ui/buttons/CreateButton.js +13 -0
  405. package/dist/listgrid/components/list/ui/buttons/PriorityButton.d.ts +11 -0
  406. package/dist/listgrid/components/list/ui/buttons/PriorityButton.js +49 -0
  407. package/dist/listgrid/components/list/ui/headerFilterStore.d.ts +8 -0
  408. package/dist/listgrid/components/list/ui/headerFilterStore.js +13 -0
  409. package/dist/listgrid/components/list/utils/mappedByFieldFilter.d.ts +21 -0
  410. package/dist/listgrid/components/list/utils/mappedByFieldFilter.js +54 -0
  411. package/dist/listgrid/components/list/utils/performanceLogger.d.ts +48 -0
  412. package/dist/listgrid/components/list/utils/performanceLogger.js +67 -0
  413. package/dist/listgrid/components/revision/RevisionField.d.ts +13 -0
  414. package/dist/listgrid/components/revision/RevisionField.js +194 -0
  415. package/dist/listgrid/config/AdvancedSearchOpenCache.d.ts +3 -0
  416. package/dist/listgrid/config/AdvancedSearchOpenCache.js +48 -0
  417. package/dist/listgrid/config/CardSubCollectionField.d.ts +133 -0
  418. package/dist/listgrid/config/CardSubCollectionField.js +164 -0
  419. package/dist/listgrid/config/CommonType.d.ts +4 -0
  420. package/dist/listgrid/config/CommonType.js +15 -0
  421. package/dist/listgrid/config/Config.d.ts +251 -0
  422. package/dist/listgrid/config/Config.js +299 -0
  423. package/dist/listgrid/config/EntityField.d.ts +148 -0
  424. package/dist/listgrid/config/EntityField.js +1 -0
  425. package/dist/listgrid/config/EntityFieldGroup.d.ts +37 -0
  426. package/dist/listgrid/config/EntityFieldGroup.js +55 -0
  427. package/dist/listgrid/config/EntityForm.d.ts +101 -0
  428. package/dist/listgrid/config/EntityForm.js +859 -0
  429. package/dist/listgrid/config/EntityFormButton.d.ts +56 -0
  430. package/dist/listgrid/config/EntityFormButton.js +42 -0
  431. package/dist/listgrid/config/EntityFormMethod.d.ts +32 -0
  432. package/dist/listgrid/config/EntityFormMethod.js +152 -0
  433. package/dist/listgrid/config/EntityFormTypes.d.ts +62 -0
  434. package/dist/listgrid/config/EntityFormTypes.js +1 -0
  435. package/dist/listgrid/config/EntityItem.d.ts +86 -0
  436. package/dist/listgrid/config/EntityItem.js +1 -0
  437. package/dist/listgrid/config/EntityTab.d.ts +26 -0
  438. package/dist/listgrid/config/EntityTab.js +68 -0
  439. package/dist/listgrid/config/InlineSubCollectionField.d.ts +184 -0
  440. package/dist/listgrid/config/InlineSubCollectionField.js +194 -0
  441. package/dist/listgrid/config/ListGrid.d.ts +56 -0
  442. package/dist/listgrid/config/ListGrid.js +183 -0
  443. package/dist/listgrid/config/ListGridViewFieldCache.d.ts +3 -0
  444. package/dist/listgrid/config/ListGridViewFieldCache.js +53 -0
  445. package/dist/listgrid/config/OnChangeEntityForm.d.ts +43 -0
  446. package/dist/listgrid/config/OnChangeEntityForm.js +266 -0
  447. package/dist/listgrid/config/RuntimeConfig.d.ts +18 -0
  448. package/dist/listgrid/config/RuntimeConfig.js +22 -0
  449. package/dist/listgrid/config/SubCollectionField.d.ts +119 -0
  450. package/dist/listgrid/config/SubCollectionField.js +241 -0
  451. package/dist/listgrid/config/TableSubCollectionField.d.ts +66 -0
  452. package/dist/listgrid/config/TableSubCollectionField.js +132 -0
  453. package/dist/listgrid/config/form/EntityFormActions.d.ts +69 -0
  454. package/dist/listgrid/config/form/EntityFormActions.js +459 -0
  455. package/dist/listgrid/config/form/EntityFormBase.d.ts +204 -0
  456. package/dist/listgrid/config/form/EntityFormBase.js +526 -0
  457. package/dist/listgrid/config/form/EntityFormData.d.ts +32 -0
  458. package/dist/listgrid/config/form/EntityFormData.js +184 -0
  459. package/dist/listgrid/config/form/EntityFormExtensions.d.ts +37 -0
  460. package/dist/listgrid/config/form/EntityFormExtensions.js +105 -0
  461. package/dist/listgrid/config/form/EntityFormValidation.d.ts +28 -0
  462. package/dist/listgrid/config/form/EntityFormValidation.js +128 -0
  463. package/dist/listgrid/extensions/EntityFormExtension.types.d.ts +52 -0
  464. package/dist/listgrid/extensions/EntityFormExtension.types.js +19 -0
  465. package/dist/listgrid/extensions/FieldExtensions.d.ts +5 -0
  466. package/dist/listgrid/extensions/FieldExtensions.js +21 -0
  467. package/dist/listgrid/form/SearchForm.d.ts +153 -0
  468. package/dist/listgrid/form/SearchForm.js +689 -0
  469. package/dist/listgrid/form/TagsInput/types.d.ts +133 -0
  470. package/dist/listgrid/form/TagsInput/types.js +1 -0
  471. package/dist/listgrid/form/Type.d.ts +50 -0
  472. package/dist/listgrid/form/Type.js +95 -0
  473. package/dist/listgrid/index.d.ts +205 -0
  474. package/dist/listgrid/index.js +244 -0
  475. package/dist/listgrid/loading/index.d.ts +6 -0
  476. package/dist/listgrid/loading/index.js +17 -0
  477. package/dist/listgrid/menu/MenuPermissionChecker.d.ts +15 -0
  478. package/dist/listgrid/menu/MenuPermissionChecker.js +15 -0
  479. package/dist/listgrid/menu/index.d.ts +1 -0
  480. package/dist/listgrid/menu/index.js +1 -0
  481. package/dist/listgrid/message/MessageProvider.d.ts +19 -0
  482. package/dist/listgrid/message/MessageProvider.js +62 -0
  483. package/dist/listgrid/message/index.d.ts +1 -0
  484. package/dist/listgrid/message/index.js +1 -0
  485. package/dist/listgrid/misc/index.d.ts +64 -0
  486. package/dist/listgrid/misc/index.js +478 -0
  487. package/dist/listgrid/router/RouterProvider.d.ts +12 -0
  488. package/dist/listgrid/router/RouterProvider.js +34 -0
  489. package/dist/listgrid/router/index.d.ts +3 -0
  490. package/dist/listgrid/router/index.js +1 -0
  491. package/dist/listgrid/router/types.d.ts +34 -0
  492. package/dist/listgrid/router/types.js +6 -0
  493. package/dist/listgrid/store/index.d.ts +24 -0
  494. package/dist/listgrid/store/index.js +40 -0
  495. package/dist/listgrid/transfer/DataExportProcessor.d.ts +18 -0
  496. package/dist/listgrid/transfer/DataExportProcessor.js +102 -0
  497. package/dist/listgrid/transfer/DataExportService.d.ts +37 -0
  498. package/dist/listgrid/transfer/DataExportService.js +225 -0
  499. package/dist/listgrid/transfer/DataExporter.d.ts +10 -0
  500. package/dist/listgrid/transfer/DataExporter.js +85 -0
  501. package/dist/listgrid/transfer/DataImportDescription.d.ts +8 -0
  502. package/dist/listgrid/transfer/DataImportDescription.js +18 -0
  503. package/dist/listgrid/transfer/DataImportProcessor.d.ts +24 -0
  504. package/dist/listgrid/transfer/DataImportProcessor.js +59 -0
  505. package/dist/listgrid/transfer/DataImportResultView.d.ts +13 -0
  506. package/dist/listgrid/transfer/DataImportResultView.js +64 -0
  507. package/dist/listgrid/transfer/DataImportSample.d.ts +10 -0
  508. package/dist/listgrid/transfer/DataImportSample.js +105 -0
  509. package/dist/listgrid/transfer/DataImporter.d.ts +8 -0
  510. package/dist/listgrid/transfer/DataImporter.js +335 -0
  511. package/dist/listgrid/transfer/DynamicDataImporter.d.ts +4 -0
  512. package/dist/listgrid/transfer/DynamicDataImporter.js +13 -0
  513. package/dist/listgrid/transfer/ExcelPasswordField.d.ts +9 -0
  514. package/dist/listgrid/transfer/ExcelPasswordField.js +23 -0
  515. package/dist/listgrid/transfer/Provider/ExcelProvider.d.ts +24 -0
  516. package/dist/listgrid/transfer/Provider/ExcelProvider.js +194 -0
  517. package/dist/listgrid/transfer/Type.d.ts +176 -0
  518. package/dist/listgrid/transfer/Type.js +568 -0
  519. package/dist/listgrid/ui/GlobalModalManager.d.ts +22 -0
  520. package/dist/listgrid/ui/GlobalModalManager.js +65 -0
  521. package/dist/listgrid/ui/UIProvider.d.ts +151 -0
  522. package/dist/listgrid/ui/UIProvider.js +292 -0
  523. package/dist/listgrid/ui/index.d.ts +2 -0
  524. package/dist/listgrid/ui/index.js +2 -0
  525. package/dist/listgrid/urlState/UrlStateProvider.d.ts +8 -0
  526. package/dist/listgrid/urlState/UrlStateProvider.js +20 -0
  527. package/dist/listgrid/urlState/index.d.ts +4 -0
  528. package/dist/listgrid/urlState/index.js +2 -0
  529. package/dist/listgrid/urlState/types.d.ts +21 -0
  530. package/dist/listgrid/urlState/types.js +14 -0
  531. package/dist/listgrid/utils/BooleanUtil.d.ts +1 -0
  532. package/dist/listgrid/utils/BooleanUtil.js +9 -0
  533. package/dist/listgrid/utils/CompareUtil.d.ts +7 -0
  534. package/dist/listgrid/utils/CompareUtil.js +87 -0
  535. package/dist/listgrid/utils/PhoneUtil.d.ts +19 -0
  536. package/dist/listgrid/utils/PhoneUtil.js +38 -0
  537. package/dist/listgrid/utils/RequestUtil.d.ts +6 -0
  538. package/dist/listgrid/utils/RequestUtil.js +6 -0
  539. package/dist/listgrid/utils/StringUtil.d.ts +32 -0
  540. package/dist/listgrid/utils/StringUtil.js +316 -0
  541. package/dist/listgrid/utils/classNames.d.ts +21 -0
  542. package/dist/listgrid/utils/classNames.js +29 -0
  543. package/dist/listgrid/utils/cn.d.ts +12 -0
  544. package/dist/listgrid/utils/cn.js +15 -0
  545. package/dist/listgrid/utils/hash.d.ts +1 -0
  546. package/dist/listgrid/utils/hash.js +15 -0
  547. package/dist/listgrid/utils/i18n.d.ts +16 -0
  548. package/dist/listgrid/utils/i18n.js +31 -0
  549. package/dist/listgrid/utils/index.d.ts +10 -0
  550. package/dist/listgrid/utils/index.js +17 -0
  551. package/dist/listgrid/utils/jsonUtils.d.ts +4 -0
  552. package/dist/listgrid/utils/jsonUtils.js +77 -0
  553. package/dist/listgrid/utils/lazy.d.ts +10 -0
  554. package/dist/listgrid/utils/lazy.js +13 -0
  555. package/dist/listgrid/utils/simpleCrypt.d.ts +4 -0
  556. package/dist/listgrid/utils/simpleCrypt.js +79 -0
  557. package/dist/listgrid/validations/CustomValidation.d.ts +8 -0
  558. package/dist/listgrid/validations/CustomValidation.js +10 -0
  559. package/dist/listgrid/validations/EmailValidation.d.ts +4 -0
  560. package/dist/listgrid/validations/EmailValidation.js +7 -0
  561. package/dist/listgrid/validations/IpAddressValidation.d.ts +26 -0
  562. package/dist/listgrid/validations/IpAddressValidation.js +57 -0
  563. package/dist/listgrid/validations/MinMaxNumberValidation.d.ts +14 -0
  564. package/dist/listgrid/validations/MinMaxNumberValidation.js +28 -0
  565. package/dist/listgrid/validations/PasswordValidation.d.ts +4 -0
  566. package/dist/listgrid/validations/PasswordValidation.js +7 -0
  567. package/dist/listgrid/validations/PhoneNumberValidation.d.ts +12 -0
  568. package/dist/listgrid/validations/PhoneNumberValidation.js +24 -0
  569. package/dist/listgrid/validations/RegexFormularValidation.d.ts +7 -0
  570. package/dist/listgrid/validations/RegexFormularValidation.js +28 -0
  571. package/dist/listgrid/validations/RegexValidation.d.ts +8 -0
  572. package/dist/listgrid/validations/RegexValidation.js +17 -0
  573. package/dist/listgrid/validations/RequiredValidation.d.ts +7 -0
  574. package/dist/listgrid/validations/RequiredValidation.js +12 -0
  575. package/dist/listgrid/validations/StringValidation.d.ts +17 -0
  576. package/dist/listgrid/validations/StringValidation.js +33 -0
  577. package/dist/listgrid/validations/TelephoneNumberValidation.d.ts +12 -0
  578. package/dist/listgrid/validations/TelephoneNumberValidation.js +24 -0
  579. package/dist/listgrid/validations/Validation.d.ts +63 -0
  580. package/dist/listgrid/validations/Validation.js +72 -0
  581. package/dist/listgrid/view/ViewEntityFormWrapper.d.ts +16 -0
  582. package/dist/listgrid/view/ViewEntityFormWrapper.js +98 -0
  583. package/dist/listgrid/view/ViewListGridWrapper.d.ts +10 -0
  584. package/dist/listgrid/view/ViewListGridWrapper.js +96 -0
  585. package/dist/styles/base.css +116 -0
  586. package/dist/styles/components.css +1404 -0
  587. package/dist/styles/layouts.css +3206 -0
  588. package/dist/styles/primitives.css +1542 -0
  589. package/dist/styles/tokens.css +218 -0
  590. package/dist/styles.css +6486 -0
  591. package/docs/PRIMITIVES.md +271 -0
  592. package/package.json +201 -0
@@ -0,0 +1,459 @@
1
+ import { EntityFormData } from './EntityFormData';
2
+ import { AbstractManyToOneField, FormField, ListableFormField, OptionalField, } from '../../components/fields/abstract';
3
+ import { StatusCreatedAtFieldPreset, StatusCreatedAndUpdatedAtFieldPreset, ActiveField, } from '../../components/fields/Preset';
4
+ import { DEFAULT_TAB_INFO, DEFAULT_FIELD_GROUP_INFO, STATUS_TAB_INFO, } from '../../config/Config';
5
+ import { EntityTab } from '../../config/EntityTab';
6
+ import { SubCollectionField } from '../../config/SubCollectionField';
7
+ import { isTrue } from '../../utils/BooleanUtil';
8
+ import { StringField } from '../../components/fields/StringField';
9
+ import { EntityForm } from '../../config/EntityForm';
10
+ import { DataTransferConfig, DataField } from '../../transfer/Type';
11
+ import { isEmpty } from '../../utils/CompareUtil';
12
+ export class EntityFormActions extends EntityFormData {
13
+ constructor(name, url) {
14
+ super(name, url);
15
+ }
16
+ getListableFieldOrder(field) {
17
+ const listConfig = field.listConfig;
18
+ if (listConfig?.order !== undefined) {
19
+ return listConfig.order;
20
+ }
21
+ let order = field.order ?? 0;
22
+ const tab = this.getTab(field.getTabId());
23
+ if (tab) {
24
+ order = tab.order * 1000000 + order;
25
+ const fieldGroup = this.getFieldGroup(tab.id, field.getFieldGroupId());
26
+ if (fieldGroup) {
27
+ order = fieldGroup.order * 10000 + order;
28
+ }
29
+ }
30
+ return order;
31
+ }
32
+ /**
33
+ * Alert 메시지를 제거합니다.
34
+ * @param includePersistent persistent 메시지도 제거할지 여부 (true면 persistent 메시지도 제거)
35
+ * @returns EntityForm 인스턴스
36
+ */
37
+ clearAlertMessages(includePersistent = false) {
38
+ if (includePersistent) {
39
+ // persistent 메시지도 포함하여 모두 제거
40
+ this.alertMessages = [];
41
+ }
42
+ else {
43
+ // persistent가 true인 메시지만 남기고 제거
44
+ this.alertMessages = this.alertMessages.filter((msg) => msg.persistent === true);
45
+ }
46
+ return this;
47
+ }
48
+ /**
49
+ * Alert 메시지를 추가합니다.
50
+ * @param messages 추가할 Alert 메시지 배열
51
+ * @returns EntityForm 인스턴스
52
+ */
53
+ withAlertMessages(messages) {
54
+ // 기존 메시지 중 같은 key가 없는 것만 유지
55
+ const existingKeys = new Set(messages.map((m) => m.key));
56
+ const filteredExisting = this.alertMessages.filter((m) => !existingKeys.has(m.key));
57
+ // 새 메시지와 합치기
58
+ this.alertMessages = [...filteredExisting, ...messages];
59
+ return this;
60
+ }
61
+ /**
62
+ * 특정 키의 Alert 메시지를 제거합니다.
63
+ * @param key 제거할 메시지의 키
64
+ * @returns EntityForm 인스턴스
65
+ */
66
+ removeAlertMessage(key) {
67
+ this.alertMessages = this.alertMessages.filter((msg) => msg.key !== key);
68
+ return this;
69
+ }
70
+ withExcludeListFields(...excludeListFields) {
71
+ if (this.excludeListFields) {
72
+ // 중복 제거 후 추가
73
+ const fieldsSet = new Set([...this.excludeListFields, ...excludeListFields]);
74
+ this.excludeListFields = [...fieldsSet];
75
+ }
76
+ return this;
77
+ }
78
+ /**
79
+ * 현재 Alert 메시지들을 반환합니다.
80
+ * @returns Alert 메시지 배열
81
+ */
82
+ getAlertMessages() {
83
+ return [...this.alertMessages];
84
+ }
85
+ /**
86
+ * 모든 메시지를 제거합니다. (현재는 Alert 메시지만 지원)
87
+ * @param includePersistent persistent 메시지도 제거할지 여부 (true면 persistent 메시지도 제거)
88
+ * @returns EntityForm 인스턴스
89
+ */
90
+ clearAllMessages(includePersistent = false) {
91
+ // Alert 메시지 제거
92
+ this.clearAlertMessages(includePersistent);
93
+ // TODO: Toast, SweetAlert 메시지 지원 추가 필요
94
+ return this;
95
+ }
96
+ withListConfig(fieldName, config) {
97
+ const field = this.getField(fieldName);
98
+ if (field !== undefined && field instanceof ListableFormField) {
99
+ field.withListConfig(config);
100
+ }
101
+ return this;
102
+ }
103
+ withCreatedAtField() {
104
+ return this.addFields(StatusCreatedAtFieldPreset);
105
+ }
106
+ withCreatedAndUpdatedAtFields() {
107
+ return this.addFields(StatusCreatedAndUpdatedAtFieldPreset);
108
+ }
109
+ addFields(props) {
110
+ if (props.items.length === 0) {
111
+ return this;
112
+ }
113
+ const tab = props.tab ?? DEFAULT_TAB_INFO;
114
+ const fieldGroup = props.fieldGroup ?? DEFAULT_FIELD_GROUP_INFO;
115
+ const overwrite = props.overwrite ?? false; // 기본값은 false (중복 필드 추가 방지)
116
+ let entityTab;
117
+ if (this.hasTab(tab.id)) {
118
+ entityTab = this.getTab(tab.id);
119
+ }
120
+ else {
121
+ // create entityTab
122
+ entityTab = new EntityTab(tab);
123
+ this.tabs.set(tab.id, entityTab);
124
+ }
125
+ for (const field of props.items) {
126
+ // 중복 체크: overwrite가 false이고 이미 필드가 존재하면 건너뛴다
127
+ if (!overwrite) {
128
+ if (field instanceof FormField && this.fields.has(field.name)) {
129
+ continue; // 이미 존재하는 필드는 추가하지 않음
130
+ }
131
+ else if (field instanceof SubCollectionField && this.collections.has(field.name)) {
132
+ continue; // 이미 존재하는 컬렉션은 추가하지 않음
133
+ }
134
+ }
135
+ entityTab.addField(fieldGroup, field);
136
+ const target = field.withTabId(tab.id).withFieldGroupId(fieldGroup.id).clone();
137
+ if (target instanceof FormField) {
138
+ // field 의 tabInfo, fieldGroupInfo 를 설정한다.
139
+ this.fields.set(field.name, target);
140
+ }
141
+ else if (field instanceof SubCollectionField) {
142
+ this.collections.set(field.name, target);
143
+ }
144
+ }
145
+ return this;
146
+ }
147
+ removeField(fieldName) {
148
+ this.fields.delete(fieldName);
149
+ }
150
+ /**
151
+ * Field 와 Collection 모두 EntityItem 을 인수로 받기 때문에 둘 간의 차이는 없다.
152
+ * @param props
153
+ */
154
+ addCollections(props) {
155
+ return this.addFields(props);
156
+ }
157
+ useListFields(...fieldNames) {
158
+ if (fieldNames.length === 0) {
159
+ return this;
160
+ }
161
+ for (const fieldName of fieldNames) {
162
+ const field = this.getField(fieldName);
163
+ if (field && field instanceof ListableFormField) {
164
+ field.useListField();
165
+ }
166
+ }
167
+ return this;
168
+ }
169
+ /**
170
+ * ListGrid 를 그릴 때 getListField() 를 호출하면 자동으로 리스트 필드를 만든다.
171
+ */
172
+ getListFields() {
173
+ const listFields = [];
174
+ const excludeFields = this.excludeListFields ?? [];
175
+ let temp = undefined;
176
+ Array.from(this.fields.values()).forEach((field) => {
177
+ // exclude 로 저징된 필드가 아닌 경우에만 ListGridField 로 지정한다.
178
+ if (field instanceof ListableFormField && !excludeFields.includes(field.getName())) {
179
+ if (field.isSupportList()) {
180
+ listFields.push(field);
181
+ }
182
+ // 설정된 리스트 필드가 하나도 없는 경우를 대비해 첫번째 리스트 필드에 대해 따로 저장해 둔다.
183
+ if (temp === undefined) {
184
+ temp = field;
185
+ }
186
+ }
187
+ });
188
+ if (listFields.length === 0) {
189
+ // 하나도 없는 경우에는 에러
190
+ if (temp === undefined) {
191
+ throw new Error('There is no list field');
192
+ }
193
+ listFields.push(temp);
194
+ }
195
+ // sort by listFields[0].getListConfig()?.order
196
+ listFields.sort((a, b) => {
197
+ const aOrder = this.getListableFieldOrder(a);
198
+ const bOrder = this.getListableFieldOrder(b);
199
+ return aOrder - bOrder;
200
+ });
201
+ return listFields;
202
+ }
203
+ getFilterableFields() {
204
+ const filterFields = [];
205
+ let temp = undefined;
206
+ let manyToOneAdded = false;
207
+ Array.from(this.fields.values()).forEach((field) => {
208
+ // exclude 로 저징된 필드가 아닌 경우에만 ListGridField 로 지정한다.
209
+ if (field instanceof ListableFormField) {
210
+ if (field.isFilterable()) {
211
+ filterFields.push(field);
212
+ // 이 필드의 type 이 manyToOne 인 경우에는 그 필드의 EntityForm 설정을 찾아서 name 필드가 있다면 검색 필터에 추가로 지정해 준다.
213
+ if (field instanceof AbstractManyToOneField &&
214
+ !('includeUser' in field && isTrue(field.includeUser))) {
215
+ const entityForm = field.getEntityForm();
216
+ if (entityForm && entityForm.hasField('name')) {
217
+ const originNameField = entityForm.getField('name');
218
+ if (originNameField instanceof ListableFormField &&
219
+ isTrue(originNameField.getListConfig()?.filterable)) {
220
+ const nameField = new StringField(field.name + '.name', field.order + 1)
221
+ .withLabel(field.getLabel() + ' 이름')
222
+ .withViewHidden()
223
+ .withListConfig({
224
+ order: field.listConfig?.order ? field.listConfig.order + 1 : field.order + 1,
225
+ support: false,
226
+ filterable: true,
227
+ sortable: false,
228
+ quickSearch: true,
229
+ op: 'LIKE',
230
+ });
231
+ filterFields.push(nameField);
232
+ manyToOneAdded = true;
233
+ }
234
+ }
235
+ }
236
+ // UserField with includeUser=true 체크
237
+ if (field instanceof AbstractManyToOneField &&
238
+ 'includeUser' in field &&
239
+ isTrue(field.includeUser)) {
240
+ const entityForm = field.getEntityForm();
241
+ if (entityForm && entityForm.hasField('user.name')) {
242
+ const nameField = new StringField(field.name + '.user.name', field.order + 1)
243
+ .withLabel(field.getLabel() + ' 이름')
244
+ .withViewHidden()
245
+ .withListConfig({
246
+ order: field.listConfig?.order ? field.listConfig.order + 1 : 0,
247
+ support: false,
248
+ filterable: true,
249
+ sortable: false,
250
+ quickSearch: true,
251
+ op: 'LIKE',
252
+ });
253
+ filterFields.push(nameField);
254
+ manyToOneAdded = true;
255
+ }
256
+ }
257
+ }
258
+ // 설정된 리스트 필드가 하나도 없는 경우를 대비해 첫번째 리스트 필드에 대해 따로 저장해 둔다.
259
+ if (temp === undefined) {
260
+ temp = field;
261
+ }
262
+ }
263
+ });
264
+ if (filterFields.length === 0) {
265
+ // 하나도 없는 경우에는 에러
266
+ if (temp === undefined) {
267
+ throw new Error('There is no list field');
268
+ }
269
+ filterFields.push(temp);
270
+ }
271
+ // manyToOneAdded 라면 filterFields 중에 중복된 값이 있는지 확인한다.
272
+ if (manyToOneAdded) {
273
+ const filteredFields = [];
274
+ for (const field of filterFields) {
275
+ if (!filteredFields.some((f) => f.getName() === field.getName())) {
276
+ filteredFields.push(field);
277
+ }
278
+ }
279
+ filterFields.splice(0, filterFields.length, ...filteredFields);
280
+ }
281
+ // sort by listFields[0].getListConfig()?.order
282
+ filterFields.sort((a, b) => {
283
+ const aOrder = this.getListableFieldOrder(a);
284
+ const bOrder = this.getListableFieldOrder(b);
285
+ return aOrder - bOrder;
286
+ });
287
+ return filterFields;
288
+ }
289
+ getViewOrder(tabId, fieldGroupId, fieldOrder) {
290
+ const tab = this.getTab(tabId);
291
+ if (tab) {
292
+ const fieldGroup = tab.fieldGroups.find((group) => group.id === fieldGroupId);
293
+ if (fieldGroup) {
294
+ return tab.order * 10000 + fieldGroup.order * 1000 + fieldOrder;
295
+ }
296
+ }
297
+ return fieldOrder;
298
+ }
299
+ withDataTransferConfig(props) {
300
+ const config = new DataTransferConfig(props, this.getUrl());
301
+ if (!config.export) {
302
+ config.withExportUrl(this.getUrl());
303
+ }
304
+ if (!config.exportFileName) {
305
+ config.withExportFileName(this.title?.title ?? this.name);
306
+ }
307
+ if (props.fieldNames && props.fieldNames.length > 0) {
308
+ const dataFields = this.getDataFields(props.fieldNames);
309
+ if (dataFields.length > 0) {
310
+ config.setDataFields(dataFields);
311
+ }
312
+ }
313
+ else {
314
+ // 모든 필드가 export 또는 import 대상이 되어야 한다.
315
+ // 하지만 이 메소드가 field 가 생성되기 전 호출될 수도 있으므로 여기에서 필드를 조회해서는 안 된다.
316
+ // export.fields 가 셋팅이 안 된 경우 EntityForm 에서 따로 정보를 가져와야 한다.
317
+ }
318
+ this.dataTransferConfig = config;
319
+ return this;
320
+ }
321
+ getDataFields(fieldNames, dataTransferRules) {
322
+ const dataFields = [];
323
+ fieldNames.forEach((fieldName) => {
324
+ const field = this.getField(fieldName);
325
+ if (field) {
326
+ const dataField = DataField.create({
327
+ name: field.name,
328
+ label: field.label !== undefined && typeof field.label === 'string' ? field.label : field.name,
329
+ type: field.type,
330
+ dataTransferRule: dataTransferRules?.get(field.name),
331
+ });
332
+ if (field instanceof OptionalField) {
333
+ dataField.withOptions(field.options ?? []);
334
+ }
335
+ dataFields.push(dataField);
336
+ }
337
+ });
338
+ return dataFields;
339
+ }
340
+ async getExportableFields() {
341
+ if (this.dataTransferConfig !== undefined) {
342
+ if (this.dataTransferConfig.isSupportExport()) {
343
+ // export 를 지원하는 경우에만 필드를 리턴할 수 있다.
344
+ if (isEmpty(this.dataTransferConfig.export?.fields)) {
345
+ return await this.getDataFieldsFromFields();
346
+ }
347
+ else {
348
+ return this.dataTransferConfig.export?.fields;
349
+ }
350
+ }
351
+ }
352
+ return undefined;
353
+ }
354
+ async getImportableFields() {
355
+ if (this.dataTransferConfig !== undefined) {
356
+ if (this.dataTransferConfig.isSupportImport()) {
357
+ // export 를 지원하는 경우에만 필드를 리턴할 수 있다.
358
+ if (isEmpty(this.dataTransferConfig.export?.fields)) {
359
+ return await this.getDataFieldsFromFields();
360
+ }
361
+ else {
362
+ return this.dataTransferConfig.import?.fields;
363
+ }
364
+ }
365
+ }
366
+ return undefined;
367
+ }
368
+ async getDataFieldsFromFields() {
369
+ if (!(this instanceof EntityForm)) {
370
+ throw new Error('EntityFormActions.getDataFieldsFromFields() can only be called on EntityForm');
371
+ }
372
+ const dataFields = [];
373
+ const fields = [...this.fields.values()];
374
+ // sort fields by field.order
375
+ fields.sort((a, b) => a.order - b.order); // sort by order
376
+ for (const field of fields) {
377
+ const required = await field.isRequired({ entityForm: this });
378
+ const dataField = DataField.create({
379
+ name: field.getName(),
380
+ label: field.label !== undefined && typeof field.label === 'string'
381
+ ? field.label
382
+ : field.getName(),
383
+ type: field.type,
384
+ options: field instanceof OptionalField ? (field.options ?? []) : undefined,
385
+ required: required,
386
+ });
387
+ dataFields.push(dataField);
388
+ }
389
+ // sort dataFields
390
+ return dataFields;
391
+ }
392
+ async getDataTransferConfig() {
393
+ if (this.dataTransferConfig) {
394
+ const defaultFields = await this.getDataFieldsFromFields();
395
+ this.dataTransferConfig.validateDataFields(defaultFields);
396
+ return this.dataTransferConfig;
397
+ }
398
+ return undefined;
399
+ }
400
+ withFilterable(fieldName, filterable = true) {
401
+ const field = this.getField(fieldName);
402
+ if (field !== undefined && field instanceof ListableFormField) {
403
+ field.withFilterable(filterable);
404
+ }
405
+ return this;
406
+ }
407
+ withNeverDelete(neverDelete = true) {
408
+ this.neverDelete = neverDelete;
409
+ if (neverDelete) {
410
+ this.removeField('active');
411
+ this.addFields({
412
+ tab: STATUS_TAB_INFO,
413
+ items: [ActiveField().withModifyOnly()],
414
+ });
415
+ this.withOnInitialize(async (entityForm) => {
416
+ if (entityForm.getRenderType() === 'update') {
417
+ const active = await entityForm.getValue('active');
418
+ if (isTrue(active, true)) {
419
+ entityForm.withHidden('active', true);
420
+ }
421
+ }
422
+ return entityForm;
423
+ });
424
+ }
425
+ return this;
426
+ }
427
+ withStatusCreatedAndUpdatedAtField() {
428
+ this.addFields(StatusCreatedAndUpdatedAtFieldPreset);
429
+ return this;
430
+ }
431
+ withStatusCreatedAtField() {
432
+ this.addFields(StatusCreatedAtFieldPreset);
433
+ return this;
434
+ }
435
+ getCreateStep() {
436
+ if (this.createStep) {
437
+ const steps = [];
438
+ for (const step of this.createStep) {
439
+ if (!isTrue(step.hidden)) {
440
+ steps.push(step);
441
+ }
442
+ }
443
+ return steps;
444
+ }
445
+ else {
446
+ return undefined;
447
+ }
448
+ }
449
+ setCreateStep(createStep) {
450
+ if (createStep) {
451
+ createStep.sort((a, b) => a.order - b.order);
452
+ }
453
+ this.createStep = createStep;
454
+ }
455
+ withCreateStep(createStep) {
456
+ this.setCreateStep(createStep);
457
+ return this;
458
+ }
459
+ }
@@ -0,0 +1,204 @@
1
+ import { Session } from '../../auth';
2
+ import { ResponseData } from '../../api';
3
+ import { ReactNode } from 'react';
4
+ import { ListableFormField } from '../../components/fields/abstract';
5
+ import { PostFetchListData } from '../../components/list/types/ViewListGrid.types';
6
+ import { ClientExtensionConfig, ExtensionPoint } from '../../extensions/EntityFormExtension.types';
7
+ import { DataTransferConfig } from '../../transfer/Type';
8
+ import { CreateStep, EntityFormActionResult, FieldGroupConfig, HelpTextType, ManageEntityForm, ModifyEntityFormFunc, ModifyFetchedEntityFormFunc, OnInitializeFunc, RenderType, TooltipType } from '../../config/Config';
9
+ import { EntityField } from '../../config/EntityField';
10
+ import { EntityForm } from '../../config/EntityForm';
11
+ import { EntityFormButtonType } from '../../config/EntityFormButton';
12
+ import { AlertMessage, FieldError } from '../../config/EntityFormTypes';
13
+ import { EntityTab } from '../../config/EntityTab';
14
+ import { SubCollectionField } from '../../config/SubCollectionField';
15
+ import { EntityFieldGroup } from '../../config/EntityFieldGroup';
16
+ import { SelectOption } from '../../form/Type';
17
+ export declare abstract class EntityFormBase<T extends object = any> {
18
+ constructor(name: string, url: string);
19
+ version: string;
20
+ revisionEntityName?: string | undefined;
21
+ parentId?: string | undefined;
22
+ id?: string | undefined;
23
+ name: string;
24
+ title?: {
25
+ title?: string;
26
+ field?: string;
27
+ view?: (entityForm: EntityForm<T>) => Promise<ReactNode>;
28
+ } | undefined;
29
+ url: string;
30
+ menuUrl?: string | undefined;
31
+ readonly?: boolean | undefined;
32
+ session?: Session | undefined;
33
+ createStep?: CreateStep[] | undefined;
34
+ manageEntityForm: ManageEntityForm;
35
+ tabs: Map<string, EntityTab>;
36
+ fields: Map<string, EntityField>;
37
+ collections: Map<string, SubCollectionField>;
38
+ errors?: FieldError[] | undefined;
39
+ shouldReload?: boolean | undefined;
40
+ dataPreloaded?: boolean | undefined;
41
+ fetchedEntity?: T | undefined;
42
+ alertMessages: AlertMessage[];
43
+ fieldValidationStates: Map<string, {
44
+ validated: boolean;
45
+ message?: string;
46
+ color?: string;
47
+ }>;
48
+ appendAdvancedSearchFields?: ListableFormField<any>[] | undefined;
49
+ clientExtensions: Map<ExtensionPoint, ClientExtensionConfig[]>;
50
+ excludeListFields?: string[] | undefined;
51
+ sessionRequired?: boolean | undefined;
52
+ cacheKeyFunc?: ((entityForm: EntityForm<T>) => string) | undefined;
53
+ onChanges?: ModifyEntityFormFunc<T>[] | undefined;
54
+ onFetchData?: ModifyFetchedEntityFormFunc<T>[] | undefined;
55
+ onInitialize?: OnInitializeFunc<T>[] | undefined;
56
+ onFetchListData?: PostFetchListData[] | undefined;
57
+ onSave?: ((entityForm: EntityForm<T>) => Promise<EntityFormActionResult>) | undefined;
58
+ postSave?: ((result: EntityFormActionResult) => Promise<void>) | undefined;
59
+ postDelete?: ((entityForm: EntityForm<T>, idList?: any[]) => Promise<void>) | undefined;
60
+ overrideSubmitData?: ((entityForm: EntityForm<T>, data: any) => Promise<{
61
+ data: any;
62
+ modifiedFields?: string[];
63
+ removePrevious?: boolean;
64
+ error?: boolean;
65
+ errors?: FieldError[];
66
+ }>) | undefined;
67
+ /**
68
+ * Data 를 fetch 할 때 로직을 오버라이드 한다.
69
+ * overrideFetchData 가 정의되어 있으면 메소드 fetchData 의 최상단에서 오버라이드 된다.
70
+ */
71
+ overrideFetchData?: ((url: string, entityForm: EntityForm<T>) => Promise<ResponseData>) | undefined;
72
+ /**
73
+ * data upload / download 설정
74
+ */
75
+ dataTransferConfig?: DataTransferConfig | undefined;
76
+ /**
77
+ * 삭제는 안 되고 active 값만 변경되는 경우
78
+ * 삭제 모달의 메시지가 변경된다.
79
+ */
80
+ neverDelete?: boolean | undefined;
81
+ /**
82
+ * EntityForm 상태에 따른 동적 버튼 추가
83
+ * EntityFormButton 또는 EntityFormReactNodeButton 타입을 반환
84
+ */
85
+ buttons?: ((entityForm: EntityForm<T>) => Promise<EntityFormButtonType[]>)[] | undefined;
86
+ /**
87
+ * ViewEntityForm 할 때 사용할 수 있다.
88
+ * 엔티티폼을 커스텀으로 표시하게 하는데 필요한 여러 정보를 자유롭게 사용할 수 있다.
89
+ * 이 정보는 저장 용도로는 사용되지 않는다.
90
+ */
91
+ attributes?: Map<string, unknown> | undefined;
92
+ /**
93
+ * ViewEntityForm에서 헤더 버튼과 Alert 영역 사이에 표시될 커스텀 영역
94
+ * sticky 포지셔닝으로 스크롤 시 상단에 고정됨
95
+ */
96
+ headerArea?: ((entityForm: EntityForm<T>) => Promise<ReactNode>) | undefined;
97
+ reload(): Promise<void>;
98
+ abstract initialize(props: {
99
+ session?: Session;
100
+ list?: boolean;
101
+ }): Promise<EntityFormActionResult>;
102
+ abstract clone(includeValue?: boolean): EntityFormBase<T>;
103
+ withMenuUrl(menuUrl?: string): this;
104
+ withUrl(url: string): this;
105
+ withTitle(title?: string | {
106
+ title?: string;
107
+ field?: string;
108
+ view?: (entityForm: EntityForm<T>) => Promise<ReactNode>;
109
+ }): this;
110
+ withParentId(parentId?: string): this;
111
+ withId(id?: string): this;
112
+ getId(): string | undefined;
113
+ getRenderType(): RenderType;
114
+ /**
115
+ * ID 와 URL 이 모두 존재해야만 FETCH 가 가능하다.
116
+ */
117
+ isAbleFetch(): boolean;
118
+ getUrl(): string;
119
+ getFetchUrl(): string;
120
+ isSessionRequired(): boolean;
121
+ withPostSave(postSave: (result: EntityFormActionResult) => Promise<void>): this;
122
+ withPostDelete(postDelete: (entityForm: EntityForm<T>, idList?: any[]) => Promise<void>): this;
123
+ getTitle(append?: string, appendPostfix?: boolean): Promise<string>;
124
+ private getTitlePostfix;
125
+ hasField(name: string): boolean;
126
+ getField<K extends keyof T & string>(name: K): EntityField | undefined;
127
+ getField(name: string): EntityField | undefined;
128
+ getCollection(name: string): SubCollectionField | undefined;
129
+ getValue<K extends keyof T & string>(name: K): Promise<T[K]>;
130
+ getValue(name: string): Promise<any>;
131
+ getFetchedEntity(): T | undefined;
132
+ getValues(): Promise<Partial<T> & Record<string, any>>;
133
+ hasTab(id: string): boolean;
134
+ getTab(tabId: string): EntityTab | undefined;
135
+ getViewableTabs(includeHide?: boolean, createStepFields?: string[], session?: Session): Promise<EntityTab[]>;
136
+ /**
137
+ * 모든 탭 목록을 반환합니다 (순서대로 정렬됨)
138
+ */
139
+ getTabs(): EntityTab[];
140
+ /**
141
+ * 지정한 탭들을 제거합니다
142
+ * @param tabsToRemove 제거할 탭 배열 또는 탭 ID 배열
143
+ */
144
+ removeTabs(tabsToRemove: (EntityTab | string)[]): this;
145
+ /**
146
+ * 지정한 탭을 제거합니다
147
+ * @param tab 제거할 탭 또는 탭 ID
148
+ */
149
+ removeTab(tab: EntityTab | string): this;
150
+ getFieldGroup(tabId: string, fieldGroupId: string): EntityFieldGroup | undefined;
151
+ getViewableFieldGroups(props: {
152
+ tabId: string;
153
+ session?: Session | undefined;
154
+ createStepFields?: string[] | undefined;
155
+ }): Promise<string[]>;
156
+ isViewableFieldGroup(props: {
157
+ tabId: string;
158
+ fieldGroupId: string;
159
+ session?: Session | undefined;
160
+ createStepFields?: string[] | undefined;
161
+ }): Promise<boolean>;
162
+ getVisibleFields(tabId: string, fieldGroupId: string, session?: Session, createStepFields?: string[]): Promise<{
163
+ fieldGroup?: EntityFieldGroup;
164
+ fields?: EntityField[];
165
+ }>;
166
+ getVisibleCollections(tabId: string, fieldGroupId: string, session?: Session): Promise<{
167
+ fieldGroup?: EntityFieldGroup;
168
+ collections?: SubCollectionField[];
169
+ }>;
170
+ getSession(): Session | undefined;
171
+ withSession(session: Session): this;
172
+ withShouldReload(shouldReload?: boolean): this;
173
+ withFieldGroupConfig(tabId: string, fieldGroupId: string, config: FieldGroupConfig): this;
174
+ getLabel(name: string): ReactNode;
175
+ getHelpText(name: string, session?: Session): Promise<ReactNode>;
176
+ withHelpText(name: string, helpText: HelpTextType): this;
177
+ withTooltip(name: string, tooltip: TooltipType): this;
178
+ withReadonly(name: string, readonly: boolean): this;
179
+ withOptions(name: string, options: SelectOption[]): this;
180
+ /**
181
+ * 특정 tab 의 하위의 모든 fields 를 하나의 [] 로 리턴, 필드그룹의 표시 순서를 고려해 field 의 order 를 변경하며 clone 을 통해 원래 필드에 영향을 주지 않는다.
182
+ * @param tabId
183
+ */
184
+ getTabFields(tabId: string): EntityField[];
185
+ withRevisionEntityName(revisionEntityName: string): this;
186
+ getRevisionEntityName(): string;
187
+ withButtons(buttons: (entityForm: EntityForm<T>) => Promise<EntityFormButtonType[]>): this;
188
+ withOnChanges(...onChanges: ModifyEntityFormFunc<T>[]): this;
189
+ withOnFetchData(...onLoad: ModifyFetchedEntityFormFunc<T>[]): this;
190
+ withOnInitialize(...onInitialize: OnInitializeFunc<T>[]): this;
191
+ withOnPostFetchListData(...postFetchListData: PostFetchListData[]): this;
192
+ withOnSave(onSave?: (entityForm: EntityForm<T>) => Promise<EntityFormActionResult>): this;
193
+ withAttributes(attributes?: Map<string, unknown>): this;
194
+ withHeaderArea(headerArea: (entityForm: EntityForm<T>) => Promise<ReactNode>): this;
195
+ getAttributes(): Map<string, unknown>;
196
+ putAttribute(key: string, value: unknown): this;
197
+ removeAttribute(key: string): this;
198
+ hasAttribute(key: string): boolean;
199
+ addAttributeToField(fieldName: string, key: string, value: unknown): void;
200
+ removeAttributeToField(fieldName: string, key: string): void;
201
+ getFieldAttributes(fieldName: string): Map<string, unknown> | undefined;
202
+ setReadOnly(readonly?: boolean): void;
203
+ setRevisionEntityNameIfBlank(path: string): void;
204
+ }