@strapi/admin 4.7.0 → 4.7.2-exp.24dd7d95972fa822bf43e9b095b51027402c229e

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 (137) hide show
  1. package/admin/src/components/AutoReloadOverlayBlockerProvider/Blocker.js +4 -4
  2. package/admin/src/components/AutoReloadOverlayBlockerProvider/Overlay.js +2 -2
  3. package/admin/src/components/GuidedTour/Homepage/index.js +3 -3
  4. package/admin/src/components/GuidedTour/Modal/components/Content.js +35 -23
  5. package/admin/src/components/GuidedTour/Modal/components/Modal.js +6 -4
  6. package/admin/src/components/LeftMenu/index.js +3 -3
  7. package/admin/src/components/Notifications/index.js +6 -4
  8. package/admin/src/components/UpgradePlanModal/index.js +6 -7
  9. package/admin/src/content-manager/components/ComponentInitializer/index.js +3 -3
  10. package/admin/src/content-manager/components/DragLayer/RelationDragPreview.js +3 -3
  11. package/admin/src/content-manager/components/DynamicTable/ConfirmDialogDelete/index.js +3 -11
  12. package/admin/src/content-manager/components/DynamicTable/ConfirmDialogDeleteAll/index.js +3 -11
  13. package/admin/src/content-manager/components/DynamicZone/components/ComponentCard.js +4 -4
  14. package/admin/src/content-manager/components/DynamicZone/components/DynamicComponent.js +3 -4
  15. package/admin/src/content-manager/components/DynamicZone/index.js +3 -3
  16. package/admin/src/content-manager/components/FieldComponent/index.js +3 -3
  17. package/admin/src/content-manager/components/NonRepeatableComponent/index.js +3 -3
  18. package/admin/src/content-manager/components/RelationInput/components/Relation.js +9 -3
  19. package/admin/src/content-manager/components/RelationInput/components/RelationItem.js +4 -4
  20. package/admin/src/content-manager/components/RepeatableComponent/components/Component.js +12 -6
  21. package/admin/src/content-manager/components/Wysiwyg/Editor.js +2 -2
  22. package/admin/src/content-manager/components/Wysiwyg/index.js +5 -5
  23. package/admin/src/content-manager/components/Wysiwyg/utils/continueList.js +3 -3
  24. package/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFields.js +5 -5
  25. package/admin/src/content-manager/pages/EditSettingsView/components/DynamicZoneList.js +3 -3
  26. package/admin/src/content-manager/pages/EditSettingsView/index.js +3 -3
  27. package/admin/src/content-manager/pages/EditView/Header/index.js +6 -7
  28. package/admin/src/content-manager/pages/EditView/Information/index.js +9 -9
  29. package/admin/src/content-manager/pages/EditView/index.js +9 -9
  30. package/admin/src/content-manager/pages/ListSettingsView/components/CardPreview.js +3 -3
  31. package/admin/src/content-manager/pages/ListSettingsView/components/DraggableCard.js +3 -3
  32. package/admin/src/content-manager/pages/ListSettingsView/components/Settings.js +5 -5
  33. package/admin/src/content-manager/pages/ListSettingsView/components/SortDisplayedFields.js +3 -11
  34. package/admin/src/pages/Admin/Onboarding/index.js +11 -5
  35. package/admin/src/pages/AuthPage/components/ForgotPassword/index.js +3 -3
  36. package/admin/src/pages/AuthPage/components/Login/BaseLogin.js +3 -12
  37. package/admin/src/pages/AuthPage/components/Register/index.js +2 -3
  38. package/admin/src/pages/AuthPage/components/ResetPassword/index.js +3 -3
  39. package/admin/src/pages/HomePage/ContentBlocks.js +3 -3
  40. package/admin/src/pages/HomePage/HomeHeader.js +3 -7
  41. package/admin/src/pages/HomePage/SocialLinks.js +5 -5
  42. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/PackageStats.js +3 -3
  43. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/index.js +3 -3
  44. package/admin/src/pages/MarketplacePage/components/NpmPackagesFilters/FiltersPopover.js +3 -3
  45. package/admin/src/pages/ProfilePage/index.js +11 -11
  46. package/admin/src/pages/SettingsPage/components/Tokens/FormHead/index.js +3 -3
  47. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/ActionBoundRoutes/index.js +5 -5
  48. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/BoundRoute/index.js +5 -5
  49. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/FormApiTokenContainer/index.js +3 -3
  50. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/Permissions/index.js +3 -3
  51. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +3 -3
  52. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/FromComputerForm.js +2 -3
  53. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/index.js +7 -6
  54. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/GlobalActions/index.js +4 -6
  55. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/RoleForm/index.js +2 -3
  56. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/index.js +5 -5
  57. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/components/FormTransferTokenContainer/index.js +3 -3
  58. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/index.js +3 -3
  59. package/admin/src/pages/SettingsPage/pages/Users/EditPage/index.js +7 -7
  60. package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js +5 -5
  61. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/EventInput/index.js +3 -3
  62. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/HeadersInput/index.js +2 -3
  63. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/TriggerContainer/index.js +9 -9
  64. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/WebhookForm/index.js +7 -7
  65. package/admin/src/pages/SettingsPage/pages/Webhooks/ListView/index.js +158 -165
  66. package/admin/src/pages/UseCasePage/index.js +2 -3
  67. package/admin/src/translations/zh-Hans.json +31 -1
  68. package/build/{4849.7abafe52.chunk.js → 3094.1cac9087.chunk.js} +2 -2
  69. package/build/{4049.16583eee.chunk.js → 4049.64715f20.chunk.js} +1 -1
  70. package/build/4649.daa290f6.chunk.js +30 -0
  71. package/build/{6487.83e219bf.chunk.js → 6891.ef7464be.chunk.js} +6 -6
  72. package/build/7259.63e91b59.chunk.js +1 -0
  73. package/build/Admin-authenticatedApp.884faefa.chunk.js +79 -0
  74. package/build/Admin_homePage.1411fb7c.chunk.js +68 -0
  75. package/build/{Admin_marketplace.a8ea585f.chunk.js → Admin_marketplace.0f6c8ee2.chunk.js} +4 -4
  76. package/build/Admin_profilePage.d2a8f9ab.chunk.js +15 -0
  77. package/build/{Admin_settingsPage.f6d02df6.chunk.js → Admin_settingsPage.6814a96e.chunk.js} +17 -18
  78. package/build/admin-app.d9d96db4.chunk.js +112 -0
  79. package/build/admin-edit-roles-page.bf130aaf.chunk.js +1 -0
  80. package/build/{admin-edit-users.f06c4a53.chunk.js → admin-edit-users.48031e30.chunk.js} +2 -2
  81. package/build/admin-users.77b4188a.chunk.js +11 -0
  82. package/build/{content-manager.6ed87531.chunk.js → content-manager.d792c194.chunk.js} +40 -40
  83. package/build/{content-type-builder-list-view.c2f917b6.chunk.js → content-type-builder-list-view.cf38fe2f.chunk.js} +9 -9
  84. package/build/content-type-builder-translation-zh-Hans-json.415577fb.chunk.js +1 -0
  85. package/build/content-type-builder.cdd117c3.chunk.js +126 -0
  86. package/build/email-settings-page.4bdbef9a.chunk.js +3 -0
  87. package/build/{i18n-settings-page.c7bc29fc.chunk.js → i18n-settings-page.2bb5be96.chunk.js} +1 -1
  88. package/build/index.html +1 -1
  89. package/build/main.64fe0c37.js +3928 -0
  90. package/build/{runtime~main.bc7de2d8.js → runtime~main.684b5fed.js} +1 -1
  91. package/build/sso-settings-page.5a8588ef.chunk.js +1 -0
  92. package/build/upload-settings.0200561d.chunk.js +1 -0
  93. package/build/upload-translation-zh-Hans-json.db163b6b.chunk.js +1 -0
  94. package/build/upload.c7da1611.chunk.js +13 -0
  95. package/build/{users-advanced-settings-page.677e1973.chunk.js → users-advanced-settings-page.c0cae03a.chunk.js} +1 -1
  96. package/build/users-providers-settings-page.5f86e45c.chunk.js +1 -0
  97. package/build/users-roles-settings-page.b02986df.chunk.js +30 -0
  98. package/build/webhook-edit-page.a2a2b7bb.chunk.js +23 -0
  99. package/build/webhook-list-page.029957a4.chunk.js +1 -0
  100. package/build/zh-Hans-json.993d085f.chunk.js +1 -0
  101. package/ee/admin/hooks/useLicenseLimitNotification/index.js +2 -1
  102. package/ee/admin/pages/AuthPage/components/Login/index.js +3 -3
  103. package/ee/admin/pages/AuthPage/components/Providers/index.js +3 -3
  104. package/ee/admin/pages/SettingsPage/pages/ApplicationInfosPage/components/AdminSeatInfo/index.js +3 -3
  105. package/ee/admin/pages/SettingsPage/pages/Roles/CreatePage/index.js +6 -7
  106. package/ee/admin/pages/SettingsPage/pages/SingleSignOn/index.js +11 -3
  107. package/ee/admin/pages/SettingsPage/pages/Users/ListPage/CreateAction/index.js +5 -4
  108. package/ee/server/controllers/admin.js +4 -3
  109. package/ee/server/controllers/user.js +2 -2
  110. package/ee/server/services/seat-enforcement.js +2 -2
  111. package/package.json +13 -12
  112. package/server/content-types/User.js +4 -0
  113. package/server/content-types/api-token.js +1 -0
  114. package/server/controllers/user.js +7 -1
  115. package/server/services/permission/permissions-manager/index.js +9 -5
  116. package/server/services/permission/permissions-manager/sanitize.js +101 -4
  117. package/build/4649.ffa2f59a.chunk.js +0 -30
  118. package/build/7259.cd2f7bad.chunk.js +0 -1
  119. package/build/Admin-authenticatedApp.bce108cd.chunk.js +0 -79
  120. package/build/Admin_homePage.cec3f510.chunk.js +0 -70
  121. package/build/Admin_profilePage.b27e40f6.chunk.js +0 -15
  122. package/build/admin-app.d3b3237b.chunk.js +0 -112
  123. package/build/admin-edit-roles-page.fd041d89.chunk.js +0 -1
  124. package/build/admin-users.8c9bfda4.chunk.js +0 -11
  125. package/build/content-type-builder-translation-zh-Hans-json.52a30266.chunk.js +0 -1
  126. package/build/content-type-builder.b7fb1e65.chunk.js +0 -126
  127. package/build/email-settings-page.884cfb8b.chunk.js +0 -3
  128. package/build/main.8009bfe8.js +0 -3930
  129. package/build/sso-settings-page.82d84043.chunk.js +0 -1
  130. package/build/upload-settings.c18b010f.chunk.js +0 -1
  131. package/build/upload-translation-zh-Hans-json.3da5cf56.chunk.js +0 -1
  132. package/build/upload.0876ab69.chunk.js +0 -13
  133. package/build/users-providers-settings-page.87a9c77d.chunk.js +0 -1
  134. package/build/users-roles-settings-page.79c19845.chunk.js +0 -30
  135. package/build/webhook-edit-page.cfbdd3fd.chunk.js +0 -23
  136. package/build/webhook-list-page.3daa4fe2.chunk.js +0 -1
  137. package/build/zh-Hans-json.6e26e359.chunk.js +0 -1
@@ -1,4 +1,4 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5905],{84015:function(Ve,J,d){d.r(J),d.d(J,{default:function(){return ze}});var e=d(32735),c=d(13478),b=d(57269),n=d(39161),de=d(33795),C=d.n(de),pe=d(23973),me=d.n(pe),ue=d(89793),Q=d.n(ue),ge=d(23940),Y=d.n(ge),D=d(5636),N=d(5141),fe=d(60216),o=d.n(fe),q=d(32237),L=d(198),h=d(83292),y=d(92318);const ye=(0,h.default)(n.Flex)`
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5905],{84015:function(Oe,J,d){d.r(J),d.d(J,{default:function(){return We}});var e=d(32735),c=d(13478),b=d(57269),n=d(39161),de=d(33795),C=d.n(de),pe=d(23973),me=d.n(pe),ue=d(89793),Q=d.n(ue),ge=d(23940),Y=d.n(ge),D=d(5636),S=d(5141),fe=d(60216),o=d.n(fe),q=d(32237),F=d(198),h=d(83292),y=d(92318);const ye=(0,h.default)(n.Flex)`
2
2
  border-radius: 50%;
3
3
  color: ${({theme:t,isActive:a})=>a?t.colors.primary600:t.colors.neutral600};
4
4
  height: ${({theme:t})=>t.spaces[8]};
@@ -51,7 +51,7 @@
51
51
  color: ${({theme:t})=>t.colors.primary600};
52
52
  }
53
53
  }
54
- `;function z({component:t,dzName:a,index:l,isActive:i,isInDevelopmentMode:p,onClick:r}){const{modifiedData:u,removeComponentFromDynamicZone:v}=(0,L.Z)(),{schema:{displayName:T}}=C()(u,["components",t],{schema:{}}),E=g=>{g.stopPropagation(),v(a,l)};return e.createElement(he,{as:"button",alignItems:"center",direction:"column",className:i?"active":"",borderRadius:"borderRadius",justifyContent:"center",paddingLeft:4,paddingRight:4,shrink:0,type:"button",onClick:r},e.createElement(U,{isActive:i}),e.createElement(n.Box,{marginTop:1,maxWidth:"100%"},e.createElement(n.Typography,{variant:"pi",fontWeight:"bold",ellipsis:!0},T)),p&&e.createElement(_,{as:"button",onClick:E,type:"button"},e.createElement(b.Cross,null)))}z.defaultProps={component:null,isActive:!1,isInDevelopmentMode:!1,onClick(){}},z.propTypes={component:o().string,dzName:o().string.isRequired,index:o().number.isRequired,isActive:o().bool,isInDevelopmentMode:o().bool,onClick:o().func};var be=z,ee=h.default.tr`
54
+ `;function W({component:t,dzName:a,index:l,isActive:i,isInDevelopmentMode:p,onClick:r}){const{modifiedData:u,removeComponentFromDynamicZone:v}=(0,F.Z)(),{schema:{displayName:T}}=C()(u,["components",t],{schema:{}}),E=g=>{g.stopPropagation(),v(a,l)};return e.createElement(he,{as:"button",alignItems:"center",direction:"column",className:i?"active":"",borderRadius:"borderRadius",justifyContent:"center",paddingLeft:4,paddingRight:4,shrink:0,type:"button",onClick:r},e.createElement(U,{isActive:i}),e.createElement(n.Box,{marginTop:1,maxWidth:"100%"},e.createElement(n.Typography,{variant:"pi",fontWeight:"bold",ellipsis:!0},T)),p&&e.createElement(_,{as:"button",onClick:E,type:"button"},e.createElement(b.Cross,null)))}W.defaultProps={component:null,isActive:!1,isInDevelopmentMode:!1,onClick(){}},W.propTypes={component:o().string,dzName:o().string.isRequired,index:o().number.isRequired,isActive:o().bool,isInDevelopmentMode:o().bool,onClick:o().func};var be=W,ee=h.default.tr`
55
55
  &.component-row,
56
56
  &.dynamiczone-row {
57
57
  position: relative;
@@ -82,7 +82,7 @@
82
82
  &.dynamiczone-row > td:first-of-type {
83
83
  padding: 0;
84
84
  }
85
- `;function W({customRowComponent:t,component:a,isFromDynamicZone:l,isNestedInDZComponent:i,firstLoopComponentUid:p}){const{modifiedData:r}=(0,L.Z)(),{schema:{attributes:u}}=C()(r,["components",a],{schema:{attributes:[]}});return e.createElement(ee,{isChildOfDynamicZone:l,className:"component-row"},e.createElement("td",{colSpan:12},e.createElement(oe,{customRowComponent:t,items:u,targetUid:a,firstLoopComponentUid:p||a,editTarget:"components",isFromDynamicZone:l,isNestedInDZComponent:i,isSub:!0,secondLoopComponentUid:p?a:null})))}W.defaultProps={component:null,customRowComponent:null,firstLoopComponentUid:null,isFromDynamicZone:!1,isNestedInDZComponent:!1},W.propTypes={component:o().string,customRowComponent:o().func,firstLoopComponentUid:o().string,isFromDynamicZone:o().bool,isNestedInDZComponent:o().bool};var te=W;const Ee=(0,h.default)(b.Plus)`
85
+ `;function V({customRowComponent:t,component:a,isFromDynamicZone:l,isNestedInDZComponent:i,firstLoopComponentUid:p}){const{modifiedData:r}=(0,F.Z)(),{schema:{attributes:u}}=C()(r,["components",a],{schema:{attributes:[]}});return e.createElement(ee,{isChildOfDynamicZone:l,className:"component-row"},e.createElement("td",{colSpan:12},e.createElement(oe,{customRowComponent:t,items:u,targetUid:a,firstLoopComponentUid:p||a,editTarget:"components",isFromDynamicZone:l,isNestedInDZComponent:i,isSub:!0,secondLoopComponentUid:p?a:null})))}V.defaultProps={component:null,customRowComponent:null,firstLoopComponentUid:null,isFromDynamicZone:!1,isNestedInDZComponent:!1},V.propTypes={component:o().string,customRowComponent:o().func,firstLoopComponentUid:o().string,isFromDynamicZone:o().bool,isNestedInDZComponent:o().bool};var te=V;const Ee=(0,h.default)(b.Plus)`
86
86
  width: ${(0,c.pxToRem)(32)};
87
87
  height: ${(0,c.pxToRem)(32)};
88
88
  padding: ${(0,c.pxToRem)(9)};
@@ -97,18 +97,18 @@
97
97
  width: 100%;
98
98
  top: 0;
99
99
  left: 0;
100
- `,Ce=(0,h.default)(n.Stack)`
100
+ `,Ce=(0,h.default)(n.Flex)`
101
101
  width: 100%;
102
102
  overflow-x: auto;
103
103
  `,ve=(0,h.default)(n.Box)`
104
104
  padding-top: ${(0,c.pxToRem)(90)};
105
- `,xe=(0,h.default)(n.Stack)`
105
+ `,xe=(0,h.default)(n.Flex)`
106
106
  flex-shrink: 0;
107
107
  width: ${(0,c.pxToRem)(140)};
108
108
  height: ${(0,c.pxToRem)(80)};
109
109
  justify-content: center;
110
110
  align-items: center;
111
- `;function V({customRowComponent:t,components:a,addComponent:l,name:i,targetUid:p}){const{isInDevelopmentMode:r}=(0,L.Z)(),[u,v]=(0,e.useState)(0),{formatMessage:T}=(0,D.useIntl)(),E=s=>{u!==s&&v(s)},g=()=>{l(i)};return e.createElement(ee,{className:"dynamiczone-row",isFromDynamicZone:!0},e.createElement("td",{colSpan:12},e.createElement(Te,{paddingLeft:8},e.createElement(Ce,{horizontal:!0,spacing:2},r&&e.createElement("button",{type:"button",onClick:g},e.createElement(xe,{spacing:1},e.createElement(Ee,null),e.createElement(n.Typography,{variant:"pi",fontWeight:"bold",textColor:"primary600"},T({id:(0,y.Z)("button.component.add"),formatMessage:"Add a component"})))),a.map((s,m)=>e.createElement(be,{key:s,dzName:i,index:m,component:s,isActive:u===m,isInDevelopmentMode:r,onClick:()=>E(m)})))),e.createElement(ve,null,a.map((s,m)=>{const f={customRowComponent:t,component:s};return e.createElement(n.Box,{tabId:`${m}`,key:s,style:{display:u===m?"block":"none"}},e.createElement("table",null,e.createElement("tbody",null,e.createElement(te,{...f,isFromDynamicZone:!0,targetUid:p,key:s}))))}))))}V.defaultProps={addComponent(){},components:[],customRowComponent:null,name:null},V.propTypes={addComponent:o().func,components:o().instanceOf(Array),customRowComponent:o().func,name:o().string,targetUid:o().string.isRequired};var $e=V,ke=(0,h.default)(n.Box)`
111
+ `;function O({customRowComponent:t,components:a,addComponent:l,name:i,targetUid:p}){const{isInDevelopmentMode:r}=(0,F.Z)(),[u,v]=(0,e.useState)(0),{formatMessage:T}=(0,D.useIntl)(),E=s=>{u!==s&&v(s)},g=()=>{l(i)};return e.createElement(ee,{className:"dynamiczone-row",isFromDynamicZone:!0},e.createElement("td",{colSpan:12},e.createElement(Te,{paddingLeft:8},e.createElement(Ce,{gap:2},r&&e.createElement("button",{type:"button",onClick:g},e.createElement(xe,{direction:"column",alignItems:"stretch",gap:1},e.createElement(Ee,null),e.createElement(n.Typography,{variant:"pi",fontWeight:"bold",textColor:"primary600"},T({id:(0,y.Z)("button.component.add"),formatMessage:"Add a component"})))),a.map((s,m)=>e.createElement(be,{key:s,dzName:i,index:m,component:s,isActive:u===m,isInDevelopmentMode:r,onClick:()=>E(m)})))),e.createElement(ve,null,a.map((s,m)=>{const f={customRowComponent:t,component:s};return e.createElement(n.Box,{tabId:`${m}`,key:s,style:{display:u===m?"block":"none"}},e.createElement("table",null,e.createElement("tbody",null,e.createElement(te,{...f,isFromDynamicZone:!0,targetUid:p,key:s}))))}))))}O.defaultProps={addComponent(){},components:[],customRowComponent:null,name:null},O.propTypes={addComponent:o().func,components:o().instanceOf(Array),customRowComponent:o().func,name:o().string,targetUid:o().string.isRequired};var $e=O,ke=(0,h.default)(n.Box)`
112
112
  table {
113
113
  width: 100%;
114
114
  white-space: nowrap;
@@ -166,7 +166,7 @@
166
166
  border: none;
167
167
  position: relative;
168
168
  left: -0.25rem;
169
- `,ne=({children:t,icon:a,color:l,...i})=>e.createElement(we,{paddingBottom:4,paddingTop:4,as:"button",type:"button",...i},e.createElement(n.Flex,null,e.createElement(Me,{color:l,"aria-hidden":!0,background:`${l}200`},a),e.createElement(n.Box,{paddingLeft:3},e.createElement(n.Typography,{variant:"pi",fontWeight:"bold",textColor:`${l}600`},t))));ne.propTypes={color:o().string.isRequired,children:o().string.isRequired,icon:o().node.isRequired};var Re=ne;function O({addComponentToDZ:t,customRowComponent:a,editTarget:l,firstLoopComponentUid:i,isFromDynamicZone:p,isMain:r,isNestedInDZComponent:u,isSub:v,items:T,secondLoopComponentUid:E,targetUid:g}){const{formatMessage:s}=(0,D.useIntl)(),{trackUsage:m}=(0,c.useTracking)(),{isInDevelopmentMode:f,modifiedData:B,isInContentTypeView:k}=(0,L.Z)(),{onOpenModalAddField:w}=(0,q.Z)(),x=()=>{m("hasClickedCTBAddFieldBanner"),w({forTarget:l,targetUid:g})};return g?T.length===0&&r?e.createElement(n.Table,{colCount:2,rowCount:2},e.createElement(n.Thead,null,e.createElement(n.Tr,null,e.createElement(n.Th,null,e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600"},s({id:"global.name",defaultMessage:"Name"}))),e.createElement(n.Th,null,e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600"},s({id:"global.type",defaultMessage:"Type"}))))),e.createElement(c.EmptyBodyTable,{action:e.createElement(n.Button,{onClick:x,size:"L",startIcon:e.createElement(b.Plus,null),variant:"secondary"},s({id:(0,y.Z)("table.button.no-fields"),defaultMessage:"Add new field"})),colSpan:2,content:k?{id:(0,y.Z)("table.content.no-fields.collection-type"),defaultMessage:"Add your first field to this Collection-Type"}:{id:(0,y.Z)("table.content.no-fields.component"),defaultMessage:"Add your first field to this component"}})):e.createElement(ke,null,e.createElement(n.Box,{paddingLeft:6,paddingRight:r?6:0,...r&&{style:{overflowX:"auto"}}},e.createElement("table",null,r&&e.createElement("thead",null,e.createElement("tr",null,e.createElement("th",null,e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600"},s({id:"global.name",defaultMessage:"Name"}))),e.createElement("th",{colSpan:"2"},e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600"},s({id:"global.type",defaultMessage:"Type"}))))),e.createElement("tbody",null,T.map(M=>{const{type:Z}=M,I=a;return e.createElement(e.Fragment,{key:M.name},e.createElement(I,{...M,isNestedInDZComponent:u,targetUid:g,editTarget:l,firstLoopComponentUid:i,isFromDynamicZone:p,secondLoopComponentUid:E}),Z==="component"&&e.createElement(te,{...M,customRowComponent:a,targetUid:g,isNestedInDZComponent:p,editTarget:l,firstLoopComponentUid:i}),Z==="dynamiczone"&&e.createElement($e,{...M,customRowComponent:a,addComponent:t,targetUid:g}))})))),r&&f&&e.createElement(n.TFooter,{icon:e.createElement(b.Plus,null),onClick:x},s({id:(0,y.Z)(`form.button.add.field.to.${B.contentType?B.contentType.schema.kind:l||"collectionType"}`),defaultMessage:"Add another field"})),v&&f&&e.createElement(Re,{icon:e.createElement(b.Plus,null),onClick:x,color:p?"primary":"neutral"},s({id:(0,y.Z)("form.button.add.field.to.component"),defaultMessage:"Add another field"}))):e.createElement(n.Table,{colCount:2,rowCount:2},e.createElement(n.Thead,null,e.createElement(n.Tr,null,e.createElement(n.Th,null,e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600"},s({id:"global.name",defaultMessage:"Name"}))),e.createElement(n.Th,null,e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600"},s({id:"global.type",defaultMessage:"Type"}))))),e.createElement(c.EmptyBodyTable,{colSpan:2,content:{id:(0,y.Z)("table.content.create-first-content-type"),defaultMessage:"Create your first Collection-Type"}}))}O.defaultProps={addComponentToDZ(){},customRowComponent:null,firstLoopComponentUid:null,isFromDynamicZone:!1,isNestedInDZComponent:!1,isMain:!1,isSub:!1,items:[],secondLoopComponentUid:null,targetUid:null},O.propTypes={addComponentToDZ:o().func,customRowComponent:o().func,editTarget:o().string.isRequired,firstLoopComponentUid:o().string,isFromDynamicZone:o().bool,isNestedInDZComponent:o().bool,isMain:o().bool,items:o().instanceOf(Array),secondLoopComponentUid:o().string,targetUid:o().string,isSub:o().bool};var oe=O;const Be=(0,h.default)(n.Box)`
169
+ `,ne=({children:t,icon:a,color:l,...i})=>e.createElement(we,{paddingBottom:4,paddingTop:4,as:"button",type:"button",...i},e.createElement(n.Flex,null,e.createElement(Me,{color:l,"aria-hidden":!0,background:`${l}200`},a),e.createElement(n.Box,{paddingLeft:3},e.createElement(n.Typography,{variant:"pi",fontWeight:"bold",textColor:`${l}600`},t))));ne.propTypes={color:o().string.isRequired,children:o().string.isRequired,icon:o().node.isRequired};var Re=ne;function z({addComponentToDZ:t,customRowComponent:a,editTarget:l,firstLoopComponentUid:i,isFromDynamicZone:p,isMain:r,isNestedInDZComponent:u,isSub:v,items:T,secondLoopComponentUid:E,targetUid:g}){const{formatMessage:s}=(0,D.useIntl)(),{trackUsage:m}=(0,c.useTracking)(),{isInDevelopmentMode:f,modifiedData:B,isInContentTypeView:k}=(0,F.Z)(),{onOpenModalAddField:w}=(0,q.Z)(),x=()=>{m("hasClickedCTBAddFieldBanner"),w({forTarget:l,targetUid:g})};return g?T.length===0&&r?e.createElement(n.Table,{colCount:2,rowCount:2},e.createElement(n.Thead,null,e.createElement(n.Tr,null,e.createElement(n.Th,null,e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600"},s({id:"global.name",defaultMessage:"Name"}))),e.createElement(n.Th,null,e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600"},s({id:"global.type",defaultMessage:"Type"}))))),e.createElement(c.EmptyBodyTable,{action:e.createElement(n.Button,{onClick:x,size:"L",startIcon:e.createElement(b.Plus,null),variant:"secondary"},s({id:(0,y.Z)("table.button.no-fields"),defaultMessage:"Add new field"})),colSpan:2,content:k?{id:(0,y.Z)("table.content.no-fields.collection-type"),defaultMessage:"Add your first field to this Collection-Type"}:{id:(0,y.Z)("table.content.no-fields.component"),defaultMessage:"Add your first field to this component"}})):e.createElement(ke,null,e.createElement(n.Box,{paddingLeft:6,paddingRight:r?6:0,...r&&{style:{overflowX:"auto"}}},e.createElement("table",null,r&&e.createElement("thead",null,e.createElement("tr",null,e.createElement("th",null,e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600"},s({id:"global.name",defaultMessage:"Name"}))),e.createElement("th",{colSpan:"2"},e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600"},s({id:"global.type",defaultMessage:"Type"}))))),e.createElement("tbody",null,T.map(M=>{const{type:Z}=M,L=a;return e.createElement(e.Fragment,{key:M.name},e.createElement(L,{...M,isNestedInDZComponent:u,targetUid:g,editTarget:l,firstLoopComponentUid:i,isFromDynamicZone:p,secondLoopComponentUid:E}),Z==="component"&&e.createElement(te,{...M,customRowComponent:a,targetUid:g,isNestedInDZComponent:p,editTarget:l,firstLoopComponentUid:i}),Z==="dynamiczone"&&e.createElement($e,{...M,customRowComponent:a,addComponent:t,targetUid:g}))})))),r&&f&&e.createElement(n.TFooter,{icon:e.createElement(b.Plus,null),onClick:x},s({id:(0,y.Z)(`form.button.add.field.to.${B.contentType?B.contentType.schema.kind:l||"collectionType"}`),defaultMessage:"Add another field"})),v&&f&&e.createElement(Re,{icon:e.createElement(b.Plus,null),onClick:x,color:p?"primary":"neutral"},s({id:(0,y.Z)("form.button.add.field.to.component"),defaultMessage:"Add another field"}))):e.createElement(n.Table,{colCount:2,rowCount:2},e.createElement(n.Thead,null,e.createElement(n.Tr,null,e.createElement(n.Th,null,e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600"},s({id:"global.name",defaultMessage:"Name"}))),e.createElement(n.Th,null,e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600"},s({id:"global.type",defaultMessage:"Type"}))))),e.createElement(c.EmptyBodyTable,{colSpan:2,content:{id:(0,y.Z)("table.content.create-first-content-type"),defaultMessage:"Create your first Collection-Type"}}))}z.defaultProps={addComponentToDZ(){},customRowComponent:null,firstLoopComponentUid:null,isFromDynamicZone:!1,isNestedInDZComponent:!1,isMain:!1,isSub:!1,items:[],secondLoopComponentUid:null,targetUid:null},z.propTypes={addComponentToDZ:o().func,customRowComponent:o().func,editTarget:o().string.isRequired,firstLoopComponentUid:o().string,isFromDynamicZone:o().bool,isNestedInDZComponent:o().bool,isMain:o().bool,items:o().instanceOf(Array),secondLoopComponentUid:o().string,targetUid:o().string,isSub:o().bool};var oe=z;const Be=(0,h.default)(n.Box)`
170
170
  position: absolute;
171
171
  left: -1.125rem;
172
172
  top: 0px;
@@ -186,6 +186,6 @@
186
186
  * {
187
187
  fill: ${({theme:t,color:a})=>t.colors[a]};
188
188
  }
189
- `,ae=t=>e.createElement(Be,null,e.createElement(Ze,{width:"20",height:"23",viewBox:"0 0 20 23",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},e.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.02477 14.7513C8.65865 17.0594 11.6046 18.6059 17.5596 18.8856C18.6836 18.9384 19.5976 19.8435 19.5976 20.9688V20.9688C19.5976 22.0941 18.6841 23.0125 17.5599 22.9643C10.9409 22.6805 6.454 20.9387 3.75496 17.1258C0.937988 13.1464 0.486328 7.39309 0.486328 0.593262H4.50974C4.50974 7.54693 5.06394 11.9813 7.02477 14.7513Z"})));ae.propTypes={color:o().string.isRequired};var De=ae;const j=({content:t})=>Y()(t);j.defaultProps={content:null},j.propTypes={content:o().string};var Le=j,Ie=(0,h.default)(n.Box)`
189
+ `,ae=t=>e.createElement(Be,null,e.createElement(Ze,{width:"20",height:"23",viewBox:"0 0 20 23",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},e.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.02477 14.7513C8.65865 17.0594 11.6046 18.6059 17.5596 18.8856C18.6836 18.9384 19.5976 19.8435 19.5976 20.9688V20.9688C19.5976 22.0941 18.6841 23.0125 17.5599 22.9643C10.9409 22.6805 6.454 20.9387 3.75496 17.1258C0.937988 13.1464 0.486328 7.39309 0.486328 0.593262H4.50974C4.50974 7.54693 5.06394 11.9813 7.02477 14.7513Z"})));ae.propTypes={color:o().string.isRequired};var De=ae;const j=({content:t})=>Y()(t);j.defaultProps={content:null},j.propTypes={content:o().string};var Fe=j,Le=(0,h.default)(n.Box)`
190
190
  position: relative;
191
- `,Fe=d(25747);const H=({type:t,customField:a,repeatable:l})=>{const{formatMessage:i}=(0,D.useIntl)();let p=t;return["integer","biginteger","float","decimal"].includes(t)?p="number":["string"].includes(t)&&(p="text"),a?e.createElement(n.Typography,null,i({id:(0,y.Z)("attribute.customField"),defaultMessage:"Custom field"})):e.createElement(n.Typography,null,i({id:(0,y.Z)(`attribute.${p}`),defaultMessage:t}),"\xA0",l&&i({id:(0,y.Z)("component.repeatable"),defaultMessage:"(repeatable)"}))};H.defaultProps={customField:null,repeatable:!1},H.propTypes={type:o().string.isRequired,customField:o().string,repeatable:o().bool};var Ae=H;function K({configurable:t,customField:a,editTarget:l,firstLoopComponentUid:i,isFromDynamicZone:p,name:r,onClick:u,relation:v,repeatable:T,secondLoopComponentUid:E,target:g,targetUid:s,type:m}){const{contentTypes:f,isInDevelopmentMode:B,removeAttribute:k}=(0,L.Z)(),{formatMessage:w}=(0,D.useIntl)(),x=m==="relation"&&v.includes("morph"),M=["integer","biginteger","float","decimal"].includes(m)?"number":m,Z=C()(f,[g],{}),I=C()(Z,["schema","displayName"],""),F=C()(Z,"plugin"),G=g?"relation":M,A=()=>{x||t!==!1&&u(l,E||i||s,r,m,a)};let R;return E&&i?R=2:i?R=1:R=0,e.createElement(Ie,{as:"tr",...(0,c.onRowClick)({fn:A,condition:B&&t&&!x})},e.createElement("td",{style:{position:"relative"}},R!==0&&e.createElement(De,{color:p?"primary200":"neutral150"}),e.createElement(n.Stack,{paddingLeft:2,spacing:4,horizontal:!0},e.createElement(Fe.Z,{type:G,customField:a}),e.createElement(n.Typography,{fontWeight:"bold"},r))),e.createElement("td",null,g?e.createElement(n.Typography,null,w({id:(0,y.Z)(`modelPage.attribute.${x?"relation-polymorphic":"relationWith"}`),defaultMessage:"Relation with"}),"\xA0",e.createElement("span",{style:{fontStyle:"italic"}},e.createElement(Le,{content:I}),"\xA0",F&&`(${w({id:(0,y.Z)("from"),defaultMessage:"from"})}: ${F})`)):e.createElement(Ae,{type:m,customField:a,repeatable:T})),e.createElement("td",null,B?e.createElement(n.Flex,{justifyContent:"flex-end",...c.stopPropagation},t?e.createElement(n.Stack,{horizontal:!0,spacing:1},!x&&e.createElement(n.IconButton,{onClick:A,label:`${w({id:"app.utils.edit",defaultMessage:"Edit"})} ${r}`,noBorder:!0,icon:e.createElement(b.Pencil,null)}),e.createElement(n.IconButton,{onClick:S=>{S.stopPropagation(),k(l,r,E||i||"")},label:`${w({id:"global.delete",defaultMessage:"Delete"})} ${r}`,noBorder:!0,icon:e.createElement(b.Trash,null)})):e.createElement(b.Lock,null)):e.createElement(n.Box,{height:(0,c.pxToRem)(32)})))}K.defaultProps={configurable:!0,customField:null,firstLoopComponentUid:null,isFromDynamicZone:!1,onClick(){},relation:"",repeatable:!1,secondLoopComponentUid:null,target:null,targetUid:null,type:null},K.propTypes={configurable:o().bool,customField:o().string,editTarget:o().string.isRequired,firstLoopComponentUid:o().string,isFromDynamicZone:o().bool,name:o().string.isRequired,onClick:o().func,relation:o().string,repeatable:o().bool,secondLoopComponentUid:o().string,target:o().string,targetUid:o().string,type:o().string};var Se=(0,e.memo)(K),Pe=t=>{let a;switch(t){case"date":case"datetime":case"time":case"timestamp":a="date";break;case"integer":case"biginteger":case"decimal":case"float":a="number";break;case"string":case"text":a="text";break;case"":a="relation";break;default:a=t}return a};const Ne={collectionTypesConfigurations:[{action:"plugin::content-manager.collection-types.configure-view",subject:null}],componentsConfigurations:[{action:"plugin::content-manager.components.configure-layout",subject:null}],singleTypesConfigurations:[{action:"plugin::content-manager.single-types.configure-view",subject:null}]},X=({disabled:t,isTemporary:a,isInContentTypeView:l,contentTypeKind:i,targetUid:p})=>{const{formatMessage:r}=(0,D.useIntl)(),{push:u}=(0,N.useHistory)(),{collectionTypesConfigurations:v,componentsConfigurations:T,singleTypesConfigurations:E}=Ne,g=r({id:"content-type-builder.form.button.configure-view"});let s=v;const m=()=>(a||u(l?`/content-manager/collectionType/${p}/configurations/edit`:`/content-manager/components/${p}/configurations/edit`),!1);return l&&i==="singleType"&&(s=E),l||(s=T),e.createElement(c.CheckPermissions,{permissions:s},e.createElement(n.Button,{startIcon:e.createElement(b.Layer,null),variant:"tertiary",onClick:m,disabled:a||t},g))};X.defaultProps={contentTypeKind:"collectionType",isInContentTypeView:!0,isTemporary:!1,targetUid:""},X.propTypes={disabled:o().bool.isRequired,contentTypeKind:o().string,isInContentTypeView:o().bool,isTemporary:o().bool,targetUid:o().string};var Ue=(0,e.memo)(X),ze=()=>{const{initialData:t,modifiedData:a,isInDevelopmentMode:l,isInContentTypeView:i,submitData:p}=(0,L.Z)(),{formatMessage:r}=(0,D.useIntl)(),{trackUsage:u}=(0,c.useTracking)(),v=(0,N.useRouteMatch)("/plugins/content-type-builder/:kind/:currentUID"),{onOpenModalAddComponentsToDZ:T,onOpenModalAddField:E,onOpenModalEditField:g,onOpenModalEditSchema:s,onOpenModalEditCustomField:m}=(0,q.Z)(),f=i?"contentType":"component",B=[f,"schema","attributes"],k=C()(a,[f,"uid"]),w=C()(a,[f,"isTemporary"],!1),x=C()(a,[f,"schema","kind"],null),M=C()(a,B,[]),Z=me()(t,[f,"plugin"]),I=!Q()(a,t),F=i?"contentType":"component",G=$=>{T({dynamicZoneTarget:$,targetUid:k})},A=async($,le,re,ie,se)=>{const ce=Pe(ie);se?m({forTarget:$,targetUid:le,attributeName:re,attributeType:ce,customFieldUid:se}):g({forTarget:$,targetUid:le,attributeName:re,attributeType:ce,step:ie==="component"?"2":null})};let R=C()(a,[f,"schema","displayName"],"");const S=C()(a,[f,"schema","kind"],""),P=v?.params.currentUID==="create-content-type";!R&&P&&(R=r({id:(0,y.Z)("button.model.create"),defaultMessage:"Create new collection type"}));const We=()=>{const $=S||f;$==="collectionType"&&u("willEditNameOfContentType"),$==="singleType"&&u("willEditNameOfSingleType"),s({modalType:f,forTarget:f,targetUid:k,kind:$})};return e.createElement(e.Fragment,null,e.createElement(N.Prompt,{message:r({id:(0,y.Z)("prompt.unsaved")}),when:I}),e.createElement(n.HeaderLayout,{id:"title",primaryAction:l&&e.createElement(n.Stack,{horizontal:!0,spacing:2},!P&&e.createElement(n.Button,{startIcon:e.createElement(b.Plus,null),variant:"secondary",onClick:()=>{E({forTarget:F,targetUid:k})}},r({id:(0,y.Z)("button.attributes.add.another")})),e.createElement(n.Button,{startIcon:e.createElement(b.Check,null),onClick:()=>p(),type:"submit",disabled:Q()(a,t)},r({id:"global.save",defaultMessage:"Save"}))),secondaryAction:l&&!Z&&!P&&e.createElement(n.Button,{startIcon:e.createElement(b.Pencil,null),variant:"tertiary",onClick:We},r({id:"app.utils.edit",defaultMessage:"Edit"})),title:Y()(R),subtitle:r({id:(0,y.Z)("listView.headerLayout.description"),defaultMessage:"Build the data architecture of your content"}),navigationAction:e.createElement(c.Link,{startIcon:e.createElement(b.ArrowLeft,null),to:"/plugins/content-type-builder/"},r({id:"global.back",defaultMessage:"Back"}))}),e.createElement(n.ContentLayout,null,e.createElement(n.Stack,{spacing:4},e.createElement(n.Flex,{justifyContent:"flex-end"},e.createElement(n.Stack,{horizontal:!0,spacing:2},e.createElement(Ue,{key:"link-to-cm-settings-view",targetUid:k,isTemporary:w,isInContentTypeView:i,contentTypeKind:x,disabled:P}))),e.createElement(n.Box,{background:"neutral0",shadow:"filterShadow",hasRadius:!0},e.createElement(oe,{items:M,customRowComponent:$=>e.createElement(Se,{...$,onClick:A}),addComponentToDZ:G,targetUid:k,editTarget:F,isMain:!0})))))}}}]);
191
+ `,Ie=d(25747);const H=({type:t,customField:a,repeatable:l})=>{const{formatMessage:i}=(0,D.useIntl)();let p=t;return["integer","biginteger","float","decimal"].includes(t)?p="number":["string"].includes(t)&&(p="text"),a?e.createElement(n.Typography,null,i({id:(0,y.Z)("attribute.customField"),defaultMessage:"Custom field"})):e.createElement(n.Typography,null,i({id:(0,y.Z)(`attribute.${p}`),defaultMessage:t}),"\xA0",l&&i({id:(0,y.Z)("component.repeatable"),defaultMessage:"(repeatable)"}))};H.defaultProps={customField:null,repeatable:!1},H.propTypes={type:o().string.isRequired,customField:o().string,repeatable:o().bool};var Ae=H;function K({configurable:t,customField:a,editTarget:l,firstLoopComponentUid:i,isFromDynamicZone:p,name:r,onClick:u,relation:v,repeatable:T,secondLoopComponentUid:E,target:g,targetUid:s,type:m}){const{contentTypes:f,isInDevelopmentMode:B,removeAttribute:k}=(0,F.Z)(),{formatMessage:w}=(0,D.useIntl)(),x=m==="relation"&&v.includes("morph"),M=["integer","biginteger","float","decimal"].includes(m)?"number":m,Z=C()(f,[g],{}),L=C()(Z,["schema","displayName"],""),I=C()(Z,"plugin"),G=g?"relation":M,A=()=>{x||t!==!1&&u(l,E||i||s,r,m,a)};let R;return E&&i?R=2:i?R=1:R=0,e.createElement(Le,{as:"tr",...(0,c.onRowClick)({fn:A,condition:B&&t&&!x})},e.createElement("td",{style:{position:"relative"}},R!==0&&e.createElement(De,{color:p?"primary200":"neutral150"}),e.createElement(n.Flex,{paddingLeft:2,gap:4},e.createElement(Ie.Z,{type:G,customField:a}),e.createElement(n.Typography,{fontWeight:"bold"},r))),e.createElement("td",null,g?e.createElement(n.Typography,null,w({id:(0,y.Z)(`modelPage.attribute.${x?"relation-polymorphic":"relationWith"}`),defaultMessage:"Relation with"}),"\xA0",e.createElement("span",{style:{fontStyle:"italic"}},e.createElement(Fe,{content:L}),"\xA0",I&&`(${w({id:(0,y.Z)("from"),defaultMessage:"from"})}: ${I})`)):e.createElement(Ae,{type:m,customField:a,repeatable:T})),e.createElement("td",null,B?e.createElement(n.Flex,{justifyContent:"flex-end",...c.stopPropagation},t?e.createElement(n.Flex,{gap:1},!x&&e.createElement(n.IconButton,{onClick:A,label:`${w({id:"app.utils.edit",defaultMessage:"Edit"})} ${r}`,noBorder:!0,icon:e.createElement(b.Pencil,null)}),e.createElement(n.IconButton,{onClick:P=>{P.stopPropagation(),k(l,r,E||i||"")},label:`${w({id:"global.delete",defaultMessage:"Delete"})} ${r}`,noBorder:!0,icon:e.createElement(b.Trash,null)})):e.createElement(b.Lock,null)):e.createElement(n.Box,{height:(0,c.pxToRem)(32)})))}K.defaultProps={configurable:!0,customField:null,firstLoopComponentUid:null,isFromDynamicZone:!1,onClick(){},relation:"",repeatable:!1,secondLoopComponentUid:null,target:null,targetUid:null,type:null},K.propTypes={configurable:o().bool,customField:o().string,editTarget:o().string.isRequired,firstLoopComponentUid:o().string,isFromDynamicZone:o().bool,name:o().string.isRequired,onClick:o().func,relation:o().string,repeatable:o().bool,secondLoopComponentUid:o().string,target:o().string,targetUid:o().string,type:o().string};var Pe=(0,e.memo)(K),Ne=t=>{let a;switch(t){case"date":case"datetime":case"time":case"timestamp":a="date";break;case"integer":case"biginteger":case"decimal":case"float":a="number";break;case"string":case"text":a="text";break;case"":a="relation";break;default:a=t}return a};const Se={collectionTypesConfigurations:[{action:"plugin::content-manager.collection-types.configure-view",subject:null}],componentsConfigurations:[{action:"plugin::content-manager.components.configure-layout",subject:null}],singleTypesConfigurations:[{action:"plugin::content-manager.single-types.configure-view",subject:null}]},X=({disabled:t,isTemporary:a,isInContentTypeView:l,contentTypeKind:i,targetUid:p})=>{const{formatMessage:r}=(0,D.useIntl)(),{push:u}=(0,S.useHistory)(),{collectionTypesConfigurations:v,componentsConfigurations:T,singleTypesConfigurations:E}=Se,g=r({id:"content-type-builder.form.button.configure-view"});let s=v;const m=()=>(a||u(l?`/content-manager/collectionType/${p}/configurations/edit`:`/content-manager/components/${p}/configurations/edit`),!1);return l&&i==="singleType"&&(s=E),l||(s=T),e.createElement(c.CheckPermissions,{permissions:s},e.createElement(n.Button,{startIcon:e.createElement(b.Layer,null),variant:"tertiary",onClick:m,disabled:a||t},g))};X.defaultProps={contentTypeKind:"collectionType",isInContentTypeView:!0,isTemporary:!1,targetUid:""},X.propTypes={disabled:o().bool.isRequired,contentTypeKind:o().string,isInContentTypeView:o().bool,isTemporary:o().bool,targetUid:o().string};var Ue=(0,e.memo)(X),We=()=>{const{initialData:t,modifiedData:a,isInDevelopmentMode:l,isInContentTypeView:i,submitData:p}=(0,F.Z)(),{formatMessage:r}=(0,D.useIntl)(),{trackUsage:u}=(0,c.useTracking)(),v=(0,S.useRouteMatch)("/plugins/content-type-builder/:kind/:currentUID"),{onOpenModalAddComponentsToDZ:T,onOpenModalAddField:E,onOpenModalEditField:g,onOpenModalEditSchema:s,onOpenModalEditCustomField:m}=(0,q.Z)(),f=i?"contentType":"component",B=[f,"schema","attributes"],k=C()(a,[f,"uid"]),w=C()(a,[f,"isTemporary"],!1),x=C()(a,[f,"schema","kind"],null),M=C()(a,B,[]),Z=me()(t,[f,"plugin"]),L=!Q()(a,t),I=i?"contentType":"component",G=$=>{T({dynamicZoneTarget:$,targetUid:k})},A=async($,le,re,ie,se)=>{const ce=Ne(ie);se?m({forTarget:$,targetUid:le,attributeName:re,attributeType:ce,customFieldUid:se}):g({forTarget:$,targetUid:le,attributeName:re,attributeType:ce,step:ie==="component"?"2":null})};let R=C()(a,[f,"schema","displayName"],"");const P=C()(a,[f,"schema","kind"],""),N=v?.params.currentUID==="create-content-type";!R&&N&&(R=r({id:(0,y.Z)("button.model.create"),defaultMessage:"Create new collection type"}));const Ve=()=>{const $=P||f;$==="collectionType"&&u("willEditNameOfContentType"),$==="singleType"&&u("willEditNameOfSingleType"),s({modalType:f,forTarget:f,targetUid:k,kind:$})};return e.createElement(e.Fragment,null,e.createElement(S.Prompt,{message:r({id:(0,y.Z)("prompt.unsaved")}),when:L}),e.createElement(n.HeaderLayout,{id:"title",primaryAction:l&&e.createElement(n.Flex,{gap:2},!N&&e.createElement(n.Button,{startIcon:e.createElement(b.Plus,null),variant:"secondary",onClick:()=>{E({forTarget:I,targetUid:k})}},r({id:(0,y.Z)("button.attributes.add.another")})),e.createElement(n.Button,{startIcon:e.createElement(b.Check,null),onClick:()=>p(),type:"submit",disabled:Q()(a,t)},r({id:"global.save",defaultMessage:"Save"}))),secondaryAction:l&&!Z&&!N&&e.createElement(n.Button,{startIcon:e.createElement(b.Pencil,null),variant:"tertiary",onClick:Ve},r({id:"app.utils.edit",defaultMessage:"Edit"})),title:Y()(R),subtitle:r({id:(0,y.Z)("listView.headerLayout.description"),defaultMessage:"Build the data architecture of your content"}),navigationAction:e.createElement(c.Link,{startIcon:e.createElement(b.ArrowLeft,null),to:"/plugins/content-type-builder/"},r({id:"global.back",defaultMessage:"Back"}))}),e.createElement(n.ContentLayout,null,e.createElement(n.Flex,{direction:"column",alignItems:"stretch",gap:4},e.createElement(n.Flex,{justifyContent:"flex-end"},e.createElement(n.Flex,{gap:2},e.createElement(Ue,{key:"link-to-cm-settings-view",targetUid:k,isTemporary:w,isInContentTypeView:i,contentTypeKind:x,disabled:N}))),e.createElement(n.Box,{background:"neutral0",shadow:"filterShadow",hasRadius:!0},e.createElement(oe,{items:M,customRowComponent:$=>e.createElement(Pe,{...$,onClick:A}),addComponentToDZ:G,targetUid:k,editTarget:I,isMain:!0})))))}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[46],{72736:function(t){t.exports=JSON.parse('{"attribute.boolean":"\u5E03\u5C14\u7C7B\u578B","attribute.boolean.description":"Yes \u6216 no, 1 \u6216 0, true \u6216 false","attribute.component":"\u7EC4\u4EF6","attribute.component.description":"\u60A8\u53EF\u4EE5\u91CD\u590D\u6216\u91CD\u590D\u4F7F\u7528\u7684\u5B57\u6BB5\u7EC4","attribute.date":"\u65E5\u671F\u9009\u62E9\u5668","attribute.date.description":"\u5E26\u6709\u5C0F\u65F6\uFF0C\u5206\u949F\u548C\u79D2\u7684\u65E5\u671F\u9009\u62E9\u5668","attribute.datetime":"\u65E5\u671F\u65F6\u95F4\u9009\u62E9\u5668","attribute.dynamiczone":"\u52A8\u6001\u533A\u57DF","attribute.dynamiczone.description":"\u7F16\u8F91\u5185\u5BB9\u65F6\u52A8\u6001\u9009\u62E9\u7EC4\u4EF6","attribute.email":"\u7535\u5B50\u90AE\u4EF6","attribute.email.description":"\u5E26\u6709\u683C\u5F0F\u9A8C\u8BC1\u7684\u7535\u5B50\u90AE\u4EF6\u5B57\u6BB5","attribute.enumeration":"\u5217\u4E3E","attribute.enumeration.description":"\u503C\u7684\u5217\u8868\uFF0C\u7136\u540E\u53EF\u4EE5\u4ECE\u4E2D\u9009\u62E9\u4E00\u4E2A","attribute.json":"JSON","attribute.json.description":"JSON \u683C\u5F0F\u7684\u6570\u636E","attribute.media":"\u5A92\u4F53\u6587\u4EF6","attribute.media.description":"\u56FE\u7247\uFF0C\u89C6\u9891\u7B49\u6587\u4EF6","attribute.null":" ","attribute.number":"\u6570\u5B57\u7C7B\u578B","attribute.number.description":"\u6570\u5B57\u7C7B\u578B (integer, float, decimal)","attribute.password":"\u5BC6\u7801\u8F93\u5165\u6846","attribute.password.description":"\u5BC6\u7801\u5B57\u6BB5\uFF0C\u4F1A\u9690\u85CF\u5B57\u7B26","attribute.relation":"\u5F15\u7528","attribute.relation.description":"\u5F15\u7528\u4E00\u4E2A Content Type","attribute.richtext":"\u5BCC\u6587\u672C\u7F16\u8F91\u5668","attribute.richtext.description":"\u5177\u6709\u683C\u5F0F\u9009\u9879\u7684\u5BCC\u6587\u672C\u7F16\u8F91\u5668","attribute.text":"\u6587\u672C","attribute.text.description":"\u8F83\u77ED\u6216\u8F83\u957F\u7684\u6587\u5B57\uFF0C\u4F8B\u5982\u6807\u9898\u6216\u8BF4\u660E","attribute.time":"\u65F6\u95F4","attribute.uid":"UID","attribute.uid.description":"\u552F\u4E00\u6807\u8BC6\u7B26","button.attributes.add.another":"\u6DFB\u52A0\u4E00\u4E2A\u65B0\u5B57\u6BB5","button.component.add":"\u6DFB\u52A0\u7EC4\u4EF6","button.component.create":"\u521B\u5EFA\u65B0\u7EC4\u4EF6","button.model.create":"\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684 Content Type","component.repeatable":"(\u53EF\u91CD\u590D\u7684)","components.componentSelect.no-component-available":"\u60A8\u5DF2\u7ECF\u6DFB\u52A0\u4E86\u6240\u6709\u7EC4\u4EF6","components.componentSelect.no-component-available.with-search":"\u6CA1\u6709\u4E0E\u60A8\u7684\u641C\u7D22\u76F8\u5339\u914D\u7684\u7EC4\u4EF6","components.componentSelect.value-component":"{number} \u4E2A\u7EC4\u4EF6\u88AB\u9009\u62E9 (\u8F93\u5165\u4EE5\u641C\u7D22\u7EC4\u4EF6)","components.componentSelect.value-components":"{number} \u4E2A\u7EC4\u4EF6\u88AB\u9009\u62E9","configurations":"\u914D\u7F6E","contentType.collectionName.description":"\u5F53 Content Type \u7684\u540D\u79F0\u548C\u8868\u540D\u79F0\u4E0D\u540C\u65F6\u4F1A\u5F88\u6709\u7528","contentType.collectionName.label":"\u96C6\u5408\u540D\u79F0","contentType.displayName.label":"\u663E\u793A\u540D\u79F0","contentType.apiId-plural.description":"API ID\uFF08\u590D\u6570\u5F62\u5F0F\uFF09","contentType.apiId-plural.label":"API ID\uFF08\u590D\u6570\u5F62\u5F0F\uFF09","contentType.apiId-singular.description":"UID \u7528\u4E8E\u751F\u6210 API \u8DEF\u7531\u548C\u6570\u636E\u5E93\u8868/\u96C6\u5408\u3002","contentType.apiId-singular.label":"API ID\uFF08\u5355\u6570\u5F62\u5F0F\uFF09","contentType.draftAndPublish.description":"\u5141\u8BB8\u7F16\u5199\u6761\u76EE\u7684\u8349\u7A3F\u7248\u672C\uFF0C\u5728\u53D1\u5E03\u4E4B\u524D\u8FDB\u884C\u4FEE\u6539","contentType.draftAndPublish.label":"\u8349\u7A3F & \u53D1\u5E03","contentType.kind.change.warning":"\u60A8\u521A\u521A\u66F4\u6539\u4E86\u5185\u5BB9\u7C7B\u578B\u7684\u79CD\u7C7B\uFF1AAPI \u5C06\u88AB\u91CD\u7F6E\uFF08\u8DEF\u7531\u3001\u63A7\u5236\u5668\u548C\u670D\u52A1\u5C06\u88AB\u8986\u76D6\uFF09\u3002","error.contentTypeName.reserved-name":"\u6B64\u540D\u79F0\u4E0D\u80FD\u5728\u9879\u76EE\u4E2D\u4F7F\u7528\uFF0C\u56E0\u4E3A\u5B83\u53EF\u80FD\u4F1A\u7834\u574F\u5176\u4ED6\u529F\u80FD","error.validation.minSupMax":"\u4E0D\u80FD\u66F4\u9AD8","form.attribute.component.option.add":"\u6DFB\u52A0\u4E00\u4E2A\u7EC4\u4EF6","form.attribute.component.option.create":"\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684\u7EC4\u4EF6","form.attribute.component.option.create.description":"\u7EC4\u4EF6\u5728\u7C7B\u578B\u548C\u7EC4\u4EF6\u4E4B\u95F4\u5171\u4EAB\uFF0C\u5B83\u5C06\u968F\u5904\u53EF\u7528\u3002","form.attribute.component.option.repeatable":"\u53EF\u91CD\u590D\u7EC4\u4EF6","form.attribute.component.option.repeatable.description":"\u6700\u9002\u5408\u7684\u6210\u5206\uFF0C\u5143\u6807\u8BB0\u7B49\u7684\u591A\u4E2A\u5B9E\u4F8B\uFF08\u6570\u7EC4\uFF09\u3002","form.attribute.component.option.reuse-existing":"\u4F7F\u7528\u4E00\u4E2A\u5DF2\u5B58\u5728\u7684\u7EC4\u4EF6","form.attribute.component.option.reuse-existing.description":"\u91CD\u7528\u5DF2\u7ECF\u521B\u5EFA\u7684\u7EC4\u4EF6\uFF0C\u4EE5\u4F7F\u60A8\u7684\u6570\u636E\u5728\u5185\u5BB9\u7C7B\u578B\u4E4B\u95F4\u4FDD\u6301\u4E00\u81F4\u3002","form.attribute.component.option.single":"\u5355\u4E00\u7EC4\u4EF6","form.attribute.component.option.single.description":"\u6700\u9002\u5408\u7684\u5BF9\u5B8C\u6574\u5730\u5740\uFF0C\u4E3B\u8981\u4FE1\u606F\u7B49\u5B57\u6BB5\u8FDB\u884C\u5206\u7EC4...","form.attribute.item.customColumnName":"\u81EA\u5B9A\u4E49\u5217\u540D\u79F0","form.attribute.item.customColumnName.description":"\u4FEE\u6539\u6570\u636E\u5E93\u5217\u540D\uFF0C\u4F7F\u5F97API\u8FD4\u56DE\u66F4\u5BB9\u6613\u7406\u89E3\u3002","form.attribute.item.defineRelation.fieldName":"\u5B57\u6BB5\u540D\u79F0","form.attribute.item.enumeration.graphql":"GraphQL \u7684\u540D\u79F0\u91CD\u5199","form.attribute.item.enumeration.graphql.description":"\u5141\u8BB8\u60A8\u8986\u76D6 GraphQL \u7684\u9ED8\u8BA4\u751F\u6210\u540D\u79F0","form.attribute.item.enumeration.placeholder":"\u4F8B\u5982:\\nmorning\\nnoon\\nevening","form.attribute.item.enumeration.rules":"\u503C\uFF08\u6BCF\u4E2A\u503C\u5360\u4E00\u884C\uFF09","form.attribute.item.maximum":"\u6700\u5927\u503C","form.attribute.item.maximumLength":"\u6700\u5927\u957F\u5EA6","form.attribute.item.minimum":"\u6700\u5C0F\u503C","form.attribute.item.minimumLength":"\u6700\u5C0F\u957F\u5EA6","form.attribute.item.number.type":"\u6570\u5B57\u683C\u5F0F","form.attribute.item.number.type.biginteger":"big integer (\u4F8B\u5982: 123456789)","form.attribute.item.number.type.decimal":"decimal (\u4F8B\u5982: 2.22)","form.attribute.item.number.type.float":"float (\u4F8B\u5982: 3.33333333)","form.attribute.item.number.type.integer":"integer (\u4F8B\u5982: 10)","form.attribute.item.privateField":"\u79C1\u6709\u5B57\u6BB5","form.attribute.item.privateField.description":"\u8BE5\u5B57\u6BB5\u4E0D\u4F1A\u663E\u793A\u5728 API \u8BF7\u6C42\u7684\u54CD\u5E94\u4E2D","form.attribute.item.requiredField":"\u5FC5\u987B\u7684","form.attribute.item.requiredField.description":"\u5982\u679C\u6B64\u5B57\u6BB5\u4E3A\u7A7A\uFF0C\u5219\u65E0\u6CD5\u521B\u5EFA\u5B57\u6BB5\u3002","form.attribute.item.uniqueField":"\u552F\u4E00\u7684","form.attribute.item.uniqueField.description":"\u5982\u679C\u5B58\u5728\u5177\u6709\u76F8\u540C\u5185\u5BB9\u7684\u73B0\u6709\u6761\u76EE\uFF0C\u5219\u65E0\u6CD5\u521B\u5EFA\u6761\u76EE\u3002","form.attribute.media.option.multiple":"\u591A\u79CD\u5A92\u4F53","form.attribute.media.option.multiple.description":"\u6700\u9002\u5408\u7684\u6ED1\u5757\uFF0C\u8F6C\u76D8\u6216\u591A\u4E2A\u6587\u4EF6\u4E0B\u8F7D","form.attribute.media.option.single":"\u5355\u4E00\u7684\u5A92\u4F53","form.attribute.media.option.single.description":"\u6700\u9002\u5408\u7684\u5934\u50CF\uFF0C\u4E2A\u4EBA\u8D44\u6599\u56FE\u7247\u6216\u5C01\u9762","form.attribute.settings.default":"\u9ED8\u8BA4\u503C","form.attribute.text.option.long-text":"\u8F83\u957F\u7684\u6587\u5B57","form.attribute.text.option.long-text.description":"\u6700\u9002\u5408\u7684\u63CF\u8FF0\uFF0C\u4F20\u8BB0\u3002\\u2028\u7CBE\u786E\u641C\u7D22\u5DF2\u7981\u7528\u3002","form.attribute.text.option.short-text":"\u8F83\u77ED\u7684\u6587\u5B57","form.attribute.text.option.short-text.description":"\u6700\u9002\u5408\u7684\u6807\u9898\uFF0C\u540D\u79F0\uFF0C\u94FE\u63A5\uFF08URL\uFF09\u3002\u5B83\u8FD8\u53EF\u4EE5\u5728\u5B57\u6BB5\u8FDB\u884C\u7CBE\u786E\u641C\u7D22\u3002","form.button.add-components-to-dynamiczone":"\u5C06\u7EC4\u4EF6\u6DFB\u52A0\u5230\u533A\u57DF","form.button.add-field":"\u6DFB\u52A0\u53E6\u4E00\u4E2A\u5B57\u6BB5","form.button.add-first-field-to-created-component":"\u6DFB\u52A0\u7B2C\u4E00\u4E2A\u5B57\u6BB5\u5230\u8FD9\u4E2A\u7EC4\u4EF6","form.button.add.field.to.component":"\u5411\u8BE5\u7EC4\u4EF6\u6DFB\u52A0\u53E6\u4E00\u4E2A\u5B57\u6BB5","form.button.cancel":"\u53D6\u6D88","form.button.configure-component":"\u914D\u7F6E\u7EC4\u4EF6","form.button.configure-view":"\u914D\u7F6E\u89C6\u56FE","form.button.select-component":"\u9009\u62E9\u4E00\u4E2A\u7EC4\u4EF6","from":"\u6765\u81EA","modalForm.attribute.form.base.name.description":"\u5C5E\u6027\u540D\u79F0\u4E0D\u5141\u8BB8\u4F7F\u7528\u7A7A\u683C","modalForm.attributes.select-component":"\u9009\u62E9\u4E00\u4E2A\u7EC4\u4EF6","modalForm.attributes.select-components":"\u9009\u62E9\u7EC4\u4EF6","modalForm.component.header-create":"\u521B\u5EFA\u4E00\u4E2A\u7EC4\u4EF6","modalForm.components.create-component.category.label":"\u9009\u62E9\u4E00\u4E2A\u7C7B\u522B\u6216\u8F93\u5165\u540D\u79F0\u4EE5\u521B\u5EFA\u4E00\u4E2A\u65B0\u7C7B\u522B","modalForm.components.icon.label":"\u56FE\u6807","modalForm.editCategory.base.name.description":"\u7C7B\u522B\u540D\u79F0\u4E0D\u5141\u8BB8\u6709\u7A7A\u683C","modalForm.header-edit":"\u7F16\u8F91 {name}","modalForm.header.categories":"\u7C7B\u522B","modalForm.sub-header.addComponentToDynamicZone":"\u5C06\u65B0\u7EC4\u4EF6\u6DFB\u52A0\u5230\u52A8\u6001\u533A\u57DF","modalForm.sub-header.attribute.create":"\u6DFB\u52A0\u65B0\u7684 {type} \u5B57\u6BB5","modalForm.sub-header.attribute.create.step":"\u6DFB\u52A0\u65B0\u7684\u7EC4\u4EF6 ({step}/2)","modalForm.sub-header.attribute.edit":"\u7F16\u8F91 {name}","modalForm.sub-header.chooseAttribute.collectionType":"\u4E3A\u60A8\u7684 Content Type \u9009\u62E9\u4E00\u4E2A\u5B57\u6BB5","modalForm.sub-header.chooseAttribute.component":"\u4E3A\u60A8\u7684\u7EC4\u4EF6\u9009\u62E9\u4E00\u4E2A\u5B57\u6BB5","modalForm.collectionType.header-create":"\u521B\u5EFA\u4E00\u4E2A\u96C6\u5408\u7C7B\u578B","modelPage.attribute.relationWith":"\u5173\u8054","notification.info.autoreaload-disable":"\u8981\u4F7F\u7528\u6B64\u63D2\u4EF6\uFF0C\u9700\u8981\u81EA\u52A8\u91CD\u8F7D\u529F\u80FD\u3002\u8BF7\u4F7F\u7528 `strapi develop` \u542F\u52A8\u670D\u52A1","notification.info.creating.notSaved":"\u5728\u521B\u5EFA\u65B0\u7684\u5185\u5BB9\u7C7B\u578B\u6216\u7EC4\u4EF6\u4E4B\u524D\uFF0C\u8BF7\u4FDD\u5B58\u60A8\u7684\u5DE5\u4F5C","plugin.description.long":"\u7ED9\u4F60\u7684 API \u7684\u6570\u636E\u7ED3\u6784\u5EFA\u6A21. \u5FEB\u901F\u7684\u521B\u9020\u65B0\u7684\u5B57\u6BB5(fields)\u548C\u5173\u7CFB(relations)\u3002\u5C06\u4F1A\u81EA\u52A8\u5728\u9879\u76EE\u4E2D\u521B\u5EFA\u548C\u66F4\u65B0\u6587\u4EF6\u3002","plugin.description.short":"\u7ED9\u4F60\u7684 API \u7684\u6570\u636E\u7ED3\u6784\u5EFA\u6A21","popUpForm.navContainer.advanced":"\u9AD8\u7EA7\u8BBE\u7F6E","popUpForm.navContainer.base":"\u57FA\u7840\u8BBE\u7F6E","popUpWarning.bodyMessage.cancel-modifications":"\u60A8\u786E\u5B9A\u8981\u53D6\u6D88\u4FEE\u6539\u5417\uFF1F","popUpWarning.bodyMessage.cancel-modifications.with-components":"\u60A8\u786E\u5B9A\u8981\u53D6\u6D88\u4FEE\u6539\u5417\uFF1F\u67D0\u4E9B\u7EC4\u4EF6\u5DF2\u521B\u5EFA\u6216\u5DF2\u4FEE\u6539\u4E86...","popUpWarning.bodyMessage.category.delete":"\u60A8\u786E\u5B9A\u8981\u5220\u9664\u6B64\u7C7B\u522B\u5417\uFF1F\u6240\u6709\u7EC4\u4EF6\u4E5F\u5C06\u88AB\u5220\u9664\u3002","popUpWarning.bodyMessage.component.delete":"\u60A8\u786E\u5B9A\u8981\u5220\u9664\u6B64\u7EC4\u4EF6\u5417\uFF1F","popUpWarning.bodyMessage.contentType.delete":"\u60A8\u786E\u5B9A\u8981\u5220\u9664\u6B64 Content Type \u5417?","prompt.unsaved":"\u60A8\u786E\u5B9A\u8981\u79BB\u5F00\u5417\uFF1F\u60A8\u6240\u6709\u7684\u4FEE\u6539\u90FD\u5C06\u4E22\u5931\u3002","relation.attributeName.placeholder":"\u4F8B\u5982: author, category, tag","relation.manyToMany":"\u6709\u5E76\u5C5E\u4E8E\u8BB8\u591A","relation.manyToOne":"\u6709\u5F88\u591A","relation.manyWay":"\u6709\u5F88\u591A","relation.oneToMany":"\u5C5E\u4E8E\u5F88\u591A","relation.oneToOne":"\u6709\u4E00\u4E2A","relation.oneWay":"\u6709\u4E00\u4E2A"}')}}]);
@@ -0,0 +1,126 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[8880],{25747:function(Ae,ne,g){var a=g(32735),j=g(83292),ye=g(60216),$=g.n(ye),R=g(39161),l=g.n(R),P=g(57269),V=g.n(P),Ze=g(13478),n=g.n(Ze);const q={biginteger:P.Number,boolean:P.Boolean,collectionType:P.CollectionType,component:P.Component,contentType:P.CollectionType,date:P.Date,datetime:P.Date,decimal:P.Number,dynamiczone:P.DynamicZone,email:P.Email,enum:P.Enumeration,enumeration:P.Enumeration,file:P.Media,files:P.Media,float:P.Number,integer:P.Number,json:P.Json,JSON:P.Json,media:P.Media,number:P.Number,password:P.Password,relation:P.Relation,richtext:P.RichText,singleType:P.SingleType,string:P.Text,text:P.Text,time:P.Date,timestamp:P.Date,uid:P.Uid},be=(0,j.default)(R.Box)`
2
+ svg {
3
+ height: 100%;
4
+ width: 100%;
5
+ }
6
+ `,ke=({type:we,customField:Ce,...d})=>{const Me=(0,Ze.useCustomFields)();let We=q[we];if(Ce){const{icon:O}=Me.get(Ce);O&&(We=O)}return q[we]?a.createElement(be,{height:(0,Ze.pxToRem)(24),width:(0,Ze.pxToRem)(32),shrink:0,...d,"aria-hidden":!0},a.createElement(R.Box,{as:We})):null};ke.defaultProps={customField:null},ke.propTypes={type:$().string.isRequired,customField:$().string},ne.Z=ke},74753:function(Ae,ne,g){var a=g(32735);const j=(0,a.createContext)();ne.Z=j},51216:function(Ae,ne,g){var a=g(32735);const j=(0,a.createContext)();ne.Z=j},198:function(Ae,ne,g){var a=g(32735),j=g(74753);const ye=()=>(0,a.useContext)(j.Z);ne.Z=ye},32237:function(Ae,ne,g){var a=g(32735),j=g(51216);const ye=()=>(0,a.useContext)(j.Z);ne.Z=ye},97165:function(Ae,ne,g){g.r(ne),g.d(ne,{default:function(){return To}});var a=g(32735),j=g(5141),ye=g(99357),$=g(5636),R=g(13478),l=g(39161),P=g(3633),V=g(25158),Ze=g(60216),n=g.n(Ze),q=g(92891),be=g(4409),ke=g(13055),we=g(74753),Ce=g(32237),d=g(92318),Me=g(37087),We=g(33795),O=g.n(We),An=g(23973),Zn=g.n(An),Fn=g(3040),Sn=g.n(Fn),qn=g(59578),Pe=g.n(qn),Ee=g(198),Nn=g(23940),he=g.n(Nn);const Ln=[{label:"All",children:[{label:"images (JPEG, PNG, GIF, SVG, TIFF, ICO, DVU)",value:"images"},{label:"videos (MPEG, MP4, Quicktime, WMV, AVI, FLV)",value:"videos"},{label:"audios (MP3, WAV, OGG)",value:"audios"},{label:"files (CSV, ZIP, PDF, Excel, JSON, ...)",value:"files"}]}],He=({intlLabel:e,name:t,onChange:o,value:s})=>{const{formatMessage:r}=(0,$.useIntl)(),i=s===null||s.length===0?r({id:"global.none",defaultMessage:"None"}):[...s].sort().map(c=>he()(c)).join(", "),u=e.id?r({id:e.id,defaultMessage:e.defaultMessage}):t;return a.createElement(l.MultiSelectNested,{id:"select1",label:u,customizeContent:()=>i,onChange:c=>{c.length>0?o({target:{name:t,value:c,type:"allowed-types-select"}}):o({target:{name:t,value:null,type:"allowed-types-select"}})},options:Ln,value:s||[]})};He.defaultProps={value:null},He.propTypes={intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,name:n().string.isRequired,onChange:n().func.isRequired,value:n().oneOfType([n().object,n().array])};var In=He,Dt=e=>e.kind==="collectionType"&&(e.restrictRelationsTo===null||Array.isArray(e.restrictRelationsTo)&&e.restrictRelationsTo.length>0),ze=g(25747),Fe=g(83292),kt=(0,Fe.default)(l.Box)`
7
+ width: 100%;
8
+ height: 100%;
9
+ border: 1px solid ${({theme:e})=>e.colors.neutral200};
10
+ text-align: left;
11
+ &:hover {
12
+ background: ${({theme:e})=>e.colors.primary100};
13
+ border: 1px solid ${({theme:e})=>e.colors.primary200};
14
+ }
15
+ `;const Ke=({type:e})=>{const{formatMessage:t}=(0,$.useIntl)(),{onClickSelectField:o}=(0,Ce.Z)(),s=()=>{o({attributeType:e,step:e==="component"?"1":null})};return a.createElement(kt,{padding:4,as:"button",hasRadius:!0,type:"button",onClick:s},a.createElement(l.Flex,null,a.createElement(ze.Z,{type:e}),a.createElement(l.Box,{paddingLeft:4},a.createElement(l.Flex,null,a.createElement(l.Typography,{fontWeight:"bold"},t({id:(0,d.Z)(`attribute.${e}`),defaultMessage:e}))),a.createElement(l.Flex,null,a.createElement(l.Typography,{variant:"pi",textColor:"neutral600"},t({id:(0,d.Z)(`attribute.${e}.description`),defaultMessage:"A type for modeling data"}))))))};Ke.defaultProps={type:"text"},Ke.propTypes={type:n().string};var On=Ke,Pt=e=>{const t=e%2===1;return{paddingLeft:t?2:0,paddingRight:t?0:2}};const Bt=({attributes:e})=>a.createElement(l.KeyboardNavigable,{tagName:"button"},a.createElement(l.Flex,{direction:"column",alignItems:"stretch",gap:8},e.map((t,o)=>a.createElement(l.Grid,{key:o,gap:0},t.map((s,r)=>{const{paddingLeft:i,paddingRight:u}=Pt(r);return a.createElement(l.GridItem,{key:s,col:6,style:{height:"100%"}},a.createElement(l.Box,{paddingLeft:i,paddingRight:u,paddingBottom:1,style:{height:"100%"}},a.createElement(On,{type:s})))})))));Bt.propTypes={attributes:n().array.isRequired};var Dn=Bt,kn=g(33348),Pn=g.n(kn),ae=g(57269);const Bn=(0,Fe.default)(l.Box)`
16
+ background: ${({theme:e})=>`linear-gradient(180deg, rgba(234, 234, 239, 0) 0%, ${e.colors.neutral150} 100%)`};
17
+ opacity: 0.33;
18
+ `,$n=()=>a.createElement(l.Flex,{wrap:"wrap",gap:4},[...Array(4)].map((e,t)=>a.createElement(Bn,{key:`empty-card-${t}`,height:"138px",width:"375px",hasRadius:!0})));var Un=()=>{const{formatMessage:e}=(0,$.useIntl)();return a.createElement(l.Box,{position:"relative"},a.createElement($n,null),a.createElement(l.Box,{position:"absolute",top:6,width:"100%"},a.createElement(l.Flex,{alignItems:"center",justifyContent:"center",direction:"column"},a.createElement(l.Icon,{as:ae.EmptyStateDocument,color:"",width:"160px",height:"88px"}),a.createElement(l.Box,{paddingTop:6,paddingBottom:4},a.createElement(l.Box,{textAlign:"center"},a.createElement(l.Typography,{variant:"delta",as:"p",textColor:"neutral600"},e({id:(0,d.Z)("modalForm.empty.heading"),defaultMessage:"Nothing in here yet."})),a.createElement(l.Box,{paddingTop:4},a.createElement(l.Typography,{variant:"delta",as:"p",textColor:"neutral600"},e({id:(0,d.Z)("modalForm.empty.sub-heading"),defaultMessage:"Find what you are looking for through a wide range of extensions."}))))),a.createElement(l.LinkButton,{to:`/marketplace?${Pn().stringify({categories:["Custom fields"]})}`,variant:"secondary",startIcon:a.createElement(ae.Plus,null)},e({id:(0,d.Z)("modalForm.empty.button"),defaultMessage:"Add custom fields"})))))};const $t=({customFieldUid:e,customField:t})=>{const{type:o,intlLabel:s,intlDescription:r}=t,{formatMessage:i}=(0,$.useIntl)(),{onClickSelectCustomField:u}=(0,Ce.Z)(),c=()=>{u({attributeType:o,customFieldUid:e})};return a.createElement(kt,{padding:4,as:"button",hasRadius:!0,type:"button",onClick:c},a.createElement(l.Flex,null,a.createElement(ze.Z,{type:o,customField:e}),a.createElement(l.Box,{paddingLeft:4},a.createElement(l.Flex,null,a.createElement(l.Typography,{fontWeight:"bold"},i(s))),a.createElement(l.Flex,null,a.createElement(l.Typography,{variant:"pi",textColor:"neutral600"},i(r))))))};$t.propTypes={customFieldUid:n().string.isRequired,customField:n().shape({type:n().string.isRequired,icon:n().func,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired}).isRequired,intlDescription:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired}).isRequired}).isRequired};var jn=$t,wn=()=>{const{formatMessage:e}=(0,$.useIntl)(),t=(0,R.useCustomFields)(),o=Object.entries(t.getAll());if(!o.length)return a.createElement(Un,null);const s=o.sort((r,i)=>r[1].name>i[1].name?1:-1);return a.createElement(l.KeyboardNavigable,{tagName:"button"},a.createElement(l.Flex,{direction:"column",alignItems:"stretch",gap:3},a.createElement(l.Grid,{gap:0},s.map(([r,i],u)=>{const{paddingLeft:c,paddingRight:m}=Pt(u);return a.createElement(l.GridItem,{key:r,col:6,style:{height:"100%"}},a.createElement(l.Box,{paddingLeft:c,paddingRight:m,paddingBottom:1,style:{height:"100%"}},a.createElement(jn,{key:r,customFieldUid:r,customField:i})))})),a.createElement(l.Link,{href:"https://docs.strapi.io/developer-docs/latest/development/custom-fields.html",isExternal:!0},e({id:(0,d.Z)("modalForm.tabs.custom.howToLink"),defaultMessage:"How to add custom fields"}))))};const Ut=({attributes:e,forTarget:t,kind:o})=>{const{formatMessage:s}=(0,$.useIntl)(),r=(0,d.Z)("modalForm.tabs.default"),i=(0,d.Z)("modalForm.tabs.custom"),u=t.includes("component")?"component":o,c=(0,d.Z)(`modalForm.sub-header.chooseAttribute.${u}`);return a.createElement(l.ModalBody,{padding:6},a.createElement(l.TabGroup,{label:s({id:(0,d.Z)("modalForm.tabs.label"),defaultMessage:"Default and Custom types tabs"}),id:"attribute-type-tabs",variant:"simple"},a.createElement(l.Flex,{justifyContent:"space-between"},a.createElement(l.Typography,{variant:"beta",as:"h2"},s({id:c,defaultMessage:"Select a field"})),a.createElement(l.Tabs,null,a.createElement(l.Tab,null,s({id:r,defaultMessage:"Default"})),a.createElement(l.Tab,null,s({id:i,defaultMessage:"Custom"})))),a.createElement(l.Box,{paddingBottom:6},a.createElement(l.Divider,null)),a.createElement(l.TabPanels,null,a.createElement(l.TabPanel,null,a.createElement(Dn,{attributes:e})),a.createElement(l.TabPanel,null,a.createElement(wn,null)))))};Ut.propTypes={attributes:n().array.isRequired,forTarget:n().string.isRequired,kind:n().string.isRequired};var Wn=Ut;const Ye=({description:e,disabled:t,intlLabel:o,isCreating:s,name:r,onChange:i,value:u})=>{const{formatMessage:c}=(0,$.useIntl)(),[m,f]=(0,a.useState)(!1),y=o.id?c({id:o.id,defaultMessage:o.defaultMessage},{...o.values}):r,p=e?c({id:e.id,defaultMessage:e.defaultMessage},{...e.values}):"",T=()=>f(N=>!N),v=()=>{i({target:{name:r,value:!1}}),T()},F=({target:{checked:N}})=>{if(!N&&!s){T();return}i({target:{name:r,value:N}})};return a.createElement(a.Fragment,null,a.createElement(l.Checkbox,{checked:u,disabled:t,hint:p,name:r,onChange:F},y),a.createElement(R.ConfirmDialog,{isOpen:m,onToggleDialog:T,onConfirm:v,bodyText:{id:(0,d.Z)("popUpWarning.draft-publish.message"),defaultMessage:"If you disable the draft & publish, your drafts will be deleted."},leftButtonText:{id:"components.popUpWarning.button.cancel",defaultMessage:"No, cancel"},rightButtonText:{id:(0,d.Z)("popUpWarning.draft-publish.button.confirm"),defaultMessage:"Yes, disable"}}))};Ye.defaultProps={description:null,disabled:!1,value:!1},Ye.propTypes={description:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}),disabled:n().bool,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,isCreating:n().bool.isRequired,name:n().string.isRequired,onChange:n().func.isRequired,value:n().bool};var zn=Ye;const Xe=({actionType:e,attributeName:t,attributeType:o,categoryName:s,contentTypeKind:r,dynamicZoneTarget:i,forTarget:u,modalType:c,targetUid:m,customFieldUid:f})=>{const{formatMessage:y}=(0,$.useIntl)(),{modifiedData:p}=(0,Ee.Z)();let T,v=[];const F=p?.[u]?.[m]||p?.[u]||null;let N=F?.schema.displayName;if(c==="contentType"&&(T=r),["component","editCategory"].includes(c)&&(T="component"),["component","contentType"].includes(c)){let C=(0,d.Z)(`modalForm.component.header-${e}`);return c==="contentType"&&(C=(0,d.Z)(`modalForm.${r}.header-create`)),e==="edit"&&(C=(0,d.Z)("modalForm.header-edit")),a.createElement(l.ModalHeader,null,a.createElement(l.Flex,null,a.createElement(l.Box,null,a.createElement(ze.Z,{type:T})),a.createElement(l.Box,{paddingLeft:3},a.createElement(l.Typography,{fontWeight:"bold",textColor:"neutral800",as:"h2",id:"title"},y({id:C},{name:N})))))}v=[{label:N,info:{category:F?.category||null,name:F?.schema.displayName}}],c==="chooseAttribute"&&(T=["component","components"].includes(u)?"component":F.schema.kind),c==="addComponentToDynamicZone"&&(T="dynamiczone",v.push({label:i})),(c==="attribute"||c==="customField")&&(T=o,v.push({label:t})),c==="editCategory"&&(v=[{label:y({id:(0,d.Z)("modalForm.header.categories"),defaultMessage:"Categories"})},{label:s}]);const M=v.map(({label:C})=>C).join(",");return a.createElement(l.ModalHeader,null,a.createElement(l.Flex,{gap:3},a.createElement(ze.Z,{type:T,customField:f}),a.createElement(l.Breadcrumbs,{label:M},v.map((C,A)=>{const W=he()(C.label);if(!W)return null;const z=`${C.label}.${A}`;if(C.info?.category){const _=`${W} (${he()(C.info.category)} - ${he()(C.info.name)})`;return a.createElement(l.Crumb,{key:z},_)}return a.createElement(l.Crumb,{key:z},W)}))))};Xe.defaultProps={actionType:null,attributeName:null,attributeType:null,categoryName:null,dynamicZoneTarget:null,forTarget:null,contentTypeKind:null,targetUid:null,customFieldUid:null},Xe.propTypes={actionType:n().string,attributeName:n().string,attributeType:n().string,categoryName:n().string,contentTypeKind:n().string,dynamicZoneTarget:n().string,forTarget:n().oneOf(["contentType","component","components"]),modalType:n().string.isRequired,targetUid:n().string,customFieldUid:n().string};var Vn=Xe;const Je=({categoryName:e,deleteCategory:t,deleteComponent:o,deleteContentType:s,isAttributeModal:r,isCustomFieldModal:i,isComponentAttribute:u,isComponentToDzModal:c,isContentTypeModal:m,isCreatingComponent:f,isCreatingComponentAttribute:y,isCreatingComponentInDz:p,isCreatingComponentWhileAddingAField:T,isCreatingContentType:v,isCreatingDz:F,isComponentModal:N,isDzAttribute:B,isEditingAttribute:M,isEditingCategory:C,isInFirstComponentStep:A,onSubmitAddComponentAttribute:W,onSubmitAddComponentToDz:z,onSubmitCreateContentType:_,onSubmitCreateComponent:L,onSubmitCreateDz:Y,onSubmitEditAttribute:se,onSubmitEditCategory:$e,onSubmitEditComponent:oe,onSubmitEditContentType:Ne,onSubmitEditCustomFieldAttribute:G,onSubmitEditDz:Le,onClickFinish:Q})=>{const{formatMessage:w}=(0,$.useIntl)();return c?p?a.createElement(l.Button,{variant:"secondary",type:"submit",onClick:E=>{E.preventDefault(),z(E,!0)},startIcon:a.createElement(ae.Plus,null)},w({id:(0,d.Z)("form.button.add-first-field-to-created-component"),defaultMessage:"Add first field to the component"})):a.createElement(l.Button,{variant:"default",type:"submit",onClick:E=>{E.preventDefault(),z(E,!1)}},w({id:"global.finish",defaultMessage:"Finish"})):r&&B&&!F?a.createElement(l.Button,{variant:"default",type:"submit",onClick:E=>{E.preventDefault(),Q(),Le(E,!1)}},w({id:"global.finish",defaultMessage:"Finish"})):r&&B&&F?a.createElement(a.Fragment,null,a.createElement(l.Button,{variant:"secondary",type:"submit",onClick:E=>{E.preventDefault(),Y(E,!0)},startIcon:a.createElement(ae.Plus,null)},w({id:(0,d.Z)("form.button.add-components-to-dynamiczone"),defaultMessage:"Add components to the zone"}))):r&&u?A?a.createElement(l.Button,{variant:"secondary",type:"submit",onClick:E=>{E.preventDefault(),W(E,!0)}},w(y?{id:(0,d.Z)("form.button.configure-component"),defaultMessage:"Configure the component"}:{id:(0,d.Z)("form.button.select-component"),defaultMessage:"Configure the component"})):a.createElement(a.Fragment,null,a.createElement(l.Button,{variant:"secondary",type:"submit",onClick:E=>{E.preventDefault(),W(E,!0)},startIcon:a.createElement(ae.Plus,null)},w(T?{id:(0,d.Z)("form.button.add-first-field-to-created-component"),defaultMessage:"Add first field to the component"}:{id:(0,d.Z)("form.button.add-field"),defaultMessage:"Add another field"})),a.createElement(l.Button,{variant:"default",type:"button",onClick:E=>{E.preventDefault(),Q(),W(E,!1)}},w({id:"global.finish",defaultMessage:"Finish"}))):r&&!u&&!B?a.createElement(a.Fragment,null,a.createElement(l.Button,{type:M?"button":"submit",variant:"secondary",onClick:E=>{E.preventDefault(),se(E,!0)},startIcon:a.createElement(ae.Plus,null)},w({id:(0,d.Z)("form.button.add-field"),defaultMessage:"Add another field"})),a.createElement(l.Button,{type:M?"submit":"button",variant:"default",onClick:E=>{E.preventDefault(),Q(),se(E,!1)}},w({id:"global.finish",defaultMessage:"Finish"}))):m?a.createElement(a.Fragment,null,!v&&a.createElement(a.Fragment,null,a.createElement(l.Button,{type:"button",variant:"danger",onClick:E=>{E.preventDefault(),s()}},w({id:"global.delete",defaultMessage:"Delete"})),a.createElement(l.Button,{type:"submit",variant:"default",onClick:E=>{E.preventDefault(),Ne(E,!1)}},w({id:"global.finish",defaultMessage:"Finish"}))),v&&a.createElement(l.Button,{type:"submit",variant:"secondary",onClick:E=>{E.preventDefault(),_(E,!0)}},w({id:"global.continue",defaultMessage:"Continue"}))):N?a.createElement(a.Fragment,null,!f&&a.createElement(a.Fragment,null,a.createElement(l.Button,{type:"button",variant:"danger",onClick:E=>{E.preventDefault(),o()}},w({id:"global.delete",defaultMessage:"Delete"})),a.createElement(l.Button,{type:"submit",variant:"default",onClick:E=>{E.preventDefault(),oe(E,!1)}},w({id:"global.finish",defaultMessage:"Finish"}))),f&&a.createElement(l.Button,{type:"submit",variant:"secondary",onClick:E=>{E.preventDefault(),L(E,!0)}},w({id:"global.continue",defaultMessage:"Continue"}))):C?a.createElement(a.Fragment,null,a.createElement(l.Button,{type:"button",variant:"danger",onClick:E=>{E.preventDefault(),t(e)}},w({id:"global.delete",defaultMessage:"Delete"})),a.createElement(l.Button,{type:"submit",variant:"default",onClick:E=>{E.preventDefault(),$e(E)}},w({id:"global.finish",defaultMessage:"finish"}))):i?a.createElement(a.Fragment,null,a.createElement(l.Button,{type:M?"button":"submit",variant:"secondary",onClick:E=>{E.preventDefault(),G(E,!0)},startIcon:a.createElement(ae.Plus,null)},w({id:(0,d.Z)("form.button.add-field"),defaultMessage:"Add another field"})),a.createElement(l.Button,{type:M?"submit":"button",variant:"default",onClick:E=>{E.preventDefault(),Q(),G(E,!1)}},w({id:"global.finish",defaultMessage:"Finish"}))):null};Je.defaultProps={categoryName:null,onClickFinish(){}},Je.propTypes={categoryName:n().string,deleteCategory:n().func.isRequired,deleteComponent:n().func.isRequired,deleteContentType:n().func.isRequired,isAttributeModal:n().bool.isRequired,isCustomFieldModal:n().bool.isRequired,isComponentAttribute:n().bool.isRequired,isComponentModal:n().bool.isRequired,isComponentToDzModal:n().bool.isRequired,isContentTypeModal:n().bool.isRequired,isCreatingComponent:n().bool.isRequired,isCreatingComponentAttribute:n().bool.isRequired,isCreatingComponentInDz:n().bool.isRequired,isCreatingComponentWhileAddingAField:n().bool.isRequired,isCreatingContentType:n().bool.isRequired,isCreatingDz:n().bool.isRequired,isDzAttribute:n().bool.isRequired,isEditingAttribute:n().bool.isRequired,isEditingCategory:n().bool.isRequired,isInFirstComponentStep:n().bool.isRequired,onSubmitAddComponentAttribute:n().func.isRequired,onSubmitAddComponentToDz:n().func.isRequired,onSubmitCreateContentType:n().func.isRequired,onSubmitCreateComponent:n().func.isRequired,onSubmitCreateDz:n().func.isRequired,onSubmitEditAttribute:n().func.isRequired,onSubmitEditCategory:n().func.isRequired,onSubmitEditComponent:n().func.isRequired,onSubmitEditContentType:n().func.isRequired,onSubmitEditCustomFieldAttribute:n().func.isRequired,onSubmitEditDz:n().func.isRequired,onClickFinish:n().func};var Gn=Je,Hn=({modalType:e,forTarget:t,kind:o,actionType:s,step:r})=>{switch(e){case"chooseAttribute":return(0,d.Z)(`modalForm.sub-header.chooseAttribute.${t.includes("component")?"component":o||"collectionType"}`);case"attribute":return(0,d.Z)(`modalForm.sub-header.attribute.${s}${r!=="null"&&r!==null&&s!=="edit"?".step":""}`);case"customField":return(0,d.Z)(`modalForm.sub-header.attribute.${s}`);case"addComponentToDynamicZone":return(0,d.Z)("modalForm.sub-header.addComponentToDynamicZone");default:return(0,d.Z)("configurations")}};const Qe=({actionType:e,modalType:t,forTarget:o,kind:s,step:r,attributeType:i,attributeName:u,customField:c})=>{const{formatMessage:m}=(0,$.useIntl)(),f=t==="customField"?c.intlLabel:{id:(0,d.Z)(`attribute.${i}`)};return a.createElement(l.Flex,{direction:"column",alignItems:"flex-start",paddingBottom:2,gap:1},a.createElement(l.Typography,{as:"h2",variant:"beta"},m({id:Hn({actionType:e,forTarget:o,kind:s,step:r,modalType:t}),defaultMessage:"Add new field"},{type:he()(m(f)),name:he()(u),step:r})),a.createElement(l.Typography,{variant:"pi",textColor:"neutral600"},m({id:(0,d.Z)(`attribute.${i}.description`),defaultMessage:"A type for modeling data"})))};Qe.defaultProps={actionType:null,modalType:null,forTarget:null,kind:null,step:null,attributeType:null,attributeName:null,customField:null},Qe.propTypes={actionType:n().string,modalType:n().string,forTarget:n().string,kind:n().string,step:n().string,attributeType:n().string,attributeName:n().string,customField:n().object};var Kn=Qe;const _e=({intlLabel:e,name:t,options:o,onChange:s,value:r})=>{const{formatMessage:i}=(0,$.useIntl)(),u=e.id?i({id:e.id,defaultMessage:e.defaultMessage},{...e.values}):t,c=m=>{let f="";m==="true"&&(f=!0),m==="false"&&(f=!1),s({target:{name:t,value:f,type:"select-default-boolean"}})};return a.createElement(l.Select,{label:u,id:t,name:t,onChange:c,value:(r===null?"":r).toString()},o.map(({metadatas:{intlLabel:m,disabled:f,hidden:y},key:p,value:T})=>a.createElement(l.Option,{key:p,value:T,disabled:f,hidden:y},m.defaultMessage)))};_e.defaultProps={value:null},_e.propTypes={intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,name:n().string.isRequired,onChange:n().func.isRequired,options:n().arrayOf(n().shape({metadatas:n().shape({intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired}).isRequired,disabled:n().bool,hidden:n().bool}).isRequired,key:n().oneOfType([n().string,n().number]).isRequired,value:n().oneOfType([n().string,n().number]).isRequired}).isRequired).isRequired,value:n().any};var Yn=_e;const Xn=(0,Fe.default)(l.Flex)`
19
+ position: relative;
20
+ align-items: stretch;
21
+
22
+ label {
23
+ border-radius: 4px;
24
+ max-width: 50%;
25
+ cursor: pointer;
26
+ user-select: none;
27
+ flex: 1;
28
+ ${(0,l.inputFocusStyle)()}
29
+ }
30
+
31
+ input {
32
+ position: absolute;
33
+ opacity: 0;
34
+ }
35
+
36
+ .option {
37
+ height: 100%;
38
+ border-radius: 4px;
39
+ border: 1px solid ${({theme:e})=>e.colors.neutral200};
40
+ will-change: transform, opacity;
41
+ background: ${({theme:e})=>e.colors.neutral0};
42
+
43
+ .checkmark {
44
+ position: relative;
45
+ display: block;
46
+ will-change: transform;
47
+ background: ${({theme:e})=>e.colors.neutral0};
48
+ width: ${({theme:e})=>e.spaces[5]};
49
+ height: ${({theme:e})=>e.spaces[5]};
50
+ border: solid 1px ${({theme:e})=>e.colors.neutral300};
51
+ border-radius: 50%;
52
+
53
+ &:before,
54
+ &:after {
55
+ content: '';
56
+ display: block;
57
+ border-radius: 50%;
58
+ width: ${({theme:e})=>e.spaces[3]};
59
+ height: ${({theme:e})=>e.spaces[3]};
60
+ position: absolute;
61
+ top: 3px;
62
+ left: 3px;
63
+ }
64
+
65
+ &:after {
66
+ transform: scale(0);
67
+ transition: inherit;
68
+ will-change: transform;
69
+ }
70
+ }
71
+ }
72
+
73
+ .container input:checked ~ div {
74
+ background: ${({theme:e})=>e.colors.primary100};
75
+ ${l.Typography} {
76
+ color: ${({theme:e})=>e.colors.primary600};
77
+ }
78
+ border: 1px solid ${({theme:e})=>e.colors.primary200};
79
+ .checkmark {
80
+ border: solid 1px ${({theme:e})=>e.colors.primary600};
81
+ &::after {
82
+ background: ${({theme:e})=>e.colors.primary600};
83
+ transform: scale(1);
84
+ }
85
+ }
86
+ }
87
+ `,et=({intlLabel:e,name:t,onChange:o,radios:s,value:r})=>{const{formatMessage:i}=(0,$.useIntl)();return a.createElement(l.Flex,{direction:"column",alignItems:"stretch",gap:2},a.createElement(l.Typography,{variant:"pi",fontWeight:"bold",textColor:"neutral800",htmlFor:t,as:"label"},i(e)),a.createElement(Xn,{gap:4,alignItems:"stretch"},s.map(u=>a.createElement("label",{htmlFor:u.value.toString(),key:u.value,className:"container"},a.createElement("input",{id:u.value.toString(),name:t,className:"option-input",checked:u.value===r,value:u.value,key:u.value,onChange:o,type:"radio"}),a.createElement(l.Box,{className:"option",padding:4},a.createElement(l.Flex,null,a.createElement(l.Box,{paddingRight:4},a.createElement("span",{className:"checkmark"})),a.createElement(l.Flex,{direction:"column",alignItems:"stretch",gap:2},a.createElement(l.Typography,{fontWeight:"bold"},i(u.title)),a.createElement(l.Typography,{variant:"pi",textColor:"neutral600"},i(u.description)))))))))};et.defaultProps={radios:[]},et.propTypes={intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,name:n().string.isRequired,onChange:n().func.isRequired,radios:n().arrayOf(n().shape({title:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired}),description:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired}),value:n().any.isRequired})),value:n().oneOfType([n().string,n().bool]).isRequired};var tt=et;const jt=({onChange:e,name:t,...o})=>{const s=r=>{const i=r.target.value!=="false";e({target:{name:t,value:i,type:"boolean-radio-group"}})};return a.createElement(tt,{...o,name:t,onChange:s})};jt.propTypes={name:n().string.isRequired,onChange:n().func.isRequired};var Jn=jt;const nt=({error:e,intlLabel:t,modifiedData:o,name:s,onChange:r,value:i})=>{const{formatMessage:u}=(0,$.useIntl)(),[c,m]=(0,a.useState)(!!i||i===0),f=t.id?u({id:t.id,defaultMessage:t.defaultMessage},{...t.values}):s,y=o.type==="biginteger"?"text":"number",p=!o.type,T=e?u({id:e,defaultMessage:e}):"";return a.createElement(l.Flex,{direction:"column",alignItems:"stretch",gap:2},a.createElement(l.Checkbox,{id:s,name:s,onValueChange:v=>{r({target:{name:s,value:v?y==="text"?"0":0:null}}),m(B=>!B)},value:c},f),c&&a.createElement(l.Box,{paddingLeft:6,style:{maxWidth:"200px"}},y==="text"?a.createElement(l.TextInput,{"aria-label":f,disabled:p,error:T,id:s,name:s,onChange:r,value:i===null?"":i}):a.createElement(l.NumberInput,{"aria-label":f,disabled:p,error:T,id:s,name:s,onValueChange:v=>{r({target:{name:s,value:v,type:y}})},value:i||0})))};nt.defaultProps={error:null,value:null},nt.propTypes={error:n().string,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,modifiedData:n().object.isRequired,name:n().string.isRequired,onChange:n().func.isRequired,value:n().oneOfType([n().string,n().object,n().bool,n().number])};var Qn=nt;const wt=({onChange:e,...t})=>{const o=(0,R.useNotification)(),s=r=>{o({type:"info",message:{id:(0,d.Z)("contentType.kind.change.warning"),defaultMessage:"You just changed the kind of a content type: API will be reset (routes, controllers, and services will be overwritten)."}}),e(r)};return a.createElement(tt,{...t,onChange:s})};wt.propTypes={onChange:n().func.isRequired};var _n=wt,at=g(49561),K=g(91559);const ot=({oneThatIsCreatingARelationWithAnother:e,target:t})=>{const{contentTypes:o,sortedContentTypesList:s}=(0,Ee.Z)(),r=(0,be.useDispatch)(),i=s.filter(Dt),u=O()(o,[t,"plugin"],null),c=O()(o,[t,"schema","displayName"],"error");return a.createElement(l.SimpleMenu,{id:"label",label:`${c}
88
+ ${u?`(from: ${u})`:""}`},i.map(({uid:m,title:f,restrictRelationsTo:y,plugin:p})=>{const T=()=>{const v=p?`${p}_${f}`:f;r({type:K.aG,target:{value:m,oneThatIsCreatingARelationWithAnother:e,selectedContentTypeFriendlyName:v,targetContentTypeAllowedRelations:y}})};return a.createElement(l.MenuItem,{key:m,onClick:T},f,"\xA0",p&&a.createElement(a.Fragment,null,"(from: ",p,")"))}))};ot.defaultProps={target:null},ot.propTypes={oneThatIsCreatingARelationWithAnother:n().string.isRequired,target:n().string};var ea=ot;const rt=({disabled:e,error:t,header:o,isMain:s,name:r,onChange:i,oneThatIsCreatingARelationWithAnother:u,target:c,value:m})=>a.createElement(l.Box,{background:"neutral100",hasRadius:!0,borderColor:"neutral200"},a.createElement(l.Flex,{paddingTop:s?4:1,paddingBottom:s?3:1,justifyContent:"center"},s?a.createElement(l.Typography,{variant:"pi",fontWeight:"bold",textColor:"neutral800"},o):a.createElement(ea,{target:c,oneThatIsCreatingARelationWithAnother:u})),a.createElement(l.Divider,{background:"neutral200"}),a.createElement(l.Box,{padding:4},a.createElement(R.GenericInput,{disabled:e,error:t?.id||null,intlLabel:{id:(0,d.Z)("form.attribute.item.defineRelation.fieldName"),defaultMessage:"Field name"},name:r,onChange:i,type:"text",value:m})));rt.defaultProps={disabled:!1,error:null,header:null,isMain:!1,onChange(){},oneThatIsCreatingARelationWithAnother:null,target:null,value:""},rt.propTypes={disabled:n().bool,error:n().object,header:n().string,isMain:n().bool,name:n().string.isRequired,onChange:n().func,oneThatIsCreatingARelationWithAnother:n().string,target:n().string,value:n().string};var Wt=rt,ta=g(51382),zt=g.n(ta),na=g(24443),st=g.n(na);const aa=(0,Fe.default)(l.Box)`
89
+ position: relative;
90
+ width: 100%;
91
+ &::before {
92
+ content: '';
93
+ position: absolute;
94
+ top: calc(50% - 0px);
95
+ height: 2px;
96
+ width: 100%;
97
+ background-color: ${({theme:e})=>e.colors.primary600};
98
+ z-index: 0;
99
+ }
100
+ `,oa=(0,Fe.default)(l.Box)`
101
+ background: ${({theme:e,isSelected:t})=>e.colors[t?"primary100":"neutral0"]};
102
+ border: 1px solid
103
+ ${({theme:e,isSelected:t})=>e.colors[t?"primary700":"neutral200"]};
104
+ border-radius: ${({theme:e})=>e.borderRadius};
105
+ z-index: 1;
106
+ svg {
107
+ width: 1.5rem;
108
+ height: 100%;
109
+ path {
110
+ fill: ${({theme:e,isSelected:t})=>e.colors[t?"primary700":"neutral500"]};
111
+ }
112
+ }
113
+ &:disabled {
114
+ cursor: not-allowed;
115
+ }
116
+ `,ra=(0,Fe.default)(l.Flex)`
117
+ position: absolute;
118
+ bottom: 0;
119
+ left: 0;
120
+ right: 0;
121
+ `,sa={oneWay:ae.OneWay,oneToOne:ae.OneToOne,oneToMany:ae.OneToMany,manyToOne:ae.ManyToOne,manyToMany:ae.ManyToMany,manyWay:ae.ManyWays},it=({naturePickerType:e,oneThatIsCreatingARelationWithAnother:t,relationType:o,target:s})=>{const r=(0,be.useDispatch)(),{formatMessage:i}=(0,$.useIntl)(),{contentTypes:u,modifiedData:c}=(0,Ee.Z)(),m=["oneWay","oneToOne","oneToMany","manyToOne","manyToMany","manyWay"],f=["oneWay","manyWay"],p=(e==="contentType"?O()(c,[e,"schema","kind"],""):e)==="collectionType"?m:f,T=o==="manyToOne",v=O()(u,[s,"schema","displayName"],"unknown"),F=T?v:t,N=T?t:v,B=st()(F,o==="manyToMany"?2:1),M=O()(u,[s,"schema","restrictRelationsTo"],null),C=st()(N,["manyToMany","oneToMany","manyToOne","manyWay"].includes(o)?2:1);return o?a.createElement(l.Flex,{style:{flex:1}},a.createElement(aa,null,a.createElement(l.Flex,{paddingLeft:9,paddingRight:9,paddingTop:1,justifyContent:"center"},a.createElement(l.KeyboardNavigable,{tagName:"button"},a.createElement(l.Flex,{gap:3},p.map(A=>{const W=sa[A],z=M===null||M.includes(A);return a.createElement(oa,{as:"button",isSelected:o===A,disabled:!z,key:A,onClick:()=>{z&&r({type:K.QQ,target:{oneThatIsCreatingARelationWithAnother:t,targetContentType:s,value:A}})},padding:2,type:"button"},a.createElement(W,{key:A}))}))))),a.createElement(ra,{justifyContent:"center"},a.createElement(l.Typography,null,zt()(B,{length:24}),"\xA0"),a.createElement(l.Typography,{textColor:"primary600"},i({id:(0,d.Z)(`relation.${o}`)}),"\xA0"),a.createElement(l.Typography,null,zt()(C,{length:24})))):null};it.defaultProps={relationType:null,target:null},it.propTypes={naturePickerType:n().string.isRequired,oneThatIsCreatingARelationWithAnother:n().string.isRequired,relationType:n().string,target:n().string};var ia=it;const Vt=({formErrors:e,mainBoxHeader:t,modifiedData:o,naturePickerType:s,onChange:r})=>{const i=(0,at.Z)(o.relation,o.targetAttribute);return a.createElement(l.Flex,{style:{position:"relative"}},a.createElement(Wt,{isMain:!0,header:t,error:e?.name||null,name:"name",onChange:r,value:o?.name||""}),a.createElement(ia,{naturePickerType:s,oneThatIsCreatingARelationWithAnother:t,relationType:i,target:o.target}),a.createElement(Wt,{disabled:["oneWay","manyWay"].includes(i),error:e?.targetAttribute||null,name:"targetAttribute",onChange:r,oneThatIsCreatingARelationWithAnother:t,target:o.target,value:o?.targetAttribute||""}))};Vt.propTypes={formErrors:n().object.isRequired,mainBoxHeader:n().string.isRequired,modifiedData:n().object.isRequired,naturePickerType:n().string.isRequired,onChange:n().func.isRequired};var la=Vt,Gt=g(45251);const lt=({description:e,error:t,intlLabel:o,modifiedData:s,name:r,onChange:i,value:u})=>{const{formatMessage:c}=(0,$.useIntl)(),m=(0,a.useRef)(i),f=s?.displayName||"";(0,a.useEffect)(()=>{if(f){const v=(0,Gt.Z)(f);try{const F=st()(v,2);m.current({target:{name:r,value:F}})}catch{m.current({target:{name:r,value:v}})}}else m.current({target:{name:r,value:""}})},[f,r]);const y=t?c({id:t,defaultMessage:t}):"",p=e?c({id:e.id,defaultMessage:e.defaultMessage},{...e.values}):"",T=c(o);return a.createElement(l.TextInput,{error:y,label:T,id:r,hint:p,name:r,onChange:i,value:u||""})};lt.defaultProps={description:null,error:null,value:null},lt.propTypes={description:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}),error:n().string,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,modifiedData:n().object.isRequired,name:n().string.isRequired,onChange:n().func.isRequired,value:n().string};var ua=lt;const ut=({error:e,intlLabel:t,name:o,onChange:s,value:r})=>{const{formatMessage:i}=(0,$.useIntl)(),{allComponentsCategories:u}=(0,Ee.Z)(),[c,m]=(0,a.useState)(u),f=e?i({id:e,defaultMessage:e}):"",y=i(t),p=v=>{s({target:{name:o,value:v,type:"select-category"}})},T=v=>{m(F=>[...F,v]),p(v)};return a.createElement(l.CreatableCombobox,{error:f,id:o,label:y,name:o,onChange:p,onCreateOption:T,value:r},c.map(v=>a.createElement(l.ComboboxOption,{key:v,value:v},v)))};ut.defaultProps={error:null,value:null},ut.propTypes={error:n().string,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,name:n().string.isRequired,onChange:n().func.isRequired,value:n().string};var da=ut;const dt=({error:e,intlLabel:t,isAddingAComponentToAnotherComponent:o,isCreating:s,isCreatingComponentWhileAddingAField:r,componentToCreate:i,name:u,onChange:c,targetUid:m,forTarget:f,value:y})=>{const{formatMessage:p}=(0,$.useIntl)(),T=e?p({id:e,defaultMessage:e}):"",v=p(t),{componentsGroupedByCategory:F,componentsThatHaveOtherComponentInTheirAttributes:N}=(0,Ee.Z)(),B=["component","components"].includes(f);let M=Object.entries(F).reduce((C,A)=>{const[W,z]=A,_=z.map(L=>({uid:L.uid,label:L.schema.displayName,categoryName:W}));return[...C,..._]},[]);return o&&(M=M.filter(C=>!N.includes(C.uid))),B&&(M=M.filter(C=>C.uid!==m)),r&&(M=[{uid:y,label:i.displayName,categoryName:i.category}]),a.createElement(l.Select,{disabled:r||!s,error:T,label:v,id:u,name:u,onChange:C=>{c({target:{name:u,value:C,type:"select-category"}})},value:y||""},M.map(C=>a.createElement(l.Option,{key:C.uid,value:C.uid},`${C.categoryName} - ${C.label}`)))};dt.defaultProps={componentToCreate:null,error:null},dt.propTypes={componentToCreate:n().object,forTarget:n().string.isRequired,error:n().string,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,isAddingAComponentToAnotherComponent:n().bool.isRequired,isCreating:n().bool.isRequired,isCreatingComponentWhileAddingAField:n().bool.isRequired,name:n().string.isRequired,onChange:n().func.isRequired,targetUid:n().string.isRequired,value:n().string.isRequired};var ca=dt,ct=(e,t)=>e.find(({name:o})=>o===t);const Ht=({dynamicZoneTarget:e,intlLabel:t,name:o,onChange:s,value:r})=>{const{formatMessage:i}=(0,$.useIntl)(),{componentsGroupedByCategory:u,modifiedData:c}=(0,Ee.Z)(),f=(ct(c.contentType.schema.attributes,e)||{}).components||[],y=Object.keys(u).reduce((v,F)=>{const N=u[F].filter(({uid:B})=>!f.includes(B));return N.length>0&&(v[F]=N),v},{}),p=Object.entries(y).reduce((v,F)=>{const[N,B]=F,M={label:N,children:B.map(({uid:C,schema:{displayName:A}})=>({label:A,value:C}))};return v.push(M),v},[]),T=i({id:(0,d.Z)("components.SelectComponents.displayed-value"),defaultMessage:"{number, plural, =0 {# components} one {# component} other {# components}} selected"},{number:r.length});return a.createElement(l.MultiSelectNested,{id:"select1",label:i(t),customizeContent:()=>T,name:o,onChange:v=>{s({target:{name:o,value:v,type:"select-components"}})},options:p,value:r||[]})};Ht.propTypes={intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,dynamicZoneTarget:n().string.isRequired,name:n().string.isRequired,onChange:n().func.isRequired,value:n().array.isRequired};var ma=Ht;const mt=({intlLabel:e,error:t,modifiedData:o,name:s,onChange:r,options:i,value:u})=>{const{formatMessage:c}=(0,$.useIntl)(),m=c(e),f=t?c({id:t,defaultMessage:t}):"",y=p=>{r({target:{name:s,value:p,type:"select"}}),u&&o.default!==void 0&&o.default!==null&&r({target:{name:"default",value:null}})};return a.createElement(l.Select,{error:f,label:m,id:s,name:s,onChange:y,value:u||""},i.map(({metadatas:{intlLabel:p,disabled:T,hidden:v},key:F,value:N})=>a.createElement(l.Option,{key:F,value:N,disabled:T,hidden:v},c({id:p.id,defaultMessage:p.defaultMessage},p.values))))};mt.defaultProps={error:void 0,value:""},mt.propTypes={error:n().string,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,modifiedData:n().object.isRequired,name:n().string.isRequired,onChange:n().func.isRequired,options:n().arrayOf(n().shape({metadatas:n().shape({intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired}).isRequired,disabled:n().bool,hidden:n().bool}).isRequired,key:n().oneOfType([n().string,n().number]).isRequired,value:n().oneOfType([n().string,n().number]).isRequired}).isRequired).isRequired,value:n().string};var pa=mt;const pt=({intlLabel:e,error:t,modifiedData:o,name:s,onChange:r,options:i,value:u})=>{const{formatMessage:c}=(0,$.useIntl)(),m=c(e),f=t?c({id:t,defaultMessage:t}):"",y=p=>{r({target:{name:s,value:p,type:"select"}}),u&&(p==="biginteger"&&u!=="biginteger"&&(o.default!==void 0&&o.default!==null&&r({target:{name:"default",value:null}}),o.max!==void 0&&o.max!==null&&r({target:{name:"max",value:null}}),o.min!==void 0&&o.min!==null&&r({target:{name:"min",value:null}})),["decimal","float","integer"].includes(p)&&u==="biginteger"&&(o.default!==void 0&&o.default!==null&&r({target:{name:"default",value:null}}),o.max!==void 0&&o.max!==null&&r({target:{name:"max",value:null}}),o.min!==void 0&&o.min!==null&&r({target:{name:"min",value:null}})))};return a.createElement(l.Select,{error:f,label:m,id:s,name:s,onChange:y,value:u||""},i.map(({metadatas:{intlLabel:p,disabled:T,hidden:v},key:F,value:N})=>a.createElement(l.Option,{key:F,value:N,disabled:T,hidden:v},c(p))))};pt.defaultProps={error:void 0,value:""},pt.propTypes={error:n().string,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,modifiedData:n().object.isRequired,name:n().string.isRequired,onChange:n().func.isRequired,options:n().arrayOf(n().shape({metadatas:n().shape({intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired}).isRequired,disabled:n().bool,hidden:n().bool}).isRequired,key:n().oneOfType([n().string,n().number]).isRequired,value:n().oneOfType([n().string,n().number]).isRequired}).isRequired).isRequired,value:n().string};var ga=pt;const gt=({description:e,error:t,intlLabel:o,modifiedData:s,name:r,onChange:i,value:u})=>{const{formatMessage:c}=(0,$.useIntl)(),m=(0,a.useRef)(i),f=s?.displayName||"";(0,a.useEffect)(()=>{f?m.current({target:{name:r,value:(0,Gt.Z)(f)}}):m.current({target:{name:r,value:""}})},[f,r]);const y=t?c({id:t,defaultMessage:t}):"",p=e?c({id:e.id,defaultMessage:e.defaultMessage},{...e.values}):"",T=c(o);return a.createElement(l.TextInput,{error:y,label:T,id:r,hint:p,name:r,onChange:i,value:u||""})};gt.defaultProps={description:null,error:null,value:null},gt.propTypes={description:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}),error:n().string,intlLabel:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}).isRequired,modifiedData:n().object.isRequired,name:n().string.isRequired,onChange:n().func.isRequired,value:n().string};var fa=gt;const Kt=({form:e,formErrors:t,genericInputProps:o,modifiedData:s,onChange:r})=>{const{formatMessage:i}=(0,$.useIntl)();return e.map((u,c)=>u.items.length===0?null:a.createElement(l.Box,{key:c},u.sectionTitle&&a.createElement(l.Box,{paddingBottom:4},a.createElement(l.Typography,{variant:"delta",as:"h3"},i(u.sectionTitle))),a.createElement(l.Grid,{gap:4},u.items.map((m,f)=>{const y=`${c}.${f}`,p=O()(s,m.name,""),T=Object.keys(t).find(F=>F===m.name),v=T?t[T].id:O()(t,[...m.name.split(".").filter(F=>F!=="componentToCreate"),"id"],null);return m.type==="pushRight"?a.createElement(l.GridItem,{col:m.size||6,key:m.name||y},a.createElement("div",null)):a.createElement(l.GridItem,{col:m.size||6,key:m.name||y},a.createElement(R.GenericInput,{...m,...o,error:v,onChange:r,value:p}))}))))};Kt.propTypes={form:n().arrayOf(n().object).isRequired,formErrors:n().object.isRequired,genericInputProps:n().object.isRequired,modifiedData:n().object.isRequired,onChange:n().func.isRequired};var Yt=Kt;const ft=({description:e,disabled:t,error:o,intlLabel:s,labelAction:r,name:i,onChange:u,placeholder:c,value:m})=>{const{formatMessage:f}=(0,$.useIntl)(),y=o?f({id:o,defaultMessage:o}):"",p=e?f({id:e.id,defaultMessage:e.defaultMessage},{...e.values}):"",T=f(s),v=c?f({id:c.id,defaultMessage:c.defaultMessage},{...c.values}):"",F=Array.isArray(m)?m.join(`
122
+ `):"",N=B=>{const M=B.target.value.split(`
123
+ `);u({target:{name:i,value:M}})};return a.createElement(l.Textarea,{disabled:t,error:y,label:T,labelAction:r,id:i,hint:p,name:i,onChange:N,placeholder:v,value:F},F)};ft.defaultProps={description:null,disabled:!1,error:"",labelAction:void 0,placeholder:null,value:""},ft.propTypes={description:n().shape({id:n().string.isRequired,defaultMessage:n().string.isRequired,values:n().object}),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}),value:n().oneOfType([n().array,n().string])};var ya=ft,ba=(e,t)=>{const o=O()(e,["contentType","schema","kind"],"");return o==="singleType"||o===t.kind?!0:O()(e,["contentType","schema","attributes"],[]).filter(({relation:i,type:u,targetAttribute:c})=>{const m=(0,at.Z)(i,c);return u==="relation"&&!["oneWay","manyWay"].includes(m)}).length===0},ha=(e="",t,o)=>{const s=["text","email","richtext","password","number","enumeration","date","media","boolean","json","relation"],r=e==="contentType",i=o.includes(t),u=!r&&!i;return r?[[...s,"uid"],["component","dynamiczone"]]:u?[s,["component"]]:[s]},Xt=e=>e.reduce((t,o)=>{const s=o.items.reduce((r,i)=>(i.name&&r.push(i.name),r),[]);return[...t,...s]},[]),h=g(5173),Se=g(2158),Ta={base:{sections:[{sectionTitle:null,items:[{autoFocus:!0,name:"name",type:"text",intlLabel:{id:"global.name",defaultMessage:"Name"},description:{id:(0,d.Z)("modalForm.editCategory.base.name.description"),defaultMessage:"No space is allowed for the name of the category"}}]}]}},Jt=/^[A-Za-z][-_0-9A-Za-z]*$/,va=e=>{const t={name:h.Z_().matches(Jt,R.translatedErrors.regex).test({name:"nameNotAllowed",message:R.translatedErrors.unique,test(o){return o?!e.includes((0,q.toLower)(o)):!1}}).required(R.translatedErrors.required)};return h.Ry(t)},Ca=(e,t,o)=>{const s={displayName:h.Z_().test({name:"nameAlreadyUsed",message:R.translatedErrors.unique,test(r){if(!r)return!1;const i=(0,Se.N)(r,o);return!e.includes(i)}}).test({name:"nameNotAllowed",message:(0,d.Z)("error.contentTypeName.reserved-name"),test(r){return r?!t.includes((0,q.toLower)((0,q.trim)(r))):!1}}).required(R.translatedErrors.required),category:h.Z_().matches(Jt,R.translatedErrors.regex).required(R.translatedErrors.required),icon:h.Z_()};return h.Ry(s)},yt={intlLabel:{id:"global.type",defaultMessage:"Type"},name:"createComponent",type:"boolean-radio-group",size:12,radios:[{title:{id:(0,d.Z)("form.attribute.component.option.create"),defaultMessage:"Create a new component"},description:{id:(0,d.Z)("form.attribute.component.option.create.description"),defaultMessage:"A component is shared across types and components, it will be available and accessible everywhere."},value:!0},{title:{id:(0,d.Z)("form.attribute.component.option.reuse-existing"),defaultMessage:"Use an existing component"},description:{id:(0,d.Z)("form.attribute.component.option.reuse-existing.description"),defaultMessage:"Reuse a component already created to keep your data consistent across content-types."},value:!1}]},qe={base(e=""){return[{sectionTitle:null,items:[{name:`${e}displayName`,type:"text",intlLabel:{id:(0,d.Z)("contentType.displayName.label"),defaultMessage:"Display Name"}},{name:`${e}category`,type:"select-category",intlLabel:{id:(0,d.Z)("modalForm.components.create-component.category.label"),defaultMessage:"Select a category or enter a name to create a new one"}}]}]},advanced(){return[]}},x={default:{name:"default",type:"text",intlLabel:{id:(0,d.Z)("form.attribute.settings.default"),defaultMessage:"Default value"}},max:{name:"max",type:"checkbox-with-number-field",intlLabel:{id:(0,d.Z)("form.attribute.item.maximum"),defaultMessage:"Maximum value"}},maxLength:{name:"maxLength",type:"checkbox-with-number-field",intlLabel:{id:(0,d.Z)("form.attribute.item.maximumLength"),defaultMessage:"Maximum length"}},min:{name:"min",type:"checkbox-with-number-field",intlLabel:{id:(0,d.Z)("form.attribute.item.minimum"),defaultMessage:"Minimum value"}},minLength:{name:"minLength",type:"checkbox-with-number-field",intlLabel:{id:(0,d.Z)("form.attribute.item.minimumLength"),defaultMessage:"Minimum length"}},private:{name:"private",type:"checkbox",intlLabel:{id:(0,d.Z)("form.attribute.item.privateField"),defaultMessage:"Private field"},description:{id:(0,d.Z)("form.attribute.item.privateField.description"),defaultMessage:"This field will not show up in the API response"}},regex:{intlLabel:{id:(0,d.Z)("form.attribute.item.text.regex"),defaultMessage:"RegExp pattern"},name:"regex",type:"text",description:{id:(0,d.Z)("form.attribute.item.text.regex.description"),defaultMessage:"The text of the regular expression"}},required:{name:"required",type:"checkbox",intlLabel:{id:(0,d.Z)("form.attribute.item.requiredField"),defaultMessage:"Required field"},description:{id:(0,d.Z)("form.attribute.item.requiredField.description"),defaultMessage:"You won't be able to create an entry if this field is empty"}},unique:{name:"unique",type:"checkbox",intlLabel:{id:(0,d.Z)("form.attribute.item.uniqueField"),defaultMessage:"Unique field"},description:{id:(0,d.Z)("form.attribute.item.uniqueField.description"),defaultMessage:"You won't be able to create an entry if there is an existing entry with identical content"}}},Ma={boolean(){return{sections:[{sectionTitle:null,items:[{autoFocus:!0,type:"select-default-boolean",intlLabel:{id:(0,d.Z)("form.attribute.settings.default"),defaultMessage:"Default value"},name:"default",options:[{value:"true",key:"true",metadatas:{intlLabel:{id:"true",defaultMessage:"true"}}},{value:"",key:"null",metadatas:{intlLabel:{id:"null",defaultMessage:"null"}}},{value:"false",key:"false",metadatas:{intlLabel:{id:"false",defaultMessage:"false"}}}]}]},{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.required,x.private]}]}},component({repeatable:e},t){return t==="1"?{sections:qe.advanced("componentToCreate")}:e?{sections:[{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.required,x.private,x.max,x.min]}]}:{sections:[{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.required,x.private]}]}},date({type:e}){return{sections:[{sectionTitle:null,items:[{...x.default,type:e||"date",value:null,withDefaultValue:!1,disabled:!e,autoFocus:!1}]},{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.required,x.unique,x.private]}]}},dynamiczone(){return{sections:[{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.required,x.max,x.min]}]}},email(){return{sections:[{sectionTitle:null,items:[{...x.default,type:"email"}]},{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.required,x.unique,x.maxLength,x.minLength,x.private]}]}},enumeration(e){return{sections:[{sectionTitle:null,items:[{name:"default",type:"select",intlLabel:{id:(0,d.Z)("form.attribute.settings.default"),defaultMessage:"Default value"},validations:{},options:[{key:"__null_reset_value__",value:"",metadatas:{intlLabel:{id:"components.InputSelect.option.placeholder",defaultMessage:"Choose here"}}},...(e.enum||[]).filter((t,o)=>e.enum.indexOf(t)===o&&t).map(t=>({key:t,value:t,metadatas:{intlLabel:{id:`${t}.no-override`,defaultMessage:t}}}))]},{intlLabel:{id:(0,d.Z)("form.attribute.item.enumeration.graphql"),defaultMessage:"Name override for GraphQL"},name:"enumName",type:"text",validations:{},description:{id:(0,d.Z)("form.attribute.item.enumeration.graphql.description"),defaultMessage:"Allows you to override the default generated name for GraphQL"}}]},{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.required,x.private]}]}},json(){return{sections:[{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.required,x.private]}]}},media(){return{sections:[{sectionTitle:null,items:[{intlLabel:{id:(0,d.Z)("form.attribute.media.allowed-types"),defaultMessage:"Select allowed types of media"},name:"allowedTypes",type:"allowed-types-select",size:7,value:"",validations:{}}]},{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.required,x.private]}]}},number(e){const t=e.type==="decimal"||e.type==="float"?"any":1;return{sections:[{sectionTitle:null,items:[{autoFocus:!0,name:"default",type:e.type==="biginteger"?"text":"number",step:t,intlLabel:{id:(0,d.Z)("form.attribute.settings.default"),defaultMessage:"Default value"},validations:{}}]},{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.required,x.unique,x.max,x.min,x.private]}]}},password(){return{sections:[{sectionTitle:null,items:[x.default]},{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.required,x.maxLength,x.minLength,x.private]}]}},relation(){return{sections:[{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.private]}]}},richtext(){return{sections:[{sectionTitle:null,items:[x.default]},{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.required,x.maxLength,x.minLength,x.private]}]}},text(){return{sections:[{sectionTitle:null,items:[x.default,x.regex]},{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.required,x.unique,x.maxLength,x.minLength,x.private]}]}},uid(e){return{sections:[{sectionTitle:null,items:[{...x.default,disabled:Boolean(e.targetField),type:"text"}]},{sectionTitle:{id:"global.settings",defaultMessage:"Settings"},items:[x.required,x.maxLength,x.minLength,x.private]}]}}};const ge={name:"name",type:"text",intlLabel:{id:"global.name",defaultMessage:"Name"},description:{id:(0,d.Z)("modalForm.attribute.form.base.name.description"),defaultMessage:"No space is allowed for the name of the attribute"}};var Ea={component(e,t){if(t==="1"){const o=e.createComponent===!0?qe.base("componentToCreate."):[];return{sections:[{sectionTitle:null,items:[yt]},...o]}}return{sections:[{sectionTitle:null,items:[ge,{name:"component",type:"select-component",intlLabel:{id:(0,d.Z)("modalForm.attributes.select-component"),defaultMessage:"Select a component"},isMultiple:!1}]},{sectionTitle:null,items:[{intlLabel:{id:"global.type",defaultMessage:"Type"},name:"repeatable",type:"boolean-radio-group",size:12,radios:[{title:{id:(0,d.Z)("form.attribute.component.option.repeatable"),defaultMessage:"Repeatable component"},description:{id:(0,d.Z)("form.attribute.component.option.repeatable.description"),defaultMessage:"Best for multiple instances (array) of ingredients, meta tags, etc.."},value:!0},{title:{id:(0,d.Z)("form.attribute.component.option.single"),defaultMessage:"Single component"},description:{id:(0,d.Z)("form.attribute.component.option.single.description"),defaultMessage:"Best for grouping fields like full address, main information, etc..."},value:!1}]}]}]}},date(){return{sections:[{sectionTitle:null,items:[ge,{intlLabel:{id:"global.type",defaultMessage:"Type"},name:"type",type:"select-date",options:[{key:"__null_reset_value__",value:"",metadatas:{intlLabel:{id:"components.InputSelect.option.placeholder",defaultMessage:"Choose here"},hidden:!0}},{key:"date",value:"date",metadatas:{intlLabel:{id:(0,d.Z)("form.attribute.item.date.type.date"),defaultMessage:"date (ex: 01/01/{currentYear})",values:{currentYear:new Date().getFullYear()}}}},{key:"datetime",value:"datetime",metadatas:{intlLabel:{id:(0,d.Z)("form.attribute.item.date.type.datetime"),defaultMessage:"datetime (ex: 01/01/{currentYear} 00:00 AM)",values:{currentYear:new Date().getFullYear()}}}},{key:"time",value:"time",metadatas:{intlLabel:{id:(0,d.Z)("form.attribute.item.date.type.time"),defaultMessage:"time (ex: 00:00 AM)"}}}]}]}]}},enumeration(){return{sections:[{sectionTitle:null,items:[ge]},{sectionTitle:null,items:[{name:"enum",type:"textarea-enum",size:6,intlLabel:{id:(0,d.Z)("form.attribute.item.enumeration.rules"),defaultMessage:"Values (one line per value)"},placeholder:{id:(0,d.Z)("form.attribute.item.enumeration.placeholder"),defaultMessage:`Ex:
124
+ morning
125
+ noon
126
+ evening`},validations:{required:!0}}]}]}},media(){return{sections:[{sectionTitle:null,items:[ge]},{sectionTitle:null,items:[{intlLabel:{id:"global.type",defaultMessage:"Type"},name:"multiple",size:12,type:"boolean-radio-group",radios:[{title:{id:(0,d.Z)("form.attribute.media.option.multiple"),defaultMessage:"Multiple media"},description:{id:(0,d.Z)("form.attribute.media.option.multiple.description"),defaultMessage:"Best for sliders, carousels or multiple files download"},value:!0},{title:{id:(0,d.Z)("form.attribute.media.option.single"),defaultMessage:"Single media"},description:{id:(0,d.Z)("form.attribute.media.option.single.description"),defaultMessage:"Best for avatar, profile picture or cover"},value:!1}]}]}]}},number(){return{sections:[{sectionTitle:null,items:[ge,{intlLabel:{id:(0,d.Z)("form.attribute.item.number.type"),defaultMessage:"Number format"},name:"type",type:"select-number",options:[{key:"__null_reset_value__",value:"",metadatas:{intlLabel:{id:"components.InputSelect.option.placeholder",defaultMessage:"Choose here"},hidden:!0}},{key:"integer",value:"integer",metadatas:{intlLabel:{id:(0,d.Z)("form.attribute.item.number.type.integer"),defaultMessage:"integer (ex: 10)"}}},{key:"biginteger",value:"biginteger",metadatas:{intlLabel:{id:(0,d.Z)("form.attribute.item.number.type.biginteger"),defaultMessage:"biginteger (ex: 123456789)"}}},{key:"decimal",value:"decimal",metadatas:{intlLabel:{id:(0,d.Z)("form.attribute.item.number.type.decimal"),defaultMessage:"decimal (ex: 2.22)"}}},{key:"float",value:"float",metadatas:{intlLabel:{id:(0,d.Z)("form.attribute.item.number.type.float"),defaultMessage:"decimal (ex: 3.3333333)"}}}]}]}]}},relation(){return{sections:[{sectionTitle:null,items:[{intlLabel:{id:"FIXME",defaultMessage:"FIXME"},name:"relation",size:12,type:"relation"}]}]}},string(){return{sections:[{sectionTitle:null,items:[ge]},{sectionTitle:null,items:[{intlLabel:{id:"global.type",defaultMessage:"Type"},name:"type",size:12,type:"radio-group",radios:[{title:{id:(0,d.Z)("form.attribute.text.option.short-text"),defaultMessage:"Sort text"},description:{id:(0,d.Z)("form.attribute.text.option.short-text.description"),defaultMessage:"Best for titles, names, links (URL). It also enables exact search on the field."},value:"string"},{title:{id:(0,d.Z)("form.attribute.text.option.long-text"),defaultMessage:"Long text"},description:{id:(0,d.Z)("form.attribute.text.option.long-text.description"),defaultMessage:"Best for descriptions, biography. Exact search is disabled."},value:"text"}]}]}]}},text(){return{sections:[{sectionTitle:null,items:[ge]},{sectionTitle:null,items:[{intlLabel:{id:"global.type",defaultMessage:"Type"},name:"type",size:12,type:"radio-group",radios:[{title:{id:(0,d.Z)("form.attribute.text.option.short-text"),defaultMessage:"Sort text"},description:{id:(0,d.Z)("form.attribute.text.option.short-text.description"),defaultMessage:"Best for titles, names, links (URL). It also enables exact search on the field."},value:"string"},{title:{id:(0,d.Z)("form.attribute.text.option.long-text"),defaultMessage:"Long text"},description:{id:(0,d.Z)("form.attribute.text.option.long-text.description"),defaultMessage:"Best for descriptions, biography. Exact search is disabled."},value:"text"}]}]}]}},uid(e,t,o){const s=o.filter(({type:r})=>["string","text"].includes(r)).map(({name:r})=>({key:r,value:r,metadatas:{intlLabel:{id:`${r}.no-override`,defaultMessage:r}}}));return{sections:[{sectionTitle:null,items:[{...ge,placeholder:{id:(0,d.Z)("modalForm.attribute.form.base.name.placeholder"),defaultMessage:"e.g. Slug, SEO URL, Canonical URL"}},{intlLabel:{id:(0,d.Z)("modalForm.attribute.target-field"),defaultMessage:"Attached field"},name:"targetField",type:"select",options:[{key:"__null_reset_value__",value:"",metadatas:{intlLabel:{id:"global.none",defaultMessage:"None"}}},...s]}]}]}}},Qt={advanced:Ma,base:Ea},Ra={sections:[{sectionTitle:null,items:[ge]}]},xa=g(91815),Aa=g.n(xa),Za=g(40791),Fa=g.n(Za),bt=e=>Fa()(e,{decamelize:!1,lowercase:!1,separator:"_"});const _t=/^[A-Za-z][_0-9A-Za-z]*$/,en=e=>({name:"attributeNameAlreadyUsed",message:R.translatedErrors.unique,test(t){return t?!e.includes(t):!1}}),or=(e,t,o)=>{const s=get(e,["schema","attributes"],{});return Object.keys(s).filter(r=>t?r!==o:!0)},ht=e=>({name:"forbiddenAttributeName",message:(0,d.Z)("error.attributeName.reserved-name"),test(t){return t?!e.includes(t):!1}}),b={default:()=>h.Z_().nullable(),max:()=>h.Rx().integer().nullable(),min:()=>h.Rx().integer().when("max",(e,t)=>e?t.max(e,(0,d.Z)("error.validation.minSupMax")):t).nullable(),maxLength:()=>h.Rx().integer().positive((0,d.Z)("error.validation.positive")).nullable(),minLength:()=>h.Rx().integer().min(0).when("maxLength",(e,t)=>e?t.max(e,(0,d.Z)("error.validation.minSupMax")):t).nullable(),name(e,t){return h.Z_().test(en(e)).test(ht(t)).matches(_t,R.translatedErrors.regex).required(R.translatedErrors.required)},required:()=>h.O7(),type:()=>h.Z_().required(R.translatedErrors.required),unique:()=>h.O7().nullable()},Tt=(e,t)=>({name:b.name(e,t),type:b.type(),default:b.default(),unique:b.unique(),required:b.required(),maxLength:b.maxLength(),minLength:b.minLength(),regex:h.Z_().test({name:"isValidRegExpPattern",message:(0,d.Z)("error.validation.regex"),test(s){return new RegExp(s)!==null}}).nullable()}),vt={name:"isMinSuperiorThanMax",message:(0,d.Z)("error.validation.minSupMax"),test(e){if(!e)return!0;const{max:t}=this.parent;return!t||Number.isNaN((0,q.toNumber)(e))?!0:(0,q.toNumber)(t)>=(0,q.toNumber)(e)}};var Ct={date(e,t){const o={name:b.name(e,t),type:b.type()};return h.Ry(o)},datetime(e,t){const o={name:b.name(e,t),type:b.type()};return h.Ry(o)},time(e,t){const o={name:b.name(e,t),type:b.type()};return h.Ry(o)},default(e,t){const o={name:b.name(e,t),type:b.type()};return h.Ry(o)},biginteger(e,t){const o={name:b.name(e,t),type:b.type(),default:h.Z_().nullable().matches(/^-?\d*$/),unique:b.unique(),required:b.required(),max:h.Z_().nullable().matches(/^-?\d*$/,R.translatedErrors.regex),min:h.Z_().nullable().test(vt).matches(/^-?\d*$/,R.translatedErrors.regex)};return h.Ry(o)},boolean(e,t){const o={name:b.name(e,t),default:h.O7().nullable(),required:b.required(),unique:b.unique()};return h.Ry(o)},component(e,t){const o={name:b.name(e,t),type:b.type(),required:b.required(),max:b.max(),min:b.min(),component:h.Z_().required(R.translatedErrors.required)};return h.Ry(o)},decimal(e,t){const o={name:b.name(e,t),type:b.type(),default:h.Rx(),required:b.required(),max:h.Rx(),min:h.Rx().test(vt)};return h.Ry(o)},dynamiczone(e,t){const o={name:b.name(e,t),type:b.type(),required:b.required(),max:b.max(),min:b.min()};return h.Ry(o)},email(e,t){const o={name:b.name(e,t),type:b.type(),default:h.Z_().email().nullable(),unique:b.unique(),required:b.required(),maxLength:b.maxLength(),minLength:b.minLength()};return h.Ry(o)},enumeration(e,t){const o=/^[_A-Za-z][_0-9A-Za-z]*$/,s={name:h.Z_().test(en(e)).test(ht(t)).matches(o,R.translatedErrors.regex).required(R.translatedErrors.required),type:b.type(),default:b.default(),unique:b.unique(),required:b.required(),enum:h.IX().of(h.Z_()).min(1,R.translatedErrors.min).test({name:"areEnumValuesUnique",message:(0,d.Z)("error.validation.enum-duplicate"),test(r){return!Aa()(r.map(bt).filter((u,c,m)=>m.indexOf(u)!==c)).length}}).test({name:"doesNotHaveEmptyValues",message:(0,d.Z)("error.validation.enum-empty-string"),test:r=>!r.map(bt).some(i=>i==="")}).test({name:"doesMatchRegex",message:(0,d.Z)("error.validation.enum-regex"),test:r=>r.map(bt).every(i=>o.test(i))}),enumName:h.Z_().nullable()};return h.Ry(s)},float(e,t){const o={name:b.name(e,t),type:b.type(),required:b.required(),default:h.Rx(),max:h.Rx(),min:h.Rx().test(vt)};return h.Ry(o)},integer(e,t){const o={name:b.name(e,t),type:b.type(),default:h.Rx().integer(),unique:b.unique(),required:b.required(),max:b.max(),min:b.min()};return h.Ry(o)},json(e,t){const o={name:b.name(e,t),type:b.type(),required:b.required(),unique:b.unique()};return h.Ry(o)},media(e,t){const o={name:b.name(e,t),type:b.type(),multiple:h.O7(),required:b.required(),allowedTypes:h.IX().of(h.Z_().oneOf(["images","videos","files","audios"])).min(1).nullable()};return h.Ry(o)},password(e,t){const o={name:b.name(e,t),type:b.type(),default:b.default(),unique:b.unique(),required:b.required(),maxLength:b.maxLength(),minLength:b.minLength()};return h.Ry(o)},relation(e,t,o,{initialData:s,modifiedData:r}){const i={name:b.name(e,t),target:h.Z_().required(R.translatedErrors.required),relation:h.Z_().required(),type:h.Z_().required(),targetAttribute:h.Vo(()=>{const u=(0,at.Z)(r.relation,r.targetAttribute);if(u==="oneWay"||u==="manyWay")return h.Z_().nullable();let c=h.Z_().test(ht(t)),f=[...o.map(({name:y})=>y),r.name].filter(y=>y!==s.targetAttribute);return c.matches(_t,R.translatedErrors.regex).test({name:"forbiddenTargetAttributeName",message:(0,d.Z)("error.validation.relation.targetAttribute-taken"),test(y){return y?!f.includes(y):!1}}).required(R.translatedErrors.required)})};return h.Ry(i)},richtext(e,t){const o={name:b.name(e,t),type:b.type(),default:b.default(),unique:b.unique(),required:b.required(),maxLength:b.maxLength(),minLength:b.minLength()};return h.Ry(o)},string(e,t){const o=Tt(e,t);return h.Ry(o)},text(e,t){const o=Tt(e,t);return h.Ry(o)},uid(e,t){const o=Tt(e,t);return h.Ry(o)}};const tn={name:"displayName",type:"text",intlLabel:{id:(0,d.Z)("contentType.displayName.label"),defaultMessage:"Display name"}};var Mt={advanced:{default(){return{sections:[{items:[{intlLabel:{id:(0,d.Z)("contentType.draftAndPublish.label"),defaultMessage:"Draft & publish"},description:{id:(0,d.Z)("contentType.draftAndPublish.description"),defaultMessage:"Allows writing a draft version of an entry, before it is published"},name:"draftAndPublish",type:"toggle-draft-publish",validations:{}}]}]}}},base:{create(){return{sections:[{sectionTitle:null,items:[tn,{description:{id:(0,d.Z)("contentType.apiId-singular.description"),defaultMessage:"Used to generate the API routes and databases tables/collections"},intlLabel:{id:(0,d.Z)("contentType.apiId-singular.label"),defaultMessage:"API ID (Singular)"},name:"singularName",type:"text-singular"},{type:"pushRight",size:6,intlLabel:{id:"",defaultMessage:""},name:"pushRight"},{description:{id:(0,d.Z)("contentType.apiId-plural.description"),defaultMessage:"Pluralized API ID"},intlLabel:{id:(0,d.Z)("contentType.apiId-plural.label"),defaultMessage:"API ID (Plural)"},name:"pluralName",type:"text-plural"}]}]}},edit(){return{sections:[{sectionTitle:null,items:[tn,{disabled:!0,description:{id:(0,d.Z)("contentType.apiId-singular.description"),defaultMessage:"Used to generate the API routes and databases tables/collections"},intlLabel:{id:(0,d.Z)("contentType.apiId-singular.label"),defaultMessage:"API ID (Singular)"},name:"singularName",type:"text"},{type:"pushRight",size:6,intlLabel:{id:"",defaultMessage:""},name:"pushRight"},{disabled:!0,description:{id:(0,d.Z)("contentType.apiId-plural.description"),defaultMessage:"Pluralized API ID"},intlLabel:{id:(0,d.Z)("contentType.apiId-plural.label"),defaultMessage:"API ID (Plural)"},name:"pluralName",type:"text"},{intlLabel:{id:"global.type",defaultMessage:"Type"},name:"kind",type:"content-type-radio-group",size:12,radios:[{title:{id:(0,d.Z)("form.button.collection-type.name"),defaultMessage:"Collection Type"},description:{id:(0,d.Z)("form.button.collection-type.description"),defaultMessage:"Best for multiple instances like articles, products, comments, etc."},value:"collectionType"},{title:{id:(0,d.Z)("form.button.single-type.name"),defaultMessage:"Single Type"},description:{id:(0,d.Z)("form.button.single-type.description"),defaultMessage:"Best for single instance like about us, homepage, etc."},value:"singleType"}]}]}]}}}},Sa=({usedContentTypeNames:e=[],reservedModels:t=[],singularNames:o=[],pluralNames:s=[]})=>{const r={displayName:h.Z_().test({name:"nameAlreadyUsed",message:R.translatedErrors.unique,test(i){if(!i)return!1;const u=(0,Se.E)(i);return!e.includes(u)}}).test({name:"nameNotAllowed",message:(0,d.Z)("error.contentTypeName.reserved-name"),test(i){return i?!t.includes((0,q.toLower)((0,q.trim)(i))):!1}}).required(R.translatedErrors.required),pluralName:h.Z_().test({name:"pluralNameAlreadyUsed",message:R.translatedErrors.unique,test(i){return i?!s.includes(i):!1}}).test({name:"pluralAndSingularAreUnique",message:(0,d.Z)("error.contentType.pluralName-used"),test(i,u){return i?u.parent.singularName!==i:!1}}).test({name:"pluralNameNotAllowed",message:(0,d.Z)("error.contentTypeName.reserved-name"),test(i){return i?!t.includes((0,q.toLower)((0,q.trim)(i))):!1}}).required(R.translatedErrors.required),singularName:h.Z_().test({name:"singularNameAlreadyUsed",message:R.translatedErrors.unique,test(i){return i?!o.includes(i):!1}}).test({name:"pluralAndSingularAreUnique",message:(0,d.Z)("error.contentType.singularName-used"),test(i,u){return i?u.parent.pluralName!==i:!1}}).test({name:"singularNameNotAllowed",message:(0,d.Z)("error.contentTypeName.reserved-name"),test(i){return i?!t.includes((0,q.toLower)((0,q.trim)(i))):!1}}).required(R.translatedErrors.required),draftAndPublish:h.O7(),kind:h.Z_().oneOf(["singleType","collectionType"])};return h.Ry(r)},Et={advanced:{default(){return{sections:qe.advanced("componentToCreate.")}}},base:{createComponent(){return{sections:[{sectionTitle:null,items:[yt]},...qe.base("componentToCreate.")]}},default(){return{sections:[{sectionTitle:null,items:[yt]},{sectionTitle:null,items:[{type:"pushRight",size:6,intlLabel:{id:"",defaultMessage:""},name:"pushRight"},{name:"components",type:"select-components",intlLabel:{id:(0,d.Z)("modalForm.attributes.select-components"),defaultMessage:"Select the components"},isMultiple:!0}]}]}}}},nn=(e,t)=>{e.forEach(o=>{if(!("sectionTitle"in o)){t[0].items.push(o);return}t.push(o)})},an=(e,t)=>e.filter(({name:o})=>o!==t.initialData.name).map(({name:o})=>o),Re={customField:{schema({schemaAttributes:e,attributeType:t,customFieldValidator:o,reservedNames:s,schemaData:r,ctbFormsAPI:i}){const u=an(e,r),c=Ct[t](u,s.attributes);return i.makeCustomFieldValidator(c,o,u,s.attributes,r)},form:{base({customField:e}){const t=[{sectionTitle:null,items:[ge]}];return e.options?.base&&nn(e.options.base,t),{sections:t}},advanced({customField:e,data:t,step:o,extensions:s,...r}){const i=[{sectionTitle:null,items:[]}],u=s.getAdvancedForm(["attribute",e.type],{data:t,type:e.type,step:o,...r});if(e.options?.advanced&&nn(e.options.advanced,i),u){const c={sectionTitle:{id:(0,d.Z)("modalForm.custom-fields.advanced.settings.extended"),defaultMessage:"Extended settings"},items:u};i.push(c)}return{sections:i}}}},attribute:{schema(e,t,o,s,r,i){const u=O()(e,["schema","attributes"],[]),c=an(u,r);try{let m=Ct[t](c,o.attributes,s,r);return i.makeValidator(["attribute",t],m,c,o.attributes,s,r)}catch(m){return console.error("Error yup build schema",m),Ct.default(c,o.attributes)}},form:{advanced({data:e,type:t,step:o,extensions:s,...r}){try{const i=Qt.advanced[t](e,o).sections,u=s.getAdvancedForm(["attribute",t],{data:e,type:t,step:o,...r});return{sections:i.reduce((m,f)=>(f.sectionTitle===null?m.push(f):m.push({...f,items:[...f.items,...u]}),m),[])}}catch(i){return console.error(i),{sections:[]}}},base({data:e,type:t,step:o,attributes:s}){try{return Qt.base[t](e,o,s)}catch{return Ra}}}},contentType:{schema(e,t,o,s,r,i){const u=Object.values(i).map(T=>T.schema.singularName),c=Object.values(i).map(T=>O()(T,["schema","pluralName"],"")),m=t?e.filter(T=>T!==o):e,f=t?u.filter(T=>O()(i,[o,"schema","singularName"],"")!==T):u,y=t?c.filter(T=>O()(i,[o,"schema","pluralName"],"")!==T):c,p=Sa({usedContentTypeNames:m,reservedModels:s.models,singularNames:f,pluralNames:y});return r.makeValidator(["contentType"],p,m,s.models,f,y)},form:{base({actionType:e}){return e==="create"?Mt.base.create():Mt.base.edit()},advanced({extensions:e}){const t=Mt.advanced.default().sections.map(s=>s.items).flat(),o=e.getAdvancedForm(["contentType"]);return{sections:[{items:[...t,...o]}]}}}},component:{schema(e,t,o,s=!1,r=null){const i=s?e.filter(u=>u!==r):e;return Ca(i,o.models,t)},form:{advanced(){return{sections:qe.advanced()}},base(){return{sections:qe.base()}}}},addComponentToDynamicZone:{form:{advanced(){return Et.advanced.default()},base({data:e}){return O()(e,"createComponent",!1)?Et.base.createComponent():Et.base.default()}}},editCategory:{schema(e,t){const o=e.filter(s=>s!==t.name).map(s=>Pe()(s));return va(o)},form:{advanced:()=>({sections:[]}),base(){return Ta.base}}}},on=g(98178),qa=g(25061);const Na=()=>e=>e[`${V.Z}_formModal`]||qa.E;var La=()=>(0,on.P1)(Na(),e=>e),Ia=()=>{const{onCloseModal:e,onNavigateToChooseAttributeModal:t,onNavigateToAddCompoToDZModal:o,onNavigateToCreateComponentStep2:s,actionType:r,attributeName:i,attributeType:u,customFieldUid:c,categoryName:m,dynamicZoneTarget:f,forTarget:y,modalType:p,isOpen:T,kind:v,step:F,targetUid:N}=(0,Ce.Z)(),B=(0,R.useCustomFields)().get(c),M=(0,a.useRef)(),C=(0,a.useMemo)(La,[]),A=(0,be.useDispatch)(),W=(0,R.useNotification)(),z=(0,be.useSelector)(k=>C(k),be.shallowEqual),{push:_}=(0,j.useHistory)(),{trackUsage:L}=(0,R.useTracking)(),{formatMessage:Y}=(0,$.useIntl)(),{getPlugin:se}=(0,R.useStrapiApp)(),oe=se(V.Z).apis.forms,Ne=oe.components.inputs,{addAttribute:G,addCustomFieldAttribute:Le,addCreatedComponentToDynamicZone:Q,allComponentsCategories:w,changeDynamicZoneComponents:E,contentTypes:Ie,components:Ue,createSchema:Oe,deleteCategory:xt,deleteData:Ge,editCategory:At,editCustomFieldAttribute:Zt,submitData:Ft,modifiedData:ee,nestedComponents:St,setModifiedData:qt,sortedContentTypesList:Nt,updateSchema:Lt,reservedNames:Te}=(0,Ee.Z)(),{componentToCreate:je,formErrors:ve,initialData:re,isCreatingComponentWhileAddingAField:xe,modifiedData:I}=z,Z=y==="contentType"||y==="component"?[y]:[y,N];(0,a.useEffect)(()=>{if(T){const k=Nt.filter(Dt);p==="editCategory"&&qt(),r==="edit"&&p==="attribute"&&y==="contentType"&&L("willEditFieldOfContentType");const ue=[...Z,"schema","attributes"],me=ct(O()(ee,ue,[]),f)||null;if(p==="editCategory"&&r==="edit"&&A({type:K._H,modalType:p,actionType:r,data:{name:m}}),p==="contentType"&&r==="create"&&A({type:K._H,modalType:p,actionType:r,data:{draftAndPublish:!0},pluginOptions:{}}),p==="contentType"&&r==="edit"){const{displayName:U,draftAndPublish:X,kind:pe,pluginOptions:te,pluralName:Oo,singularName:Do}=O()(ee,[...Z,"schema"],{displayName:null,pluginOptions:{},singularName:null,pluralName:null});A({type:K._H,actionType:r,modalType:p,data:{displayName:U,draftAndPublish:X,kind:pe,pluginOptions:te,pluralName:Oo,singularName:Do}})}if(p==="component"&&r==="edit"){const U=O()(ee,Z,{});A({type:K._H,actionType:r,modalType:p,data:{displayName:U.schema.displayName,category:U.category}})}if(p==="addComponentToDynamicZone"&&r==="edit"){const U={...me,components:[],name:f,createComponent:!1,componentToCreate:{type:"component"}};A({type:K.VZ,attributeToEdit:U})}if(u){const X={...ct(O()(ee,ue,[]),i),name:i};u==="component"&&r==="edit"&&(X.repeatable||Sn()(X,"repeatable",!1)),A(p==="customField"?{type:K.OY,customField:B,isEditing:r==="edit",modifiedDataToSetForEditing:X,forTarget:y}:{type:K.S0,attributeType:u,nameToSetForRelation:O()(k,["0","title"],"error"),targetUid:O()(k,["0","uid"],"error"),isEditing:r==="edit",modifiedDataToSetForEditing:X,step:F,forTarget:y})}}else A({type:K.c2})},[r,i,u,m,f,y,T,p]);const S=p==="contentType",D=p==="component",H=p==="attribute",ie=p==="customField",le=u==="component"&&H,de=r==="create",fe=O()(I,"createComponent",!1)||xe,De=F==="1",hn=p==="editCategory",Tn=p==="chooseAttribute",It=(0,Se.E)(I.displayName||""),Ot=O()(ee,[...Z,"schema","attributes"],null),vo=async()=>{let k;const ue=fe&&F==="1"?O()(I,"componentToCreate",{}):I;if(S)k=Re.contentType.schema(Object.keys(Ie),r==="edit",O()(ee,[...Z,"uid"],null),Te,oe,Ie);else if(D)k=Re.component.schema(Object.keys(Ue),I.category||"",Te,r==="edit",O()(ee,[...Z,"uid"],null),oe);else if(ie)k=Re.customField.schema({schemaAttributes:O()(ee,[...Z,"schema","attributes"],[]),attributeType:B.type,reservedNames:Te,schemaData:{modifiedData:I,initialData:re},ctbFormsAPI:oe,customFieldValidator:B.options?.validator});else if(le&&fe&&De)k=Re.component.schema(Object.keys(Ue),O()(I,"componentToCreate.category",""),Te,oe);else if(H&&!De){const me=u==="relation"?"relation":I.type;let U=[];if(me==="relation"){const X=O()(I,["target"],null);U=O()(Ie,[X,"schema","attributes"],[]).filter(({name:te})=>r!=="edit"?!0:te!==re.targetAttribute)}k=Re.attribute.schema(O()(ee,Z,{}),me,Te,U,{modifiedData:I,initialData:re},oe)}else if(hn)k=Re.editCategory.schema(w,re,oe);else if(De&&fe)k=Re.component.schema(Object.keys(Ue),O()(I,"componentToCreate.category",""),Te,oe);else return;await k.validate(ue,{abortEarly:!1})},vn=(0,a.useCallback)(({target:{name:k,value:ue,type:me,...U}})=>{const X=["enumName","max","min","maxLength","minLength","regex","default"];let pe;X.includes(k)&&ue===""?pe=null:pe=ue;const te=Object.assign({},ve);k==="max"&&delete te.min,k==="maxLength"&&delete te.minLength,delete te[k],A({type:K.Ey,errors:te}),A({type:K.P0,keys:k.split("."),value:pe,...U})},[A,ve]),ce=async(k,ue=de)=>{k.preventDefault();try{await vo(),Eo(ue);const me=y==="components"?N:It;if(S)if(de)Oe({...I,kind:v},p,It),_({pathname:`/plugins/${V.Z}/content-types/${It}`}),t({forTarget:y,targetUid:me});else{ba(ee,I)?(e(),Ft(I)):W({type:"warning",message:{id:"notification.contentType.relations.conflict"}});return}else if(p==="component")if(de){const U=(0,Se.N)(I.displayName,I.category),{category:X,...pe}=I;Oe(pe,"component",U,X),_({pathname:`/plugins/${V.Z}/component-categories/${X}/${U}`}),t({forTarget:y,targetUid:U})}else{Lt(I,p,N),e();return}else if(hn){if(Pe()(re.name)===Pe()(I.name)){e();return}At(re.name,I);return}else if(ie){const U={attributeToSet:{...I,customField:c},forTarget:y,targetUid:N,initialAttribute:re};r==="edit"?Zt(U):Le(U),ue?t({forTarget:y,targetUid:me}):e();return}else if(H&&!fe){if(u==="dynamiczone"){G(I,y,N,r==="edit",re),de?(A({type:K.I}),M.current._handlers.setSelectedTabIndex(0),o({dynamicZoneTarget:I.name})):e();return}if(!le){G(I,y,N,r==="edit",re),ue?t({forTarget:y,targetUid:me}):e();return}if(De){s(),A({type:K.yC,forTarget:y});return}G(I,y,N,r==="edit",re,!0),ue?t({forTarget:y,targetUid:N}):e()}else if(H&&fe){if(De){L("willCreateComponentFromAttributesModal"),A({type:K.oF,forTarget:y}),s();return}const{category:U,type:X,...pe}=je,te=(0,Se.N)(je.displayName,U);Oe(pe,X,te,U,fe),G(I,y,N,!1),A({type:K.c2}),ue?t({forTarget:"components",targetUid:te}):e();return}else{if(De)if(fe){const{category:U,type:X,...pe}=I.componentToCreate,te=(0,Se.N)(I.componentToCreate.displayName,U);Oe(pe,X,te,U,fe),Q(f,[te]),t({forTarget:"components",targetUid:te})}else E(f,I.components),e();else console.error("This case is not handled");return}A({type:K.c2})}catch(me){const U=(0,R.getYupInnerErrors)(me);console.log({err:me,errors:U}),A({type:K.Ey,errors:U})}},Co=()=>{window.confirm(Y({id:"window.confirm.close-modal.file",defaultMessage:"Are you sure? Your changes will be lost."}))&&(e(),A({type:K.c2}))},Cn=()=>{(0,q.isEqual)(I,re)?(e(),A({type:K.c2})):Co()},Mo=k=>{if(k==="advanced"){if(S){L("didSelectContentTypeSettings");return}y==="contentType"&&L("didSelectContentTypeFieldSettings")}},Eo=k=>{p==="attribute"&&y==="contentType"&&u!=="dynamiczone"&&k&&L("willAddMoreFieldToContentType")},Ro=()=>!!(p==="editCategory"||p==="component"||Zn()(I,"createComponent")),xo=ha(y,N,St);if(!T||!p)return null;const Mn=O()(Re,[p,"form"],{advanced:()=>({sections:[]}),base:()=>({sections:[]})}),Ao=y==="components"||y==="component",En={customInputs:{"allowed-types-select":In,"boolean-radio-group":Jn,"checkbox-with-number-field":Qn,"content-type-radio-group":_n,"radio-group":tt,relation:la,"select-category":da,"select-component":ca,"select-components":ma,"select-default-boolean":Yn,"select-number":ga,"select-date":pa,"toggle-draft-publish":zn,"text-plural":ua,"text-singular":fa,"textarea-enum":ya,...Ne},componentToCreate:je,dynamicZoneTarget:f,formErrors:ve,isAddingAComponentToAnotherComponent:Ao,isCreatingComponentWhileAddingAField:xe,mainBoxHeader:O()(ee,[...Z,"schema","displayName"],""),modifiedData:I,naturePickerType:y,isCreating:de,targetUid:N,forTarget:y},Rn=Mn.advanced({data:I,type:u,step:F,actionType:r,attributes:Ot,extensions:oe,forTarget:y,contentTypeSchema:ee.contentType||{},customField:B}).sections,xn=Mn.base({data:I,type:u,step:F,actionType:r,attributes:Ot,extensions:oe,forTarget:y,contentTypeSchema:ee.contentType||{},customField:B}).sections,Zo=Xt(xn),Fo=Xt(Rn),So=Object.keys(ve).some(k=>Zo.includes(k)),qo=Object.keys(ve).some(k=>Fo.includes(k)),No=O()(Ie,[N,"schema","kind"]),Lo=()=>r==="edit"&&Ot.every(({name:k})=>k!==I?.name),Io=()=>{Lo()&&L("didEditFieldNameOnContentType")};return a.createElement(l.ModalLayout,{onClose:Cn,labelledBy:"title"},a.createElement(Vn,{actionType:r,attributeName:i,categoryName:m,contentTypeKind:v,dynamicZoneTarget:f,modalType:p,forTarget:y,targetUid:N,attributeType:u,customFieldUid:c}),Tn&&a.createElement(Wn,{attributes:xo,forTarget:y,kind:No||"collectionType"}),!Tn&&a.createElement("form",{onSubmit:ce},a.createElement(l.ModalBody,null,a.createElement(l.TabGroup,{label:"todo",id:"tabs",variant:"simple",ref:M,onTabChange:k=>{k===1&&Mo("advanced")}},a.createElement(l.Flex,{justifyContent:"space-between"},a.createElement(Kn,{actionType:r,forTarget:y,kind:v,step:F,modalType:p,attributeType:u,attributeName:i,customField:B}),a.createElement(l.Tabs,null,a.createElement(l.Tab,{hasError:So},Y({id:(0,d.Z)("popUpForm.navContainer.base"),defaultMessage:"Basic settings"})),a.createElement(l.Tab,{hasError:qo,disabled:Ro()},Y({id:(0,d.Z)("popUpForm.navContainer.advanced"),defaultMessage:"Advanced settings"})))),a.createElement(l.Divider,null),a.createElement(l.Box,{paddingTop:6},a.createElement(l.TabPanels,null,a.createElement(l.TabPanel,null,a.createElement(l.Flex,{direction:"column",alignItems:"stretch",gap:6},a.createElement(Yt,{form:xn,formErrors:ve,genericInputProps:En,modifiedData:I,onChange:vn}))),a.createElement(l.TabPanel,null,a.createElement(l.Flex,{direction:"column",alignItems:"stretch",gap:6},a.createElement(Yt,{form:Rn,formErrors:ve,genericInputProps:En,modifiedData:I,onChange:vn}))))))),a.createElement(l.ModalFooter,{endActions:a.createElement(Gn,{deleteCategory:xt,deleteContentType:Ge,deleteComponent:Ge,categoryName:re.name,isAttributeModal:p==="attribute",isCustomFieldModal:p==="customField",isComponentToDzModal:p==="addComponentToDynamicZone",isComponentAttribute:u==="component",isComponentModal:p==="component",isContentTypeModal:p==="contentType",isCreatingComponent:r==="create",isCreatingDz:r==="create",isCreatingComponentAttribute:I.createComponent||!1,isCreatingComponentInDz:I.createComponent||!1,isCreatingComponentWhileAddingAField:xe,isCreatingContentType:r==="create",isEditingAttribute:r==="edit",isDzAttribute:u==="dynamiczone",isEditingCategory:p==="editCategory",isInFirstComponentStep:F==="1",onSubmitAddComponentAttribute:ce,onSubmitAddComponentToDz:ce,onSubmitCreateComponent:ce,onSubmitCreateContentType:ce,onSubmitCreateDz:ce,onSubmitEditAttribute:ce,onSubmitEditCategory:ce,onSubmitEditComponent:ce,onSubmitEditContentType:ce,onSubmitEditCustomFieldAttribute:ce,onSubmitEditDz:ce,onClickFinish:Io}),startActions:a.createElement(l.Button,{variant:"tertiary",onClick:Cn},Y({id:"app.components.Button.cancel",defaultMessage:"Cancel"}))})))},rn=e=>e.reduce((t,o)=>(t[o.uid]=o,t),{}),Oa=(e,t,o,s)=>{const r=t.reduce((c,m)=>{const f=O()(o,m,{});return c[m]=f,c},{});return{[s?"contentType":"component"]:e,components:r}},Da=(e,t)=>{const o=Object.keys(e).map(s=>(0,q.get)(e,[s,...t],""));return(0,Me.Z)(o)},ka=g(13339);const Pa=e=>{const t=Object.keys(e).reduce((o,s)=>{const r=(0,q.get)(e,[s,"schema","attributes"],[]),i=Ba(r);return[...o,...i]},[]);return(0,Me.Z)(t)},Ba=e=>e.reduce((t,o)=>{const{type:s,component:r}=o;return s==="component"&&t.push(r),t},[]);var sn=Pa;const $a=e=>{const t=Object.keys(e).reduce((o,s)=>{const r=O()(e,[s],{}),i=r.uid;return Ua(r)&&o.push(i),o},[]);return(0,Me.Z)(t)},Ua=e=>O()(e,["schema","attributes"],[]).some(o=>{const{type:s}=o;return s==="component"}),ja=(e,t)=>{const o=Object.keys(e).filter(s=>{const r=(0,q.get)(e,s,{}),i=(0,q.get)(t,s,{}),u=(0,q.get)(r,["isTemporary"],!1),c=!(0,q.isEqual)(r,i);return u||c});return(0,Me.Z)(o)},wa=(e,t)=>{const o=un((0,q.get)(e,"schema.attributes",[]),t),s=(0,q.get)(e,"isTemporary",!1)?{tmpUID:e.uid}:{uid:e.uid};return Object.assign({},s,{category:e.category},(0,q.omit)(e.schema,"attributes"),{attributes:o})},ln=(e,t=!1)=>{const o=(0,q.get)(e,"uid",null),s=un((0,q.get)(e,"schema.attributes",[]),o),r=t?{category:(0,q.get)(e,"category","")}:{},i=Object.assign(r,(0,q.omit)(e.schema,"attributes"),{attributes:s});return delete i.uid,delete i.isTemporary,delete i.visible,delete i.restrictRelationsTo,i},un=(e,t)=>e.reduce((o,{name:s,...r})=>{const i=r,u=i.target===t,c=i.type==="relation",m=(0,q.get)(i,"targetAttribute",null);if(!u)if(c){const f=Object.assign({},i,{targetAttribute:dn(m)});o[s]=Ve(f)}else o[s]=Ve(i);if(u){const f=i.target,y=Object.assign({},i,{target:f,targetAttribute:dn(m)});o[s]=Ve(y)}if(i.customField){const f={...i,type:"customField"};o[s]=Ve(f)}return o},{}),dn=e=>e==="-"?null:e,Ve=e=>Object.keys(e).reduce((t,o)=>(e[o]!==null&&o!=="plugin"&&(t[o]=e[o]),t),{}),Wa=(e,t,o,s=!1)=>ja(e,t).map(u=>{const c=(0,q.get)(e,u,{});return wa(c,o,s)}),za=e=>(0,q.sortBy)(Object.keys(e).map(t=>({visible:e[t].schema.visible,name:t,title:e[t].schema.displayName,plugin:e[t].plugin||null,uid:t,to:`/plugins/${V.Z}/content-types/${t}`,kind:e[t].schema.kind,restrictRelationsTo:e[t].schema.restrictRelationsTo})).filter(t=>t!==null),t=>(0,q.camelCase)(t.title)),cn="did-not-kill-server",Va="server is down";function Be(e,t){return new Promise(o=>{fetch(`${strapi.backendURL}/_health`,{method:"HEAD",mode:"no-cors",headers:{"Content-Type":"application/json","Keep-Alive":!1}}).then(s=>{if(s.status>=400)throw new Error(Va);if(!t)throw new Error(cn);o(e)}).catch(s=>{setTimeout(()=>Be(e,s.message!==cn).then(o),100)})})}var Ga=e=>Object.values(e.attributes).filter(({type:o})=>o==="dynamiczone").every(({components:o})=>Array.isArray(o)&&o.length>0),J=g(31947),Ha=g(54370);const Ka=()=>e=>e[`${V.Z}_dataManagerProvider`]||Ha.E;var Ya=()=>(0,on.P1)(Ka(),e=>e);const Xa=e=>Object.keys(e).reduce((t,o)=>{const s=e[o].schema;return t[o]={...e[o],schema:{...s,attributes:Ja(s.attributes)}},t},{}),Ja=e=>Object.keys(e).reduce((t,o)=>(t.push({...e[o],name:o}),t),[]);var mn=Xa;const Rt=({children:e,components:t,contentTypes:o,isLoading:s,isLoadingForDataToBeSet:r,initialData:i,modifiedData:u,reservedNames:c})=>{const m=(0,be.useDispatch)(),f=(0,R.useNotification)(),{lockAppWithAutoreload:y,unlockAppWithAutoreload:p}=(0,R.useAutoReloadOverlayBlocker)(),{setCurrentStep:T}=(0,R.useGuidedTour)(),{getPlugin:v}=(0,R.useStrapiApp)(),{apis:F}=v(V.Z),{autoReload:N}=(0,R.useAppInfos)(),{formatMessage:B}=(0,$.useIntl)(),{trackUsage:M}=(0,R.useTracking)(),{refetchPermissions:C}=(0,R.useRBACProvider)(),{pathname:A}=(0,j.useLocation)(),{onCloseModal:W}=(0,Ce.Z)(),z=(0,j.useRouteMatch)(`/plugins/${V.Z}/content-types/:uid`),_=(0,j.useRouteMatch)(`/plugins/${V.Z}/component-categories/:categoryUid/:componentUid`),L=(0,R.useFetchClient)(),{put:Y,post:se,del:$e}=L,oe=(0,a.useRef)();oe.current=B;const Ne=N,G=z!==null,Le=G?"contentType":"component",Q=G?(0,q.get)(z,"params.uid",null):(0,q.get)(_,"params.componentUid",null),w=(0,a.useRef)(),E=G?"content-types":"components";w.current=async()=>{try{const[{data:{data:Z}},{data:{data:S}},{data:D}]=await Promise.all(["components","content-types","reserved-names"].map(fe=>L.get(`/${V.Z}/${fe}`))),H=rn(Z),ie=mn(H),le=rn(S),de=mn(le);m({type:J.Id,components:ie,contentTypes:de,reservedNames:D})}catch(Z){console.error({err:Z}),f({type:"warning",message:{id:"notification.error"}})}},(0,a.useEffect)(()=>(w.current(),()=>{m({type:J.Zl})}),[]),(0,a.useEffect)(()=>{!s&&Q&&Te()},[s,A,Q]),(0,a.useEffect)(()=>{N||f({type:"info",message:{id:(0,d.Z)("notification.info.autoreaload-disable")}})},[N,f]);const Ie=(Z,S,D,H=!1,ie,le=!1)=>{const de=H?J.JO:J.gz;m({type:de,attributeToSet:Z,forTarget:S,targetUid:D,initialAttribute:ie,shouldAddComponentToData:le})},Ue=({attributeToSet:Z,forTarget:S,targetUid:D,initialAttribute:H})=>{m({type:J.Ir,attributeToSet:Z,forTarget:S,targetUid:D,initialAttribute:H})},Oe=({attributeToSet:Z,forTarget:S,targetUid:D,initialAttribute:H})=>{m({type:J.Ly,attributeToSet:Z,forTarget:S,targetUid:D,initialAttribute:H})},xt=(Z,S)=>{m({type:J.Uu,dynamicZoneTarget:Z,componentsToAdd:S})},Ge=(Z,S,D,H,ie=!1)=>{const le=S==="contentType"?J.Sh:J.VR;m({type:le,data:Z,componentCategory:H,schemaType:S,uid:D,shouldAddComponentToData:ie})},At=(Z,S)=>{m({type:J.o_,dynamicZoneTarget:Z,newComponents:S})},Zt=(Z,S,D="")=>{const H=Z==="components"?J.lw:J.ai;Z==="contentType"&&M("willDeleteFieldOfContentType"),m({type:H,mainDataKey:Z,attributeToRemoveName:S,componentUid:D})},Ft=async Z=>{try{const S=`/${V.Z}/component-categories/${Z}`,D=window.confirm(B({id:(0,d.Z)("popUpWarning.bodyMessage.category.delete")}));W(),D&&(y(),await $e(S),await Be(!0),await p(),await xe())}catch(S){console.error({err:S}),f({type:"warning",message:{id:"notification.error"}})}finally{p()}},ee=async()=>{try{const Z=`/${V.Z}/${E}/${Q}`,S=(0,q.get)(u,[Le,"isTemporary"],!1),D=window.confirm(B({id:(0,d.Z)(`popUpWarning.bodyMessage.${G?"contentType":"component"}.delete`)}));if(W(),D){if(S){m({type:J.Ap});return}y(),await $e(Z),await Be(!0),await p(),await xe()}}catch(Z){console.error({err:Z}),f({type:"warning",message:{id:"notification.error"}})}finally{p()}},St=async(Z,S)=>{try{const D=`/${V.Z}/component-categories/${Z}`;W(),y(),await Y(D,S),await Be(!0),await p(),await xe()}catch(D){console.error({err:D}),f({type:"warning",message:{id:"notification.error"}})}finally{p()}},qt=()=>{const Z=Object.assign({},t,u.components);if(!G){const D=(0,q.get)(u,"component",{});(0,q.set)(Z,(0,q.get)(D,["uid"],""),D)}const S=$a(Z);return(0,Me.Z)(S)},Nt=()=>{const Z=sn(t),S=sn(u.components||{});return(0,Me.Z)([...S,...Z])},Lt=(Z,S)=>{m({type:J.NG,dzName:Z,componentToRemoveIndex:S})},Te=()=>{const Z=G?o:t,S=(0,q.get)(Z,Q,{schema:{attributes:[]}}),D=(0,ka.Z)(S.schema.attributes,t),H=Oa(S,D,t,G),ie=(0,q.get)(S,"isTemporary",!1)&&(0,q.size)((0,q.get)(S,"schema.attributes",[]))===0;m({type:J.xx,schemaToSet:H,hasJustCreatedSchema:ie})},je=(0,a.useMemo)(()=>{const Z=G?o:t;return Q==="create-content-type"?!1:!Object.keys(Z).includes(Q)&&!s},[t,o,Q,G,s]),ve=(0,a.useMemo)(()=>{const Z=Object.keys(o).filter(S=>(0,q.get)(o,[S,"schema","visible"],!0)).sort();return(0,q.get)(Z,"0","create-content-type")},[o]);if(je)return a.createElement(j.Redirect,{to:`/plugins/${V.Z}/content-types/${ve}`});const re=async Z=>{try{const S=(0,q.get)(u,[Le,"isTemporary"],!1),D={components:Wa(u.components,t,Q,S)};if(G){const le=F.forms.mutateContentTypeSchema({...ln(u.contentType),...Z},i.contentType);if(!Ga(le)){f({type:"warning",message:{id:(0,d.Z)("notification.error.dynamiczone-min.validation"),defaultMessage:"At least one component is required in a dynamic zone to be able to save a content type"}});return}D.contentType=le,M("willSaveContentType")}else D.component=ln(u.component,!0),M("willSaveComponent");y();const H=`/${V.Z}/${E}`,ie=S?H:`${H}/${Q}`;if(S?await se(ie,D):await Y(ie,D),await Be(!0),await p(),S&&(i.contentType?.schema.kind==="collectionType"||i.contentType?.schema.kind==="singleType")&&T("contentTypeBuilder.success"),G){M("didSaveContentType");const le=(0,q.get)(D,["contentType","schema","name"],""),de=(0,q.get)(i,["contentType","schema","name"],"");!S&&le!==de&&M("didEditNameOfContentType")}else M("didSaveComponent");await xe()}catch(S){G||M("didNotSaveComponent"),console.error({err:S.response}),f({type:"warning",message:{id:"notification.error"}})}finally{p()}},xe=async()=>{await C()},I=(Z,S,D)=>{m({type:J.bi,data:Z,schemaType:S,uid:D})};return a.createElement(we.Z.Provider,{value:{addAttribute:Ie,addCustomFieldAttribute:Ue,addCreatedComponentToDynamicZone:xt,allComponentsCategories:Da(t,["category"]),changeDynamicZoneComponents:At,components:t,componentsGroupedByCategory:(0,q.groupBy)(t,"category"),componentsThatHaveOtherComponentInTheirAttributes:qt(),contentTypes:o,createSchema:Ge,deleteCategory:Ft,deleteData:ee,editCategory:St,editCustomFieldAttribute:Oe,isInDevelopmentMode:Ne,initialData:i,isInContentTypeView:G,modifiedData:u,nestedComponents:Nt(),removeAttribute:Zt,removeComponentFromDynamicZone:Lt,reservedNames:c,setModifiedData:Te,sortedContentTypesList:za(o),submitData:re,updateSchema:I}},r?a.createElement(R.LoadingIndicatorPage,null):a.createElement(a.Fragment,null,e,Ne&&a.createElement(Ia,null)))};Rt.defaultProps={components:{}},Rt.propTypes={children:n().node.isRequired,components:n().object,contentTypes:n().object.isRequired,isLoading:n().bool.isRequired,isLoadingForDataToBeSet:n().bool.isRequired,initialData:n().object.isRequired,modifiedData:n().object.isRequired,reservedNames:n().object.isRequired};const Qa=Ya(),_a=(0,be.connect)(Qa,null);var eo=(0,ke.compose)(_a)((0,a.memo)(Rt)),to=g(51216);const pn={actionType:null,attributeName:null,attributeType:null,categoryName:null,dynamicZoneTarget:null,forTarget:null,modalType:null,isOpen:!1,kind:null,step:null,targetUid:null,customFieldUid:null},gn=({children:e})=>{const[t,o]=(0,a.useState)(pn),{trackUsage:s}=(0,R.useTracking)(),r=({attributeType:M,customFieldUid:C})=>{o(A=>({...A,actionType:"create",modalType:"customField",attributeType:M,customFieldUid:C}))},i=({attributeType:M,step:C})=>{t.forTarget==="contentType"&&s("didSelectContentTypeFieldType",{type:M}),o(A=>({...A,actionType:"create",modalType:"attribute",step:C,attributeType:M}))},u=({dynamicZoneTarget:M,targetUid:C})=>{o(A=>({...A,dynamicZoneTarget:M,targetUid:C,modalType:"addComponentToDynamicZone",forTarget:"contentType",step:"1",actionType:"edit",isOpen:!0}))},c=({forTarget:M,targetUid:C})=>{o(A=>({...A,actionType:"create",forTarget:M,targetUid:C,modalType:"chooseAttribute",isOpen:!0}))},m=M=>{o(C=>({...C,...M,isOpen:!0}))},f=M=>{o(C=>({...C,categoryName:M,actionType:"edit",modalType:"editCategory",isOpen:!0}))},y=({forTarget:M,targetUid:C,attributeName:A,attributeType:W,customFieldUid:z})=>{o(_=>({..._,modalType:"customField",customFieldUid:z,actionType:"edit",forTarget:M,targetUid:C,attributeName:A,attributeType:W,isOpen:!0}))},p=({forTarget:M,targetUid:C,attributeName:A,attributeType:W,step:z})=>{o(_=>({..._,modalType:"attribute",actionType:"edit",forTarget:M,targetUid:C,attributeName:A,attributeType:W,step:z,isOpen:!0}))},T=({modalType:M,forTarget:C,targetUid:A,kind:W})=>{o(z=>({...z,modalType:M,actionType:"edit",forTarget:C,targetUid:A,kind:W,isOpen:!0}))},v=()=>{o(pn)},F=({forTarget:M,targetUid:C})=>{o(A=>({...A,forTarget:M,targetUid:C,modalType:"chooseAttribute"}))},N=()=>{o(M=>({...M,attributeType:"component",modalType:"attribute",step:"2"}))},B=({dynamicZoneTarget:M})=>{o(C=>({...C,dynamicZoneTarget:M,modalType:"addComponentToDynamicZone",actionType:"create",step:"1",attributeType:null,attributeName:null}))};return a.createElement(to.Z.Provider,{value:{...t,onClickSelectField:i,onClickSelectCustomField:r,onCloseModal:v,onNavigateToChooseAttributeModal:F,onNavigateToAddCompoToDZModal:B,onOpenModalAddComponentsToDZ:u,onNavigateToCreateComponentStep2:N,onOpenModalAddField:c,onOpenModalCreateSchema:m,onOpenModalEditCategory:f,onOpenModalEditField:p,onOpenModalEditCustomField:y,onOpenModalEditSchema:T,setFormModalNavigationState:o}},e)};gn.propTypes={children:n().node.isRequired};var no=gn;const ao=(0,a.lazy)(()=>g.e(5905).then(g.bind(g,84015)));var oo=()=>{const{url:e}=(0,j.useRouteMatch)(),{categoryUid:t}=(0,j.useParams)();return a.createElement(a.Suspense,{fallback:a.createElement(R.LoadingIndicatorPage,null)},a.createElement(j.Switch,null,a.createElement(j.Route,{path:`${e}/:componentUid`},a.createElement(ao,{categoryId:t}))))},ro=g(61590),so=g(64669),io=g(77013),lo=g(79318),uo=g(28832),fn=g(66618),co=g(86834),mo=g.n(co),po=g(98978),yn=g.n(po),go=g(89793),fo=g.n(go),yo=g(58469),bo=()=>{const{components:e,componentsGroupedByCategory:t,contentTypes:o,isInDevelopmentMode:s,sortedContentTypesList:r,modifiedData:i,initialData:u}=(0,Ee.Z)(),c=(0,R.useNotification)(),{trackUsage:m}=(0,R.useTracking)(),[f,y]=(0,a.useState)(""),{onOpenModalCreateSchema:p,onOpenModalEditCategory:T}=(0,Ce.Z)(),v=yn()(Object.keys(t).map(L=>({name:L,title:L,isEditable:s,onClickEdit(Y,se){Y.stopPropagation(),F?T(se.name):C()},links:yn()(t[L].map(Y=>({name:Y.uid,to:`/plugins/${V.Z}/component-categories/${L}/${Y.uid}`,title:Y.schema.displayName})),Y=>Y.title)})),L=>L.title),F=!Object.keys(o).some(L=>o[L].isTemporary===!0)&&!Object.keys(e).some(L=>e[L].isTemporary===!0)&&fo()(i,u),N=()=>{F?(m("willCreateContentType"),p({modalType:"contentType",kind:"collectionType",actionType:"create",forTarget:"contentType"})):C()},B=()=>{F?(m("willCreateSingleType"),p({modalType:"contentType",kind:"singleType",actionType:"create",forTarget:"contentType"})):C()},M=()=>{F?(m("willCreateComponent"),p({modalType:"component",kind:null,actionType:"create",forTarget:"component"})):C()},C=()=>{c({type:"info",message:{id:`${(0,d.Z)("notification.info.creating.notSaved")}`,defaultMessage:"Please save your work before creating a new collection type or component"}})},A=r.filter(L=>L.visible),W=[{name:"models",title:{id:`${(0,d.Z)("menu.section.models.name")}`,defaultMessage:"Collection Types"},customLink:s&&{id:`${(0,d.Z)("button.model.create")}`,defaultMessage:"Create new collection type",onClick:N},links:A.filter(L=>L.kind==="collectionType")},{name:"singleTypes",title:{id:`${(0,d.Z)("menu.section.single-types.name")}`,defaultMessage:"Single Types"},customLink:s&&{id:`${(0,d.Z)("button.single-types.create")}`,defaultMessage:"Create new single type",onClick:B},links:A.filter(L=>L.kind==="singleType")},{name:"components",title:{id:`${(0,d.Z)("menu.section.components.name")}`,defaultMessage:"Components"},customLink:s&&{id:`${(0,d.Z)("button.component.create")}`,defaultMessage:"Create a new component",onClick:M},links:v}],z=L=>f?(0,yo.ZP)(L,Pe()(f),{keys:[Y=>Pe()(Y.title)]}):L;return{menu:(()=>W.map(L=>L.links.some(se=>!mo()(se.links))?{...L,links:L.links.map(se=>({...se,links:z(se.links)}))}:{...L,links:z(L.links)}))(),searchValue:f,onSearchChange:y}},ho=()=>{const{menu:e,searchValue:t,onSearchChange:o}=bo(),{formatMessage:s}=(0,$.useIntl)();return a.createElement(ro.m,{ariaLabel:s({id:`${(0,d.Z)("plugin.name")}`,defaultMessage:"Content-Types Builder"})},a.createElement(so.p,{searchable:!0,value:t,onClear:()=>o(""),onChange:r=>o(r.target.value),label:s({id:`${(0,d.Z)("plugin.name")}`,defaultMessage:"Content-Types Builder"}),searchLabel:s({id:"global.search",defaultMessage:"Search"})}),a.createElement(io.Z,null,e.map(r=>a.createElement(a.Fragment,{key:r.name},a.createElement(lo.D,{label:s({id:r.title.id,defaultMessage:r.title.defaultMessage}),collapsable:!0,badgeLabel:r.links.length.toString()},r.links.map(i=>i.links?a.createElement(uo.z,{key:i.name,label:he()(i.title)},i.links.map(u=>a.createElement(fn.E,{as:j.NavLink,to:u.to,active:u.active,key:u.name,isSubSectionChild:!0},he()(s({id:u.name,defaultMessage:u.title}))))):a.createElement(fn.E,{as:j.NavLink,to:i.to,active:i.active,key:i.name},he()(s({id:i.name,defaultMessage:i.title}))))),r.customLink&&a.createElement(l.Box,{paddingLeft:7},a.createElement(l.TextButton,{onClick:r.customLink.onClick,startIcon:a.createElement(ae.Plus,null),marginTop:2},s({id:r.customLink.id,defaultMessage:r.customLink.defaultMessage})))))))};const bn=(0,a.lazy)(()=>g.e(5905).then(g.bind(g,84015)));var To=()=>{const{formatMessage:e}=(0,$.useIntl)(),t=e({id:`${V.Z}.plugin.name`,defaultMessage:"Content Types Builder"}),{startSection:o}=(0,R.useGuidedTour)(),s=(0,a.useRef)(o);return(0,a.useEffect)(()=>{s.current&&s.current("contentTypeBuilder")},[]),a.createElement(R.CheckPagePermissions,{permissions:P.Z.main},a.createElement(ye.Helmet,{title:t}),a.createElement(no,null,a.createElement(eo,null,a.createElement(l.Layout,{sideNav:a.createElement(ho,null)},a.createElement(a.Suspense,{fallback:a.createElement(R.LoadingIndicatorPage,null)},a.createElement(j.Switch,null,a.createElement(j.Route,{path:`/plugins/${V.Z}/content-types/create-content-type`,component:bn}),a.createElement(j.Route,{path:`/plugins/${V.Z}/content-types/:uid`,component:bn}),a.createElement(j.Route,{path:`/plugins/${V.Z}/component-categories/:categoryUid`,component:oo})))))))}},92318:function(Ae,ne,g){var a=g(25158);const j=ye=>`${a.Z}.${ye}`;ne.Z=j}}]);
@@ -0,0 +1,3 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[1495],{97744:function(Y,c,i){i.r(c),i.d(c,{default:function(){return P}});var e=i(32735),g=i(5636),n=i(13478),t=i(39161),I=i(57269),Z=i(60216),d=i.n(Z),C=i(83292),s=i(85684);const F=C.default.a`
2
+ color: ${({theme:l})=>l.colors.primary600};
3
+ `,p=({config:l})=>{const{formatMessage:a}=(0,g.useIntl)();return e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:4},e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:1},e.createElement(t.Typography,{variant:"delta",as:"h2"},a({id:(0,s.Z)("Settings.email.plugin.title.config"),defaultMessage:"Configuration"})),e.createElement(t.Typography,null,a({id:(0,s.Z)("Settings.email.plugin.text.configuration"),defaultMessage:"The plugin is configured through the {file} file, checkout this {link} for the documentation."},{file:"./config/plugins.js",link:e.createElement(F,{href:"https://docs.strapi.io/developer-docs/latest/plugins/email.html",target:"_blank",rel:"noopener noreferrer"},a({id:(0,s.Z)("link"),defaultMessage:"Link"}))}))),e.createElement(t.Grid,{gap:5},e.createElement(t.GridItem,{col:6,s:12},e.createElement(t.TextInput,{name:"shipper-email",label:a({id:(0,s.Z)("Settings.email.plugin.label.defaultFrom"),defaultMessage:"Default sender email"}),placeholder:a({id:(0,s.Z)("Settings.email.plugin.placeholder.defaultFrom"),defaultMessage:"ex: Strapi No-Reply '<'no-reply@strapi.io'>'"}),disabled:!0,onChange:()=>{},value:l.settings.defaultFrom})),e.createElement(t.GridItem,{col:6,s:12},e.createElement(t.TextInput,{name:"response-email",label:a({id:(0,s.Z)("Settings.email.plugin.label.defaultReplyTo"),defaultMessage:"Default response email"}),placeholder:a({id:(0,s.Z)("Settings.email.plugin.placeholder.defaultReplyTo"),defaultMessage:"ex: Strapi '<'example@strapi.io'>'"}),disabled:!0,onChange:()=>{},value:l.settings.defaultReplyTo})),e.createElement(t.GridItem,{col:6,s:12},e.createElement(t.Select,{name:"email-provider",label:a({id:(0,s.Z)("Settings.email.plugin.label.provider"),defaultMessage:"Email provider"}),disabled:!0,onChange:()=>{},value:l.provider},e.createElement(t.Option,{value:l.provider},l.provider)))))};p.propTypes={config:d().shape({provider:d().string,settings:d().shape({defaultFrom:d().string,defaultReplyTo:d().string})}).isRequired};var x=p,f=i(5173),h=f.Ry().shape({email:f.Z_().email(n.translatedErrors.email).required(n.translatedErrors.required)}),R=i(59990);const A=async()=>{const{get:l}=(0,n.getFetchClient)(),{data:a}=await l("/email/settings");return a.config},L=async l=>{const{post:a}=(0,n.getFetchClient)();await a("/email/test",l)};var E=()=>{const{formatMessage:l}=(0,g.useIntl)();return e.createElement(e.Fragment,null,e.createElement(n.SettingsPageTitle,{name:l({id:(0,s.Z)("Settings.email.plugin.title"),defaultMessage:"Configuration"})}),e.createElement(t.HeaderLayout,{id:"title",title:l({id:(0,s.Z)("Settings.email.plugin.title"),defaultMessage:"Configuration"}),subtitle:l({id:(0,s.Z)("Settings.email.plugin.subTitle"),defaultMessage:"Test the settings for the Email plugin"})}))};const B=()=>e.createElement(n.CheckPagePermissions,{permissions:R.Z.settings},e.createElement(G,null)),G=()=>{const l=(0,n.useNotification)(),{formatMessage:a}=(0,g.useIntl)(),{lockApp:k,unlockApp:N}=(0,n.useOverlayBlocker)(),{notifyStatus:y}=(0,t.useNotifyAT)();(0,n.useFocusWhenNavigate)();const[u,D]=(0,e.useState)({}),[H,v]=(0,e.useState)(!1),[S,T]=(0,e.useState)(!1),[r,M]=(0,e.useState)(""),[O,b]=(0,e.useState)(!1),[V,$]=(0,e.useState)({provider:"",settings:{defaultFrom:"",defaultReplyTo:"",testAddress:""}});(0,e.useEffect)(()=>{v(!0),A().then(o=>{y(a({id:(0,s.Z)("Settings.email.plugin.notification.data.loaded"),defaultMessage:"Email settings data has been loaded"})),$(o);const m=o?.settings?.testAddress;m&&M(m)}).catch(()=>l({type:"warning",message:a({id:(0,s.Z)("Settings.email.plugin.notification.config.error"),defaultMessage:"Failed to retrieve the email config"})})).finally(()=>v(!1))},[a,l,y]),(0,e.useEffect)(()=>{u.email&&document.querySelector("#test-address-input").focus()},[u]),(0,e.useEffect)(()=>{h.validate({email:r},{abortEarly:!1}).then(()=>b(!0)).catch(()=>b(!1))},[r]);const j=o=>{M(()=>o.target.value)},W=async o=>{o.preventDefault();try{await h.validate({email:r},{abortEarly:!1}),T(!0),k(),L({to:r}).then(()=>{l({type:"success",message:a({id:(0,s.Z)("Settings.email.plugin.notification.test.success"),defaultMessage:"Email test succeeded, check the {to} mailbox"},{to:r})})}).catch(()=>{l({type:"warning",message:a({id:(0,s.Z)("Settings.email.plugin.notification.test.error"),defaultMessage:"Failed to send a test mail to {to}"},{to:r})})}).finally(()=>{T(!1),N()})}catch(m){D((0,n.getYupInnerErrors)(m))}};return H?e.createElement(t.Main,{labelledBy:"title","aria-busy":"true"},e.createElement(E,null),e.createElement(t.ContentLayout,null,e.createElement(n.LoadingIndicatorPage,null))):e.createElement(t.Main,{labelledBy:"title","aria-busy":S},e.createElement(E,null),e.createElement(t.ContentLayout,null,e.createElement("form",{onSubmit:W},e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:7},e.createElement(t.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(x,{config:V})),e.createElement(t.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:4},e.createElement(t.Typography,{variant:"delta",as:"h2"},a({id:(0,s.Z)("Settings.email.plugin.title.test"),defaultMessage:"Test email delivery"})),e.createElement(t.Grid,{gap:5,alignItems:"end"},e.createElement(t.GridItem,{col:6,s:12},e.createElement(t.TextInput,{id:"test-address-input",name:"test-address",onChange:j,label:a({id:(0,s.Z)("Settings.email.plugin.label.testAddress"),defaultMessage:"Recipient email"}),value:r,error:u.email?.id&&a({id:(0,s.Z)(`${u.email?.id}`),defaultMessage:"This is an invalid email"}),placeholder:a({id:(0,s.Z)("Settings.email.plugin.placeholder.testAddress"),defaultMessage:"ex: developer@example.com"})})),e.createElement(t.GridItem,{col:7,s:12},e.createElement(t.Button,{loading:S,disabled:!O,type:"submit",startIcon:e.createElement(I.Envelop,null)},a({id:(0,s.Z)("Settings.email.plugin.button.test-email"),defaultMessage:"Send test email"}))))))))))};var P=B}}]);