@strapi/admin 4.6.0 → 4.7.0-beta.0

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 (211) hide show
  1. package/.browserslistrc +2 -1
  2. package/admin/src/assets/images/onboarding-preview.png +0 -0
  3. package/admin/src/components/AuthenticatedApp/utils/api.js +5 -4
  4. package/admin/src/components/LeftMenu/index.js +9 -3
  5. package/admin/src/content-manager/components/CollectionTypeFormWrapper/index.js +18 -16
  6. package/admin/src/content-manager/components/DynamicTable/CellContent/RelationMultiple/index.js +5 -5
  7. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/findLeafByPathAndReplace.js +1 -3
  8. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/schema.js +6 -5
  9. package/admin/src/content-manager/components/InputUID/index.js +4 -4
  10. package/admin/src/content-manager/components/Inputs/index.js +0 -2
  11. package/admin/src/content-manager/components/SingleTypeFormWrapper/index.js +35 -14
  12. package/admin/src/content-manager/hooks/useFetchContentTypeLayout/index.js +4 -3
  13. package/admin/src/content-manager/hooks/useLazyComponents/index.js +9 -13
  14. package/admin/src/content-manager/hooks/useRelation/useRelation.js +4 -4
  15. package/admin/src/content-manager/pages/App/useModels.js +8 -3
  16. package/admin/src/content-manager/pages/App/utils/getContentTypeLinks.js +3 -2
  17. package/admin/src/content-manager/pages/ComponentSetttingsView/index.js +4 -4
  18. package/admin/src/content-manager/pages/EditSettingsView/utils/api.js +4 -2
  19. package/admin/src/content-manager/pages/ListSettingsView/utils/api.js +4 -2
  20. package/admin/src/content-manager/pages/ListView/index.js +9 -9
  21. package/admin/src/core/utils/index.js +0 -1
  22. package/admin/src/hooks/useFetchEnabledPlugins/utils/api.js +3 -2
  23. package/admin/src/hooks/useInjectReducer/index.js +1 -0
  24. package/admin/src/hooks/useInjectReducer/useInjectReducer.js +19 -0
  25. package/admin/src/hooks/useRegenerate/index.js +4 -4
  26. package/admin/src/hooks/useRolesList/index.js +5 -3
  27. package/admin/src/hooks/useSettingsMenu/utils/defaultGlobalLinks.js +7 -0
  28. package/admin/src/index.js +4 -3
  29. package/admin/src/pages/Admin/Onboarding/constants.js +46 -0
  30. package/admin/src/pages/Admin/Onboarding/index.js +161 -89
  31. package/admin/src/pages/Admin/index.js +5 -2
  32. package/admin/src/pages/ProfilePage/utils/api.js +5 -3
  33. package/admin/src/pages/SettingsPage/{pages/Users/ListPage → components}/Filters/index.js +0 -0
  34. package/admin/src/pages/SettingsPage/{pages/ApiTokens/EditView/components → components/Tokens}/FormHead/index.js +36 -19
  35. package/admin/src/pages/SettingsPage/components/Tokens/FormiTokenContainer/LifeSpanInput.js +96 -0
  36. package/admin/src/pages/SettingsPage/components/Tokens/LifeSpanInput/index.js +98 -0
  37. package/admin/src/pages/SettingsPage/components/Tokens/Regenerate/index.js +73 -0
  38. package/admin/src/pages/SettingsPage/{pages/ApiTokens/ListView/DynamicTable → components/Tokens/Table}/DefaultButton/index.js +1 -1
  39. package/admin/src/pages/SettingsPage/{pages/ApiTokens/ListView/DynamicTable → components/Tokens/Table}/DeleteButton/index.js +1 -1
  40. package/admin/src/pages/SettingsPage/{pages/ApiTokens/ListView/DynamicTable → components/Tokens/Table}/ReadButton/index.js +0 -0
  41. package/admin/src/pages/SettingsPage/{pages/ApiTokens/ListView/DynamicTable → components/Tokens/Table}/UpdateButton/index.js +0 -0
  42. package/admin/src/pages/SettingsPage/components/Tokens/Table/index.js +135 -0
  43. package/admin/src/pages/SettingsPage/{pages/ApiTokens/EditView/components/ContentBox → components/Tokens/TokenBox}/index.js +17 -17
  44. package/admin/src/pages/SettingsPage/components/Tokens/TokenDescription/index.js +51 -0
  45. package/admin/src/pages/SettingsPage/components/Tokens/TokenName/index.js +46 -0
  46. package/admin/src/pages/SettingsPage/components/Tokens/TokenTypeSelect/index.js +69 -0
  47. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/CollapsableContentType/index.js +5 -3
  48. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/FormApiTokenContainer/index.js +52 -142
  49. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/Regenerate/index.js +5 -1
  50. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +43 -19
  51. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/index.js +9 -16
  52. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/api.js +5 -3
  53. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/components/FormTransferTokenContainer/index.js +105 -0
  54. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/components/LoadingView/index.js +50 -0
  55. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/index.js +201 -0
  56. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/utils/getDateOfExpiration.js +16 -0
  57. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/utils/index.js +4 -0
  58. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/utils/schema.js +10 -0
  59. package/admin/src/pages/SettingsPage/pages/TransferTokens/ListView/index.js +182 -0
  60. package/admin/src/pages/SettingsPage/pages/TransferTokens/ListView/utils/tableHeaders.js +48 -0
  61. package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedCreateView/index.js +14 -0
  62. package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedEditView/index.js +14 -0
  63. package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedListView/index.js +12 -0
  64. package/admin/src/pages/SettingsPage/pages/Users/EditPage/utils/api.js +6 -3
  65. package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js +9 -3
  66. package/admin/src/pages/SettingsPage/pages/Users/ListPage/index.js +1 -1
  67. package/admin/src/pages/SettingsPage/pages/Users/ListPage/utils/api.js +6 -3
  68. package/admin/src/pages/SettingsPage/pages/Users/components/SelectRoles/index.js +3 -2
  69. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/index.js +3 -2
  70. package/admin/src/pages/SettingsPage/utils/defaultRoutes.js +33 -0
  71. package/admin/src/permissions/defaultPermissions.js +8 -0
  72. package/admin/src/translations/en.json +25 -6
  73. package/admin/src/translations/eu.json +796 -0
  74. package/admin/src/translations/languageNativeNames.js +1 -0
  75. package/admin/src/translations/ru.json +9 -9
  76. package/build/1412.936ed920.chunk.js +159 -0
  77. package/build/1683.c8aa7b7c.chunk.js +268 -0
  78. package/build/19eb2dfcf2603eb55733.png +0 -0
  79. package/build/2607.2e48dbf8.chunk.js +66 -0
  80. package/build/2743.6d1632f9.chunk.js +45 -0
  81. package/build/3075.dc3894fe.chunk.js +108 -0
  82. package/build/3632.0317b618.chunk.js +138 -0
  83. package/build/4649.15cc0afe.chunk.js +30 -0
  84. package/build/{5910.a5374848.chunk.js → 4855.bd092921.chunk.js} +65 -65
  85. package/build/7259.aa68d808.chunk.js +1 -0
  86. package/build/7407.883fb1f5.chunk.js +1 -0
  87. package/build/9707.7290fd92.chunk.js +96 -0
  88. package/build/Admin-authenticatedApp.f29f6021.chunk.js +79 -0
  89. package/build/{Admin_homePage.79ab880c.chunk.js → Admin_homePage.b1730882.chunk.js} +1 -1
  90. package/build/{Admin_marketplace.eabf21b2.chunk.js → Admin_marketplace.ea0316c2.chunk.js} +2 -2
  91. package/build/Admin_pluginsPage.5c24f963.chunk.js +6 -0
  92. package/build/Admin_profilePage.59af1978.chunk.js +15 -0
  93. package/build/Admin_settingsPage.178dc6e3.chunk.js +178 -0
  94. package/build/admin-app.77a50e1f.chunk.js +112 -0
  95. package/build/admin-edit-roles-page.446b69dc.chunk.js +1 -0
  96. package/build/admin-edit-users.2ed69bfd.chunk.js +10 -0
  97. package/build/admin-users.fc003b10.chunk.js +11 -0
  98. package/build/{api-tokens-create-page.0e686c30.chunk.js → api-tokens-create-page.0db3aec1.chunk.js} +1 -1
  99. package/build/{api-tokens-edit-page.d6c7487b.chunk.js → api-tokens-edit-page.671e0e26.chunk.js} +1 -1
  100. package/build/api-tokens-list-page.7387102c.chunk.js +16 -0
  101. package/build/audit-logs-settings-page.c3dce30d.chunk.js +1 -0
  102. package/build/content-manager.42b24d46.chunk.js +1139 -0
  103. package/build/{content-type-builder-list-view.4243b2b1.chunk.js → content-type-builder-list-view.79e84b36.chunk.js} +1 -6
  104. package/build/{content-type-builder.365b6bf4.chunk.js → content-type-builder.855db321.chunk.js} +16 -15
  105. package/build/{email-settings-page.379552b1.chunk.js → email-settings-page.d1fcc7a3.chunk.js} +4 -9
  106. package/build/en-json.b0748970.chunk.js +1 -0
  107. package/build/eu-json.fceecd8b.chunk.js +1 -0
  108. package/build/i18n-settings-page.b8d8753e.chunk.js +60 -0
  109. package/build/index.html +1 -1
  110. package/build/main.1022ed01.js +4393 -0
  111. package/build/ru-json.aa5cd123.chunk.js +1 -0
  112. package/build/runtime~main.84941a97.js +2 -0
  113. package/build/sso-settings-page.b85ad080.chunk.js +41 -0
  114. package/build/transfer-tokens-create-page.16e23791.chunk.js +1 -0
  115. package/build/transfer-tokens-edit-page.3886c973.chunk.js +1 -0
  116. package/build/transfer-tokens-list-page.e8010a89.chunk.js +16 -0
  117. package/build/upload-settings.ef64bbf9.chunk.js +84 -0
  118. package/build/upload.c5730dfa.chunk.js +33 -0
  119. package/build/users-advanced-settings-page.fce9908e.chunk.js +8 -0
  120. package/build/users-email-settings-page.343d0ad2.chunk.js +23 -0
  121. package/build/users-providers-settings-page.e5a9a3f1.chunk.js +99 -0
  122. package/build/users-roles-settings-page.66312f31.chunk.js +30 -0
  123. package/build/webhook-edit-page.73e51e64.chunk.js +75 -0
  124. package/build/{webhook-list-page.f75ba3f2.chunk.js → webhook-list-page.1134f130.chunk.js} +1 -1
  125. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/ComboboxFilter/index.js +41 -0
  126. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/Modal/ActionBody.js +1 -3
  127. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/TableRows/index.js +1 -1
  128. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/hooks/useAuditLogsData.js +47 -0
  129. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/index.js +30 -31
  130. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/utils/getActionTypesDefaultMessages.js +7 -9
  131. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/utils/getDisplayedFilters.js +88 -0
  132. package/ee/admin/pages/SettingsPage/pages/Roles/ListPage/index.js +4 -2
  133. package/ee/server/migrations/audit-logs-table.js +45 -0
  134. package/ee/server/register.js +2 -0
  135. package/ee/server/services/audit-logs.js +11 -1
  136. package/package.json +30 -30
  137. package/server/bootstrap.js +2 -0
  138. package/server/config/admin-actions.js +48 -0
  139. package/server/content-types/index.js +2 -0
  140. package/server/content-types/transfer-token-permission.js +36 -0
  141. package/server/content-types/transfer-token.js +66 -0
  142. package/server/controllers/admin.js +16 -0
  143. package/server/controllers/api-token.js +4 -5
  144. package/server/controllers/index.js +1 -0
  145. package/server/controllers/transfer/index.js +13 -0
  146. package/server/controllers/transfer/runner.js +24 -0
  147. package/server/controllers/transfer/token.js +131 -0
  148. package/server/register.js +2 -9
  149. package/server/routes/index.js +2 -0
  150. package/server/routes/transfer.js +95 -0
  151. package/server/services/api-token.js +2 -3
  152. package/server/services/constants.js +6 -0
  153. package/server/services/index.js +1 -0
  154. package/server/services/transfer/index.js +6 -0
  155. package/server/services/transfer/permission.js +22 -0
  156. package/server/services/transfer/token.js +409 -0
  157. package/server/strategies/api-token.js +4 -2
  158. package/server/strategies/data-transfer.js +107 -0
  159. package/server/strategies/index.js +1 -0
  160. package/server/utils/index.d.ts +2 -0
  161. package/server/validation/api-tokens.js +1 -6
  162. package/server/validation/transfer/index.js +5 -0
  163. package/server/validation/transfer/token.js +34 -0
  164. package/admin/src/content-manager/components/InputJSON/FieldWrapper.js +0 -40
  165. package/admin/src/content-manager/components/InputJSON/Label.js +0 -35
  166. package/admin/src/content-manager/components/InputJSON/components.js +0 -36
  167. package/admin/src/content-manager/components/InputJSON/index.js +0 -223
  168. package/admin/src/content-manager/components/InputJSON/jsonlint.js +0 -680
  169. package/admin/src/core/utils/axiosInstance.js +0 -40
  170. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/FormBody/index.js +0 -78
  171. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/DynamicTable/index.js +0 -112
  172. package/build/2607.ce06608e.chunk.js +0 -66
  173. package/build/2743.dea372fb.chunk.js +0 -42
  174. package/build/3075.03ebe93d.chunk.js +0 -115
  175. package/build/3632.963ac97d.chunk.js +0 -138
  176. package/build/4318.8cb388a5.chunk.js +0 -30
  177. package/build/4656.a0d43cca.chunk.js +0 -159
  178. package/build/8633.4af74a50.chunk.js +0 -1
  179. package/build/9641.a311b612.chunk.js +0 -276
  180. package/build/9707.62831b4d.chunk.js +0 -101
  181. package/build/Admin-authenticatedApp.50dc27f9.chunk.js +0 -75
  182. package/build/Admin_pluginsPage.953e796b.chunk.js +0 -6
  183. package/build/Admin_profilePage.5c2efda5.chunk.js +0 -15
  184. package/build/Admin_settingsPage.19cfb9ca.chunk.js +0 -178
  185. package/build/admin-app.34295b50.chunk.js +0 -112
  186. package/build/admin-edit-roles-page.d50d9654.chunk.js +0 -1
  187. package/build/admin-edit-users.912b856d.chunk.js +0 -10
  188. package/build/admin-users.e36e7111.chunk.js +0 -11
  189. package/build/api-tokens-list-page.1cd86136.chunk.js +0 -16
  190. package/build/audit-logs-settings-page.308a6250.chunk.js +0 -1
  191. package/build/codemirror-addon-closebrackets.71aa4bbd.chunk.js +0 -2
  192. package/build/codemirror-addon-lint-js.405f70fb.chunk.js +0 -1
  193. package/build/codemirror-addon-lint.8487ad3d.chunk.js +0 -1
  194. package/build/codemirror-addon-mark-selection.1928c849.chunk.js +0 -1
  195. package/build/codemirror-css.359a2a4b.chunk.js +0 -345
  196. package/build/codemirror-javacript.af237b68.chunk.js +0 -1
  197. package/build/codemirror-theme.2fe63a16.chunk.js +0 -33
  198. package/build/content-manager.851f40ce.chunk.js +0 -1170
  199. package/build/en-json.38d182e5.chunk.js +0 -1
  200. package/build/i18n-settings-page.3ab28b1a.chunk.js +0 -65
  201. package/build/main.9f31732e.js +0 -4454
  202. package/build/ru-json.3b411a39.chunk.js +0 -1
  203. package/build/runtime~main.2b8e2318.js +0 -2
  204. package/build/sso-settings-page.b64a44e8.chunk.js +0 -41
  205. package/build/upload-settings.6c26ff37.chunk.js +0 -89
  206. package/build/upload.2c69d238.chunk.js +0 -38
  207. package/build/users-advanced-settings-page.c4270682.chunk.js +0 -13
  208. package/build/users-email-settings-page.60422a2f.chunk.js +0 -28
  209. package/build/users-providers-settings-page.e1834060.chunk.js +0 -104
  210. package/build/users-roles-settings-page.3ef35132.chunk.js +0 -30
  211. package/build/webhook-edit-page.c0080dc1.chunk.js +0 -75
@@ -1,1170 +0,0 @@
1
- (self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[994],{37475:function(ga,dt){var m=function(){var t={trace:function(){},yy:{},symbols_:{error:2,JSONString:3,STRING:4,JSONNumber:5,NUMBER:6,JSONNullLiteral:7,NULL:8,JSONBooleanLiteral:9,TRUE:10,FALSE:11,JSONText:12,JSONValue:13,EOF:14,JSONObject:15,JSONArray:16,"{":17,"}":18,JSONMemberList:19,JSONMember:20,":":21,",":22,"[":23,"]":24,JSONElementList:25,$accept:0,$end:1},terminals_:{2:"error",4:"STRING",6:"NUMBER",8:"NULL",10:"TRUE",11:"FALSE",14:"EOF",17:"{",18:"}",21:":",22:",",23:"[",24:"]"},productions_:[0,[3,1],[5,1],[7,1],[9,1],[9,1],[12,2],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[15,2],[15,3],[20,3],[19,1],[19,3],[16,2],[16,3],[25,1],[25,3]],performAction:function(h,se,le,ve,q,ie,Ze){var ce=ie.length-1;switch(q){case 1:this.$=h.replace(/\\(\\|")/g,"$1").replace(/\\n/g,`
2
- `).replace(/\\r/g,"\r").replace(/\\t/g," ").replace(/\\v/g,"\v").replace(/\\f/g,"\f").replace(/\\b/g,"\b");break;case 2:this.$=Number(h);break;case 3:this.$=null;break;case 4:this.$=!0;break;case 5:this.$=!1;break;case 6:return this.$=ie[ce-1];case 13:this.$={};break;case 14:this.$=ie[ce-1];break;case 15:this.$=[ie[ce-2],ie[ce]];break;case 16:this.$={},this.$[ie[ce][0]]=ie[ce][1];break;case 17:this.$=ie[ce-2],ie[ce-2][ie[ce][0]]=ie[ce][1];break;case 18:this.$=[];break;case 19:this.$=ie[ce-1];break;case 20:this.$=[ie[ce]];break;case 21:this.$=ie[ce-2],ie[ce-2].push(ie[ce]);break}},table:[{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],12:1,13:2,15:7,16:8,17:[1,14],23:[1,15]},{1:[3]},{14:[1,16]},{14:[2,7],18:[2,7],22:[2,7],24:[2,7]},{14:[2,8],18:[2,8],22:[2,8],24:[2,8]},{14:[2,9],18:[2,9],22:[2,9],24:[2,9]},{14:[2,10],18:[2,10],22:[2,10],24:[2,10]},{14:[2,11],18:[2,11],22:[2,11],24:[2,11]},{14:[2,12],18:[2,12],22:[2,12],24:[2,12]},{14:[2,3],18:[2,3],22:[2,3],24:[2,3]},{14:[2,4],18:[2,4],22:[2,4],24:[2,4]},{14:[2,5],18:[2,5],22:[2,5],24:[2,5]},{14:[2,1],18:[2,1],21:[2,1],22:[2,1],24:[2,1]},{14:[2,2],18:[2,2],22:[2,2],24:[2,2]},{3:20,4:[1,12],18:[1,17],19:18,20:19},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:23,15:7,16:8,17:[1,14],23:[1,15],24:[1,21],25:22},{1:[2,6]},{14:[2,13],18:[2,13],22:[2,13],24:[2,13]},{18:[1,24],22:[1,25]},{18:[2,16],22:[2,16]},{21:[1,26]},{14:[2,18],18:[2,18],22:[2,18],24:[2,18]},{22:[1,28],24:[1,27]},{22:[2,20],24:[2,20]},{14:[2,14],18:[2,14],22:[2,14],24:[2,14]},{3:20,4:[1,12],20:29},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:30,15:7,16:8,17:[1,14],23:[1,15]},{14:[2,19],18:[2,19],22:[2,19],24:[2,19]},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:31,15:7,16:8,17:[1,14],23:[1,15]},{18:[2,17],22:[2,17]},{18:[2,15],22:[2,15]},{22:[2,21],24:[2,21]}],defaultActions:{16:[2,6]},parseError:function(h,se){throw new Error(h)},parse:function(h){var se=this,le=[0],ve=[null],q=[],ie=this.table,Ze="",ce=0,qt=0,v=0,qe=2,Se=1;this.lexer.setInput(h),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,typeof this.lexer.yylloc>"u"&&(this.lexer.yylloc={});var n=this.lexer.yylloc;q.push(n),typeof this.yy.parseError=="function"&&(this.parseError=this.yy.parseError);function Zr(Le){le.length=le.length-2*Le,ve.length=ve.length-Le,q.length=q.length-Le}function Mt(){var Le;return Le=se.lexer.lex()||1,typeof Le!="number"&&(Le=se.symbols_[Le]||Le),Le}for(var Te,ot,be,w,_,G,de={},je,Ae,mt,Dt;;){be=le[le.length-1],this.defaultActions[be]?w=this.defaultActions[be]:(Te==null&&(Te=Mt()),w=ie[be]&&ie[be][Te]);e:if(typeof w>"u"||!w.length||!w[0]){if(!v){Dt=[];for(je in ie[be])this.terminals_[je]&&je>2&&Dt.push("'"+this.terminals_[je]+"'");var Ye="";this.lexer.showPosition?Ye="Parse error on line "+(ce+1)+`:
3
- `+this.lexer.showPosition()+`
4
- Expecting `+Dt.join(", ")+", got '"+this.terminals_[Te]+"'":Ye="Parse error on line "+(ce+1)+": Unexpected "+(Te==1?"end of input":"'"+(this.terminals_[Te]||Te)+"'"),this.parseError(Ye,{text:this.lexer.match,token:this.terminals_[Te]||Te,line:this.lexer.yylineno,loc:n,expected:Dt})}if(v==3){if(Te==Se)throw new Error(Ye||"Parsing halted.");qt=this.lexer.yyleng,Ze=this.lexer.yytext,ce=this.lexer.yylineno,n=this.lexer.yylloc,Te=Mt()}for(;!(qe.toString()in ie[be]);){if(be==0)throw new Error(Ye||"Parsing halted.");Zr(1),be=le[le.length-1]}ot=Te,Te=qe,be=le[le.length-1],w=ie[be]&&ie[be][qe],v=3}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+be+", token: "+Te);switch(w[0]){case 1:le.push(Te),ve.push(this.lexer.yytext),q.push(this.lexer.yylloc),le.push(w[1]),Te=null,ot?(Te=ot,ot=null):(qt=this.lexer.yyleng,Ze=this.lexer.yytext,ce=this.lexer.yylineno,n=this.lexer.yylloc,v>0&&v--);break;case 2:if(Ae=this.productions_[w[1]][1],de.$=ve[ve.length-Ae],de._$={first_line:q[q.length-(Ae||1)].first_line,last_line:q[q.length-1].last_line,first_column:q[q.length-(Ae||1)].first_column,last_column:q[q.length-1].last_column},G=this.performAction.call(de,Ze,qt,ce,this.yy,w[1],ve,q),typeof G<"u")return G;Ae&&(le=le.slice(0,-1*Ae*2),ve=ve.slice(0,-1*Ae),q=q.slice(0,-1*Ae)),le.push(this.productions_[w[1]][0]),ve.push(de.$),q.push(de._$),mt=ie[le[le.length-2]][le[le.length-1]],le.push(mt);break;case 3:return!0}}return!0}},ut=function(){var re={EOF:1,parseError:function(se,le){if(this.yy.parseError)this.yy.parseError(se,le);else throw new Error(se)},setInput:function(h){return this._input=h,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this},input:function(){var h=this._input[0];this.yytext+=h,this.yyleng++,this.match+=h,this.matched+=h;var se=h.match(/\n/);return se&&this.yylineno++,this._input=this._input.slice(1),h},unput:function(h){return this._input=h+this._input,this},more:function(){return this._more=!0,this},less:function(h){this._input=this.match.slice(h)+this._input},pastInput:function(){var h=this.matched.substr(0,this.matched.length-this.match.length);return(h.length>20?"...":"")+h.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var h=this.match;return h.length<20&&(h+=this._input.substr(0,20-h.length)),(h.substr(0,20)+(h.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var h=this.pastInput(),se=new Array(h.length+1).join("-");return h+this.upcomingInput()+`
5
- `+se+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var h,se,le,ve,q,ie;this._more||(this.yytext="",this.match="");for(var Ze=this._currentRules(),ce=0;ce<Ze.length&&(le=this._input.match(this.rules[Ze[ce]]),!(le&&(!se||le[0].length>se[0].length)&&(se=le,ve=ce,!this.options.flex)));ce++);if(se)return ie=se[0].match(/\n.*/g),ie&&(this.yylineno+=ie.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ie?ie[ie.length-1].length-1:this.yylloc.last_column+se[0].length},this.yytext+=se[0],this.match+=se[0],this.yyleng=this.yytext.length,this._more=!1,this._input=this._input.slice(se[0].length),this.matched+=se[0],h=this.performAction.call(this,this.yy,this,Ze[ve],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),h||void 0;if(this._input==="")return this.EOF;this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
6
- `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var se=this.next();return typeof se<"u"?se:this.lex()},begin:function(se){this.conditionStack.push(se)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(se){this.begin(se)}};return re.options={},re.performAction=function(se,le,ve,q){var ie=q;switch(ve){case 0:break;case 1:return 6;case 2:return le.yytext=le.yytext.substr(1,le.yyleng-2),4;break;case 3:return 17;case 4:return 18;case 5:return 23;case 6:return 24;case 7:return 22;case 8:return 21;case 9:return 10;case 10:return 11;case 11:return 8;case 12:return 14;case 13:return"INVALID"}},re.rules=[/^(?:\s+)/,/^(?:(-?([0-9]|[1-9][0-9]+))(\.[0-9]+)?([eE][-+]?[0-9]+)?\b)/,/^(?:"(?:\\[\\"bfnrt/]|\\u[a-fA-F0-9]{4}|[^\\\0-\x09\x0a-\x1f"])*")/,/^(?:\{)/,/^(?:\})/,/^(?:\[)/,/^(?:\])/,/^(?:,)/,/^(?::)/,/^(?:true\b)/,/^(?:false\b)/,/^(?:null\b)/,/^(?:$)/,/^(?:.)/],re.conditions={INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13],inclusive:!0}},re}();return t.lexer=ut,t}();dt.parser=m,dt.parse=function(){return m.parse.apply(m,arguments)},dt.main=function(ut){if(!ut[1])throw new Error("Usage: "+ut[0]+" FILE")}},48347:function(ga,dt,m){"use strict";m.r(dt),m.d(dt,{App:function(){return pa},default:function(){return Vp}});var t=m(32735),ut=m(99357),re=m(5141),h=m(88425),se=m(28356),le=m(96709),ve=m(27649),q=m(5636),ie=m(98978),Ze=m.n(ie),ce=m(83983),v=e=>`content-manager.${e}`,qe=m(74506),Se=m(60216),n=m.n(Se),Mt=(0,t.createContext)();function Te({attributes:e,buttonData:r,children:o,goTo:s,layout:a,metadatas:l,moveItem:i,moveRow:c,onAddData:u,relationsLayout:d,removeField:p,selectedItemName:f,setEditFieldToSelect:g,...y}){return t.createElement(Mt.Provider,{value:{attributes:e,buttonData:r,goTo:s,layout:a,metadatas:l,moveItem:i,moveRow:c,onAddData:u,relationsLayout:d,removeField:p,selectedItemName:f,setEditFieldToSelect:g,...y}},o)}Te.defaultProps={attributes:{},buttonData:[],goTo(){},layout:[],metadatas:{},moveItem(){},moveRow(){},onAddData(){},relationsLayout:[],removeField(){},selectedItemName:null,setEditFieldToSelect(){}},Te.propTypes={attributes:n().object,buttonData:n().array,children:n().node.isRequired,goTo:n().func,layout:n().array,metadatas:n().object,moveItem:n().func,moveRow:n().func,onAddData:n().func,relationsLayout:n().array,removeField:n().func,selectedItemName:n().string,setEditFieldToSelect:n().func};var ot=Te,be={COMPONENT:"component",EDIT_FIELD:"editField",FIELD:"field",DYNAMIC_ZONE:"dynamicZone",RELATION:"relation"},w=m(83292),_=m(87933),G=m(49372),de=m(27677),je=m(68625),Ae=m(35331),mt=m(47081),Ye=e=>e.length>20?`${e.substring(0,20)}...`:e;const Le=(0,w.default)(_.k)`
7
- height: ${({theme:e})=>e.spaces[7]};
8
-
9
- &:last-child {
10
- padding: 0 ${({theme:e})=>e.spaces[3]};
11
- }
12
- `,zr=(0,w.default)(Le)`
13
- padding: 0 ${({theme:e})=>e.spaces[3]};
14
- border-right: 1px solid ${({theme:e})=>e.colors.neutral150};
15
- cursor: all-scroll;
16
-
17
- svg {
18
- width: ${12/16}rem;
19
- height: ${12/16}rem;
20
- }
21
- `,fa=(0,w.default)(_.k)`
22
- display: inline-flex;
23
- max-height: ${32/16}rem;
24
- opacity: ${({transparent:e})=>e?0:1};
25
- background-color: ${({theme:e,isSibling:r})=>r?e.colors.neutral100:e.colors.primary100};
26
- border: 1px solid
27
- ${({theme:e,isSibling:r})=>r?e.colors.neutral150:e.colors.primary200};
28
-
29
- svg {
30
- width: ${10/16}rem;
31
- height: ${10/16}rem;
32
-
33
- path {
34
- fill: ${({theme:e,isSibling:r})=>r?void 0:e.colors.primary600};
35
- }
36
- }
37
-
38
- ${G.Z} {
39
- color: ${({theme:e,isSibling:r})=>r?void 0:e.colors.primary600};
40
- }
41
-
42
- ${zr} {
43
- border-right: 1px solid
44
- ${({theme:e,isSibling:r})=>r?e.colors.neutral150:e.colors.primary200};
45
- }
46
- `,mn=({labelField:e,transparent:r,isSibling:o})=>{const s=Ye(e);return t.createElement(fa,{hasRadius:!0,justifyContent:"space-between",transparent:r,isSibling:o},t.createElement(de.K,{horizontal:!0,spacing:3},t.createElement(zr,{alignItems:"center"},t.createElement(mt.Z,null)),t.createElement(G.Z,{fontWeight:"bold"},s)),t.createElement(_.k,{paddingLeft:3},t.createElement(Le,{alignItems:"center"},t.createElement(je.Z,null)),t.createElement(Le,{alignItems:"center"},t.createElement(Ae.default,null))))};mn.defaultProps={isSibling:!1,transparent:!1},mn.propTypes={isSibling:n().bool,labelField:n().string.isRequired,transparent:n().bool};var pn=mn,P=m(39161),Oe=m(57269);const ha=(0,w.default)(P.Box)`
47
- border: 1px solid ${({theme:e})=>e.colors.neutral200};
48
- `,ya=(0,w.default)(P.Box)`
49
- height: ${32/16}rem;
50
- width: ${32/16}rem;
51
- border-radius: 50%;
52
- display: flex;
53
- align-items: center;
54
- justify-content: center;
55
-
56
- svg {
57
- height: ${6/16}rem;
58
- width: ${11/16}rem;
59
- > path {
60
- fill: ${({theme:e})=>e.colors.neutral600};
61
- }
62
- }
63
- `,ba=w.default.button`
64
- border: none;
65
- background: transparent;
66
- display: block;
67
- width: 100%;
68
- text-align: unset;
69
- padding: 0;
70
- `,Vr=({displayedValue:e})=>t.createElement(ha,{paddingLeft:3,paddingRight:3,paddingTop:3,paddingBottom:3,hasRadius:!0,background:"neutral0",width:(0,h.pxToRem)(300)},t.createElement(P.Flex,{justifyContent:"space-between"},t.createElement(ba,{type:"button"},t.createElement(P.Flex,null,t.createElement(ya,{background:"neutral200"},t.createElement(Oe.CarretDown,null)),t.createElement(P.Flex,{gap:2,paddingLeft:6,maxWidth:(0,h.pxToRem)(150)},t.createElement(P.Typography,{textColor:"neutral700",ellipsis:!0},e)))),t.createElement(P.Box,{paddingLeft:3},t.createElement(P.Flex,null,t.createElement(P.IconButton,{noBorder:!0},t.createElement(Oe.Trash,null)),t.createElement(P.Box,{paddingLeft:2},t.createElement(P.IconButton,{noBorder:!0},t.createElement(Oe.Drag,null)))))));Vr.propTypes={displayedValue:n().string.isRequired};var Wr=Vr,Ea=m(99381),ze=m.n(Ea),jt=(e,r,o)=>{if(Array.isArray(e)&&r>=0&&o>=0&&r<=e.length-1&&o<=e.length-1){const s=ze()(e),a=s.splice(r,1);return s.splice(o,0,a[0]),s}return e},te=m(92891),Ur=e=>{const r=e.type;return r==="relation"?!(0,te.toLower)(e.relationType).includes("morph"):!["json","dynamiczone","richtext","password"].includes(r)&&!!r};const Ca=(e,r)=>{typeof e=="function"?e(r):e!=null&&(e.current=r)},Zt=(...e)=>r=>e.forEach(o=>Ca(o,r)),Hr=(e,r)=>Object.keys(e).reduce((o,s)=>{const a=(0,te.get)(e,[s],{}),{default:l,component:i,type:c,required:u,min:d,repeatable:p}=a;if(c==="json"&&(o[s]=null),c==="json"&&u===!0&&(o[s]={}),l!==void 0&&(o[s]=l),c==="component"){const f=(0,te.get)(r,[i,"attributes"],{}),g=Hr(f,r);if(u===!0&&(o[s]=p===!0?[]:g),d&&p===!0&&u){o[s]=[];for(let y=0;y<d;y+=1)o[s].push(g)}}return c==="dynamiczone"&&u===!0&&(o[s]=[]),o},{});var zt=Hr,Vt=({layouts:e,metadatas:r,...o})=>{const s=e.list.map(i=>i.name?i.name:i),a=Object.keys(r).reduce((i,c)=>{const u=(0,te.get)(r,[c],{});let d=u.edit;return d.mainField&&(d={...d,mainField:u.edit.mainField.name}),{...i,[c]:{edit:d,list:(0,te.omit)(u.list,["mainField"])}}},{}),l=e.edit.map(i=>i.map(({name:c,size:u})=>({name:c,size:u})));return{...o,layouts:{edit:l,list:s},metadatas:a}};const va=(e,r)=>e.map(o=>({...o,subject:r}));var Gr=e=>{const r={create:[{action:"plugin::content-manager.explorer.create",subject:null}],delete:[{action:"plugin::content-manager.explorer.delete",subject:null}],publish:[{action:"plugin::content-manager.explorer.publish",subject:null}],read:[{action:"plugin::content-manager.explorer.read",subject:null}],update:[{action:"plugin::content-manager.explorer.update",subject:null}]};return Object.keys(r).reduce((o,s)=>(o[s]=va(r[s],e),o),{})},Kr=e=>e.split(".").filter(r=>(0,te.isNaN)(parseInt(r,10))),Wt=e=>{if(e.length===0)return-1;const r=Math.max.apply(Math,e.map(o=>o.__temp_key__??0));return Number.isNaN(r)?-1:r},he=e=>`/content-manager/${e}`,Qr=(e,r,o)=>{const s=c=>r.find(u=>u.uid===c),a=Object.assign({},e),l=e[o].uid,i=s(l);return(0,te.set)(a,[o],{...e[o],...i}),Object.keys(e.components).forEach(c=>{const u=s(c);(0,te.set)(a,["components",c],{...e.components[c],...u})}),a},Yr=(e,r,o)=>{const s=(a,l)=>Object.keys(a).reduce((i,c)=>{const u=(0,h.getType)(l,c),d=(0,te.get)(a,c),p=(0,h.getOtherInfos)(l,[c,"component"]),f=(0,h.getOtherInfos)(l,[c,"repeatable"]);return u==="dynamiczone"?(i[c]=d.map(g=>s(g,o[g.__component])),i):u==="component"?(f?i[c]=d&&d.map(g=>s(g,o[p])):i[c]=d&&s(d,o[p]),i):(u!=="password"&&(i[c]=d),i)},{});return s(e,r)};const st={DRAFT:"draft",PUBLISHED:"published"},gn=5,Ra=10;var kt=m(51968);const Ta=(e,r,{onCancel:o,onDropItem:s,onGrabItem:a,onMoveItem:l})=>{const[i,c]=(0,t.useState)(!1),u=g=>{!i||(g==="UP"?l(r-1,r):g==="DOWN"&&l(r+1,r))},d=()=>{i?(s&&s(r),c(!1)):(a&&a(r),c(!0))},p=()=>{i&&(c(!1),o&&o(r))};return g=>{if(!!e&&!(g.key==="Tab"&&!i))switch(g.preventDefault(),g.key){case" ":case"Enter":d();break;case"Escape":p();break;case"ArrowDown":case"ArrowRight":u("DOWN");break;case"ArrowUp":case"ArrowLeft":u("UP");break;default:}}},fn=(e,{type:r="STRAPI_DND",index:o,item:s={},onStart:a,onEnd:l,onGrabItem:i,onDropItem:c,onCancel:u,onMoveItem:d,dropSensitivity:p="regular"})=>{const f=(0,t.useRef)(null),[{handlerId:g},y]=(0,qe.useDrop)({accept:r,collect(R){return{handlerId:R.getHandlerId()}},hover(R,A){if(!f.current)return;const T=R.index,D=o;if(T!==D){if(p==="regular"){const I=f.current.getBoundingClientRect(),F=(I.bottom-I.top)/2,U=A.getClientOffset().y-I.top;if(T<D&&U<F||T>D&&U>F)return}d(D,T),R.index=D}}}),[{isDragging:b},E,x]=(0,qe.useDrag)({type:r,item(){a&&a();const{width:R}=f.current?.getBoundingClientRect()??{};return{index:o,width:R,...s}},end(){l&&l()},canDrag:e,isDragging:s.id?R=>s.id===R.getItem().id:void 0,collect:R=>({isDragging:R.isDragging()})}),C=Ta(e,o,{onGrabItem:i,onDropItem:c,onCancel:u,onMoveItem:d});return[{handlerId:g,isDragging:b,handleKeyDown:C},f,y,E,x]},Ut=50,pt=4,Jr=(0,w.default)(P.Stack)`
71
- width: 100%;
72
- /* Used to prevent endAction to be pushed out of container */
73
- min-width: 0;
74
-
75
- & > div[role='button'] {
76
- cursor: all-scroll;
77
- }
78
- `,Xr=(0,w.default)(P.Flex)`
79
- width: 100%;
80
- /* Used to prevent endAction to be pushed out of container */
81
- min-width: 0;
82
- `,hn=({ariaDescribedBy:e,children:r,displayValue:o,canDrag:s,disabled:a,endAction:l,iconButtonAriaLabel:i,style:c,id:u,index:d,name:p,onCancel:f,onDropItem:g,onGrabItem:y,status:b,updatePositionOfRelation:E,...x})=>{const[{handlerId:C,isDragging:R,handleKeyDown:A},T,D,I,F]=fn(s&&!a,{type:`${be.RELATION}_${p}`,index:d,item:{displayedValue:o,status:b,id:u},onGrabItem:y,onDropItem:g,onCancel:f,onMoveItem:E,dropSensitivity:"immediate"}),z=Zt(T,I);return(0,t.useEffect)(()=>{F((0,kt.rX)())},[F]),t.createElement(P.Box,{style:c,as:"li",ref:D,"aria-describedby":e,cursor:s?"all-scroll":"default"},R?t.createElement(Ma,null):t.createElement(P.Flex,{paddingTop:2,paddingBottom:2,paddingLeft:s?2:4,paddingRight:4,hasRadius:!0,borderSize:1,borderColor:"neutral200",background:a?"neutral150":"neutral0",justifyContent:"space-between",ref:s?z:void 0,"data-handler-id":C,...x},t.createElement(Jr,{spacing:1,horizontal:!0},s?t.createElement(P.IconButton,{forwardedAs:"div",role:"button",tabIndex:0,"aria-label":i,noBorder:!0,onKeyDown:A,disabled:a},t.createElement(Oe.Drag,null)):null,t.createElement(Xr,{justifyContent:"space-between"},r)),l&&t.createElement(P.Box,{paddingLeft:4},l)))},Ma=()=>t.createElement(P.Box,{paddingTop:2,paddingBottom:2,paddingLeft:4,paddingRight:4,hasRadius:!0,borderStyle:"dashed",borderColor:"primary600",borderWidth:"1px",background:"primary100",height:`calc(100% - ${pt}px)`});hn.defaultProps={ariaDescribedBy:"",canDrag:!1,displayValue:"",disabled:!1,endAction:void 0,onCancel:void 0,onDropItem:void 0,onGrabItem:void 0,style:void 0,status:void 0,updatePositionOfRelation:void 0},hn.propTypes={ariaDescribedBy:n().string,canDrag:n().bool,children:n().node.isRequired,displayValue:n().string,disabled:n().bool,endAction:n().node,iconButtonAriaLabel:n().string.isRequired,id:n().number.isRequired,index:n().number.isRequired,name:n().string.isRequired,onCancel:n().func,onDropItem:n().func,onGrabItem:n().func,status:n().string,style:n().shape({height:n().number,left:n().number,position:n().string,right:n().number,width:n().string}),updatePositionOfRelation:n().func};var Da=m(54450),_r=m(41234),H=m(72850),ka=m(50428),xa=m(99140),eo=m(87107),to=m(76437),no=m(67014),ro=m(47851),Ia=m(7563),Ht=m(63919),oo=m(3685),so=m(44647);const yn=({children:e,loadMore:r,search:o,totalNumberOfRelations:s,size:a,...l})=>t.createElement(t.Fragment,null,t.createElement(_.k,{paddingBottom:s>0?3:0,gap:2,justifyContent:"space-between",alignItems:"end",wrap:"wrap"},t.createElement(de.K,{basis:a<=6?"100%":"70%",spacing:1,...l},o),r),e);yn.defaultProps={search:void 0,loadMore:void 0,totalNumberOfRelations:0},yn.propTypes={children:n().node.isRequired,search:n().node,loadMore:n().node,size:n().number.isRequired,totalNumberOfRelations:n().number};const La=(0,w.default)(H.x)`
83
- position: relative;
84
- overflow-x: hidden;
85
- overflow-y: auto;
86
-
87
- &:before,
88
- &:after {
89
- position: absolute;
90
- width: 100%;
91
- height: 4px;
92
- z-index: 1;
93
- }
94
-
95
- &:before {
96
- /* TODO: as for DS Table component we would need this to be handled by the DS theme */
97
- content: '';
98
- background: linear-gradient(rgba(3, 3, 5, 0.2) 0%, rgba(0, 0, 0, 0) 100%);
99
- top: 0;
100
- opacity: ${({overflowDirection:e})=>e==="top-bottom"||e==="top"?1:0};
101
- transition: opacity 0.2s ease-in-out;
102
- }
103
-
104
- &:after {
105
- /* TODO: as for DS Table component we would need this to be handled by the DS theme */
106
- content: '';
107
- background: linear-gradient(0deg, rgba(3, 3, 5, 0.2) 0%, rgba(0, 0, 0, 0) 100%);
108
- bottom: 0;
109
- opacity: ${({overflowDirection:e})=>e==="top-bottom"||e==="bottom"?1:0};
110
- transition: opacity 0.2s ease-in-out;
111
- }
112
- `,bn=({children:e,overflow:r,...o})=>t.createElement(La,{overflowDirection:r,...o},e);bn.defaultProps={overflow:""},bn.propTypes={children:n().node.isRequired,overflow:n().oneOf(["top-bottom","bottom","top",""])};var Sa=m(65384);const Fa=w.default.div`
113
- flex-shrink: 0;
114
- width: ${(0,h.pxToRem)(6)};
115
- height: ${(0,h.pxToRem)(6)};
116
- margin-right: ${({theme:e})=>e.spaces[2]};
117
- background-color: ${({theme:e,isDraft:r})=>e.colors[r?"secondary600":"success600"]};
118
- border-radius: 50%;
119
- `,ao=e=>{const{formatMessage:r}=(0,q.useIntl)(),o=Sa.components.Option,{publicationState:s,mainField:a,id:l}=e.data;if(s){const i=s==="draft",c={id:v("components.Select.draft-info-title"),defaultMessage:"State: Draft"},u={id:v("components.Select.publish-info-title"),defaultMessage:"State: Published"},d=r(i?c:u);return t.createElement(o,{...e},t.createElement(_.k,null,t.createElement(Fa,{title:d,isDraft:i}),t.createElement(G.Z,{ellipsis:!0},a??l)))}return t.createElement(o,{...e},a??l)};ao.propTypes={isFocused:n().bool.isRequired,data:n().shape({id:n().number.isRequired,isDraft:n().bool,mainField:n().string,publicationState:n().oneOfType([n().string,n().bool])}).isRequired};var pe=m(4409),io=e=>e["content-manager_editViewLayoutManager"].currentLayout,Je=()=>{const e=(0,pe.useSelector)(io),r=(0,t.useCallback)(o=>(0,te.get)(e,["components",o],{}),[e]);return{...e,getComponentLayout:r}},$e=m(55721),ge=m(17247);const lo=(e,r)=>r.find(o=>o.uid===e),wa=(e,r)=>{const o=Pa(e,r),s=co(o.contentType,r),a=Aa(o.contentType,o.components);return(0,te.set)(o,["contentType","layouts","edit"],s),(0,te.set)(o,["contentType","layouts","list"],a),Object.keys(o.components).forEach(l=>{const i=co(o.components[l],r);(0,te.set)(o,["components",l,"layouts","edit"],i)}),o},Pa=(e,r)=>{const o=Qr((0,te.cloneDeep)(e),r,"contentType"),{components:s,contentType:a}=o,l=i=>Object.keys(i.metadatas).reduce((c,u)=>{const d=(0,te.get)(i,["attributes",u],{});let p=i.metadatas[u];if(d.type==="relation"){const f=lo(d.targetModel,r),g=p.edit.mainField,y={name:g,schema:(0,te.get)(f,["attributes",g])};p={list:{...p.list,mainField:y},edit:{...p.edit,mainField:y}}}return c[u]=p,c},{});return(0,te.set)(o,["contentType","metadatas"],l(a)),Object.keys(s).forEach(i=>{const c=s[i],u=l(c);(0,te.set)(o,["components",i,"metadatas"],u)}),o},co=(e,r)=>e.layouts.edit.reduce((o,s)=>{const a=s.map(l=>{const i=(0,te.get)(e,["attributes",l.name],{}),c={...l,fieldSchema:i,metadatas:(0,te.get)(e,["metadatas",l.name,"edit"],{})};if(i.type==="relation"){const d=lo(i.targetModel,r).pluginOptions||{};(0,te.set)(c,"targetModelPluginOptions",d),(0,te.set)(c,"queryInfos",{shouldDisplayRelationLink:Oa(e,l.name,r)})}return c});return o.push(a),o},[]),Aa=(e,r)=>e.layouts.list.reduce((s,a)=>{const l=(0,te.get)(e,["attributes",a],{}),i=(0,te.get)(e,["metadatas",a,"list"],{}),c=l.type;if(c==="relation")return s.push({key:`__${a}_key__`,name:a,fieldSchema:l,metadatas:i}),s;if(c==="component"){const u=r[l.component],d=u.settings.mainField,p=u.attributes[d];return s.push({key:`__${a}_key__`,name:a,fieldSchema:l,metadatas:{...i,mainField:{...p,name:d}}}),s}return s.push({key:`__${a}_key__`,name:a,fieldSchema:l,metadatas:i}),s},[]),Oa=(e,r,o)=>{const s=(0,te.get)(e,["attributes",r,"targetModel"],"");return $a(o).includes(s)},$a=e=>e.filter(r=>r.isDisplayed).map(({uid:r})=>r);var uo=wa,Gt=m(97889);const Na={error:null,isLoading:!0,layout:{},layouts:{}};var Ba=(e,r)=>(0,Gt.default)(e,o=>{switch(r.type){case"GET_DATA":{o.isLoading=!0,o.error=null,o.layout={};break}case"GET_DATA_SUCCEEDED":{const s=r.data.contentType.uid;o.layout=r.data,o.layouts[s]=r.data,o.isLoading=!1;break}case"GET_DATA_ERROR":{o.isLoading=!1,o.error=r.error;break}case"SET_LAYOUT_FROM_STATE":{o.error=null,o.layout=e.layouts[r.uid];break}case"UPDATE_LAYOUT":{const s=e.layout;o.layout={...s,contentType:{uid:s.contentType.uid,...r.newLayout.contentType}},o.layouts[s.contentType.uid]={...s,contentType:{uid:s.contentType.uid,...r.newLayout.contentType}};break}default:return o}}),xt=m(98178),qa=m(34947);const It=()=>e=>e["content-manager_app"]||qa.E,ug=()=>createSelector(It(),e=>e),mg=()=>createSelector(It(),e=>e.models),ja=()=>(0,xt.P1)(It(),e=>({collectionTypeLinks:e.collectionTypeLinks,singleTypeLinks:e.singleTypeLinks})),En=()=>(0,xt.P1)(It(),({components:e,models:r})=>({schemas:[...e,...r]}));var pg=null,Za=m(98399),mo=e=>{const[{error:r,isLoading:o,layout:s,layouts:a},l]=(0,t.useReducer)(Ba,Na),i=(0,t.useMemo)(En,[]),{schemas:c}=(0,pe.useSelector)(f=>i(f),pe.shallowEqual),u=(0,t.useRef)(!0),d=(0,t.useCallback)(async(f,g)=>{if(a[f]){l({type:"SET_LAYOUT_FROM_STATE",uid:f});return}l({type:"GET_DATA"});try{const y=he(`content-types/${f}/configuration`),{data:{data:b}}=await ge.be.get(y,{cancelToken:g.token});l({type:"GET_DATA_SUCCEEDED",data:uo(b,c)})}catch(y){if($e.Z.isCancel(y))return;u.current&&Za.error(y),u.current&&l({type:"GET_DATA_ERROR",error:y})}},[a,c]);(0,t.useEffect)(()=>()=>{u.current=!1},[]),(0,t.useEffect)(()=>{const g=$e.Z.CancelToken.source();return d(e,g),()=>{g.cancel("Operation canceled by the user.")}},[e,d]);const p=(0,t.useCallback)(f=>{l({type:"UPDATE_LAYOUT",newLayout:uo(f,c)})},[c]);return{error:r,isLoading:o,layout:s,updateLayout:p}},za=e=>e["content-manager_app"].collectionTypeLinks,Ke=m(33348),Va=m(33795),L=m.n(Va),Wa=m(85973),po=m.n(Wa);const go=(e,r)=>Object.keys(e).reduce((o,s)=>{const a=e[s],l=L()(r,[s],a);return po()(a)?{...o,[s]:go(a,l)}:(o[s]=l,o)},{});var Ua=(e,r,o)=>{const s=e.find(({to:p})=>p.includes(r));if(!s)return"/";const{to:a,search:l}=s,i=(0,Ke.parse)(l),c=(0,Ke.parse)(o.substring(1)),u=go(i,c);return`${a}?${(0,Ke.stringify)(u,{encode:!1})}`},fo=e=>{const[{rawQuery:r}]=(0,h.useQueryParams)(),o=(0,pe.useSelector)(za);return Ua(o,e,r)},at=()=>(0,t.useContext)(Mt),ho=()=>{const{search:e}=(0,re.useLocation)(),r=e?(0,Ke.parse)(e.substring(1)):{};return r.plugins?(0,Ke.stringify)({plugins:r.plugins},{encode:!1}):""},yo=m(89334);const Ha=(e,r,o)=>({type:yo.m,permissions:e,__meta__:{plugins:r,containerName:o}}),Ga=()=>({type:yo.Q}),Ka=e=>e["content-manager_rbacManager"].permissions,Qa=e=>e.rbacProvider.collectionTypesRelatedPermissions;var bo=(e,r,o="listView")=>{const s=(0,pe.useSelector)(Qa),a=(0,pe.useSelector)(Ka),l=(0,pe.useDispatch)(),i=s[r];return(0,t.useEffect)(()=>i?(l(Ha(i,e?e.plugins:null,o)),()=>{l(Ga())}):()=>{},[i,l,e,o]),a};const vg=(0,t.createContext)();var Rg=null;const Tg=()=>useContext(WysiwygContext);var Mg=null;const Eo=e=>{const r=(0,t.useRef)();return(0,t.useEffect)(()=>{r.current=e},[e]),r.current},Co=(0,w.default)(ka.r)`
120
- display: block;
121
-
122
- > span {
123
- white-space: nowrap;
124
- overflow: hidden;
125
- text-overflow: ellipsis;
126
- display: block;
127
- }
128
- `,vo=w.default.button`
129
- svg path {
130
- fill: ${({theme:e,disabled:r})=>r?e.colors.neutral600:e.colors.neutral500};
131
- }
132
-
133
- &:hover svg path,
134
- &:focus svg path {
135
- fill: ${({theme:e,disabled:r})=>!r&&e.colors.neutral600};
136
- }
137
- `,Cn=({canReorder:e,description:r,disabled:o,error:s,iconButtonAriaLabel:a,id:l,name:i,numberOfRelationsToDisplay:c,label:u,labelAction:d,labelLoadMore:p,labelDisconnectRelation:f,listAriaDescription:g,liveText:y,loadingMessage:b,onCancel:E,onDropItem:x,onGrabItem:C,noRelationsMessage:R,onRelationConnect:A,onRelationLoadMore:T,onRelationDisconnect:D,onRelationReorder:I,onSearchNextPage:F,onSearch:z,placeholder:U,publicationStateTranslations:B,required:K,relations:j,searchResults:N,size:S})=>{const[J,$]=(0,t.useState)(null),[Y,M]=(0,t.useState)(""),k=(0,t.useRef)(),V=(0,t.useRef)(),{data:Z}=N,O=j.data,Q=O.length??0,oe=(0,t.useMemo)(()=>Q>c?Math.min(Q,c)*(Ut+pt)+Ut/2:Math.min(Q,c)*(Ut+pt),[Q,c]),Me=!!p&&j.hasNextPage||j.isLoading,W=(0,t.useMemo)(()=>Z.flat().filter(Boolean).map(ye=>({...ye,value:ye.id,label:ye.mainField})),[Z]);(0,t.useEffect)(()=>{if(Q<=c)return M("");const ye=Re=>{const nt=Re.target.parentNode.scrollHeight,rt=Re.target.scrollHeight-Re.target.scrollTop;return Re.target.scrollTop===0?M("bottom"):M(rt===nt?"top":"top-bottom")},me=V?.current;return!j.isLoading&&O.length>0&&me&&V.current.addEventListener("scroll",ye),()=>{me&&me.removeEventListener("scroll",ye)}},[j,O,c,Q]);const[fe,we]=(0,t.useState)(!1),He=(0,t.useRef)(),tt=(0,t.useRef)([]);(0,t.useEffect)(()=>(W.length>0&&tt.current.length===0&&we(ye=>(ye&&(He.current=setTimeout(()=>{we(!0)},10)),!1)),()=>{tt.current=W||[]}),[W]),(0,t.useEffect)(()=>()=>{He.current&&clearTimeout(He.current)},[]);const $t=()=>{we(!1)},Nt=()=>{we(!0),z()},Bt=(ye,me)=>{I&&ye>=0&&ye<O.length&&I(me,ye)},Ge=Eo(O.length),Be=(0,t.useRef)(),Tt=()=>{Be.current="loadMore",T()};(0,t.useEffect)(()=>{Be.current==="onChange"&&O.length!==Ge?k.current.scrollToItem(O.length,"end"):Be.current==="loadMore"&&O.length!==Ge&&k.current.scrollToItem(0,"start"),Be.current=void 0},[Ge,O]);const ct=`${i}-item-instructions`;return t.createElement(eo.g,{error:s,name:i,hint:r,id:l,required:K},t.createElement(yn,{totalNumberOfRelations:Q,size:S,search:t.createElement(t.Fragment,null,t.createElement(to.Q,{action:d},u),t.createElement(h.ReactSelect,{menuPosition:"absolute",menuPlacement:"auto",components:{Option:ao},options:W,isDisabled:o,isLoading:N.isLoading,error:s,inputId:l,isSearchable:!0,isClear:!0,loadingMessage:()=>b,onChange:ye=>{$(null),A(ye),Be.current="onChange"},onInputChange:ye=>{$(ye),z(ye)},onMenuClose:$t,onMenuOpen:Nt,menuIsOpen:fe,noOptionsMessage:()=>R,onMenuScrollToBottom:()=>{N.hasNextPage&&F()},placeholder:U,name:i,value:J})),loadMore:Me&&t.createElement(Ia.A,{disabled:j.isLoading||j.isFetchingNextPage,onClick:Tt,loading:j.isLoading||j.isFetchingNextPage,startIcon:t.createElement(so.Z,null)},p)},O.length>0&&t.createElement(bn,{overflow:Y},t.createElement(oo.T,{id:ct},g),t.createElement(oo.T,{"aria-live":"assertive"},y),t.createElement(Da.t7,{height:oe,ref:k,outerRef:V,itemCount:Q,itemSize:Ut+pt,itemData:{name:i,ariaDescribedBy:ct,canDrag:e,disabled:o,handleCancel:E,handleDropItem:x,handleGrabItem:C,iconButtonAriaLabel:a,labelDisconnectRelation:f,onRelationDisconnect:D,publicationStateTranslations:B,relations:O,updatePositionOfRelation:Bt},itemKey:ye=>`${O[ye].mainField}_${O[ye].id}`,innerElementType:"ol"},vn)),(r||s)&&t.createElement(H.x,{paddingTop:2},t.createElement(no.J,null),t.createElement(ro.c,null))))},Ya=n().shape({data:n().arrayOf(n().shape({href:n().string,id:n().number.isRequired,publicationState:n().oneOfType([n().string,n().bool]),mainField:n().oneOfType([n().string,n().number])})),hasNextPage:n().bool,isFetchingNextPage:n().bool.isRequired,isLoading:n().bool.isRequired,isSuccess:n().bool.isRequired}),Ja=n().shape({data:n().arrayOf(n().shape({id:n().number.isRequired,href:n().string,mainField:n().oneOfType([n().string,n().number]),publicationState:n().oneOfType([n().string,n().bool])})),hasNextPage:n().bool,isLoading:n().bool.isRequired,isSuccess:n().bool.isRequired});Cn.defaultProps={canReorder:!1,description:void 0,disabled:!1,error:void 0,labelAction:null,labelLoadMore:null,liveText:void 0,onCancel:void 0,onDropItem:void 0,onGrabItem:void 0,required:!1,relations:{data:[]},searchResults:{data:[]}},Cn.propTypes={error:n().string,canReorder:n().bool,description:n().string,disabled:n().bool,iconButtonAriaLabel:n().string.isRequired,id:n().string.isRequired,label:n().string.isRequired,labelAction:n().element,labelLoadMore:n().string,labelDisconnectRelation:n().string.isRequired,listAriaDescription:n().string.isRequired,liveText:n().string,loadingMessage:n().string.isRequired,name:n().string.isRequired,noRelationsMessage:n().string.isRequired,numberOfRelationsToDisplay:n().number.isRequired,onCancel:n().func,onDropItem:n().func,onGrabItem:n().func,onRelationConnect:n().func.isRequired,onRelationDisconnect:n().func.isRequired,onRelationLoadMore:n().func.isRequired,onRelationReorder:n().func.isRequired,onSearch:n().func.isRequired,onSearchNextPage:n().func.isRequired,placeholder:n().string.isRequired,publicationStateTranslations:n().shape({draft:n().string.isRequired,published:n().string.isRequired}).isRequired,required:n().bool,searchResults:Ja,size:n().number.isRequired,relations:Ya};const vn=({data:e,index:r,style:o})=>{const{ariaDescribedBy:s,canDrag:a,disabled:l,handleCancel:i,handleDropItem:c,handleGrabItem:u,iconButtonAriaLabel:d,name:p,labelDisconnectRelation:f,onRelationDisconnect:g,publicationStateTranslations:y,relations:b,updatePositionOfRelation:E}=e,{publicationState:x,href:C,mainField:R,id:A}=b[r],T=x==="draft"?"secondary":"success";return t.createElement(hn,{ariaDescribedBy:s,canDrag:a,disabled:l,displayValue:String(R??A),iconButtonAriaLabel:d,id:A,index:r,name:p,endAction:t.createElement(vo,{"data-testid":`remove-relation-${A}`,disabled:l,type:"button",onClick:()=>g(b[r]),"aria-label":f},t.createElement(xa.J,{width:"12px",as:Ae.default})),onCancel:i,onDropItem:c,onGrabItem:u,status:x||void 0,style:{...o,bottom:o.bottom??0+pt,height:o.height??0-pt},updatePositionOfRelation:E},t.createElement(H.x,{minWidth:0,paddingTop:1,paddingBottom:1,paddingRight:4},t.createElement(Ht.u,{description:R??`${A}`},C?t.createElement(Co,{to:C},R??A):t.createElement(G.Z,{textColor:l?"neutral600":"primary600",ellipsis:!0},R??A))),x&&t.createElement(_r.q,{variant:T,showBullet:!1,size:"S"},t.createElement(G.Z,{fontWeight:"bold",textColor:`${T}700`},y[x])))};vn.defaultProps={data:{}},vn.propTypes={data:n().shape({ariaDescribedBy:n().string.isRequired,canDrag:n().bool.isRequired,disabled:n().bool.isRequired,handleCancel:n().func,handleDropItem:n().func,handleGrabItem:n().func,iconButtonAriaLabel:n().string.isRequired,labelDisconnectRelation:n().string.isRequired,name:n().string.isRequired,onRelationDisconnect:n().func.isRequired,publicationStateTranslations:n().shape({draft:n().string.isRequired,published:n().string.isRequired}).isRequired,relations:n().arrayOf(n().shape({href:n().string,id:n().number.isRequired,publicationState:n().oneOfType([n().string,n().bool]),mainField:n().oneOfType([n().string,n().number])})),updatePositionOfRelation:n().func.isRequired}),index:n().number.isRequired,style:n().object.isRequired};var Xa=Cn;const Ro=({status:e,displayedValue:r,width:o})=>{const{formatMessage:s}=(0,q.useIntl)(),a={[st.DRAFT]:s({id:v("relation.publicationState.draft"),defaultMessage:"Draft"}),[st.PUBLISHED]:s({id:v("relation.publicationState.published"),defaultMessage:"Published"})},l=e===st.DRAFT?"secondary":"success";return t.createElement(P.Box,{style:{width:o}},t.createElement(P.Flex,{paddingTop:2,paddingBottom:2,paddingLeft:2,paddingRight:4,hasRadius:!0,borderSize:1,background:"neutral0",borderColor:"neutral200",justifyContent:"space-between"},t.createElement(Jr,{spacing:1,horizontal:!0},t.createElement(P.IconButton,{noBorder:!0},t.createElement(Oe.Drag,null)),t.createElement(Xr,{maxWidth:"100%",justifyContent:"space-between"},t.createElement(P.Box,{minWidth:0,paddingTop:1,paddingBottom:1,paddingRight:4},t.createElement(Co,null,t.createElement(P.Typography,{textColor:"primary600",ellipsis:!0},r))),e&&t.createElement(P.Status,{variant:l,showBullet:!1,size:"S"},t.createElement(P.Typography,{fontWeight:"bold",textColor:`${l}700`},a[e])))),t.createElement(P.Box,{paddingLeft:4},t.createElement(vo,{type:"button"},t.createElement(P.Icon,{width:"12px",as:Oe.Cross})))))};Ro.propTypes={status:n().string.isRequired,displayedValue:n().string.isRequired,width:n().number.isRequired};const _a={position:"fixed",pointerEvents:"none",zIndex:100,left:0,top:0,width:"100%",height:"100%"};function ei(e,r,o){if(!e||!r)return{display:"none"};const{x:s,y:a}=o,l=`translate(${s}px, ${a}px)`;return{transform:l,WebkitTransform:l}}var ti=()=>{const{itemType:e,isDragging:r,item:o,initialOffset:s,currentOffset:a,mouseOffset:l}=(0,qe.useDragLayer)(c=>({item:c.getItem(),itemType:c.getItemType(),initialOffset:c.getInitialSourceClientOffset(),currentOffset:c.getSourceClientOffset(),isDragging:c.isDragging(),mouseOffset:c.getClientOffset()}));if(!r)return null;const[i]=e.split("_");return t.createElement(ot,null,t.createElement("div",{style:_a},t.createElement("div",{style:ei(s,a,l),className:"col-md-2"},[be.EDIT_FIELD,be.FIELD].includes(e)&&t.createElement(pn,{labelField:o.labelField}),i===be.COMPONENT&&t.createElement(Wr,{displayedValue:o.displayedValue}),i===be.DYNAMIC_ZONE&&t.createElement(Wr,{displayedValue:o.displayedValue}),i===be.RELATION&&t.createElement(Ro,{displayedValue:o.displayedValue,status:o.status,width:o.width}))))},To=(0,t.createContext)(),ni=m(47533),Mo=(0,t.createContext)(),Kt=m(70836),Do=m(4460);const ri=()=>({type:Do.c}),oi=(e,r)=>({type:Do.O,layout:e,query:r});var si=m(8266),Xe=m.n(si),gt=m(17e3),Ve=m(15335),ke=m(5803),ai=m(2669),ii=m(66694),li=()=>(0,t.useContext)(ii.ux),ko=e=>{const{getAdminInjectedComponents:r}=li(),[o,s,a]=e.split(".");return r(o,s,a)};const xo=({area:e,...r})=>ko(e).map(s=>t.createElement(s.Component,{key:s.name,...r}));xo.propTypes={area:n().string.isRequired};var Qt=xo;function ci(e,r){return o=>{const s=r(o.name);return t.createElement(e,{...o,...s})}}var di=ci;function ui(e){const{addComponentToDynamicZone:r,createActionAllowedFields:o,isCreatingEntry:s,formErrors:a,modifiedData:l,moveComponentField:i,removeComponentFromDynamicZone:c,readActionAllowedFields:u,updateActionAllowedFields:d}=(0,h.useCMEditViewDataManager)(),p=(0,t.useMemo)(()=>(0,te.get)(l,[e],[]).map(y=>({componentUid:y.__component,id:y.id??y.__temp_key__})),[l,e]),f=(0,t.useMemo)(()=>(s?o:d).includes(e),[e,s,o,d]),g=(0,t.useMemo)(()=>(s?[]:u).includes(e),[e,s,u]);return{addComponentToDynamicZone:r,formErrors:a,isCreatingEntry:s,isFieldAllowed:f,isFieldReadable:g,moveComponentField:i,removeComponentFromDynamicZone:c,dynamicDisplayedComponents:p}}var mi=ui,pi=m(61868),gi=m.n(pi),ft=m(4038),Ne=m(50563);function fi(e,r){return o=>{const s=r(o);return t.createElement(e,{...o,...s})}}var hi=fi;function yi({isFromDynamicZone:e,name:r}){const{addNonRepeatableComponentToField:o,createActionAllowedFields:s,isCreatingEntry:a,modifiedData:l,removeComponentFromField:i,readActionAllowedFields:c,updateActionAllowedFields:u,formErrors:d}=(0,h.useCMEditViewDataManager)(),{contentType:p}=Je(),f=(0,t.useMemo)(()=>{const R=(0,te.get)(p,["attributes"],{});return Object.keys(R).filter(T=>(0,te.get)(R,[T,"type"],"")==="dynamiczone")},[p]),g=(0,t.useMemo)(()=>a?s:u,[a,s,u]),y=(0,te.get)(l,r,null),b=(0,t.useMemo)(()=>Kr(r),[r]),E=(0,t.useMemo)(()=>e&&a||g.filter(T=>T===b[0]).length>0?!0:g.map(T=>T.split(".")).filter(T=>T.length<b.length?!1:(0,te.take)(T,b.length).join(".")===b.join(".")).length>0,[e,a,g,b]),x=(0,t.useMemo)(()=>e||f.includes(b[0])?!0:(a?[]:c).map(T=>T.split(".")).filter(T=>T.length<b.length?!1:(0,te.take)(T,b.length).join(".")===b.join(".")).length>0,[e,f,b,a,c]),C=(0,t.useMemo)(()=>a||E?!1:x,[E,x,a]);return{addNonRepeatableComponentToField:o,formErrors:d,hasChildrenAllowedFields:E,hasChildrenReadableFields:x,isCreatingEntry:a,isReadOnly:C,removeComponentFromField:i,componentValue:y}}var bi=yi;const Ei=(0,w.default)(H.x)`
138
- svg path {
139
- fill: ${({theme:e})=>e.colors.neutral500};
140
- }
141
- `,Rn=({intlLabel:e,id:r,labelAction:o,name:s,numberOfEntries:a,showNumberOfEntries:l,required:i})=>{const{formatMessage:c}=(0,q.useIntl)(),u=e?.id?c(e):s;return t.createElement(H.x,{paddingBottom:1},t.createElement(_.k,null,t.createElement(G.Z,{textColor:"neutral800",htmlFor:r||s,variant:"pi",fontWeight:"bold",as:"label"},u,l&&t.createElement(t.Fragment,null,"\xA0(",a,")"),i&&t.createElement(G.Z,{textColor:"danger600"},"*")),o&&t.createElement(Ei,{paddingLeft:1},o)))};Rn.defaultProps={id:void 0,labelAction:void 0,numberOfEntries:0,required:!1,showNumberOfEntries:!1},Rn.propTypes={id:n().string,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,labelAction:n().element,name:n().string.isRequired,numberOfEntries:n().number,required:n().bool,showNumberOfEntries:n().bool};var Ci=Rn,Io=m(86308);const vi=w.default.span`
142
- > svg {
143
- width: ${(0,h.pxToRem)(24)};
144
- height: ${(0,h.pxToRem)(24)};
145
- > circle {
146
- fill: ${({theme:e})=>e.colors.primary200};
147
- }
148
- > path {
149
- fill: ${({theme:e})=>e.colors.primary600};
150
- }
151
- }
152
- `,Tn=({error:e,isReadOnly:r,onClick:o})=>{const{formatMessage:s}=(0,q.useIntl)();return t.createElement(t.Fragment,null,t.createElement(H.x,{as:"button",background:"neutral100",borderColor:e?"danger600":"neutral200",disabled:r,hasRadius:!0,onClick:o,paddingTop:9,paddingBottom:9,type:"button"},t.createElement(de.K,{spacing:2},t.createElement(_.k,{justifyContent:"center",style:{cursor:r?"not-allowed":"inherit"}},t.createElement(vi,null,t.createElement(Io.Z,null))),t.createElement(_.k,{justifyContent:"center"},t.createElement(G.Z,{textColor:"primary600",variant:"pi",fontWeight:"bold"},s({id:v("components.empty-repeatable"),defaultMessage:"No entry yet. Click on the button below to add one."}))))),e?.id&&t.createElement(G.Z,{textColor:"danger600",variant:"pi"},s(e,{...e.values})))};Tn.defaultProps={error:void 0,isReadOnly:!1},Tn.propTypes={error:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}),isReadOnly:n().bool,onClick:n().func.isRequired};var Lo=Tn,Ri=m(9086),Ti=m.n(Ri),Mi=m(88708),Mn=m.n(Mi),Di=m(27509),Yt=m.n(Di),Sg=m(40795),ki=m(88591),xi=m.n(ki),Dn=m(59845),Ii=m(20871),Li=m.n(Ii),Si=m(48375),So=m.n(Si),Fi=m(31089),wi=m.n(Fi),Pi=m(16043),Ai=m.n(Pi),Oi=m(5109),$i=m.n(Oi),Ni=m(47955),Bi=m.n(Ni),qi=m(95706),ji=m.n(qi),Zi=m(6658),zi=m.n(Zi),Vi=m(36407),Wi=m.n(Vi);(async()=>{await m.e(7347).then(m.bind(m,98362))})();const ht=new(xi())({html:!0,xhtmlOut:!1,breaks:!0,langPrefix:"language-",linkify:!0,typographer:!0,highlight(e,r){if(r&&r!=="auto"&&(0,Dn.getLanguage)(r))return'<pre class="hljs language-'+ht.utils.escapeHtml(r.toLowerCase())+'"><code>'+(0,Dn.highlight)(r,e,!0).value+"</code></pre>";if(r==="auto"){const o=(0,Dn.highlightAuto)(e);return'<pre class="hljs language-'+ht.utils.escapeHtml(o.language)+'"><code>'+o.value+"</code></pre>"}return'<pre class="hljs"><code>'+ht.utils.escapeHtml(e)+"</code></pre>"}}).use(Li()).use(So(),"warning").use(So(),"tip").use(wi()).use(Ai()).use($i()).use(Bi()).use(ji()).use(zi()).use(Wi());ht.renderer.rules.footnote_ref=(e,r,o,s,a)=>'<sup class="footnote-ref"><span>'+a.rules.footnote_caption(e,r,o,s,a)+"</span></sup>",ht.renderer.rules.footnote_anchor=()=>' <span class="footnote-backref">\u21A9\uFE0E</span>';var Ui=ht,Hi=m(13993),Fo=m.n(Hi);const Gi={...Fo().defaults,allowedTags:!1,allowedAttributes:{"*":["href","align","alt","center","width","height","type","controls","target"],img:["src","alt"],source:["src","type"]}};var Ki=e=>Fo()(e,Gi),Qi=w.default.div`
153
- position: absolute;
154
- top: 0;
155
- width: 100%;
156
- height: 100%;
157
- overflow: auto;
158
- padding: ${({theme:e})=>`${e.spaces[3]} ${e.spaces[4]}`};
159
- font-size: ${14/16}rem;
160
- background-color: ${({theme:e})=>e.colors.neutral0};
161
- color: ${({theme:e})=>e.colors.neutral800};
162
- line-height: ${({theme:e})=>e.lineHeights[6]};
163
-
164
- h1,
165
- h2,
166
- h3,
167
- h4,
168
- h5,
169
- h6 {
170
- margin-block-start: ${({theme:e})=>e.spaces[2]};
171
- margin-block-end: ${({theme:e})=>e.spaces[2]};
172
- }
173
-
174
- p {
175
- margin-bottom: ${({theme:e})=>e.spaces[2]};
176
- }
177
-
178
- h1 {
179
- font-size: ${36/16}rem;
180
- font-weight: 600;
181
- }
182
-
183
- h2 {
184
- font-size: ${30/16}rem;
185
- font-weight: 500;
186
- }
187
-
188
- h3 {
189
- font-size: ${24/16}rem;
190
- font-weight: 500;
191
- }
192
-
193
- h4 {
194
- font-size: ${20/16}rem;
195
- font-weight: 500;
196
- }
197
-
198
- strong {
199
- font-weight: 800;
200
- }
201
-
202
- em {
203
- font-style: italic;
204
- }
205
-
206
- blockquote {
207
- margin-top: ${({theme:e})=>e.spaces[8]};
208
- margin-bottom: ${({theme:e})=>e.spaces[7]};
209
- font-size: ${14/16}rem;
210
- font-weight: 400;
211
- border-left: 4px solid ${({theme:e})=>e.colors.neutral150};
212
- font-style: italic;
213
- padding: ${({theme:e})=>e.spaces[2]} ${({theme:e})=>e.spaces[5]};
214
- }
215
-
216
- img {
217
- max-width: 100%;
218
- }
219
-
220
- table {
221
- thead {
222
- background: ${({theme:e})=>e.colors.neutral150};
223
-
224
- th {
225
- padding: ${({theme:e})=>e.spaces[4]};
226
- }
227
- }
228
- tr {
229
- border: 1px solid ${({theme:e})=>e.colors.neutral200};
230
- }
231
- th,
232
- td {
233
- padding: ${({theme:e})=>e.spaces[4]};
234
- border: 1px solid ${({theme:e})=>e.colors.neutral200};
235
- border-bottom: 0;
236
- border-top: 0;
237
- }
238
- }
239
-
240
- pre,
241
- code {
242
- font-size: ${14/16}rem;
243
- border-radius: 4px;
244
- /*
245
- Hard coded since the color is the same between themes,
246
- theme.colors.neutral800 changes between themes.
247
-
248
- Matches the color of the JSON Input component.
249
- */
250
- background-color: #32324d;
251
- max-width: 100%;
252
- overflow: auto;
253
- padding: ${({theme:e})=>e.spaces[2]};
254
- }
255
-
256
- /* Inline code */
257
- p,
258
- pre,
259
- td {
260
- > code {
261
- color: #839496;
262
- }
263
- }
264
-
265
- ol {
266
- list-style-type: decimal;
267
- margin-block-start: ${({theme:e})=>e.spaces[4]};
268
- margin-block-end: ${({theme:e})=>e.spaces[4]};
269
- margin-inline-start: 0px;
270
- margin-inline-end: 0px;
271
- padding-inline-start: ${({theme:e})=>e.spaces[4]};
272
-
273
- ol,
274
- ul {
275
- margin-block-start: 0px;
276
- margin-block-end: 0px;
277
- }
278
- }
279
-
280
- ul {
281
- list-style-type: disc;
282
- margin-block-start: ${({theme:e})=>e.spaces[4]};
283
- margin-block-end: ${({theme:e})=>e.spaces[4]};
284
- margin-inline-start: 0px;
285
- margin-inline-end: 0px;
286
- padding-inline-start: ${({theme:e})=>e.spaces[4]};
287
-
288
- ul,
289
- ol {
290
- margin-block-start: 0px;
291
- margin-block-end: 0px;
292
- }
293
- }
294
- `;const kn=({data:e})=>{const r=(0,t.useMemo)(()=>Ki(Ui.render(e.replaceAll("\\n",`
295
- `)||"")),[e]);return t.createElement(Qi,null,t.createElement("div",{dangerouslySetInnerHTML:{__html:r}}))};kn.defaultProps={data:""},kn.propTypes={data:n().string};var wo=(0,t.memo)(kn);const Yi=w.default.div`
296
- cursor: ${({disabled:e})=>e?"not-allowed !important":"auto"};
297
- height: 100%;
298
- /* BASICS */
299
- .CodeMirror-placeholder {
300
- color: ${({theme:e})=>e.colors.neutral600} !important;
301
- }
302
-
303
- .CodeMirror {
304
- /* Set height, width, borders, and global font properties here */
305
- font-size: ${14/16}rem;
306
- height: ${({isExpandMode:e})=>e?"100%":"290px"};
307
- color: ${({theme:e})=>e.colors.neutral800};
308
- direction: ltr;
309
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell,
310
- 'Open Sans', 'Helvetica Neue', sans-serif;
311
- }
312
-
313
- /* PADDING */
314
-
315
- .CodeMirror-lines {
316
- padding: ${({theme:e})=>`${e.spaces[3]} ${e.spaces[4]}`};
317
- /* Vertical padding around content */
318
- }
319
-
320
- .CodeMirror-scrollbar-filler,
321
- .CodeMirror-gutter-filler {
322
- /* The little square between H and V scrollbars */
323
- background-color: ${({theme:e})=>`${e.colors.neutral0}`};
324
- }
325
-
326
- /* GUTTER */
327
-
328
- .CodeMirror-gutters {
329
- border-right: 1px solid #ddd;
330
- background-color: #f7f7f7;
331
- white-space: nowrap;
332
- }
333
- .CodeMirror-linenumbers {
334
- }
335
- .CodeMirror-linenumber {
336
- padding: 0 3px 0 5px;
337
- min-width: 20px;
338
- text-align: right;
339
- color: #999;
340
- white-space: nowrap;
341
- }
342
-
343
- .CodeMirror-guttermarker {
344
- color: black;
345
- }
346
- .CodeMirror-guttermarker-subtle {
347
- color: #999;
348
- }
349
-
350
- /* CURSOR */
351
-
352
- .CodeMirror-cursor {
353
- border-left: 1px solid black;
354
- border-right: none;
355
- width: 0;
356
- }
357
- /* Shown when moving in bi-directional text */
358
- .CodeMirror div.CodeMirror-secondarycursor {
359
- border-left: 1px solid silver;
360
- }
361
- .cm-fat-cursor .CodeMirror-cursor {
362
- width: auto;
363
- border: 0 !important;
364
- background: #7e7;
365
- }
366
- .cm-fat-cursor div.CodeMirror-cursors {
367
- /* z-index: 1; */
368
- }
369
-
370
- .cm-fat-cursor-mark {
371
- background-color: rgba(20, 255, 20, 0.5);
372
- -webkit-animation: blink 1.06s steps(1) infinite;
373
- -moz-animation: blink 1.06s steps(1) infinite;
374
- animation: blink 1.06s steps(1) infinite;
375
- }
376
- .cm-animate-fat-cursor {
377
- width: auto;
378
- border: 0;
379
- -webkit-animation: blink 1.06s steps(1) infinite;
380
- -moz-animation: blink 1.06s steps(1) infinite;
381
- animation: blink 1.06s steps(1) infinite;
382
- background-color: #7e7;
383
- }
384
-
385
- /* Can style cursor different in overwrite (non-insert) mode */
386
- .CodeMirror-overwrite .CodeMirror-cursor {
387
- }
388
-
389
- .cm-tab {
390
- display: inline-block;
391
- text-decoration: inherit;
392
- }
393
-
394
- .CodeMirror-rulers {
395
- position: absolute;
396
- left: 0;
397
- right: 0;
398
- top: -50px;
399
- bottom: 0;
400
- overflow: hidden;
401
- }
402
- .CodeMirror-ruler {
403
- border-left: 1px solid #ccc;
404
- top: 0;
405
- bottom: 0;
406
- position: absolute;
407
- }
408
-
409
- /* DEFAULT THEME */
410
-
411
- .cm-header,
412
- .cm-strong {
413
- font-weight: bold;
414
- }
415
- .cm-em {
416
- font-style: italic;
417
- }
418
- .cm-link {
419
- text-decoration: underline;
420
- }
421
- .cm-strikethrough {
422
- text-decoration: line-through;
423
- }
424
-
425
- .CodeMirror-composing {
426
- border-bottom: 2px solid;
427
- }
428
-
429
- /* Default styles for common addons */
430
-
431
- div.CodeMirror span.CodeMirror-matchingbracket {
432
- color: #0b0;
433
- }
434
- div.CodeMirror span.CodeMirror-nonmatchingbracket {
435
- color: #a22;
436
- }
437
- .CodeMirror-matchingtag {
438
- background: rgba(255, 150, 0, 0.3);
439
- }
440
- .CodeMirror-activeline-background {
441
- background: #e8f2ff;
442
- }
443
-
444
- /* STOP */
445
-
446
- /* The rest of this file contains styles related to the mechanics of
447
- the editor. You probably shouldn't touch them. */
448
-
449
- .CodeMirror {
450
- position: relative;
451
- overflow: hidden;
452
- background: ${({theme:e})=>`${e.colors.neutral0}`};
453
- }
454
-
455
- .CodeMirror-scroll {
456
- overflow: scroll !important; /* Things will break if this is overridden */
457
- /* 50px is the magic margin used to hide the element's real scrollbars */
458
- /* See overflow: hidden in .CodeMirror */
459
- margin-bottom: -50px;
460
- margin-right: -50px;
461
- padding-bottom: 50px;
462
- height: 100%;
463
- outline: none; /* Prevent dragging from highlighting the element */
464
- position: relative;
465
- }
466
- .CodeMirror-sizer {
467
- position: relative;
468
- border-right: 50px solid transparent;
469
- }
470
-
471
- /* The fake, visible scrollbars. Used to force redraw during scrolling
472
- before actual scrolling happens, thus preventing shaking and
473
- flickering artifacts. */
474
- .CodeMirror-vscrollbar,
475
- .CodeMirror-hscrollbar,
476
- .CodeMirror-scrollbar-filler,
477
- .CodeMirror-gutter-filler {
478
- position: absolute;
479
- z-index: 1;
480
- display: none;
481
- outline: none;
482
- }
483
-
484
- .CodeMirror-vscrollbar {
485
- right: 0;
486
- top: 0;
487
- overflow-x: hidden;
488
- overflow-y: scroll;
489
- }
490
- .CodeMirror-hscrollbar {
491
- bottom: 0;
492
- left: 0;
493
- overflow-y: hidden;
494
- overflow-x: scroll;
495
- }
496
- .CodeMirror-scrollbar-filler {
497
- right: 0;
498
- bottom: 0;
499
- }
500
-
501
- .CodeMirror-lines {
502
- cursor: text;
503
- min-height: 1px; /* prevents collapsing before first draw */
504
- }
505
- /* Reset some styles that the rest of the page might have set */
506
- .CodeMirror pre.CodeMirror-line,
507
- .CodeMirror pre.CodeMirror-line-like {
508
- -moz-border-radius: 0;
509
- -webkit-border-radius: 0;
510
- border-radius: 0;
511
- border-width: 0;
512
- background: transparent;
513
- font-family: inherit;
514
- font-size: inherit;
515
- margin: 0;
516
- white-space: pre;
517
- word-wrap: normal;
518
- line-height: 1.5;
519
- color: inherit;
520
- /* z-index: 2; */
521
- position: relative;
522
- overflow: visible;
523
- -webkit-tap-highlight-color: transparent;
524
- -webkit-font-variant-ligatures: contextual;
525
- font-variant-ligatures: contextual;
526
- }
527
-
528
- .CodeMirror pre.CodeMirror-line-like {
529
- z-index: 2;
530
- }
531
-
532
- .CodeMirror-wrap pre.CodeMirror-line,
533
- .CodeMirror-wrap pre.CodeMirror-line-like {
534
- word-wrap: break-word;
535
- white-space: pre-wrap;
536
- word-break: normal;
537
- }
538
-
539
- .CodeMirror-linebackground {
540
- position: absolute;
541
- left: 0;
542
- right: 0;
543
- top: 0;
544
- bottom: 0;
545
- z-index: 0;
546
- }
547
-
548
- .CodeMirror-linewidget {
549
- position: relative;
550
- /* z-index: 2; */
551
- padding: 0.1px; /* Force widget margins to stay inside of the container */
552
- }
553
-
554
- .CodeMirror-widget {
555
- }
556
-
557
- .CodeMirror-rtl pre {
558
- direction: rtl;
559
- }
560
-
561
- .CodeMirror-code {
562
- outline: none;
563
- }
564
-
565
- /* Force content-box sizing for the elements where we expect it */
566
- .CodeMirror-scroll,
567
- .CodeMirror-sizer,
568
- .CodeMirror-gutter,
569
- .CodeMirror-gutters,
570
- .CodeMirror-linenumber {
571
- -moz-box-sizing: content-box;
572
- box-sizing: content-box;
573
- }
574
-
575
- .CodeMirror-measure {
576
- position: absolute;
577
- width: 100%;
578
- height: 0;
579
- overflow: hidden;
580
- visibility: hidden;
581
- }
582
-
583
- .CodeMirror-cursor {
584
- position: absolute;
585
- pointer-events: none;
586
- border-color: ${({theme:e})=>`${e.colors.neutral800}`};
587
- }
588
- .CodeMirror-measure pre {
589
- position: static;
590
- }
591
-
592
- div.CodeMirror-cursors {
593
- visibility: hidden;
594
- position: relative;
595
- + div {
596
- z-index: 0 !important;
597
- }
598
- }
599
-
600
- div.CodeMirror-dragcursors {
601
- visibility: visible;
602
- }
603
-
604
- .CodeMirror-focused div.CodeMirror-cursors {
605
- visibility: visible;
606
- }
607
-
608
- .CodeMirror-selected {
609
- background: ${({theme:e})=>e.colors.neutral200};
610
- /* z-index: -10; */
611
- }
612
- .CodeMirror-crosshair {
613
- cursor: crosshair;
614
- }
615
-
616
- /* Used to force a border model for a node */
617
- .cm-force-border {
618
- padding-right: 0.1px;
619
- }
620
-
621
- /* See issue #2901 */
622
- .cm-tab-wrap-hack:after {
623
- content: '';
624
- }
625
-
626
- /* Help users use markselection to safely style text background */
627
- span.CodeMirror-selectedtext {
628
- background: none;
629
- }
630
-
631
- span {
632
- color: ${({theme:e})=>e.colors.neutral800} !important;
633
- }
634
- `;var Po=m(69783);const Fe=(0,w.default)(Ne.h)`
635
- padding: ${({theme:e})=>e.spaces[2]};
636
- /* Trick to prevent the outline from overflowing because of the general outline-offset */
637
- outline-offset: -2px !important;
638
-
639
- svg {
640
- width: ${18/16}rem;
641
- height: ${18/16}rem;
642
- }
643
- `,Ji=(0,w.default)(Fe)`
644
- svg {
645
- width: ${8/16}rem;
646
- height: ${8/16}rem;
647
- }
648
- `,Ao=(0,w.default)(Ne.o)`
649
- margin-left: ${({theme:e})=>e.spaces[4]};
650
- `,Oo=(0,w.default)(Ne.h)`
651
- margin: ${({theme:e})=>`0 ${e.spaces[2]}`};
652
- padding: ${({theme:e})=>e.spaces[2]};
653
-
654
- svg {
655
- width: ${18/16}rem;
656
- height: ${18/16}rem;
657
- }
658
- `,Xi=(0,w.default)(Ne.o)`
659
- margin-right: ${({theme:e})=>`${e.spaces[2]}`};
660
- `,_i=w.default.div`
661
- position: relative;
662
- height: calc(100% - 48px);
663
- `,el=(0,w.default)(Po.Y)`
664
- background-color: transparent;
665
- border: none;
666
- align-items: center;
667
-
668
- svg {
669
- margin-left: ${({theme:e})=>`${e.spaces[2]}`};
670
- path {
671
- fill: ${({theme:e})=>e.colors.neutral700};
672
- width: ${12/16}rem;
673
- height: ${12/16}rem;
674
- }
675
- }
676
- `;var Jt=/^(\s*)(>[> ]*|[*+-] \[[x ]\]\s|[*+-]\s|(\d+)([.)]))(\s*)/,tl=/^(\s*)(>[> ]*|[*+-] \[[x ]\]|[*+-]|(\d+)[.)])(\s*)$/,nl=/[*+-]\s/;function rl(e){if(e.getOption("disableInput"))return Yt().Pass;for(var r=e.listSelections(),o=[],s=0;s<r.length;s++){var a=r[s].head,l=e.getStateAfter(a.line),i=l.list!==!1,c=l.quote!==0,u=e.getLine(a.line),d=Jt.exec(u),p=/^\s*$/.test(u.slice(0,a.ch));if(!r[s].empty()||!i&&!c||!d||p){e.execCommand("newlineAndIndent");return}if(tl.test(u)){var f=c&&/>\s*$/.test(u),g=!/>\s*$/.test(u);(f||g)&&e.replaceRange("",{line:a.line,ch:0},{line:a.line,ch:a.ch+1}),o[s]=`
677
- `}else{var y=d[1],b=d[5],E=!(nl.test(d[2])||d[2].indexOf(">")>=0),x=E?parseInt(d[3],10)+1+d[4]:d[2].replace("x"," ");o[s]=`
678
- `+y+x+b,E&&ol(e,a)}}e.replaceSelections(o)}function ol(e,r){var o=r.line,s=0,a=0,l=Jt.exec(e.getLine(o)),i=l[1];do{s+=1;var c=o+s,u=e.getLine(c),d=Jt.exec(u);if(d){var p=d[1],f=parseInt(l[3],10)+s-a,g=parseInt(d[3],10),y=g;if(i===p&&!isNaN(g))f===g&&(y=g+1),f>g&&(y=f+1),e.replaceRange(u.replace(Jt,p+y+d[4]+d[5]),{line:c,ch:0},{line:c,ch:u.length});else{if(i.length>p.length||i.length<p.length&&s===1)return;a+=1}}}while(d)}var sl=rl;const xn=({disabled:e,editorRef:r,error:o,isPreviewMode:s,isExpandMode:a,name:l,onChange:i,placeholder:c,textareaRef:u,value:d})=>{const p=(0,t.useRef)(i);return(0,t.useEffect)(()=>{r.current=Yt().fromTextArea(u.current,{lineWrapping:!0,extraKeys:{Enter:"newlineAndIndentContinueMarkdownList",Tab:!1,"Shift-Tab":!1},readOnly:!1,smartIndent:!1,placeholder:c,spellcheck:!0,inputStyle:"contenteditable"}),Yt().commands.newlineAndIndentContinueMarkdownList=sl,r.current.on("change",f=>{p.current({target:{name:l,value:f.getValue(),type:"wysiwyg"}})})},[r,u,l,c]),(0,t.useEffect)(()=>{d&&!r.current.hasFocus()&&r.current.setValue(d)},[r,d]),(0,t.useEffect)(()=>{s||e?r.current.setOption("readOnly","nocursor"):r.current.setOption("readOnly",!1)},[e,s,r]),(0,t.useEffect)(()=>{o?r.current.setOption("screenReaderLabel",o):r.current.setOption("screenReaderLabel","Editor")},[r,o]),t.createElement(_i,null,t.createElement(Yi,{isExpandMode:a,disabled:e||s},t.createElement("textarea",{ref:u})),s&&t.createElement(wo,{data:d}))};xn.defaultProps={disabled:!1,error:void 0,isPreviewMode:!1,isExpandMode:!1,placeholder:"",value:""},xn.propTypes={disabled:n().bool,editorRef:n().shape({current:n().any}).isRequired,error:n().string,isPreviewMode:n().bool,isExpandMode:n().bool,name:n().string.isRequired,onChange:n().func.isRequired,placeholder:n().string,textareaRef:n().shape({current:n().any}).isRequired,value:n().string};var al=xn,il=m(67563),Ee=m(41415),We=m(70218),De=m(84967),ll=m(46406),$o=m(73906),No=m(49844),Bo=m(99283),cl=m(83139),dl=m(35635),ul=m(20063),ml=m(80601),pl=m(11417),gl=m(43231),fl=m(65663),qo=m(49825);const In=({disabled:e,editorRef:r,isExpandMode:o,isPreviewMode:s,onActionClick:a,onToggleMediaLib:l,onTogglePreviewMode:i})=>{const[c,u]=(0,t.useState)(!1),{formatMessage:d}=(0,q.useIntl)(),p=d({id:"components.Wysiwyg.selectOptions.title",defaultMessage:"Add a title"}),f=(0,t.useRef)(),g=()=>{u(y=>!y)};return e||s?t.createElement(H.x,{padding:2,background:"neutral100"},t.createElement(_.k,{justifyContent:"space-between"},t.createElement(_.k,null,t.createElement(We.P,{disabled:!0,id:"selectTitle",placeholder:p,size:"S","aria-label":p},t.createElement(De.W,{value:"h1"},"h1"),t.createElement(De.W,{value:"h2"},"h2"),t.createElement(De.W,{value:"h3"},"h3"),t.createElement(De.W,{value:"h4"},"h4"),t.createElement(De.W,{value:"h5"},"h5"),t.createElement(De.W,{value:"h6"},"h6")),t.createElement(Ao,null,t.createElement(Fe,{disabled:!0,id:"Bold",label:"Bold",name:"Bold",icon:t.createElement($o.Z,null)}),t.createElement(Fe,{disabled:!0,id:"Italic",label:"Italic",name:"Italic",icon:t.createElement(No.Z,null)}),t.createElement(Fe,{disabled:!0,id:"Underline",label:"Underline",name:"Underline",icon:t.createElement(Bo.Z,null)})),t.createElement(Oo,{disabled:!0,id:"more",label:"More",icon:t.createElement(qo.Z,null)})),!o&&t.createElement(Ee.z,{onClick:i,variant:"tertiary",id:"preview"},d({id:"components.Wysiwyg.ToggleMode.markdown-mode",defaultMessage:"Markdown mode"})))):t.createElement(H.x,{padding:2,background:"neutral100"},t.createElement(_.k,{justifyContent:"space-between"},t.createElement(_.k,null,t.createElement(We.P,{id:"selectTitle",placeholder:p,size:"S",onChange:y=>a(y,r)},t.createElement(De.W,{value:"h1"},"h1"),t.createElement(De.W,{value:"h2"},"h2"),t.createElement(De.W,{value:"h3"},"h3"),t.createElement(De.W,{value:"h4"},"h4"),t.createElement(De.W,{value:"h5"},"h5"),t.createElement(De.W,{value:"h6"},"h6")),t.createElement(Ao,null,t.createElement(Fe,{onClick:()=>a("Bold",r),id:"Bold",label:"Bold",name:"Bold",icon:t.createElement($o.Z,null)}),t.createElement(Fe,{onClick:()=>a("Italic",r),id:"Italic",label:"Italic",name:"Italic",icon:t.createElement(No.Z,null)}),t.createElement(Fe,{onClick:()=>a("Underline",r),id:"Underline",label:"Underline",name:"Underline",icon:t.createElement(Bo.Z,null)})),t.createElement(Oo,{ref:f,onClick:g,id:"more",label:"More",icon:t.createElement(qo.Z,null)}),c&&t.createElement(ll.J,{centered:!0,source:f,spacing:4,id:"popover"},t.createElement(il.i,{onEscape:g,restoreFocus:!1},t.createElement(_.k,null,t.createElement(Xi,null,t.createElement(Fe,{onClick:()=>a("Strikethrough",r,g),id:"Strikethrough",label:"Strikethrough",name:"Strikethrough",icon:t.createElement(cl.Z,null)}),t.createElement(Fe,{onClick:()=>a("BulletList",r,g),id:"BulletList",label:"BulletList",name:"BulletList",icon:t.createElement(dl.Z,null)}),t.createElement(Fe,{onClick:()=>a("NumberList",r,g),id:"NumberList",label:"NumberList",name:"NumberList",icon:t.createElement(ul.Z,null)})),t.createElement(Ne.o,null,t.createElement(Fe,{onClick:()=>a("Code",r,g),id:"Code",label:"Code",name:"Code",icon:t.createElement(ml.Z,null)}),t.createElement(Fe,{onClick:()=>{g(),l()},id:"Image",label:"Image",name:"Image",icon:t.createElement(pl.Z,null)}),t.createElement(Ji,{onClick:()=>a("Link",r,g),id:"Link",label:"Link",name:"Link",icon:t.createElement(gl.Z,null)}),t.createElement(Fe,{onClick:()=>a("Quote",r,g),id:"Quote",label:"Quote",name:"Quote",icon:t.createElement(fl.Z,null)})))))),i&&t.createElement(Ee.z,{onClick:i,variant:"tertiary",id:"preview"},d({id:"components.Wysiwyg.ToggleMode.preview-mode",defaultMessage:"Preview mode"}))))};In.defaultProps={isPreviewMode:!1,onActionClick(){},onToggleMediaLib(){},onTogglePreviewMode:void 0},In.propTypes={disabled:n().bool.isRequired,editorRef:n().shape({current:n().any}).isRequired,isExpandMode:n().bool.isRequired,isPreviewMode:n().bool,onActionClick:n().func,onToggleMediaLib:n().func,onTogglePreviewMode:n().func};var hl=In,yl=m(18070);const Ln=({onToggleExpand:e})=>{const{formatMessage:r}=(0,q.useIntl)();return t.createElement(H.x,{padding:2,background:"neutral100",hasRadius:!0},t.createElement(_.k,{justifyContent:"flex-end",alignItems:"flex-end"},t.createElement(el,{id:"expand",onClick:e},t.createElement(G.Z,null,r({id:"components.WysiwygBottomControls.fullscreen",defaultMessage:"Expand"})),t.createElement(yl.Z,null))))};Ln.defaultProps={onToggleExpand(){}},Ln.propTypes={onToggleExpand:n().func};var bl=Ln;const Sn=({id:e,error:r,name:o,hint:s})=>s.length===0||r?null:t.createElement(G.Z,{as:"p",variant:"pi",id:`${e||o}-hint`,textColor:"neutral600"},s);Sn.defaultProps={id:void 0,error:void 0,hint:""},Sn.propTypes={hint:n().oneOfType([n().string,n().array]),error:n().string,id:n().string,name:n().string.isRequired};var El=Sn;const jo=(e,r)=>{let o;switch(e){case"Strikethrough":o=`~~${r}~~`;break;case"Bold":o=`**${r}**`;break;case"Italic":o=`_${r}_`;break;case"Underline":o=`<u>${r}</u>`;break;case"Code":o=`\`\`\`
679
- ${r}
680
- \`\`\``;break;case"Link":o=`[${r}](link)`;break;case"Quote":o=`>${r}`;break;default:o=r}return o},Zo=e=>{let r,o={start:e.length,end:0};switch(e){case"Strikethrough":r=`~~${e}~~`,o.end=2;break;case"Bold":r=`**${e}**`,o.end=2;break;case"Italic":r=`_${e}_`,o.end=1;break;case"alt":r=`[${e}]()`,o.end=3;break;case"Underline":r=`<u>${e}</u>`,o.end=4;break;case"Code":r=`\`\`\`
681
- ${e}
682
- \`\`\``,o.end=3;break;case"Link":r=`[${e}](link)`,o.end=7;break;case"Quote":r=`>${e}`,o.end=0;break;default:r=""}return{editedText:r,selection:o}},zo=e=>{let r;switch(e){case"BulletList":r="- ";break;case"NumberList":r="1. ";break;case"h1":r="# ";break;case"h2":r="## ";break;case"h3":r="### ";break;case"h4":r="#### ";break;case"h5":r="##### ";break;case"h6":r="###### ";break;default:return""}return r},Vo=(e,r)=>{const o=e.current.getSelection();let s;if(o){const a=jo(r,o);e.current.replaceSelection(a),e.current.focus()}else{s=Zo(r),e.current.replaceSelection(s.editedText),e.current.focus();const{line:a,ch:l}=e.current.getCursor(),i=l-s.selection.end,c=l-s.selection.end-s.selection.start;e.current.setSelection({line:a,ch:c},{line:a,ch:i})}},Cl=(e,r)=>{const o=e.current.getDoc(),s=r==="BulletList"?"- ":"1. ";if(o.somethingSelected()){const a=o.listSelections();let l=null;e.current.operation(function(){a.forEach(function(i){const c=[i.head.line,i.anchor.line].sort();l==null&&(l=o.getLine(c[0]).startsWith(s));for(let u=c[0];u<=c[1];u++)if(l)o.getLine(u).startsWith(s)&&o.replaceRange("",{line:u,ch:0},{line:u,ch:s.length});else{const d=r==="BulletList"?"- ":`${u+1}. `;o.replaceRange(d,{line:u,ch:0})}})})}else{let{line:a}=o.getCursor();const l=zo(r),i=e.current.getLine(a),c=l+i;e.current.setSelection({line:a,ch:0},{line:a,ch:i.length}),e.current.replaceSelection(c)}e.current.focus()},vl=(e,r)=>{let{line:o}=e.current.getCursor();const s=zo(r),a=e.current.getLine(o),l=a.replace(/#{1,6}\s/g,"").trim(),i=s+l;e.current.setSelection({line:o,ch:0},{line:o,ch:a.length}),e.current.replaceSelection(i),setTimeout(()=>{const c=e.current.getLine(o).length;e.current.focus(),e.current.setCursor({line:o,ch:c})},0)},Rl=(e,r)=>{let{line:o,ch:s}=e.current.getCursor();r.forEach((a,l)=>{let i=e.current.getLine(o).length;e.current.setCursor({line:o,ch:i}),(l>0||l===0&&s!==0)&&(i=e.current.getLine(o).length,e.current.setCursor({line:o,ch:i}),o++,e.current.replaceSelection(`
683
- `)),a.mime.includes("image")?e.current.replaceSelection(`![${a.alt}](${a.url})`):e.current.replaceSelection(`[${a.alt}](${a.url})`)}),setTimeout(()=>e.current.focus(),0)},Tl=(e,r,o,s,a)=>{const l=jo(r,a),i=e.current.getRange({line:o+1,ch:0},{line:1/0,ch:1/0});if(e.current.replaceRange("",{line:o+1,ch:0},{line:1/0,ch:1/0}),e.current.replaceSelection(""),e.current.setCursor({line:o,ch:s}),e.current.replaceSelection(`
684
- `),e.current.replaceSelection(l),r==="Code"){let{line:c}=e.current.getCursor();e.current.setCursor({line:c-1,ch:a.length})}e.current.replaceRange(i,{line:o+4,ch:0},{line:1/0,ch:1/0}),e.current.focus()},Ml=(e,r,o,s)=>{const a=Zo(r),l=e.current.getRange({line:o+1,ch:0},{line:1/0,ch:1/0});if(e.current.replaceRange("",{line:o+1,ch:0},{line:1/0,ch:1/0}),e.current.setCursor({line:o,ch:s}),e.current.replaceSelection(`
685
- `),e.current.replaceSelection(a.editedText),r==="Code")o+=2,e.current.setSelection({line:o,ch:0},{line:o,ch:4});else{o+=1;let{ch:i}=e.current.getCursor(),c=i-a.selection.end,u=i-a.selection.end-a.selection.start;e.current.setSelection({line:o,ch:u},{line:o,ch:c})}e.current.replaceRange(l,{line:o+2,ch:0},{line:1/0,ch:1/0}),e.current.focus()},Dl=(e,r)=>{const o=e.current.getSelection();let{line:s}=e.current.getCursor(),a=e.current.getLine(s).length;o?Tl(e,r,s,a,o):Ml(e,r,s,a)},kl=(e,r)=>`${e}${Math.floor(r*255).toString(16).padStart(2,0)}`,xl=(0,w.default)(P.Flex)`
686
- background: ${({theme:e})=>kl(e.colors.neutral800,.2)};
687
- `,Il=(0,w.default)(P.Box)`
688
- border-right: 1px solid ${({theme:e})=>e.colors.neutral200};
689
- `,Ll=(0,w.default)(P.BaseButton)`
690
- background-color: transparent;
691
- border: none;
692
- align-items: center;
693
-
694
- svg {
695
- margin-left: ${({theme:e})=>`${e.spaces[2]}`};
696
-
697
- path {
698
- fill: ${({theme:e})=>e.colors.neutral700};
699
- width: ${12/16}rem;
700
- height: ${12/16}rem;
701
- }
702
- }
703
- `,Fn=({children:e,isExpandMode:r,error:o,previewContent:s,onCollapse:a})=>{const{formatMessage:l}=(0,q.useIntl)();return(0,h.useLockScroll)(r),r?t.createElement(P.Portal,{role:"dialog","aria-modal":!1},t.createElement(P.FocusTrap,{onEscape:a},t.createElement(xl,{position:"fixed",top:0,left:0,right:0,bottom:0,zIndex:4,justifyContent:"center",onClick:a},t.createElement(P.Box,{background:"neutral0",hasRadius:!0,shadow:"popupShadow",overflow:"hidden",width:"70%",height:"70%",onClick:i=>i.stopPropagation()},t.createElement(P.Flex,{height:"100%",alignItems:"flex-start"},t.createElement(Il,{flex:"1",height:"100%"},e),t.createElement(P.Flex,{alignItems:"start",direction:"column",flex:1,height:"100%",width:"100%"},t.createElement(P.Flex,{height:(0,h.pxToRem)(48),background:"neutral100",justifyContent:"flex-end",shrink:0,width:"100%"},t.createElement(Ll,{onClick:a},t.createElement(P.Typography,null,l({id:"components.Wysiwyg.collapse",defaultMessage:"Collapse"})),t.createElement(Oe.Collapse,null))),t.createElement(P.Box,{position:"relative",height:"100%",width:"100%"},t.createElement(wo,{data:s})))))))):t.createElement(P.Box,{borderColor:o?"danger600":"neutral200",borderStyle:"solid",borderWidth:"1px",hasRadius:!0},e)};Fn.defaultProps={error:void 0,previewContent:""},Fn.propTypes={children:n().node.isRequired,error:n().string,isExpandMode:n().bool.isRequired,previewContent:n().string,onCollapse:n().func.isRequired};const Sl=(0,w.default)(H.x)`
704
- svg path {
705
- fill: ${({theme:e})=>e.colors.neutral500};
706
- }
707
- `,Fl=(0,w.default)(G.Z)`
708
- line-height: 0;
709
- `,wn=({hint:e,disabled:r,error:o,intlLabel:s,labelAction:a,name:l,onChange:i,placeholder:c,value:u,required:d})=>{const{formatMessage:p}=(0,q.useIntl)(),f=(0,t.useRef)(null),g=(0,t.useRef)(null),[y,b]=(0,t.useState)(!1),[E,x]=(0,t.useState)(!1),[C,R]=(0,t.useState)(!1),{components:A}=(0,h.useLibrary)(),T=A["media-library"],D=()=>x(j=>!j),I=()=>b(j=>!j),F=()=>{b(!1),R(j=>!j)},z=(j,N,S)=>{switch(j){case"Link":case"Strikethrough":{Vo(N,j),S();break}case"Code":case"Quote":{Dl(N,j),S();break}case"Bold":case"Italic":case"Underline":{Vo(N,j);break}case"BulletList":case"NumberList":{Cl(N,j),S();break}case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":{vl(N,j);break}default:}},U=j=>{const N=j.map(S=>({alt:S.alternativeText||S.name,url:(0,h.prefixFileUrlWithBackendUrl)(S.url),mime:S.mime}));Rl(g,N),x(!1)},B=c?p({id:c.id,defaultMessage:c.defaultMessage},{...c.values}):"",K=s.id?p({id:s.id,defaultMessage:s.defaultMessage},{...s.values}):l;return t.createElement(t.Fragment,null,t.createElement(de.K,{spacing:1},t.createElement(de.K,{horizontal:!0,spacing:1},t.createElement(G.Z,{variant:"pi",fontWeight:"bold",textColor:"neutral800"},K,d&&t.createElement(Fl,{textColor:"danger600"},"*")),a&&t.createElement(Sl,{paddingLeft:1},a)),t.createElement(Fn,{isExpandMode:C,error:o,previewContent:u,onCollapse:F},t.createElement(hl,{isExpandMode:C,editorRef:g,isPreviewMode:y,onActionClick:z,onToggleMediaLib:D,onTogglePreviewMode:C?void 0:I,disabled:r}),t.createElement(al,{disabled:r,isExpandMode:C,editorRef:g,error:o,isPreviewMode:y,name:l,onChange:i,placeholder:B,textareaRef:f,value:u}),!C&&t.createElement(bl,{onToggleExpand:F})),t.createElement(El,{hint:e,name:l,error:o})),o&&t.createElement(H.x,{paddingTop:1},t.createElement(G.Z,{variant:"pi",textColor:"danger600","data-strapi-field-error":!0},o)),E&&t.createElement(T,{onClose:D,onSelectAssets:U}))};wn.defaultProps={disabled:!1,error:"",labelAction:void 0,placeholder:null,required:!1,value:"",hint:""},wn.propTypes={hint:n().oneOfType([n().string,n().array]),disabled:n().bool,error:n().string,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,labelAction:n().element,name:n().string.isRequired,onChange:n().func.isRequired,placeholder:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}),required:n().bool,value:n().string};var wl=wn,Pl=m(16285),Al=m.n(Pl),Ol=m(37475);const $l=w.default.div`
710
- cursor: ${({disabled:e})=>e?"not-allowed !important":"auto"};
711
- /* BASICS */
712
-
713
- .colored {
714
- background-color: yellow;
715
- color: black !important;
716
- }
717
-
718
- > div {
719
- border-radius: 3px;
720
- > div:last-of-type {
721
- min-height: 253px;
722
- max-height: 506px;
723
- }
724
- }
725
-
726
- .CodeMirror {
727
- /* Set height, width, borders, and global font properties here */
728
- font-size: ${14/16}rem;
729
- direction: ltr;
730
- z-index: 0;
731
- }
732
- `,Nl=(0,w.default)(H.x)`
733
- border-radius: ${({theme:e})=>e.borderRadius};
734
- border: 1px solid ${({theme:e,error:r})=>r?e.colors.danger600:"transparent"};
735
- `,Pn=({intlLabel:e,labelAction:r,name:o})=>{const{formatMessage:s}=(0,q.useIntl)(),a=e?.id?s({id:e.id,defaultMessage:e.defaultMessage},{...e.values}):o;return t.createElement(to.Q,{action:r},a)};Pn.defaultProps={id:void 0,intlLabel:void 0,labelAction:void 0},Pn.propTypes={id:n().string,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}),labelAction:n().element,name:n().string.isRequired};var Bl=Pn;const An=({name:e,hint:r,error:o,children:s,required:a})=>{const{formatMessage:l}=(0,q.useIntl)(),i=o?l({id:o,defaultMessage:o}):"";return t.createElement(eo.g,{name:e,hint:r&&l(r),error:i,id:e,required:a},s)};An.defaultProps={hint:void 0,error:"",required:!1},An.propTypes={name:n().string.isRequired,hint:n().shape({id:n().string,defaultMessage:n().string}),error:n().string,children:n().node.isRequired,required:n().bool};var ql=An;const jl=600,Zl="blackboard";(async()=>{await m.e(3860).then(m.t.bind(m,87541,23)),await m.e(2781).then(m.t.bind(m,80249,23)),await m.e(953).then(m.t.bind(m,54745,23)),await m.e(5178).then(m.t.bind(m,3903,23)),await m.e(5509).then(m.t.bind(m,59577,23)),await m.e(3973).then(m.bind(m,65701)),await m.e(2218).then(m.bind(m,88333))})();class On extends t.Component{timer=null;constructor(r){super(r),this.editor=t.createRef(),this.state={error:!1,markedText:null}}componentDidMount(){this.codeMirror=Yt().fromTextArea(this.editor.current,{autoCloseBrackets:!0,lineNumbers:!0,matchBrackets:!0,mode:"application/json",readOnly:this.props.disabled,smartIndent:!0,styleSelectedText:!0,tabSize:2,theme:Zl,fontSize:"13px"}),this.codeMirror.on("change",this.handleChange),this.setSize(),this.setInitValue()}componentDidUpdate(r){r.value!==this.props.value&&!this.codeMirror.state.focused&&this.setInitValue()}setInitValue=()=>{const{value:r}=this.props;try{return r===null?this.codeMirror.setValue(""):r===0?this.codeMirror.setValue("0"):this.codeMirror.setValue(r)}catch{return this.setState({error:!0})}};setSize=()=>this.codeMirror.setSize("100%","auto");getContentAtLine=r=>this.codeMirror.getLine(r);markSelection=({message:r})=>{let o=parseInt(r.split(":")[0].split("line ")[1],10)-1,s=this.getContentAtLine(o);s==="{"&&(o+=1,s=this.getContentAtLine(o));const a=s.length,l=a-Al()(s," ").length,i=this.codeMirror.markText({line:o,ch:l},{line:o,ch:a},{className:"colored"});this.setState({markedText:i})};handleChange=(r,o)=>{if(o.origin==="setValue")return;const{name:s,onChange:a}=this.props;let l=r.getValue();l===""&&(l=null),a({target:{name:s,value:l,type:"json"}}),this.state.markedText&&(this.state.markedText.clear(),this.setState({markedText:null,error:null})),clearTimeout(this.timer),this.timer=setTimeout(()=>this.testJSON(r.getValue()),jl)};testJSON=r=>{try{Ol.parse(r)}catch(o){this.markSelection(o)}};render(){return this.state.error?t.createElement("div",null,"error json"):t.createElement(ql,{name:this.props.name,hint:this.props.description,error:this.props.error,required:this.props.required},t.createElement(de.K,{spacing:1},t.createElement(Bl,{intlLabel:this.props.intlLabel,name:this.props.name,labelAction:this.props.labelAction}),t.createElement(Nl,{error:this.props.error},t.createElement($l,{disabled:this.props.disabled},t.createElement("textarea",{ref:this.editor,autoComplete:"off",id:this.props.id||this.props.name,defaultValue:""}))),t.createElement(no.J,null),t.createElement(ro.c,null)))}}On.defaultProps={description:null,disabled:!1,id:void 0,error:void 0,intlLabel:void 0,labelAction:void 0,onChange(){},value:null,required:!1},On.propTypes={description:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}),disabled:n().bool,error:n().string,id:n().string,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}),labelAction:n().element,name:n().string.isRequired,onChange:n().func,value:n().any,required:n().bool};var zl=On,$n=m(10369),Vl=m(38705),Lt=m(69932),Wl=m(27169),Wo=(e,r)=>{const[o,s]=(0,t.useState)(e);return(0,t.useEffect)(()=>{const a=setTimeout(()=>{s(e)},r);return()=>{clearTimeout(a)}},[e,r]),o},Ul=/^[A-Za-z0-9-_.~]*$/,Hl=m(63642);const Gl=(0,w.default)(H.x)`
736
- position: relative;
737
- `,Kl=(0,w.default)(Hl.E)`
738
- svg {
739
- height: 1rem;
740
- width: 1rem;
741
- path {
742
- fill: ${({theme:e})=>e.colors.neutral400};
743
- }
744
- }
745
-
746
- svg:hover {
747
- path {
748
- fill: ${({theme:e})=>e.colors.primary600};
749
- }
750
- }
751
- `,Nn=(0,w.default)(_.k)`
752
- position: absolute;
753
- right: ${({theme:e})=>e.spaces[6]};
754
- width: 100px;
755
- pointer-events: none;
756
-
757
- svg {
758
- margin-right: ${({theme:e})=>e.spaces[1]};
759
- height: ${12/16}rem;
760
- width: ${12/16}rem;
761
- path {
762
- fill: ${({theme:e,notAvailable:r})=>r?e.colors.danger600:e.colors.success600};
763
- }
764
- }
765
- `,Ql=w.keyframes`
766
- from {
767
- transform: rotate(0deg);
768
- }
769
- to {
770
- transform: rotate(359deg);
771
- }
772
- `,Yl=(0,w.default)(_.k)`
773
- animation: ${Ql} 2s infinite linear;
774
- `,Bn=({attribute:e,contentTypeUID:r,hint:o,disabled:s,error:a,intlLabel:l,labelAction:i,name:c,onChange:u,value:d,placeholder:p,required:f})=>{const{modifiedData:g,initialData:y,layout:b}=(0,h.useCMEditViewDataManager)(),[E,x]=(0,t.useState)(!1),[C,R]=(0,t.useState)(null),A=Wo(d,300),T=(0,t.useRef)(),D=y[c],{formatMessage:I}=(0,q.useIntl)(),F=L()(b,["options","timestamps",0]),z=!y[F],U=Wo(g[e.targetField],300),[B,K]=(0,t.useState)(!1),[j,N]=(0,t.useState)(null),S=l.id?I({id:l.id,defaultMessage:l.defaultMessage},{...l.values}):c,J=p?I({id:p.id,defaultMessage:p.defaultMessage},{...p.values}):"";T.current=async(V=!1)=>{x(!0);const Z=he("uid/generate");try{const{data:{data:O}}=await ge.be.post(Z,{contentTypeUID:r,field:c,data:g});u({target:{name:c,value:O,type:"text"}},V),x(!1)}catch{x(!1)}};const $=async()=>{x(!0);const V=he("uid/check-availability");if(!!d)try{const{data:Z}=await ge.be.post(V,{contentTypeUID:r,field:c,value:d?d.trim():""});R(Z),x(!1)}catch{x(!1)}};(0,t.useEffect)(()=>{!d&&e.required&&T.current(!0)},[]),(0,t.useEffect)(()=>{A&&A.trim().match(Ul)&&A!==D&&$(),A||R(null)},[A,D]),(0,t.useEffect)(()=>{let V;return C&&C.isAvailable&&(V=setTimeout(()=>{R(null)},4e3)),()=>{V&&clearTimeout(V)}},[C]),(0,t.useEffect)(()=>{!B&&z&&U&&g[e.targetField]&&!d&&T.current(!0)},[U,B,z]);const Y=()=>{N(I({id:"content-manager.components.uid.regenerate",defaultMessage:"Regenerate"}))},M=()=>{N(null)},k=V=>{V.target.value&&z&&K(!0),u(V)};return t.createElement($n.o,{disabled:s,error:a,endAction:t.createElement(Gl,null,C&&C.isAvailable&&!j&&t.createElement(Nn,{alignItems:"center",justifyContent:"flex-end"},t.createElement(Vl.Z,null),t.createElement(G.Z,{textColor:"success600",variant:"pi"},I({id:"content-manager.components.uid.available",defaultMessage:"Available"}))),C&&!C.isAvailable&&!j&&t.createElement(Nn,{notAvailable:!0,alignItems:"center",justifyContent:"flex-end"},t.createElement(Lt.default,null),t.createElement(G.Z,{textColor:"danger600",variant:"pi"},I({id:"content-manager.components.uid.unavailable",defaultMessage:"Unavailable"}))),j&&t.createElement(Nn,{alignItems:"center",justifyContent:"flex-end"},t.createElement(G.Z,{textColor:"primary600",variant:"pi"},j)),t.createElement(Kl,{onClick:()=>T.current(),label:"regenerate",onMouseEnter:Y,onMouseLeave:M},E?t.createElement(Yl,null,t.createElement(Wl.Z,null)):t.createElement(so.Z,null))),hint:o,label:S,labelAction:i,name:c,onChange:k,placeholder:J,value:d||"",required:f})};Bn.propTypes={attribute:n().shape({targetField:n().string,required:n().bool}).isRequired,contentTypeUID:n().string.isRequired,disabled:n().bool,error:n().string,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,labelAction:n().element,name:n().string.isRequired,onChange:n().func.isRequired,value:n().string,placeholder:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}),required:n().bool,hint:n().oneOfType([n().string,n().array])},Bn.defaultProps={disabled:!1,error:void 0,labelAction:void 0,placeholder:void 0,value:"",required:!1,hint:""};var Jl=Bn,Xl=m(88423),qn=m.n(Xl),it=m(84968);function _l(e,r){return o=>{const s=r(o);return t.createElement(e,{...o,...s})}}var ec=_l;function tc({componentUid:e,isUserAllowedToEditField:r,isUserAllowedToReadField:o,name:s,queryInfos:a}){const{isCreatingEntry:l,createActionAllowedFields:i,readActionAllowedFields:c,updateActionAllowedFields:u,slug:d,modifiedData:p}=(0,h.useCMEditViewDataManager)(),f=(0,t.useMemo)(()=>r===!0?!0:(l?i:u).includes(s),[l,i,s,r,u]),g=(0,t.useMemo)(()=>o?!0:(l?[]:c).includes(s),[l,o,s,c]),y=s.split(".");let b;e&&(b=L()(p,y.slice(0,-1))?.id);const E=(0,t.useMemo)(()=>l?null:e?b?he(`relations/${e}/${b}/${y.at(-1)}`):null:he(`relations/${d}/${p.id}/${s.split(".").at(-1)}`),[l,e,d,p.id,s,b,y]),x=(0,t.useMemo)(()=>he(e?`relations/${e}/${s.split(".").at(-1)}`:`relations/${d}/${s.split(".").at(-1)}`),[e,d,s]);return{componentId:b,isComponentRelation:Boolean(e),queryInfos:{...a,endpoints:{search:x,relation:E}},isCreatingEntry:l,isFieldAllowed:f,isFieldReadable:g}}var nc=tc;function rc(e,r){return`${he(`collectionType/${e}/${r??""}`)}`}const jn=(e,{shouldAddLink:r,mainFieldName:o,targetModel:s})=>{const a={...e};return r&&(a.href=rc(s,a.id)),a.publicationState=!1,a?.publishedAt!==void 0&&(a.publicationState=a.publishedAt?st.PUBLISHED:st.DRAFT),a.mainField=a[o],a},oc=(e,{shouldAddLink:r=!1,mainFieldName:o,targetModel:s}={})=>[...e].map(a=>jn(a,{shouldAddLink:r,mainFieldName:o,targetModel:s})),sc=(e,{mainFieldName:r})=>{const{data:o}=e,{pages:s=[]}=o??{};return{...e,data:s.map(a=>a?.results.map(l=>jn(l,{mainFieldName:r}))).filter(Boolean).flat()}},ac=(e=[],r=[])=>{const o=e.reduce((a,l)=>r.find(i=>i.id===l.id)?a:[...a,l.id],[]),s=r.reduce((a,l)=>e.find(i=>i.id===l.id)?a:[...a,l.id],[]);return[o,s]},ic=e=>{const r=t.useRef(e);return t.useEffect(()=>{r.current=e}),t.useMemo(()=>(...o)=>r.current?.(...o),[])},lc=(e,{relation:r,search:o})=>{const[s,a]=(0,t.useState)({}),[l,i]=(0,t.useState)(0),c=async({pageParam:T=1})=>{try{const{data:D}=await ge.be.get(r?.endpoint,{params:{...r.pageParams??{},page:T}});return i(T),D}catch{return null}},u=async({pageParam:T=1})=>{try{const{data:D}=await ge.be.get(o.endpoint,{params:{...o.pageParams??{},...s,page:T}});return D}catch{return null}},{onLoad:d,normalizeArguments:p={}}=r,f=(0,it.useInfiniteQuery)(["relation",e],c,{cacheTime:0,enabled:r.enabled,getNextPageParam(T){const D=!T?.pagination;if(!(!T||D||T?.pagination.page>=T?.pagination.pageCount))return T.pagination.page+1},select:T=>({...T,pages:T.pages.map(D=>{if(!D)return D;const{data:I,results:F,pagination:z}=D,U=!!I;let B=[];return U?B=[I]:F&&(B=[...F].reverse()),{pagination:z,results:B}})})}),{pageGoal:g}=r,{status:y,data:b,fetchNextPage:E,hasNextPage:x}=f;(0,t.useEffect)(()=>{g>l&&x&&y==="success"&&E({pageParam:l+1})},[g,l,E,x,y]);const C=ic(d);(0,t.useEffect)(()=>{if(y==="success"&&b&&b.pages?.at(-1)?.results&&C){const T=oc(b.pages.at(-1).results,p);C(T)}},[y,C,b]);const R=(0,it.useInfiniteQuery)(["relation",e,"search",JSON.stringify(s)],u,{enabled:Object.keys(s).length>0,getNextPageParam(T){if(!(!T?.pagination||T.pagination.page>=T.pagination.pageCount))return T.pagination.page+1}});return{relations:f,search:R,searchFor:(T,D={})=>{a({...D,_q:T})}}},Uo=(e,r)=>o=>{const s=o.split(".");return s.reduce((a,l,i)=>{const c=(0,te.get)(e,a),u=(0,te.get)(r,[...s.slice(0,i),l,"__temp_key__"]);if(Array.isArray(c)&&typeof u=="number"){const d=c.findIndex(p=>p.__temp_key__===u);return a.push(d.toString()),a}return a.push(l),a},[])},Zn=({error:e,componentId:r,isComponentRelation:o,editable:s,description:a,intlLabel:l,isCreatingEntry:i,isFieldAllowed:c,isFieldReadable:u,labelAction:d,mainField:p,name:f,queryInfos:{endpoints:g,defaultParams:y,shouldDisplayRelationLink:b},placeholder:E,required:x,relationType:C,size:R,targetModel:A})=>{const[T,D]=(0,t.useState)(""),{formatMessage:I}=(0,q.useIntl)(),{slug:F,initialData:z,modifiedData:U,relationConnect:B,relationDisconnect:K,relationLoad:j,relationReorder:N}=(0,h.useCMEditViewDataManager)(),S=f.split("."),J=Uo(z,U)(f),$=L()(U,f,[]),Y=Math.ceil(L()(z,f,[]).length/gn),M=`${F}-${J.join(".")}`,{relations:k,search:V,searchFor:Z}=lc(M,{relation:{enabled:!!g.relation,endpoint:g.relation,pageGoal:Y,pageParams:{...y,pageSize:gn},onLoad(me){j({target:{initialDataPath:["initialData",...J],modifiedDataPath:["modifiedData",...S],value:me}})},normalizeArguments:{mainFieldName:p.name,shouldAddLink:b,targetModel:A}},search:{endpoint:g.search,pageParams:{...y,entityId:i?void 0:o?r:z.id,pageSize:Ra}}}),O=(0,t.useMemo)(()=>C.toLowerCase().includes("morph"),[C]),Q=["oneWay","oneToOne","manyToOne","oneToManyMorph","oneToOneMorph"].includes(C),oe=(0,t.useMemo)(()=>O?!0:i?!s:!c&&u||!s,[O,i,s,c,u]),Me=me=>{const Re=jn(me,{mainFieldName:p.name,shouldAddLink:b,targetModel:A});B({name:f,value:Re,toOneRelation:Q})},W=me=>{K({name:f,id:me.id})},fe=()=>{k.fetchNextPage()},we=(me="")=>{const[Re,nt]=ac($,L()(z,f));Z(me,{idsToInclude:nt,idsToOmit:Re})},He=()=>{V.fetchNextPage()},tt=me=>`${me+1} of ${$.length}`,$t=(me,Re)=>{const nt=$[me];D(I({id:v("dnd.reorder"),defaultMessage:"{item}, moved. New position in list: {position}."},{item:nt.mainField??nt.id,position:tt(Re)})),N({name:f,newIndex:Re,oldIndex:me})},Nt=me=>{const Re=$[me];D(I({id:v("dnd.grab-item"),defaultMessage:"{item}, grabbed. Current position in list: {position}. Press up and down arrow to change position, Spacebar to drop, Escape to cancel."},{item:Re.mainField??Re.id,position:tt(me)}))},Bt=me=>{const Re=$[me];D(I({id:v("dnd.drop-item"),defaultMessage:"{item}, dropped. Final position in list: {position}."},{item:Re.mainField??Re.id,position:tt(me)}))},Ge=me=>{const Re=$[me];D(I({id:v("dnd.cancel-item"),defaultMessage:"{item}, dropped. Re-order cancelled."},{item:Re.mainField??Re.id}))};if(!c&&i||!i&&!c&&!u)return t.createElement(h.NotAllowedInput,{name:f,intlLabel:l,labelAction:d});const Be=$.length,Tt=(L()(z,J)??[]).length,ct=k.data?.pages[0]?.pagination?.total??0,ye=!k.data&&Be===Tt?Be:Be-Tt+ct;return t.createElement(Xa,{error:e,canReorder:!Q,description:a,disabled:oe,iconButtonAriaLabel:I({id:v("components.RelationInput.icon-button-aria-label"),defaultMessage:"Drag"}),id:f,label:`${I({id:l.id,defaultMessage:l.defaultMessage})} ${ye>0?`(${ye})`:""}`,labelAction:d,labelLoadMore:i?null:I({id:v("relation.loadMore"),defaultMessage:"Load More"}),labelDisconnectRelation:I({id:v("relation.disconnect"),defaultMessage:"Remove"}),listAriaDescription:I({id:v("dnd.instructions"),defaultMessage:"Press spacebar to grab and re-order"}),listHeight:320,liveText:T,loadingMessage:I({id:v("relation.isLoading"),defaultMessage:"Relations are loading"}),name:f,noRelationsMessage:I({id:v("relation.notAvailable"),defaultMessage:"No relations available"}),numberOfRelationsToDisplay:gn,onDropItem:Bt,onGrabItem:Nt,onCancel:Ge,onRelationConnect:Me,onRelationDisconnect:W,onRelationLoadMore:fe,onRelationReorder:$t,onSearch:me=>we(me),onSearchNextPage:()=>He(),placeholder:I(E||{id:v("relation.add"),defaultMessage:"Add relation"}),publicationStateTranslations:{[st.DRAFT]:I({id:v("relation.publicationState.draft"),defaultMessage:"Draft"}),[st.PUBLISHED]:I({id:v("relation.publicationState.published"),defaultMessage:"Published"})},relations:qn()({...k,data:$},"data","hasNextPage","isFetchingNextPage","isLoading","isSuccess"),required:x,searchResults:sc(V,{mainFieldName:p.name}),size:R})};Zn.defaultProps={componentId:void 0,editable:!0,error:void 0,description:"",labelAction:null,isComponentRelation:!1,isFieldAllowed:!0,placeholder:null,required:!1},Zn.propTypes={componentId:n().number,editable:n().bool,error:n().string,description:n().string,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,labelAction:n().element,isCreatingEntry:n().bool.isRequired,isComponentRelation:n().bool,isFieldAllowed:n().bool,isFieldReadable:n().bool.isRequired,mainField:n().shape({name:n().string.isRequired,schema:n().shape({type:n().string.isRequired}).isRequired}).isRequired,name:n().string.isRequired,placeholder:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}),required:n().bool,relationType:n().string.isRequired,size:n().number.isRequired,targetModel:n().string.isRequired,queryInfos:n().shape({defaultParams:n().shape({locale:n().string}),endpoints:n().shape({relation:n().string,search:n().string.isRequired}).isRequired,shouldDisplayRelationLink:n().bool.isRequired}).isRequired};const cc=(0,t.memo)(Zn);var dc=ec(cc,nc);function uc(e,r){return o=>{const s=r(o.keys);return t.createElement(e,{...o,...s})}}var mc=uc,pc=(e,r=!1)=>[{metadatas:{intlLabel:{id:"components.InputSelect.option.placeholder",defaultMessage:"Choose here"},disabled:r,hidden:r},key:"__enum_option_null",value:""},...e.map(o=>({metadatas:{intlLabel:{id:o,defaultMessage:o},hidden:!1,disabled:!1},key:o,value:o}))],gc=(e="")=>{switch((0,te.toLower)(e)){case"boolean":return"bool";case"biginteger":return"text";case"decimal":case"float":case"integer":return"number";case"date":case"datetime":case"time":return e;case"email":return"email";case"enumeration":return"select";case"password":return"password";case"string":return"text";case"text":return"textarea";case"media":case"file":case"files":return"media";case"json":return"json";case"wysiwyg":case"WYSIWYG":case"richtext":return"wysiwyg";case"uid":return"uid";default:return e||"text"}},fc=e=>{let r;return e==="float"||e==="decimal"?r=.01:r=1,r};function hc(e){const{createActionAllowedFields:r,formErrors:o,isCreatingEntry:s,modifiedData:a,onChange:l,readActionAllowedFields:i,shouldNotRunValidations:c,updateActionAllowedFields:u}=(0,h.useCMEditViewDataManager)(),d=(0,t.useMemo)(()=>s?r:u,[s,r,u]),p=(0,t.useMemo)(()=>s?[]:i,[s,i]),f=(0,te.get)(a,e,null);return{allowedFields:d,formErrors:o,isCreatingEntry:s,onChange:l,readableFields:p,shouldNotRunValidations:c,value:f}}var yc=hc,Ho=["type","model","via","collection","default","plugin","enum","regex","pluginOptions"];function zn({allowedFields:e,componentUid:r,fieldSchema:o,formErrors:s,isCreatingEntry:a,keys:l,labelAction:i,metadatas:c,onChange:u,readableFields:d,shouldNotRunValidations:p,queryInfos:f,value:g,size:y,customFieldInputs:b}){const{fields:E}=(0,h.useLibrary)(),{formatMessage:x}=(0,q.useIntl)(),{contentType:C}=Je(),R=(0,t.useMemo)(()=>!L()(c,"editable",!0),[c]),{type:A,customField:T}=o,D=L()(s,[l],null),I=(0,t.useMemo)(()=>Kr(l),[l]),F=(0,t.useMemo)(()=>{const oe=Ti()(o,p?[...Ho,"required","minLength"]:Ho),Me=o.regex||null;if(Me){const W=new RegExp(Me);W&&(oe.regex=W)}return oe},[o,p]),z=(0,t.useMemo)(()=>L()(F,["required"],!1),[F]),U=(0,t.useMemo)(()=>{const oe=L()(C,["attributes"],{});return L()(oe,[I[0],"type"],null)==="dynamiczone"},[C,I]),B=(0,t.useMemo)(()=>gc(A),[A]),K=(0,t.useMemo)(()=>A==="media"&&!g?[]:g,[A,g]),j=(0,t.useMemo)(()=>fc(A),[A]),N=(0,t.useMemo)(()=>{const oe=I.join(".");if(e.includes(oe))return!0;if(U)return e.includes(I[0]);if(I.length>1){const W=Mn()(I,I.length-1).join(".");return e.includes(W)}return!1},[e,I,U]),S=(0,t.useMemo)(()=>{const oe=I.join(".");if(d.includes(oe))return!0;if(U)return d.includes(I[0]);if(I.length>1){const W=Mn()(I,I.length-1).join(".");return d.includes(W)}return!1},[d,I,U]),J=(0,t.useMemo)(()=>S||N,[N,S]),$=(0,t.useMemo)(()=>a?R:S&&!N?!0:R,[R,a,N,S]),Y=(0,t.useMemo)(()=>pc(o.enum||[],z),[o,z]),{label:M,description:k,placeholder:V,visible:Z}=c,O=(0,t.useMemo)(()=>{if(!c.step||B!=="datetime"&&B!=="time")return j;if(!K)return c.step;let oe;return B==="datetime"?oe=parseInt(K.substr(14,2),10):B==="time"&&(oe=parseInt(K.slice(-2),10)),oe%c.step===0?c.step:j},[B,K,c.step,j]);if(Z===!1)return null;if(!J)return t.createElement(h.NotAllowedInput,{description:k?{id:k,defaultMessage:k}:null,intlLabel:{id:M,defaultMessage:M},labelAction:i,error:D&&x(D),name:l,required:z});if(A==="relation")return t.createElement(dc,{...c,...o,componentUid:r,description:c.description?x({id:c.description,defaultMessage:c.description}):void 0,intlLabel:{id:c.label,defaultMessage:c.label},labelAction:i,isUserAllowedToEditField:N,isUserAllowedToReadField:S,name:l,placeholder:c.placeholder?{id:c.placeholder,defaultMessage:c.placeholder}:null,queryInfos:f,size:y,value:g,error:D&&x(D)});const Q={json:zl,uid:Jl,media:E.media,wysiwyg:wl,...E,...b};return t.createElement(h.GenericInput,{attribute:o,autoComplete:"new-password",intlLabel:{id:M,defaultMessage:M},isNullable:B==="bool"&&[null,void 0].includes(o.default),description:k?{id:k,defaultMessage:k}:null,disabled:$,error:D,labelAction:i,contentTypeUID:C.uid,customInputs:Q,multiple:o.multiple||!1,name:l,onChange:u,options:Y,placeholder:V?{id:V,defaultMessage:V}:null,required:o.required||!1,step:O,type:T||B,value:K,withDefaultValue:!1})}zn.defaultProps={componentUid:void 0,formErrors:{},labelAction:void 0,size:void 0,value:null,queryInfos:{},customFieldInputs:{}},zn.propTypes={allowedFields:n().array.isRequired,componentUid:n().string,fieldSchema:n().object.isRequired,formErrors:n().object,keys:n().string.isRequired,isCreatingEntry:n().bool.isRequired,labelAction:n().element,metadatas:n().object.isRequired,onChange:n().func.isRequired,readableFields:n().array.isRequired,size:n().number,shouldNotRunValidations:n().bool.isRequired,value:n().any,queryInfos:n().shape({containsKey:n().string,defaultParams:n().object,endPoint:n().string}),customFieldInputs:n().object};const bc=(0,t.memo)(zn,Xe());var Vn=mc(bc,yc);const yt=new Map;var Wn=(e=[])=>{const[r,o]=(0,t.useState)(Object.fromEntries(yt)),[s,a]=(0,t.useState)(()=>yt.size===0&&e.length>0),l=(0,h.useCustomFields)();(0,t.useEffect)(()=>{const c=d=>{o(d),a(!1)},u=async(d,p)=>{const f=await Promise.all(p);d.forEach((g,y)=>{yt.set(g,f[y].default)}),c(Object.fromEntries(yt))};if(e.length&&s){const d=e.filter(f=>!yt.get(f)),p=d.map(f=>l.get(f).components.Input());p.length>0&&u(d,p)}},[e,l,s]);const i=(0,t.useCallback)(()=>{yt.clear(),o({})},[]);return{isLazyLoading:s,lazyComponentStore:r,cleanup:i}};const Un=({componentUid:e,isFromDynamicZone:r,isNested:o,name:s})=>{const{getComponentLayout:a}=Je(),i=(0,t.useMemo)(()=>a(e),[e,a]).layouts.edit,{lazyComponentStore:c}=Wn();return t.createElement(H.x,{background:r?"":"neutral100",paddingLeft:6,paddingRight:6,paddingTop:6,paddingBottom:6,hasRadius:o,borderColor:o?"neutral200":""},t.createElement(de.K,{spacing:6},i.map((u,d)=>t.createElement(Ve.r,{gap:4,key:d},u.map(({name:p,size:f,metadatas:g,fieldSchema:y,queryInfos:b})=>{const E=y.type==="component",x=`${s}.${p}`;if(E){const C=y.component;return t.createElement(ke.P,{col:f,s:12,xs:12,key:p},t.createElement(Xt,{componentUid:C,intlLabel:{id:g.label,defaultMessage:g.label},isNested:!0,isRepeatable:y.repeatable,max:y.max,min:y.min,name:x,required:y.required||!1}))}return t.createElement(ke.P,{col:f,key:p,s:12,xs:12},t.createElement(Vn,{componentUid:e,keys:x,fieldSchema:y,metadatas:g,queryInfos:b,size:f,customFieldInputs:c}))})))))};Un.defaultProps={isFromDynamicZone:!1,isNested:!1},Un.propTypes={componentUid:n().string.isRequired,isFromDynamicZone:n().bool,isNested:n().bool,name:n().string.isRequired};var Ec=Un,Cc=m(41119),Go=m.n(Cc);const vc=w.default.span`
775
- display: block;
776
- background-color: ${({theme:e})=>e.colors.primary100};
777
- outline: 1px dashed ${({theme:e})=>e.colors.primary500};
778
- outline-offset: -1px;
779
- padding: ${({theme:e})=>e.spaces[6]};
780
- `;var Rc=()=>t.createElement(vc,{padding:6,background:"primary100"});const Tc=(0,w.default)(P.IconButton)`
781
- background-color: transparent;
782
-
783
- svg {
784
- path {
785
- fill: ${({theme:e,expanded:r})=>r?e.colors.primary600:e.colors.neutral600};
786
- }
787
- }
788
-
789
- &:hover {
790
- svg {
791
- path {
792
- fill: ${({theme:e})=>e.colors.primary600};
793
- }
794
- }
795
- }
796
- `,Mc=(0,w.default)(P.Stack)`
797
- & .drag-handle {
798
- background: unset;
799
-
800
- svg {
801
- path {
802
- fill: ${({theme:e,expanded:r})=>r?e.colors.primary600:void 0};
803
- }
804
- }
805
-
806
- &:hover {
807
- svg {
808
- path {
809
- /* keeps the hover style of the accordion */
810
- fill: ${({theme:e})=>e.colors.primary600};
811
- }
812
- }
813
- }
814
- }
815
- `,Hn=({componentFieldName:e,componentUid:r,fields:o,index:s,isOpen:a,isReadOnly:l,mainField:i,moveComponentField:c,onClickToggle:u,toggleCollapses:d,onGrabItem:p,onDropItem:f,onCancel:g})=>{const{modifiedData:y,removeRepeatableField:b,triggerFormValidation:E}=(0,h.useCMEditViewDataManager)(),x=Go()(L()(y,[...e.split("."),i],"")),C=(0,t.useRef)(null),{formatMessage:R}=(0,q.useIntl)(),[A]=e.split("."),[{handlerId:T,isDragging:D,handleKeyDown:I},F,z,U,B]=fn(!l,{type:`${be.COMPONENT}_${A}`,index:s,item:{displayedValue:x},onMoveItem:c,onStart(){d()},onEnd(){E()},onGrabItem:p,onDropItem:f,onCancel:g});(0,t.useEffect)(()=>{B((0,kt.rX)(),{captureDraggingState:!1})},[B,s]);const K=Zt(C,U),j=Zt(F,z),{lazyComponentStore:N}=Wn();return t.createElement(P.Box,{ref:j},D?t.createElement(Rc,null):t.createElement(P.Accordion,{expanded:a,onToggle:u,id:e,size:"S"},t.createElement(P.AccordionToggle,{action:l?null:t.createElement(Mc,{horizontal:!0,spacing:0,expanded:a},t.createElement(Tc,{expanded:a,noBorder:!0,onClick:()=>{b(e),d()},label:R({id:v("containers.Edit.delete"),defaultMessage:"Delete"}),icon:t.createElement(Oe.Trash,null)}),t.createElement(P.IconButton,{className:"drag-handle",ref:K,forwardedAs:"div",role:"button",noBorder:!0,tabIndex:0,onClick:S=>S.stopPropagation(),"data-handler-id":T,label:R({id:v("components.DragHandle-label"),defaultMessage:"Drag"}),onKeyDown:I},t.createElement(Oe.Drag,null))),title:x,togglePosition:"left"}),t.createElement(P.AccordionContent,null,t.createElement(P.Stack,{background:"neutral100",padding:6,spacing:6},o.map((S,J)=>t.createElement(P.Grid,{gap:4,key:J},S.map(({name:$,fieldSchema:Y,metadatas:M,queryInfos:k,size:V})=>{const Z=Y.type==="component",O=`${e}.${$}`;if(Z){const Q=Y.component;return t.createElement(P.GridItem,{col:V,s:12,xs:12,key:$},t.createElement(Xt,{componentUid:Q,intlLabel:{id:M.label,defaultMessage:M.label},isRepeatable:Y.repeatable,isNested:!0,name:O,max:Y.max,min:Y.min,required:Y.required}))}return t.createElement(P.GridItem,{key:O,col:V,s:12,xs:12},t.createElement(Vn,{componentUid:r,fieldSchema:Y,keys:O,metadatas:M,queryInfos:k,size:V,customFieldInputs:N}))})))))))};Hn.defaultProps={componentUid:void 0,fields:[],isReadOnly:!1,isOpen:!1,onGrabItem:void 0,onDropItem:void 0,onCancel:void 0,toggleCollapses(){}},Hn.propTypes={componentFieldName:n().string.isRequired,componentUid:n().string,fields:n().array,index:n().number.isRequired,isOpen:n().bool,isReadOnly:n().bool,mainField:n().string.isRequired,moveComponentField:n().func.isRequired,onGrabItem:n().func,onDropItem:n().func,onCancel:n().func,onClickToggle:n().func.isRequired,toggleCollapses:n().func};var Dc=(0,t.memo)(Hn);const kc=(0,w.default)(P.Box)`
816
- overflow: hidden;
817
- border-bottom: 1px solid ${({theme:e})=>e.colors.neutral200};
818
- border-right: 1px solid ${({theme:e})=>e.colors.neutral200};
819
- border-left: 1px solid ${({theme:e})=>e.colors.neutral200};
820
- border-radius: 0 0 ${({theme:e})=>e.borderRadius} ${({theme:e})=>e.borderRadius};
821
- `,xc=(0,w.default)(P.Box)`
822
- border-bottom: none;
823
-
824
- /* add the borders and make sure the top is transparent to avoid jumping with the hover effect */
825
- & > div > div {
826
- border: 1px solid ${({theme:e})=>e.colors.neutral200};
827
- border-top-color: transparent;
828
- }
829
-
830
- /* the top accordion _does_ need a border though */
831
- & > div:first-child > div {
832
- border-top: 1px solid ${({theme:e})=>e.colors.neutral200};
833
- }
834
-
835
- /* Reset all the border-radius' */
836
- & > div > div,
837
- & > div > div > div {
838
- border-radius: unset;
839
- }
840
-
841
- /* Give the border radius back to the first accordion */
842
- & > div:first-child > div,
843
- & > div:first-child > div > div {
844
- border-radius: ${({theme:e})=>e.borderRadius} ${({theme:e})=>e.borderRadius} 0 0;
845
- }
846
-
847
- & > div > div[data-strapi-expanded='true'] {
848
- border: 1px solid ${({theme:e})=>e.colors.primary600};
849
- }
850
- `,Gn=({children:e,error:r})=>{const{formatMessage:o}=(0,q.useIntl)();return t.createElement(P.KeyboardNavigable,{attributeName:"data-strapi-accordion-toggle"},e,r&&t.createElement(P.Box,{paddingTop:1},t.createElement(P.Typography,{variant:"pi",textColor:"danger600"},o({id:r.id,defaultMessage:r.defaultMessage},{...r.values}))))};Gn.defaultProps={error:void 0},Gn.propTypes={children:n().node.isRequired,error:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object})};function Ic(e,r={}){return Object.keys(r).filter(o=>o.startsWith(e)).map(o=>o.split(".").slice(0,e.split(".").length+1).join("."))}const Lc=(0,w.default)(P.TextButton)`
851
- height: 100%;
852
- width: 100%;
853
- border-radius: 0 0 4px 4px;
854
- display: flex;
855
- justify-content: center;
856
- span {
857
- font-weight: 600;
858
- font-size: 14px;
859
- }
860
- `,Kn=({componentUid:e,componentValue:r,componentValueLength:o,isReadOnly:s,max:a,min:l,name:i})=>{const{addRepeatableComponentToField:c,formErrors:u,moveComponentField:d}=(0,h.useCMEditViewDataManager)(),p=(0,h.useNotification)(),{formatMessage:f}=(0,q.useIntl)(),[g,y]=(0,t.useState)(""),[b,E]=(0,t.useState)(""),{getComponentLayout:x,components:C}=Je(),R=(0,t.useMemo)(()=>x(e),[e,x]),A=(0,t.useMemo)(()=>Wt(r||[])+1,[r]),T=Ic(i,u),D=l-o,I=L()(u,i,{id:""}).id.includes("min"),F=()=>{y("")},z=()=>{s||(o<a?(c(i,R,C,I),y(A)):o>=a&&p({type:"info",message:{id:v("components.notification.info.maximum-requirement")}}))},U=(M,k)=>{E(f({id:v("dnd.reorder"),defaultMessage:"{item}, moved. New position in list: {position}."},{item:`${i}.${k}`,position:j(M)})),d({name:i,newIndex:M,currentIndex:k})},B=L()(R,["settings","mainField"],"id"),K=M=>()=>{y(g===M?"":M)},j=M=>`${M+1} of ${o}`,N=M=>{E(f({id:v("dnd.cancel-item"),defaultMessage:"{item}, dropped. Re-order cancelled."},{item:`${i}.${M}`}))},S=M=>{E(f({id:v("dnd.grab-item"),defaultMessage:"{item}, grabbed. Current position in list: {position}. Press up and down arrow to change position, Spacebar to drop, Escape to cancel."},{item:`${i}.${M}`,position:j(M)}))},J=M=>{E(f({id:v("dnd.drop-item"),defaultMessage:"{item}, dropped. Final position in list: {position}."},{item:`${i}.${M}`,position:j(M)}))};let $=u[i];if(I?$={id:v("components.DynamicZone.missing-components"),defaultMessage:"There {number, plural, =0 {are # missing components} one {is # missing component} other {are # missing components}}",values:{number:D}}:T.some(M=>M.split(".").length>1)&&!I&&($={id:v("components.RepeatableComponent.error-message"),defaultMessage:"The component(s) contain error(s)"}),o===0)return t.createElement(Lo,{error:$,isReadOnly:s,onClick:z});const Y=`${i}-item-instructions`;return t.createElement(P.Box,{hasRadius:!0},t.createElement(P.VisuallyHidden,{id:Y},f({id:v("dnd.instructions"),defaultMessage:"Press spacebar to grab and re-order"})),t.createElement(P.VisuallyHidden,{"aria-live":"assertive"},b),t.createElement(Gn,{error:$,ariaDescribedBy:Y},t.createElement(xc,{"aria-describedby":Y},r.map(({__temp_key__:M},k)=>t.createElement(Dc,{componentFieldName:`${i}.${k}`,componentUid:e,fields:R.layouts.edit,key:M,index:k,isOpen:g===M,isReadOnly:s,mainField:B,moveComponentField:U,onClickToggle:K(M),toggleCollapses:F,onCancel:N,onDropItem:J,onGrabItem:S}))),t.createElement(kc,null,t.createElement(P.Flex,{justifyContent:"center",height:"48px",background:"neutral0"},t.createElement(Lc,{disabled:s,onClick:z,startIcon:t.createElement(Oe.Plus,null)},f({id:v("containers.EditView.add.new-entry"),defaultMessage:"Add an entry"}))))))};Kn.defaultProps={componentValue:null,componentValueLength:0,isReadOnly:!1,max:1/0,min:0},Kn.propTypes={componentUid:n().string.isRequired,componentValue:n().oneOfType([n().array,n().object]),componentValueLength:n().number,isReadOnly:n().bool,max:n().number,min:n().number,name:n().string.isRequired};var Sc=(0,t.memo)(Kn);const Qn=({addNonRepeatableComponentToField:e,componentUid:r,intlLabel:o,isCreatingEntry:s,isFromDynamicZone:a,isRepeatable:l,isNested:i,labelAction:c,max:u,min:d,name:p,hasChildrenAllowedFields:f,hasChildrenReadableFields:g,isReadOnly:y,componentValue:b,removeComponentFromField:E,required:x})=>{const{formatMessage:C}=(0,q.useIntl)(),R=gi()(b),A=b!==null||a,T=!l&&A&&!a&&f,{getComponentLayout:D,components:I}=Je(),F=(0,t.useMemo)(()=>D(r),[r,D]);if(!f&&s)return t.createElement(h.NotAllowedInput,{labelAction:c,intlLabel:o,name:p});if(!f&&!s&&!g)return t.createElement(h.NotAllowedInput,{labelAction:c,intlLabel:o,name:p});const z=()=>{e(p,F,I)};return t.createElement(H.x,null,t.createElement(_.k,{justifyContent:"space-between"},o&&t.createElement(Ci,{intlLabel:o,labelAction:c,name:p,numberOfEntries:R,showNumberOfEntries:l,required:x}),T&&t.createElement(Ne.h,{label:C({id:v("components.reset-entry"),defaultMessage:"Reset Entry"}),icon:t.createElement(ft.default,null),noBorder:!0,onClick:()=>{E(p,r)}})),t.createElement(de.K,{spacing:1},!l&&!A&&t.createElement(Lo,{isReadOnly:y,onClick:z}),!l&&A&&t.createElement(Ec,{componentUid:r,isFromDynamicZone:a,isNested:i,name:p}),l&&t.createElement(Sc,{componentValue:b,componentValueLength:R,componentUid:r,isReadOnly:y,max:u,min:d,name:p})))};Qn.defaultProps={componentValue:null,hasChildrenAllowedFields:!1,hasChildrenReadableFields:!1,intlLabel:void 0,isFromDynamicZone:!1,isReadOnly:!1,isRepeatable:!1,isNested:!1,labelAction:void 0,max:1/0,min:-1/0,required:!1},Qn.propTypes={addNonRepeatableComponentToField:n().func.isRequired,componentUid:n().string.isRequired,componentValue:n().oneOfType([n().object,n().array]),hasChildrenAllowedFields:n().bool,hasChildrenReadableFields:n().bool,isCreatingEntry:n().bool.isRequired,isFromDynamicZone:n().bool,isReadOnly:n().bool,isRepeatable:n().bool,isNested:n().bool,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}),labelAction:n().element,max:n().number,min:n().number,name:n().string.isRequired,removeComponentFromField:n().func.isRequired,required:n().bool};const Fc=(0,t.memo)(Qn,Xe());var Xt=hi(Fc,bi);const wc=(0,w.default)(P.Stack)`
861
- /*
862
- we need to remove the background from the button but we can't
863
- wrap the element in styled because it breaks the forwardedAs which
864
- we need for drag handler to work on firefox
865
- */
866
- div[role='button'] {
867
- background: transparent;
868
- }
869
- `,Pc=(0,w.default)(P.IconButton)`
870
- background-color: transparent;
871
-
872
- svg path {
873
- fill: ${({theme:e,expanded:r})=>r?e.colors.primary600:e.colors.neutral600};
874
- }
875
- `,Ac=(0,w.default)(P.Box)`
876
- > div:first-child {
877
- box-shadow: ${({theme:e})=>e.shadows.tableShadow};
878
- }
879
- `,Oc=(0,w.default)(P.Box)`
880
- border-radius: 0 0 ${({theme:e})=>e.spaces[1]} ${({theme:e})=>e.spaces[1]};
881
- `,$c=(0,w.default)(P.Box)`
882
- width: ${({theme:e})=>e.spaces[2]};
883
- height: ${({theme:e})=>e.spaces[4]};
884
- `,Nc=w.default.span`
885
- display: block;
886
- background-color: ${({theme:e})=>e.colors.primary100};
887
- outline: 1px dashed ${({theme:e})=>e.colors.primary500};
888
- outline-offset: -1px;
889
- padding: ${({theme:e})=>e.spaces[6]};
890
- `,Bc=(0,w.default)(P.Box)`
891
- list-style: none;
892
- padding: 0;
893
- margin: 0;
894
- `,Yn=({componentUid:e,formErrors:r,index:o,isFieldAllowed:s,name:a,onRemoveComponentClick:l,onMoveComponent:i,onGrabItem:c,onDropItem:u,onCancel:d})=>{const[p,f]=(0,t.useState)(!0),{formatMessage:g}=(0,q.useIntl)(),{getComponentLayout:y}=Je(),{modifiedData:b}=(0,h.useCMEditViewDataManager)(),{icon:E,friendlyName:x,mainValue:C}=(0,t.useMemo)(()=>{const S=y(e),{info:{icon:J,displayName:$}}=S,Y=L()(S,["settings","mainField"],"id"),M=L()(b,[a,o,Y])??"",k=Y==="id"?"":String(M).trim(),V=k.length>0?` - ${k}`:k;return{friendlyName:$,icon:J,mainValue:V}},[e,y,b,a,o]),R=Object.keys(r).filter(S=>{const J=S.split(".");return`${J[0]}.${J[1]}`==`${a}.${o}`});let A;R.length>0&&(A=g({id:v("components.DynamicZone.error-message"),defaultMessage:"The component contains error(s)"}));const T=()=>{f(S=>!S)},[{handlerId:D,isDragging:I,handleKeyDown:F},z,U,B,K]=fn(s,{type:`${be.DYNAMIC_ZONE}_${a}`,index:o,item:{displayedValue:`${x}${C}`,icon:E},onMoveItem:i,onGrabItem:c,onDropItem:u,onCancel:d});(0,t.useEffect)(()=>{K((0,kt.rX)(),{captureDraggingState:!1})},[K,o]);const j=Zt(z,U),N=s?t.createElement(wc,{horizontal:!0,spacing:0,expanded:p},t.createElement(Pc,{noBorder:!0,label:g({id:v("components.DynamicZone.delete-label"),defaultMessage:"Delete {name}"},{name:x}),onClick:l},t.createElement(Oe.Trash,null)),t.createElement(P.IconButton,{forwardedAs:"div",role:"button",noBorder:!0,tabIndex:0,onClick:S=>S.stopPropagation(),"data-handler-id":D,ref:B,label:g({id:v("components.DragHandle-label"),defaultMessage:"Drag"}),onKeyDown:F},t.createElement(Oe.Drag,null))):null;return t.createElement(Bc,{as:"li"},t.createElement(P.Flex,{justifyContent:"center"},t.createElement($c,{background:"neutral200"})),t.createElement(Ac,{ref:j,hasRadius:!0},I?t.createElement(Nc,{padding:6,background:"primary100"}):t.createElement(P.Accordion,{expanded:p,onToggle:T,size:"S",error:A},t.createElement(P.AccordionToggle,{action:N,title:`${x}${C}`,togglePosition:"left"}),t.createElement(P.AccordionContent,null,t.createElement(Oc,{background:"neutral0"},t.createElement(Xt,{componentUid:e,icon:E,name:`${a}.${o}`,isFromDynamicZone:!0}))))))};Yn.defaultProps={formErrors:{},index:0,isFieldAllowed:!0,onGrabItem:void 0,onDropItem:void 0,onCancel:void 0},Yn.propTypes={componentUid:n().string.isRequired,formErrors:n().object,index:n().number,isFieldAllowed:n().bool,name:n().string.isRequired,onGrabItem:n().func,onDropItem:n().func,onCancel:n().func,onMoveComponent:n().func.isRequired,onRemoveComponentClick:n().func.isRequired};var qc=Yn;const Jn=(0,w.default)(Io.Z)`
895
- transform: ${({$isOpen:e})=>e?"rotate(45deg)":"rotate(0deg)"};
896
- > circle {
897
- fill: ${({theme:e,$hasError:r})=>r?e.colors.danger200:e.colors.neutral150};
898
- }
899
- > path {
900
- fill: ${({theme:e,$hasError:r})=>r?e.colors.danger600:e.colors.neutral600};
901
- }
902
- `,jc=(0,w.default)(Po.Y)`
903
- border-radius: 26px;
904
- border-color: ${({theme:e})=>e.colors.neutral150};
905
- background: ${({theme:e})=>e.colors.neutral0};
906
- padding-top: ${({theme:e})=>e.spaces[3]};
907
- padding-right: ${({theme:e})=>e.spaces[4]};
908
- padding-bottom: ${({theme:e})=>e.spaces[3]};
909
- padding-left: ${({theme:e})=>e.spaces[4]};
910
-
911
- box-shadow: ${({theme:e})=>e.shadows.filterShadow};
912
-
913
- svg {
914
- height: ${({theme:e})=>e.spaces[6]};
915
- width: ${({theme:e})=>e.spaces[6]};
916
- > path {
917
- fill: ${({theme:e})=>e.colors.neutral600};
918
- }
919
- }
920
- &:hover {
921
- color: ${({theme:e})=>e.colors.primary600} !important;
922
- ${G.Z} {
923
- color: ${({theme:e})=>e.colors.primary600} !important;
924
- }
925
-
926
- ${Jn} {
927
- > circle {
928
- fill: ${({theme:e})=>e.colors.primary600};
929
- }
930
- > path {
931
- fill: ${({theme:e})=>e.colors.neutral100};
932
- }
933
- }
934
- }
935
- &:active {
936
- ${G.Z} {
937
- color: ${({theme:e})=>e.colors.primary600};
938
- }
939
- ${Jn} {
940
- > circle {
941
- fill: ${({theme:e})=>e.colors.primary600};
942
- }
943
- > path {
944
- fill: ${({theme:e})=>e.colors.neutral100};
945
- }
946
- }
947
- }
948
- `,Zc=(0,w.default)(H.x)`
949
- height: 100%;
950
- `,Xn=({hasError:e,hasMaxError:r,hasMinError:o,isDisabled:s,isOpen:a,label:l,missingComponentNumber:i,name:c,onClick:u})=>{const{formatMessage:d}=(0,q.useIntl)(),p=d({id:v("components.DynamicZone.add-component"),defaultMessage:"Add a component to {componentName}"},{componentName:l||c}),f=d({id:"app.utils.close-label",defaultMessage:"Close"});let g=a?f:p;return r&&!a&&(g=d({id:"components.Input.error.validation.max",defaultMessage:"The value is too high."})),o&&!a&&(g=d({id:v("components.DynamicZone.missing-components"),defaultMessage:"There {number, plural, =0 {are # missing components} one {is # missing component} other {are # missing components}}"},{number:i})),t.createElement(_.k,{justifyContent:"center"},t.createElement(H.x,{style:{cursor:s?"not-allowed":"pointer"}},t.createElement(jc,{type:"button",onClick:u,disabled:s,hasError:e},t.createElement(_.k,null,t.createElement(Zc,{"aria-hidden":!0,paddingRight:2},t.createElement(Jn,{$isOpen:a,$hasError:e&&!a})),t.createElement(G.Z,{variant:"pi",fontWeight:"bold",textColor:e&&!a?"danger600":"neutral500"},g)))))};Xn.defaultProps={hasError:!1,hasMaxError:!1,hasMinError:!1,isDisabled:!1,isOpen:!1,label:"",missingComponentNumber:0},Xn.propTypes={label:n().string,hasError:n().bool,hasMaxError:n().bool,hasMinError:n().bool,isDisabled:n().bool,isOpen:n().bool,missingComponentNumber:n().number,name:n().string.isRequired,onClick:n().func.isRequired};var zc=Xn;const Vc=(0,w.default)(H.x)`
951
- border-radius: ${(0,h.pxToRem)(26)};
952
- `,_n=({label:e,labelAction:r,name:o,numberOfComponents:s,required:a,intlDescription:l})=>{const{formatMessage:i}=(0,q.useIntl)(),c=i({id:e||o,defaultMessage:e||o});return t.createElement(_.k,{justifyContent:"center"},t.createElement(H.x,null,t.createElement(Vc,{paddingTop:3,paddingBottom:3,paddingRight:4,paddingLeft:4,background:"neutral0",shadow:"filterShadow",color:"neutral500"},t.createElement(_.k,{direction:"column",justifyContent:"center"},t.createElement(_.k,{maxWidth:(0,h.pxToRem)(356)},t.createElement(G.Z,{variant:"pi",textColor:"neutral600",fontWeight:"bold",ellipsis:!0},c,"\xA0"),t.createElement(G.Z,{variant:"pi",textColor:"neutral600",fontWeight:"bold"},"(",s,")"),a&&t.createElement(G.Z,{textColor:"danger600"},"*"),r&&t.createElement(H.x,{paddingLeft:1},r)),l&&t.createElement(H.x,{paddingTop:1,maxWidth:(0,h.pxToRem)(356)},t.createElement(G.Z,{variant:"pi",textColor:"neutral600",ellipsis:!0},i(l)))))))};_n.defaultProps={intlDescription:void 0,label:"",labelAction:void 0,numberOfComponents:0,required:!1},_n.propTypes={intlDescription:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired}),label:n().string,labelAction:n().element,name:n().string.isRequired,numberOfComponents:n().number,required:n().bool};var Wc=_n,Uc=m(81346),Hc=m.n(Uc),Gc=m(861),Kc=m(83828),Qc=m(61762),Yc=m(89966);const _t=5,en=8,Jc=(0,w.default)(P.Flex)`
953
- border-radius: ${({showBackground:e})=>e?"50%":0};
954
- color: ${({theme:e})=>e.colors.neutral600};
955
- height: ${({theme:e,size:r})=>e.spaces[r==="S"?_t:en]};
956
- width: ${({theme:e,size:r})=>e.spaces[r==="S"?_t:en]};
957
-
958
- svg {
959
- height: ${({theme:e,size:r})=>e.spaces[r==="S"?_t-2:en-3]};
960
- width: ${({theme:e,size:r})=>e.spaces[r==="S"?_t-2:en-3]};
961
- }
962
- `;function tn({showBackground:e=!0,size:r="M"}){return t.createElement(Jc,{alignItems:"center",background:e?"neutral200":null,justifyContent:"center",size:r,showBackground:e},t.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"},t.createElement("path",{d:"M216.3 2c4.8-2.6 10.5-2.6 15.3 0L422.3 106c5.1 2.8 8.3 8.2 8.3 14s-3.2 11.2-8.3 14L231.7 238c-4.8 2.6-10.5 2.6-15.3 0L25.7 134c-5.1-2.8-8.3-8.2-8.3-14s3.2-11.2 8.3-14L216.3 2zM23.7 170l176 96c5.1 2.8 8.3 8.2 8.3 14V496c0 5.6-3 10.9-7.8 13.8s-10.9 3-15.8 .3L8.3 414C3.2 411.2 0 405.9 0 400V184c0-5.6 3-10.9 7.8-13.8s10.9-3 15.8-.3zm400.7 0c5-2.7 11-2.6 15.8 .3s7.8 8.1 7.8 13.8V400c0 5.9-3.2 11.2-8.3 14l-176 96c-5 2.7-11 2.6-15.8-.3s-7.8-8.1-7.8-13.8V280c0-5.9 3.2-11.2 8.3-14l176-96z",fill:"currentColor"})))}tn.defaultProps={showBackground:!0,size:"M"},tn.propTypes={showBackground:n().bool,size:n().string};const Xc=(0,w.default)(H.x)`
963
- flex-shrink: 0;
964
- height: ${(0,h.pxToRem)(84)};
965
- border: 1px solid ${({theme:e})=>e.colors.neutral200};
966
- background: ${({theme:e})=>e.colors.neutral100};
967
- border-radius: ${({theme:e})=>e.borderRadius};
968
- display: flex;
969
- justify-content: center;
970
- align-items: center;
971
-
972
- &:focus,
973
- &:hover {
974
- border: 1px solid ${({theme:e})=>e.colors.primary200};
975
- background: ${({theme:e})=>e.colors.primary100};
976
-
977
- ${G.Z} {
978
- color: ${({theme:e})=>e.colors.primary600};
979
- }
980
-
981
- /* > Stack > ComponentIcon */
982
- > div > div:first-child {
983
- background: ${({theme:e})=>e.colors.primary200};
984
- color: ${({theme:e})=>e.colors.primary600};
985
- }
986
- }
987
- `;function er({children:e,onClick:r}){return t.createElement(Xc,{as:"button",type:"button",onClick:r,hasRadius:!0},t.createElement(de.K,{spacing:1,alignItems:"center",justifyContent:"center"},t.createElement(tn,null),t.createElement(G.Z,{variant:"pi",fontWeight:"bold",textColor:"neutral600"},e)))}er.defaultProps={onClick(){}},er.propTypes={children:n().node.isRequired,onClick:n().func};const _c=w.default.div`
988
- display: grid;
989
- grid-template-columns: repeat(auto-fit, ${140/16}rem);
990
- grid-gap: ${({theme:e})=>e.spaces[1]};
991
- `,tr=({category:e,components:r,variant:o,isOpen:s,onAddComponent:a,onToggle:l})=>{const{formatMessage:i}=(0,q.useIntl)(),c=()=>{l(e)};return t.createElement(Kc.U,{expanded:s,onToggle:c,size:"S"},t.createElement(Qc.B,{variant:o,title:i({id:e,defaultMessage:e}),togglePosition:"left"}),t.createElement(Yc.v,null,t.createElement(H.x,{paddingTop:4,paddingBottom:4,paddingLeft:3,paddingRight:3},t.createElement(_c,null,r.map(({componentUid:u,info:{displayName:d}})=>t.createElement(er,{key:u,onClick:a(u)},i({id:d,defaultMessage:d})))))))};tr.defaultProps={components:[],isOpen:!1,variant:"primary"},tr.propTypes={category:n().string.isRequired,components:n().array,isOpen:n().bool,onAddComponent:n().func.isRequired,onToggle:n().func.isRequired,variant:n().oneOf(["primary","secondary"])};var ed=tr;const nr=({components:e,isOpen:r,onClickAddComponent:o})=>{const{formatMessage:s}=(0,q.useIntl)(),{getComponentLayout:a}=Je(),[l,i]=(0,t.useState)(""),c=(0,t.useMemo)(()=>{const p=e.map(g=>{const{category:y,info:b}=a(g);return{componentUid:g,category:y,info:b}}),f=Hc()(p,"category");return Object.keys(f).reduce((g,y)=>(g.push({category:y,components:f[y]}),g),[])},[e,a]);(0,t.useEffect)(()=>{r&&c.length>0&&i(c[0].category)},[r,c]);const u=p=>()=>{o(p),i("")},d=p=>{i(f=>f===p?"":p)};return r?t.createElement(H.x,{paddingBottom:6},t.createElement(H.x,{paddingTop:6,paddingBottom:6,paddingLeft:5,paddingRight:5,background:"neutral0",shadow:"tableShadow",borderColor:"neutral150",hasRadius:!0},t.createElement(_.k,{justifyContent:"center"},t.createElement(G.Z,{fontWeight:"bold",textColor:"neutral600"},s({id:v("components.DynamicZone.ComponentPicker-label"),defaultMessage:"Pick one component"}))),t.createElement(H.x,{paddingTop:2},t.createElement(Gc.k,{attributeName:"data-strapi-accordion-toggle"},c.map(({category:p,components:f},g)=>t.createElement(ed,{key:p,category:p,components:f,onAddComponent:u,isOpen:p===l,onToggle:d,variant:g%2===1?"primary":"secondary"})))))):null};nr.defaultProps={components:[],isOpen:!1},nr.propTypes={components:n().array,isOpen:n().bool,onClickAddComponent:n().func.isRequired};var td=nr;const rr=({name:e,addComponentToDynamicZone:r,formErrors:o,isCreatingEntry:s,isFieldAllowed:a,isFieldReadable:l,labelAction:i,moveComponentField:c,removeComponentFromDynamicZone:u,dynamicDisplayedComponents:d,fieldSchema:p,metadatas:f})=>{const[g,y]=(0,t.useState)(!1),[b,E]=(0,t.useState)(""),{formatMessage:x}=(0,q.useIntl)(),C=(0,h.useNotification)(),{getComponentLayout:R,components:A}=Je(),T=d.length,D=f.description?{id:f.description,defaultMessage:f.description}:null,{max:I=1/0,min:F=-1/0}=p,z=(0,t.useMemo)(()=>Object.keys(o).filter(O=>O===e).map(O=>o[O]),[o,e]),U=F-T,B=z.length>0,K=z.length>0&&L()(z,[0,"id"],"").includes("min"),j=B&&L()(z,[0,"id"],"")==="components.Input.error.validation.max",N=O=>{y(!1);const Q=R(O);r(e,Q,A,B)},S=()=>{T<I?y(O=>!O):C({type:"info",message:{id:v("components.notification.info.maximum-requirement")}})},J=(O,Q)=>{E(x({id:v("dnd.reorder"),defaultMessage:"{item}, moved. New position in list: {position}."},{item:`${e}.${Q}`,position:$(O)})),c({name:e,newIndex:O,currentIndex:Q})},$=O=>`${O+1} of ${d.length}`,Y=O=>{E(x({id:v("dnd.cancel-item"),defaultMessage:"{item}, dropped. Re-order cancelled."},{item:`${e}.${O}`}))},M=O=>{E(x({id:v("dnd.grab-item"),defaultMessage:"{item}, grabbed. Current position in list: {position}. Press up and down arrow to change position, Spacebar to drop, Escape to cancel."},{item:`${e}.${O}`,position:$(O)}))},k=O=>{E(x({id:v("dnd.drop-item"),defaultMessage:"{item}, dropped. Final position in list: {position}."},{item:`${e}.${O}`,position:$(O)}))},V=(O,Q)=>()=>{u(O,Q)};if(!a&&(s||!l&&!s))return t.createElement(h.NotAllowedInput,{description:D,intlLabel:{id:f.label,defaultMessage:f.label},labelAction:i,name:e});const Z=`${e}-item-instructions`;return t.createElement(P.Stack,{spacing:6},T>0&&t.createElement(P.Box,null,t.createElement(Wc,{intlDescription:D,label:f.label,labelAction:i,name:e,numberOfComponents:T,required:p.required||!1}),t.createElement(P.VisuallyHidden,{id:Z},x({id:v("dnd.instructions"),defaultMessage:"Press spacebar to grab and re-order"})),t.createElement(P.VisuallyHidden,{"aria-live":"assertive"},b),t.createElement("ol",{"aria-describedby":Z},d.map(({componentUid:O,id:Q},oe)=>t.createElement(qc,{componentUid:O,formErrors:o,key:`${O}-${Q}`,index:oe,isFieldAllowed:a,name:e,onMoveComponent:J,onRemoveComponentClick:V(e,oe),onCancel:Y,onDropItem:k,onGrabItem:M})))),t.createElement(zc,{hasError:B,hasMaxError:j,hasMinError:K,isDisabled:!a,label:f.label,missingComponentNumber:U,isOpen:g,name:e,onClick:S}),t.createElement(td,{isOpen:g,components:p.components??[],onClickAddComponent:N}))};rr.defaultProps={dynamicDisplayedComponents:[],fieldSchema:{max:1/0,min:-1/0},labelAction:null},rr.propTypes={addComponentToDynamicZone:n().func.isRequired,dynamicDisplayedComponents:n().arrayOf(n().shape({componentUid:n().string.isRequired,id:n().number.isRequired})),fieldSchema:n().shape({components:n().array.isRequired,max:n().number,min:n().number,required:n().bool}),formErrors:n().object.isRequired,isCreatingEntry:n().bool.isRequired,isFieldAllowed:n().bool.isRequired,isFieldReadable:n().bool.isRequired,labelAction:n().element,metadatas:n().shape({description:n().string,label:n().string}).isRequired,moveComponentField:n().func.isRequired,name:n().string.isRequired,removeComponentFromDynamicZone:n().func.isRequired};const nd=(0,t.memo)(rr,Xe());var rd=di(nd,mi),_e=m(41578);const nn=()=>({type:_e.ZA}),or=e=>({type:_e.Id,data:e}),sr=(e,r=!1)=>({type:_e.TP,rawQuery:e,isSingleType:r}),Ko=()=>({type:_e.c2}),Qo=(e,r)=>({type:_e.w7,componentsDataStructure:e,contentTypeDataStructure:r}),ue=e=>({type:_e.d0,status:e}),et=e=>({type:_e.t9,data:e}),od=()=>({type:_e.tE});var ar=e=>e["content-manager_editViewCrudReducer"],sd=m(98399);const ir=({allLayoutData:e,children:r,slug:o,id:s,origin:a})=>{const l=(0,it.useQueryClient)(),i=(0,h.useNotification)(),{setCurrentStep:c}=(0,h.useGuidedTour)(),{trackUsage:u}=(0,h.useTracking)(),{push:d,replace:p}=(0,re.useHistory)(),[{rawQuery:f}]=(0,h.useQueryParams)(),g=(0,pe.useDispatch)(),{componentsDataStructure:y,contentTypeDataStructure:b,data:E,isLoading:x,status:C}=(0,pe.useSelector)(ar),R=fo(o),A=(0,t.useRef)(!0),T=(0,t.useRef)(u),D=(0,t.useRef)(e),I=s===null,F=(0,t.useMemo)(()=>I&&!a?null:he(`collection-types/${o}/${a||s}`),[o,s,I,a]),z=(0,t.useCallback)(M=>a?(0,h.contentManagementUtilRemoveFieldsFromData)(M,D.current.contentType,D.current.components):M,[a]),U=(0,t.useCallback)(M=>{const k=Yr(M,D.current.contentType,D.current.components);return(0,h.formatContentTypeData)(k,D.current.contentType,D.current.components)},[]);(0,t.useEffect)(()=>{const M=Object.keys(e.components).reduce((Z,O)=>{const Q=zt(L()(e,["components",O,"attributes"],{}),e.components);return Z[O]=(0,h.formatContentTypeData)(Q,e.components[O],e.components),Z},{}),k=zt(e.contentType.attributes,e.components),V=(0,h.formatContentTypeData)(k,e.contentType,e.components);g(Qo(M,V))},[e,g]),(0,t.useEffect)(()=>()=>{g(Ko())},[g]),(0,t.useEffect)(()=>{const k=$e.Z.CancelToken.source(),V=async O=>{g(nn());try{const{data:Q}=await ge.be.get(F,{cancelToken:O.token});g(or(U(z(Q))))}catch(Q){if($e.Z.isCancel(Q))return;sd.error(Q);const oe=L()(Q,"response.status",null);if(oe===404){d(R);return}oe===403&&(i({type:"info",message:{id:v("permissions.not-allowed.update")}}),d(R))}},Z=async()=>{await g(nn()),await g(sr(f))};return A.current?(F?V(k):Z(),()=>{k.cancel("Operation canceled by the user.")}):()=>{}},[z,U,d,F,g,f,R,i]);const B=(0,t.useCallback)(M=>{const k=M.response.data;let V=L()(k,["error","message"],"Bad Request");Array.isArray(V)&&(V=L()(V,["0","messages","0","id"])),typeof V=="string"&&i({type:"warning",message:V})},[i]),K=(0,t.useCallback)(async M=>{try{T.current("willDeleteEntry",M);const{data:k}=await ge.be.delete(he(`collection-types/${o}/${s}`));return i({type:"success",message:{id:v("success.record.delete")}}),T.current("didDeleteEntry",M),Promise.resolve(k)}catch(k){return T.current("didNotDeleteEntry",{error:k,...M}),Promise.reject(k)}},[s,o,i]),j=(0,t.useCallback)(()=>{p(R)},[R,p]),N=(0,t.useCallback)(async(M,k)=>{const V=`${he(`collection-types/${o}`)}${f}`;try{g(ue("submit-pending"));const{data:Z}=await ge.be.post(V,M);return T.current("didCreateEntry",k),i({type:"success",message:{id:v("success.record.save")}}),c("contentManager.success"),l.invalidateQueries(["relation"]),g(et(U(Z))),g(ue("resolved")),p(`/content-manager/collectionType/${o}/${Z.id}${f}`),Promise.resolve(Z)}catch(Z){return B(Z),T.current("didNotCreateEntry",{error:Z,trackerProperty:k}),g(ue("resolved")),Promise.reject(Z)}},[U,B,p,o,g,f,i,c,l]),S=(0,t.useCallback)(async()=>{try{T.current("willCheckDraftRelations");const M=he(`collection-types/${o}/${s}/actions/numberOfDraftRelations`);g(ue("draft-relation-check-pending"));const k=await ge.be.get(M);return T.current("didCheckDraftRelations"),g(ue("resolved")),k.data.data}catch(M){return B(M),g(ue("resolved")),Promise.reject(M)}},[B,s,o,g]),J=(0,t.useCallback)(async()=>{try{T.current("willPublishEntry");const M=he(`collection-types/${o}/${s}/actions/publish`);g(ue("publish-pending"));const{data:k}=await ge.be.post(M);return T.current("didPublishEntry"),g(et(U(k))),g(ue("resolved")),i({type:"success",message:{id:v("success.record.publish")}}),Promise.resolve(k)}catch(M){return B(M),g(ue("resolved")),Promise.reject(M)}},[U,B,s,o,g,i]),$=(0,t.useCallback)(async(M,k)=>{const V=he(`collection-types/${o}/${s}`);try{T.current("willEditEntry",k),g(ue("submit-pending"));const{data:Z}=await ge.be.put(V,M);return T.current("didEditEntry",{trackerProperty:k}),i({type:"success",message:{id:v("success.record.save")}}),l.invalidateQueries(["relation"]),g(et(U(Z))),g(ue("resolved")),Promise.resolve(Z)}catch(Z){return T.current("didNotEditEntry",{error:Z,trackerProperty:k}),B(Z),g(ue("resolved")),Promise.reject(Z)}},[U,B,o,s,g,i,l]),Y=(0,t.useCallback)(async()=>{const M=he(`collection-types/${o}/${s}/actions/unpublish`);g(ue("unpublish-pending"));try{T.current("willUnpublishEntry");const{data:k}=await ge.be.post(M);return T.current("didUnpublishEntry"),i({type:"success",message:{id:v("success.record.unpublish")}}),g(et(U(k))),g(ue("resolved")),Promise.resolve(k)}catch(k){return g(ue("resolved")),B(k),Promise.reject(k)}},[U,B,s,o,g,i]);return r({componentsDataStructure:y,contentTypeDataStructure:b,data:E,isCreatingEntry:I,isLoadingForData:x,onDelete:K,onDeleteSucceeded:j,onPost:N,onPublish:J,onDraftRelationCheck:S,onPut:$,onUnpublish:Y,status:C,redirectionLink:R})};ir.defaultProps={id:null,origin:null},ir.propTypes={allLayoutData:n().exact({components:n().object.isRequired,contentType:n().shape({apiID:n().string.isRequired,attributes:n().object.isRequired,info:n().object.isRequired,isDisplayed:n().bool.isRequired,kind:n().string.isRequired,layouts:n().object.isRequired,metadatas:n().object.isRequired,options:n().object.isRequired,pluginOptions:n().object,settings:n().object.isRequired,uid:n().string.isRequired}).isRequired}).isRequired,children:n().func.isRequired,id:n().string,origin:n().string,slug:n().string.isRequired};var ad=(0,t.memo)(ir,Xe()),id=m(86834),Ie=m.n(id),ld=m(89793),St=m.n(ld),cd=m(3040),ne=m.n(cd),dd=m(56236),ud=m.n(dd),md=m(10268),Yo=m.n(md),pd=m(86349),gd=m.n(pd),fd=m(33494),hd=m.n(fd),yd=m(36866),bd=m.n(yd),Jo=(e,r,o,s)=>{const a=e.slice();return a.splice(r,1),a.splice(o,0,s),a},Ed=m(77236),Cd=m.n(Ed);const vd=({browserState:e,serverState:r},o,s)=>{const a=r,l=e,i=(d,p)=>L()(d,["attributes",p,"type"],""),c=(d,p)=>L()(d,["attributes",...p],""),u=(d,p,f,g)=>Object.keys(d).reduce((y,b)=>{const E=g?`${g}.${b}`:b,x=i(f,b),C=L()(d,b),R=L()(p,b),A=c(f,[b,"component"]),T=c(f,[b,"repeatable"]);let D;switch(x){case"json":D=JSON.parse(C);break;case"time":{D=C,C&&C.split(":").length<3&&(D=`${C}:00`);break}case"media":c(f,[b,"multiple"])===!0?D=C?C.filter(I=>!(I instanceof File)):null:D=L()(C,0)instanceof File?null:L()(C,"id",null);break;case"component":T?D=C&&C.map((I,F)=>u(I,(R??[])[F],s[A],`${E}.${F}`)):D=C&&u(C,R,s[A],E);break;case"relation":{const I=Uo(a,l)(E).join(".");let F=L()(a,I,[]);const z=C.map((K,j,N)=>{const S=N[j+1];return S?{...K,position:{before:S.id}}:{...K,position:{end:!0}}}),U=z.reduce((K,j,N)=>{const S=F.findIndex(J=>J.id===j.id);return S===-1||S!==N?[...K,{id:j.id,position:j.position}]:K},[]);D={disconnect:F.reduce((K,j)=>z.find(N=>N.id===j.id)?K:[...K,{id:j.id}],[]),connect:U.reverse()};break}case"dynamiczone":D=C.map((I,F)=>u(I,(R??[])[F],s[I.__component],`${E}.${F}`));break;default:D=Rd(C,"id")}return y[b]=D,y},{});return u(e,r,o,"")},Rd=(e,r)=>Cd()(e)?e.map(o=>o[r]?o[r]:o):po()(e)?e[r]:e;var Td=vd,Md=m(51355),Dd=m.n(Md),kd=m(95919),xd=m.n(kd),Id=m(78746),bt=m.n(Id),Ce=m(5173);function Ft(e){return["integer","biginteger","decimal","float","number"].includes(e)}Ce.kM(Ce.nK,"defined",function(){return this.test("defined",h.translatedErrors.required,e=>e!==void 0)}),Ce.kM(Ce.IX,"notEmptyMin",function(e){return this.test("notEmptyMin",h.translatedErrors.min,r=>Ie()(r)?!0:r.length>=e)}),Ce.kM(Ce.Z_,"isInferior",function(e,r){return this.test("isInferior",e,function(o){return!o||Number.isNaN(bt()(o))?!0:bt()(r)>=bt()(o)})}),Ce.kM(Ce.Z_,"isSuperior",function(e,r){return this.test("isSuperior",e,function(o){return!o||Number.isNaN(bt()(o))?!0:bt()(o)>=bt()(r)})});const Ld=e=>L()(e,["attributes"],{}),lr=(e,{components:r},o={isCreatingEntry:!0,isDraft:!0,isFromComponent:!1})=>{const s=Ld(e);return Ce.Ry().shape(Object.keys(s).reduce((a,l)=>{const i=s[l];if(i.type!=="relation"&&i.type!=="component"&&i.type!=="dynamiczone"){const c=Sd(i.type,i,o);a[l]=c}if(i.type==="relation"&&(a[l]=["oneWay","oneToOne","manyToOne","oneToManyMorph","oneToOneMorph"].includes(i.relationType)?Ce.Ry().nullable():Ce.IX().nullable()),i.type==="component"){const c=lr(r[i.component],{components:r},{...o,isFromComponent:!0});if(i.repeatable===!0){const{min:d,max:p,required:f}=i;let g=Ce.Vo(y=>{let b=Ce.IX().of(c);return d?f?b=b.min(d,h.translatedErrors.min):f!==!0&&Ie()(y)?b=b.nullable():b=b.min(d,h.translatedErrors.min):f&&!o.isDraft&&(b=b.min(1,h.translatedErrors.required)),p&&(b=b.max(p,h.translatedErrors.max)),b});return a[l]=g,a}const u=Ce.Vo(d=>d!==void 0?i.required===!0&&!o.isDraft?c.defined():c.nullable():i.required===!0?Ce.Ry().defined():Ce.Ry().nullable());return a[l]=u,a}if(i.type==="dynamiczone"){let c=Ce.IX().of(Ce.Vo(({__component:p})=>lr(r[p],{components:r},{...o,isFromComponent:!0})));const{max:u,min:d}=i;d?i.required?c=c.test("min",h.translatedErrors.min,p=>o.isCreatingEntry?p&&p.length>=d:p===void 0?!0:p!==null&&p.length>=d).test("required",h.translatedErrors.required,p=>o.isCreatingEntry?p!==null||p!==void 0:p===void 0?!0:p!==null):c=c.notEmptyMin(d):i.required&&!o.isDraft&&(c=c.test("required",h.translatedErrors.required,p=>o.isCreatingEntry?p!==null||p!==void 0:p===void 0?!0:p!==null)),u&&(c=c.max(u,h.translatedErrors.max)),a[l]=c}return a},{}))},Sd=(e,r,o)=>{let s=Ce.nK();return["string","uid","text","richtext","email","password","enumeration"].includes(e)&&(s=Ce.Z_()),e==="json"&&(s=Ce.nK(h.translatedErrors.json).test("isJSON",h.translatedErrors.json,a=>{if(a===void 0)return!0;try{return JSON.parse(a),!0}catch{return!1}}).nullable()),e==="email"&&(s=s.email(h.translatedErrors.email)),["number","integer","float","decimal"].includes(e)&&(s=Ce.Rx().transform(a=>xd()(a)?void 0:a).typeError()),e==="biginteger"&&(s=Ce.Z_().matches(/^-?\d*$/)),["date","datetime"].includes(e)&&(s=Ce.hT()),Object.keys(r).forEach(a=>{const l=r[a];if(!!l||!Dd()(l)&&Number.isInteger(Math.floor(l))||l===0)switch(a){case"required":{o.isDraft||(e==="password"&&o.isCreatingEntry&&(s=s.required(h.translatedErrors.required)),e!=="password"&&(o.isCreatingEntry?s=s.required(h.translatedErrors.required):s=s.test("required",h.translatedErrors.required,i=>i===void 0&&!o.isFromComponent?!0:Ft(e)?i===0?!0:!!i:e==="boolean"?i!=null:e==="date"||e==="datetime"?typeof i=="string"?!Ie()(i):!Ie()(i?.toString()):!Ie()(i))));break}case"max":{e==="biginteger"?s=s.isInferior(h.translatedErrors.max,l):s=s.max(l,h.translatedErrors.max);break}case"maxLength":s=s.max(l,h.translatedErrors.maxLength);break;case"min":{e==="biginteger"?s=s.isSuperior(h.translatedErrors.min,l):s=s.min(l,h.translatedErrors.min);break}case"minLength":{o.isDraft||(s=s.min(l,h.translatedErrors.minLength));break}case"regex":s=s.matches(new RegExp(l),{message:h.translatedErrors.regex,excludeEmptyString:!r.required});break;case"lowercase":["text","textarea","email","string"].includes(e)&&(s=s.strict().lowercase());break;case"uppercase":["text","textarea","email","string"].includes(e)&&(s=s.strict().uppercase());break;case"positive":Ft(e)&&(s=s.positive());break;case"negative":Ft(e)&&(s=s.negative());break;default:s=s.nullable()}}),s};var Xo=lr;const Qe=(e,r=()=>!1)=>{const o=s=>Object.entries(s).reduce((a,[l,i])=>{if(r(i)&&(a=[...a,l]),i.type==="component"){const c=e[i.component].attributes,d=o(c).map(p=>`${l}.${p}`);a=[...a,d]}else if(i.type==="dynamiczone"){const u=i.components.flatMap(d=>o({[d]:{type:"component",component:d}}).map(p=>p.split(`${d}.`)[1])).filter(d=>Boolean(d)).map(d=>`${l}.${d}`);a=[...a,u]}return a.flat()},[]);return o},Fd=(e,r)=>{const o=(s,a,l,i)=>s&&(l===i.length-1&&e===a&&s[a]!==void 0?(ne()(s,a,r),s):(Array.isArray(s[a])&&s[a].forEach(c=>{i.slice(l+1).reduce(o,c)}),s[a]));return o},wd={componentsDataStructure:{},contentTypeDataStructure:{},formErrors:{},initialData:{},modifiedData:null,shouldCheckErrors:!1,modifiedDZName:null,publishConfirmation:{show:!1,draftCount:0}};var Pd=(e,r)=>(0,Gt.default)(e,o=>{switch(r.type){case"ADD_NON_REPEATABLE_COMPONENT_TO_FIELD":{const{componentLayoutData:s,allComponents:a}=r,l=Qe(a,d=>d.type==="relation")(s.attributes),i={...e.componentsDataStructure[s.uid]},c=Qe(a,d=>d.type==="component"&&d.repeatable)(s.attributes),u=l.reduce((d,p)=>{const[f]=p.split(".");return c.includes(f)||ne()(d,p,[]),d},i);ne()(o,["modifiedData",...r.keys],u);break}case"ADD_COMPONENT_TO_DYNAMIC_ZONE":case"ADD_REPEATABLE_COMPONENT_TO_FIELD":{const{keys:s,allComponents:a,componentLayoutData:l,shouldCheckErrors:i}=r;i&&(o.shouldCheckErrors=!e.shouldCheckErrors),r.type==="ADD_COMPONENT_TO_DYNAMIC_ZONE"&&(o.modifiedDZName=s[0]);const c=L()(e,["modifiedData",...s],[]),u=r.type==="ADD_COMPONENT_TO_DYNAMIC_ZONE"?{...e.componentsDataStructure[l.uid],__component:l.uid,__temp_key__:Wt(c)+1}:{...e.componentsDataStructure[l.uid],__temp_key__:Wt(c)+1},d=Qe(a,b=>b.type==="relation")(l.attributes),p=Qe(a,b=>b.type==="component"&&b.repeatable)(l.attributes),f=Qe(a,b=>b.type==="component"&&!b.repeatable)(l.attributes),g=d.reduce((b,E)=>{const[x]=E.split(".");return!p.includes(x)&&!f.includes(x)&&ne()(b,E,[]),b},u),y=Array.isArray(c)?[...c,g]:[g];ne()(o,["modifiedData",...s],y);break}case"LOAD_RELATION":{const{initialDataPath:s,modifiedDataPath:a,value:l}=r,i=L()(e,s),c=L()(e,a),u=l.filter(d=>!i.some(p=>p.id===d.id));ne()(o,s,Yo()([...u,...i],"id")),ne()(o,a,Yo()([...u,...c],"id"));break}case"CONNECT_RELATION":{const s=["modifiedData",...r.keys],{value:a,toOneRelation:l}=r;if(l)ne()(o,s,[a]);else{const c=[...L()(e,s),a];ne()(o,s,c)}break}case"DISCONNECT_RELATION":{const s=["modifiedData",...r.keys],{id:a}=r,i=L()(e,[...s]).filter(c=>c.id!==a);ne()(o,s,i);break}case"MOVE_COMPONENT_FIELD":case"REORDER_RELATION":{const{oldIndex:s,newIndex:a,keys:l}=r,i=["modifiedData",...l],c=L()(e,[...i]),u=c[s],d=[...c];d.splice(s,1),d.splice(a,0,u),ne()(o,i,d);break}case"INIT_FORM":{const{initialValues:s,relationalFieldPaths:a=[],componentPaths:l=[],repeatableComponentPaths:i=[],dynamicZonePaths:c=[],setModifiedDataOnly:u}=r,d=ze()(s),p=a.map(f=>f.split(".")).reduce((f,g)=>{const[y]=g,b=hd()(f[y]||[]);if(b.reduce((E,x)=>(bd()(L()(x,["__temp_key__"]))&&ne()(x,["__temp_key__"],Wt(E)+1),E),b),e.modifiedData&&L()(e.modifiedData,y)){const E=ze()(L()(e.modifiedData,y));ne()(f,y,gd()(E,L()(s,y)))}else if(i.includes(y)||c.includes(y)||l.includes(y)){const E=Fd(g.slice(-1)[0],[]);g.reduce(E,f)}else ne()(f,g,[]);return f},d);u||(o.initialData=p),o.modifiedData=p,o.formErrors={},o.modifiedDZName=null,o.shouldCheckErrors=!1;break}case"MOVE_COMPONENT_UP":case"MOVE_COMPONENT_DOWN":{const{currentIndex:s,dynamicZoneName:a,shouldCheckErrors:l}=r;l&&(o.shouldCheckErrors=!e.shouldCheckErrors);const i=e.modifiedData[a],c=r.type==="MOVE_COMPONENT_UP"?s-1:s+1,u=e.modifiedData[a][s],d=Jo(i,s,c,u);ne()(o,["modifiedData",r.dynamicZoneName],d);break}case"MOVE_FIELD":{const s=L()(e,["modifiedData",...r.keys],[]).slice(),a=L()(e,["modifiedData",...r.keys,r.dragIndex]),l=Jo(s,r.dragIndex,r.overIndex,a);ne()(o,["modifiedData",...r.keys],l);break}case"ON_CHANGE":{const[s]=r.keys;if(r.shouldSetInitialValue&&ne()(o,["initialData",...r.keys],r.value),r.keys.length===2&&L()(e,["modifiedData",s])===null){ne()(o,["modifiedData",s],{[r.keys[1]]:r.value});break}ne()(o,["modifiedData",...r.keys],r.value);break}case"REMOVE_COMPONENT_FROM_DYNAMIC_ZONE":{r.shouldCheckErrors&&(o.shouldCheckErrors=!e.shouldCheckErrors),o.modifiedData[r.dynamicZoneName].splice(r.index,1);break}case"REMOVE_COMPONENT_FROM_FIELD":{const s=["modifiedData",...r.keys];ne()(o,s,null);break}case"REMOVE_PASSWORD_FIELD":{ud()(o,["modifiedData",...r.keys]);break}case"REMOVE_REPEATABLE_FIELD":{const s=r.keys.length-1,a=["modifiedData",...Mn()(r.keys,s)];Object.keys(e.formErrors).length>0&&(o.shouldCheckErrors=!e.shouldCheckErrors);const i=L()(e,a).slice();i.splice(parseInt(r.keys[s],10),1),ne()(o,a,i);break}case"SET_DEFAULT_DATA_STRUCTURES":{o.componentsDataStructure=r.componentsDataStructure,o.contentTypeDataStructure=r.contentTypeDataStructure;break}case"SET_FORM_ERRORS":{o.modifiedDZName=null,o.formErrors=r.errors;break}case"TRIGGER_FORM_VALIDATION":{Object.keys(e.formErrors).length>0&&(o.shouldCheckErrors=!e.shouldCheckErrors);break}case"SET_PUBLISH_CONFIRMATION":{o.publishConfirmation={...r.publishConfirmation};break}case"RESET_PUBLISH_CONFIRMATION":{o.publishConfirmation={...e.publishConfirmation,show:!1};break}default:return o}});const cr=({allLayoutData:e,allowedActions:{canRead:r,canUpdate:o},children:s,componentsDataStructure:a,contentTypeDataStructure:l,createActionAllowedFields:i,from:c,initialValues:u,isCreatingEntry:d,isLoadingForData:p,isSingleType:f,onPost:g,onPublish:y,onDraftRelationCheck:b,onPut:E,onUnpublish:x,readActionAllowedFields:C,redirectToPreviousPage:R,slug:A,status:T,updateActionAllowedFields:D})=>{const[I,F]=(0,t.useReducer)(Pd,wd),{formErrors:z,initialData:U,modifiedData:B,modifiedDZName:K,shouldCheckErrors:j,publishConfirmation:N}=I,{setModifiedDataOnly:S}=(0,pe.useSelector)(ar),J=(0,pe.useDispatch)(),$=(0,h.useNotification)(),{lockApp:Y,unlockApp:M}=(0,h.useOverlayBlocker)(),k=L()(e,["contentType"],{}),V=(0,t.useMemo)(()=>L()(k,["options","draftAndPublish"],!1),[k]),Z=(0,t.useMemo)(()=>V&&!U.publishedAt,[V,U.publishedAt]),{trackUsage:O}=(0,h.useTracking)(),{formatMessage:Q}=(0,q.useIntl)(),oe=(0,t.useRef)(O),Me=(0,t.useMemo)(()=>p||d?!1:r===!1&&o===!1,[p,d,r,o]);(0,t.useEffect)(()=>{T==="resolved"?M():Y()},[Y,M,T]),(0,t.useEffect)(()=>{p||Be()},[j]),(0,t.useEffect)(()=>{const ee=Object.keys(z);if(ee.length>0){const X=ee[0],ae=document.getElementById(X);ae&&ae.focus()}},[z]),(0,t.useEffect)(()=>{Me&&$({type:"info",message:{id:v("permissions.not-allowed.update")}})},[Me,$]),(0,t.useEffect)(()=>{F({type:"SET_DEFAULT_DATA_STRUCTURES",componentsDataStructure:a,contentTypeDataStructure:l})},[a,l]);const{components:W}=e,fe=Eo(u);(0,t.useEffect)(()=>{if(u&&k?.attributes&&!St()(fe,u)){const ee=Qe(W,xe=>xe.type==="relation")(k.attributes),X=Qe(W,xe=>xe.type==="component"&&!xe.repeatable)(k.attributes),ae=Qe(W,xe=>xe.type==="component"&&xe.repeatable)(k.attributes),Pe=Qe(W,xe=>xe.type==="dynamiczone")(k.attributes);F({type:"INIT_FORM",initialValues:u,relationalFieldPaths:ee,componentPaths:X,repeatableComponentPaths:ae,dynamicZonePaths:Pe,setModifiedDataOnly:S}),S&&J(od())}},[u,k,W,S,J,fe]);const we=(0,t.useCallback)(ee=>(X,ae,Pe,xe=!1)=>{oe.current("didAddComponentToDynamicZone"),F({type:ee,keys:X.split("."),componentLayoutData:ae,allComponents:Pe,shouldCheckErrors:xe})},[]),He=we("ADD_COMPONENT_TO_DYNAMIC_ZONE"),tt=(0,t.useCallback)((ee,X,ae)=>{F({type:"ADD_NON_REPEATABLE_COMPONENT_TO_FIELD",keys:ee.split("."),componentLayoutData:X,allComponents:ae})},[]),$t=(0,t.useCallback)(({name:ee,value:X,toOneRelation:ae})=>{F({type:"CONNECT_RELATION",keys:ee.split("."),value:X,toOneRelation:ae})},[]),Nt=(0,t.useCallback)(({target:{initialDataPath:ee,modifiedDataPath:X,value:ae}})=>{F({type:"LOAD_RELATION",modifiedDataPath:X,initialDataPath:ee,value:ae})},[]),Bt=we("ADD_REPEATABLE_COMPONENT_TO_FIELD"),Ge=(0,t.useMemo)(()=>{const ee={isCreatingEntry:d,isDraft:Z,isFromComponent:!1};return Xo(k,{components:e.components||{}},ee)},[e.components,k,d,Z]),Be=(0,t.useCallback)(async(ee={})=>{let X={};const ae=ze()(B);Ie()(ae)||ne()(ae,ee.path,ee.value);try{await Ge.validate(ae,{abortEarly:!1})}catch(Pe){X=(0,h.getYupInnerErrors)(Pe),K&&(X=Object.keys(X).reduce((xe,jr)=>(jr.split(".")[0]!==K&&(xe[jr]=X[jr]),xe),{}))}F({type:"SET_FORM_ERRORS",errors:X})},[K,B,Ge]),Tt=(0,t.useCallback)(({target:{name:ee,value:X,type:ae}},Pe=!1)=>{let xe=X;if(["text","textarea","string","email","uid","select","select-one","number"].includes(ae)&&!X&&X!==0&&(xe=null),ae==="password"&&!X){F({type:"REMOVE_PASSWORD_FIELD",keys:ee.split(".")});return}F({type:"ON_CHANGE",keys:ee.split("."),value:xe,shouldSetInitialValue:Pe})},[]),ct=(0,t.useCallback)((ee,X)=>Td({browserState:ee,serverState:X},k,e.components),[e.components,k]),ye=(0,t.useMemo)(()=>V?Z?{status:"draft"}:{}:{},[V,Z]),me=(0,t.useCallback)(async ee=>(ee.preventDefault(),F({type:"RESET_PUBLISH_CONFIRMATION"})),[]),Re=(0,t.useCallback)(async ee=>{ee.preventDefault();let X={};try{await Ge.validate(B,{abortEarly:!1})}catch(ae){X=(0,h.getYupInnerErrors)(ae)}try{if(Ie()(X)){const ae=ct(B,U);d?await g(ae,ye):await E(ae,ye)}}catch(ae){X={...X,...(0,h.getAPIInnerErrors)(ae,{getTrad:v})}}F({type:"SET_FORM_ERRORS",errors:X})},[ct,d,B,U,g,E,ye,Ge]),nt=(0,t.useCallback)(async()=>{const ee=Xo(k,{components:L()(e,"components",{})},{isCreatingEntry:d,isDraft:!1,isFromComponent:!1}),X=await b();if(!N.show&&X>0){F({type:"SET_PUBLISH_CONFIRMATION",publishConfirmation:{show:!0,draftCount:X}});return}F({type:"RESET_PUBLISH_CONFIRMATION"});let ae={};try{await ee.validate(B,{abortEarly:!1})}catch(Pe){ae=(0,h.getYupInnerErrors)(Pe)}try{Ie()(ae)&&await y()}catch(Pe){ae={...ae,...(0,h.getAPIInnerErrors)(Pe,{getTrad:v})}}F({type:"SET_FORM_ERRORS",errors:ae})},[e,k,d,B,N.show,y,b]),rt=(0,t.useCallback)(ee=>{const X=Object.keys(z).some(Pe=>Pe.split(".")[0]===ee);return!Ie()(z)&&X},[z]),Wp=(0,t.useCallback)((ee,X)=>{oe.current("changeComponentsOrder"),F({type:"MOVE_COMPONENT_DOWN",dynamicZoneName:ee,currentIndex:X,shouldCheckErrors:rt(ee)})},[rt]),Up=(0,t.useCallback)((ee,X)=>{oe.current("changeComponentsOrder"),F({type:"MOVE_COMPONENT_UP",dynamicZoneName:ee,currentIndex:X,shouldCheckErrors:rt(ee)})},[rt]),Hp=(0,t.useCallback)(({name:ee,newIndex:X,currentIndex:ae})=>{F({type:"MOVE_COMPONENT_FIELD",keys:ee.split("."),newIndex:X,oldIndex:ae})},[]),Gp=(0,t.useCallback)(({name:ee,id:X})=>{F({type:"DISCONNECT_RELATION",keys:ee.split("."),id:X})},[]),Kp=(0,t.useCallback)(({name:ee,oldIndex:X,newIndex:ae})=>{F({type:"REORDER_RELATION",keys:ee.split("."),oldIndex:X,newIndex:ae})},[]),Qp=(0,t.useCallback)((ee,X)=>{oe.current("removeComponentFromDynamicZone"),F({type:"REMOVE_COMPONENT_FROM_DYNAMIC_ZONE",dynamicZoneName:ee,index:X,shouldCheckErrors:rt(ee)})},[rt]),Yp=(0,t.useCallback)((ee,X)=>{F({type:"REMOVE_COMPONENT_FROM_FIELD",keys:ee.split("."),componentUid:X})},[]),Jp=(0,t.useCallback)((ee,X)=>{F({type:"REMOVE_REPEATABLE_FIELD",keys:ee.split("."),componentUid:X})},[]),Xp=(0,t.useCallback)(()=>{F({type:"TRIGGER_FORM_VALIDATION"})},[]);return Me?t.createElement(re.Redirect,{to:c}):B?t.createElement(h.ContentManagerEditViewDataManagerContext.Provider,{value:{addComponentToDynamicZone:He,addNonRepeatableComponentToField:tt,addRepeatableComponentToField:Bt,allLayoutData:e,checkFormErrors:Be,createActionAllowedFields:i,formErrors:z,hasDraftAndPublish:V,initialData:U,isCreatingEntry:d,isSingleType:f,shouldNotRunValidations:Z,status:T,layout:k,modifiedData:B,moveComponentField:Hp,moveComponentDown:Wp,moveComponentUp:Up,onChange:Tt,onPublish:nt,onUnpublish:x,readActionAllowedFields:C,redirectToPreviousPage:R,removeComponentFromDynamicZone:Qp,removeComponentFromField:Yp,removeRepeatableField:Jp,relationConnect:$t,relationDisconnect:Gp,relationLoad:Nt,relationReorder:Kp,slug:A,triggerFormValidation:Xp,updateActionAllowedFields:D,onPublishPromptDismissal:me,publishConfirmation:N}},p||!d&&!U.id?t.createElement(P.Main,{"aria-busy":"true"},t.createElement(h.LoadingIndicatorPage,null)):t.createElement(t.Fragment,null,t.createElement(re.Prompt,{when:!St()(B,U),message:Q({id:"global.prompt.unsaved"})}),t.createElement("form",{noValidate:!0,onSubmit:Re},s))):null};cr.defaultProps={from:"/",initialValues:null,redirectToPreviousPage(){}},cr.propTypes={allLayoutData:n().object.isRequired,allowedActions:n().object.isRequired,children:n().node.isRequired,componentsDataStructure:n().object.isRequired,contentTypeDataStructure:n().object.isRequired,createActionAllowedFields:n().array.isRequired,from:n().string,initialValues:n().object,isCreatingEntry:n().bool.isRequired,isLoadingForData:n().bool.isRequired,isSingleType:n().bool.isRequired,onPost:n().func.isRequired,onPublish:n().func.isRequired,onDraftRelationCheck:n().func.isRequired,onPut:n().func.isRequired,onUnpublish:n().func.isRequired,readActionAllowedFields:n().array.isRequired,redirectToPreviousPage:n().func,slug:n().string.isRequired,status:n().string.isRequired,updateActionAllowedFields:n().array.isRequired};var Ad=cr,lt=e=>he(`single-types/${e}`),Od=e=>Object.values(e||{}).reduce((r,o)=>Object.assign(r,o),{}),_o=(e={})=>{const{plugins:r,_q:o,...s}={...e,...Od(e.plugins)};return o&&ne()(s,"_q",encodeURIComponent(o)),`${(0,Ke.stringify)(s,{encode:!1,addQueryPrefix:!0})}`};const es=({allLayoutData:e,children:r,slug:o})=>{const s=(0,it.useQueryClient)(),{trackUsage:a}=(0,h.useTracking)(),{push:l}=(0,re.useHistory)(),{setCurrentStep:i}=(0,h.useGuidedTour)(),c=(0,t.useRef)(a),[u,d]=(0,t.useState)(!0),[{query:p,rawQuery:f}]=(0,h.useQueryParams)(),g=_o(p),y=(0,h.useNotification)(),b=(0,pe.useDispatch)(),{componentsDataStructure:E,contentTypeDataStructure:x,data:C,isLoading:R,status:A}=(0,pe.useSelector)(ar),T=(0,t.useCallback)(N=>{const S=Yr(N,e.contentType,e.components);return(0,h.formatContentTypeData)(S,e.contentType,e.components)},[e]);(0,t.useEffect)(()=>()=>{b(Ko())},[b]),(0,t.useEffect)(()=>{const N=Object.keys(e.components).reduce(($,Y)=>{const M=zt(L()(e,["components",Y,"attributes"],{}),e.components);return $[Y]=(0,h.formatContentTypeData)(M,e.components[Y],e.components),$},{}),S=zt(e.contentType.attributes,e.components),J=(0,h.formatContentTypeData)(S,e.contentType,e.components);b(Qo(N,J))},[e,b]),(0,t.useEffect)(()=>{const S=$e.Z.CancelToken.source();return(async $=>{b(nn()),d(!0);try{const{data:Y}=await ge.be.get(lt(`${o}${g}`),{cancelToken:$.token});b(or(T(Y))),d(!1)}catch(Y){if($e.Z.isCancel(Y))return;const M=L()(Y,"response.status",null);M===404&&b(sr(f,!0)),M===403&&(y({type:"info",message:{id:v("permissions.not-allowed.update")}}),l("/"))}})(S),()=>S.cancel("Operation canceled by the user.")},[T,l,o,b,g,f,y]);const D=(0,t.useCallback)(N=>{const S=N.response.data;let J=L()(S,["error","message"],"Bad Request");Array.isArray(J)&&(J=L()(J,["0","messages","0","id"])),typeof J=="string"&&y({type:"warning",message:J})},[y]),I=(0,t.useCallback)(async N=>{try{c.current("willDeleteEntry",N);const{data:S}=await ge.be.delete(lt(`${o}${g}`));return y({type:"success",message:{id:v("success.record.delete")}}),c.current("didDeleteEntry",N),Promise.resolve(S)}catch(S){return c.current("didNotDeleteEntry",{error:S,...N}),D(S),Promise.reject(S)}},[o,D,y,g]),F=(0,t.useCallback)(()=>{d(!0),b(sr(f,!0))},[b,f]),z=(0,t.useCallback)(async(N,S)=>{const J=lt(`${o}${f}`);try{b(ue("submit-pending"));const{data:$}=await ge.be.put(J,N);return c.current("didCreateEntry",S),y({type:"success",message:{id:v("success.record.save")}}),i("contentManager.success"),s.invalidateQueries(["relation"]),b(et(T($))),d(!1),b(ue("resolved")),Promise.resolve($)}catch($){return c.current("didNotCreateEntry",{error:$,trackerProperty:S}),D($),b(ue("resolved")),Promise.reject($)}},[T,D,o,b,f,y,i,s]),U=(0,t.useCallback)(async()=>{try{c.current("willCheckDraftRelations");const N=lt(`${o}/actions/numberOfDraftRelations`);b(ue("draft-relation-check-pending"));const S=await ge.be.get(N);return c.current("didCheckDraftRelations"),b(ue("resolved")),S.data.data}catch(N){return D(N),b(ue("resolved")),Promise.reject(N)}},[D,o,b]),B=(0,t.useCallback)(async()=>{try{c.current("willPublishEntry");const N=lt(`${o}/actions/publish${g}`);b(ue("publish-pending"));const{data:S}=await ge.be.post(N);return c.current("didPublishEntry"),y({type:"success",message:{id:v("success.record.publish")}}),b(et(T(S))),b(ue("resolved")),Promise.resolve(S)}catch(N){return D(N),b(ue("resolved")),Promise.reject(N)}},[T,D,o,g,b,y]),K=(0,t.useCallback)(async(N,S)=>{const J=lt(`${o}${f}`);try{c.current("willEditEntry",S),b(ue("submit-pending"));const{data:$}=await ge.be.put(J,N);return y({type:"success",message:{id:v("success.record.save")}}),c.current("didEditEntry",{trackerProperty:S}),s.invalidateQueries(["relation"]),b(et(T($))),b(ue("resolved")),Promise.resolve($)}catch($){return D($),c.current("didNotEditEntry",{error:$,trackerProperty:S}),b(ue("resolved")),Promise.reject($)}},[T,D,o,b,f,y,s]),j=(0,t.useCallback)(async()=>{const N=lt(`${o}/actions/unpublish${g}`);b(ue("unpublish-pending"));try{c.current("willUnpublishEntry");const{data:S}=await ge.be.post(N);c.current("didUnpublishEntry"),y({type:"success",message:{id:v("success.record.unpublish")}}),b(et(T(S))),b(ue("resolved"))}catch(S){b(ue("resolved")),D(S)}},[T,y,D,o,b,g]);return r({componentsDataStructure:E,contentTypeDataStructure:x,data:C,isCreatingEntry:u,isLoadingForData:R,onDelete:I,onDeleteSucceeded:F,onPost:z,onDraftRelationCheck:U,onPublish:B,onPut:K,onUnpublish:j,redirectionLink:"/",status:A})};es.propTypes={allLayoutData:n().shape({components:n().object.isRequired,contentType:n().object.isRequired}).isRequired,children:n().func.isRequired,slug:n().string.isRequired};var $d=(0,t.memo)(es),Nd=m(56243);function Bd(e,r){return o=>{const s=r();return t.createElement(e,{...o,...s})}}var qd=Bd;function jd(){const{initialData:e,hasDraftAndPublish:r}=(0,h.useCMEditViewDataManager)(),o=e.publishedAt!==void 0&&e.publishedAt!==null;return{hasDraftAndPublish:r,isPublished:o}}var Zd=jd;const zd=(0,w.default)(Nd.Z)`
992
- width: ${(0,h.pxToRem)(6)};
993
- height: ${(0,h.pxToRem)(6)};
994
- * {
995
- fill: ${({theme:e,$bulletColor:r})=>e.colors[r]};
996
- }
997
- `,ts=({hasDraftAndPublish:e,isPublished:r})=>{const{formatMessage:o}=(0,q.useIntl)();if(!e)return null;const s={draft:{textColor:"secondary700",bulletColor:"secondary600",box:{background:"secondary100",borderColor:"secondary200"}},published:{textColor:"success700",bulletColor:"success600",box:{background:"success100",borderColor:"success200"}}},a=r?s.published:s.draft;return t.createElement(H.x,{hasRadius:!0,as:"aside",paddingTop:4,paddingBottom:4,paddingLeft:5,paddingRight:5,...a.box},t.createElement(H.x,{as:_.k},t.createElement(zd,{$bulletColor:a.bulletColor}),t.createElement(H.x,{paddingLeft:3},t.createElement(G.Z,{textColor:a.textColor},o({id:v("containers.Edit.information.editing"),defaultMessage:"Editing"}),"\xA0"),t.createElement(G.Z,{fontWeight:"bold",textColor:a.textColor},r&&o({id:v("containers.Edit.information.publishedVersion"),defaultMessage:"published version"}),!r&&o({id:v("containers.Edit.information.draftVersion"),defaultMessage:"draft version"})))))};ts.propTypes={hasDraftAndPublish:n().bool.isRequired,isPublished:n().bool.isRequired};var Vd=qd(ts,Zd);const dr=60*1e3,ur=dr*60,rn=ur*24,ns=rn*30,rs=rn*365;var Wd=e=>e<dr?{unit:"second",value:-Math.round(e/1e3)}:e<ur?{unit:"minute",value:-Math.round(e/dr)}:e<rn?{unit:"hour",value:-Math.round(e/ur)}:e<ns?{unit:"day",value:-Math.round(e/rn)}:e<rs?{unit:"month",value:-Math.round(e/ns)}:{unit:"year",value:-Math.round(e/rs)},os=m(64421);const wt=({label:e,value:r})=>t.createElement(P.Flex,{justifyContent:"space-between"},t.createElement(P.Typography,{as:"dt",fontWeight:"bold",textColor:"neutral600"},e),t.createElement(P.Typography,{as:"dd"},r));wt.propTypes={label:n().string.isRequired,value:n().string.isRequired};var Ud=()=>{const{formatMessage:e,formatRelativeTime:r}=(0,q.useIntl)(),{initialData:o,isCreatingEntry:s}=(0,h.useCMEditViewDataManager)(),a=(0,t.useRef)(Date.now()),l=(u,d)=>{const{firstname:p,lastname:f,username:g}=o[d]??{},y=p??"",b=f??"",E=g??(0,os.Pp)(y,b),C=(o[u]?new Date(o[u]).getTime():Date.now())-a.current,{unit:R,value:A}=Wd(-C);return{at:r(A,R,{numeric:"auto"}),by:s?"-":E}},i=l("updatedAt","updatedBy"),c=l("createdAt","createdBy");return t.createElement(P.Stack,{spacing:2},t.createElement(P.Typography,{variant:"sigma",textColor:"neutral600",id:"additional-information"},e({id:v("containers.Edit.information"),defaultMessage:"Information"})),t.createElement(P.Box,{paddingBottom:4},t.createElement(P.Divider,null)),t.createElement(P.Stack,{spacing:4},t.createElement(P.Stack,{spacing:2,as:"dl"},t.createElement(wt,{label:e({id:v("containers.Edit.information.created"),defaultMessage:"Created"}),value:c.at}),t.createElement(wt,{label:e({id:v("containers.Edit.information.by"),defaultMessage:"By"}),value:c.by})),t.createElement(P.Stack,{spacing:2,as:"dl"},t.createElement(wt,{label:e({id:v("containers.Edit.information.lastUpdate"),defaultMessage:"Last update"}),value:i.at}),t.createElement(wt,{label:e({id:v("containers.Edit.information.by"),defaultMessage:"By"}),value:i.by}))))},on=m(29439),sn=m(22342),an=m(96166),ln=m(88693),Et=m(66456);function Hd(e,r){return o=>{const s=r();return t.createElement(e,{...o,...s})}}var Gd=Hd;function Kd(){const{initialData:e,isCreatingEntry:r,isSingleType:o,status:s,layout:a,hasDraftAndPublish:l,modifiedData:i,onPublish:c,onUnpublish:u,publishConfirmation:d,onPublishPromptDismissal:p}=(0,h.useCMEditViewDataManager)();return{initialData:e,isCreatingEntry:r,isSingleType:o,status:s,layout:a,hasDraftAndPublish:l,modifiedData:i,onPublish:c,onUnpublish:u,publishConfirmation:d,onPublishPromptDismissal:p}}var Qd=Kd;const ss=(0,w.default)(_.k)`
998
- text-align: center;
999
- `,as=({allowedActions:{canUpdate:e,canCreate:r,canPublish:o},initialData:s,isCreatingEntry:a,isSingleType:l,hasDraftAndPublish:i,layout:c,modifiedData:u,onPublish:d,onUnpublish:p,status:f,publishConfirmation:{show:g,draftCount:y},onPublishPromptDismissal:b})=>{const{goBack:E}=(0,re.useHistory)(),[x,C]=(0,t.useState)(!1),{formatMessage:R}=(0,q.useIntl)(),A=L()(c,["settings","mainField"],"id"),T=L()(c,["info","displayName"],"NOT FOUND"),D=!St()(s,u)||a&&!Ie()(u);let F=R({id:v("containers.Edit.pluginHeader.title.new"),defaultMessage:"Create an entry"});!a&&!l&&(F=s[A]||T),l&&(F=T);let z=null;if(a&&r&&(z=t.createElement(de.K,{horizontal:!0,spacing:2},i&&t.createElement(Ee.z,{disabled:!0,startIcon:t.createElement(Et.Z,null),variant:"secondary"},R({id:"app.utils.publish",defaultMessage:"Publish"})),t.createElement(Ee.z,{disabled:!D,loading:f==="submit-pending",type:"submit"},R({id:v("containers.Edit.submit"),defaultMessage:"Save"})))),!a&&e){const j=i&&o,N=!Ie()(s.publishedAt),S=N?f==="unpublish-pending":f==="publish-pending",J=N?{id:"app.utils.unpublish",defaultMessage:"Unpublish"}:{id:"app.utils.publish",defaultMessage:"Publish"},$=N?()=>C(!0):()=>d();z=t.createElement(_.k,null,j&&t.createElement(Ee.z,{disabled:D,loading:S,onClick:$,startIcon:t.createElement(Et.Z,null),variant:"secondary"},R(J)),t.createElement(H.x,{paddingLeft:j?2:0},t.createElement(Ee.z,{disabled:!D,loading:f==="submit-pending",type:"submit"},R({id:v("containers.Edit.submit"),defaultMessage:"Save"}))))}const U=()=>C(j=>!j),B=()=>{U(),p()},K=`${R({id:v("api.id"),defaultMessage:"API ID "})} : ${c.apiID}`;return t.createElement(t.Fragment,null,t.createElement(se.T,{title:F.toString(),primaryAction:z,subtitle:K,navigationAction:t.createElement(h.Link,{startIcon:t.createElement(on.Z,null),onClick:j=>{j.preventDefault(),E()},to:"/"},R({id:"global.back",defaultMessage:"Back"}))}),t.createElement(sn.V,{onClose:U,title:"Confirmation",labelledBy:"confirmation",describedBy:"confirm-description",isOpen:x},t.createElement(an.a,{icon:t.createElement(Lt.default,null)},t.createElement(de.K,{spacing:2},t.createElement(_.k,{justifyContent:"center",style:{textAlign:"center"}},t.createElement(G.Z,{id:"confirm-description"},R({id:v("popUpWarning.warning.unpublish"),defaultMessage:"Unpublish this content will automatically change it to a draft."},{br:()=>t.createElement("br",null)}))),t.createElement(_.k,{justifyContent:"center",style:{textAlign:"center"}},t.createElement(G.Z,{id:"confirm-description"},R({id:v("popUpWarning.warning.unpublish-question"),defaultMessage:"Are you sure you want to unpublish it?"}))))),t.createElement(ln.c,{startAction:t.createElement(Ee.z,{onClick:U,variant:"tertiary"},R({id:"components.popUpWarning.button.cancel",defaultMessage:"Cancel"})),endAction:t.createElement(Ee.z,{variant:"danger-light",onClick:B},R({id:"components.popUpWarning.button.confirm",defaultMessage:"Confirm"}))})),t.createElement(sn.V,{onClose:b,title:R({id:v("popUpWarning.warning.has-draft-relations.title"),defaultMessage:"Confirmation"}),labelledBy:"confirmation",describedBy:"confirm-description",isOpen:g},t.createElement(an.a,{icon:t.createElement(Lt.default,null)},t.createElement(de.K,{spacing:2},t.createElement(ss,{justifyContent:"center"},t.createElement(G.Z,{id:"confirm-description"},y,R({id:v("popUpwarning.warning.has-draft-relations.message"),defaultMessage:"<b>{count, plural, one { relation is} other { relations are}}</b> not published yet and might lead to unexpected behavior."},{b:j=>t.createElement(G.Z,{fontWeight:"bold"},j),count:y}))),t.createElement(ss,{justifyContent:"center"},t.createElement(G.Z,{id:"confirm-description"},R({id:v("popUpWarning.warning.publish-question"),defaultMessage:"Do you still want to publish?"}))))),t.createElement(ln.c,{startAction:t.createElement(Ee.z,{onClick:b,variant:"tertiary"},R({id:"components.popUpWarning.button.cancel",defaultMessage:"Cancel"})),endAction:t.createElement(Ee.z,{variant:"success",onClick:d},R({id:v("popUpwarning.warning.has-draft-relations.button-confirm"),defaultMessage:"Publish"}))})))};as.propTypes={allowedActions:n().shape({canUpdate:n().bool.isRequired,canCreate:n().bool.isRequired,canPublish:n().bool.isRequired}).isRequired,initialData:n().object.isRequired,isCreatingEntry:n().bool.isRequired,isSingleType:n().bool.isRequired,status:n().string.isRequired,layout:n().object.isRequired,hasDraftAndPublish:n().bool.isRequired,modifiedData:n().object.isRequired,onPublish:n().func.isRequired,onUnpublish:n().func.isRequired,publishConfirmation:n().shape({show:n().bool.isRequired,draftCount:n().number.isRequired}).isRequired,onPublishPromptDismissal:n().func.isRequired};const Yd=(0,t.memo)(as,Xe());var Jd=Gd(Yd,Qd),Xd=e=>{if(!e.layouts)return[];const r=e.layouts.edit,o=e.attributes,s=i=>(0,te.get)(o,[i,"type"],"");let a=0;const l=[];return r.forEach(i=>{const c=i.some(({name:u})=>s(u)==="dynamiczone");l[a]||(l[a]=[]),c?(a=a===0&&(0,te.isEmpty)(l[0])?0:a+1,l[a]||(l[a]=[]),l[a].push(i),a+=1):l[a].push(i)}),l.filter(i=>i.length>0)},_d=(e,r)=>{const o=s=>{const a=(0,h.findMatchingPermissions)(e,[{action:`plugin::content-manager.explorer.${s}`,subject:r}]);return(0,te.uniq)((0,te.flatMap)(a,"properties.fields"))};return{createActionAllowedFields:o("create"),readActionAllowedFields:o("read"),updateActionAllowedFields:o("update")}},eu=e=>{if(!e)return[];const o=[...e.contentType.layouts.edit,...Object.values(e.components).flatMap(a=>a.layouts.edit)].flat().filter(a=>a.fieldSchema.customField).map(a=>a.fieldSchema.customField);return[...new Set(o)]};function tu(e,r){return o=>{const s=r();return t.createElement(e,{...o,...s})}}var nu=tu;function ru(){const{hasDraftAndPublish:e,modifiedData:r}=(0,h.useCMEditViewDataManager)();let o={};return e&&(o=(0,te.isEmpty)(r.publishedAt)?{status:"draft"}:{status:"published"}),{hasDraftAndPublish:e,trackerProperty:o}}var ou=ru;const is=({isCreatingEntry:e,onDelete:r,onDeleteSucceeded:o,trackerProperty:s})=>{const[a,l]=(0,t.useState)(!1),[i,c]=(0,t.useState)(!1),{formatMessage:u}=(0,q.useIntl)(),d=(0,h.useNotification)(),p=()=>l(g=>!g),f=async()=>{try{c(!0),await r(s),c(!1),p(),o()}catch(g){const y=L()(g,"response.payload.message",u({id:v("error.record.delete")}));c(!1),p(),d({type:"warning",message:y})}};return e?null:t.createElement(t.Fragment,null,t.createElement(Ee.z,{onClick:p,size:"S",startIcon:t.createElement(ft.default,null),variant:"danger-light"},u({id:v("containers.Edit.delete-entry"),defaultMessage:"Delete this entry"})),t.createElement(h.ConfirmDialog,{isConfirmButtonLoading:i,isOpen:a,onConfirm:f,onToggleDialog:p}))};is.propTypes={isCreatingEntry:n().bool.isRequired,onDelete:n().func.isRequired,onDeleteSucceeded:n().func.isRequired,trackerProperty:n().object.isRequired};const su=(0,t.memo)(is,Xe());var au=nu(su,ou);const mr=({columns:e,customFieldInputs:r})=>t.createElement(Ve.r,{gap:4},e.map(({fieldSchema:o,labelAction:s,metadatas:a,name:l,size:i,queryInfos:c})=>{if(o.type==="component"){const{component:d,max:p,min:f,repeatable:g=!1,required:y=!1}=o;return t.createElement(ke.P,{col:i,s:12,xs:12,key:d},t.createElement(Xt,{componentUid:d,labelAction:s,isRepeatable:g,intlLabel:{id:a.label,defaultMessage:a.label},max:p,min:f,name:l,required:y}))}return t.createElement(ke.P,{col:i,key:l,s:12,xs:12},t.createElement(Vn,{size:i,fieldSchema:o,keys:l,labelAction:s,metadatas:a,queryInfos:c,customFieldInputs:r}))}));mr.defaultProps={customFieldInputs:{}},mr.propTypes={columns:n().array.isRequired,customFieldInputs:n().object};var iu=mr;const pr=e=>e["content-manager_editViewLayoutManager"].currentLayout,lu=(0,xt.P1)(pr,e=>Xd(e?.contentType??{})),cu=(0,xt.P1)(pr,e=>eu(e)),ls=ce.Z.contentManager,du=[{action:"plugin::content-type-builder.read",subject:null}],gr=({allowedActions:e,isSingleType:r,goBack:o,slug:s,id:a,origin:l,userPermissions:i})=>{const{trackUsage:c}=(0,h.useTracking)(),{formatMessage:u}=(0,q.useIntl)(),{layout:d,formattedContentTypeLayout:p,customFieldUids:f}=(0,pe.useSelector)(D=>({layout:pr(D),formattedContentTypeLayout:lu(D),customFieldUids:cu(D)})),{isLazyLoading:g,lazyComponentStore:y}=Wn(f),{createActionAllowedFields:b,readActionAllowedFields:E,updateActionAllowedFields:x}=_d(i,s),C=r?ls.singleTypesConfigurations:ls.collectionTypesConfigurations,R=`/content-manager/${r?"singleType":"collectionType"}/${s}/configurations/edit`,A=r?$d:ad,T=D=>D.every(I=>I.every(F=>F.fieldSchema.type==="dynamiczone"));return g?t.createElement(h.LoadingIndicatorPage,null):t.createElement(A,{allLayoutData:d,slug:s,id:a,origin:l},({componentsDataStructure:D,contentTypeDataStructure:I,data:F,isCreatingEntry:z,isLoadingForData:U,onDelete:B,onDeleteSucceeded:K,onPost:j,onPublish:N,onDraftRelationCheck:S,onPut:J,onUnpublish:$,redirectionLink:Y,status:M})=>t.createElement(Ad,{allowedActions:e,allLayoutData:d,createActionAllowedFields:b,componentsDataStructure:D,contentTypeDataStructure:I,from:Y,initialValues:F,isCreatingEntry:z,isLoadingForData:U,isSingleType:r,onPost:j,onPublish:N,onDraftRelationCheck:S,onPut:J,onUnpublish:$,readActionAllowedFields:E,redirectToPreviousPage:o,slug:s,status:M,updateActionAllowedFields:x},t.createElement(ve.o,{"aria-busy":M!=="resolved"},t.createElement(Jd,{allowedActions:e}),t.createElement(gt.D,null,t.createElement(Ve.r,{gap:4},t.createElement(ke.P,{col:9,s:12},t.createElement(de.K,{spacing:6},p.map((k,V)=>{if(T(k)){const{0:{0:{name:Z,fieldSchema:O,metadatas:Q,labelAction:oe}}}=k;return t.createElement(H.x,{key:V},t.createElement(Ve.r,{gap:4},t.createElement(ke.P,{col:12,s:12,xs:12},t.createElement(rd,{name:Z,fieldSchema:O,labelAction:oe,metadatas:Q}))))}return t.createElement(H.x,{key:V,hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingLeft:6,paddingRight:6,paddingTop:6,paddingBottom:6,borderColor:"neutral150"},t.createElement(de.K,{spacing:6},k.map((Z,O)=>t.createElement(iu,{columns:Z,customFieldInputs:y,key:O}))))}))),t.createElement(ke.P,{col:3,s:12},t.createElement(de.K,{spacing:2},t.createElement(Vd,null),t.createElement(H.x,{as:"aside","aria-labelledby":"additional-information",background:"neutral0",borderColor:"neutral150",hasRadius:!0,paddingBottom:4,paddingLeft:4,paddingRight:4,paddingTop:6,shadow:"tableShadow"},t.createElement(Ud,null),t.createElement(Qt,{area:"contentManager.editView.informations"})),t.createElement(H.x,{as:"aside","aria-labelledby":"links"},t.createElement(de.K,{spacing:2},t.createElement(Qt,{area:"contentManager.editView.right-links",slug:s}),s!=="strapi::administrator"&&t.createElement(h.CheckPermissions,{permissions:du},t.createElement(h.LinkButton,{onClick:()=>{c("willEditEditLayout")},size:"S",startIcon:t.createElement(je.Z,null),style:{width:"100%"},to:`/plugins/content-type-builder/content-types/${s}`,variant:"secondary"},u({id:v("link-to-ctb"),defaultMessage:"Edit the model"}))),t.createElement(h.CheckPermissions,{permissions:C},t.createElement(h.LinkButton,{size:"S",startIcon:t.createElement(ai.Z,null),style:{width:"100%"},to:R,variant:"secondary"},u({id:"app.links.configure-view",defaultMessage:"Configure the view"}))),e.canDelete&&t.createElement(au,{isCreatingEntry:z,onDelete:B,onDeleteSucceeded:K}))))))))))};gr.defaultProps={id:null,isSingleType:!1,origin:null,userPermissions:[]},gr.propTypes={allowedActions:n().shape({canRead:n().bool.isRequired,canUpdate:n().bool.isRequired,canCreate:n().bool.isRequired,canDelete:n().bool.isRequired}).isRequired,id:n().string,isSingleType:n().bool,goBack:n().func.isRequired,origin:n().string,slug:n().string.isRequired,userPermissions:n().array};var uu=(0,t.memo)(gr);const fr=e=>{const r=(0,t.useMemo)(()=>Gr(e.slug),[e.slug]),{isLoading:o,allowedActions:s}=(0,h.useRBAC)(r,e.userPermissions);return o?t.createElement(h.LoadingIndicatorPage,null):t.createElement(uu,{...e,allowedActions:s})};fr.defaultProps={permissions:[]},fr.propTypes={permissions:n().array,slug:n().string.isRequired,userPermissions:n().array.isRequired};var mu=(0,t.memo)(fr,Xe());const cs=({layout:e,...r})=>{const o=(0,pe.useSelector)(io),s=(0,pe.useDispatch)(),[{query:a}]=(0,h.useQueryParams)(),{runHookWaterfall:l}=(0,h.useStrapiApp)(),i=bo(a,r.slug,"editView");return(0,t.useEffect)(()=>{const c=l(Kt.Eo,{layout:e,query:a});return s(oi(c.layout,a)),()=>{s(ri())}},[e,s,a,l]),!o||!i?t.createElement(h.LoadingIndicatorPage,null):t.createElement(mu,{...r,userPermissions:i})};cs.propTypes={layout:n().shape({components:n().object.isRequired,contentType:n().shape({uid:n().string.isRequired,settings:n().object.isRequired,metadatas:n().object.isRequired,options:n().object.isRequired,attributes:n().object.isRequired}).isRequired}).isRequired};var cn=cs,pu=m(23940),Pt=m.n(pu),gu=m(3704),fu=m.n(gu),ds=m(9026);const hr=e=>e.reduce((r,o)=>r+o.size,0),hu=e=>e.reduce((r,o,s)=>{const a={rowId:s,rowContent:o};return r.concat(a)},[]),Ct=e=>e.reduce((r,o)=>{let s=[];const a=o.rowContent.reduce((c,u)=>{const d=hr(c);return u.name==="_TEMP_"||(d+u.size<=12?c.push(u):s.push(u)),c},[]),l=r.length===0?0:Math.max.apply(Math,r.map(c=>c.rowId))+1,i=hr(a);if(i<12&&a.push({name:"_TEMP_",size:12-i}),r.push({rowId:l,rowContent:a}),s.length>0){const c=hr(s);c<12&&s.push({name:"_TEMP_",size:12-c}),r.push({rowId:l+1,rowContent:s}),s=[]}return r},[]).filter(r=>r.rowContent.length>0).filter(r=>r.rowContent.length===1?r.rowContent[0].name!=="_TEMP_":!0),yu=e=>e.reduce((r,o)=>{const s=o.rowContent.filter(a=>a.name!=="_TEMP_");return r.concat([s])},[]),us=e=>{switch(e){case"boolean":case"date":case"integer":case"float":case"biginteger":case"decimal":case"time":return 4;case"json":case"component":case"richtext":case"dynamiczone":return 12;default:return 6}},bu=(e,r=[])=>r.reduce((o,{rowContent:s})=>{const a=s.find(l=>l.name===e)?.size??null;return a&&(o=a),o},null),Eu=(e,r,o=[])=>o.map(s=>(s.rowContent=s.rowContent.map(a=>a.name===e?{...a,size:r}:a),s)),yr={fieldForm:{},componentLayouts:{},metaToEdit:"",initialData:{},metaForm:{},modifiedData:{}};var Cu=(e=yr,r)=>(0,Gt.default)(e,o=>{const s=["modifiedData","layouts","edit"];switch(r.type){case"MOVE_ROW":{const a=L()(e,s,[]),{fromIndex:l,toIndex:i}=r;ne()(o,s,jt(a,l,i));break}case"ON_ADD_FIELD":{const a=ze()(e),l=us(L()(a,["modifiedData","attributes",r.name,"type"],"")),i=L()(a,s,[]).length,c=[...s,i-1,"rowContent"],u=L()(a,c,[]);let d=L()(a,s,[]);Array.isArray(u)?ne()(d,[i>0?i-1:0,"rowContent"],[...u,{name:r.name,size:l}]):ne()(d,[i>0?i-1:0,"rowContent"],[{name:r.name,size:l}]);const p=Ct(d);ne()(o,s,p);break}case"ON_CHANGE":{ne()(o,["modifiedData",...r.keys],r.value);break}case"ON_CHANGE_META":{ne()(o,["metaForm","metadata",...r.keys],r.value);break}case"ON_CHANGE_SIZE":{ne()(o,["metaForm","size"],r.value);break}case"ON_RESET":{o.modifiedData=e.initialData;break}case"REMOVE_FIELD":{const a=L()(e,[...s,r.rowIndex,"rowContent"],[]);let l=ze()(e);if(a.length===1||a.length===2&&L()(a,[1,"name"],"")==="_TEMP_"){const c=L()(e,s,[]);ne()(l,s,c.filter((u,d)=>r.rowIndex!==d))}else ne()(l,[...s,r.rowIndex,"rowContent"],a.filter((c,u)=>u!==r.fieldIndex));const i=Ct(L()(l,s,[]));ne()(o,s,i);break}case"REORDER_DIFF_ROW":{const a=L()(e,[...s,r.dragRowIndex,"rowContent"],[]),l=L()(e,[...s,r.hoverRowIndex,"rowContent"],[]),i=L()(e,[...s,r.dragRowIndex,"rowContent",r.dragIndex],{}),c=[...l,i];let u=ze()(e);ne()(u,[...s,r.dragRowIndex,"rowContent"],a.filter((p,f)=>r.dragIndex!==f)),ne()(u,[...s,r.hoverRowIndex,"rowContent"],jt(c,c.length-1,r.hoverIndex));const d=Ct(L()(u,s,[]));ne()(o,s,d);break}case"REORDER_ROW":{const a=ze()(e),l=L()(a,[...s,r.dragRowIndex,"rowContent"],[]);ne()(a,[...s,r.dragRowIndex,"rowContent"],jt(l,r.dragIndex,r.hoverIndex));const i=Ct(L()(a,s,[]));ne()(o,s,i);break}case"SET_FIELD_TO_EDIT":{o.metaToEdit=r.name,o.metaForm={metadata:L()(e,["modifiedData","metadatas",r.name,"edit"],{}),size:bu(r.name,e.modifiedData?.layouts?.edit)??us()};break}case"SUBMIT_META_FORM":{ne()(o,["modifiedData","metadatas",e.metaToEdit,"edit"],e.metaForm.metadata);const a=ze()(L()(e,s,[])),l=Eu(e.metaToEdit,e.metaForm.size,a);l.length>0&&ne()(o,s,Ct(l));break}case"SUBMIT_SUCCEEDED":{o.initialData=e.modifiedData;break}case"UNSET_FIELD_TO_EDIT":{o.metaToEdit="",o.metaForm={};break}default:return o}}),vu=(e,r,o)=>{let s=(0,te.cloneDeep)(r);return(0,te.set)(s,["layouts","edit"],Ct(hu(r.layouts.edit))),{...e,initialData:s,modifiedData:s,componentLayouts:o}},Ue=m(46788),dn=m(19406),ms=m(45112);const ps=({componentUid:e})=>{const{componentLayouts:r}=at(),{formatMessage:o}=(0,q.useIntl)(),s=L()(r,[e],{}),a=L()(s,["layouts","edit"],[]);return t.createElement(H.x,{padding:3},a.map((l,i)=>t.createElement(Ve.r,{gap:4,key:i},l.map(c=>t.createElement(ke.P,{key:c.name,col:c.size},t.createElement(H.x,{paddingTop:2},t.createElement(_.k,{alignItems:"center",background:"neutral0",paddingLeft:3,paddingRight:3,height:`${32/16}rem`,hasRadius:!0,borderColor:"neutral200"},t.createElement(G.Z,{textColor:"neutral800"},c.name))))))),t.createElement(H.x,{paddingTop:2},t.createElement(h.Link,{startIcon:t.createElement(ms.Z,null),to:`/content-manager/components/${e}/configurations/edit`},o({id:v("components.FieldItem.linkToComponentLayout"),defaultMessage:"Set the component's layout"}))))};ps.propTypes={componentUid:n().string.isRequired};var Ru=ps;const Tu=(0,w.default)(P.Flex)`
1000
- text-decoration: none;
1001
-
1002
- &:focus,
1003
- &:hover {
1004
- ${({theme:e})=>`
1005
- background-color: ${e.colors.primary100};
1006
- border-color: ${e.colors.primary200};
1007
-
1008
- ${P.Typography} {
1009
- color: ${e.colors.primary600};
1010
- }
1011
- `}
1012
-
1013
- /* > ComponentIcon */
1014
- > div:first-child {
1015
- background: ${({theme:e})=>e.colors.primary200};
1016
- color: ${({theme:e})=>e.colors.primary600};
1017
- }
1018
- }
1019
- `,gs=({components:e})=>{const{componentLayouts:r}=at();return t.createElement(P.Stack,{spacing:2,horizontal:!0,overflow:"scroll hidden",padding:3},e.map(o=>t.createElement(Tu,{hasRadius:!0,background:"neutral0",justifyContent:"center",alignItems:"center",height:`${84/16}rem`,minWidth:`${140/16}rem`,key:o,padding:2,direction:"column",borderColor:"neutral200",as:re.Link,to:`/content-manager/components/${o}/configurations/edit`},t.createElement(tn,null),t.createElement(P.Box,{paddingTop:1},t.createElement(P.Typography,{fontSize:1,textColor:"neutral600",fontWeight:"bold"},r?.[o]?.info?.displayName??"")))))};gs.propTypes={components:n().arrayOf(n().string).isRequired};var Mu=gs;const fs=(0,w.default)(Ne.h)`
1020
- background-color: transparent;
1021
- path {
1022
- fill: ${({theme:e})=>e.colors.neutral600};
1023
- }
1024
- `,br=({attribute:e,onEditField:r,onDeleteField:o,children:s})=>{const{formatMessage:a}=(0,q.useIntl)();return t.createElement(H.x,{overflow:"hidden",width:"100%"},t.createElement(_.k,{paddingLeft:3,alignItems:"center",justifyContent:"space-between"},t.createElement(G.Z,{fontWeight:"semiBold",textColor:"neutral800",ellipsis:!0},s),t.createElement(_.k,null,t.createElement(fs,{label:a({id:v("containers.ListSettingsView.modal-form.edit-label"),defaultMessage:"Edit {fieldName}"},{fieldName:s}),onClick:r,icon:t.createElement(je.Z,null),noBorder:!0}),t.createElement(fs,{label:a({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:s}),"data-testid":"delete-field",onClick:o,icon:t.createElement(ft.default,null),noBorder:!0}))),e?.type==="component"&&t.createElement(Ru,{componentUid:e.component}),e?.type==="dynamiczone"&&t.createElement(Mu,{components:e.components}))};br.defaultProps={attribute:void 0},br.propTypes={attribute:n().shape({components:n().array,component:n().string,type:n().string}),onEditField:n().func.isRequired,onDeleteField:n().func.isRequired,children:n().string.isRequired};var Du=br;const ku=(0,w.default)(_.k)`
1025
- position: relative;
1026
- ${({isFirst:e,isLast:r,hasHorizontalPadding:o})=>e?`
1027
- padding-right: 4px;
1028
- `:r?`
1029
- padding-left: 4px;
1030
- `:o?`
1031
- padding: 0 4px;
1032
- `:""}
1033
- ${({showRightCarret:e,showLeftCarret:r,theme:o})=>e?`
1034
- &:after {
1035
- content: '';
1036
- position: absolute;
1037
- right: -1px;
1038
- background-color: ${o.colors.primary600};
1039
- width: 2px;
1040
- height: 100%;
1041
- align-self: stretch;
1042
- z-index: 1;
1043
- }
1044
- `:r?`
1045
- &:before {
1046
- content: '';
1047
- position: absolute;
1048
- left: -1px;
1049
- background-color: ${o.colors.primary600};
1050
- width: 2px;
1051
- height: 100%;
1052
- align-self: stretch;
1053
- z-index: 1;
1054
- }
1055
- `:""};
1056
- `,xu=(0,w.default)(mt.Z)`
1057
- height: ${12/16}rem;
1058
- width: ${12/16}rem;
1059
- path {
1060
- fill: ${({theme:e})=>e.colors.neutral600};
1061
- }
1062
- `,Iu=(0,w.default)(_.k)`
1063
- display: ${({dragStart:e})=>e?"none":"flex"};
1064
- opacity: ${({isDragging:e,isFullSize:r,isHidden:o})=>e&&!r?.2:e&&r||o?0:1};
1065
- `,Lu=(0,w.default)(_.k)`
1066
- cursor: all-scroll;
1067
- border-right: 1px solid ${({theme:e})=>e.colors.neutral200};
1068
- `,Er=({attribute:e,children:r,index:o,lastIndex:s,moveItem:a,moveRow:l,name:i,onDeleteField:c,onEditField:u,rowIndex:d,size:p})=>{const[f,g]=(0,t.useState)(!1),y=i==="_TEMP_",{setIsDraggingSibling:b}=at(),E=p===12,x=(0,t.useRef)(null),C=(0,t.useRef)(null),[{clientOffset:R,isOver:A},T]=(0,qe.useDrop)({accept:be.EDIT_FIELD,hover($,Y){if(!C.current||$.size!==12)return;const M=Y.getItem().index,k=o,V=Y.getItem().rowIndex,Z=d;if(M===k&&V===Z)return;const O=C.current.getBoundingClientRect(),Q=(O.bottom-O.top)/2,Me=Y.getClientOffset().y-O.top;V<Z&&Me<Q||V>Z&&Me>Q||(l(V,Z),$.rowIndex=Z,$.itemIndex=k)},drop($,Y){if(!C.current)return;const M=Y.getItem().index,k=o,V=Y.getItem().rowIndex,Z=d;if($.size===12||M===k&&V===Z)return;const O=C.current.getBoundingClientRect();if(Math.abs(Y.getClientOffset().x-O.left)>O.width/1.8){a(M,k+1,V,Z),$.itemIndex=k+1,$.rowIndex=Z;return}a(M,k,V,Z),$.itemIndex=k,$.rowIndex=Z},collect:$=>({canDrop:$.canDrop(),clientOffset:$.getClientOffset(),isOver:$.isOver(),isOverCurrent:$.isOver({shallow:!0}),itemType:$.getItemType()})}),[{isDragging:D,getItem:I},F,z]=(0,qe.useDrag)({type:be.EDIT_FIELD,item(){return b(!0),{index:o,labelField:r,rowIndex:d,name:i,size:p}},canDrag(){return i!=="_TEMP_"},collect:$=>({isDragging:$.isDragging(),getItem:$.getItem()}),end(){b(!1)}});(0,t.useEffect)(()=>{z((0,kt.rX)(),{captureDraggingState:!0})},[z]);const U={dragRef:F(x),dropRef:T(C)};let B=!1,K=!1;if(C.current&&R){const $=C.current.getBoundingClientRect();B=A&&I.size!==12&&Math.abs(R.x-$.left)<$.width/2,K=A&&I.size!==12&&Math.abs(R.x-$.left)>$.width/2,i==="_TEMP_"&&(B=A&&I.size!==12,K=!1)}const j=()=>e&&E?`${74/16}rem`:`${32/16}rem`,N=o===0&&!E,S=o===s&&!E,J=o!==0&&!E;return t.createElement(ke.P,{col:p},t.createElement(ku,{ref:U.dropRef,showLeftCarret:B,showRightCarret:K,isFirst:N,isLast:S,hasHorizontalPadding:J,onDrag:()=>{E&&!f&&g(!0)},onDragEnd:()=>{E&&g(!1)}},f&&E&&t.createElement(H.x,{width:"100%",height:"2px",background:"primary600"}),t.createElement(Iu,{width:E&&f?0:"100%",borderColor:"neutral150",hasRadius:!0,background:"neutral100",minHeight:j(),alignItems:"stretch",isDragging:D,dragStart:f,isFullSize:E,isHidden:y},t.createElement(Lu,{as:"span",type:"button",ref:U.dragRef,onClick:$=>$.stopPropagation(),alignItems:"center",paddingLeft:3,paddingRight:3,tabIndex:-1},t.createElement(xu,null)),!y&&t.createElement(Du,{attribute:e,onEditField:u,onDeleteField:c},r))))};Er.defaultProps={attribute:void 0},Er.propTypes={attribute:n().shape({components:n().array,component:n().string,type:n().string}),children:n().string.isRequired,index:n().number.isRequired,moveItem:n().func.isRequired,moveRow:n().func.isRequired,name:n().string.isRequired,onDeleteField:n().func.isRequired,onEditField:n().func.isRequired,rowIndex:n().number.isRequired,lastIndex:n().number.isRequired,size:n().number.isRequired};var Su=Er;const hs=({rowItem:e,onRemoveField:r,rowId:o,rowIndex:s,index:a,lastIndex:l})=>{const{setEditFieldToSelect:i,attributes:c,modifiedData:u,moveRow:d,moveItem:p}=at(),f=L()(c,[e.name],{}),g=L()(u,["metadatas",e.name,"edit","label"],"");return t.createElement(Su,{onEditField:()=>i(e.name),onDeleteField:()=>r(o,a),attribute:f,index:a,lastIndex:l,rowIndex:s,name:e.name,size:e.size,moveRow:d,moveItem:p},g||e.name)};hs.propTypes={index:n().number.isRequired,lastIndex:n().number.isRequired,onRemoveField:n().func.isRequired,rowId:n().number.isRequired,rowIndex:n().number.isRequired,rowItem:n().object.isRequired};var Fu=hs;const ys=({row:e,onRemoveField:r,rowIndex:o})=>t.createElement(Ve.r,null,e.rowContent.map((s,a)=>t.createElement(Fu,{key:s.name,rowItem:s,index:a,rowId:e.rowId,onRemoveField:r,rowIndex:o,lastIndex:e.rowContent.length-1})));ys.propTypes={onRemoveField:n().func.isRequired,row:n().object.isRequired,rowIndex:n().number.isRequired};var wu=ys;const Pu=[{action:"plugin::content-type-builder.read",subject:null}];var Au=()=>{const{trackUsage:e}=(0,h.useTracking)(),{formatMessage:r}=(0,q.useIntl)(),{slug:o,modifiedData:s,isContentTypeView:a}=at(),l=a?"content-types":"components",i=`/plugins/content-type-builder/${l==="content-types"?l:"component-categories"}`,c=L()(s,"category",""),u=l==="content-types"?o:`${c}/${o}`,d=()=>{e("willEditEditLayout")};return o==="strapi::administrator"?null:t.createElement(h.CheckPermissions,{permissions:Pu},t.createElement(h.LinkButton,{to:`${i}/${u}`,onClick:d,size:"S",startIcon:t.createElement(je.Z,null),variant:"secondary"},r({id:v(`edit-settings-view.link-to-ctb.${l}`),defaultMessage:"Edit the content type"})))};const bs=({editLayout:e,fields:r,onRemoveField:o,onAddField:s})=>{const{formatMessage:a}=(0,q.useIntl)();return t.createElement(de.K,{spacing:4},t.createElement(_.k,{justifyContent:"space-between"},t.createElement("div",null,t.createElement(H.x,null,t.createElement(G.Z,{fontWeight:"bold"},a({id:v("containers.ListPage.displayedFields"),defaultMessage:"Displayed fields"}))),t.createElement(H.x,null,t.createElement(G.Z,{variant:"pi",textColor:"neutral600"},a({id:"containers.SettingPage.editSettings.description",defaultMessage:"Drag & drop the fields to build the layout"})))),t.createElement(Au,null)),t.createElement(H.x,{padding:4,hasRadius:!0,borderStyle:"dashed",borderWidth:"1px",borderColor:"neutral300"},t.createElement(de.K,{spacing:2},e.map((l,i)=>t.createElement(wu,{key:l.rowId,row:l,rowIndex:i,onRemoveField:o})),t.createElement(Ue.O,{id:"label",label:a({id:v("containers.SettingPage.add.field"),defaultMessage:"Insert another field"}),as:Ee.z,"data-testid":"add-field",fullWidth:!0,startIcon:t.createElement(dn.default,null),endIcon:null,variant:"secondary",disabled:r.length===0},r.map(l=>t.createElement(Ue.s,{key:l,onClick:()=>s(l)},l))))))};bs.propTypes={editLayout:n().array.isRequired,fields:n().array.isRequired,onAddField:n().func.isRequired,onRemoveField:n().func.isRequired};var Ou=bs,Es=m(85025),Cs=m(55225),vs=m(31600),Rs=m(11406),un=m(88675),$u=m(73779),Nu=m(22348),Ts=m(7184),Cr=m(43475),Bu=m(82512),vr=m(83218),qu=m(17757),At=m(32031),ju=m(872),Zu=m(1176),zu=m(15431);const Ms={biginteger:t.createElement(At.Z,null),boolean:t.createElement($u.Z,null),date:t.createElement(un.Z,null),datetime:t.createElement(un.Z,null),decimal:t.createElement(At.Z,null),email:t.createElement(Nu.Z,null),enum:t.createElement(Ts.Z,null),enumeration:t.createElement(Ts.Z,null),file:t.createElement(Cr.Z,null),files:t.createElement(Cr.Z,null),float:t.createElement(At.Z,null),integer:t.createElement(At.Z,null),media:t.createElement(Cr.Z,null),number:t.createElement(At.Z,null),relation:t.createElement(Bu.Z,null),string:t.createElement(vr.Z,null),text:t.createElement(vr.Z,null),richtext:t.createElement(vr.Z,null),time:t.createElement(un.Z,null),timestamp:t.createElement(un.Z,null),json:t.createElement(ju.Z,null),uid:t.createElement(qu.Z,null),component:t.createElement(Zu.Z,null),dynamiczone:t.createElement(zu.Z,null)},Rr=({type:e,customFieldUid:r})=>{const o=(0,h.useCustomFields)();let s=Ms[e];if(r){const l=o.get(r).icon;l&&(s=t.createElement(H.x,{marginRight:3,width:7,height:6},t.createElement(l,null)))}return Ms[e]?s:null};Rr.defaultProps={customFieldUid:null},Rr.propTypes={type:n().string.isRequired,customFieldUid:n().string};var Ds=Rr,Vu=e=>e.reduce((r,o)=>{const s=(0,te.get)(o,["attributes"],{}),a=Object.keys(s).filter(l=>!["boolean","component","dynamiczone","json","media","password","relation","text","richtext"].includes((0,te.get)(s,[l,"type"],"")));return r[o.uid]=a,r},{}),ks=e=>{let r;switch(e){case"description":case"label":case"placeholder":r="text";break;case"mainField":r="select";break;case"editable":r="bool";break;default:r=""}const o=v(e==="mainField"?"containers.SettingPage.editSettings.entry.title":`form.Input.${e}`);return{type:r,label:{id:o}}},Ot=m(9139);const Tr=({type:e,options:r,onChange:o,value:s,name:a,...l})=>{const{formatMessage:i}=(0,q.useIntl)();switch(e){case"text":return t.createElement($n.o,{onChange:o,value:s,name:a,...l});case"bool":return t.createElement(Ot.s,{onChange:c=>{o({target:{name:a,value:c.target.checked}})},checked:s,name:a,onLabel:i({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"On"}),offLabel:i({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"Off"}),...l});case"select":return t.createElement(We.P,{value:s,name:a,onChange:c=>o({target:{name:a,value:c}}),...l},r.map(c=>t.createElement(De.W,{key:c,value:c},c)));default:return null}};Tr.defaultProps={options:void 0},Tr.propTypes={type:n().string.isRequired,options:n().arrayOf(n().string),onChange:n().func.isRequired,value:n().oneOfType([n().string,n().bool]).isRequired,name:n().string.isRequired};var Wu=Tr;const Uu=[[4,"33%"],[6,"50%"],[8,"66%"],[12,"100%"]],Hu=["dynamiczone","component","json","richtext"],Gu=[1,5,10,15,30,60],Ku=["datetime","time"],xs=({onMetaChange:e,onSizeChange:r})=>{const{formatMessage:o}=(0,q.useIntl)(),{modifiedData:s,selectedField:a,attributes:l,fieldForm:i}=at(),c=(0,t.useMemo)(En,[]),{schemas:u}=(0,pe.useSelector)(C=>c(C),pe.shallowEqual),d=(0,t.useMemo)(()=>{if(!a)return[];const C=L()(s,["metadatas",a,"edit"],{});return Object.keys(C).filter(R=>R!=="visible")},[a,s]),p=(0,t.useMemo)(()=>Vu(u),[u]),f=(0,t.useCallback)(C=>{if(C!=="relation"&&C!=="component")return[];const R=C==="component"?"component":"targetModel",A=L()(s,["attributes",a,R],"");return L()(p,[A],[])},[a,p,s]),g=d.map(C=>{const R=L()(l,[a,"type"]);return["component","dynamiczone"].includes(R)&&!["label","description"].includes(C)||R==="component"&&C!=="label"||["media","json","boolean"].includes(R)&&C==="placeholder"||C==="step"?null:t.createElement(ke.P,{col:6,key:C},t.createElement(Wu,{type:ks(C).type,hint:C==="mainField"?o({id:v("containers.SettingPage.editSettings.relation-field.description")}):"",label:o({id:L()(ks(C),"label.id","app.utils.defaultMessage")}),name:C,onChange:e,value:L()(i,["metadata",C],""),options:f(R)}))}),y=!Hu.includes(l[a].type),b=t.createElement(ke.P,{col:6,key:"size"},t.createElement(We.P,{value:i?.size,name:"size",onChange:C=>{r({name:a,value:C})},label:o({id:v("containers.SettingPage.editSettings.size.label"),defaultMessage:"Size"})},Uu.map(([C,R])=>t.createElement(De.W,{key:C,value:C},R)))),E=Ku.includes(l[a].type),x=t.createElement(ke.P,{col:6,key:"step"},t.createElement(We.P,{value:L()(i,["metadata","step"],1),name:"step",onChange:C=>e({target:{name:"step",value:C}}),label:o({id:v("containers.SettingPage.editSettings.step.label"),defaultMessage:"Time interval (minutes)"})},Gu.map(C=>t.createElement(De.W,{key:C,value:C},C))));return t.createElement(t.Fragment,null,g,y&&b,E&&x)};xs.propTypes={onMetaChange:n().func.isRequired,onSizeChange:n().func.isRequired};var Qu=xs;const Yu=(0,w.default)(_.k)`
1069
- svg {
1070
- width: ${32/16}rem;
1071
- height: ${24/16}rem;
1072
- margin-right: ${({theme:e})=>e.spaces[3]};
1073
- }
1074
- `,Mr=({onToggle:e,onMetaChange:r,onSizeChange:o,onSubmit:s,type:a,customFieldUid:l})=>{const{selectedField:i}=at(),{formatMessage:c}=(0,q.useIntl)(),u=()=>a==="timestamp"?"date":["decimal","float","integer","biginter"].includes(a)?"number":a;return t.createElement(Es.P,{onClose:e,labelledBy:"title"},t.createElement("form",{onSubmit:s},t.createElement(Cs.x,null,t.createElement(Yu,null,t.createElement(Ds,{type:u(),customFieldUid:l}),t.createElement(G.Z,{fontWeight:"bold",textColor:"neutral800",as:"h2",id:"title"},c({id:v("containers.ListSettingsView.modal-form.edit-label"),defaultMessage:"Edit {fieldName}"},{fieldName:Pt()(i)})))),t.createElement(vs.f,null,t.createElement(Ve.r,{gap:4},t.createElement(Qu,{onMetaChange:r,onSizeChange:o}))),t.createElement(Rs.m,{startActions:t.createElement(Ee.z,{onClick:e,variant:"tertiary"},c({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:t.createElement(Ee.z,{type:"submit"},c({id:"global.finish",defaultMessage:"Finish"}))})))};Mr.defaultProps={customFieldUid:null},Mr.propTypes={customFieldUid:n().string,onSubmit:n().func.isRequired,onToggle:n().func.isRequired,onMetaChange:n().func.isRequired,onSizeChange:n().func.isRequired,type:n().string.isRequired};var Ju=Mr,Xu=(e,r,o)=>ge.be.put(he(o?`content-types/${r}/configuration`:`components/${r}/configuration`),e);const Dr=({mainLayout:e,components:r,isContentTypeView:o,slug:s,updateLayout:a})=>{const[l,i]=(0,t.useReducer)(Cu,yr,()=>vu(yr,e,r)),[c,u]=(0,t.useState)(!1),{trackUsage:d}=(0,h.useTracking)(),p=(0,h.useNotification)(),{goBack:f}=(0,re.useHistory)(),[g,y]=(0,t.useState)(!1),[b,E]=(0,t.useState)(!1),{componentLayouts:x,initialData:C,modifiedData:R,metaToEdit:A,metaForm:T}=l,{formatMessage:D}=(0,q.useIntl)(),I=L()(e,["info","displayName"],""),F=L()(R,["attributes"],{}),z=Object.keys(F).filter(W=>{const fe=L()(F,[W,"type"],"");return!["dynamiczone","json","text","relation","component","boolean","media","password","richtext","timestamp"].includes(fe)&&!!fe}),U=L()(R,["layouts","edit"],[]),B=fu()(U,"rowContent"),K=Object.keys(R.attributes).filter(W=>L()(R,["metadatas",W,"edit","visible"],!1)===!0).filter(W=>B.findIndex(fe=>fe.name===W)===-1).sort(),j=({target:{name:W,value:fe}})=>{i({type:"ON_CHANGE",keys:W.split("."),value:fe})},N=()=>{y(W=>!W)},S=()=>{E(W=>!W)},J=({target:{name:W,value:fe}})=>{i({type:"ON_CHANGE_META",keys:W.split("."),value:fe})},$=({name:W,value:fe})=>{i({type:"ON_CHANGE_SIZE",name:W,value:fe})},Y=W=>{W.preventDefault(),i({type:"SUBMIT_META_FORM"}),N()},M=W=>{W.preventDefault(),S()},k=(0,it.useMutation)(W=>Xu(W,s,o),{onSuccess({data:W}){a&&a(W.data),i({type:"SUBMIT_SUCCEEDED"}),S(),d("didEditEditSettings")},onError(){p({type:"warning",message:{id:"notification.error"}})}}),{isLoading:V}=k,Z=()=>{const W=qn()(ze()(R),["layouts","metadatas","settings"]);ne()(W,"layouts.edit",yu(W.layouts.edit)),k.mutate(W)},O=(W,fe)=>{i({type:"MOVE_RELATION",fromIndex:W,toIndex:fe})},Q=(W,fe)=>{i({type:"MOVE_FIELD",fromIndex:W,toIndex:fe})},oe=(W,fe,we,He)=>{i(we===He?{type:"REORDER_ROW",dragRowIndex:we,dragIndex:W,hoverIndex:fe}:{type:"REORDER_DIFF_ROW",dragIndex:W,hoverIndex:fe,dragRowIndex:we,hoverRowIndex:He})},Me=(W,fe)=>{i({type:"MOVE_ROW",fromIndex:W,toIndex:fe})};return t.createElement(ot,{isContentTypeView:o,attributes:F,modifiedData:R,slug:s,componentLayouts:x,selectedField:A,fieldForm:T,onMoveRelation:O,onMoveField:Q,moveRow:Me,moveItem:oe,setEditFieldToSelect:W=>{i({type:"SET_FIELD_TO_EDIT",name:W}),N()},isDraggingSibling:c,setIsDraggingSibling:u},t.createElement(ve.o,null,t.createElement("form",{onSubmit:M},t.createElement(se.T,{title:D({id:v("components.SettingsViewWrapper.pluginHeader.title"),defaultMessage:`Configure the view - ${Pt()(I)}`},{name:Pt()(I)}),subtitle:D({id:v("components.SettingsViewWrapper.pluginHeader.description.edit-settings"),defaultMessage:"Customize how the edit view will look like."}),navigationAction:t.createElement(h.Link,{startIcon:t.createElement(on.Z,null),onClick:W=>{W.preventDefault(),f()},to:"/"},D({id:"global.back",defaultMessage:"Back"})),primaryAction:t.createElement(Ee.z,{disabled:St()(C,R),startIcon:t.createElement(Et.Z,null),type:"submit"},D({id:"global.save",defaultMessage:"Save"}))}),t.createElement(gt.D,null,t.createElement(H.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(de.K,{spacing:4},t.createElement(G.Z,{variant:"delta",as:"h2"},D({id:v("containers.SettingPage.settings"),defaultMessage:"Settings"})),t.createElement(Ve.r,null,t.createElement(ke.P,{col:6,s:12},t.createElement(We.P,{label:D({id:v("containers.SettingPage.editSettings.entry.title"),defaultMessage:"Entry title"}),hint:D({id:v("containers.SettingPage.editSettings.entry.title.description"),defaultMessage:"Set the display field of your entry"}),onChange:W=>{j({target:{name:"settings.mainField",value:W===""?null:W}})},value:R.settings.mainField},z.map(W=>t.createElement(De.W,{key:W,value:W},W))))),t.createElement(H.x,{paddingTop:2,paddingBottom:2},t.createElement(ds.i,null)),t.createElement(G.Z,{variant:"delta",as:"h3"},D({id:v("containers.SettingPage.view"),defaultMessage:"View"})),t.createElement(Ou,{attributes:F,editLayout:U,fields:K,onAddField:W=>{i({type:"ON_ADD_FIELD",name:W})},onRemoveField:(W,fe)=>{i({type:"REMOVE_FIELD",rowIndex:W,fieldIndex:fe})}})))),t.createElement(h.ConfirmDialog,{bodyText:{id:v("popUpWarning.warning.updateAllSettings"),defaultMessage:"This will modify all your settings"},iconRightButton:t.createElement(Et.Z,null),isConfirmButtonLoading:V,isOpen:b,onToggleDialog:S,onConfirm:Z,variantRightButton:"success-light"})),g&&t.createElement(Ju,{onSubmit:Y,onToggle:N,onMetaChange:J,onSizeChange:$,type:L()(F,[A,"type"],""),customFieldUid:L()(F,[A,"customField"],"")})))};Dr.defaultProps={isContentTypeView:!1,updateLayout:null},Dr.propTypes={components:n().object.isRequired,isContentTypeView:n().bool,mainLayout:n().shape({attributes:n().object.isRequired,info:n().object.isRequired,layouts:n().shape({list:n().array.isRequired,edit:n().array.isRequired}).isRequired,metadatas:n().object.isRequired,options:n().object.isRequired}).isRequired,slug:n().string.isRequired,updateLayout:n().func};var kr=Dr,vt=m(37617);const _u=()=>({type:vt.ZA}),em=(e,r)=>({type:vt.Id,pagination:e,data:r}),tm=()=>({type:vt.MP});function nm(){return{type:vt.c2}}const rm=({components:e,contentType:r})=>{const{layouts:o}=r;return{contentType:r,components:e,displayedHeaders:o.list,type:vt.Zz}},xr=e=>({type:vt.Rp,target:e});var Is=m(13055),Ls=m(99223),Ir=m(94638),om=m(70664);const sm=()=>e=>e["content-manager_listView"]||om.E,am=()=>(0,xt.P1)(sm(),e=>e),Ss=e=>{const{displayedHeaders:r}=e["content-manager_listView"];return r};var im=am,lm=m(44426),cm=m(3594),dm=m(29005),Lr=m(66735),um=m(47765),mm=m(69033);const pm=(0,w.default)(_.k)`
1075
- position: relative;
1076
- border-radius: 50%;
1077
- width: 26px;
1078
- height: 26px;
1079
- border: 1px solid ${({theme:e})=>e.colors.neutral200};
1080
- background: ${({theme:e})=>e.colors.neutral150};
1081
- padding-left: 1px;
1082
-
1083
- span {
1084
- line-height: 0.6rem;
1085
- font-size: 0.6rem;
1086
- }
1087
- `,Fs=({children:e,...r})=>t.createElement(pm,{justifyContent:"center",alignItems:"center",as:"span",...r},t.createElement(G.Z,{variant:"sigma",textColor:"neutral600"},e));Fs.propTypes={children:n().string.isRequired};var ws=Fs;const Sr=({url:e,mime:r,alternativeText:o,name:s,ext:a,formats:l})=>{const i=(0,h.prefixFileUrlWithBackendUrl)(e);if(r.includes("image")){const d=l?.thumbnail?.url||null,p=(0,h.prefixFileUrlWithBackendUrl)(d)||i;return t.createElement(mm.q,{src:p,alt:o||s,preview:!0})}const c=(0,h.getFileExtension)(a),u=s.length>100?`${s.substring(0,100)}...`:s;return t.createElement(Ht.u,{description:u},t.createElement(ws,null,c))};Sr.defaultProps={alternativeText:null,formats:null},Sr.propTypes={alternativeText:n().string,ext:n().string.isRequired,formats:n().object,mime:n().string.isRequired,name:n().string.isRequired,url:n().string.isRequired};var Ps=Sr,gm=m(25898);const As=({value:e})=>t.createElement(gm.H,null,e.map((r,o)=>{const s=`${r.id}${o}`;if(o===3){const a=`+${e.length-3}`;return t.createElement(ws,{key:s,preview:!1},a)}return o>3?null:t.createElement(Ps,{key:s,...r})}));As.propTypes={value:n().arrayOf(n().shape({alternativeText:n().string,ext:n().string.isRequired,formats:n().object,mime:n().string.isRequired,name:n().string.isRequired,url:n().string.isRequired})).isRequired};var fm=As,Os=m(6518),hm=m(97405),ym=m(51064),bm=m.n(ym);const $s=({type:e,value:r})=>{const{formatDate:o,formatTime:s,formatNumber:a}=(0,q.useIntl)();let l=r;if(e==="date"&&(l=o(bm()(r),{dateStyle:"full"})),e==="datetime"&&(l=o(r,{dateStyle:"full",timeStyle:"short"})),e==="time"){const[i,c,u]=r.split(":"),d=new Date;d.setHours(i),d.setMinutes(c),d.setSeconds(u),l=s(d,{numeric:"auto",style:"short"})}return["float","decimal"].includes(e)&&(l=a(r,{maximumFractionDigits:20})),["integer","biginteger"].includes(e)&&(l=a(r,{maximumFractionDigits:0})),Go()(l)};$s.propTypes={type:n().string.isRequired,value:n().any.isRequired};var Rt=$s;const Em=(0,w.default)(G.Z)`
1088
- max-width: 500px;
1089
- `,Cm=async(e,r)=>{const{data:{results:o,pagination:s}}=await ge.be.get(e);return r(),{results:o,pagination:s}},Ns=({fieldSchema:e,metadatas:r,name:o,entityId:s,value:a,contentType:l})=>{const{formatMessage:i}=(0,q.useIntl)(),{notifyStatus:c}=(0,Ir.G)(),u=(0,t.useMemo)(()=>he(`relations/${l.uid}/${s}/${o.split(".")[0]}`),[s,o,l]),[d,p]=(0,t.useState)(!1),f=t.createElement(_.k,{gap:1,wrap:"nowrap"},t.createElement(Os.C,null,a.count),i({id:"content-manager.containers.ListPage.items",defaultMessage:"{number, plural, =0 {items} one {item} other {items}}"},{number:a.count})),g=()=>{const E=i({id:v("DynamicTable.relation-loaded"),defaultMessage:"Relations have been loaded"});c(E)},{data:y,status:b}=(0,it.useQuery)([e.targetModel,s],()=>Cm(u,g),{enabled:d,staleTime:0,select:E=>({...E,results:E.results.reverse()})});return t.createElement(H.x,{...h.stopPropagation},t.createElement(Ue.O,{label:f,size:"S",onOpen:()=>p(!0),onClose:()=>p(!1)},b!=="success"&&t.createElement(Ue.s,{"aria-disabled":!0},t.createElement(hm.a,{small:!0},i({id:v("DynamicTable.relation-loading"),defaultMessage:"Relations are loading"}))),b==="success"&&t.createElement(t.Fragment,null,y?.results.map(E=>t.createElement(Ue.s,{key:E.id,"aria-disabled":!0},t.createElement(Em,{ellipsis:!0},t.createElement(Rt,{type:r.mainField.schema.type,value:E[r.mainField.name]||E.id})))),y?.pagination.total>10&&t.createElement(Ue.s,{"aria-disabled":!0,"aria-label":i({id:v("DynamicTable.relation-more"),defaultMessage:"This relation contains more entities than displayed"})},t.createElement(G.Z,null,"\u2026")))))};Ns.propTypes={contentType:n().shape({uid:n().string.isRequired}).isRequired,fieldSchema:n().shape({relation:n().string,targetModel:n().string,type:n().string.isRequired}).isRequired,metadatas:n().shape({mainField:n().shape({name:n().string.isRequired,schema:n().shape({type:n().string.isRequired}).isRequired})}).isRequired,name:n().string.isRequired,entityId:n().oneOfType([n().string,n().number]).isRequired,value:n().object.isRequired};var vm=Ns;const Rm=(0,w.default)(G.Z)`
1090
- max-width: 500px;
1091
- `,Bs=({metadatas:e,value:r})=>t.createElement(Rm,{textColor:"neutral800",ellipsis:!0},t.createElement(Rt,{type:e.mainField.schema.type,value:r[e.mainField.name]??r.id}));Bs.propTypes={metadatas:n().shape({mainField:n().shape({name:n().string.isRequired,schema:n().shape({type:n().string.isRequired}).isRequired})}).isRequired,value:n().object.isRequired};var Tm=Bs;const Mm=(0,w.default)(G.Z)`
1092
- max-width: 500px;
1093
- `,qs=({value:e,metadatas:r})=>{const{formatMessage:o}=(0,q.useIntl)(),{mainField:{type:s,name:a}}=r,l=t.createElement(t.Fragment,null,t.createElement(Os.C,null,e.length)," ",o({id:"content-manager.containers.ListPage.items",defaultMessage:"{number, plural, =0 {items} one {item} other {items}}"},{number:e.length}));return t.createElement(H.x,{...h.stopPropagation},t.createElement(Ue.O,{label:l,size:"S"},e.map(i=>t.createElement(Ue.s,{key:i.id,"aria-disabled":!0},t.createElement(Mm,{ellipsis:!0},t.createElement(Rt,{type:s,value:i[a]||i.id}))))))};qs.propTypes={metadatas:n().shape({mainField:n().shape({name:n().string,type:n().string,value:n().string})}).isRequired,value:n().array.isRequired};var Dm=qs;const km=(0,w.default)(G.Z)`
1094
- max-width: 250px;
1095
- `,js=({value:e,metadatas:r})=>{const{mainField:o}=r,s=e[o.name];return t.createElement(Ht.u,{label:s},t.createElement(km,{textColor:"neutral800",ellipsis:!0},t.createElement(Rt,{type:o.type,value:s})))};js.propTypes={metadatas:n().shape({mainField:n().shape({name:n().string,type:n().string,value:n().string})}).isRequired,value:n().object.isRequired};var xm=js,Im=m(80022),Zs=m.n(Im);function zs(e){return["oneToOne","manyToOne","oneToOneMorph"].includes(e)}function Lm(e,r,o,s){if(e==="component"){const{mainField:{name:a,type:l}}=o;if(s?.repeatable)return r.length>0;const i=r?.[a];return a==="id"&&![void 0,null].includes(i)?!0:Ft(l)&&l!=="biginteger"&&a!=="id"?Zs()(i):!Ie()(i)}return e==="relation"?zs(s.relation)?!Ie()(r):r?.count>0:Ft(e)&&e!=="biginteger"?Zs()(r):e==="boolean"?r!==null:!Ie()(r)}const Vs=(0,w.default)(G.Z)`
1096
- max-width: 300px;
1097
- `,Fr=({content:e,fieldSchema:r,metadatas:o,name:s,rowId:a,contentType:l})=>{const{type:i}=r;if(!Lm(i,e,o,r))return t.createElement(G.Z,{textColor:"neutral800"},"-");switch(i){case"media":return r.multiple?t.createElement(fm,{value:e}):t.createElement(Ps,{...e});case"relation":return zs(r.relation)?t.createElement(Tm,{metadatas:o,value:e}):t.createElement(vm,{fieldSchema:r,metadatas:o,value:e,name:s,entityId:a,contentType:l});case"component":return r.repeatable===!0?t.createElement(Dm,{value:e,metadatas:o}):t.createElement(xm,{value:e,metadatas:o});case"string":return t.createElement(Ht.u,{description:e},t.createElement(Vs,{ellipsis:!0,textColor:"neutral800"},t.createElement(Rt,{type:i,value:e})));default:return t.createElement(Vs,{ellipsis:!0,textColor:"neutral800"},t.createElement(Rt,{type:i,value:e}))}};Fr.defaultProps={content:void 0},Fr.propTypes={content:n().any,contentType:n().shape({uid:n().string.isRequired}).isRequired,fieldSchema:n().shape({component:n().string,multiple:n().bool,type:n().string.isRequired,repeatable:n().bool,relation:n().string}).isRequired,metadatas:n().object.isRequired,name:n().string.isRequired,rowId:n().oneOfType([n().string,n().number]).isRequired};var Sm=Fr;const wr=({canCreate:e,canDelete:r,contentType:o,headers:s,entriesToDelete:a,onClickDelete:l,onSelectRow:i,withMainAction:c,withBulkActions:u,rows:d})=>{const{push:p,location:{pathname:f}}=(0,re.useHistory)(),{formatMessage:g}=(0,q.useIntl)(),{trackUsage:y}=(0,h.useTracking)(),b=ho();return t.createElement(cm.p,null,d.map((E,x)=>{const C=a.findIndex(A=>A===E.id)!==-1,R=g({id:"content-manager.components.DynamicTable.row-line",defaultMessage:"item line {number}"},{number:x});return t.createElement(dm.Tr,{key:E.id,...(0,h.onRowClick)({fn(){y("willEditEntryFromList"),p({pathname:`${f}/${E.id}`,state:{from:f},search:b})},condition:u})},c&&t.createElement(Lr.Td,{...h.stopPropagation},t.createElement(lm.C,{"aria-label":g({id:"app.component.table.select.one-entry",defaultMessage:"Select {target}"},{target:(0,os.Pp)(E.firstname,E.lastname)}),checked:C,onChange:()=>{i({name:E.id,value:!C})}})),s.map(({key:A,cellFormatter:T,name:D,...I})=>t.createElement(Lr.Td,{key:A},typeof T=="function"?T(E,{key:A,name:D,...I}):t.createElement(Sm,{content:E[D.split(".")[0]],name:D,contentType:o,...I,rowId:E.id}))),u&&t.createElement(Lr.Td,null,t.createElement(_.k,{justifyContent:"end",...h.stopPropagation},t.createElement(Ne.h,{forwardedAs:re.Link,onClick:()=>{y("willEditEntryFromButton")},to:{pathname:`${f}/${E.id}`,state:{from:f},search:b},label:g({id:"app.component.table.edit",defaultMessage:"Edit {target}"},{target:R}),noBorder:!0,icon:t.createElement(je.Z,null)}),e&&t.createElement(H.x,{paddingLeft:1},t.createElement(Ne.h,{forwardedAs:re.Link,to:{pathname:`${f}/create/clone/${E.id}`,state:{from:f},search:b},label:g({id:"app.component.table.duplicate",defaultMessage:"Duplicate {target}"},{target:R}),noBorder:!0,icon:t.createElement(um.Z,null)})),r&&t.createElement(H.x,{paddingLeft:1},t.createElement(Ne.h,{onClick:()=>{y("willDeleteEntryFromList"),l(E.id)},label:g({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:R}),noBorder:!0,icon:t.createElement(ft.default,null)})))))}))};wr.defaultProps={canCreate:!1,canDelete:!1,entriesToDelete:[],onClickDelete(){},onSelectRow(){},rows:[],withBulkActions:!1,withMainAction:!1},wr.propTypes={canCreate:n().bool,canDelete:n().bool,contentType:n().shape({uid:n().string.isRequired}).isRequired,entriesToDelete:n().array,headers:n().array.isRequired,onClickDelete:n().func,onSelectRow:n().func,rows:n().array,withBulkActions:n().bool,withMainAction:n().bool};var Fm=wr;const Ws=({area:e,...r})=>{const o=ko(e);return o?t.createElement("ul",null,o.map(s=>s.Component(r)?t.createElement(H.x,{key:s.name,padding:3,style:{textAlign:"center"}},t.createElement(s.Component,{...r})):null)):null};Ws.propTypes={area:n().string.isRequired};var Us=Ws;const Hs=({isConfirmButtonLoading:e,isOpen:r,onToggleDialog:o,onConfirm:s})=>{const{formatMessage:a}=(0,q.useIntl)();return t.createElement(sn.V,{onClose:o,title:a({id:"app.components.ConfirmDialog.title",defaultMessage:"Confirmation"}),labelledBy:"confirmation",describedBy:"confirm-description",isOpen:r},t.createElement(an.a,{icon:t.createElement(Lt.default,null)},t.createElement(de.K,{spacing:2},t.createElement(_.k,{justifyContent:"center"},t.createElement(G.Z,{id:"confirm-description"},a({id:v("popUpWarning.bodyMessage.contentType.delete.all"),defaultMessage:"Are you sure you want to delete these entries?"}))),t.createElement(_.k,null,t.createElement(Us,{area:"contentManager.listView.deleteModalAdditionalInfos"})))),t.createElement(ln.c,{startAction:t.createElement(Ee.z,{onClick:o,variant:"tertiary"},a({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endAction:t.createElement(Ee.z,{onClick:s,variant:"danger-light",startIcon:t.createElement(ft.default,null),id:"confirm-delete",loading:e},a({id:"app.components.Button.confirm",defaultMessage:"Confirm"}))}))};Hs.propTypes={isConfirmButtonLoading:n().bool.isRequired,isOpen:n().bool.isRequired,onConfirm:n().func.isRequired,onToggleDialog:n().func.isRequired};var wm=Hs;const Gs=({isConfirmButtonLoading:e,isOpen:r,onToggleDialog:o,onConfirm:s})=>{const{formatMessage:a}=(0,q.useIntl)();return t.createElement(sn.V,{onClose:o,title:a({id:"app.components.ConfirmDialog.title",defaultMessage:"Confirmation"}),labelledBy:"confirmation",describedBy:"confirm-description",isOpen:r},t.createElement(an.a,{icon:t.createElement(Lt.default,null)},t.createElement(de.K,{spacing:2},t.createElement(_.k,{justifyContent:"center"},t.createElement(G.Z,{id:"confirm-description"},a({id:"components.popUpWarning.message",defaultMessage:"Are you sure you want to delete this?"}))),t.createElement(_.k,null,t.createElement(Us,{area:"contentManager.listView.deleteModalAdditionalInfos"})))),t.createElement(ln.c,{startAction:t.createElement(Ee.z,{onClick:o,variant:"tertiary"},a({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endAction:t.createElement(Ee.z,{onClick:s,variant:"danger-light",startIcon:t.createElement(ft.default,null),id:"confirm-delete",loading:e},a({id:"app.components.Button.confirm",defaultMessage:"Confirm"}))}))};Gs.propTypes={isConfirmButtonLoading:n().bool.isRequired,isOpen:n().bool.isRequired,onConfirm:n().func.isRequired,onToggleDialog:n().func.isRequired};var Pm=Gs;const Am=(0,w.default)(_r.q)`
1098
- width: min-content;
1099
- `,Pr=({canCreate:e,canDelete:r,contentTypeName:o,action:s,isBulkable:a,isLoading:l,onConfirmDelete:i,onConfirmDeleteAll:c,layout:u,rows:d})=>{const{runHookWaterfall:p}=(0,h.useStrapiApp)(),f=u.contentType.options.draftAndPublish||!1,{formatMessage:g}=(0,q.useIntl)(),y=(0,pe.useSelector)(Ss),b=(0,t.useMemo)(()=>{const x=p(Kt.No,{displayedHeaders:y,layout:u}).displayedHeaders.map(C=>{const{metadatas:R}=C;if(C.fieldSchema.type==="relation"){const A=`${C.name}.${C.metadatas.mainField.name}`;return{...C,metadatas:{...R,label:g({id:v(`containers.ListPage.table-headers.${C.name}`),defaultMessage:R.label})},name:A}}return{...C,metadatas:{...R,label:g({id:v(`containers.ListPage.table-headers.${C.name}`),defaultMessage:R.label})}}});return f?[...x,{key:"__published_at_temp_key__",name:"publishedAt",fieldSchema:{type:"custom"},metadatas:{label:g({id:v("containers.ListPage.table-headers.publishedAt"),defaultMessage:"publishedAt"}),searchable:!1,sortable:!0},cellFormatter(C){const R=C.publishedAt,A=R?"success":"secondary";return t.createElement(Am,{showBullet:!1,variant:A,size:"S"},t.createElement(G.Z,{fontWeight:"bold",textColor:`${A}700`},g({id:v(`containers.List.${R?"published":"draft"}`),defaultMessage:R?"Published":"Draft"})))}}]:x},[p,y,u,f,g]);return t.createElement(h.DynamicTable,{components:{ConfirmDialogDelete:Pm,ConfirmDialogDeleteAll:wm},contentType:o,action:s,isLoading:l,headers:b,onConfirmDelete:i,onConfirmDeleteAll:c,onOpenDeleteAllModalTrackedEvent:"willBulkDeleteEntries",rows:d,withBulkActions:!0,withMainAction:r&&a},t.createElement(Fm,{canCreate:e,canDelete:r,contentType:u.contentType,headers:b,rows:d,withBulkActions:!0,withMainAction:r&&a}))};Pr.defaultProps={action:void 0},Pr.propTypes={canCreate:n().bool.isRequired,canDelete:n().bool.isRequired,contentTypeName:n().string.isRequired,action:n().node,isBulkable:n().bool.isRequired,isLoading:n().bool.isRequired,layout:n().exact({components:n().object.isRequired,contentType:n().shape({attributes:n().object.isRequired,metadatas:n().object.isRequired,layouts:n().shape({list:n().array.isRequired}).isRequired,options:n().object.isRequired,settings:n().object.isRequired}).isRequired}).isRequired,onConfirmDelete:n().func.isRequired,onConfirmDeleteAll:n().func.isRequired,rows:n().array.isRequired};var Om=Pr;const $m=["json","component","media","richtext","dynamiczone","password"],Nm=["createdAt","updatedAt"];var Bm=(e,r)=>{const{allPermissions:o}=(0,h.useRBACProvider)(),s=(0,h.findMatchingPermissions)(o,[{action:"plugin::content-manager.explorer.read",subject:r}]),a=L()(s,["0","properties","fields"],[]);return Object.keys(L()(e,["attributes"]),{}).filter(c=>{const u=L()(e,["attributes",c],{});return!(!u.type||$m.includes(u.type)||!a.includes(c)&&c!=="id"&&!Nm.includes(c))}).sort()},qm=m(5644);const Ks=({displayedFilters:e})=>{const[r,o]=(0,t.useState)(!1),{formatMessage:s}=(0,q.useIntl)(),a=(0,t.useRef)(),{trackUsage:l}=(0,h.useTracking)(),i=()=>{r||l("willFilterEntries"),o(c=>!c)};return t.createElement(t.Fragment,null,t.createElement(H.x,{paddingTop:1,paddingBottom:1},t.createElement(Ee.z,{variant:"tertiary",ref:a,startIcon:t.createElement(qm.Z,null),onClick:i,size:"S"},s({id:"app.utils.filters",defaultMessage:"Filters"})),r&&t.createElement(h.FilterPopoverURLQuery,{displayedFilters:e,isVisible:r,onToggle:i,source:a})),t.createElement(h.FilterListURLQuery,{filtersSchema:e}))};Ks.propTypes={displayedFilters:n().arrayOf(n().shape({name:n().string.isRequired,metadatas:n().shape({label:n().string}),fieldSchema:n().shape({type:n().string})})).isRequired};var jm=Ks;const Qs=({contentType:e,slug:r,metadatas:o})=>{const{formatMessage:s}=(0,q.useIntl)(),l=Bm(e,r).map(i=>{const c=e.attributes[i],{type:u,enum:d}=c,p={name:"didFilterEntries",properties:{useRelation:u==="relation"}},{mainField:f,label:g}=o[i].list;return{name:i,metadatas:{label:s({id:g,defaultMessage:g})},fieldSchema:{type:u,options:d,mainField:f},trackedEvent:p}});return t.createElement(jm,{displayedFilters:l})};Qs.propTypes={contentType:n().object.isRequired,metadatas:n().object.isRequired,slug:n().string.isRequired};var Zm=Qs,zm=e=>Object.keys(e).reduce((o,s)=>{const a=e[s];return Ur(a)&&o.push(s),o},[]).sort();const Ys=({layout:e})=>{const r=(0,pe.useDispatch)(),o=(0,pe.useSelector)(Ss),{trackUsage:s}=(0,h.useTracking)(),{formatMessage:a}=(0,q.useIntl)(),l=zm(e.contentType.attributes).map(u=>{const d=e.contentType.metadatas[u].list;return{name:u,intlLabel:{id:d.label,defaultMessage:d.label}}}),i=o.map(({name:u})=>u),c=u=>{if(s("didChangeDisplayedFields"),u.length<i.length){const d=i.filter(p=>u.indexOf(p)===-1);r(xr({name:d[0],value:!0}))}else{const d=u.filter(p=>i.indexOf(p)===-1);r(xr({name:d[0],value:!1}))}};return t.createElement(H.x,{paddingTop:1,paddingBottom:1},t.createElement(We.P,{"aria-label":"change displayed fields",value:i,onChange:c,customizeContent:u=>a({id:v("select.currently.selected"),defaultMessage:"{count} currently selected"},{count:u.length}),multi:!0,size:"S"},l.map(u=>t.createElement(De.W,{key:u.name,value:u.name},a({id:u.intlLabel.id||u.name,defaultMessage:u.intlLabel.defaultMessage||u.name})))))};Ys.propTypes={layout:n().shape({contentType:n().shape({attributes:n().object.isRequired,metadatas:n().object.isRequired,layouts:n().shape({list:n().array.isRequired}).isRequired,options:n().object.isRequired,settings:n().object.isRequired}).isRequired}).isRequired};var Vm=(0,t.memo)(Ys);const Ar=({pagination:e})=>t.createElement(H.x,{paddingTop:4},t.createElement(_.k,{alignItems:"flex-end",justifyContent:"space-between"},t.createElement(h.PageSizeURLQuery,{trackedEvent:"willChangeNumberOfEntriesPerPage"}),t.createElement(h.PaginationURLQuery,{pagination:e})));Ar.defaultProps={pagination:{pageCount:0,pageSize:10,total:0}},Ar.propTypes={pagination:n().shape({page:n().number,pageCount:n().number,pageSize:n().number,total:n().number})};var Wm=Ar,Um=m(98399);const Hm=ce.Z.contentManager,Gm=(0,w.default)(H.x)`
1100
- svg {
1101
- path {
1102
- fill: ${({theme:e})=>e.colors.neutral900};
1103
- }
1104
- }
1105
- `;function Js({canCreate:e,canDelete:r,canRead:o,data:s,getData:a,getDataSucceeded:l,isLoading:i,layout:c,pagination:u,slug:d}){const{total:p}=u,{contentType:{metadatas:f,settings:{bulkable:g,filterable:y,searchable:b}}}=c,E=(0,h.useNotification)(),{trackUsage:x}=(0,h.useTracking)(),{refetchPermissions:C}=(0,h.useRBACProvider)(),R=(0,t.useRef)(x),A=(0,t.useRef)(C),{notifyStatus:T}=(0,Ir.G)();(0,h.useFocusWhenNavigate)();const[{query:D}]=(0,h.useQueryParams)(),I=_o(D),F=(0,Ke.stringify)({plugins:D.plugins},{encode:!1}),{pathname:z}=(0,re.useLocation)(),{push:U}=(0,re.useHistory)(),{formatMessage:B}=(0,q.useIntl)(),K=c.contentType,j=L()(K,"options.draftAndPublish",!1),N=(0,t.useRef)(""),S=(0,t.useCallback)(async(Z,O)=>{a();try{const Q=O?{cancelToken:O.token}:null,{data:{results:oe,pagination:Me}}=await ge.be.get(Z,Q);T(B({id:v("utils.data-loaded"),defaultMessage:"{number, plural, =1 {# entry has} other {# entries have}} successfully been loaded"},{number:Me.count})),l(Me,oe)}catch(Q){if($e.Z.isCancel(Q))return;if(L()(Q,"response.status",null)===403){await A.current(),E({type:"info",message:{id:v("permissions.not-allowed.update")}}),U("/");return}Um.error(Q),E({type:"warning",message:{id:v("error.model.fetch")}})}},[B,a,l,T,U,E]),J=(0,t.useCallback)(async Z=>{try{await ge.be.post(he(`collection-types/${d}/actions/bulkDelete`),{ids:Z});const O=he(`collection-types/${d}${I}`);S(O),R.current("didBulkDeleteEntries")}catch{E({type:"warning",message:{id:v("error.record.delete")}})}},[S,I,d,E]),$=(0,t.useCallback)(async Z=>{try{await ge.be.delete(he(`collection-types/${d}/${Z}`));const O=he(`collection-types/${d}${I}`);S(O),E({type:"success",message:{id:v("success.record.delete")}})}catch(O){const Q=L()(O,"response.payload.message",B({id:v("error.record.delete")}));E({type:"warning",message:Q})}},[d,I,S,E,B]);(0,t.useEffect)(()=>{const O=$e.Z.CancelToken.source(),Q=o,oe=he(`collection-types/${d}${I}`);return Q&&oe.includes(N.current)&&S(oe,O),()=>{N.current=d,O.cancel("Operation canceled by the user.")}},[o,a,d,I,l,S]);const Y=B({id:v("header.name"),defaultMessage:"Content"}),M=B({id:K.info.displayName,defaultMessage:K.info.displayName||Y}),k=o?B({id:v("pages.ListView.header-subtitle"),defaultMessage:"{number, plural, =0 {# entries} one {# entry} other {# entries}} found"},{number:p}):null,V=Z=>e?t.createElement(Ee.z,{...Z,forwardedAs:re.Link,onClick:()=>{const O=j?{status:"draft"}:{};R.current("willCreateEntry",O)},to:{pathname:`${z}/create`,search:D.plugins?F:""},startIcon:t.createElement(dn.default,null),style:{textDecoration:"none"}},B({id:v("HeaderLayout.button.label-add-entry"),defaultMessage:"Create new entry"})):null;return t.createElement(ve.o,{"aria-busy":i},t.createElement(se.T,{primaryAction:V(),subtitle:k,title:M,navigationAction:t.createElement(h.Link,{startIcon:t.createElement(on.Z,null),to:"/content-manager/"},B({id:"global.back",defaultMessage:"Back"}))}),!o&&t.createElement(Ls.Z,{endActions:t.createElement(Qt,{area:"contentManager.listView.actions"})}),o&&t.createElement(Ls.Z,{endActions:t.createElement(t.Fragment,null,t.createElement(Qt,{area:"contentManager.listView.actions"}),t.createElement(Vm,{layout:c}),t.createElement(h.CheckPermissions,{permissions:Hm.collectionTypesConfigurations},t.createElement(Gm,{paddingTop:1,paddingBottom:1},t.createElement(Ne.h,{onClick:()=>{x("willEditListLayout")},forwardedAs:re.Link,to:{pathname:`${d}/configurations/list`,search:F},icon:t.createElement(ms.Z,null),label:B({id:"app.links.configure-view",defaultMessage:"Configure the view"})})))),startActions:t.createElement(t.Fragment,null,b&&t.createElement(h.SearchURLQuery,{label:B({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:M}),placeholder:B({id:"global.search",defaultMessage:"Search"}),trackedEvent:"didSearch"}),y&&t.createElement(Zm,{contentType:K,slug:d,metadatas:f}))}),t.createElement(gt.D,null,o?t.createElement(t.Fragment,null,t.createElement(Om,{canCreate:e,canDelete:r,contentTypeName:M,onConfirmDeleteAll:J,onConfirmDelete:$,isBulkable:g,isLoading:i,layout:c,rows:s,action:V({variant:"secondary"})}),t.createElement(Wm,{pagination:{pageCount:u?.pageCount||1}})):t.createElement(h.NoPermissions,null)))}Js.propTypes={canCreate:n().bool.isRequired,canDelete:n().bool.isRequired,canRead:n().bool.isRequired,data:n().array.isRequired,layout:n().exact({components:n().object.isRequired,contentType:n().shape({attributes:n().object.isRequired,metadatas:n().object.isRequired,info:n().shape({displayName:n().string.isRequired}).isRequired,layouts:n().shape({list:n().array.isRequired}).isRequired,options:n().object.isRequired,settings:n().object.isRequired}).isRequired}).isRequired,isLoading:n().bool.isRequired,getData:n().func.isRequired,getDataSucceeded:n().func.isRequired,pagination:n().shape({total:n().number.isRequired,pageCount:n().number}).isRequired,slug:n().string.isRequired};const Km=im();function Qm(e){return(0,Is.bindActionCreators)({getData:_u,getDataSucceeded:em,onChangeListHeaders:xr,onResetListHeaders:tm},e)}const Ym=(0,pe.connect)(Km,Qm);var Jm=(0,Is.compose)(Ym)((0,t.memo)(Js,Xe()));const Or=e=>{const r=(0,t.useMemo)(()=>Gr(e.slug),[e.slug]),{isLoading:o,allowedActions:s}=(0,h.useRBAC)(r,e.permissions);return o?t.createElement(h.LoadingIndicatorPage,null):t.createElement(Jm,{...e,...s})};Or.defaultProps={permissions:[]},Or.propTypes={permissions:n().array,slug:n().string.isRequired};var Xm=(0,t.memo)(Or,(e,r)=>{const o=(0,h.difference)(e,r);return Object.keys(o).filter(a=>a!=="state").length>0});const Xs=({layout:e,...r})=>{const o=(0,pe.useDispatch)(),{replace:s}=(0,re.useHistory)(),[{query:a,rawQuery:l}]=(0,h.useQueryParams)(),i=bo(a,r.slug,"listView"),c=fo(r.slug);return(0,t.useEffect)(()=>{l||s(c)},[l,s,c]),(0,t.useEffect)(()=>{o(rm(e))},[o,e]),(0,t.useEffect)(()=>()=>{o(nm())},[o]),i?t.createElement(Xm,{...r,layout:e,permissions:i}):null};Xs.propTypes={layout:n().exact({components:n().object.isRequired,contentType:n().shape({attributes:n().object.isRequired,metadatas:n().object.isRequired,layouts:n().shape({list:n().array.isRequired}).isRequired,options:n().object.isRequired,settings:n().object.isRequired,pluginOptions:n().object}).isRequired}).isRequired,slug:n().string.isRequired};var _m=Xs,ep=(e,r)=>ge.be.put(he(`content-types/${r}/configuration`),e);const $r=({modifiedData:e,onChange:r,sortOptions:o})=>{const{formatMessage:s}=(0,q.useIntl)(),{settings:a,metadatas:l}=e;return t.createElement(de.K,{spacing:4},t.createElement(G.Z,{variant:"delta",as:"h2"},s({id:v("containers.SettingPage.settings"),defaultMessage:"Settings"})),t.createElement(de.K,{horizontal:!0,justifyContent:"space-between",spacing:4},t.createElement(H.x,{width:"100%"},t.createElement(Ot.s,{label:s({id:v("form.Input.search"),defaultMessage:"Enable search"}),onChange:i=>{r({target:{name:"settings.searchable",value:i.target.checked}})},onLabel:s({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"on"}),offLabel:s({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"off"}),name:"settings.searchable",checked:a.searchable})),t.createElement(H.x,{width:"100%"},t.createElement(Ot.s,{label:s({id:v("form.Input.filters"),defaultMessage:"Enable filters"}),onChange:i=>{r({target:{name:"settings.filterable",value:i.target.checked}})},onLabel:s({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"on"}),offLabel:s({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"off"}),name:"settings.filterable",checked:a.filterable})),t.createElement(H.x,{width:"100%"},t.createElement(Ot.s,{label:s({id:v("form.Input.bulkActions"),defaultMessage:"Enable bulk actions"}),onChange:i=>{r({target:{name:"settings.bulkable",value:i.target.checked}})},onLabel:s({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"on"}),offLabel:s({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"off"}),name:"settings.bulkable",checked:a.bulkable}))),t.createElement(Ve.r,{gap:4},t.createElement(ke.P,{s:12,col:6},t.createElement(We.P,{label:s({id:v("form.Input.pageEntries"),defaultMessage:"Entries per page"}),hint:s({id:v("form.Input.pageEntries.inputDescription"),defaultMessage:"Note: You can override this value in the Collection Type settings page."}),onChange:i=>r({target:{name:"settings.pageSize",value:i}}),name:"settings.pageSize",value:e.settings.pageSize||""},[10,20,50,100].map(i=>t.createElement(De.W,{key:i,value:i},i)))),t.createElement(ke.P,{s:12,col:3},t.createElement(We.P,{label:s({id:v("form.Input.defaultSort"),defaultMessage:"Default sort attribute"}),onChange:i=>r({target:{name:"settings.defaultSortBy",value:i}}),name:"settings.defaultSortBy",value:e.settings.defaultSortBy||""},o.map(i=>t.createElement(De.W,{key:i,value:i},l[i].list.label||i)))),t.createElement(ke.P,{s:12,col:3},t.createElement(We.P,{label:s({id:v("form.Input.sort.order"),defaultMessage:"Default sort order"}),onChange:i=>r({target:{name:"settings.defaultSortOrder",value:i}}),name:"settings.defaultSortOrder",value:e.settings.defaultSortOrder||""},["ASC","DESC"].map(i=>t.createElement(De.W,{key:i,value:i},i))))))};$r.defaultProps={modifiedData:{},sortOptions:[]},$r.propTypes={modifiedData:n().object,onChange:n().func.isRequired,sortOptions:n().array};var tp=$r;const Nr=w.default.button`
1106
- display: flex;
1107
- align-items: center;
1108
- height: ${({theme:e})=>e.spaces[7]};
1109
-
1110
- &:last-child {
1111
- padding: 0 ${({theme:e})=>e.spaces[3]};
1112
- }
1113
- `,_s=(0,w.default)(Nr)`
1114
- padding: 0 ${({theme:e})=>e.spaces[3]};
1115
- border-right: 1px solid ${({theme:e})=>e.colors.neutral150};
1116
- cursor: all-scroll;
1117
-
1118
- svg {
1119
- width: ${12/16}rem;
1120
- height: ${12/16}rem;
1121
- }
1122
- `,np=(0,w.default)(_.k)`
1123
- max-height: ${32/16}rem;
1124
- cursor: pointer;
1125
-
1126
- svg {
1127
- width: ${10/16}rem;
1128
- height: ${10/16}rem;
1129
-
1130
- path {
1131
- fill: ${({theme:e})=>e.colors.neutral600};
1132
- }
1133
- }
1134
-
1135
- &:hover {
1136
- background-color: ${({theme:e})=>e.colors.primary100};
1137
- border-color: ${({theme:e})=>e.colors.primary200};
1138
-
1139
- svg {
1140
- path {
1141
- fill: ${({theme:e})=>e.colors.primary600};
1142
- }
1143
- }
1144
-
1145
- ${G.Z} {
1146
- color: ${({theme:e})=>e.colors.primary600};
1147
- }
1148
-
1149
- ${_s} {
1150
- border-right: 1px solid ${({theme:e})=>e.colors.primary200};
1151
- }
1152
- }
1153
- `,rp=(0,w.default)(H.x)`
1154
- &:last-child {
1155
- padding-right: ${({theme:e})=>e.spaces[3]};
1156
- }
1157
- `,ea=({index:e,isDraggingSibling:r,labelField:o,onClickEditField:s,onMoveField:a,onRemoveField:l,name:i,setIsDraggingSibling:c})=>{const{formatMessage:u}=(0,q.useIntl)(),d=(0,t.useRef)(null),p=(0,t.useRef)(null),[,f]=(0,t.useState)(!1),g=(0,t.useRef)(),y=Ye(o),b=()=>{g.current&&g.current.click()},[,E]=(0,qe.useDrop)({accept:be.FIELD,hover(T,D){if(!p.current)return;const I=T.index,F=e;if(I===F)return;const z=p.current.getBoundingClientRect(),U=(z.right-z.left)/2,K=D.getClientOffset().x-z.left;I>F&&K>U||I<F&&K<U||(a(I,F),T.index=F)}}),[{isDragging:x},C,R]=(0,qe.useDrag)({type:be.FIELD,item(){return{index:e,labelField:o,name:i}},collect:T=>({isDragging:T.isDragging()}),end(){c(!1)}});(0,t.useEffect)(()=>{R((0,kt.rX)(),{captureDraggingState:!1})},[R]),(0,t.useEffect)(()=>{x&&c(!0)},[x,c]),(0,t.useEffect)(()=>{r||f(T=>!T)},[r]);const A={dragRef:C(d),dropRef:E(p)};return t.createElement(rp,{ref:A?A.dropRef:null},x&&t.createElement(pn,{transparent:!0,labelField:y}),!x&&r&&t.createElement(pn,{isSibling:!0,labelField:y}),!x&&!r&&t.createElement(np,{borderColor:"neutral150",background:"neutral100",hasRadius:!0,justifyContent:"space-between",onClick:b,isDragging:x},t.createElement(de.K,{horizontal:!0,spacing:3},t.createElement(_s,{as:"span","aria-label":u({id:v("components.DraggableCard.move.field"),defaultMessage:"Move {item}"},{item:o}),onClick:T=>T.stopPropagation(),ref:A.dragRef,type:"button"},t.createElement(mt.Z,null)),t.createElement(G.Z,{fontWeight:"bold"},y)),t.createElement(_.k,{paddingLeft:3},t.createElement(Nr,{ref:g,onClick:T=>{T.stopPropagation(),s(i)},"aria-label":u({id:v("components.DraggableCard.edit.field"),defaultMessage:"Edit {item}"},{item:o}),type:"button"},t.createElement(je.Z,null)),t.createElement(Nr,{onClick:l,"data-testid":`delete-${i}`,"aria-label":u({id:v("components.DraggableCard.delete.field"),defaultMessage:"Delete {item}"},{item:o}),type:"button"},t.createElement(Ae.default,null)))))};ea.propTypes={index:n().number.isRequired,isDraggingSibling:n().bool.isRequired,labelField:n().string.isRequired,name:n().string.isRequired,onClickEditField:n().func.isRequired,onMoveField:n().func.isRequired,onRemoveField:n().func.isRequired,setIsDraggingSibling:n().func.isRequired};var op=ea;const ta=(0,w.default)(H.x)`
1158
- flex: ${({size:e})=>e};
1159
- `,sp=(0,w.default)(ta)`
1160
- overflow-x: scroll;
1161
- overflow-y: hidden;
1162
- `,ap=(0,w.default)(ta)`
1163
- max-width: ${32/16}rem;
1164
- `,na=({displayedFields:e,listRemainingFields:r,metadatas:o,onAddField:s,onClickEditField:a,onMoveField:l,onRemoveField:i})=>{const{formatMessage:c}=(0,q.useIntl)(),[u,d]=(0,t.useState)(!1),[p,f]=(0,t.useState)(null),g=(0,t.useRef)();function y(...E){f("add"),s(...E)}function b(...E){f("remove"),i(...E)}return(0,t.useEffect)(()=>{p==="add"&&g?.current&&(g.current.scrollLeft=g.current.scrollWidth)},[e,p]),t.createElement(t.Fragment,null,t.createElement(H.x,{paddingBottom:4},t.createElement(G.Z,{variant:"delta",as:"h2"},c({id:v("containers.SettingPage.view"),defaultMessage:"View"}))),t.createElement(_.k,{paddingTop:4,paddingLeft:4,paddingRight:4,borderColor:"neutral300",borderStyle:"dashed",borderWidth:"1px",hasRadius:!0},t.createElement(sp,{size:"1",paddingBottom:4,ref:g},t.createElement(de.K,{horizontal:!0,spacing:3},e.map((E,x)=>t.createElement(op,{key:E,index:x,isDraggingSibling:u,onMoveField:l,onClickEditField:a,onRemoveField:C=>b(C,x),name:E,labelField:o[E].list.label||E,setIsDraggingSibling:d})))),t.createElement(ap,{size:"auto",paddingBottom:4},t.createElement(Ue.O,{label:c({id:v("components.FieldSelect.label"),defaultMessage:"Add a field"}),as:Ne.h,icon:t.createElement(dn.default,null),disabled:r.length<=0,"data-testid":"add-field"},r.map(E=>t.createElement(Ue.s,{key:E,onClick:()=>y(E)},o[E].list.label||E))))))};na.propTypes={displayedFields:Se.PropTypes.array.isRequired,listRemainingFields:Se.PropTypes.array.isRequired,metadatas:Se.PropTypes.objectOf(Se.PropTypes.shape({list:Se.PropTypes.shape({label:Se.PropTypes.string})})).isRequired,onAddField:Se.PropTypes.func.isRequired,onClickEditField:Se.PropTypes.func.isRequired,onMoveField:Se.PropTypes.func.isRequired,onRemoveField:Se.PropTypes.func.isRequired};var ip=na;const lp=(0,w.default)(_.k)`
1165
- svg {
1166
- width: ${32/16}rem;
1167
- height: ${24/16}rem;
1168
- margin-right: ${({theme:e})=>e.spaces[3]};
1169
- }
1170
- `,ra=({attributes:e,fieldForm:r,fieldToEdit:o,onCloseModal:s,onChangeEditLabel:a,onSubmit:l,type:i})=>{const{formatMessage:c}=(0,q.useIntl)(),u=e[o].relationType;let d=!["media","relation"].includes(i);return["oneWay","oneToOne","manyToOne"].includes(u)&&(d=!0),t.createElement(Es.P,{onClose:s,labelledBy:"title"},t.createElement("form",{onSubmit:l},t.createElement(Cs.x,null,t.createElement(lp,null,t.createElement(Ds,{type:i}),t.createElement(G.Z,{fontWeight:"bold",textColor:"neutral800",as:"h2",id:"title"},c({id:v("containers.ListSettingsView.modal-form.edit-label"),defaultMessage:"Edit {fieldName}"},{fieldName:Pt()(o)})))),t.createElement(vs.f,null,t.createElement(Ve.r,{gap:4},t.createElement(ke.P,{s:12,col:6},t.createElement($n.o,{id:"label-input",label:c({id:v("form.Input.label"),defaultMessage:"Label"}),name:"label",onChange:p=>a(p),value:r.label,hint:c({id:v("form.Input.label.inputDescription"),defaultMessage:"This value overrides the label displayed in the table's head"})})),d&&t.createElement(ke.P,{s:12,col:6},t.createElement(Ot.s,{"data-testid":"Enable sort on this field",checked:r.sortable,label:c({id:v("form.Input.sort.field"),defaultMessage:"Enable sort on this field"}),name:"sortable",onChange:p=>a({target:{name:"sortable",value:p.target.checked}}),onLabel:c({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"on"}),offLabel:c({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"off"})})))),t.createElement(Rs.m,{startActions:t.createElement(Ee.z,{onClick:s,variant:"tertiary"},c({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:t.createElement(Ee.z,{type:"submit"},c({id:"global.finish",defaultMessage:"Finish"}))})))};ra.propTypes={attributes:n().objectOf(n().shape({relationType:n().string})).isRequired,fieldForm:n().shape({label:n().string,sortable:n().bool}).isRequired,fieldToEdit:n().string.isRequired,onChangeEditLabel:n().func.isRequired,onCloseModal:n().func.isRequired,onSubmit:n().func.isRequired,type:n().string.isRequired};var cp=ra,dp=(e,r)=>({...e,initialData:r,modifiedData:r});const Br={fieldForm:{},fieldToEdit:"",initialData:{},modifiedData:{}};var up=(e=Br,r)=>(0,Gt.default)(e,o=>{const s=["modifiedData","layouts","list"];switch(r.type){case"ADD_FIELD":{const a=L()(e,s,[]);ne()(o,s,[...a,r.item]);break}case"MOVE_FIELD":{const a=L()(e,s,[]),{originalIndex:l,atIndex:i}=r;ne()(o,s,jt(a,l,i));break}case"ON_CHANGE":{ne()(o,["modifiedData",...r.keys.split(".")],r.value);break}case"ON_CHANGE_FIELD_METAS":{ne()(o,["fieldForm",r.name],r.value);break}case"REMOVE_FIELD":{const a=L()(e,s,[]);ne()(o,s,a.filter((l,i)=>r.index!==i));break}case"SET_FIELD_TO_EDIT":{const{fieldToEdit:a}=r;o.fieldToEdit=a,o.fieldForm.label=L()(o,["modifiedData","metadatas",a,"list","label"],""),o.fieldForm.sortable=L()(o,["modifiedData","metadatas",a,"list","sortable"],"");break}case"UNSET_FIELD_TO_EDIT":{o.fieldForm={},o.fieldToEdit="";break}case"SUBMIT_FIELD_FORM":{const a=["modifiedData","metadatas",e.fieldToEdit,"list"];ne()(o,[...a,"label"],e.fieldForm.label),ne()(o,[...a,"sortable"],e.fieldForm.sortable);break}default:return o}});const mp=["media","richtext","dynamiczone","relation","component","json"],oa=({layout:e,slug:r})=>{const{formatMessage:o}=(0,q.useIntl)(),{trackUsage:s}=(0,h.useTracking)(),a=ho(),l=(0,h.useNotification)(),{refetchData:i}=(0,t.useContext)(To),[c,u]=(0,t.useState)(!1),d=()=>u(M=>!M),[p,f]=(0,t.useReducer)(up,Br,()=>dp(Br,e)),{fieldToEdit:g,fieldForm:y,initialData:b,modifiedData:E}=p,x=!Ie()(y),{attributes:C}=e,R=E.layouts.list,A=()=>{const{settings:{pageSize:M,defaultSortBy:k,defaultSortOrder:V},kind:Z,uid:O}=b,Q=`${k}:${V}`,oe=`${(0,Ke.stringify)({page:1,pageSize:M,sort:Q},{encode:!1})}${a?`&${a}`:""}`;return`/content-manager/${Z}/${O}?${oe}`},T=({target:{name:M,value:k}})=>{f({type:"ON_CHANGE",keys:M,value:M==="settings.pageSize"?parseInt(k,10):k})},D=async()=>{const M=qn()(E,["layouts","settings","metadatas"]);j.mutate(M)},I=M=>{f({type:"ADD_FIELD",item:M})},F=(M,k)=>{M.stopPropagation(),R.length===1?l({type:"info",message:{id:v("notification.info.minimumFields")}}):f({type:"REMOVE_FIELD",index:k})},z=M=>{M.preventDefault(),d(),s("willSaveContentTypeLayout")},U=M=>{f({type:"SET_FIELD_TO_EDIT",fieldToEdit:M})},B=()=>{f({type:"UNSET_FIELD_TO_EDIT"})},K=M=>{M.preventDefault(),f({type:"SUBMIT_FIELD_FORM"})},j=(0,it.useMutation)(M=>ep(M,r),{onSuccess(){s("didEditListSettings"),i()},onError(){l({type:"warning",message:{id:"notification.error"}})}}),{isLoading:N}=j,S=({target:{name:M,value:k}})=>{f({type:"ON_CHANGE_FIELD_METAS",name:M,value:k})},J=Object.entries(C).reduce((M,k)=>{const[V,Z]=k,O=Ur(Z),Q=R.includes(V);return O&&!Q&&M.push(V),M},[]).sort(),$=Object.entries(C).reduce((M,k)=>{const[V,{type:Z}]=k;return mp.includes(Z)||M.push(V),M},[]),Y=(M,k)=>{f({type:"MOVE_FIELD",originalIndex:M,atIndex:k})};return t.createElement(le.A,null,t.createElement(ve.o,{"aria-busy":N},t.createElement("form",{onSubmit:z},t.createElement(se.T,{navigationAction:t.createElement(h.Link,{startIcon:t.createElement(on.Z,null),to:A,id:"go-back"},o({id:"global.back",defaultMessage:"Back"})),primaryAction:t.createElement(Ee.z,{size:"S",startIcon:t.createElement(Et.Z,null),disabled:St()(E,b),type:"submit"},o({id:"global.save",defaultMessage:"Save"})),subtitle:o({id:v("components.SettingsViewWrapper.pluginHeader.description.list-settings"),defaultMessage:"Define the settings of the list view."}),title:o({id:v("components.SettingsViewWrapper.pluginHeader.title"),defaultMessage:"Configure the view - {name}"},{name:Pt()(E.info.displayName)})}),t.createElement(gt.D,null,t.createElement(H.x,{background:"neutral0",hasRadius:!0,shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(tp,{modifiedData:E,onChange:T,sortOptions:$}),t.createElement(H.x,{paddingTop:6,paddingBottom:6},t.createElement(ds.i,null)),t.createElement(ip,{listRemainingFields:J,displayedFields:R,onAddField:I,onClickEditField:U,onMoveField:Y,onRemoveField:F,metadatas:E.metadatas}))),t.createElement(h.ConfirmDialog,{bodyText:{id:v("popUpWarning.warning.updateAllSettings"),defaultMessage:"This will modify all your settings"},iconRightButton:t.createElement(Et.Z,null),isConfirmButtonLoading:N,isOpen:c,onToggleDialog:d,onConfirm:D,variantRightButton:"success-light"})),x&&t.createElement(cp,{attributes:C,fieldForm:y,fieldToEdit:g,onChangeEditLabel:S,onCloseModal:B,onSubmit:K,type:L()(C,[g,"type"],"text")})))};oa.propTypes={layout:n().shape({uid:n().string.isRequired,settings:n().shape({bulkable:n().bool,defaultSortBy:n().string,defaultSortOrder:n().string,filterable:n().bool,pageSize:n().number,searchable:n().bool}).isRequired,metadatas:n().object.isRequired,options:n().object.isRequired,attributes:n().objectOf(n().shape({type:n().string})).isRequired}).isRequired,slug:n().string.isRequired};var pp=(0,t.memo)(oa),gp=()=>t.createElement(H.x,{padding:8},t.createElement(h.AnErrorOccurred,null));const sa=ce.Z.contentManager,aa=({match:{params:{slug:e},url:r}})=>{const{isLoading:o,layout:s,updateLayout:a}=mo(e),{rawContentTypeLayout:l,rawComponentsLayouts:i}=(0,t.useMemo)(()=>{let p={},f={};return s.contentType&&(p=Vt(s.contentType)),s.components&&(f=Object.keys(s.components).reduce((g,y)=>(g[y]=Vt(s.components[y]),g),{})),{rawContentTypeLayout:p,rawComponentsLayouts:f}},[s]);if((0,te.get)(s,["contentType","uid"],null)!==e||o)return t.createElement(h.LoadingIndicatorPage,null);const u=({location:{state:p},history:{goBack:f},match:{params:{id:g,origin:y}}},b)=>t.createElement(b,{slug:e,layout:s,state:p,goBack:f,id:g,origin:y}),d=[{path:"create/clone/:origin",comp:cn},{path:"create",comp:cn},{path:":id",comp:cn},{path:"",comp:_m}].map(({path:p,comp:f})=>t.createElement(re.Route,{key:p,path:`${r}/${p}`,render:g=>u(g,f)}));return t.createElement(ni.ErrorBoundary,{FallbackComponent:gp},t.createElement(Mo.Provider,{value:s},t.createElement(re.Switch,null,t.createElement(re.Route,{path:`${r}/configurations/list`},t.createElement(h.CheckPagePermissions,{permissions:sa.collectionTypesConfigurations},t.createElement(pp,{layout:l,slug:e,updateLayout:a}))),t.createElement(re.Route,{path:`${r}/configurations/edit`},t.createElement(h.CheckPagePermissions,{permissions:sa.collectionTypesConfigurations},t.createElement(kr,{components:i,isContentTypeView:!0,mainLayout:l,slug:e,updateLayout:a}))),d)))};aa.propTypes={match:n().shape({url:n().string.isRequired,params:n().shape({slug:n().string.isRequired}).isRequired}).isRequired};var fp=(0,t.memo)(aa),ia=m(57678),hp=m(98399);const yp=ce.Z.contentManager,bp=()=>{const[{isLoading:e,data:r},o]=(0,t.useReducer)(ia.Z,ia.q),s=(0,t.useMemo)(En,[]),{schemas:a}=(0,pe.useSelector)(i=>s(i),pe.shallowEqual),{uid:l}=(0,re.useParams)();return(0,t.useEffect)(()=>{const c=$e.Z.CancelToken.source();return(async d=>{try{o(nn());const{data:{data:p}}=await ge.be.get(he(`components/${l}/configuration`),{cancelToken:d.token});o(or(Qr(p,a,"component")))}catch(p){if($e.Z.isCancel(p))return;hp.error(p)}})(c),()=>{c.cancel("Operation canceled by the user.")}},[l,a]),e?t.createElement(h.LoadingIndicatorPage,null):t.createElement(h.CheckPagePermissions,{permissions:yp.componentsConfigurations},t.createElement(kr,{components:r.components,mainLayout:r.component,slug:l}))};var Ep=(0,t.memo)(bp),Cp=m(9695),vp=m(54725),Rp=()=>{const{formatMessage:e}=(0,q.useIntl)();return(0,h.useFocusWhenNavigate)(),t.createElement(ve.o,null,t.createElement(se.T,{title:e({id:v("header.name"),defaultMessage:"Content"})}),t.createElement(gt.D,null,t.createElement(Cp.x,{action:t.createElement(h.LinkButton,{variant:"secondary",startIcon:t.createElement(dn.default,null),to:"/plugins/content-type-builder/content-types/create-content-type"},e({id:"app.components.HomePage.create",defaultMessage:"Create your first Content-type"})),content:e({id:"content-manager.pages.NoContentType.text",defaultMessage:"You don't have any content yet, we recommend you to create your first Content-Type."}),hasRadius:!0,icon:t.createElement(vp.default,{width:"10rem"}),shadow:"tableShadow"})))},Tp=()=>{const{formatMessage:e}=(0,q.useIntl)();return(0,h.useFocusWhenNavigate)(),t.createElement(ve.o,null,t.createElement(se.T,{title:e({id:v("header.name"),defaultMessage:"Content"})}),t.createElement(gt.D,null,t.createElement(h.NoPermissions,null)))};const Mp=ce.Z.contentManager,la=({match:{params:{slug:e},url:r}})=>{const{isLoading:o,layout:s,updateLayout:a}=mo(e),{rawContentTypeLayout:l,rawComponentsLayouts:i}=(0,t.useMemo)(()=>{let c={},u={};return s.contentType&&(u=Vt(s.contentType)),s.components&&(c=Object.keys(s.components).reduce((d,p)=>(d[p]=Vt(s.components[p]),d),{})),{rawContentTypeLayout:u,rawComponentsLayouts:c}},[s]);return o?t.createElement(h.LoadingIndicatorPage,null):t.createElement(Mo.Provider,{value:s},t.createElement(re.Switch,null,t.createElement(re.Route,{path:`${r}/configurations/edit`},t.createElement(h.CheckPagePermissions,{permissions:Mp.singleTypesConfigurations},t.createElement(kr,{components:i,isContentTypeView:!0,mainLayout:l,slug:e,updateLayout:a}))),t.createElement(re.Route,{path:r,render:({location:{state:c},history:{goBack:u}})=>t.createElement(cn,{layout:s,slug:e,isSingleType:!0,state:c,goBack:u})})))};la.propTypes={match:n().shape({url:n().string.isRequired,params:n().shape({slug:n().string.isRequired}).isRequired}).isRequired};var Dp=(0,t.memo)(la),kp=m(90700),xp=m(8598),Ip=m(77013),Lp=m(79318),Sp=m(66618),Fp=m(58469),wp=m(39935),ca=m.n(wp),da=(e,r)=>r?(0,Fp.ZP)(e,r.toLowerCase(),{keys:[o=>o.title.toLowerCase()]}):e.sort((o,s)=>{const a=ca()(o.title),l=ca()(s.title);return a<l?-1:a>l?1:0}),Pp=()=>{const[e,r]=(0,t.useState)(""),{formatMessage:o}=(0,q.useIntl)(),s=(0,t.useMemo)(ja,[]),{collectionTypeLinks:a,singleTypeLinks:l}=(0,pe.useSelector)(y=>s(y),pe.shallowEqual),i=y=>y.map(b=>({...b,title:o({id:b.title,defaultMessage:b.title})})),c=i(a),u=i(l),d=[{id:"collectionTypes",title:{id:v("components.LeftMenu.collection-types"),defaultMessage:"Collection Types"},searchable:!0,links:da(c,e)},{id:"singleTypes",title:{id:v("components.LeftMenu.single-types"),defaultMessage:"Single Types"},searchable:!0,links:da(u,e)}],p=()=>{r("")},f=({target:{value:y}})=>{r(y)},g=o({id:v("header.name"),defaultMessage:"Content"});return t.createElement(kp.m,{ariaLabel:g},t.createElement(xp.p,{label:g,searchable:!0,value:e,onChange:f,onClear:p,searchLabel:o({id:"content-manager.components.LeftMenu.Search.label",defaultMessage:"Search for a content type"})}),t.createElement(Ip.Z,null,d.map(y=>{const b=o({id:y.title.id,defaultMessage:y.title.defaultMessage},y.title.values);return t.createElement(Lp.D,{key:y.id,label:b,badgeLabel:y.links.length.toString()},y.links.map(E=>{const x=E.search?`?${E.search}`:"";return t.createElement(Sp.E,{as:re.NavLink,key:E.uid,to:`${E.to}${x}`},E.title)}))})))},qr=m(92886);const Ap=()=>({type:qr.ZA}),Op=()=>({type:qr.c2}),$p=(e,r,o,s)=>({type:qr.ix,data:{authorizedCtLinks:e,authorizedStLinks:r,components:s,contentTypeSchemas:o}}),ua=(e,r,o=[])=>e.filter(s=>s.isDisplayed).map(s=>{const a=[{action:"plugin::content-manager.explorer.create",subject:s.uid},{action:"plugin::content-manager.explorer.read",subject:s.uid}],l=[{action:"plugin::content-manager.explorer.read",subject:s.uid}],i=r==="collectionTypes"?a:l,c=o.find(({uid:d})=>d===s.uid);let u=null;if(c){const d={page:1,pageSize:c.settings.pageSize,sort:`${c.settings.defaultSortBy}:${c.settings.defaultSortOrder}`};u=(0,Ke.stringify)(d,{encode:!1})}return{permissions:i,search:u,kind:s.kind,title:s.info.displayName,to:`/content-manager/${s.kind}/${s.uid}`,uid:s.uid,name:s.uid,isDisplayed:s.isDisplayed}});var Np=(e,r)=>{const[o,s]=(0,te.chain)(e).groupBy("kind").map((a,l)=>({name:l,links:a})).sortBy("name").value();return{collectionTypesSectionLinks:ua((0,te.get)(o,"links",[]),"collectionTypes",r),singleTypesSectionLinks:ua((0,te.get)(s,"links",[]),"singleTypes")}},ma=(e,r)=>r.map(({permissions:o})=>(0,h.hasPermissions)(e,o)),Bp=m(98399),qp=async(e,r,o)=>{try{const{data:{data:s}}=await ge.be.get(he("content-types-settings")),{collectionTypesSectionLinks:a,singleTypesSectionLinks:l}=Np(e,s),i=ma(r,a),c=await Promise.all(i),u=a.filter((g,y)=>c[y]),d=ma(r,l),p=await Promise.all(d),f=l.filter((g,y)=>p[y]);return{authorizedCtLinks:u,authorizedStLinks:f}}catch(s){return Bp.error(s),o({type:"warning",message:{id:"notification.error"}}),{authorizedCtLinks:[],authorizedStLinks:[],contentTypes:[]}}},jp=m(98399),Zp=()=>{const e=(0,pe.useDispatch)(),r=(0,h.useNotification)(),o=(0,pe.useSelector)(It()),s=(0,t.useRef)(),{allPermissions:a}=(0,h.useRBACProvider)(),{runHookWaterfall:l}=(0,h.useStrapiApp)(),c=$e.Z.CancelToken.source(),{notifyStatus:u}=(0,Ir.G)(),{formatMessage:d}=(0,q.useIntl)(),p=async()=>{e(Ap());try{const[{data:{data:f}},{data:{data:g}}]=await Promise.all(["components","content-types"].map(R=>ge.be.get(he(R),{cancelToken:c.token})));u(d({id:v("App.schemas.data-loaded"),defaultMessage:"The schemas have been successfully loaded."}));const{authorizedCtLinks:y,authorizedStLinks:b}=await qp(g,a,r),{ctLinks:E}=l(Kt.LK,{ctLinks:y,models:g}),{stLinks:x}=l(Kt.dV,{stLinks:b,models:g}),C=$p(E,x,g,f);e(C)}catch(f){if($e.Z.isCancel(f))return;jp.error(f),r({type:"warning",message:{id:"notification.error"}})}};return s.current=p,(0,t.useEffect)(()=>(s.current(),()=>{c.cancel("Operation canceled by the user."),e(Op())}),[e,r]),{...o,refetchData:s.current}};const zp=ce.Z.contentManager,pa=()=>{const e=(0,re.useRouteMatch)("/content-manager/:kind/:uid"),{status:r,collectionTypeLinks:o,singleTypeLinks:s,models:a,refetchData:l}=Zp(),i=Ze()([...o,...s],g=>g.title.toLowerCase()),{pathname:c}=(0,re.useLocation)(),{formatMessage:u}=(0,q.useIntl)(),{startSection:d}=(0,h.useGuidedTour)(),p=(0,t.useRef)(d);if((0,t.useEffect)(()=>{p.current&&p.current("contentManager")},[]),r==="loading")return t.createElement(ve.o,{"aria-busy":"true"},t.createElement(se.T,{title:u({id:v("header.name"),defaultMessage:"Content"})}),t.createElement(h.LoadingIndicatorPage,null));const f=a.filter(({isDisplayed:g})=>g);return i.length===0&&f.length>0&&c!=="/content-manager/403"?t.createElement(re.Redirect,{to:"/content-manager/403"}):f.length===0&&c!=="/content-manager/no-content-types"?t.createElement(re.Redirect,{to:"/content-manager/no-content-types"}):!e&&i.length>0?t.createElement(re.Redirect,{to:`${i[0].to}${i[0].search?`?${i[0].search}`:""}`}):t.createElement(le.A,{sideNav:t.createElement(Pp,null)},t.createElement(ti,null),t.createElement(To.Provider,{value:{refetchData:l}},t.createElement(re.Switch,null,t.createElement(re.Route,{path:"/content-manager/components/:uid/configurations/edit"},t.createElement(h.CheckPagePermissions,{permissions:zp.componentsConfigurations},t.createElement(Ep,null))),t.createElement(re.Route,{path:"/content-manager/collectionType/:slug",component:fp}),t.createElement(re.Route,{path:"/content-manager/singleType/:slug",component:Dp}),t.createElement(re.Route,{path:"/content-manager/403"},t.createElement(Tp,null)),t.createElement(re.Route,{path:"/content-manager/no-content-types"},t.createElement(Rp,null)),t.createElement(re.Route,{path:"",component:h.NotFound}))))};function Vp(){const{formatMessage:e}=(0,q.useIntl)();return t.createElement(t.Fragment,null,t.createElement(ut.Helmet,{title:e({id:v("plugin.name"),defaultMessage:"Content Manager"})}),t.createElement(pa,null))}},57544:function(){},59599:function(){},42310:function(){},33842:function(){},85695:function(){}}]);