@akbarsafari00/bonyan-content-type-builder 5.52.1-fa.2

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 (1148) hide show
  1. package/LICENSE +37 -0
  2. package/README.md +9 -0
  3. package/dist/admin/components/AIChat/Chat.js +437 -0
  4. package/dist/admin/components/AIChat/Chat.js.map +1 -0
  5. package/dist/admin/components/AIChat/Chat.mjs +435 -0
  6. package/dist/admin/components/AIChat/Chat.mjs.map +1 -0
  7. package/dist/admin/components/AIChat/FeedbackModal.js +238 -0
  8. package/dist/admin/components/AIChat/FeedbackModal.js.map +1 -0
  9. package/dist/admin/components/AIChat/FeedbackModal.mjs +234 -0
  10. package/dist/admin/components/AIChat/FeedbackModal.mjs.map +1 -0
  11. package/dist/admin/components/AIChat/UploadCodeModal.js +427 -0
  12. package/dist/admin/components/AIChat/UploadCodeModal.js.map +1 -0
  13. package/dist/admin/components/AIChat/UploadCodeModal.mjs +423 -0
  14. package/dist/admin/components/AIChat/UploadCodeModal.mjs.map +1 -0
  15. package/dist/admin/components/AIChat/UploadFigmaModal.js +379 -0
  16. package/dist/admin/components/AIChat/UploadFigmaModal.js.map +1 -0
  17. package/dist/admin/components/AIChat/UploadFigmaModal.mjs +375 -0
  18. package/dist/admin/components/AIChat/UploadFigmaModal.mjs.map +1 -0
  19. package/dist/admin/components/AIChat/components/Alert.js +46 -0
  20. package/dist/admin/components/AIChat/components/Alert.js.map +1 -0
  21. package/dist/admin/components/AIChat/components/Alert.mjs +44 -0
  22. package/dist/admin/components/AIChat/components/Alert.mjs.map +1 -0
  23. package/dist/admin/components/AIChat/components/AnimatedBox.js +34 -0
  24. package/dist/admin/components/AIChat/components/AnimatedBox.js.map +1 -0
  25. package/dist/admin/components/AIChat/components/AnimatedBox.mjs +32 -0
  26. package/dist/admin/components/AIChat/components/AnimatedBox.mjs.map +1 -0
  27. package/dist/admin/components/AIChat/components/Attachments/AttachmentPreview.js +92 -0
  28. package/dist/admin/components/AIChat/components/Attachments/AttachmentPreview.js.map +1 -0
  29. package/dist/admin/components/AIChat/components/Attachments/AttachmentPreview.mjs +90 -0
  30. package/dist/admin/components/AIChat/components/Attachments/AttachmentPreview.mjs.map +1 -0
  31. package/dist/admin/components/AIChat/components/Attachments/components/Attachment.js +100 -0
  32. package/dist/admin/components/AIChat/components/Attachments/components/Attachment.js.map +1 -0
  33. package/dist/admin/components/AIChat/components/Attachments/components/Attachment.mjs +97 -0
  34. package/dist/admin/components/AIChat/components/Attachments/components/Attachment.mjs.map +1 -0
  35. package/dist/admin/components/AIChat/components/Base64Image.js +127 -0
  36. package/dist/admin/components/AIChat/components/Base64Image.js.map +1 -0
  37. package/dist/admin/components/AIChat/components/Base64Image.mjs +125 -0
  38. package/dist/admin/components/AIChat/components/Base64Image.mjs.map +1 -0
  39. package/dist/admin/components/AIChat/components/Collapsible.js +71 -0
  40. package/dist/admin/components/AIChat/components/Collapsible.js.map +1 -0
  41. package/dist/admin/components/AIChat/components/Collapsible.mjs +66 -0
  42. package/dist/admin/components/AIChat/components/Collapsible.mjs.map +1 -0
  43. package/dist/admin/components/AIChat/components/Dropzone.js +168 -0
  44. package/dist/admin/components/AIChat/components/Dropzone.js.map +1 -0
  45. package/dist/admin/components/AIChat/components/Dropzone.mjs +163 -0
  46. package/dist/admin/components/AIChat/components/Dropzone.mjs.map +1 -0
  47. package/dist/admin/components/AIChat/components/FloatingPanel.js +166 -0
  48. package/dist/admin/components/AIChat/components/FloatingPanel.js.map +1 -0
  49. package/dist/admin/components/AIChat/components/FloatingPanel.mjs +163 -0
  50. package/dist/admin/components/AIChat/components/FloatingPanel.mjs.map +1 -0
  51. package/dist/admin/components/AIChat/components/FullScreenImage.js +190 -0
  52. package/dist/admin/components/AIChat/components/FullScreenImage.js.map +1 -0
  53. package/dist/admin/components/AIChat/components/FullScreenImage.mjs +187 -0
  54. package/dist/admin/components/AIChat/components/FullScreenImage.mjs.map +1 -0
  55. package/dist/admin/components/AIChat/components/ImagePreview.js +87 -0
  56. package/dist/admin/components/AIChat/components/ImagePreview.js.map +1 -0
  57. package/dist/admin/components/AIChat/components/ImagePreview.mjs +85 -0
  58. package/dist/admin/components/AIChat/components/ImagePreview.mjs.map +1 -0
  59. package/dist/admin/components/AIChat/components/Input.js +122 -0
  60. package/dist/admin/components/AIChat/components/Input.js.map +1 -0
  61. package/dist/admin/components/AIChat/components/Input.mjs +118 -0
  62. package/dist/admin/components/AIChat/components/Input.mjs.map +1 -0
  63. package/dist/admin/components/AIChat/components/Messages/Marker.js +138 -0
  64. package/dist/admin/components/AIChat/components/Messages/Marker.js.map +1 -0
  65. package/dist/admin/components/AIChat/components/Messages/Marker.mjs +136 -0
  66. package/dist/admin/components/AIChat/components/Messages/Marker.mjs.map +1 -0
  67. package/dist/admin/components/AIChat/components/Messages/Message.js +229 -0
  68. package/dist/admin/components/AIChat/components/Messages/Message.js.map +1 -0
  69. package/dist/admin/components/AIChat/components/Messages/Message.mjs +223 -0
  70. package/dist/admin/components/AIChat/components/Messages/Message.mjs.map +1 -0
  71. package/dist/admin/components/AIChat/components/ResizableTextArea.js +78 -0
  72. package/dist/admin/components/AIChat/components/ResizableTextArea.js.map +1 -0
  73. package/dist/admin/components/AIChat/components/ResizableTextArea.mjs +76 -0
  74. package/dist/admin/components/AIChat/components/ResizableTextArea.mjs.map +1 -0
  75. package/dist/admin/components/AIChat/components/SimpleMenu.js +61 -0
  76. package/dist/admin/components/AIChat/components/SimpleMenu.js.map +1 -0
  77. package/dist/admin/components/AIChat/components/SimpleMenu.mjs +35 -0
  78. package/dist/admin/components/AIChat/components/SimpleMenu.mjs.map +1 -0
  79. package/dist/admin/components/AIChat/components/StepModal.js +175 -0
  80. package/dist/admin/components/AIChat/components/StepModal.js.map +1 -0
  81. package/dist/admin/components/AIChat/components/StepModal.mjs +171 -0
  82. package/dist/admin/components/AIChat/components/StepModal.mjs.map +1 -0
  83. package/dist/admin/components/AIChat/components/animations.js +67 -0
  84. package/dist/admin/components/AIChat/components/animations.js.map +1 -0
  85. package/dist/admin/components/AIChat/components/animations.mjs +65 -0
  86. package/dist/admin/components/AIChat/components/animations.mjs.map +1 -0
  87. package/dist/admin/components/AIChat/components/icons/FigmaIcon.js +50 -0
  88. package/dist/admin/components/AIChat/components/icons/FigmaIcon.js.map +1 -0
  89. package/dist/admin/components/AIChat/components/icons/FigmaIcon.mjs +48 -0
  90. package/dist/admin/components/AIChat/components/icons/FigmaIcon.mjs.map +1 -0
  91. package/dist/admin/components/AIChat/components/icons/StopIcon.js +25 -0
  92. package/dist/admin/components/AIChat/components/icons/StopIcon.js.map +1 -0
  93. package/dist/admin/components/AIChat/components/icons/StopIcon.mjs +23 -0
  94. package/dist/admin/components/AIChat/components/icons/StopIcon.mjs.map +1 -0
  95. package/dist/admin/components/AIChat/hooks/useAIFetch.js +107 -0
  96. package/dist/admin/components/AIChat/hooks/useAIFetch.js.map +1 -0
  97. package/dist/admin/components/AIChat/hooks/useAIFetch.mjs +96 -0
  98. package/dist/admin/components/AIChat/hooks/useAIFetch.mjs.map +1 -0
  99. package/dist/admin/components/AIChat/hooks/useAttachments.js +152 -0
  100. package/dist/admin/components/AIChat/hooks/useAttachments.js.map +1 -0
  101. package/dist/admin/components/AIChat/hooks/useAttachments.mjs +150 -0
  102. package/dist/admin/components/AIChat/hooks/useAttachments.mjs.map +1 -0
  103. package/dist/admin/components/AIChat/hooks/useChatTitle.js +47 -0
  104. package/dist/admin/components/AIChat/hooks/useChatTitle.js.map +1 -0
  105. package/dist/admin/components/AIChat/hooks/useChatTitle.mjs +45 -0
  106. package/dist/admin/components/AIChat/hooks/useChatTitle.mjs.map +1 -0
  107. package/dist/admin/components/AIChat/hooks/useCodeUpload.js +217 -0
  108. package/dist/admin/components/AIChat/hooks/useCodeUpload.js.map +1 -0
  109. package/dist/admin/components/AIChat/hooks/useCodeUpload.mjs +207 -0
  110. package/dist/admin/components/AIChat/hooks/useCodeUpload.mjs.map +1 -0
  111. package/dist/admin/components/AIChat/hooks/useFeedback.js +79 -0
  112. package/dist/admin/components/AIChat/hooks/useFeedback.js.map +1 -0
  113. package/dist/admin/components/AIChat/hooks/useFeedback.mjs +77 -0
  114. package/dist/admin/components/AIChat/hooks/useFeedback.mjs.map +1 -0
  115. package/dist/admin/components/AIChat/hooks/useFigmaUpload.js +206 -0
  116. package/dist/admin/components/AIChat/hooks/useFigmaUpload.js.map +1 -0
  117. package/dist/admin/components/AIChat/hooks/useFigmaUpload.mjs +200 -0
  118. package/dist/admin/components/AIChat/hooks/useFigmaUpload.mjs.map +1 -0
  119. package/dist/admin/components/AIChat/hooks/useLastSeenSchemas.js +115 -0
  120. package/dist/admin/components/AIChat/hooks/useLastSeenSchemas.js.map +1 -0
  121. package/dist/admin/components/AIChat/hooks/useLastSeenSchemas.mjs +113 -0
  122. package/dist/admin/components/AIChat/hooks/useLastSeenSchemas.mjs.map +1 -0
  123. package/dist/admin/components/AIChat/hooks/useTranslations.js +19 -0
  124. package/dist/admin/components/AIChat/hooks/useTranslations.js.map +1 -0
  125. package/dist/admin/components/AIChat/hooks/useTranslations.mjs +17 -0
  126. package/dist/admin/components/AIChat/hooks/useTranslations.mjs.map +1 -0
  127. package/dist/admin/components/AIChat/lib/aiClient.js +174 -0
  128. package/dist/admin/components/AIChat/lib/aiClient.js.map +1 -0
  129. package/dist/admin/components/AIChat/lib/aiClient.mjs +167 -0
  130. package/dist/admin/components/AIChat/lib/aiClient.mjs.map +1 -0
  131. package/dist/admin/components/AIChat/lib/constants.js +16 -0
  132. package/dist/admin/components/AIChat/lib/constants.js.map +1 -0
  133. package/dist/admin/components/AIChat/lib/constants.mjs +10 -0
  134. package/dist/admin/components/AIChat/lib/constants.mjs.map +1 -0
  135. package/dist/admin/components/AIChat/lib/misc.js +8 -0
  136. package/dist/admin/components/AIChat/lib/misc.js.map +1 -0
  137. package/dist/admin/components/AIChat/lib/misc.mjs +6 -0
  138. package/dist/admin/components/AIChat/lib/misc.mjs.map +1 -0
  139. package/dist/admin/components/AIChat/lib/transforms/schemas/fromCTB.js +46 -0
  140. package/dist/admin/components/AIChat/lib/transforms/schemas/fromCTB.js.map +1 -0
  141. package/dist/admin/components/AIChat/lib/transforms/schemas/fromCTB.mjs +44 -0
  142. package/dist/admin/components/AIChat/lib/transforms/schemas/fromCTB.mjs.map +1 -0
  143. package/dist/admin/components/AIChat/lib/transforms/schemas/toCTB.js +211 -0
  144. package/dist/admin/components/AIChat/lib/transforms/schemas/toCTB.js.map +1 -0
  145. package/dist/admin/components/AIChat/lib/transforms/schemas/toCTB.mjs +202 -0
  146. package/dist/admin/components/AIChat/lib/transforms/schemas/toCTB.mjs.map +1 -0
  147. package/dist/admin/components/AIChat/providers/ChatProvider.js +192 -0
  148. package/dist/admin/components/AIChat/providers/ChatProvider.js.map +1 -0
  149. package/dist/admin/components/AIChat/providers/ChatProvider.mjs +188 -0
  150. package/dist/admin/components/AIChat/providers/ChatProvider.mjs.map +1 -0
  151. package/dist/admin/components/AIChat/providers/SchemaProvider.js +90 -0
  152. package/dist/admin/components/AIChat/providers/SchemaProvider.js.map +1 -0
  153. package/dist/admin/components/AIChat/providers/SchemaProvider.mjs +88 -0
  154. package/dist/admin/components/AIChat/providers/SchemaProvider.mjs.map +1 -0
  155. package/dist/admin/components/AllowedTypesSelect.js +82 -0
  156. package/dist/admin/components/AllowedTypesSelect.js.map +1 -0
  157. package/dist/admin/components/AllowedTypesSelect.mjs +76 -0
  158. package/dist/admin/components/AllowedTypesSelect.mjs.map +1 -0
  159. package/dist/admin/components/ApplyConditionButton.js +34 -0
  160. package/dist/admin/components/ApplyConditionButton.js.map +1 -0
  161. package/dist/admin/components/ApplyConditionButton.mjs +32 -0
  162. package/dist/admin/components/ApplyConditionButton.mjs.map +1 -0
  163. package/dist/admin/components/AttributeIcon.js +73 -0
  164. package/dist/admin/components/AttributeIcon.js.map +1 -0
  165. package/dist/admin/components/AttributeIcon.mjs +71 -0
  166. package/dist/admin/components/AttributeIcon.mjs.map +1 -0
  167. package/dist/admin/components/AttributeOptions/AttributeList.js +32 -0
  168. package/dist/admin/components/AttributeOptions/AttributeList.js.map +1 -0
  169. package/dist/admin/components/AttributeOptions/AttributeList.mjs +30 -0
  170. package/dist/admin/components/AttributeOptions/AttributeList.mjs.map +1 -0
  171. package/dist/admin/components/AttributeOptions/AttributeOption.js +92 -0
  172. package/dist/admin/components/AttributeOptions/AttributeOption.js.map +1 -0
  173. package/dist/admin/components/AttributeOptions/AttributeOption.mjs +90 -0
  174. package/dist/admin/components/AttributeOptions/AttributeOption.mjs.map +1 -0
  175. package/dist/admin/components/AttributeOptions/AttributeOptions.js +71 -0
  176. package/dist/admin/components/AttributeOptions/AttributeOptions.js.map +1 -0
  177. package/dist/admin/components/AttributeOptions/AttributeOptions.mjs +69 -0
  178. package/dist/admin/components/AttributeOptions/AttributeOptions.mjs.map +1 -0
  179. package/dist/admin/components/AttributeOptions/CustomFieldOption.js +58 -0
  180. package/dist/admin/components/AttributeOptions/CustomFieldOption.js.map +1 -0
  181. package/dist/admin/components/AttributeOptions/CustomFieldOption.mjs +56 -0
  182. package/dist/admin/components/AttributeOptions/CustomFieldOption.mjs.map +1 -0
  183. package/dist/admin/components/AttributeOptions/CustomFieldsList.js +55 -0
  184. package/dist/admin/components/AttributeOptions/CustomFieldsList.js.map +1 -0
  185. package/dist/admin/components/AttributeOptions/CustomFieldsList.mjs +53 -0
  186. package/dist/admin/components/AttributeOptions/CustomFieldsList.mjs.map +1 -0
  187. package/dist/admin/components/AttributeOptions/EmptyAttributes.js +123 -0
  188. package/dist/admin/components/AttributeOptions/EmptyAttributes.js.map +1 -0
  189. package/dist/admin/components/AttributeOptions/EmptyAttributes.mjs +100 -0
  190. package/dist/admin/components/AttributeOptions/EmptyAttributes.mjs.map +1 -0
  191. package/dist/admin/components/AttributeOptions/OptionBoxWrapper.js +19 -0
  192. package/dist/admin/components/AttributeOptions/OptionBoxWrapper.js.map +1 -0
  193. package/dist/admin/components/AttributeOptions/OptionBoxWrapper.mjs +17 -0
  194. package/dist/admin/components/AttributeOptions/OptionBoxWrapper.mjs.map +1 -0
  195. package/dist/admin/components/AttributeRow.js +403 -0
  196. package/dist/admin/components/AttributeRow.js.map +1 -0
  197. package/dist/admin/components/AttributeRow.mjs +395 -0
  198. package/dist/admin/components/AttributeRow.mjs.map +1 -0
  199. package/dist/admin/components/AutoReloadOverlayBlocker.js +216 -0
  200. package/dist/admin/components/AutoReloadOverlayBlocker.js.map +1 -0
  201. package/dist/admin/components/AutoReloadOverlayBlocker.mjs +193 -0
  202. package/dist/admin/components/AutoReloadOverlayBlocker.mjs.map +1 -0
  203. package/dist/admin/components/BooleanDefaultValueSelect.js +55 -0
  204. package/dist/admin/components/BooleanDefaultValueSelect.js.map +1 -0
  205. package/dist/admin/components/BooleanDefaultValueSelect.mjs +53 -0
  206. package/dist/admin/components/BooleanDefaultValueSelect.mjs.map +1 -0
  207. package/dist/admin/components/BooleanRadioGroup.js +27 -0
  208. package/dist/admin/components/BooleanRadioGroup.js.map +1 -0
  209. package/dist/admin/components/BooleanRadioGroup.mjs +25 -0
  210. package/dist/admin/components/BooleanRadioGroup.mjs.map +1 -0
  211. package/dist/admin/components/CTBSession/CTBSessionProvider.js +49 -0
  212. package/dist/admin/components/CTBSession/CTBSessionProvider.js.map +1 -0
  213. package/dist/admin/components/CTBSession/CTBSessionProvider.mjs +46 -0
  214. package/dist/admin/components/CTBSession/CTBSessionProvider.mjs.map +1 -0
  215. package/dist/admin/components/CTBSession/sessionContext.js +8 -0
  216. package/dist/admin/components/CTBSession/sessionContext.js.map +1 -0
  217. package/dist/admin/components/CTBSession/sessionContext.mjs +6 -0
  218. package/dist/admin/components/CTBSession/sessionContext.mjs.map +1 -0
  219. package/dist/admin/components/CTBSession/useCTBSession.js +25 -0
  220. package/dist/admin/components/CTBSession/useCTBSession.js.map +1 -0
  221. package/dist/admin/components/CTBSession/useCTBSession.mjs +23 -0
  222. package/dist/admin/components/CTBSession/useCTBSession.mjs.map +1 -0
  223. package/dist/admin/components/CTBSession/useCTBTracking.js +37 -0
  224. package/dist/admin/components/CTBSession/useCTBTracking.js.map +1 -0
  225. package/dist/admin/components/CTBSession/useCTBTracking.mjs +35 -0
  226. package/dist/admin/components/CTBSession/useCTBTracking.mjs.map +1 -0
  227. package/dist/admin/components/CheckboxWithNumberField.js +88 -0
  228. package/dist/admin/components/CheckboxWithNumberField.js.map +1 -0
  229. package/dist/admin/components/CheckboxWithNumberField.mjs +86 -0
  230. package/dist/admin/components/CheckboxWithNumberField.mjs.map +1 -0
  231. package/dist/admin/components/ComponentCard/ComponentCard.js +118 -0
  232. package/dist/admin/components/ComponentCard/ComponentCard.js.map +1 -0
  233. package/dist/admin/components/ComponentCard/ComponentCard.mjs +112 -0
  234. package/dist/admin/components/ComponentCard/ComponentCard.mjs.map +1 -0
  235. package/dist/admin/components/ComponentCard/ComponentIcon/ComponentIcon.js +24 -0
  236. package/dist/admin/components/ComponentCard/ComponentIcon/ComponentIcon.js.map +1 -0
  237. package/dist/admin/components/ComponentCard/ComponentIcon/ComponentIcon.mjs +22 -0
  238. package/dist/admin/components/ComponentCard/ComponentIcon/ComponentIcon.mjs.map +1 -0
  239. package/dist/admin/components/ComponentList.js +31 -0
  240. package/dist/admin/components/ComponentList.js.map +1 -0
  241. package/dist/admin/components/ComponentList.mjs +25 -0
  242. package/dist/admin/components/ComponentList.mjs.map +1 -0
  243. package/dist/admin/components/ComponentRow.js +42 -0
  244. package/dist/admin/components/ComponentRow.js.map +1 -0
  245. package/dist/admin/components/ComponentRow.mjs +40 -0
  246. package/dist/admin/components/ComponentRow.mjs.map +1 -0
  247. package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.js +279 -0
  248. package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.js.map +1 -0
  249. package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.mjs +277 -0
  250. package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.mjs.map +1 -0
  251. package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.js +157 -0
  252. package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.js.map +1 -0
  253. package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.mjs +151 -0
  254. package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.mjs.map +1 -0
  255. package/dist/admin/components/ContentTypeRadioGroup.js +29 -0
  256. package/dist/admin/components/ContentTypeRadioGroup.js.map +1 -0
  257. package/dist/admin/components/ContentTypeRadioGroup.mjs +27 -0
  258. package/dist/admin/components/ContentTypeRadioGroup.mjs.map +1 -0
  259. package/dist/admin/components/CustomRadioGroup/CustomRadioGroup.js +80 -0
  260. package/dist/admin/components/CustomRadioGroup/CustomRadioGroup.js.map +1 -0
  261. package/dist/admin/components/CustomRadioGroup/CustomRadioGroup.mjs +78 -0
  262. package/dist/admin/components/CustomRadioGroup/CustomRadioGroup.mjs.map +1 -0
  263. package/dist/admin/components/CustomRadioGroup/Styles.js +75 -0
  264. package/dist/admin/components/CustomRadioGroup/Styles.js.map +1 -0
  265. package/dist/admin/components/CustomRadioGroup/Styles.mjs +73 -0
  266. package/dist/admin/components/CustomRadioGroup/Styles.mjs.map +1 -0
  267. package/dist/admin/components/DataManager/DataManagerContext.js +9 -0
  268. package/dist/admin/components/DataManager/DataManagerContext.js.map +1 -0
  269. package/dist/admin/components/DataManager/DataManagerContext.mjs +7 -0
  270. package/dist/admin/components/DataManager/DataManagerContext.mjs.map +1 -0
  271. package/dist/admin/components/DataManager/DataManagerProvider.js +411 -0
  272. package/dist/admin/components/DataManager/DataManagerProvider.js.map +1 -0
  273. package/dist/admin/components/DataManager/DataManagerProvider.mjs +384 -0
  274. package/dist/admin/components/DataManager/DataManagerProvider.mjs.map +1 -0
  275. package/dist/admin/components/DataManager/reducer.js +597 -0
  276. package/dist/admin/components/DataManager/reducer.js.map +1 -0
  277. package/dist/admin/components/DataManager/reducer.mjs +588 -0
  278. package/dist/admin/components/DataManager/reducer.mjs.map +1 -0
  279. package/dist/admin/components/DataManager/undoRedo.js +102 -0
  280. package/dist/admin/components/DataManager/undoRedo.js.map +1 -0
  281. package/dist/admin/components/DataManager/undoRedo.mjs +100 -0
  282. package/dist/admin/components/DataManager/undoRedo.mjs.map +1 -0
  283. package/dist/admin/components/DataManager/useDataManager.js +9 -0
  284. package/dist/admin/components/DataManager/useDataManager.js.map +1 -0
  285. package/dist/admin/components/DataManager/useDataManager.mjs +7 -0
  286. package/dist/admin/components/DataManager/useDataManager.mjs.map +1 -0
  287. package/dist/admin/components/DataManager/useServerRestartWatcher.js +35 -0
  288. package/dist/admin/components/DataManager/useServerRestartWatcher.js.map +1 -0
  289. package/dist/admin/components/DataManager/useServerRestartWatcher.mjs +33 -0
  290. package/dist/admin/components/DataManager/useServerRestartWatcher.mjs.map +1 -0
  291. package/dist/admin/components/DataManager/utils/cleanData.js +220 -0
  292. package/dist/admin/components/DataManager/utils/cleanData.js.map +1 -0
  293. package/dist/admin/components/DataManager/utils/cleanData.mjs +211 -0
  294. package/dist/admin/components/DataManager/utils/cleanData.mjs.map +1 -0
  295. package/dist/admin/components/DataManager/utils/retrieveComponentsThatHaveComponents.js +38 -0
  296. package/dist/admin/components/DataManager/utils/retrieveComponentsThatHaveComponents.js.map +1 -0
  297. package/dist/admin/components/DataManager/utils/retrieveComponentsThatHaveComponents.mjs +31 -0
  298. package/dist/admin/components/DataManager/utils/retrieveComponentsThatHaveComponents.mjs.map +1 -0
  299. package/dist/admin/components/DataManager/utils/retrieveNestedComponents.js +45 -0
  300. package/dist/admin/components/DataManager/utils/retrieveNestedComponents.js.map +1 -0
  301. package/dist/admin/components/DataManager/utils/retrieveNestedComponents.mjs +43 -0
  302. package/dist/admin/components/DataManager/utils/retrieveNestedComponents.mjs.map +1 -0
  303. package/dist/admin/components/DataManager/utils/retrieveSpecificInfoFromComponents.js +21 -0
  304. package/dist/admin/components/DataManager/utils/retrieveSpecificInfoFromComponents.js.map +1 -0
  305. package/dist/admin/components/DataManager/utils/retrieveSpecificInfoFromComponents.mjs +15 -0
  306. package/dist/admin/components/DataManager/utils/retrieveSpecificInfoFromComponents.mjs.map +1 -0
  307. package/dist/admin/components/DisplayedType.js +48 -0
  308. package/dist/admin/components/DisplayedType.js.map +1 -0
  309. package/dist/admin/components/DisplayedType.mjs +46 -0
  310. package/dist/admin/components/DisplayedType.mjs.map +1 -0
  311. package/dist/admin/components/DraftAndPublishToggle.js +86 -0
  312. package/dist/admin/components/DraftAndPublishToggle.js.map +1 -0
  313. package/dist/admin/components/DraftAndPublishToggle.mjs +84 -0
  314. package/dist/admin/components/DraftAndPublishToggle.mjs.map +1 -0
  315. package/dist/admin/components/DynamicZoneList.js +122 -0
  316. package/dist/admin/components/DynamicZoneList.js.map +1 -0
  317. package/dist/admin/components/DynamicZoneList.mjs +120 -0
  318. package/dist/admin/components/DynamicZoneList.mjs.map +1 -0
  319. package/dist/admin/components/ExitPrompt.js +50 -0
  320. package/dist/admin/components/ExitPrompt.js.map +1 -0
  321. package/dist/admin/components/ExitPrompt.mjs +48 -0
  322. package/dist/admin/components/ExitPrompt.mjs.map +1 -0
  323. package/dist/admin/components/Footers.js +95 -0
  324. package/dist/admin/components/Footers.js.map +1 -0
  325. package/dist/admin/components/Footers.mjs +92 -0
  326. package/dist/admin/components/Footers.mjs.map +1 -0
  327. package/dist/admin/components/FormModal/FormModal.js +1148 -0
  328. package/dist/admin/components/FormModal/FormModal.js.map +1 -0
  329. package/dist/admin/components/FormModal/FormModal.mjs +1120 -0
  330. package/dist/admin/components/FormModal/FormModal.mjs.map +1 -0
  331. package/dist/admin/components/FormModal/attributes/ConditionForm.js +454 -0
  332. package/dist/admin/components/FormModal/attributes/ConditionForm.js.map +1 -0
  333. package/dist/admin/components/FormModal/attributes/ConditionForm.mjs +433 -0
  334. package/dist/admin/components/FormModal/attributes/ConditionForm.mjs.map +1 -0
  335. package/dist/admin/components/FormModal/attributes/advancedForm.js +526 -0
  336. package/dist/admin/components/FormModal/attributes/advancedForm.js.map +1 -0
  337. package/dist/admin/components/FormModal/attributes/advancedForm.mjs +524 -0
  338. package/dist/admin/components/FormModal/attributes/advancedForm.mjs.map +1 -0
  339. package/dist/admin/components/FormModal/attributes/attributeOptions.js +97 -0
  340. package/dist/admin/components/FormModal/attributes/attributeOptions.js.map +1 -0
  341. package/dist/admin/components/FormModal/attributes/attributeOptions.mjs +95 -0
  342. package/dist/admin/components/FormModal/attributes/attributeOptions.mjs.map +1 -0
  343. package/dist/admin/components/FormModal/attributes/baseForm.js +482 -0
  344. package/dist/admin/components/FormModal/attributes/baseForm.js.map +1 -0
  345. package/dist/admin/components/FormModal/attributes/baseForm.mjs +480 -0
  346. package/dist/admin/components/FormModal/attributes/baseForm.mjs.map +1 -0
  347. package/dist/admin/components/FormModal/attributes/commonBaseForm.js +17 -0
  348. package/dist/admin/components/FormModal/attributes/commonBaseForm.js.map +1 -0
  349. package/dist/admin/components/FormModal/attributes/commonBaseForm.mjs +15 -0
  350. package/dist/admin/components/FormModal/attributes/commonBaseForm.mjs.map +1 -0
  351. package/dist/admin/components/FormModal/attributes/form.js +12 -0
  352. package/dist/admin/components/FormModal/attributes/form.js.map +1 -0
  353. package/dist/admin/components/FormModal/attributes/form.mjs +10 -0
  354. package/dist/admin/components/FormModal/attributes/form.mjs.map +1 -0
  355. package/dist/admin/components/FormModal/attributes/nameField.js +19 -0
  356. package/dist/admin/components/FormModal/attributes/nameField.js.map +1 -0
  357. package/dist/admin/components/FormModal/attributes/nameField.mjs +17 -0
  358. package/dist/admin/components/FormModal/attributes/nameField.mjs.map +1 -0
  359. package/dist/admin/components/FormModal/attributes/types.js +314 -0
  360. package/dist/admin/components/FormModal/attributes/types.js.map +1 -0
  361. package/dist/admin/components/FormModal/attributes/types.mjs +289 -0
  362. package/dist/admin/components/FormModal/attributes/types.mjs.map +1 -0
  363. package/dist/admin/components/FormModal/attributes/validation/common.js +160 -0
  364. package/dist/admin/components/FormModal/attributes/validation/common.js.map +1 -0
  365. package/dist/admin/components/FormModal/attributes/validation/common.mjs +129 -0
  366. package/dist/admin/components/FormModal/attributes/validation/common.mjs.map +1 -0
  367. package/dist/admin/components/FormModal/component/componentField.js +40 -0
  368. package/dist/admin/components/FormModal/component/componentField.js.map +1 -0
  369. package/dist/admin/components/FormModal/component/componentField.mjs +38 -0
  370. package/dist/admin/components/FormModal/component/componentField.mjs.map +1 -0
  371. package/dist/admin/components/FormModal/component/componentForm.js +53 -0
  372. package/dist/admin/components/FormModal/component/componentForm.js.map +1 -0
  373. package/dist/admin/components/FormModal/component/componentForm.mjs +51 -0
  374. package/dist/admin/components/FormModal/component/componentForm.mjs.map +1 -0
  375. package/dist/admin/components/FormModal/component/createComponentSchema.js +66 -0
  376. package/dist/admin/components/FormModal/component/createComponentSchema.js.map +1 -0
  377. package/dist/admin/components/FormModal/component/createComponentSchema.mjs +44 -0
  378. package/dist/admin/components/FormModal/component/createComponentSchema.mjs.map +1 -0
  379. package/dist/admin/components/FormModal/contentType/contentTypeForm.js +169 -0
  380. package/dist/admin/components/FormModal/contentType/contentTypeForm.js.map +1 -0
  381. package/dist/admin/components/FormModal/contentType/contentTypeForm.mjs +167 -0
  382. package/dist/admin/components/FormModal/contentType/contentTypeForm.mjs.map +1 -0
  383. package/dist/admin/components/FormModal/contentType/createContentTypeSchema.js +171 -0
  384. package/dist/admin/components/FormModal/contentType/createContentTypeSchema.js.map +1 -0
  385. package/dist/admin/components/FormModal/contentType/createContentTypeSchema.mjs +149 -0
  386. package/dist/admin/components/FormModal/contentType/createContentTypeSchema.mjs.map +1 -0
  387. package/dist/admin/components/FormModal/dynamiczoneForm.js +68 -0
  388. package/dist/admin/components/FormModal/dynamiczoneForm.js.map +1 -0
  389. package/dist/admin/components/FormModal/dynamiczoneForm.mjs +66 -0
  390. package/dist/admin/components/FormModal/dynamiczoneForm.mjs.map +1 -0
  391. package/dist/admin/components/FormModal/forms/forms.js +280 -0
  392. package/dist/admin/components/FormModal/forms/forms.js.map +1 -0
  393. package/dist/admin/components/FormModal/forms/forms.mjs +278 -0
  394. package/dist/admin/components/FormModal/forms/forms.mjs.map +1 -0
  395. package/dist/admin/components/FormModal/forms/utils/addItemsToFormSection.js +21 -0
  396. package/dist/admin/components/FormModal/forms/utils/addItemsToFormSection.js.map +1 -0
  397. package/dist/admin/components/FormModal/forms/utils/addItemsToFormSection.mjs +19 -0
  398. package/dist/admin/components/FormModal/forms/utils/addItemsToFormSection.mjs.map +1 -0
  399. package/dist/admin/components/FormModal/forms/utils/createCollectionName.js +17 -0
  400. package/dist/admin/components/FormModal/forms/utils/createCollectionName.js.map +1 -0
  401. package/dist/admin/components/FormModal/forms/utils/createCollectionName.mjs +11 -0
  402. package/dist/admin/components/FormModal/forms/utils/createCollectionName.mjs.map +1 -0
  403. package/dist/admin/components/FormModal/forms/utils/getUsedAttributeNames.js +10 -0
  404. package/dist/admin/components/FormModal/forms/utils/getUsedAttributeNames.js.map +1 -0
  405. package/dist/admin/components/FormModal/forms/utils/getUsedAttributeNames.mjs +8 -0
  406. package/dist/admin/components/FormModal/forms/utils/getUsedAttributeNames.mjs.map +1 -0
  407. package/dist/admin/components/FormModal/reducer.js +343 -0
  408. package/dist/admin/components/FormModal/reducer.js.map +1 -0
  409. package/dist/admin/components/FormModal/reducer.mjs +333 -0
  410. package/dist/admin/components/FormModal/reducer.mjs.map +1 -0
  411. package/dist/admin/components/FormModal/utils/canEditContentType.js +27 -0
  412. package/dist/admin/components/FormModal/utils/canEditContentType.js.map +1 -0
  413. package/dist/admin/components/FormModal/utils/canEditContentType.mjs +25 -0
  414. package/dist/admin/components/FormModal/utils/canEditContentType.mjs.map +1 -0
  415. package/dist/admin/components/FormModal/utils/createUid.js +16 -0
  416. package/dist/admin/components/FormModal/utils/createUid.js.map +1 -0
  417. package/dist/admin/components/FormModal/utils/createUid.mjs +13 -0
  418. package/dist/admin/components/FormModal/utils/createUid.mjs.map +1 -0
  419. package/dist/admin/components/FormModal/utils/customFieldDefaultOptionsReducer.js +18 -0
  420. package/dist/admin/components/FormModal/utils/customFieldDefaultOptionsReducer.js.map +1 -0
  421. package/dist/admin/components/FormModal/utils/customFieldDefaultOptionsReducer.mjs +16 -0
  422. package/dist/admin/components/FormModal/utils/customFieldDefaultOptionsReducer.mjs.map +1 -0
  423. package/dist/admin/components/FormModal/utils/getAttributesToDisplay.js +56 -0
  424. package/dist/admin/components/FormModal/utils/getAttributesToDisplay.js.map +1 -0
  425. package/dist/admin/components/FormModal/utils/getAttributesToDisplay.mjs +54 -0
  426. package/dist/admin/components/FormModal/utils/getAttributesToDisplay.mjs.map +1 -0
  427. package/dist/admin/components/FormModal/utils/getFormInputNames.js +17 -0
  428. package/dist/admin/components/FormModal/utils/getFormInputNames.js.map +1 -0
  429. package/dist/admin/components/FormModal/utils/getFormInputNames.mjs +15 -0
  430. package/dist/admin/components/FormModal/utils/getFormInputNames.mjs.map +1 -0
  431. package/dist/admin/components/FormModal/utils/relations.js +15 -0
  432. package/dist/admin/components/FormModal/utils/relations.js.map +1 -0
  433. package/dist/admin/components/FormModal/utils/relations.mjs +12 -0
  434. package/dist/admin/components/FormModal/utils/relations.mjs.map +1 -0
  435. package/dist/admin/components/FormModalEndActions.js +289 -0
  436. package/dist/admin/components/FormModalEndActions.js.map +1 -0
  437. package/dist/admin/components/FormModalEndActions.mjs +287 -0
  438. package/dist/admin/components/FormModalEndActions.mjs.map +1 -0
  439. package/dist/admin/components/FormModalHeader.js +138 -0
  440. package/dist/admin/components/FormModalHeader.js.map +1 -0
  441. package/dist/admin/components/FormModalHeader.mjs +132 -0
  442. package/dist/admin/components/FormModalHeader.mjs.map +1 -0
  443. package/dist/admin/components/FormModalNavigation/FormModalNavigationContext.js +29 -0
  444. package/dist/admin/components/FormModalNavigation/FormModalNavigationContext.js.map +1 -0
  445. package/dist/admin/components/FormModalNavigation/FormModalNavigationContext.mjs +7 -0
  446. package/dist/admin/components/FormModalNavigation/FormModalNavigationContext.mjs.map +1 -0
  447. package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.js +218 -0
  448. package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.js.map +1 -0
  449. package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.mjs +215 -0
  450. package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.mjs.map +1 -0
  451. package/dist/admin/components/FormModalNavigation/useFormModalNavigation.js +9 -0
  452. package/dist/admin/components/FormModalNavigation/useFormModalNavigation.js.map +1 -0
  453. package/dist/admin/components/FormModalNavigation/useFormModalNavigation.mjs +7 -0
  454. package/dist/admin/components/FormModalNavigation/useFormModalNavigation.mjs.map +1 -0
  455. package/dist/admin/components/FormModalSubHeader.js +74 -0
  456. package/dist/admin/components/FormModalSubHeader.js.map +1 -0
  457. package/dist/admin/components/FormModalSubHeader.mjs +67 -0
  458. package/dist/admin/components/FormModalSubHeader.mjs.map +1 -0
  459. package/dist/admin/components/GenericInputs.js +552 -0
  460. package/dist/admin/components/GenericInputs.js.map +1 -0
  461. package/dist/admin/components/GenericInputs.mjs +526 -0
  462. package/dist/admin/components/GenericInputs.mjs.map +1 -0
  463. package/dist/admin/components/IconPicker/IconPicker.js +201 -0
  464. package/dist/admin/components/IconPicker/IconPicker.js.map +1 -0
  465. package/dist/admin/components/IconPicker/IconPicker.mjs +199 -0
  466. package/dist/admin/components/IconPicker/IconPicker.mjs.map +1 -0
  467. package/dist/admin/components/IconPicker/constants.js +159 -0
  468. package/dist/admin/components/IconPicker/constants.js.map +1 -0
  469. package/dist/admin/components/IconPicker/constants.mjs +136 -0
  470. package/dist/admin/components/IconPicker/constants.mjs.map +1 -0
  471. package/dist/admin/components/List.js +199 -0
  472. package/dist/admin/components/List.js.map +1 -0
  473. package/dist/admin/components/List.mjs +196 -0
  474. package/dist/admin/components/List.mjs.map +1 -0
  475. package/dist/admin/components/PluralName.js +82 -0
  476. package/dist/admin/components/PluralName.js.map +1 -0
  477. package/dist/admin/components/PluralName.mjs +76 -0
  478. package/dist/admin/components/PluralName.mjs.map +1 -0
  479. package/dist/admin/components/Relation/Relation.js +48 -0
  480. package/dist/admin/components/Relation/Relation.js.map +1 -0
  481. package/dist/admin/components/Relation/Relation.mjs +46 -0
  482. package/dist/admin/components/Relation/Relation.mjs.map +1 -0
  483. package/dist/admin/components/Relation/RelationField/RelationField.js +52 -0
  484. package/dist/admin/components/Relation/RelationField/RelationField.js.map +1 -0
  485. package/dist/admin/components/Relation/RelationField/RelationField.mjs +50 -0
  486. package/dist/admin/components/Relation/RelationField/RelationField.mjs.map +1 -0
  487. package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.js +75 -0
  488. package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.js.map +1 -0
  489. package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.mjs +73 -0
  490. package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.mjs.map +1 -0
  491. package/dist/admin/components/Relation/RelationNaturePicker/Components.js +59 -0
  492. package/dist/admin/components/Relation/RelationNaturePicker/Components.js.map +1 -0
  493. package/dist/admin/components/Relation/RelationNaturePicker/Components.mjs +55 -0
  494. package/dist/admin/components/Relation/RelationNaturePicker/Components.mjs.map +1 -0
  495. package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.js +153 -0
  496. package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.js.map +1 -0
  497. package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.mjs +145 -0
  498. package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.mjs.map +1 -0
  499. package/dist/admin/components/SelectCategory.js +66 -0
  500. package/dist/admin/components/SelectCategory.js.map +1 -0
  501. package/dist/admin/components/SelectCategory.mjs +64 -0
  502. package/dist/admin/components/SelectCategory.mjs.map +1 -0
  503. package/dist/admin/components/SelectComponent.js +87 -0
  504. package/dist/admin/components/SelectComponent.js.map +1 -0
  505. package/dist/admin/components/SelectComponent.mjs +85 -0
  506. package/dist/admin/components/SelectComponent.mjs.map +1 -0
  507. package/dist/admin/components/SelectComponents.js +73 -0
  508. package/dist/admin/components/SelectComponents.js.map +1 -0
  509. package/dist/admin/components/SelectComponents.mjs +71 -0
  510. package/dist/admin/components/SelectComponents.mjs.map +1 -0
  511. package/dist/admin/components/SelectDateType.js +62 -0
  512. package/dist/admin/components/SelectDateType.js.map +1 -0
  513. package/dist/admin/components/SelectDateType.mjs +60 -0
  514. package/dist/admin/components/SelectDateType.mjs.map +1 -0
  515. package/dist/admin/components/SelectNumber.js +107 -0
  516. package/dist/admin/components/SelectNumber.js.map +1 -0
  517. package/dist/admin/components/SelectNumber.mjs +105 -0
  518. package/dist/admin/components/SelectNumber.mjs.map +1 -0
  519. package/dist/admin/components/SingularName.js +72 -0
  520. package/dist/admin/components/SingularName.js.map +1 -0
  521. package/dist/admin/components/SingularName.mjs +70 -0
  522. package/dist/admin/components/SingularName.mjs.map +1 -0
  523. package/dist/admin/components/Status.js +73 -0
  524. package/dist/admin/components/Status.js.map +1 -0
  525. package/dist/admin/components/Status.mjs +70 -0
  526. package/dist/admin/components/Status.mjs.map +1 -0
  527. package/dist/admin/components/TabForm.js +176 -0
  528. package/dist/admin/components/TabForm.js.map +1 -0
  529. package/dist/admin/components/TabForm.mjs +170 -0
  530. package/dist/admin/components/TabForm.mjs.map +1 -0
  531. package/dist/admin/components/TextareaEnum.js +58 -0
  532. package/dist/admin/components/TextareaEnum.js.map +1 -0
  533. package/dist/admin/components/TextareaEnum.mjs +56 -0
  534. package/dist/admin/components/TextareaEnum.mjs.map +1 -0
  535. package/dist/admin/constants.js +19 -0
  536. package/dist/admin/constants.js.map +1 -0
  537. package/dist/admin/constants.mjs +16 -0
  538. package/dist/admin/constants.mjs.map +1 -0
  539. package/dist/admin/icons/Curve.js +47 -0
  540. package/dist/admin/icons/Curve.js.map +1 -0
  541. package/dist/admin/icons/Curve.mjs +45 -0
  542. package/dist/admin/icons/Curve.mjs.map +1 -0
  543. package/dist/admin/index.js +95 -0
  544. package/dist/admin/index.js.map +1 -0
  545. package/dist/admin/index.mjs +87 -0
  546. package/dist/admin/index.mjs.map +1 -0
  547. package/dist/admin/pages/App/index.js +114 -0
  548. package/dist/admin/pages/App/index.js.map +1 -0
  549. package/dist/admin/pages/App/index.mjs +110 -0
  550. package/dist/admin/pages/App/index.mjs.map +1 -0
  551. package/dist/admin/pages/ListView/EmptyState.js +110 -0
  552. package/dist/admin/pages/ListView/EmptyState.js.map +1 -0
  553. package/dist/admin/pages/ListView/EmptyState.mjs +108 -0
  554. package/dist/admin/pages/ListView/EmptyState.mjs.map +1 -0
  555. package/dist/admin/pages/ListView/LinkToCMSettingsView.js +90 -0
  556. package/dist/admin/pages/ListView/LinkToCMSettingsView.js.map +1 -0
  557. package/dist/admin/pages/ListView/LinkToCMSettingsView.mjs +88 -0
  558. package/dist/admin/pages/ListView/LinkToCMSettingsView.mjs.map +1 -0
  559. package/dist/admin/pages/ListView/ListView.js +181 -0
  560. package/dist/admin/pages/ListView/ListView.js.map +1 -0
  561. package/dist/admin/pages/ListView/ListView.mjs +175 -0
  562. package/dist/admin/pages/ListView/ListView.mjs.map +1 -0
  563. package/dist/admin/pluginId.js +6 -0
  564. package/dist/admin/pluginId.js.map +1 -0
  565. package/dist/admin/pluginId.mjs +4 -0
  566. package/dist/admin/pluginId.mjs.map +1 -0
  567. package/dist/admin/reducers.js +12 -0
  568. package/dist/admin/reducers.js.map +1 -0
  569. package/dist/admin/reducers.mjs +10 -0
  570. package/dist/admin/reducers.mjs.map +1 -0
  571. package/dist/admin/src/components/AIChat/Chat.d.ts +2 -0
  572. package/dist/admin/src/components/AIChat/FeedbackModal.d.ts +13 -0
  573. package/dist/admin/src/components/AIChat/UploadCodeModal.d.ts +12 -0
  574. package/dist/admin/src/components/AIChat/UploadFigmaModal.d.ts +12 -0
  575. package/dist/admin/src/components/AIChat/components/Alert.d.ts +6 -0
  576. package/dist/admin/src/components/AIChat/components/AnimatedBox.d.ts +20 -0
  577. package/dist/admin/src/components/AIChat/components/Attachments/AttachmentPreview.d.ts +9 -0
  578. package/dist/admin/src/components/AIChat/components/Attachments/components/Attachment.d.ts +27 -0
  579. package/dist/admin/src/components/AIChat/components/Base64Image.d.ts +9 -0
  580. package/dist/admin/src/components/AIChat/components/Collapsible.d.ts +18 -0
  581. package/dist/admin/src/components/AIChat/components/Dropzone.d.ts +34 -0
  582. package/dist/admin/src/components/AIChat/components/FloatingPanel.d.ts +33 -0
  583. package/dist/admin/src/components/AIChat/components/FullScreenImage.d.ts +20 -0
  584. package/dist/admin/src/components/AIChat/components/ImagePreview.d.ts +8 -0
  585. package/dist/admin/src/components/AIChat/components/ImagePreviewGroup.d.ts +7 -0
  586. package/dist/admin/src/components/AIChat/components/Input.d.ts +48 -0
  587. package/dist/admin/src/components/AIChat/components/Messages/Marker.d.ts +2 -0
  588. package/dist/admin/src/components/AIChat/components/Messages/Message.d.ts +4 -0
  589. package/dist/admin/src/components/AIChat/components/ResizableTextArea.d.ts +8 -0
  590. package/dist/admin/src/components/AIChat/components/SimpleMenu.d.ts +32 -0
  591. package/dist/admin/src/components/AIChat/components/StepModal.d.ts +37 -0
  592. package/dist/admin/src/components/AIChat/components/animations.d.ts +8 -0
  593. package/dist/admin/src/components/AIChat/components/icons/FigmaIcon.d.ts +4 -0
  594. package/dist/admin/src/components/AIChat/components/icons/StopIcon.d.ts +4 -0
  595. package/dist/admin/src/components/AIChat/hooks/useAIFetch.d.ts +147 -0
  596. package/dist/admin/src/components/AIChat/hooks/useAttachments.d.ts +8 -0
  597. package/dist/admin/src/components/AIChat/hooks/useChatTitle.d.ts +13 -0
  598. package/dist/admin/src/components/AIChat/hooks/useCodeUpload.d.ts +31 -0
  599. package/dist/admin/src/components/AIChat/hooks/useFeedback.d.ts +7 -0
  600. package/dist/admin/src/components/AIChat/hooks/useFigmaUpload.d.ts +61 -0
  601. package/dist/admin/src/components/AIChat/hooks/useLastSeenSchemas.d.ts +10 -0
  602. package/dist/admin/src/components/AIChat/hooks/useTranslations.d.ts +3 -0
  603. package/dist/admin/src/components/AIChat/lib/aiClient.d.ts +32 -0
  604. package/dist/admin/src/components/AIChat/lib/constants.d.ts +12 -0
  605. package/dist/admin/src/components/AIChat/lib/fileToAttachment.d.ts +2 -0
  606. package/dist/admin/src/components/AIChat/lib/misc.d.ts +1 -0
  607. package/dist/admin/src/components/AIChat/lib/transforms/schemas/fromCTB.d.ts +7 -0
  608. package/dist/admin/src/components/AIChat/lib/transforms/schemas/toCTB.d.ts +16 -0
  609. package/dist/admin/src/components/AIChat/lib/types/annotations.d.ts +19 -0
  610. package/dist/admin/src/components/AIChat/lib/types/attachments.d.ts +15 -0
  611. package/dist/admin/src/components/AIChat/lib/types/feedback.d.ts +1 -0
  612. package/dist/admin/src/components/AIChat/lib/types/messages.d.ts +26 -0
  613. package/dist/admin/src/components/AIChat/lib/types/schema.d.ts +22 -0
  614. package/dist/admin/src/components/AIChat/providers/ChatProvider.d.ts +30 -0
  615. package/dist/admin/src/components/AIChat/providers/SchemaProvider.d.ts +10 -0
  616. package/dist/admin/src/components/AllowedTypesSelect.d.ts +9 -0
  617. package/dist/admin/src/components/ApplyConditionButton.d.ts +8 -0
  618. package/dist/admin/src/components/AttributeIcon.d.ts +9 -0
  619. package/dist/admin/src/components/AttributeOptions/AttributeList.d.ts +6 -0
  620. package/dist/admin/src/components/AttributeOptions/AttributeOption.d.ts +11 -0
  621. package/dist/admin/src/components/AttributeOptions/AttributeOptions.d.ts +13 -0
  622. package/dist/admin/src/components/AttributeOptions/CustomFieldOption.d.ts +22 -0
  623. package/dist/admin/src/components/AttributeOptions/CustomFieldsList.d.ts +1 -0
  624. package/dist/admin/src/components/AttributeOptions/EmptyAttributes.d.ts +2 -0
  625. package/dist/admin/src/components/AttributeOptions/OptionBoxWrapper.d.ts +13 -0
  626. package/dist/admin/src/components/AttributeRow.d.ts +32 -0
  627. package/dist/admin/src/components/AutoReloadOverlayBlocker.d.ts +25 -0
  628. package/dist/admin/src/components/BooleanDefaultValueSelect.d.ts +20 -0
  629. package/dist/admin/src/components/BooleanRadioGroup.d.ts +8 -0
  630. package/dist/admin/src/components/CTBSession/CTBSessionProvider.d.ts +26 -0
  631. package/dist/admin/src/components/CTBSession/ctbSession.d.ts +5 -0
  632. package/dist/admin/src/components/CTBSession/sessionContext.d.ts +24 -0
  633. package/dist/admin/src/components/CTBSession/useCTBSession.d.ts +12 -0
  634. package/dist/admin/src/components/CTBSession/useCTBTracking.d.ts +13 -0
  635. package/dist/admin/src/components/CheckboxWithNumberField.d.ts +13 -0
  636. package/dist/admin/src/components/ComponentCard/ComponentCard.d.ts +14 -0
  637. package/dist/admin/src/components/ComponentCard/ComponentIcon/ComponentIcon.d.ts +7 -0
  638. package/dist/admin/src/components/ComponentCard/ComponentIcon/index.d.ts +1 -0
  639. package/dist/admin/src/components/ComponentCard/index.d.ts +1 -0
  640. package/dist/admin/src/components/ComponentList.d.ts +8 -0
  641. package/dist/admin/src/components/ComponentRow.d.ts +19 -0
  642. package/dist/admin/src/components/ContentTypeBuilderNav/ContentTypeBuilderNav.d.ts +1 -0
  643. package/dist/admin/src/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.d.ts +36 -0
  644. package/dist/admin/src/components/ContentTypeRadioGroup.d.ts +16 -0
  645. package/dist/admin/src/components/CustomRadioGroup/CustomRadioGroup.d.ts +16 -0
  646. package/dist/admin/src/components/CustomRadioGroup/Styles.d.ts +6 -0
  647. package/dist/admin/src/components/CustomRadioGroup/index.d.ts +1 -0
  648. package/dist/admin/src/components/DataManager/DataManagerContext.d.ts +139 -0
  649. package/dist/admin/src/components/DataManager/DataManagerProvider.d.ts +6 -0
  650. package/dist/admin/src/components/DataManager/reducer.d.ts +282 -0
  651. package/dist/admin/src/components/DataManager/undoRedo.d.ts +23 -0
  652. package/dist/admin/src/components/DataManager/useDataManager.d.ts +1 -0
  653. package/dist/admin/src/components/DataManager/useServerRestartWatcher.d.ts +1 -0
  654. package/dist/admin/src/components/DataManager/utils/cleanData.d.ts +333 -0
  655. package/dist/admin/src/components/DataManager/utils/formatSchemas.d.ts +9 -0
  656. package/dist/admin/src/components/DataManager/utils/retrieveComponentsThatHaveComponents.d.ts +12 -0
  657. package/dist/admin/src/components/DataManager/utils/retrieveNestedComponents.d.ts +8 -0
  658. package/dist/admin/src/components/DataManager/utils/retrieveSpecificInfoFromComponents.d.ts +2 -0
  659. package/dist/admin/src/components/DisplayedType.d.ts +8 -0
  660. package/dist/admin/src/components/DraftAndPublishToggle.d.ts +22 -0
  661. package/dist/admin/src/components/DynamicZoneList.d.ts +13 -0
  662. package/dist/admin/src/components/ExitPrompt.d.ts +1 -0
  663. package/dist/admin/src/components/Footers.d.ts +13 -0
  664. package/dist/admin/src/components/FormModal/FormModal.d.ts +1 -0
  665. package/dist/admin/src/components/FormModal/attributes/ConditionForm.d.ts +24 -0
  666. package/dist/admin/src/components/FormModal/attributes/advancedForm.d.ts +696 -0
  667. package/dist/admin/src/components/FormModal/attributes/attributeOptions.d.ts +90 -0
  668. package/dist/admin/src/components/FormModal/attributes/baseForm.d.ts +376 -0
  669. package/dist/admin/src/components/FormModal/attributes/commonBaseForm.d.ts +17 -0
  670. package/dist/admin/src/components/FormModal/attributes/form.d.ts +1072 -0
  671. package/dist/admin/src/components/FormModal/attributes/nameField.d.ts +12 -0
  672. package/dist/admin/src/components/FormModal/attributes/types.d.ts +327 -0
  673. package/dist/admin/src/components/FormModal/attributes/validation/common.d.ts +42 -0
  674. package/dist/admin/src/components/FormModal/component/componentField.d.ts +20 -0
  675. package/dist/admin/src/components/FormModal/component/componentForm.d.ts +25 -0
  676. package/dist/admin/src/components/FormModal/component/createComponentSchema.d.ts +10 -0
  677. package/dist/admin/src/components/FormModal/contentType/contentTypeForm.d.ts +116 -0
  678. package/dist/admin/src/components/FormModal/contentType/createContentTypeSchema.d.ts +22 -0
  679. package/dist/admin/src/components/FormModal/dynamiczoneForm.d.ts +68 -0
  680. package/dist/admin/src/components/FormModal/forms/forms.d.ts +204 -0
  681. package/dist/admin/src/components/FormModal/forms/utils/addItemsToFormSection.d.ts +38 -0
  682. package/dist/admin/src/components/FormModal/forms/utils/createCollectionName.d.ts +2 -0
  683. package/dist/admin/src/components/FormModal/forms/utils/getUsedAttributeNames.d.ts +22 -0
  684. package/dist/admin/src/components/FormModal/reducer.d.ts +188 -0
  685. package/dist/admin/src/components/FormModal/utils/canEditContentType.d.ts +18 -0
  686. package/dist/admin/src/components/FormModal/utils/createUid.d.ts +4 -0
  687. package/dist/admin/src/components/FormModal/utils/customFieldDefaultOptionsReducer.d.ts +11 -0
  688. package/dist/admin/src/components/FormModal/utils/getAttributesToDisplay.d.ts +4 -0
  689. package/dist/admin/src/components/FormModal/utils/getFormInputNames.d.ts +8 -0
  690. package/dist/admin/src/components/FormModal/utils/relations.d.ts +4 -0
  691. package/dist/admin/src/components/FormModalEndActions.d.ts +38 -0
  692. package/dist/admin/src/components/FormModalHeader.d.ts +18 -0
  693. package/dist/admin/src/components/FormModalNavigation/FormModalNavigationContext.d.ts +19 -0
  694. package/dist/admin/src/components/FormModalNavigation/FormModalNavigationProvider.d.ts +69 -0
  695. package/dist/admin/src/components/FormModalNavigation/useFormModalNavigation.d.ts +1 -0
  696. package/dist/admin/src/components/FormModalSubHeader.d.ts +22 -0
  697. package/dist/admin/src/components/GenericInputs.d.ts +90 -0
  698. package/dist/admin/src/components/IconPicker/IconPicker.d.ts +8 -0
  699. package/dist/admin/src/components/IconPicker/constants.d.ts +5 -0
  700. package/dist/admin/src/components/IconPicker/index.d.ts +1 -0
  701. package/dist/admin/src/components/List.d.ts +26 -0
  702. package/dist/admin/src/components/PluralName.d.ts +14 -0
  703. package/dist/admin/src/components/Relation/Relation.d.ts +19 -0
  704. package/dist/admin/src/components/Relation/RelationField/RelationField.d.ts +15 -0
  705. package/dist/admin/src/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.d.ts +7 -0
  706. package/dist/admin/src/components/Relation/RelationNaturePicker/Components.d.ts +37 -0
  707. package/dist/admin/src/components/Relation/RelationNaturePicker/RelationNaturePicker.d.ts +9 -0
  708. package/dist/admin/src/components/SelectCategory.d.ts +12 -0
  709. package/dist/admin/src/components/SelectComponent.d.ts +21 -0
  710. package/dist/admin/src/components/SelectComponents.d.ts +21 -0
  711. package/dist/admin/src/components/SelectDateType.d.ts +38 -0
  712. package/dist/admin/src/components/SelectNumber.d.ts +36 -0
  713. package/dist/admin/src/components/SingularName.d.ts +14 -0
  714. package/dist/admin/src/components/Status.d.ts +6 -0
  715. package/dist/admin/src/components/TabForm.d.ts +40 -0
  716. package/dist/admin/src/components/TextareaEnum.d.ts +20 -0
  717. package/dist/admin/src/constants.d.ts +7 -0
  718. package/dist/admin/src/exports.d.ts +15 -0
  719. package/dist/admin/src/icons/Curve.d.ts +6 -0
  720. package/dist/admin/src/index.d.ts +18 -0
  721. package/dist/admin/src/pages/App/index.d.ts +2 -0
  722. package/dist/admin/src/pages/ListView/EmptyState.d.ts +1 -0
  723. package/dist/admin/src/pages/ListView/LinkToCMSettingsView.d.ts +7 -0
  724. package/dist/admin/src/pages/ListView/ListView.d.ts +2 -0
  725. package/dist/admin/src/pluginId.d.ts +1 -0
  726. package/dist/admin/src/reducers.d.ts +4 -0
  727. package/dist/admin/src/types.d.ts +63 -0
  728. package/dist/admin/src/utils/conditions.d.ts +26 -0
  729. package/dist/admin/src/utils/findAttribute.d.ts +2 -0
  730. package/dist/admin/src/utils/formAPI.d.ts +48 -0
  731. package/dist/admin/src/utils/getAttributeDisplayedType.d.ts +1 -0
  732. package/dist/admin/src/utils/getMaxDepth.d.ts +23 -0
  733. package/dist/admin/src/utils/getRelationType.d.ts +6 -0
  734. package/dist/admin/src/utils/getTrad.d.ts +1 -0
  735. package/dist/admin/src/utils/getYupInnerErrors.d.ts +7 -0
  736. package/dist/admin/src/utils/index.d.ts +2 -0
  737. package/dist/admin/src/utils/isAllowedContentTypesForRelations.d.ts +2 -0
  738. package/dist/admin/src/utils/makeUnique.d.ts +2 -0
  739. package/dist/admin/src/utils/nameToSlug.d.ts +1 -0
  740. package/dist/admin/src/utils/parseDateValue.d.ts +1 -0
  741. package/dist/admin/src/utils/parseNumberInputValue.d.ts +1 -0
  742. package/dist/admin/src/utils/prefixPluginTranslations.d.ts +3 -0
  743. package/dist/admin/src/utils/startsWithANumber.d.ts +1 -0
  744. package/dist/admin/src/utils/timeFormat.d.ts +16 -0
  745. package/dist/admin/src/utils/toRegressedEnumValue.d.ts +1 -0
  746. package/dist/admin/translations/ar.json.js +239 -0
  747. package/dist/admin/translations/ar.json.js.map +1 -0
  748. package/dist/admin/translations/ar.json.mjs +233 -0
  749. package/dist/admin/translations/ar.json.mjs.map +1 -0
  750. package/dist/admin/translations/cs.json.js +298 -0
  751. package/dist/admin/translations/cs.json.js.map +1 -0
  752. package/dist/admin/translations/cs.json.mjs +292 -0
  753. package/dist/admin/translations/cs.json.mjs.map +1 -0
  754. package/dist/admin/translations/da.json.js +185 -0
  755. package/dist/admin/translations/da.json.js.map +1 -0
  756. package/dist/admin/translations/da.json.mjs +179 -0
  757. package/dist/admin/translations/da.json.mjs.map +1 -0
  758. package/dist/admin/translations/de.json.js +298 -0
  759. package/dist/admin/translations/de.json.js.map +1 -0
  760. package/dist/admin/translations/de.json.mjs +292 -0
  761. package/dist/admin/translations/de.json.mjs.map +1 -0
  762. package/dist/admin/translations/en.json.js +300 -0
  763. package/dist/admin/translations/en.json.js.map +1 -0
  764. package/dist/admin/translations/en.json.mjs +294 -0
  765. package/dist/admin/translations/en.json.mjs.map +1 -0
  766. package/dist/admin/translations/es.json.js +240 -0
  767. package/dist/admin/translations/es.json.js.map +1 -0
  768. package/dist/admin/translations/es.json.mjs +234 -0
  769. package/dist/admin/translations/es.json.mjs.map +1 -0
  770. package/dist/admin/translations/fa.json.js +300 -0
  771. package/dist/admin/translations/fa.json.js.map +1 -0
  772. package/dist/admin/translations/fa.json.mjs +294 -0
  773. package/dist/admin/translations/fa.json.mjs.map +1 -0
  774. package/dist/admin/translations/fr.json.js +244 -0
  775. package/dist/admin/translations/fr.json.js.map +1 -0
  776. package/dist/admin/translations/fr.json.mjs +238 -0
  777. package/dist/admin/translations/fr.json.mjs.map +1 -0
  778. package/dist/admin/translations/id.json.js +239 -0
  779. package/dist/admin/translations/id.json.js.map +1 -0
  780. package/dist/admin/translations/id.json.mjs +233 -0
  781. package/dist/admin/translations/id.json.mjs.map +1 -0
  782. package/dist/admin/translations/it.json.js +239 -0
  783. package/dist/admin/translations/it.json.js.map +1 -0
  784. package/dist/admin/translations/it.json.mjs +233 -0
  785. package/dist/admin/translations/it.json.mjs.map +1 -0
  786. package/dist/admin/translations/ja.json.js +298 -0
  787. package/dist/admin/translations/ja.json.js.map +1 -0
  788. package/dist/admin/translations/ja.json.mjs +292 -0
  789. package/dist/admin/translations/ja.json.mjs.map +1 -0
  790. package/dist/admin/translations/ko.json.js +302 -0
  791. package/dist/admin/translations/ko.json.js.map +1 -0
  792. package/dist/admin/translations/ko.json.mjs +296 -0
  793. package/dist/admin/translations/ko.json.mjs.map +1 -0
  794. package/dist/admin/translations/ms.json.js +239 -0
  795. package/dist/admin/translations/ms.json.js.map +1 -0
  796. package/dist/admin/translations/ms.json.mjs +233 -0
  797. package/dist/admin/translations/ms.json.mjs.map +1 -0
  798. package/dist/admin/translations/nl.json.js +301 -0
  799. package/dist/admin/translations/nl.json.js.map +1 -0
  800. package/dist/admin/translations/nl.json.mjs +295 -0
  801. package/dist/admin/translations/nl.json.mjs.map +1 -0
  802. package/dist/admin/translations/pl.json.js +298 -0
  803. package/dist/admin/translations/pl.json.js.map +1 -0
  804. package/dist/admin/translations/pl.json.mjs +292 -0
  805. package/dist/admin/translations/pl.json.mjs.map +1 -0
  806. package/dist/admin/translations/pt-BR.json.js +239 -0
  807. package/dist/admin/translations/pt-BR.json.js.map +1 -0
  808. package/dist/admin/translations/pt-BR.json.mjs +233 -0
  809. package/dist/admin/translations/pt-BR.json.mjs.map +1 -0
  810. package/dist/admin/translations/pt.json.js +239 -0
  811. package/dist/admin/translations/pt.json.js.map +1 -0
  812. package/dist/admin/translations/pt.json.mjs +233 -0
  813. package/dist/admin/translations/pt.json.mjs.map +1 -0
  814. package/dist/admin/translations/ru.json.js +240 -0
  815. package/dist/admin/translations/ru.json.js.map +1 -0
  816. package/dist/admin/translations/ru.json.mjs +234 -0
  817. package/dist/admin/translations/ru.json.mjs.map +1 -0
  818. package/dist/admin/translations/sk.json.js +298 -0
  819. package/dist/admin/translations/sk.json.js.map +1 -0
  820. package/dist/admin/translations/sk.json.mjs +292 -0
  821. package/dist/admin/translations/sk.json.mjs.map +1 -0
  822. package/dist/admin/translations/sv.json.js +224 -0
  823. package/dist/admin/translations/sv.json.js.map +1 -0
  824. package/dist/admin/translations/sv.json.mjs +218 -0
  825. package/dist/admin/translations/sv.json.mjs.map +1 -0
  826. package/dist/admin/translations/th.json.js +187 -0
  827. package/dist/admin/translations/th.json.js.map +1 -0
  828. package/dist/admin/translations/th.json.mjs +181 -0
  829. package/dist/admin/translations/th.json.mjs.map +1 -0
  830. package/dist/admin/translations/tr.json.js +201 -0
  831. package/dist/admin/translations/tr.json.js.map +1 -0
  832. package/dist/admin/translations/tr.json.mjs +195 -0
  833. package/dist/admin/translations/tr.json.mjs.map +1 -0
  834. package/dist/admin/translations/uk.json.js +238 -0
  835. package/dist/admin/translations/uk.json.js.map +1 -0
  836. package/dist/admin/translations/uk.json.mjs +232 -0
  837. package/dist/admin/translations/uk.json.mjs.map +1 -0
  838. package/dist/admin/translations/zh-Hans.json.js +239 -0
  839. package/dist/admin/translations/zh-Hans.json.js.map +1 -0
  840. package/dist/admin/translations/zh-Hans.json.mjs +233 -0
  841. package/dist/admin/translations/zh-Hans.json.mjs.map +1 -0
  842. package/dist/admin/translations/zh.json.js +224 -0
  843. package/dist/admin/translations/zh.json.js.map +1 -0
  844. package/dist/admin/translations/zh.json.mjs +218 -0
  845. package/dist/admin/translations/zh.json.mjs.map +1 -0
  846. package/dist/admin/utils/conditions.js +71 -0
  847. package/dist/admin/utils/conditions.js.map +1 -0
  848. package/dist/admin/utils/conditions.mjs +66 -0
  849. package/dist/admin/utils/conditions.mjs.map +1 -0
  850. package/dist/admin/utils/findAttribute.js +8 -0
  851. package/dist/admin/utils/findAttribute.js.map +1 -0
  852. package/dist/admin/utils/findAttribute.mjs +6 -0
  853. package/dist/admin/utils/findAttribute.mjs.map +1 -0
  854. package/dist/admin/utils/formAPI.js +141 -0
  855. package/dist/admin/utils/formAPI.js.map +1 -0
  856. package/dist/admin/utils/formAPI.mjs +115 -0
  857. package/dist/admin/utils/formAPI.mjs.map +1 -0
  858. package/dist/admin/utils/getAttributeDisplayedType.js +32 -0
  859. package/dist/admin/utils/getAttributeDisplayedType.js.map +1 -0
  860. package/dist/admin/utils/getAttributeDisplayedType.mjs +30 -0
  861. package/dist/admin/utils/getAttributeDisplayedType.mjs.map +1 -0
  862. package/dist/admin/utils/getMaxDepth.js +74 -0
  863. package/dist/admin/utils/getMaxDepth.js.map +1 -0
  864. package/dist/admin/utils/getMaxDepth.mjs +71 -0
  865. package/dist/admin/utils/getMaxDepth.mjs.map +1 -0
  866. package/dist/admin/utils/getRelationType.js +21 -0
  867. package/dist/admin/utils/getRelationType.js.map +1 -0
  868. package/dist/admin/utils/getRelationType.mjs +19 -0
  869. package/dist/admin/utils/getRelationType.mjs.map +1 -0
  870. package/dist/admin/utils/getTrad.js +8 -0
  871. package/dist/admin/utils/getTrad.js.map +1 -0
  872. package/dist/admin/utils/getTrad.mjs +6 -0
  873. package/dist/admin/utils/getTrad.mjs.map +1 -0
  874. package/dist/admin/utils/getYupInnerErrors.js +25 -0
  875. package/dist/admin/utils/getYupInnerErrors.js.map +1 -0
  876. package/dist/admin/utils/getYupInnerErrors.mjs +23 -0
  877. package/dist/admin/utils/getYupInnerErrors.mjs.map +1 -0
  878. package/dist/admin/utils/isAllowedContentTypesForRelations.js +8 -0
  879. package/dist/admin/utils/isAllowedContentTypesForRelations.js.map +1 -0
  880. package/dist/admin/utils/isAllowedContentTypesForRelations.mjs +6 -0
  881. package/dist/admin/utils/isAllowedContentTypesForRelations.mjs.map +1 -0
  882. package/dist/admin/utils/makeUnique.js +8 -0
  883. package/dist/admin/utils/makeUnique.js.map +1 -0
  884. package/dist/admin/utils/makeUnique.mjs +6 -0
  885. package/dist/admin/utils/makeUnique.mjs.map +1 -0
  886. package/dist/admin/utils/nameToSlug.js +14 -0
  887. package/dist/admin/utils/nameToSlug.js.map +1 -0
  888. package/dist/admin/utils/nameToSlug.mjs +8 -0
  889. package/dist/admin/utils/nameToSlug.mjs.map +1 -0
  890. package/dist/admin/utils/parseDateValue.js +17 -0
  891. package/dist/admin/utils/parseDateValue.js.map +1 -0
  892. package/dist/admin/utils/parseDateValue.mjs +15 -0
  893. package/dist/admin/utils/parseDateValue.mjs.map +1 -0
  894. package/dist/admin/utils/parseNumberInputValue.js +15 -0
  895. package/dist/admin/utils/parseNumberInputValue.js.map +1 -0
  896. package/dist/admin/utils/parseNumberInputValue.mjs +13 -0
  897. package/dist/admin/utils/parseNumberInputValue.mjs.map +1 -0
  898. package/dist/admin/utils/prefixPluginTranslations.js +11 -0
  899. package/dist/admin/utils/prefixPluginTranslations.js.map +1 -0
  900. package/dist/admin/utils/prefixPluginTranslations.mjs +9 -0
  901. package/dist/admin/utils/prefixPluginTranslations.mjs.map +1 -0
  902. package/dist/admin/utils/timeFormat.js +38 -0
  903. package/dist/admin/utils/timeFormat.js.map +1 -0
  904. package/dist/admin/utils/timeFormat.mjs +35 -0
  905. package/dist/admin/utils/timeFormat.mjs.map +1 -0
  906. package/dist/admin/utils/toRegressedEnumValue.js +21 -0
  907. package/dist/admin/utils/toRegressedEnumValue.js.map +1 -0
  908. package/dist/admin/utils/toRegressedEnumValue.mjs +15 -0
  909. package/dist/admin/utils/toRegressedEnumValue.mjs.map +1 -0
  910. package/dist/server/bootstrap.js +16 -0
  911. package/dist/server/bootstrap.js.map +1 -0
  912. package/dist/server/bootstrap.mjs +14 -0
  913. package/dist/server/bootstrap.mjs.map +1 -0
  914. package/dist/server/config.js +9 -0
  915. package/dist/server/config.js.map +1 -0
  916. package/dist/server/config.mjs +7 -0
  917. package/dist/server/config.mjs.map +1 -0
  918. package/dist/server/controllers/builder.js +12 -0
  919. package/dist/server/controllers/builder.js.map +1 -0
  920. package/dist/server/controllers/builder.mjs +10 -0
  921. package/dist/server/controllers/builder.mjs.map +1 -0
  922. package/dist/server/controllers/component-categories.js +38 -0
  923. package/dist/server/controllers/component-categories.js.map +1 -0
  924. package/dist/server/controllers/component-categories.mjs +36 -0
  925. package/dist/server/controllers/component-categories.mjs.map +1 -0
  926. package/dist/server/controllers/components.js +148 -0
  927. package/dist/server/controllers/components.js.map +1 -0
  928. package/dist/server/controllers/components.mjs +142 -0
  929. package/dist/server/controllers/components.mjs.map +1 -0
  930. package/dist/server/controllers/content-types.js +165 -0
  931. package/dist/server/controllers/content-types.js.map +1 -0
  932. package/dist/server/controllers/content-types.mjs +159 -0
  933. package/dist/server/controllers/content-types.mjs.map +1 -0
  934. package/dist/server/controllers/index.js +18 -0
  935. package/dist/server/controllers/index.js.map +1 -0
  936. package/dist/server/controllers/index.mjs +16 -0
  937. package/dist/server/controllers/index.mjs.map +1 -0
  938. package/dist/server/controllers/schema.js +56 -0
  939. package/dist/server/controllers/schema.js.map +1 -0
  940. package/dist/server/controllers/schema.mjs +54 -0
  941. package/dist/server/controllers/schema.mjs.map +1 -0
  942. package/dist/server/controllers/validation/common.js +102 -0
  943. package/dist/server/controllers/validation/common.js.map +1 -0
  944. package/dist/server/controllers/validation/common.mjs +81 -0
  945. package/dist/server/controllers/validation/common.mjs.map +1 -0
  946. package/dist/server/controllers/validation/component-category.js +12 -0
  947. package/dist/server/controllers/validation/component-category.js.map +1 -0
  948. package/dist/server/controllers/validation/component-category.mjs +10 -0
  949. package/dist/server/controllers/validation/component-category.mjs.map +1 -0
  950. package/dist/server/controllers/validation/component.js +72 -0
  951. package/dist/server/controllers/validation/component.js.map +1 -0
  952. package/dist/server/controllers/validation/component.mjs +60 -0
  953. package/dist/server/controllers/validation/component.mjs.map +1 -0
  954. package/dist/server/controllers/validation/content-type.js +153 -0
  955. package/dist/server/controllers/validation/content-type.js.map +1 -0
  956. package/dist/server/controllers/validation/content-type.mjs +149 -0
  957. package/dist/server/controllers/validation/content-type.mjs.map +1 -0
  958. package/dist/server/controllers/validation/data-transform.js +31 -0
  959. package/dist/server/controllers/validation/data-transform.js.map +1 -0
  960. package/dist/server/controllers/validation/data-transform.mjs +24 -0
  961. package/dist/server/controllers/validation/data-transform.mjs.map +1 -0
  962. package/dist/server/controllers/validation/model-schema.js +94 -0
  963. package/dist/server/controllers/validation/model-schema.js.map +1 -0
  964. package/dist/server/controllers/validation/model-schema.mjs +88 -0
  965. package/dist/server/controllers/validation/model-schema.mjs.map +1 -0
  966. package/dist/server/controllers/validation/relations.js +71 -0
  967. package/dist/server/controllers/validation/relations.js.map +1 -0
  968. package/dist/server/controllers/validation/relations.mjs +69 -0
  969. package/dist/server/controllers/validation/relations.mjs.map +1 -0
  970. package/dist/server/controllers/validation/schema.js +666 -0
  971. package/dist/server/controllers/validation/schema.js.map +1 -0
  972. package/dist/server/controllers/validation/schema.mjs +661 -0
  973. package/dist/server/controllers/validation/schema.mjs.map +1 -0
  974. package/dist/server/controllers/validation/types.js +236 -0
  975. package/dist/server/controllers/validation/types.js.map +1 -0
  976. package/dist/server/controllers/validation/types.mjs +230 -0
  977. package/dist/server/controllers/validation/types.mjs.map +1 -0
  978. package/dist/server/index.js +24 -0
  979. package/dist/server/index.js.map +1 -0
  980. package/dist/server/index.mjs +22 -0
  981. package/dist/server/index.mjs.map +1 -0
  982. package/dist/server/middlewares/index.js +8 -0
  983. package/dist/server/middlewares/index.js.map +1 -0
  984. package/dist/server/middlewares/index.mjs +2 -0
  985. package/dist/server/middlewares/index.mjs.map +1 -0
  986. package/dist/server/middlewares/is-development-mode.js +19 -0
  987. package/dist/server/middlewares/is-development-mode.js.map +1 -0
  988. package/dist/server/middlewares/is-development-mode.mjs +17 -0
  989. package/dist/server/middlewares/is-development-mode.mjs.map +1 -0
  990. package/dist/server/register.js +38 -0
  991. package/dist/server/register.js.map +1 -0
  992. package/dist/server/register.mjs +36 -0
  993. package/dist/server/register.mjs.map +1 -0
  994. package/dist/server/routes/admin.js +311 -0
  995. package/dist/server/routes/admin.js.map +1 -0
  996. package/dist/server/routes/admin.mjs +309 -0
  997. package/dist/server/routes/admin.mjs.map +1 -0
  998. package/dist/server/routes/content-api.js +195 -0
  999. package/dist/server/routes/content-api.js.map +1 -0
  1000. package/dist/server/routes/content-api.mjs +173 -0
  1001. package/dist/server/routes/content-api.mjs.map +1 -0
  1002. package/dist/server/routes/index.js +12 -0
  1003. package/dist/server/routes/index.js.map +1 -0
  1004. package/dist/server/routes/index.mjs +10 -0
  1005. package/dist/server/routes/index.mjs.map +1 -0
  1006. package/dist/server/services/api-handler.js +118 -0
  1007. package/dist/server/services/api-handler.js.map +1 -0
  1008. package/dist/server/services/api-handler.mjs +93 -0
  1009. package/dist/server/services/api-handler.mjs.map +1 -0
  1010. package/dist/server/services/builder.js +27 -0
  1011. package/dist/server/services/builder.js.map +1 -0
  1012. package/dist/server/services/builder.mjs +21 -0
  1013. package/dist/server/services/builder.mjs.map +1 -0
  1014. package/dist/server/services/component-categories.js +59 -0
  1015. package/dist/server/services/component-categories.js.map +1 -0
  1016. package/dist/server/services/component-categories.mjs +56 -0
  1017. package/dist/server/services/component-categories.mjs.map +1 -0
  1018. package/dist/server/services/components.js +79 -0
  1019. package/dist/server/services/components.js.map +1 -0
  1020. package/dist/server/services/components.mjs +74 -0
  1021. package/dist/server/services/components.mjs.map +1 -0
  1022. package/dist/server/services/constants.js +52 -0
  1023. package/dist/server/services/constants.js.map +1 -0
  1024. package/dist/server/services/constants.mjs +45 -0
  1025. package/dist/server/services/constants.mjs.map +1 -0
  1026. package/dist/server/services/content-types.js +227 -0
  1027. package/dist/server/services/content-types.js.map +1 -0
  1028. package/dist/server/services/content-types.mjs +213 -0
  1029. package/dist/server/services/content-types.mjs.map +1 -0
  1030. package/dist/server/services/index.js +20 -0
  1031. package/dist/server/services/index.js.map +1 -0
  1032. package/dist/server/services/index.mjs +18 -0
  1033. package/dist/server/services/index.mjs.map +1 -0
  1034. package/dist/server/services/schema-builder/component-builder.js +130 -0
  1035. package/dist/server/services/schema-builder/component-builder.js.map +1 -0
  1036. package/dist/server/services/schema-builder/component-builder.mjs +122 -0
  1037. package/dist/server/services/schema-builder/component-builder.mjs.map +1 -0
  1038. package/dist/server/services/schema-builder/content-type-builder.js +332 -0
  1039. package/dist/server/services/schema-builder/content-type-builder.js.map +1 -0
  1040. package/dist/server/services/schema-builder/content-type-builder.mjs +325 -0
  1041. package/dist/server/services/schema-builder/content-type-builder.mjs.map +1 -0
  1042. package/dist/server/services/schema-builder/index.js +155 -0
  1043. package/dist/server/services/schema-builder/index.js.map +1 -0
  1044. package/dist/server/services/schema-builder/index.mjs +149 -0
  1045. package/dist/server/services/schema-builder/index.mjs.map +1 -0
  1046. package/dist/server/services/schema-builder/schema-handler.js +256 -0
  1047. package/dist/server/services/schema-builder/schema-handler.js.map +1 -0
  1048. package/dist/server/services/schema-builder/schema-handler.mjs +248 -0
  1049. package/dist/server/services/schema-builder/schema-handler.mjs.map +1 -0
  1050. package/dist/server/services/schema.js +252 -0
  1051. package/dist/server/services/schema.js.map +1 -0
  1052. package/dist/server/services/schema.mjs +248 -0
  1053. package/dist/server/services/schema.mjs.map +1 -0
  1054. package/dist/server/src/bootstrap.d.ts +6 -0
  1055. package/dist/server/src/bootstrap.d.ts.map +1 -0
  1056. package/dist/server/src/config.d.ts +6 -0
  1057. package/dist/server/src/config.d.ts.map +1 -0
  1058. package/dist/server/src/controllers/builder.d.ts +6 -0
  1059. package/dist/server/src/controllers/builder.d.ts.map +1 -0
  1060. package/dist/server/src/controllers/component-categories.d.ts +7 -0
  1061. package/dist/server/src/controllers/component-categories.d.ts.map +1 -0
  1062. package/dist/server/src/controllers/components.d.ts +38 -0
  1063. package/dist/server/src/controllers/components.d.ts.map +1 -0
  1064. package/dist/server/src/controllers/content-types.d.ts +10 -0
  1065. package/dist/server/src/controllers/content-types.d.ts.map +1 -0
  1066. package/dist/server/src/controllers/index.d.ts +30 -0
  1067. package/dist/server/src/controllers/index.d.ts.map +1 -0
  1068. package/dist/server/src/controllers/schema.d.ts +8 -0
  1069. package/dist/server/src/controllers/schema.d.ts.map +1 -0
  1070. package/dist/server/src/controllers/validation/common.d.ts +26 -0
  1071. package/dist/server/src/controllers/validation/common.d.ts.map +1 -0
  1072. package/dist/server/src/controllers/validation/component-category.d.ts +5 -0
  1073. package/dist/server/src/controllers/validation/component-category.d.ts.map +1 -0
  1074. package/dist/server/src/controllers/validation/component.d.ts +25 -0
  1075. package/dist/server/src/controllers/validation/component.d.ts.map +1 -0
  1076. package/dist/server/src/controllers/validation/content-type.d.ts +38 -0
  1077. package/dist/server/src/controllers/validation/content-type.d.ts.map +1 -0
  1078. package/dist/server/src/controllers/validation/data-transform.d.ts +4 -0
  1079. package/dist/server/src/controllers/validation/data-transform.d.ts.map +1 -0
  1080. package/dist/server/src/controllers/validation/model-schema.d.ts +12 -0
  1081. package/dist/server/src/controllers/validation/model-schema.d.ts.map +1 -0
  1082. package/dist/server/src/controllers/validation/relations.d.ts +18 -0
  1083. package/dist/server/src/controllers/validation/relations.d.ts.map +1 -0
  1084. package/dist/server/src/controllers/validation/schema.d.ts +109632 -0
  1085. package/dist/server/src/controllers/validation/schema.d.ts.map +1 -0
  1086. package/dist/server/src/controllers/validation/types.d.ts +9 -0
  1087. package/dist/server/src/controllers/validation/types.d.ts.map +1 -0
  1088. package/dist/server/src/index.d.ts +89 -0
  1089. package/dist/server/src/index.d.ts.map +1 -0
  1090. package/dist/server/src/middlewares/index.d.ts +3 -0
  1091. package/dist/server/src/middlewares/index.d.ts.map +1 -0
  1092. package/dist/server/src/middlewares/is-development-mode.d.ts +9 -0
  1093. package/dist/server/src/middlewares/is-development-mode.d.ts.map +1 -0
  1094. package/dist/server/src/register.d.ts +6 -0
  1095. package/dist/server/src/register.d.ts.map +1 -0
  1096. package/dist/server/src/routes/admin.d.ts +32 -0
  1097. package/dist/server/src/routes/admin.d.ts.map +1 -0
  1098. package/dist/server/src/routes/content-api.d.ts +7 -0
  1099. package/dist/server/src/routes/content-api.d.ts.map +1 -0
  1100. package/dist/server/src/routes/index.d.ts +38 -0
  1101. package/dist/server/src/routes/index.d.ts.map +1 -0
  1102. package/dist/server/src/services/api-handler.d.ts +15 -0
  1103. package/dist/server/src/services/api-handler.d.ts.map +1 -0
  1104. package/dist/server/src/services/builder.d.ts +16 -0
  1105. package/dist/server/src/services/builder.d.ts.map +1 -0
  1106. package/dist/server/src/services/component-categories.d.ts +13 -0
  1107. package/dist/server/src/services/component-categories.d.ts.map +1 -0
  1108. package/dist/server/src/services/components.d.ts +31 -0
  1109. package/dist/server/src/services/components.d.ts.map +1 -0
  1110. package/dist/server/src/services/constants.d.ts +18 -0
  1111. package/dist/server/src/services/constants.d.ts.map +1 -0
  1112. package/dist/server/src/services/content-types.d.ts +60 -0
  1113. package/dist/server/src/services/content-types.d.ts.map +1 -0
  1114. package/dist/server/src/services/index.d.ts +16 -0
  1115. package/dist/server/src/services/index.d.ts.map +1 -0
  1116. package/dist/server/src/services/schema-builder/component-builder.d.ts +40 -0
  1117. package/dist/server/src/services/schema-builder/component-builder.d.ts.map +1 -0
  1118. package/dist/server/src/services/schema-builder/content-type-builder.d.ts +43 -0
  1119. package/dist/server/src/services/schema-builder/content-type-builder.d.ts.map +1 -0
  1120. package/dist/server/src/services/schema-builder/index.d.ts +85 -0
  1121. package/dist/server/src/services/schema-builder/index.d.ts.map +1 -0
  1122. package/dist/server/src/services/schema-builder/schema-handler.d.ts +37 -0
  1123. package/dist/server/src/services/schema-builder/schema-handler.d.ts.map +1 -0
  1124. package/dist/server/src/services/schema-builder/types.d.ts +24 -0
  1125. package/dist/server/src/services/schema-builder/types.d.ts.map +1 -0
  1126. package/dist/server/src/services/schema.d.ts +4064 -0
  1127. package/dist/server/src/services/schema.d.ts.map +1 -0
  1128. package/dist/server/src/utils/attributes.d.ts +672 -0
  1129. package/dist/server/src/utils/attributes.d.ts.map +1 -0
  1130. package/dist/server/src/utils/helpers.d.ts +3 -0
  1131. package/dist/server/src/utils/helpers.d.ts.map +1 -0
  1132. package/dist/server/src/utils/index.d.ts +17 -0
  1133. package/dist/server/src/utils/index.d.ts.map +1 -0
  1134. package/dist/server/src/utils/typeguards.d.ts +3 -0
  1135. package/dist/server/src/utils/typeguards.d.ts.map +1 -0
  1136. package/dist/server/utils/attributes.js +96 -0
  1137. package/dist/server/utils/attributes.js.map +1 -0
  1138. package/dist/server/utils/attributes.mjs +86 -0
  1139. package/dist/server/utils/attributes.mjs.map +1 -0
  1140. package/dist/server/utils/index.js +8 -0
  1141. package/dist/server/utils/index.js.map +1 -0
  1142. package/dist/server/utils/index.mjs +6 -0
  1143. package/dist/server/utils/index.mjs.map +1 -0
  1144. package/dist/server/utils/typeguards.js +8 -0
  1145. package/dist/server/utils/typeguards.js.map +1 -0
  1146. package/dist/server/utils/typeguards.mjs +6 -0
  1147. package/dist/server/utils/typeguards.mjs.map +1 -0
  1148. package/package.json +101 -0
@@ -0,0 +1,167 @@
1
+ import { getFetchClient } from '@strapi/admin/strapi-admin';
2
+
3
+ let aiTokenCache = null;
4
+ const SESSION_STORAGE_KEY = 'strapi-ai-token';
5
+ const EXPIRY_BUFFER_MS = 60 * 1000;
6
+ const parseExpiryMs = (expiresAt)=>{
7
+ const ms = Date.parse(expiresAt);
8
+ return Number.isFinite(ms) ? ms : null;
9
+ };
10
+ const getTokenState = (expiresAt, bufferMs = EXPIRY_BUFFER_MS, now = Date.now())=>{
11
+ const expMs = parseExpiryMs(expiresAt);
12
+ if (expMs === null) {
13
+ return 'expired';
14
+ }
15
+ if (expMs <= now) {
16
+ return 'expired';
17
+ }
18
+ if (expMs - bufferMs <= now) {
19
+ return 'stale';
20
+ }
21
+ return 'valid';
22
+ };
23
+ const isTokenUsable = (expiresAt, bufferMs = EXPIRY_BUFFER_MS, now = Date.now())=>getTokenState(expiresAt, bufferMs, now) === 'valid';
24
+ const clearAIJwt = ()=>{
25
+ aiTokenCache = null;
26
+ sessionStorage.removeItem(SESSION_STORAGE_KEY);
27
+ };
28
+ const readFromSession = ()=>{
29
+ try {
30
+ const raw = sessionStorage.getItem(SESSION_STORAGE_KEY);
31
+ if (!raw) {
32
+ return null;
33
+ }
34
+ const parsed = JSON.parse(raw);
35
+ return parsed;
36
+ } catch {
37
+ return null;
38
+ }
39
+ };
40
+ const writeToSession = (data)=>{
41
+ sessionStorage.setItem(SESSION_STORAGE_KEY, JSON.stringify(data));
42
+ };
43
+ const getAIJwt = async ()=>{
44
+ // Check memory cache
45
+ if (aiTokenCache && isTokenUsable(aiTokenCache.expiresAt)) {
46
+ return aiTokenCache;
47
+ }
48
+ // Check session storage
49
+ const fromSession = readFromSession();
50
+ if (fromSession && isTokenUsable(fromSession.expiresAt)) {
51
+ aiTokenCache = fromSession;
52
+ return aiTokenCache;
53
+ }
54
+ // Fetch from admin endpoint
55
+ try {
56
+ const { get } = getFetchClient();
57
+ const { data } = await get('/admin/ai-token');
58
+ const token = data?.token || data?.data?.token;
59
+ const expiresAt = data?.expiresAt || data?.data?.expiresAt;
60
+ if (typeof token === 'string' && typeof expiresAt === 'string') {
61
+ aiTokenCache = {
62
+ token,
63
+ expiresAt
64
+ };
65
+ writeToSession(aiTokenCache);
66
+ return aiTokenCache;
67
+ }
68
+ return null;
69
+ } catch {
70
+ return null;
71
+ }
72
+ };
73
+ const prefetchAIToken = async ()=>{
74
+ try {
75
+ // If we already have a valid token (not expiring soon), do nothing
76
+ const existing = await getAIJwt();
77
+ if (existing) {
78
+ return;
79
+ }
80
+ // Attempt a fetch to populate cache
81
+ await getAIJwt();
82
+ } catch {
83
+ // no-op
84
+ }
85
+ };
86
+ const safeParseJson = async (response)=>{
87
+ try {
88
+ return await response.json();
89
+ } catch {
90
+ try {
91
+ const text = await response.text();
92
+ return {
93
+ error: text
94
+ };
95
+ } catch {
96
+ return undefined;
97
+ }
98
+ }
99
+ };
100
+ const buildHeaders = (token, ctx, extra)=>{
101
+ return {
102
+ Authorization: `Bearer ${token}`,
103
+ 'X-Strapi-Version': ctx?.strapiVersion || 'latest',
104
+ 'X-Strapi-User': ctx?.userId || 'unknown',
105
+ 'X-Strapi-Project-Id': ctx?.projectId || 'unknown',
106
+ ...extra
107
+ };
108
+ };
109
+ const getErrorMessage = (body)=>{
110
+ if (typeof body !== 'object' || body === null || !('error' in body)) {
111
+ return '';
112
+ }
113
+ return String(body.error ?? '').toLowerCase();
114
+ };
115
+ const shouldRetryForToken = (status, body)=>{
116
+ if (status === 401 || status === 403) {
117
+ return true;
118
+ }
119
+ const msg = getErrorMessage(body);
120
+ return msg.includes('expired') || msg.includes('invalid token');
121
+ };
122
+ /**
123
+ * Generic fetch wrapper for AI endpoints with token injection and single retry on invalidation
124
+ */ const fetchAI = async (input, options = {})=>{
125
+ // Get token
126
+ const tokenData = await getAIJwt();
127
+ if (!tokenData?.token) {
128
+ const error = new Error('Could not authorize with AI Server. Please contact your administrator.');
129
+ throw error;
130
+ }
131
+ const make = async (token)=>{
132
+ const headers = buildHeaders(token, options.ctx, options.headers);
133
+ return fetch(input, {
134
+ ...options,
135
+ headers
136
+ });
137
+ };
138
+ let response = await make(tokenData.token);
139
+ let body = undefined;
140
+ try {
141
+ body = await safeParseJson(response.clone());
142
+ } catch {
143
+ // no-op
144
+ }
145
+ if (shouldRetryForToken(response.status, body)) {
146
+ clearAIJwt();
147
+ const refreshed = await getAIJwt();
148
+ if (refreshed?.token && refreshed.token !== tokenData.token) {
149
+ response = await make(refreshed.token);
150
+ }
151
+ }
152
+ return response;
153
+ };
154
+ /**
155
+ * Factory to provide a fetch implementation compatible with AI SDK useChat
156
+ * that injects AI JWT + Strapi context headers and retries on token invalidation once.
157
+ */ const makeChatFetch = (ctx)=>{
158
+ return async (input, options = {})=>{
159
+ return fetchAI(input, {
160
+ ...options,
161
+ ctx
162
+ });
163
+ };
164
+ };
165
+
166
+ export { clearAIJwt, fetchAI, getAIJwt, makeChatFetch, prefetchAIToken, safeParseJson };
167
+ //# sourceMappingURL=aiClient.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aiClient.mjs","sources":["../../../../../admin/src/components/AIChat/lib/aiClient.ts"],"sourcesContent":["import { getFetchClient } from '@strapi/admin/strapi-admin';\r\n\r\n/**\r\n * Centralized AI client utilities:\r\n * - Token retrieval via admin endpoint using getFetchClient\r\n * - In-memory + sessionStorage caching with near-expiry buffer\r\n * - Safe JSON parsing for error handling\r\n * - Single-retry policy on token invalidation\r\n */\r\n\r\nexport interface AITokenData {\r\n token: string;\r\n expiresAt: string;\r\n}\r\n\r\ntype AITokenResponse = Partial<AITokenData> & {\r\n data?: Partial<AITokenData>;\r\n};\r\n\r\nlet aiTokenCache: AITokenData | null = null;\r\nconst SESSION_STORAGE_KEY = 'strapi-ai-token';\r\nconst EXPIRY_BUFFER_MS = 60 * 1000;\r\n\r\nconst parseExpiryMs = (expiresAt: string): number | null => {\r\n const ms = Date.parse(expiresAt);\r\n return Number.isFinite(ms) ? ms : null;\r\n};\r\n\r\ntype TokenState = 'valid' | 'stale' | 'expired';\r\n\r\nconst getTokenState = (\r\n expiresAt: string,\r\n bufferMs = EXPIRY_BUFFER_MS,\r\n now = Date.now()\r\n): TokenState => {\r\n const expMs = parseExpiryMs(expiresAt);\r\n if (expMs === null) {\r\n return 'expired';\r\n }\r\n if (expMs <= now) {\r\n return 'expired';\r\n }\r\n if (expMs - bufferMs <= now) {\r\n return 'stale';\r\n }\r\n\r\n return 'valid';\r\n};\r\n\r\nconst isTokenUsable = (expiresAt: string, bufferMs = EXPIRY_BUFFER_MS, now = Date.now()): boolean =>\r\n getTokenState(expiresAt, bufferMs, now) === 'valid';\r\n\r\nexport const clearAIJwt = () => {\r\n aiTokenCache = null;\r\n sessionStorage.removeItem(SESSION_STORAGE_KEY);\r\n};\r\n\r\nconst readFromSession = (): AITokenData | null => {\r\n try {\r\n const raw = sessionStorage.getItem(SESSION_STORAGE_KEY);\r\n if (!raw) {\r\n return null;\r\n }\r\n\r\n const parsed = JSON.parse(raw) as AITokenData;\r\n return parsed;\r\n } catch {\r\n return null;\r\n }\r\n};\r\n\r\nconst writeToSession = (data: AITokenData) => {\r\n sessionStorage.setItem(SESSION_STORAGE_KEY, JSON.stringify(data));\r\n};\r\n\r\nexport const getAIJwt = async (): Promise<AITokenData | null> => {\r\n // Check memory cache\r\n if (aiTokenCache && isTokenUsable(aiTokenCache.expiresAt)) {\r\n return aiTokenCache;\r\n }\r\n\r\n // Check session storage\r\n const fromSession = readFromSession();\r\n if (fromSession && isTokenUsable(fromSession.expiresAt)) {\r\n aiTokenCache = fromSession;\r\n\r\n return aiTokenCache;\r\n }\r\n\r\n // Fetch from admin endpoint\r\n try {\r\n const { get } = getFetchClient();\r\n const { data } = await get<AITokenResponse>('/admin/ai-token');\r\n\r\n const token = data?.token || data?.data?.token;\r\n const expiresAt = data?.expiresAt || data?.data?.expiresAt;\r\n\r\n if (typeof token === 'string' && typeof expiresAt === 'string') {\r\n aiTokenCache = { token, expiresAt };\r\n writeToSession(aiTokenCache);\r\n\r\n return aiTokenCache;\r\n }\r\n return null;\r\n } catch {\r\n return null;\r\n }\r\n};\r\n\r\nexport const prefetchAIToken = async (): Promise<void> => {\r\n try {\r\n // If we already have a valid token (not expiring soon), do nothing\r\n const existing = await getAIJwt();\r\n if (existing) {\r\n return;\r\n }\r\n\r\n // Attempt a fetch to populate cache\r\n await getAIJwt();\r\n } catch {\r\n // no-op\r\n }\r\n};\r\n\r\nexport const safeParseJson = async (response: Response): Promise<unknown> => {\r\n try {\r\n return await response.json();\r\n } catch {\r\n try {\r\n const text = await response.text();\r\n\r\n return { error: text };\r\n } catch {\r\n return undefined;\r\n }\r\n }\r\n};\r\n\r\nexport interface StrapiContextHeaders {\r\n strapiVersion?: string | null;\r\n projectId?: string | null;\r\n userId?: string | null;\r\n}\r\n\r\nconst buildHeaders = (\r\n token: string,\r\n ctx?: StrapiContextHeaders,\r\n extra?: HeadersInit\r\n): Record<string, string> => {\r\n return {\r\n Authorization: `Bearer ${token}`,\r\n 'X-Strapi-Version': ctx?.strapiVersion || 'latest',\r\n 'X-Strapi-User': ctx?.userId || 'unknown',\r\n 'X-Strapi-Project-Id': ctx?.projectId || 'unknown',\r\n ...(extra as Record<string, string>),\r\n };\r\n};\r\n\r\ntype ErrorResponseBody = {\r\n error?: unknown;\r\n};\r\n\r\nconst getErrorMessage = (body: unknown): string => {\r\n if (typeof body !== 'object' || body === null || !('error' in body)) {\r\n return '';\r\n }\r\n\r\n return String((body as ErrorResponseBody).error ?? '').toLowerCase();\r\n};\r\n\r\nconst shouldRetryForToken = (status: number, body: unknown): boolean => {\r\n if (status === 401 || status === 403) {\r\n return true;\r\n }\r\n\r\n const msg = getErrorMessage(body);\r\n return msg.includes('expired') || msg.includes('invalid token');\r\n};\r\n\r\nexport interface FetchAIOptions extends RequestInit {\r\n ctx?: StrapiContextHeaders;\r\n}\r\n\r\n/**\r\n * Generic fetch wrapper for AI endpoints with token injection and single retry on invalidation\r\n */\r\nexport const fetchAI = async (\r\n input: RequestInfo | URL,\r\n options: FetchAIOptions = {}\r\n): Promise<Response> => {\r\n // Get token\r\n const tokenData = await getAIJwt();\r\n\r\n if (!tokenData?.token) {\r\n const error = new Error(\r\n 'Could not authorize with AI Server. Please contact your administrator.'\r\n );\r\n\r\n throw error;\r\n }\r\n\r\n const make = async (token: string): Promise<Response> => {\r\n const headers = buildHeaders(token, options.ctx, options.headers);\r\n return fetch(input, {\r\n ...options,\r\n headers,\r\n });\r\n };\r\n\r\n let response = await make(tokenData.token);\r\n\r\n let body: unknown | undefined = undefined;\r\n try {\r\n body = await safeParseJson(response.clone());\r\n } catch {\r\n // no-op\r\n }\r\n\r\n if (shouldRetryForToken(response.status, body)) {\r\n clearAIJwt();\r\n\r\n const refreshed = await getAIJwt();\r\n\r\n if (refreshed?.token && refreshed.token !== tokenData.token) {\r\n response = await make(refreshed.token);\r\n }\r\n }\r\n\r\n return response;\r\n};\r\n\r\n/**\r\n * Factory to provide a fetch implementation compatible with AI SDK useChat\r\n * that injects AI JWT + Strapi context headers and retries on token invalidation once.\r\n */\r\nexport const makeChatFetch = (ctx: StrapiContextHeaders) => {\r\n return async (input: RequestInfo | URL, options: RequestInit = {}): Promise<Response> => {\r\n return fetchAI(input, { ...options, ctx });\r\n };\r\n};\r\n"],"names":["aiTokenCache","SESSION_STORAGE_KEY","EXPIRY_BUFFER_MS","parseExpiryMs","expiresAt","ms","Date","parse","Number","isFinite","getTokenState","bufferMs","now","expMs","isTokenUsable","clearAIJwt","sessionStorage","removeItem","readFromSession","raw","getItem","parsed","JSON","writeToSession","data","setItem","stringify","getAIJwt","fromSession","get","getFetchClient","token","prefetchAIToken","existing","safeParseJson","response","json","text","error","undefined","buildHeaders","ctx","extra","Authorization","strapiVersion","userId","projectId","getErrorMessage","body","String","toLowerCase","shouldRetryForToken","status","msg","includes","fetchAI","input","options","tokenData","Error","make","headers","fetch","clone","refreshed","makeChatFetch"],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ /* eslint-disable @typescript-eslint/no-namespace */ const STRAPI_CODE_MIME_TYPE = 'application/vnd.strapi.code';
4
+ const STRAPI_MAX_ATTACHMENTS = 15;
5
+ const STRAPI_MAX_ATTACHMENT_SIZE = 15 * 1024 * 1024; // 15MB
6
+ /* -------------------------------------------------------------------------------------------------
7
+ * APIs
8
+ * -----------------------------------------------------------------------------------------------*/ const STRAPI_AI_URL = process.env.STRAPI_AI_URL?.replace(/\/+$/, '') ?? 'https://strapi-ai.apps.strapi.io';
9
+ const STRAPI_AI_CHAT_URL = `${STRAPI_AI_URL}/schemas/chat`;
10
+
11
+ exports.STRAPI_AI_CHAT_URL = STRAPI_AI_CHAT_URL;
12
+ exports.STRAPI_AI_URL = STRAPI_AI_URL;
13
+ exports.STRAPI_CODE_MIME_TYPE = STRAPI_CODE_MIME_TYPE;
14
+ exports.STRAPI_MAX_ATTACHMENTS = STRAPI_MAX_ATTACHMENTS;
15
+ exports.STRAPI_MAX_ATTACHMENT_SIZE = STRAPI_MAX_ATTACHMENT_SIZE;
16
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sources":["../../../../../admin/src/components/AIChat/lib/constants.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-namespace */\r\nimport type { Schema } from './types/schema';\r\n\r\nexport const STRAPI_CODE_MIME_TYPE = 'application/vnd.strapi.code';\r\nexport const STRAPI_MAX_ATTACHMENTS = 15;\r\nexport const STRAPI_MAX_ATTACHMENT_SIZE = 15 * 1024 * 1024; // 15MB\r\n\r\n/* -------------------------------------------------------------------------------------------------\r\n * APIs\r\n * -----------------------------------------------------------------------------------------------*/\r\nexport const STRAPI_AI_URL =\r\n process.env.STRAPI_AI_URL?.replace(/\\/+$/, '') ?? 'https://strapi-ai.apps.strapi.io';\r\nexport const STRAPI_AI_CHAT_URL = `${STRAPI_AI_URL}/schemas/chat`;\r\nexport const STRAPI_AI_TITLE_URL = `/schemas/chat/generate-title` as const;\r\nexport const STRAPI_AI_FEEDBACK_URL = `/schemas/chat/feedback` as const;\r\nexport const STRAPI_AI_PROJECT_URL = `/schemas/chat/attachment` as const;\r\n\r\n// AI SDK will also send messages and other relevant data\r\nexport interface ChatBody {\r\n schemas: Schema[];\r\n}\r\n"],"names":["STRAPI_CODE_MIME_TYPE","STRAPI_MAX_ATTACHMENTS","STRAPI_MAX_ATTACHMENT_SIZE","STRAPI_AI_URL","process","env","replace","STRAPI_AI_CHAT_URL"],"mappings":";;AAAA,qDAGO,MAAMA,qBAAAA,GAAwB;AAC9B,MAAMC,yBAAyB;MACzBC,0BAAAA,GAA6B,EAAA,GAAK,IAAA,GAAO,KAAK;AAE3D;;qGAGO,MAAMC,aAAAA,GACXC,OAAAA,CAAQC,GAAG,CAACF,aAAa,EAAEG,OAAAA,CAAQ,MAAA,EAAQ,EAAA,CAAA,IAAO;MACvCC,kBAAAA,GAAqB,CAAA,EAAGJ,aAAAA,CAAc,aAAa;;;;;;;;"}
@@ -0,0 +1,10 @@
1
+ /* eslint-disable @typescript-eslint/no-namespace */ const STRAPI_CODE_MIME_TYPE = 'application/vnd.strapi.code';
2
+ const STRAPI_MAX_ATTACHMENTS = 15;
3
+ const STRAPI_MAX_ATTACHMENT_SIZE = 15 * 1024 * 1024; // 15MB
4
+ /* -------------------------------------------------------------------------------------------------
5
+ * APIs
6
+ * -----------------------------------------------------------------------------------------------*/ const STRAPI_AI_URL = process.env.STRAPI_AI_URL?.replace(/\/+$/, '') ?? 'https://strapi-ai.apps.strapi.io';
7
+ const STRAPI_AI_CHAT_URL = `${STRAPI_AI_URL}/schemas/chat`;
8
+
9
+ export { STRAPI_AI_CHAT_URL, STRAPI_AI_URL, STRAPI_CODE_MIME_TYPE, STRAPI_MAX_ATTACHMENTS, STRAPI_MAX_ATTACHMENT_SIZE };
10
+ //# sourceMappingURL=constants.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.mjs","sources":["../../../../../admin/src/components/AIChat/lib/constants.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-namespace */\r\nimport type { Schema } from './types/schema';\r\n\r\nexport const STRAPI_CODE_MIME_TYPE = 'application/vnd.strapi.code';\r\nexport const STRAPI_MAX_ATTACHMENTS = 15;\r\nexport const STRAPI_MAX_ATTACHMENT_SIZE = 15 * 1024 * 1024; // 15MB\r\n\r\n/* -------------------------------------------------------------------------------------------------\r\n * APIs\r\n * -----------------------------------------------------------------------------------------------*/\r\nexport const STRAPI_AI_URL =\r\n process.env.STRAPI_AI_URL?.replace(/\\/+$/, '') ?? 'https://strapi-ai.apps.strapi.io';\r\nexport const STRAPI_AI_CHAT_URL = `${STRAPI_AI_URL}/schemas/chat`;\r\nexport const STRAPI_AI_TITLE_URL = `/schemas/chat/generate-title` as const;\r\nexport const STRAPI_AI_FEEDBACK_URL = `/schemas/chat/feedback` as const;\r\nexport const STRAPI_AI_PROJECT_URL = `/schemas/chat/attachment` as const;\r\n\r\n// AI SDK will also send messages and other relevant data\r\nexport interface ChatBody {\r\n schemas: Schema[];\r\n}\r\n"],"names":["STRAPI_CODE_MIME_TYPE","STRAPI_MAX_ATTACHMENTS","STRAPI_MAX_ATTACHMENT_SIZE","STRAPI_AI_URL","process","env","replace","STRAPI_AI_CHAT_URL"],"mappings":"AAAA,qDAGO,MAAMA,qBAAAA,GAAwB;AAC9B,MAAMC,yBAAyB;MACzBC,0BAAAA,GAA6B,EAAA,GAAK,IAAA,GAAO,KAAK;AAE3D;;qGAGO,MAAMC,aAAAA,GACXC,OAAAA,CAAQC,GAAG,CAACF,aAAa,EAAEG,OAAAA,CAAQ,MAAA,EAAQ,EAAA,CAAA,IAAO;MACvCC,kBAAAA,GAAqB,CAAA,EAAGJ,aAAAA,CAAc,aAAa;;;;"}
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+
3
+ const generateId = (size = 16)=>{
4
+ return crypto.randomUUID().slice(0, size);
5
+ };
6
+
7
+ exports.generateId = generateId;
8
+ //# sourceMappingURL=misc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc.js","sources":["../../../../../admin/src/components/AIChat/lib/misc.ts"],"sourcesContent":["export const generateId = (size: number = 16) => {\r\n return crypto.randomUUID().slice(0, size);\r\n};\r\n"],"names":["generateId","size","crypto","randomUUID","slice"],"mappings":";;AAAO,MAAMA,UAAAA,GAAa,CAACC,IAAAA,GAAe,EAAE,GAAA;AAC1C,IAAA,OAAOC,MAAAA,CAAOC,UAAU,EAAA,CAAGC,KAAK,CAAC,CAAA,EAAGH,IAAAA,CAAAA;AACtC;;;;"}
@@ -0,0 +1,6 @@
1
+ const generateId = (size = 16)=>{
2
+ return crypto.randomUUID().slice(0, size);
3
+ };
4
+
5
+ export { generateId };
6
+ //# sourceMappingURL=misc.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc.mjs","sources":["../../../../../admin/src/components/AIChat/lib/misc.ts"],"sourcesContent":["export const generateId = (size: number = 16) => {\r\n return crypto.randomUUID().slice(0, size);\r\n};\r\n"],"names":["generateId","size","crypto","randomUUID","slice"],"mappings":"AAAO,MAAMA,UAAAA,GAAa,CAACC,IAAAA,GAAe,EAAE,GAAA;AAC1C,IAAA,OAAOC,MAAAA,CAAOC,UAAU,EAAA,CAAGC,KAAK,CAAC,CAAA,EAAGH,IAAAA,CAAAA;AACtC;;;;"}
@@ -0,0 +1,46 @@
1
+ 'use strict';
2
+
3
+ const transformAttributesFromCTBToChat = (attributes)=>{
4
+ return attributes.reduce((acc, attribute)=>{
5
+ const { name, ...rest } = attribute;
6
+ return {
7
+ ...acc,
8
+ [name]: rest
9
+ };
10
+ }, {});
11
+ };
12
+ const transformCTBToChat = (schema)=>{
13
+ if (schema.modelType === 'component') {
14
+ return {
15
+ category: schema.category,
16
+ kind: 'component',
17
+ action: 'create',
18
+ modelType: 'component',
19
+ description: schema.info.description,
20
+ name: schema.info.displayName,
21
+ uid: schema.uid,
22
+ attributes: transformAttributesFromCTBToChat(schema.attributes),
23
+ sources: schema.sources
24
+ };
25
+ }
26
+ return {
27
+ kind: schema.kind,
28
+ modelType: schema.modelType,
29
+ description: schema.info.description,
30
+ action: 'create',
31
+ name: schema.info.pluralName,
32
+ uid: schema.uid,
33
+ ...schema.plugin ? {
34
+ plugin: schema.plugin
35
+ } : {},
36
+ attributes: transformAttributesFromCTBToChat(schema.attributes),
37
+ sources: schema.sources,
38
+ options: {
39
+ draftAndPublish: schema.options?.draftAndPublish,
40
+ localized: false
41
+ }
42
+ };
43
+ };
44
+
45
+ exports.transformCTBToChat = transformCTBToChat;
46
+ //# sourceMappingURL=fromCTB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fromCTB.js","sources":["../../../../../../../admin/src/components/AIChat/lib/transforms/schemas/fromCTB.ts"],"sourcesContent":["import type { ContentType, Component, AnyAttribute } from '../../../../../types';\r\nimport type { Schema } from '../../types/schema';\r\n\r\ntype SchemaWithSources = (ContentType | Component) & { sources?: unknown };\r\n\r\nconst transformAttributesFromCTBToChat = (attributes: AnyAttribute[]) => {\r\n return attributes.reduce(\r\n (acc, attribute) => {\r\n const { name, ...rest } = attribute;\r\n\r\n return {\r\n ...acc,\r\n [name]: rest,\r\n };\r\n },\r\n {} as Record<string, Omit<AnyAttribute, 'name'>>\r\n );\r\n};\r\n\r\nexport const transformCTBToChat = (schema: SchemaWithSources): Schema => {\r\n if (schema.modelType === 'component') {\r\n return {\r\n category: schema.category,\r\n kind: 'component',\r\n action: 'create',\r\n modelType: 'component',\r\n description: schema.info.description,\r\n name: schema.info.displayName,\r\n\r\n uid: schema.uid,\r\n attributes: transformAttributesFromCTBToChat(schema.attributes),\r\n sources: schema.sources,\r\n } satisfies Schema;\r\n }\r\n\r\n return {\r\n kind: schema.kind,\r\n modelType: schema.modelType,\r\n description: schema.info.description,\r\n action: 'create',\r\n name: schema.info.pluralName,\r\n uid: schema.uid,\r\n ...(schema.plugin ? { plugin: schema.plugin } : {}),\r\n attributes: transformAttributesFromCTBToChat(schema.attributes),\r\n sources: schema.sources,\r\n options: {\r\n draftAndPublish: schema.options?.draftAndPublish,\r\n localized: false,\r\n },\r\n } satisfies Schema;\r\n};\r\n"],"names":["transformAttributesFromCTBToChat","attributes","reduce","acc","attribute","name","rest","transformCTBToChat","schema","modelType","category","kind","action","description","info","displayName","uid","sources","pluralName","plugin","options","draftAndPublish","localized"],"mappings":";;AAKA,MAAMA,mCAAmC,CAACC,UAAAA,GAAAA;AACxC,IAAA,OAAOA,UAAAA,CAAWC,MAAM,CACtB,CAACC,GAAAA,EAAKC,SAAAA,GAAAA;AACJ,QAAA,MAAM,EAAEC,IAAI,EAAE,GAAGC,MAAM,GAAGF,SAAAA;QAE1B,OAAO;AACL,YAAA,GAAGD,GAAG;AACN,YAAA,CAACE,OAAOC;AACV,SAAA;AACF,IAAA,CAAA,EACA,EAAC,CAAA;AAEL,CAAA;AAEO,MAAMC,qBAAqB,CAACC,MAAAA,GAAAA;IACjC,IAAIA,MAAAA,CAAOC,SAAS,KAAK,WAAA,EAAa;QACpC,OAAO;AACLC,YAAAA,QAAAA,EAAUF,OAAOE,QAAQ;YACzBC,IAAAA,EAAM,WAAA;YACNC,MAAAA,EAAQ,QAAA;YACRH,SAAAA,EAAW,WAAA;YACXI,WAAAA,EAAaL,MAAAA,CAAOM,IAAI,CAACD,WAAW;YACpCR,IAAAA,EAAMG,MAAAA,CAAOM,IAAI,CAACC,WAAW;AAE7BC,YAAAA,GAAAA,EAAKR,OAAOQ,GAAG;YACff,UAAAA,EAAYD,gCAAAA,CAAiCQ,OAAOP,UAAU,CAAA;AAC9DgB,YAAAA,OAAAA,EAAST,OAAOS;AAClB,SAAA;AACF,IAAA;IAEA,OAAO;AACLN,QAAAA,IAAAA,EAAMH,OAAOG,IAAI;AACjBF,QAAAA,SAAAA,EAAWD,OAAOC,SAAS;QAC3BI,WAAAA,EAAaL,MAAAA,CAAOM,IAAI,CAACD,WAAW;QACpCD,MAAAA,EAAQ,QAAA;QACRP,IAAAA,EAAMG,MAAAA,CAAOM,IAAI,CAACI,UAAU;AAC5BF,QAAAA,GAAAA,EAAKR,OAAOQ,GAAG;QACf,GAAIR,MAAAA,CAAOW,MAAM,GAAG;AAAEA,YAAAA,MAAAA,EAAQX,OAAOW;AAAO,SAAA,GAAI,EAAE;QAClDlB,UAAAA,EAAYD,gCAAAA,CAAiCQ,OAAOP,UAAU,CAAA;AAC9DgB,QAAAA,OAAAA,EAAST,OAAOS,OAAO;QACvBG,OAAAA,EAAS;YACPC,eAAAA,EAAiBb,MAAAA,CAAOY,OAAO,EAAEC,eAAAA;YACjCC,SAAAA,EAAW;AACb;AACF,KAAA;AACF;;;;"}
@@ -0,0 +1,44 @@
1
+ const transformAttributesFromCTBToChat = (attributes)=>{
2
+ return attributes.reduce((acc, attribute)=>{
3
+ const { name, ...rest } = attribute;
4
+ return {
5
+ ...acc,
6
+ [name]: rest
7
+ };
8
+ }, {});
9
+ };
10
+ const transformCTBToChat = (schema)=>{
11
+ if (schema.modelType === 'component') {
12
+ return {
13
+ category: schema.category,
14
+ kind: 'component',
15
+ action: 'create',
16
+ modelType: 'component',
17
+ description: schema.info.description,
18
+ name: schema.info.displayName,
19
+ uid: schema.uid,
20
+ attributes: transformAttributesFromCTBToChat(schema.attributes),
21
+ sources: schema.sources
22
+ };
23
+ }
24
+ return {
25
+ kind: schema.kind,
26
+ modelType: schema.modelType,
27
+ description: schema.info.description,
28
+ action: 'create',
29
+ name: schema.info.pluralName,
30
+ uid: schema.uid,
31
+ ...schema.plugin ? {
32
+ plugin: schema.plugin
33
+ } : {},
34
+ attributes: transformAttributesFromCTBToChat(schema.attributes),
35
+ sources: schema.sources,
36
+ options: {
37
+ draftAndPublish: schema.options?.draftAndPublish,
38
+ localized: false
39
+ }
40
+ };
41
+ };
42
+
43
+ export { transformCTBToChat };
44
+ //# sourceMappingURL=fromCTB.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fromCTB.mjs","sources":["../../../../../../../admin/src/components/AIChat/lib/transforms/schemas/fromCTB.ts"],"sourcesContent":["import type { ContentType, Component, AnyAttribute } from '../../../../../types';\r\nimport type { Schema } from '../../types/schema';\r\n\r\ntype SchemaWithSources = (ContentType | Component) & { sources?: unknown };\r\n\r\nconst transformAttributesFromCTBToChat = (attributes: AnyAttribute[]) => {\r\n return attributes.reduce(\r\n (acc, attribute) => {\r\n const { name, ...rest } = attribute;\r\n\r\n return {\r\n ...acc,\r\n [name]: rest,\r\n };\r\n },\r\n {} as Record<string, Omit<AnyAttribute, 'name'>>\r\n );\r\n};\r\n\r\nexport const transformCTBToChat = (schema: SchemaWithSources): Schema => {\r\n if (schema.modelType === 'component') {\r\n return {\r\n category: schema.category,\r\n kind: 'component',\r\n action: 'create',\r\n modelType: 'component',\r\n description: schema.info.description,\r\n name: schema.info.displayName,\r\n\r\n uid: schema.uid,\r\n attributes: transformAttributesFromCTBToChat(schema.attributes),\r\n sources: schema.sources,\r\n } satisfies Schema;\r\n }\r\n\r\n return {\r\n kind: schema.kind,\r\n modelType: schema.modelType,\r\n description: schema.info.description,\r\n action: 'create',\r\n name: schema.info.pluralName,\r\n uid: schema.uid,\r\n ...(schema.plugin ? { plugin: schema.plugin } : {}),\r\n attributes: transformAttributesFromCTBToChat(schema.attributes),\r\n sources: schema.sources,\r\n options: {\r\n draftAndPublish: schema.options?.draftAndPublish,\r\n localized: false,\r\n },\r\n } satisfies Schema;\r\n};\r\n"],"names":["transformAttributesFromCTBToChat","attributes","reduce","acc","attribute","name","rest","transformCTBToChat","schema","modelType","category","kind","action","description","info","displayName","uid","sources","pluralName","plugin","options","draftAndPublish","localized"],"mappings":"AAKA,MAAMA,mCAAmC,CAACC,UAAAA,GAAAA;AACxC,IAAA,OAAOA,UAAAA,CAAWC,MAAM,CACtB,CAACC,GAAAA,EAAKC,SAAAA,GAAAA;AACJ,QAAA,MAAM,EAAEC,IAAI,EAAE,GAAGC,MAAM,GAAGF,SAAAA;QAE1B,OAAO;AACL,YAAA,GAAGD,GAAG;AACN,YAAA,CAACE,OAAOC;AACV,SAAA;AACF,IAAA,CAAA,EACA,EAAC,CAAA;AAEL,CAAA;AAEO,MAAMC,qBAAqB,CAACC,MAAAA,GAAAA;IACjC,IAAIA,MAAAA,CAAOC,SAAS,KAAK,WAAA,EAAa;QACpC,OAAO;AACLC,YAAAA,QAAAA,EAAUF,OAAOE,QAAQ;YACzBC,IAAAA,EAAM,WAAA;YACNC,MAAAA,EAAQ,QAAA;YACRH,SAAAA,EAAW,WAAA;YACXI,WAAAA,EAAaL,MAAAA,CAAOM,IAAI,CAACD,WAAW;YACpCR,IAAAA,EAAMG,MAAAA,CAAOM,IAAI,CAACC,WAAW;AAE7BC,YAAAA,GAAAA,EAAKR,OAAOQ,GAAG;YACff,UAAAA,EAAYD,gCAAAA,CAAiCQ,OAAOP,UAAU,CAAA;AAC9DgB,YAAAA,OAAAA,EAAST,OAAOS;AAClB,SAAA;AACF,IAAA;IAEA,OAAO;AACLN,QAAAA,IAAAA,EAAMH,OAAOG,IAAI;AACjBF,QAAAA,SAAAA,EAAWD,OAAOC,SAAS;QAC3BI,WAAAA,EAAaL,MAAAA,CAAOM,IAAI,CAACD,WAAW;QACpCD,MAAAA,EAAQ,QAAA;QACRP,IAAAA,EAAMG,MAAAA,CAAOM,IAAI,CAACI,UAAU;AAC5BF,QAAAA,GAAAA,EAAKR,OAAOQ,GAAG;QACf,GAAIR,MAAAA,CAAOW,MAAM,GAAG;AAAEA,YAAAA,MAAAA,EAAQX,OAAOW;AAAO,SAAA,GAAI,EAAE;QAClDlB,UAAAA,EAAYD,gCAAAA,CAAiCQ,OAAOP,UAAU,CAAA;AAC9DgB,QAAAA,OAAAA,EAAST,OAAOS,OAAO;QACvBG,OAAAA,EAAS;YACPC,eAAAA,EAAiBb,MAAAA,CAAOY,OAAO,EAAEC,eAAAA;YACjCC,SAAAA,EAAW;AACb;AACF,KAAA;AACF;;;;"}
@@ -0,0 +1,211 @@
1
+ 'use strict';
2
+
3
+ var isEqual = require('lodash/isEqual');
4
+ var omit = require('lodash/omit');
5
+ var pluralize = require('pluralize');
6
+
7
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
8
+
9
+ var isEqual__default = /*#__PURE__*/_interopDefault(isEqual);
10
+ var omit__default = /*#__PURE__*/_interopDefault(omit);
11
+ var pluralize__default = /*#__PURE__*/_interopDefault(pluralize);
12
+
13
+ const isPluginContentTypeUid = (uid)=>uid.startsWith('plugin::');
14
+ const isContentTypeKind = (kind)=>{
15
+ return kind === 'collectionType' || kind === 'singleType';
16
+ };
17
+ /**
18
+ * Plugin / extension content-types use server-derived identity (globalId, collectionName, …).
19
+ * The AI chat uses a simplified shape that would otherwise overwrite those fields incorrectly.
20
+ */ const isPluginContentType = (schema, oldSchema)=>{
21
+ if (schema.plugin || isPluginContentTypeUid(schema.uid)) {
22
+ return true;
23
+ }
24
+ if (oldSchema && 'modelType' in oldSchema && oldSchema.modelType === 'contentType') {
25
+ const ct = oldSchema;
26
+ return Boolean(ct.plugin) || isPluginContentTypeUid(String(ct.uid));
27
+ }
28
+ return false;
29
+ };
30
+ const ACTION_TO_STATUS = {
31
+ create: 'NEW',
32
+ remove: 'REMOVED',
33
+ update: 'CHANGED'
34
+ };
35
+ /**
36
+ * Creates a new attribute with the specified status
37
+ */ const createAttributeWithStatus = (name, attributeData, status)=>({
38
+ ...attributeData,
39
+ name,
40
+ status
41
+ });
42
+ /**
43
+ * Determines the status of an attribute by comparing new and old versions
44
+ */ const determineAttributeStatus = (newAttr, oldAttr, oldSchema)=>{
45
+ if (!oldAttr) {
46
+ return 'NEW';
47
+ }
48
+ // If the schema was already new, don't mark attributes as changed, keep them as new.
49
+ if (oldSchema?.status === 'NEW') {
50
+ return 'NEW';
51
+ }
52
+ // Compare attributes without the status field to determine if they've changed
53
+ const newAttrWithoutStatus = omit__default.default(newAttr, [
54
+ 'status'
55
+ ]);
56
+ const oldAttrWithoutStatus = omit__default.default(oldAttr, [
57
+ 'status'
58
+ ]);
59
+ if (!isEqual__default.default(newAttrWithoutStatus, oldAttrWithoutStatus)) {
60
+ return 'CHANGED';
61
+ }
62
+ // If unchanged, keep the previous status
63
+ return oldAttr.status;
64
+ };
65
+ /**
66
+ * Determines the status of a schema by comparing action and checking if oldSchema exists
67
+ */ const transformStatusFromChatToCTB = (schema, oldSchema)=>{
68
+ // If schema has an action, use the mapped status
69
+ if (schema.action) {
70
+ return ACTION_TO_STATUS[schema.action];
71
+ }
72
+ // If oldSchema doesn't exist, it's a new schema
73
+ if (!oldSchema) {
74
+ return 'NEW';
75
+ }
76
+ // If no action is specified and oldSchema exists, keep the existing status
77
+ return oldSchema.status;
78
+ };
79
+ /**
80
+ * Transform attributes from Chat format to CTB format
81
+ * Also performs a diff to determine the status of each attribute
82
+ */ const transformAttributesFromChatToCTB = ({ action, attributes }, oldSchema)=>{
83
+ // If it's a new schema or no oldAttributes provided, all attributes are NEW
84
+ if (action === 'create' || !oldSchema) {
85
+ return Object.entries(attributes).map(([name, attribute])=>createAttributeWithStatus(name, attribute, 'NEW'));
86
+ }
87
+ // Convert old attributes array to a lookup map for faster access
88
+ const oldAttributesMap = oldSchema.attributes.reduce((acc, attr)=>({
89
+ ...acc,
90
+ [attr.name]: attr
91
+ }), {});
92
+ // Process current attributes (new and changed)
93
+ const processedAttributes = Object.entries(attributes).map(([name, attr])=>{
94
+ const oldAttr = oldAttributesMap[name];
95
+ const status = determineAttributeStatus({
96
+ ...attr,
97
+ name
98
+ }, oldAttr, oldSchema);
99
+ return createAttributeWithStatus(name, attr, status);
100
+ });
101
+ // No need to mark removed attributes if the old schema is new, just remove it from the list
102
+ // TODO: Else a validation error occurs on the backend side.
103
+ if (oldSchema?.status === 'NEW') {
104
+ return processedAttributes;
105
+ }
106
+ // Find removed attributes (exist in old but not in new)
107
+ const removedAttributes = Object.entries(oldAttributesMap).filter(([name])=>!attributes[name]).map(([name, oldAttr])=>createAttributeWithStatus(name, oldAttr, 'REMOVED'));
108
+ // Combine both sets of attributes
109
+ return [
110
+ ...processedAttributes,
111
+ ...removedAttributes
112
+ ];
113
+ };
114
+ /**
115
+ * Transform schema format
116
+ * AI chat -> CTB
117
+ *
118
+ * The AI chat returns a simplified format, and this layer transforms it to be compatible with the CTB reducer.
119
+ *
120
+ * We need to keep track of which changes have been made
121
+ */ const transformChatToCTB = (schema, oldSchema)=>{
122
+ const singularName = pluralize__default.default.singular(schema.name).toLowerCase().replace(/ /g, '-');
123
+ const pluralName = pluralize__default.default.plural(schema.name).toLowerCase().replace(/ /g, '-');
124
+ if (schema.modelType === 'component') {
125
+ return {
126
+ category: schema.category || 'default',
127
+ modelName: singularName,
128
+ attributes: transformAttributesFromChatToCTB(schema, oldSchema),
129
+ info: {
130
+ displayName: schema.name,
131
+ description: schema.description
132
+ },
133
+ modelType: schema.modelType,
134
+ uid: schema.uid,
135
+ collectionName: pluralName,
136
+ status: transformStatusFromChatToCTB(schema, oldSchema),
137
+ globalId: singularName
138
+ };
139
+ }
140
+ const previousContentType = oldSchema?.modelType === 'contentType' ? oldSchema : undefined;
141
+ const kind = isContentTypeKind(schema.kind) ? schema.kind : 'collectionType';
142
+ const contentTypeBase = {
143
+ uid: schema.uid,
144
+ modelType: 'contentType',
145
+ modelName: singularName,
146
+ kind,
147
+ info: {
148
+ displayName: schema.name.charAt(0).toUpperCase() + schema.name.slice(1),
149
+ // Always keep the old by default
150
+ singularName: previousContentType?.info.singularName ?? singularName,
151
+ // Always keep the old by default
152
+ pluralName: previousContentType?.info.pluralName ?? pluralName
153
+ },
154
+ collectionName: pluralName,
155
+ attributes: transformAttributesFromChatToCTB(schema, oldSchema),
156
+ options: {
157
+ draftAndPublish: schema.options?.draftAndPublish ?? true
158
+ },
159
+ pluginOptions: {
160
+ i18n: {
161
+ localized: schema.options?.localized ?? false
162
+ }
163
+ },
164
+ visible: true,
165
+ status: transformStatusFromChatToCTB(schema, oldSchema),
166
+ globalId: singularName,
167
+ restrictRelationsTo: null
168
+ };
169
+ if (isPluginContentType(schema, oldSchema) && oldSchema && oldSchema.modelType === 'contentType') {
170
+ const prev = oldSchema;
171
+ return {
172
+ ...contentTypeBase,
173
+ plugin: prev.plugin ?? schema.plugin,
174
+ globalId: prev.globalId,
175
+ modelName: prev.modelName,
176
+ collectionName: prev.collectionName,
177
+ info: {
178
+ ...contentTypeBase.info,
179
+ singularName: prev.info.singularName,
180
+ pluralName: prev.info.pluralName
181
+ },
182
+ options: {
183
+ ...prev.options,
184
+ ...contentTypeBase.options,
185
+ draftAndPublish: schema.options?.draftAndPublish ?? prev.options?.draftAndPublish ?? true
186
+ },
187
+ pluginOptions: {
188
+ ...prev.pluginOptions,
189
+ ...contentTypeBase.pluginOptions,
190
+ i18n: {
191
+ ...prev.pluginOptions?.i18n,
192
+ ...contentTypeBase.pluginOptions?.i18n,
193
+ localized: schema.options?.localized ?? prev.pluginOptions?.i18n?.localized ?? false
194
+ }
195
+ },
196
+ visible: prev.visible,
197
+ restrictRelationsTo: prev.restrictRelationsTo
198
+ };
199
+ }
200
+ if (isPluginContentType(schema, oldSchema) && schema.plugin) {
201
+ return {
202
+ ...contentTypeBase,
203
+ plugin: schema.plugin
204
+ };
205
+ }
206
+ return contentTypeBase;
207
+ };
208
+
209
+ exports.transformAttributesFromChatToCTB = transformAttributesFromChatToCTB;
210
+ exports.transformChatToCTB = transformChatToCTB;
211
+ //# sourceMappingURL=toCTB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toCTB.js","sources":["../../../../../../../admin/src/components/AIChat/lib/transforms/schemas/toCTB.ts"],"sourcesContent":["import isEqual from 'lodash/isEqual';\r\nimport omit from 'lodash/omit';\r\nimport pluralize from 'pluralize';\r\n\r\nimport type { ContentType, Component, AnyAttribute } from '../../../../../types';\r\nimport type { Schema, SchemaAttribute } from '../../types/schema';\r\nimport type { Struct, UID } from '@strapi/types';\r\n\r\nconst isPluginContentTypeUid = (uid: string) => uid.startsWith('plugin::');\r\n\r\nconst isContentTypeKind = (kind: Schema['kind']): kind is Struct.ContentTypeKind => {\r\n return kind === 'collectionType' || kind === 'singleType';\r\n};\r\n\r\n/**\r\n * Plugin / extension content-types use server-derived identity (globalId, collectionName, …).\r\n * The AI chat uses a simplified shape that would otherwise overwrite those fields incorrectly.\r\n */\r\nconst isPluginContentType = (schema: Schema, oldSchema?: ContentType | Component): boolean => {\r\n if (schema.plugin || isPluginContentTypeUid(schema.uid)) {\r\n return true;\r\n }\r\n if (oldSchema && 'modelType' in oldSchema && oldSchema.modelType === 'contentType') {\r\n const ct = oldSchema as ContentType;\r\n return Boolean(ct.plugin) || isPluginContentTypeUid(String(ct.uid));\r\n }\r\n return false;\r\n};\r\n\r\nconst ACTION_TO_STATUS: Record<Schema['action'], ContentType['status']> = {\r\n create: 'NEW',\r\n remove: 'REMOVED',\r\n update: 'CHANGED',\r\n};\r\n\r\n/**\r\n * Creates a new attribute with the specified status\r\n */\r\nconst createAttributeWithStatus = (\r\n name: string,\r\n attributeData: SchemaAttribute | AnyAttribute,\r\n status: AnyAttribute['status']\r\n): AnyAttribute =>\r\n ({\r\n ...attributeData,\r\n name,\r\n status,\r\n }) as AnyAttribute;\r\n\r\n/**\r\n * Determines the status of an attribute by comparing new and old versions\r\n */\r\nconst determineAttributeStatus = (\r\n newAttr: Record<string, unknown>,\r\n oldAttr?: AnyAttribute,\r\n oldSchema?: ContentType | Component\r\n): AnyAttribute['status'] => {\r\n if (!oldAttr) {\r\n return 'NEW';\r\n }\r\n\r\n // If the schema was already new, don't mark attributes as changed, keep them as new.\r\n if (oldSchema?.status === 'NEW') {\r\n return 'NEW';\r\n }\r\n\r\n // Compare attributes without the status field to determine if they've changed\r\n const newAttrWithoutStatus = omit(newAttr, ['status']);\r\n const oldAttrWithoutStatus = omit(oldAttr, ['status']);\r\n\r\n if (!isEqual(newAttrWithoutStatus, oldAttrWithoutStatus)) {\r\n return 'CHANGED';\r\n }\r\n\r\n // If unchanged, keep the previous status\r\n return oldAttr.status;\r\n};\r\n\r\n/**\r\n * Determines the status of a schema by comparing action and checking if oldSchema exists\r\n */\r\nconst transformStatusFromChatToCTB = (\r\n schema: Schema,\r\n oldSchema?: ContentType | Component\r\n): ContentType['status'] => {\r\n // If schema has an action, use the mapped status\r\n if (schema.action) {\r\n return ACTION_TO_STATUS[schema.action];\r\n }\r\n\r\n // If oldSchema doesn't exist, it's a new schema\r\n if (!oldSchema) {\r\n return 'NEW';\r\n }\r\n\r\n // If no action is specified and oldSchema exists, keep the existing status\r\n return oldSchema.status;\r\n};\r\n\r\n/**\r\n * Transform attributes from Chat format to CTB format\r\n * Also performs a diff to determine the status of each attribute\r\n */\r\nexport const transformAttributesFromChatToCTB = (\r\n { action, attributes }: Schema,\r\n oldSchema?: ContentType | Component\r\n): AnyAttribute[] => {\r\n // If it's a new schema or no oldAttributes provided, all attributes are NEW\r\n if (action === 'create' || !oldSchema) {\r\n return Object.entries(attributes).map(([name, attribute]) =>\r\n createAttributeWithStatus(name, attribute, 'NEW')\r\n );\r\n }\r\n\r\n // Convert old attributes array to a lookup map for faster access\r\n const oldAttributesMap = oldSchema.attributes.reduce(\r\n (acc, attr) => ({ ...acc, [attr.name]: attr }),\r\n {} as Record<string, AnyAttribute>\r\n );\r\n\r\n // Process current attributes (new and changed)\r\n const processedAttributes = Object.entries(attributes).map(([name, attr]) => {\r\n const oldAttr = oldAttributesMap[name];\r\n const status = determineAttributeStatus({ ...attr, name }, oldAttr, oldSchema);\r\n\r\n return createAttributeWithStatus(name, attr, status);\r\n });\r\n\r\n // No need to mark removed attributes if the old schema is new, just remove it from the list\r\n // TODO: Else a validation error occurs on the backend side.\r\n if (oldSchema?.status === 'NEW') {\r\n return processedAttributes;\r\n }\r\n\r\n // Find removed attributes (exist in old but not in new)\r\n const removedAttributes = Object.entries(oldAttributesMap)\r\n .filter(([name]) => !attributes[name])\r\n .map(([name, oldAttr]) => createAttributeWithStatus(name, oldAttr, 'REMOVED'));\r\n\r\n // Combine both sets of attributes\r\n return [...processedAttributes, ...removedAttributes];\r\n};\r\n\r\n/**\r\n * Transform schema format\r\n * AI chat -> CTB\r\n *\r\n * The AI chat returns a simplified format, and this layer transforms it to be compatible with the CTB reducer.\r\n *\r\n * We need to keep track of which changes have been made\r\n */\r\nexport const transformChatToCTB = (\r\n schema: Schema,\r\n oldSchema?: ContentType | Component\r\n): ContentType | Component => {\r\n const singularName = pluralize.singular(schema.name).toLowerCase().replace(/ /g, '-');\r\n const pluralName = pluralize.plural(schema.name).toLowerCase().replace(/ /g, '-');\r\n\r\n if (schema.modelType === 'component') {\r\n return {\r\n category: schema.category || 'default',\r\n modelName: singularName,\r\n attributes: transformAttributesFromChatToCTB(schema, oldSchema),\r\n info: {\r\n displayName: schema.name,\r\n description: schema.description,\r\n // TODO\r\n // icon: schema.icon,\r\n },\r\n modelType: schema.modelType,\r\n uid: schema.uid as UID.Component,\r\n collectionName: pluralName,\r\n status: transformStatusFromChatToCTB(schema, oldSchema),\r\n globalId: singularName,\r\n } satisfies Component;\r\n }\r\n\r\n const previousContentType = oldSchema?.modelType === 'contentType' ? oldSchema : undefined;\r\n const kind = isContentTypeKind(schema.kind) ? schema.kind : 'collectionType';\r\n\r\n const contentTypeBase = {\r\n uid: schema.uid as UID.ContentType,\r\n modelType: 'contentType',\r\n modelName: singularName,\r\n kind,\r\n info: {\r\n displayName: schema.name.charAt(0).toUpperCase() + schema.name.slice(1),\r\n // Always keep the old by default\r\n singularName: previousContentType?.info.singularName ?? singularName,\r\n // Always keep the old by default\r\n pluralName: previousContentType?.info.pluralName ?? pluralName,\r\n },\r\n collectionName: pluralName,\r\n attributes: transformAttributesFromChatToCTB(schema, oldSchema),\r\n options: {\r\n draftAndPublish: schema.options?.draftAndPublish ?? true,\r\n },\r\n pluginOptions: {\r\n i18n: {\r\n localized: schema.options?.localized ?? false,\r\n },\r\n },\r\n visible: true,\r\n status: transformStatusFromChatToCTB(schema, oldSchema),\r\n globalId: singularName,\r\n restrictRelationsTo: null, // TODO: not sure what this is about\r\n } satisfies ContentType;\r\n\r\n if (\r\n isPluginContentType(schema, oldSchema) &&\r\n oldSchema &&\r\n oldSchema.modelType === 'contentType'\r\n ) {\r\n const prev = oldSchema as ContentType;\r\n return {\r\n ...contentTypeBase,\r\n plugin: prev.plugin ?? schema.plugin,\r\n globalId: prev.globalId,\r\n modelName: prev.modelName,\r\n collectionName: prev.collectionName,\r\n info: {\r\n ...contentTypeBase.info,\r\n singularName: prev.info.singularName,\r\n pluralName: prev.info.pluralName,\r\n },\r\n options: {\r\n ...prev.options,\r\n ...contentTypeBase.options,\r\n draftAndPublish: schema.options?.draftAndPublish ?? prev.options?.draftAndPublish ?? true,\r\n },\r\n pluginOptions: {\r\n ...prev.pluginOptions,\r\n ...contentTypeBase.pluginOptions,\r\n i18n: {\r\n ...(prev.pluginOptions?.i18n as Record<string, unknown> | undefined),\r\n ...(contentTypeBase.pluginOptions?.i18n as Record<string, unknown> | undefined),\r\n localized:\r\n schema.options?.localized ??\r\n (prev.pluginOptions?.i18n as { localized?: boolean } | undefined)?.localized ??\r\n false,\r\n },\r\n },\r\n visible: prev.visible,\r\n restrictRelationsTo: prev.restrictRelationsTo,\r\n } satisfies ContentType;\r\n }\r\n\r\n if (isPluginContentType(schema, oldSchema) && schema.plugin) {\r\n return {\r\n ...contentTypeBase,\r\n plugin: schema.plugin,\r\n } satisfies ContentType;\r\n }\r\n\r\n return contentTypeBase;\r\n};\r\n"],"names":["isPluginContentTypeUid","uid","startsWith","isContentTypeKind","kind","isPluginContentType","schema","oldSchema","plugin","modelType","ct","Boolean","String","ACTION_TO_STATUS","create","remove","update","createAttributeWithStatus","name","attributeData","status","determineAttributeStatus","newAttr","oldAttr","newAttrWithoutStatus","omit","oldAttrWithoutStatus","isEqual","transformStatusFromChatToCTB","action","transformAttributesFromChatToCTB","attributes","Object","entries","map","attribute","oldAttributesMap","reduce","acc","attr","processedAttributes","removedAttributes","filter","transformChatToCTB","singularName","pluralize","singular","toLowerCase","replace","pluralName","plural","category","modelName","info","displayName","description","collectionName","globalId","previousContentType","undefined","contentTypeBase","charAt","toUpperCase","slice","options","draftAndPublish","pluginOptions","i18n","localized","visible","restrictRelationsTo","prev"],"mappings":";;;;;;;;;;;;AAQA,MAAMA,sBAAAA,GAAyB,CAACC,GAAAA,GAAgBA,GAAAA,CAAIC,UAAU,CAAC,UAAA,CAAA;AAE/D,MAAMC,oBAAoB,CAACC,IAAAA,GAAAA;IACzB,OAAOA,IAAAA,KAAS,oBAAoBA,IAAAA,KAAS,YAAA;AAC/C,CAAA;AAEA;;;IAIA,MAAMC,mBAAAA,GAAsB,CAACC,MAAAA,EAAgBC,SAAAA,GAAAA;AAC3C,IAAA,IAAID,OAAOE,MAAM,IAAIR,sBAAAA,CAAuBM,MAAAA,CAAOL,GAAG,CAAA,EAAG;QACvD,OAAO,IAAA;AACT,IAAA;AACA,IAAA,IAAIM,aAAa,WAAA,IAAeA,SAAAA,IAAaA,SAAAA,CAAUE,SAAS,KAAK,aAAA,EAAe;AAClF,QAAA,MAAMC,EAAAA,GAAKH,SAAAA;AACX,QAAA,OAAOI,QAAQD,EAAAA,CAAGF,MAAM,KAAKR,sBAAAA,CAAuBY,MAAAA,CAAOF,GAAGT,GAAG,CAAA,CAAA;AACnE,IAAA;IACA,OAAO,KAAA;AACT,CAAA;AAEA,MAAMY,gBAAAA,GAAoE;IACxEC,MAAAA,EAAQ,KAAA;IACRC,MAAAA,EAAQ,SAAA;IACRC,MAAAA,EAAQ;AACV,CAAA;AAEA;;AAEC,IACD,MAAMC,yBAAAA,GAA4B,CAChCC,IAAAA,EACAC,aAAAA,EACAC,UAEC;AACC,QAAA,GAAGD,aAAa;AAChBD,QAAAA,IAAAA;AACAE,QAAAA;KACF,CAAA;AAEF;;AAEC,IACD,MAAMC,wBAAAA,GAA2B,CAC/BC,OAAAA,EACAC,OAAAA,EACAhB,SAAAA,GAAAA;AAEA,IAAA,IAAI,CAACgB,OAAAA,EAAS;QACZ,OAAO,KAAA;AACT,IAAA;;IAGA,IAAIhB,SAAAA,EAAWa,WAAW,KAAA,EAAO;QAC/B,OAAO,KAAA;AACT,IAAA;;IAGA,MAAMI,oBAAAA,GAAuBC,sBAAKH,OAAAA,EAAS;AAAC,QAAA;AAAS,KAAA,CAAA;IACrD,MAAMI,oBAAAA,GAAuBD,sBAAKF,OAAAA,EAAS;AAAC,QAAA;AAAS,KAAA,CAAA;IAErD,IAAI,CAACI,wBAAAA,CAAQH,oBAAAA,EAAsBE,oBAAAA,CAAAA,EAAuB;QACxD,OAAO,SAAA;AACT,IAAA;;AAGA,IAAA,OAAOH,QAAQH,MAAM;AACvB,CAAA;AAEA;;IAGA,MAAMQ,4BAAAA,GAA+B,CACnCtB,MAAAA,EACAC,SAAAA,GAAAA;;IAGA,IAAID,MAAAA,CAAOuB,MAAM,EAAE;AACjB,QAAA,OAAOhB,gBAAgB,CAACP,MAAAA,CAAOuB,MAAM,CAAC;AACxC,IAAA;;AAGA,IAAA,IAAI,CAACtB,SAAAA,EAAW;QACd,OAAO,KAAA;AACT,IAAA;;AAGA,IAAA,OAAOA,UAAUa,MAAM;AACzB,CAAA;AAEA;;;UAIaU,gCAAAA,GAAmC,CAC9C,EAAED,MAAM,EAAEE,UAAU,EAAU,EAC9BxB,SAAAA,GAAAA;;IAGA,IAAIsB,MAAAA,KAAW,QAAA,IAAY,CAACtB,SAAAA,EAAW;AACrC,QAAA,OAAOyB,MAAAA,CAAOC,OAAO,CAACF,UAAAA,CAAAA,CAAYG,GAAG,CAAC,CAAC,CAAChB,IAAAA,EAAMiB,SAAAA,CAAU,GACtDlB,yBAAAA,CAA0BC,MAAMiB,SAAAA,EAAW,KAAA,CAAA,CAAA;AAE/C,IAAA;;IAGA,MAAMC,gBAAAA,GAAmB7B,UAAUwB,UAAU,CAACM,MAAM,CAClD,CAACC,GAAAA,EAAKC,IAAAA,IAAU;AAAE,YAAA,GAAGD,GAAG;YAAE,CAACC,IAAAA,CAAKrB,IAAI,GAAGqB;AAAK,SAAA,GAC5C,EAAC,CAAA;;IAIH,MAAMC,mBAAAA,GAAsBR,MAAAA,CAAOC,OAAO,CAACF,UAAAA,CAAAA,CAAYG,GAAG,CAAC,CAAC,CAAChB,IAAAA,EAAMqB,IAAAA,CAAK,GAAA;QACtE,MAAMhB,OAAAA,GAAUa,gBAAgB,CAAClB,IAAAA,CAAK;AACtC,QAAA,MAAME,SAASC,wBAAAA,CAAyB;AAAE,YAAA,GAAGkB,IAAI;AAAErB,YAAAA;AAAK,SAAA,EAAGK,OAAAA,EAAShB,SAAAA,CAAAA;QAEpE,OAAOU,yBAAAA,CAA0BC,MAAMqB,IAAAA,EAAMnB,MAAAA,CAAAA;AAC/C,IAAA,CAAA,CAAA;;;IAIA,IAAIb,SAAAA,EAAWa,WAAW,KAAA,EAAO;QAC/B,OAAOoB,mBAAAA;AACT,IAAA;;IAGA,MAAMC,iBAAAA,GAAoBT,MAAAA,CAAOC,OAAO,CAACG,gBAAAA,CAAAA,CACtCM,MAAM,CAAC,CAAC,CAACxB,IAAAA,CAAK,GAAK,CAACa,UAAU,CAACb,IAAAA,CAAK,CAAA,CACpCgB,GAAG,CAAC,CAAC,CAAChB,IAAAA,EAAMK,OAAAA,CAAQ,GAAKN,yBAAAA,CAA0BC,IAAAA,EAAMK,OAAAA,EAAS,SAAA,CAAA,CAAA;;IAGrE,OAAO;AAAIiB,QAAAA,GAAAA,mBAAAA;AAAwBC,QAAAA,GAAAA;AAAkB,KAAA;AACvD;AAEA;;;;;;;AAOC,IACM,MAAME,kBAAAA,GAAqB,CAChCrC,MAAAA,EACAC,SAAAA,GAAAA;IAEA,MAAMqC,YAAAA,GAAeC,0BAAAA,CAAUC,QAAQ,CAACxC,MAAAA,CAAOY,IAAI,CAAA,CAAE6B,WAAW,EAAA,CAAGC,OAAO,CAAC,IAAA,EAAM,GAAA,CAAA;IACjF,MAAMC,UAAAA,GAAaJ,0BAAAA,CAAUK,MAAM,CAAC5C,MAAAA,CAAOY,IAAI,CAAA,CAAE6B,WAAW,EAAA,CAAGC,OAAO,CAAC,IAAA,EAAM,GAAA,CAAA;IAE7E,IAAI1C,MAAAA,CAAOG,SAAS,KAAK,WAAA,EAAa;QACpC,OAAO;YACL0C,QAAAA,EAAU7C,MAAAA,CAAO6C,QAAQ,IAAI,SAAA;YAC7BC,SAAAA,EAAWR,YAAAA;AACXb,YAAAA,UAAAA,EAAYD,iCAAiCxB,MAAAA,EAAQC,SAAAA,CAAAA;YACrD8C,IAAAA,EAAM;AACJC,gBAAAA,WAAAA,EAAahD,OAAOY,IAAI;AACxBqC,gBAAAA,WAAAA,EAAajD,OAAOiD;AAGtB,aAAA;AACA9C,YAAAA,SAAAA,EAAWH,OAAOG,SAAS;AAC3BR,YAAAA,GAAAA,EAAKK,OAAOL,GAAG;YACfuD,cAAAA,EAAgBP,UAAAA;AAChB7B,YAAAA,MAAAA,EAAQQ,6BAA6BtB,MAAAA,EAAQC,SAAAA,CAAAA;YAC7CkD,QAAAA,EAAUb;AACZ,SAAA;AACF,IAAA;AAEA,IAAA,MAAMc,mBAAAA,GAAsBnD,SAAAA,EAAWE,SAAAA,KAAc,aAAA,GAAgBF,SAAAA,GAAYoD,SAAAA;AACjF,IAAA,MAAMvD,OAAOD,iBAAAA,CAAkBG,MAAAA,CAAOF,IAAI,CAAA,GAAIE,MAAAA,CAAOF,IAAI,GAAG,gBAAA;AAE5D,IAAA,MAAMwD,eAAAA,GAAkB;AACtB3D,QAAAA,GAAAA,EAAKK,OAAOL,GAAG;QACfQ,SAAAA,EAAW,aAAA;QACX2C,SAAAA,EAAWR,YAAAA;AACXxC,QAAAA,IAAAA;QACAiD,IAAAA,EAAM;AACJC,YAAAA,WAAAA,EAAahD,MAAAA,CAAOY,IAAI,CAAC2C,MAAM,CAAC,CAAA,CAAA,CAAGC,WAAW,EAAA,GAAKxD,MAAAA,CAAOY,IAAI,CAAC6C,KAAK,CAAC,CAAA,CAAA;;YAErEnB,YAAAA,EAAcc,mBAAAA,EAAqBL,KAAKT,YAAAA,IAAgBA,YAAAA;;YAExDK,UAAAA,EAAYS,mBAAAA,EAAqBL,KAAKJ,UAAAA,IAAcA;AACtD,SAAA;QACAO,cAAAA,EAAgBP,UAAAA;AAChBlB,QAAAA,UAAAA,EAAYD,iCAAiCxB,MAAAA,EAAQC,SAAAA,CAAAA;QACrDyD,OAAAA,EAAS;YACPC,eAAAA,EAAiB3D,MAAAA,CAAO0D,OAAO,EAAEC,eAAAA,IAAmB;AACtD,SAAA;QACAC,aAAAA,EAAe;YACbC,IAAAA,EAAM;gBACJC,SAAAA,EAAW9D,MAAAA,CAAO0D,OAAO,EAAEI,SAAAA,IAAa;AAC1C;AACF,SAAA;QACAC,OAAAA,EAAS,IAAA;AACTjD,QAAAA,MAAAA,EAAQQ,6BAA6BtB,MAAAA,EAAQC,SAAAA,CAAAA;QAC7CkD,QAAAA,EAAUb,YAAAA;QACV0B,mBAAAA,EAAqB;AACvB,KAAA;AAEA,IAAA,IACEjE,oBAAoBC,MAAAA,EAAQC,SAAAA,CAAAA,IAC5BA,aACAA,SAAAA,CAAUE,SAAS,KAAK,aAAA,EACxB;AACA,QAAA,MAAM8D,IAAAA,GAAOhE,SAAAA;QACb,OAAO;AACL,YAAA,GAAGqD,eAAe;AAClBpD,YAAAA,MAAAA,EAAQ+D,IAAAA,CAAK/D,MAAM,IAAIF,MAAAA,CAAOE,MAAM;AACpCiD,YAAAA,QAAAA,EAAUc,KAAKd,QAAQ;AACvBL,YAAAA,SAAAA,EAAWmB,KAAKnB,SAAS;AACzBI,YAAAA,cAAAA,EAAgBe,KAAKf,cAAc;YACnCH,IAAAA,EAAM;AACJ,gBAAA,GAAGO,gBAAgBP,IAAI;gBACvBT,YAAAA,EAAc2B,IAAAA,CAAKlB,IAAI,CAACT,YAAY;gBACpCK,UAAAA,EAAYsB,IAAAA,CAAKlB,IAAI,CAACJ;AACxB,aAAA;YACAe,OAAAA,EAAS;AACP,gBAAA,GAAGO,KAAKP,OAAO;AACf,gBAAA,GAAGJ,gBAAgBI,OAAO;AAC1BC,gBAAAA,eAAAA,EAAiB3D,OAAO0D,OAAO,EAAEC,mBAAmBM,IAAAA,CAAKP,OAAO,EAAEC,eAAAA,IAAmB;AACvF,aAAA;YACAC,aAAAA,EAAe;AACb,gBAAA,GAAGK,KAAKL,aAAa;AACrB,gBAAA,GAAGN,gBAAgBM,aAAa;gBAChCC,IAAAA,EAAM;oBACJ,GAAII,IAAAA,CAAKL,aAAa,EAAEC,IAAI;oBAC5B,GAAIP,eAAAA,CAAgBM,aAAa,EAAEC,IAAI;oBACvCC,SAAAA,EACE9D,MAAAA,CAAO0D,OAAO,EAAEI,SAAAA,IACfG,KAAKL,aAAa,EAAEC,MAA8CC,SAAAA,IACnE;AACJ;AACF,aAAA;AACAC,YAAAA,OAAAA,EAASE,KAAKF,OAAO;AACrBC,YAAAA,mBAAAA,EAAqBC,KAAKD;AAC5B,SAAA;AACF,IAAA;AAEA,IAAA,IAAIjE,mBAAAA,CAAoBC,MAAAA,EAAQC,SAAAA,CAAAA,IAAcD,MAAAA,CAAOE,MAAM,EAAE;QAC3D,OAAO;AACL,YAAA,GAAGoD,eAAe;AAClBpD,YAAAA,MAAAA,EAAQF,OAAOE;AACjB,SAAA;AACF,IAAA;IAEA,OAAOoD,eAAAA;AACT;;;;;"}