@strapi/upload 5.9.0 → 5.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. package/dist/admin/chunks/App-BJY37n6T.js +993 -0
  2. package/dist/admin/chunks/App-BJY37n6T.js.map +1 -0
  3. package/dist/admin/chunks/App-DcpAXZuK.mjs +972 -0
  4. package/dist/admin/chunks/App-DcpAXZuK.mjs.map +1 -0
  5. package/dist/admin/chunks/ConfigureTheView-Bwf5I3Vq.mjs +276 -0
  6. package/dist/admin/chunks/ConfigureTheView-Bwf5I3Vq.mjs.map +1 -0
  7. package/dist/admin/chunks/ConfigureTheView-CnUk2xYx.js +297 -0
  8. package/dist/admin/chunks/ConfigureTheView-CnUk2xYx.js.map +1 -0
  9. package/dist/admin/chunks/SettingsPage-7DUsHuJU.js +354 -0
  10. package/dist/admin/chunks/SettingsPage-7DUsHuJU.js.map +1 -0
  11. package/dist/admin/chunks/SettingsPage-DJe31MUj.mjs +332 -0
  12. package/dist/admin/chunks/SettingsPage-DJe31MUj.mjs.map +1 -0
  13. package/dist/admin/chunks/ca-Bi4qskZD.mjs +120 -0
  14. package/dist/{_chunks/es-CuWi2pOn.mjs.map → admin/chunks/ca-Bi4qskZD.mjs.map} +1 -1
  15. package/dist/admin/chunks/ca-pCOhKIn8.js +122 -0
  16. package/dist/{_chunks/es-DWFtw_h4.js.map → admin/chunks/ca-pCOhKIn8.js.map} +1 -1
  17. package/dist/admin/chunks/de-BlbX8Dl_.mjs +106 -0
  18. package/dist/{_chunks/pl-Cj8jChOO.mjs.map → admin/chunks/de-BlbX8Dl_.mjs.map} +1 -1
  19. package/dist/admin/chunks/de-DUjKLmOP.js +108 -0
  20. package/dist/{_chunks/de-uGb_Pkq7.js.map → admin/chunks/de-DUjKLmOP.js.map} +1 -1
  21. package/dist/admin/chunks/dk-C2ydE6A7.mjs +102 -0
  22. package/dist/{_chunks/ko-vJl9kPpn.mjs.map → admin/chunks/dk-C2ydE6A7.mjs.map} +1 -1
  23. package/dist/admin/chunks/dk-DSsspA0e.js +104 -0
  24. package/dist/{_chunks/dk-Cd8oFO-O.js.map → admin/chunks/dk-DSsspA0e.js.map} +1 -1
  25. package/dist/admin/chunks/en-Bw_Cb2IV.mjs +143 -0
  26. package/dist/{_chunks/en-oDx2Gnre.mjs.map → admin/chunks/en-Bw_Cb2IV.mjs.map} +1 -1
  27. package/dist/admin/chunks/en-UjETkewz.js +145 -0
  28. package/dist/{_chunks/en-BcOqhiNe.js.map → admin/chunks/en-UjETkewz.js.map} +1 -1
  29. package/dist/admin/chunks/es-CiEgbw0k.mjs +119 -0
  30. package/dist/{_chunks/ca-B2_I-q1t.mjs.map → admin/chunks/es-CiEgbw0k.mjs.map} +1 -1
  31. package/dist/admin/chunks/es-qAL8YcZz.js +121 -0
  32. package/dist/{_chunks/ca-BUpuZx8N.js.map → admin/chunks/es-qAL8YcZz.js.map} +1 -1
  33. package/dist/admin/chunks/fr-BL0Uyj6j.js +145 -0
  34. package/dist/admin/chunks/fr-BL0Uyj6j.js.map +1 -0
  35. package/dist/admin/chunks/fr-CwRt2FJu.mjs +143 -0
  36. package/dist/admin/chunks/fr-CwRt2FJu.mjs.map +1 -0
  37. package/dist/admin/chunks/he-BAmhVpfZ.js +77 -0
  38. package/dist/admin/chunks/he-BAmhVpfZ.js.map +1 -0
  39. package/dist/admin/chunks/he-DdpYNQdt.mjs +75 -0
  40. package/dist/admin/chunks/he-DdpYNQdt.mjs.map +1 -0
  41. package/dist/admin/chunks/index-DAhjYc5x.mjs +7350 -0
  42. package/dist/admin/chunks/index-DAhjYc5x.mjs.map +1 -0
  43. package/dist/admin/chunks/index-jZnIE90w.js +7407 -0
  44. package/dist/admin/chunks/index-jZnIE90w.js.map +1 -0
  45. package/dist/admin/chunks/it-Be4kgSNB.mjs +75 -0
  46. package/dist/admin/chunks/it-Be4kgSNB.mjs.map +1 -0
  47. package/dist/admin/chunks/it-_NQZYepl.js +77 -0
  48. package/dist/admin/chunks/it-_NQZYepl.js.map +1 -0
  49. package/dist/admin/chunks/ja-B75QiyXf.js +77 -0
  50. package/dist/admin/chunks/ja-B75QiyXf.js.map +1 -0
  51. package/dist/admin/chunks/ja-U1NhT0bU.mjs +75 -0
  52. package/dist/admin/chunks/ja-U1NhT0bU.mjs.map +1 -0
  53. package/dist/admin/chunks/ko-BOvUcJqv.js +107 -0
  54. package/dist/{_chunks/pl-esgZ7ltN.js.map → admin/chunks/ko-BOvUcJqv.js.map} +1 -1
  55. package/dist/admin/chunks/ko-BciqXefq.mjs +105 -0
  56. package/dist/{_chunks/de-A7mEKx6c.mjs.map → admin/chunks/ko-BciqXefq.mjs.map} +1 -1
  57. package/dist/admin/chunks/ms-B7Zl6Lm9.js +69 -0
  58. package/dist/admin/chunks/ms-B7Zl6Lm9.js.map +1 -0
  59. package/dist/admin/chunks/ms-D-8McNeg.mjs +67 -0
  60. package/dist/admin/chunks/ms-D-8McNeg.mjs.map +1 -0
  61. package/dist/admin/chunks/pl-DdUYocl5.mjs +104 -0
  62. package/dist/{_chunks/dk-BPfkJb9q.mjs.map → admin/chunks/pl-DdUYocl5.mjs.map} +1 -1
  63. package/dist/admin/chunks/pl-cYDYHOEf.js +106 -0
  64. package/dist/{_chunks/ko-Pzj-818C.js.map → admin/chunks/pl-cYDYHOEf.js.map} +1 -1
  65. package/dist/admin/chunks/pt-BR-D1u_azCM.js +77 -0
  66. package/dist/admin/chunks/pt-BR-D1u_azCM.js.map +1 -0
  67. package/dist/admin/chunks/pt-BR-Demjoq41.mjs +75 -0
  68. package/dist/admin/chunks/pt-BR-Demjoq41.mjs.map +1 -0
  69. package/dist/admin/chunks/pt-D8is2LpS.mjs +75 -0
  70. package/dist/admin/chunks/pt-D8is2LpS.mjs.map +1 -0
  71. package/dist/admin/chunks/pt-L2DZeTPL.js +77 -0
  72. package/dist/admin/chunks/pt-L2DZeTPL.js.map +1 -0
  73. package/dist/admin/chunks/ru-CGgHRTey.mjs +75 -0
  74. package/dist/admin/chunks/ru-CGgHRTey.mjs.map +1 -0
  75. package/dist/admin/chunks/ru-Uxbk_WWv.js +77 -0
  76. package/dist/admin/chunks/ru-Uxbk_WWv.js.map +1 -0
  77. package/dist/admin/chunks/sk-BlLP5HAX.js +123 -0
  78. package/dist/admin/chunks/sk-BlLP5HAX.js.map +1 -0
  79. package/dist/admin/chunks/sk-xtSwaPXq.mjs +121 -0
  80. package/dist/admin/chunks/sk-xtSwaPXq.mjs.map +1 -0
  81. package/dist/admin/chunks/th-BOpLVfmg.mjs +75 -0
  82. package/dist/admin/chunks/th-BOpLVfmg.mjs.map +1 -0
  83. package/dist/admin/chunks/th-DNxPLegS.js +77 -0
  84. package/dist/admin/chunks/th-DNxPLegS.js.map +1 -0
  85. package/dist/admin/chunks/tr-BmAPh-f1.mjs +121 -0
  86. package/dist/admin/chunks/tr-BmAPh-f1.mjs.map +1 -0
  87. package/dist/admin/chunks/tr-DWgXG75k.js +123 -0
  88. package/dist/admin/chunks/tr-DWgXG75k.js.map +1 -0
  89. package/dist/admin/chunks/uk-CMvuEdG-.mjs +72 -0
  90. package/dist/admin/chunks/uk-CMvuEdG-.mjs.map +1 -0
  91. package/dist/admin/chunks/uk-D1_rBLhp.js +74 -0
  92. package/dist/admin/chunks/uk-D1_rBLhp.js.map +1 -0
  93. package/dist/admin/chunks/zh-BIl0qgBy.mjs +128 -0
  94. package/dist/admin/chunks/zh-BIl0qgBy.mjs.map +1 -0
  95. package/dist/admin/chunks/zh-Hans-B1GabBRx.mjs +151 -0
  96. package/dist/{_chunks/zh-Hans-Cpmhg8uH.mjs.map → admin/chunks/zh-Hans-B1GabBRx.mjs.map} +1 -1
  97. package/dist/admin/chunks/zh-Hans-B8qxMQIl.js +153 -0
  98. package/dist/{_chunks/zh-Hans-k_xAc6nm.js.map → admin/chunks/zh-Hans-B8qxMQIl.js.map} +1 -1
  99. package/dist/admin/chunks/zh-MemsyMV6.js +130 -0
  100. package/dist/admin/chunks/zh-MemsyMV6.js.map +1 -0
  101. package/dist/admin/index.js +29 -6
  102. package/dist/admin/index.js.map +1 -1
  103. package/dist/admin/index.mjs +24 -8
  104. package/dist/admin/index.mjs.map +1 -1
  105. package/dist/admin/src/hooks/useMediaLibraryPermissions.d.ts +2 -5
  106. package/dist/admin/src/hooks/useRemoveAsset.d.ts +6 -64
  107. package/dist/server/chunks/graphql-BTbIs_EU.js +116 -0
  108. package/dist/server/chunks/graphql-BTbIs_EU.js.map +1 -0
  109. package/dist/server/chunks/graphql-CCPJbCFt.mjs +114 -0
  110. package/dist/server/chunks/graphql-CCPJbCFt.mjs.map +1 -0
  111. package/dist/server/chunks/index-BU4qzb-i.mjs +3161 -0
  112. package/dist/server/chunks/index-BU4qzb-i.mjs.map +1 -0
  113. package/dist/server/chunks/index-BkUy20d9.js +3164 -0
  114. package/dist/server/chunks/index-BkUy20d9.js.map +1 -0
  115. package/dist/server/index.js +19 -2
  116. package/dist/server/index.js.map +1 -1
  117. package/dist/server/index.mjs +14 -4
  118. package/dist/server/index.mjs.map +1 -1
  119. package/dist/server/src/controllers/validation/admin/folder-file.d.ts.map +1 -1
  120. package/dist/shared/contracts/configuration.d.ts +1 -1
  121. package/dist/shared/contracts/settings.d.ts +1 -1
  122. package/package.json +13 -9
  123. package/dist/_chunks/App-BLY6RlTm.mjs +0 -844
  124. package/dist/_chunks/App-BLY6RlTm.mjs.map +0 -1
  125. package/dist/_chunks/App-DNScJAhi.js +0 -864
  126. package/dist/_chunks/App-DNScJAhi.js.map +0 -1
  127. package/dist/_chunks/ConfigureTheView-CJbBTq0t.js +0 -252
  128. package/dist/_chunks/ConfigureTheView-CJbBTq0t.js.map +0 -1
  129. package/dist/_chunks/ConfigureTheView-Dk28Sh2k.mjs +0 -230
  130. package/dist/_chunks/ConfigureTheView-Dk28Sh2k.mjs.map +0 -1
  131. package/dist/_chunks/SettingsPage-CrvbJCia.js +0 -285
  132. package/dist/_chunks/SettingsPage-CrvbJCia.js.map +0 -1
  133. package/dist/_chunks/SettingsPage-DjNyJDaf.mjs +0 -264
  134. package/dist/_chunks/SettingsPage-DjNyJDaf.mjs.map +0 -1
  135. package/dist/_chunks/ca-B2_I-q1t.mjs +0 -121
  136. package/dist/_chunks/ca-BUpuZx8N.js +0 -121
  137. package/dist/_chunks/de-A7mEKx6c.mjs +0 -107
  138. package/dist/_chunks/de-uGb_Pkq7.js +0 -107
  139. package/dist/_chunks/dk-BPfkJb9q.mjs +0 -103
  140. package/dist/_chunks/dk-Cd8oFO-O.js +0 -103
  141. package/dist/_chunks/en-BcOqhiNe.js +0 -144
  142. package/dist/_chunks/en-oDx2Gnre.mjs +0 -144
  143. package/dist/_chunks/es-CuWi2pOn.mjs +0 -120
  144. package/dist/_chunks/es-DWFtw_h4.js +0 -120
  145. package/dist/_chunks/fr-BN6ndmWf.mjs +0 -144
  146. package/dist/_chunks/fr-BN6ndmWf.mjs.map +0 -1
  147. package/dist/_chunks/fr-D2bop66d.js +0 -144
  148. package/dist/_chunks/fr-D2bop66d.js.map +0 -1
  149. package/dist/_chunks/graphql-DMPTPlvx.mjs +0 -71
  150. package/dist/_chunks/graphql-DMPTPlvx.mjs.map +0 -1
  151. package/dist/_chunks/graphql-QF5Y36Qj.js +0 -71
  152. package/dist/_chunks/graphql-QF5Y36Qj.js.map +0 -1
  153. package/dist/_chunks/he-BpxHjaZg.js +0 -76
  154. package/dist/_chunks/he-BpxHjaZg.js.map +0 -1
  155. package/dist/_chunks/he-C9ZOXBB-.mjs +0 -76
  156. package/dist/_chunks/he-C9ZOXBB-.mjs.map +0 -1
  157. package/dist/_chunks/index-BfAVIhAL.js +0 -6144
  158. package/dist/_chunks/index-BfAVIhAL.js.map +0 -1
  159. package/dist/_chunks/index-D57iKFts.js +0 -2721
  160. package/dist/_chunks/index-D57iKFts.js.map +0 -1
  161. package/dist/_chunks/index-DH9hUSe3.mjs +0 -6119
  162. package/dist/_chunks/index-DH9hUSe3.mjs.map +0 -1
  163. package/dist/_chunks/index-sOlgMDiZ.mjs +0 -2711
  164. package/dist/_chunks/index-sOlgMDiZ.mjs.map +0 -1
  165. package/dist/_chunks/it-B7rmoZNx.mjs +0 -76
  166. package/dist/_chunks/it-B7rmoZNx.mjs.map +0 -1
  167. package/dist/_chunks/it-BKCWXl8t.js +0 -76
  168. package/dist/_chunks/it-BKCWXl8t.js.map +0 -1
  169. package/dist/_chunks/ja-DlaJTi_3.mjs +0 -76
  170. package/dist/_chunks/ja-DlaJTi_3.mjs.map +0 -1
  171. package/dist/_chunks/ja-ajHzIJz6.js +0 -76
  172. package/dist/_chunks/ja-ajHzIJz6.js.map +0 -1
  173. package/dist/_chunks/ko-Pzj-818C.js +0 -106
  174. package/dist/_chunks/ko-vJl9kPpn.mjs +0 -106
  175. package/dist/_chunks/ms-CqwG8v8l.mjs +0 -68
  176. package/dist/_chunks/ms-CqwG8v8l.mjs.map +0 -1
  177. package/dist/_chunks/ms-h3gjldBy.js +0 -68
  178. package/dist/_chunks/ms-h3gjldBy.js.map +0 -1
  179. package/dist/_chunks/pl-Cj8jChOO.mjs +0 -105
  180. package/dist/_chunks/pl-esgZ7ltN.js +0 -105
  181. package/dist/_chunks/pt-BR-B4LJHJIp.mjs +0 -76
  182. package/dist/_chunks/pt-BR-B4LJHJIp.mjs.map +0 -1
  183. package/dist/_chunks/pt-BR-Cazr7Z5I.js +0 -76
  184. package/dist/_chunks/pt-BR-Cazr7Z5I.js.map +0 -1
  185. package/dist/_chunks/pt-CNOOM_7x.mjs +0 -76
  186. package/dist/_chunks/pt-CNOOM_7x.mjs.map +0 -1
  187. package/dist/_chunks/pt-cbUnkHM5.js +0 -76
  188. package/dist/_chunks/pt-cbUnkHM5.js.map +0 -1
  189. package/dist/_chunks/ru-DqglvSUC.mjs +0 -76
  190. package/dist/_chunks/ru-DqglvSUC.mjs.map +0 -1
  191. package/dist/_chunks/ru-H6MzFUxp.js +0 -76
  192. package/dist/_chunks/ru-H6MzFUxp.js.map +0 -1
  193. package/dist/_chunks/sk-CZxC4dFY.js +0 -122
  194. package/dist/_chunks/sk-CZxC4dFY.js.map +0 -1
  195. package/dist/_chunks/sk-Dgpb3lnz.mjs +0 -122
  196. package/dist/_chunks/sk-Dgpb3lnz.mjs.map +0 -1
  197. package/dist/_chunks/th-C6unJZ8j.js +0 -76
  198. package/dist/_chunks/th-C6unJZ8j.js.map +0 -1
  199. package/dist/_chunks/th-DRfzuiFf.mjs +0 -76
  200. package/dist/_chunks/th-DRfzuiFf.mjs.map +0 -1
  201. package/dist/_chunks/tr--GzWXE_A.mjs +0 -122
  202. package/dist/_chunks/tr--GzWXE_A.mjs.map +0 -1
  203. package/dist/_chunks/tr-CY6AwX50.js +0 -122
  204. package/dist/_chunks/tr-CY6AwX50.js.map +0 -1
  205. package/dist/_chunks/uk-BniyNsD4.js +0 -73
  206. package/dist/_chunks/uk-BniyNsD4.js.map +0 -1
  207. package/dist/_chunks/uk-DVMT2Piq.mjs +0 -73
  208. package/dist/_chunks/uk-DVMT2Piq.mjs.map +0 -1
  209. package/dist/_chunks/zh-CsZw0IpM.js +0 -129
  210. package/dist/_chunks/zh-CsZw0IpM.js.map +0 -1
  211. package/dist/_chunks/zh-HOnih0is.mjs +0 -129
  212. package/dist/_chunks/zh-HOnih0is.mjs.map +0 -1
  213. package/dist/_chunks/zh-Hans-Cpmhg8uH.mjs +0 -152
  214. package/dist/_chunks/zh-Hans-k_xAc6nm.js +0 -152
@@ -0,0 +1,297 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var React = require('react');
5
+ var strapiAdmin = require('@strapi/admin/strapi-admin');
6
+ var designSystem = require('@strapi/design-system');
7
+ var icons = require('@strapi/icons');
8
+ var isEqual = require('lodash/isEqual');
9
+ var reactIntl = require('react-intl');
10
+ var reactRouterDom = require('react-router-dom');
11
+ var index = require('./index-jZnIE90w.js');
12
+ require('byte-size');
13
+ require('date-fns');
14
+ require('qs');
15
+ var immer = require('immer');
16
+ var get = require('lodash/get');
17
+ var set = require('lodash/set');
18
+ require('styled-components');
19
+ require('react-query');
20
+ require('yup');
21
+ require('formik');
22
+ require('react-select');
23
+ require('cropperjs');
24
+ require('@mux/mux-player-react');
25
+ require('cropperjs/dist/cropper.css');
26
+ require('lodash/isEmpty');
27
+ require('react-dnd');
28
+ require('@strapi/icons/symbols');
29
+ require('date-fns/parseISO');
30
+
31
+ function _interopNamespaceDefault(e) {
32
+ var n = Object.create(null);
33
+ if (e) {
34
+ Object.keys(e).forEach(function (k) {
35
+ if (k !== 'default') {
36
+ var d = Object.getOwnPropertyDescriptor(e, k);
37
+ Object.defineProperty(n, k, d.get ? d : {
38
+ enumerable: true,
39
+ get: function () { return e[k]; }
40
+ });
41
+ }
42
+ });
43
+ }
44
+ n.default = e;
45
+ return Object.freeze(n);
46
+ }
47
+
48
+ var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
49
+
50
+ const Settings = ({ sort = '', pageSize = 10, onChange })=>{
51
+ const { formatMessage } = reactIntl.useIntl();
52
+ return /*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
53
+ background: "neutral0",
54
+ hasRadius: true,
55
+ shadow: "tableShadow",
56
+ paddingTop: 6,
57
+ paddingBottom: 6,
58
+ paddingLeft: 7,
59
+ paddingRight: 7,
60
+ children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Grid.Root, {
61
+ gap: 4,
62
+ children: [
63
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Grid.Item, {
64
+ s: 12,
65
+ col: 6,
66
+ direction: "column",
67
+ alignItems: "stretch",
68
+ children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Field.Root, {
69
+ hint: formatMessage({
70
+ id: index.getTrad('config.entries.note'),
71
+ defaultMessage: 'Number of assets displayed by default in the Media Library'
72
+ }),
73
+ name: "pageSize",
74
+ children: [
75
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Field.Label, {
76
+ children: formatMessage({
77
+ id: index.getTrad('config.entries.title'),
78
+ defaultMessage: 'Entries per page'
79
+ })
80
+ }),
81
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.SingleSelect, {
82
+ onChange: (value)=>onChange({
83
+ target: {
84
+ name: 'pageSize',
85
+ value
86
+ }
87
+ }),
88
+ value: pageSize,
89
+ children: index.pageSizes.map((pageSize)=>/*#__PURE__*/ jsxRuntime.jsx(designSystem.SingleSelectOption, {
90
+ value: pageSize,
91
+ children: pageSize
92
+ }, pageSize))
93
+ }),
94
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Field.Hint, {})
95
+ ]
96
+ })
97
+ }),
98
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Grid.Item, {
99
+ s: 12,
100
+ col: 6,
101
+ direction: "column",
102
+ alignItems: "stretch",
103
+ children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Field.Root, {
104
+ hint: formatMessage({
105
+ id: index.getTrad('config.note'),
106
+ defaultMessage: 'Note: You can override this value in the media library.'
107
+ }),
108
+ name: "sort",
109
+ children: [
110
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Field.Label, {
111
+ children: formatMessage({
112
+ id: index.getTrad('config.sort.title'),
113
+ defaultMessage: 'Default sort order'
114
+ })
115
+ }),
116
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.SingleSelect, {
117
+ onChange: (value)=>onChange({
118
+ target: {
119
+ name: 'sort',
120
+ value
121
+ }
122
+ }),
123
+ value: sort,
124
+ "test-sort": sort,
125
+ "data-testid": "sort-select",
126
+ children: index.sortOptions.map((filter)=>/*#__PURE__*/ jsxRuntime.jsx(designSystem.SingleSelectOption, {
127
+ "data-testid": `sort-option-${filter.value}`,
128
+ value: filter.value,
129
+ children: formatMessage({
130
+ id: index.getTrad(filter.key),
131
+ defaultMessage: `${filter.value}`
132
+ })
133
+ }, filter.key))
134
+ }),
135
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Field.Hint, {})
136
+ ]
137
+ })
138
+ })
139
+ ]
140
+ })
141
+ });
142
+ };
143
+
144
+ const ON_CHANGE = `${index.pluginId}/ON_CHANGE`;
145
+ const SET_LOADED = `${index.pluginId}/SET_LOADED`;
146
+
147
+ const onChange = ({ name, value })=>({
148
+ type: ON_CHANGE,
149
+ keys: name,
150
+ value
151
+ });
152
+ const setLoaded = ()=>({
153
+ type: SET_LOADED
154
+ });
155
+
156
+ const initialState = {
157
+ initialData: {},
158
+ modifiedData: {}
159
+ };
160
+ const init = (configData)=>{
161
+ return {
162
+ ...initialState,
163
+ initialData: configData,
164
+ modifiedData: configData
165
+ };
166
+ };
167
+
168
+ const reducer = (state = initialState, action = {
169
+ type: ''
170
+ })=>// eslint-disable-next-line consistent-return
171
+ immer.produce(state, (draftState)=>{
172
+ switch(action.type){
173
+ case ON_CHANGE:
174
+ {
175
+ if ('keys' in action && 'value' in action && action.keys) {
176
+ set(draftState, [
177
+ 'modifiedData',
178
+ ...action.keys.split('.')
179
+ ], action.value);
180
+ }
181
+ break;
182
+ }
183
+ case SET_LOADED:
184
+ {
185
+ // This action re-initialises the state using the current modifiedData.
186
+ const reInitialise = init(get(draftState, [
187
+ 'modifiedData'
188
+ ], {}));
189
+ draftState.initialData = reInitialise.initialData;
190
+ draftState.modifiedData = reInitialise.modifiedData;
191
+ break;
192
+ }
193
+ default:
194
+ return draftState;
195
+ }
196
+ });
197
+
198
+ // TODO: find a better naming convention for the file that was an index file before
199
+ const ConfigureTheView = ({ config })=>{
200
+ const { trackUsage } = strapiAdmin.useTracking();
201
+ const { formatMessage } = reactIntl.useIntl();
202
+ const { toggleNotification } = strapiAdmin.useNotification();
203
+ const { mutateConfig } = index.useConfig();
204
+ const { isLoading: isSubmittingForm } = mutateConfig;
205
+ const [showWarningSubmit, setWarningSubmit] = React__namespace.useState(false);
206
+ const toggleWarningSubmit = ()=>setWarningSubmit((prevState)=>!prevState);
207
+ const [reducerState, dispatch] = React__namespace.useReducer(reducer, initialState, ()=>init(config));
208
+ const typedDispatch = dispatch;
209
+ const { initialData, modifiedData } = reducerState;
210
+ const handleSubmit = (e)=>{
211
+ e.preventDefault();
212
+ toggleWarningSubmit();
213
+ };
214
+ const handleConfirm = async ()=>{
215
+ trackUsage('willEditMediaLibraryConfig');
216
+ await mutateConfig.mutateAsync(modifiedData);
217
+ setWarningSubmit(false);
218
+ typedDispatch(setLoaded());
219
+ toggleNotification({
220
+ type: 'success',
221
+ message: formatMessage({
222
+ id: 'notification.form.success.fields',
223
+ defaultMessage: 'Changes saved'
224
+ })
225
+ });
226
+ };
227
+ const handleChange = ({ target: { name, value } })=>{
228
+ typedDispatch(onChange({
229
+ name,
230
+ value
231
+ }));
232
+ };
233
+ return /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Layouts.Root, {
234
+ children: /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Page.Main, {
235
+ "aria-busy": isSubmittingForm,
236
+ children: /*#__PURE__*/ jsxRuntime.jsxs("form", {
237
+ onSubmit: handleSubmit,
238
+ children: [
239
+ /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Layouts.Header, {
240
+ navigationAction: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Link, {
241
+ tag: reactRouterDom.NavLink,
242
+ startIcon: /*#__PURE__*/ jsxRuntime.jsx(icons.ArrowLeft, {}),
243
+ to: `/plugins/${index.pluginId}`,
244
+ id: "go-back",
245
+ children: formatMessage({
246
+ id: index.getTrad('config.back'),
247
+ defaultMessage: 'Back'
248
+ })
249
+ }),
250
+ primaryAction: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Button, {
251
+ size: "S",
252
+ startIcon: /*#__PURE__*/ jsxRuntime.jsx(icons.Check, {}),
253
+ disabled: isEqual(modifiedData, initialData),
254
+ type: "submit",
255
+ children: formatMessage({
256
+ id: 'global.save',
257
+ defaultMessage: 'Save'
258
+ })
259
+ }),
260
+ subtitle: formatMessage({
261
+ id: index.getTrad('config.subtitle'),
262
+ defaultMessage: 'Define the view settings of the media library.'
263
+ }),
264
+ title: formatMessage({
265
+ id: index.getTrad('config.title'),
266
+ defaultMessage: 'Configure the view - Media Library'
267
+ })
268
+ }),
269
+ /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Layouts.Content, {
270
+ children: /*#__PURE__*/ jsxRuntime.jsx(Settings, {
271
+ "data-testid": "settings",
272
+ pageSize: modifiedData.pageSize || '',
273
+ sort: modifiedData.sort || '',
274
+ onChange: handleChange
275
+ })
276
+ }),
277
+ "x",
278
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Dialog.Root, {
279
+ open: showWarningSubmit,
280
+ onOpenChange: toggleWarningSubmit,
281
+ children: /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.ConfirmDialog, {
282
+ onConfirm: handleConfirm,
283
+ variant: "default",
284
+ children: formatMessage({
285
+ id: index.getTrad('config.popUpWarning.warning.updateAllSettings'),
286
+ defaultMessage: 'This will modify all your settings'
287
+ })
288
+ })
289
+ })
290
+ ]
291
+ })
292
+ })
293
+ });
294
+ };
295
+
296
+ exports.ConfigureTheView = ConfigureTheView;
297
+ //# sourceMappingURL=ConfigureTheView-CnUk2xYx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigureTheView-CnUk2xYx.js","sources":["../../../admin/src/pages/App/ConfigureTheView/components/Settings.tsx","../../../admin/src/pages/App/ConfigureTheView/state/actionTypes.ts","../../../admin/src/pages/App/ConfigureTheView/state/actions.ts","../../../admin/src/pages/App/ConfigureTheView/state/init.ts","../../../admin/src/pages/App/ConfigureTheView/state/reducer.ts","../../../admin/src/pages/App/ConfigureTheView/ConfigureTheView.tsx"],"sourcesContent":["import { Box, Grid, SingleSelectOption, SingleSelect, Field } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { pageSizes, sortOptions } from '../../../../constants';\nimport { getTrad } from '../../../../utils';\n\nimport type { Configuration } from '../../../../../../shared/contracts/configuration';\n\ninterface SettingsProps {\n sort: string;\n pageSize: string | number;\n onChange: ({\n target: { name, value },\n }: {\n target: { name: keyof Configuration; value: string | number };\n }) => void;\n}\n\nconst Settings = ({ sort = '', pageSize = 10, onChange }: SettingsProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"tableShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Grid.Root gap={4}>\n <Grid.Item s={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n hint={formatMessage({\n id: getTrad('config.entries.note'),\n defaultMessage: 'Number of assets displayed by default in the Media Library',\n })}\n name=\"pageSize\"\n >\n <Field.Label>\n {formatMessage({\n id: getTrad('config.entries.title'),\n defaultMessage: 'Entries per page',\n })}\n </Field.Label>\n <SingleSelect\n onChange={(value) => onChange({ target: { name: 'pageSize', value } })}\n value={pageSize}\n >\n {pageSizes.map((pageSize) => (\n <SingleSelectOption key={pageSize} value={pageSize}>\n {pageSize}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n <Field.Hint />\n </Field.Root>\n </Grid.Item>\n <Grid.Item s={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n hint={formatMessage({\n id: getTrad('config.note'),\n defaultMessage: 'Note: You can override this value in the media library.',\n })}\n name=\"sort\"\n >\n <Field.Label>\n {formatMessage({\n id: getTrad('config.sort.title'),\n defaultMessage: 'Default sort order',\n })}\n </Field.Label>\n <SingleSelect\n onChange={(value) => onChange({ target: { name: 'sort', value } })}\n value={sort}\n test-sort={sort}\n data-testid=\"sort-select\"\n >\n {sortOptions.map((filter) => (\n <SingleSelectOption\n data-testid={`sort-option-${filter.value}`}\n key={filter.key}\n value={filter.value}\n >\n {formatMessage({ id: getTrad(filter.key), defaultMessage: `${filter.value}` })}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n <Field.Hint />\n </Field.Root>\n </Grid.Item>\n </Grid.Root>\n </Box>\n );\n};\n\nexport { Settings };\n","import { pluginId } from '../../../../pluginId';\n\nexport const ON_CHANGE = `${pluginId}/ON_CHANGE`;\nexport const SET_LOADED = `${pluginId}/SET_LOADED`;\n","import { ON_CHANGE, SET_LOADED } from './actionTypes';\n\nimport type { InitialState } from './init';\n\nexport const onChange = ({\n name,\n value,\n}: {\n name: keyof NonNullable<InitialState['initialData']>;\n value: number | string;\n}) => ({\n type: ON_CHANGE,\n keys: name,\n value,\n});\n\nexport const setLoaded = () => ({\n type: SET_LOADED,\n});\n","import type { Configuration } from '../../../../../../shared/contracts/configuration';\n\nexport type InitialState = {\n initialData: Partial<Configuration>;\n modifiedData: Partial<Configuration>;\n};\n\nconst initialState: InitialState = {\n initialData: {},\n modifiedData: {},\n};\n\nconst init = (configData: InitialState['initialData']): InitialState => {\n return {\n ...initialState,\n initialData: configData,\n modifiedData: configData,\n };\n};\nexport { init, initialState };\n","import { produce } from 'immer'; // current\nimport get from 'lodash/get';\nimport set from 'lodash/set';\n\nimport { ON_CHANGE, SET_LOADED } from './actionTypes';\nimport { init, initialState } from './init';\n\nimport type { InitialState } from './init';\n\nexport interface ActionOnChange {\n type: string;\n keys?: string;\n value: string | number;\n}\n\nexport interface ActionSetLoaded {\n type: string;\n}\n\ninterface ActionInitialValue {\n type: string;\n}\n\nexport type Action = ActionSetLoaded | ActionOnChange | ActionInitialValue;\n\nexport const reducer = (\n state: InitialState = initialState,\n action: Action = {\n type: '',\n }\n) =>\n // eslint-disable-next-line consistent-return\n produce(state, (draftState) => {\n switch (action.type) {\n case ON_CHANGE: {\n if ('keys' in action && 'value' in action && action.keys) {\n set(draftState, ['modifiedData', ...action.keys.split('.')], action.value);\n }\n break;\n }\n case SET_LOADED: {\n // This action re-initialises the state using the current modifiedData.\n const reInitialise = init(get(draftState, ['modifiedData'], {}));\n draftState.initialData = reInitialise.initialData;\n draftState.modifiedData = reInitialise.modifiedData;\n break;\n }\n default:\n return draftState;\n }\n });\n","// TODO: find a better naming convention for the file that was an index file before\nimport * as React from 'react';\n\nimport {\n ConfirmDialog,\n useTracking,\n useNotification,\n Page,\n Layouts,\n} from '@strapi/admin/strapi-admin';\nimport { Button, Dialog, Link } from '@strapi/design-system';\nimport { ArrowLeft, Check } from '@strapi/icons';\nimport isEqual from 'lodash/isEqual';\nimport { useIntl } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nimport { useConfig } from '../../../hooks/useConfig';\nimport { pluginId } from '../../../pluginId';\nimport { getTrad } from '../../../utils';\n\nimport { Settings } from './components/Settings';\nimport { onChange, setLoaded } from './state/actions';\nimport { init, initialState } from './state/init';\nimport { reducer } from './state/reducer';\n\nimport type { InitialState } from './state/init';\nimport type { Action } from './state/reducer';\nimport type { Configuration } from '../../../../../shared/contracts/configuration';\n\ninterface ConfigureTheViewProps {\n config: Configuration;\n}\n\nexport const ConfigureTheView = ({ config }: ConfigureTheViewProps) => {\n const { trackUsage } = useTracking();\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const { mutateConfig } = useConfig();\n const { isLoading: isSubmittingForm } = mutateConfig;\n\n const [showWarningSubmit, setWarningSubmit] = React.useState(false);\n const toggleWarningSubmit = () => setWarningSubmit((prevState) => !prevState);\n\n const [reducerState, dispatch] = React.useReducer(\n reducer,\n initialState,\n (): InitialState => init(config)\n );\n const typedDispatch: React.Dispatch<Action> = dispatch;\n const { initialData, modifiedData } = reducerState;\n\n const handleSubmit = (e: React.FormEvent<HTMLFormElement>) => {\n e.preventDefault();\n toggleWarningSubmit();\n };\n\n const handleConfirm = async () => {\n trackUsage('willEditMediaLibraryConfig');\n await mutateConfig.mutateAsync(modifiedData as Configuration);\n setWarningSubmit(false);\n typedDispatch(setLoaded());\n toggleNotification({\n type: 'success',\n message: formatMessage({\n id: 'notification.form.success.fields',\n defaultMessage: 'Changes saved',\n }),\n });\n };\n\n const handleChange = ({\n target: { name, value },\n }: {\n target: { name: keyof Configuration; value: string | number };\n }) => {\n typedDispatch(onChange({ name, value }));\n };\n\n return (\n <Layouts.Root>\n <Page.Main aria-busy={isSubmittingForm}>\n <form onSubmit={handleSubmit}>\n <Layouts.Header\n navigationAction={\n <Link\n tag={NavLink}\n startIcon={<ArrowLeft />}\n to={`/plugins/${pluginId}`}\n id=\"go-back\"\n >\n {formatMessage({ id: getTrad('config.back'), defaultMessage: 'Back' })}\n </Link>\n }\n primaryAction={\n <Button\n size=\"S\"\n startIcon={<Check />}\n disabled={isEqual(modifiedData, initialData)}\n type=\"submit\"\n >\n {formatMessage({ id: 'global.save', defaultMessage: 'Save' })}\n </Button>\n }\n subtitle={formatMessage({\n id: getTrad('config.subtitle'),\n defaultMessage: 'Define the view settings of the media library.',\n })}\n title={formatMessage({\n id: getTrad('config.title'),\n defaultMessage: 'Configure the view - Media Library',\n })}\n />\n <Layouts.Content>\n <Settings\n data-testid=\"settings\"\n pageSize={modifiedData.pageSize || ''}\n sort={modifiedData.sort || ''}\n onChange={handleChange}\n />\n </Layouts.Content>\n x\n <Dialog.Root open={showWarningSubmit} onOpenChange={toggleWarningSubmit}>\n <ConfirmDialog onConfirm={handleConfirm} variant=\"default\">\n {formatMessage({\n id: getTrad('config.popUpWarning.warning.updateAllSettings'),\n defaultMessage: 'This will modify all your settings',\n })}\n </ConfirmDialog>\n </Dialog.Root>\n </form>\n </Page.Main>\n </Layouts.Root>\n );\n};\n"],"names":["Settings","sort","pageSize","onChange","formatMessage","useIntl","_jsx","Box","background","hasRadius","shadow","paddingTop","paddingBottom","paddingLeft","paddingRight","_jsxs","Grid","Root","gap","Item","s","col","direction","alignItems","Field","hint","id","getTrad","defaultMessage","name","Label","SingleSelect","value","target","pageSizes","map","SingleSelectOption","Hint","test-sort","data-testid","sortOptions","filter","key","ON_CHANGE","pluginId","SET_LOADED","type","keys","setLoaded","initialState","initialData","modifiedData","init","configData","reducer","state","action","produce","draftState","set","split","reInitialise","get","ConfigureTheView","config","trackUsage","useTracking","toggleNotification","useNotification","mutateConfig","useConfig","isLoading","isSubmittingForm","showWarningSubmit","setWarningSubmit","React","useState","toggleWarningSubmit","prevState","reducerState","dispatch","useReducer","typedDispatch","handleSubmit","e","preventDefault","handleConfirm","mutateAsync","message","handleChange","Layouts","Page","Main","aria-busy","form","onSubmit","Header","navigationAction","Link","tag","NavLink","startIcon","ArrowLeft","to","primaryAction","Button","size","Check","disabled","isEqual","subtitle","title","Content","Dialog","open","onOpenChange","ConfirmDialog","onConfirm","variant"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBA,MAAMA,QAAAA,GAAW,CAAC,EAAEC,IAAO,GAAA,EAAE,EAAEC,QAAW,GAAA,EAAE,EAAEC,QAAQ,EAAiB,GAAA;IACrE,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAE1B,IAAA,qBACEC,cAACC,CAAAA,gBAAAA,EAAAA;QACCC,UAAW,EAAA,UAAA;QACXC,SAAS,EAAA,IAAA;QACTC,MAAO,EAAA,aAAA;QACPC,UAAY,EAAA,CAAA;QACZC,aAAe,EAAA,CAAA;QACfC,WAAa,EAAA,CAAA;QACbC,YAAc,EAAA,CAAA;gCAEdC,eAAA,CAACC,kBAAKC,IAAI,EAAA;YAACC,GAAK,EAAA,CAAA;;AACd,8BAAAZ,cAAA,CAACU,kBAAKG,IAAI,EAAA;oBAACC,CAAG,EAAA,EAAA;oBAAIC,GAAK,EAAA,CAAA;oBAAGC,SAAU,EAAA,QAAA;oBAASC,UAAW,EAAA,SAAA;4CACtDR,eAAA,CAACS,mBAAMP,IAAI,EAAA;AACTQ,wBAAAA,IAAAA,EAAMrB,aAAc,CAAA;AAClBsB,4BAAAA,EAAAA,EAAIC,aAAQ,CAAA,qBAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB,yBAAA,CAAA;wBACAC,IAAK,EAAA,UAAA;;AAEL,0CAAAvB,cAAA,CAACkB,mBAAMM,KAAK,EAAA;0CACT1B,aAAc,CAAA;AACbsB,oCAAAA,EAAAA,EAAIC,aAAQ,CAAA,sBAAA,CAAA;oCACZC,cAAgB,EAAA;AAClB,iCAAA;;0CAEFtB,cAACyB,CAAAA,yBAAAA,EAAAA;gCACC5B,QAAU,EAAA,CAAC6B,QAAU7B,QAAS,CAAA;wCAAE8B,MAAQ,EAAA;4CAAEJ,IAAM,EAAA,UAAA;AAAYG,4CAAAA;AAAM;AAAE,qCAAA,CAAA;gCACpEA,KAAO9B,EAAAA,QAAAA;AAENgC,gCAAAA,QAAAA,EAAAA,eAAAA,CAAUC,GAAG,CAAC,CAACjC,QAAAA,iBACdI,cAAC8B,CAAAA,+BAAAA,EAAAA;wCAAkCJ,KAAO9B,EAAAA,QAAAA;AACvCA,wCAAAA,QAAAA,EAAAA;AADsBA,qCAAAA,EAAAA,QAAAA,CAAAA;;AAK7B,0CAAAI,cAAA,CAACkB,mBAAMa,IAAI,EAAA,EAAA;;;;AAGf,8BAAA/B,cAAA,CAACU,kBAAKG,IAAI,EAAA;oBAACC,CAAG,EAAA,EAAA;oBAAIC,GAAK,EAAA,CAAA;oBAAGC,SAAU,EAAA,QAAA;oBAASC,UAAW,EAAA,SAAA;4CACtDR,eAAA,CAACS,mBAAMP,IAAI,EAAA;AACTQ,wBAAAA,IAAAA,EAAMrB,aAAc,CAAA;AAClBsB,4BAAAA,EAAAA,EAAIC,aAAQ,CAAA,aAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB,yBAAA,CAAA;wBACAC,IAAK,EAAA,MAAA;;AAEL,0CAAAvB,cAAA,CAACkB,mBAAMM,KAAK,EAAA;0CACT1B,aAAc,CAAA;AACbsB,oCAAAA,EAAAA,EAAIC,aAAQ,CAAA,mBAAA,CAAA;oCACZC,cAAgB,EAAA;AAClB,iCAAA;;0CAEFtB,cAACyB,CAAAA,yBAAAA,EAAAA;gCACC5B,QAAU,EAAA,CAAC6B,QAAU7B,QAAS,CAAA;wCAAE8B,MAAQ,EAAA;4CAAEJ,IAAM,EAAA,MAAA;AAAQG,4CAAAA;AAAM;AAAE,qCAAA,CAAA;gCAChEA,KAAO/B,EAAAA,IAAAA;gCACPqC,WAAWrC,EAAAA,IAAAA;gCACXsC,aAAY,EAAA,aAAA;AAEXC,gCAAAA,QAAAA,EAAAA,iBAAAA,CAAYL,GAAG,CAAC,CAACM,MAAAA,iBAChBnC,cAAC8B,CAAAA,+BAAAA,EAAAA;AACCG,wCAAAA,aAAAA,EAAa,CAAC,YAAY,EAAEE,MAAOT,CAAAA,KAAK,CAAC,CAAC;AAE1CA,wCAAAA,KAAAA,EAAOS,OAAOT,KAAK;kDAElB5B,aAAc,CAAA;4CAAEsB,EAAIC,EAAAA,aAAAA,CAAQc,OAAOC,GAAG,CAAA;AAAGd,4CAAAA,cAAAA,EAAgB,CAAC,EAAEa,MAAOT,CAAAA,KAAK,CAAC;AAAE,yCAAA;AAHvES,qCAAAA,EAAAA,MAAAA,CAAOC,GAAG,CAAA;;AAOrB,0CAAApC,cAAA,CAACkB,mBAAMa,IAAI,EAAA,EAAA;;;;;;;AAMvB,CAAA;;AC7FO,MAAMM,SAAY,GAAA,CAAC,EAAEC,cAAS,CAAA,UAAU,CAAC;AACzC,MAAMC,UAAa,GAAA,CAAC,EAAED,cAAS,CAAA,WAAW,CAAC;;ACC3C,MAAMzC,WAAW,CAAC,EACvB0B,IAAI,EACJG,KAAK,EAIN,IAAM;QACLc,IAAMH,EAAAA,SAAAA;QACNI,IAAMlB,EAAAA,IAAAA;AACNG,QAAAA;AACF,KAAA,CAAG;AAEI,MAAMgB,SAAY,GAAA,KAAO;QAC9BF,IAAMD,EAAAA;AACR,KAAA,CAAG;;ACXH,MAAMI,YAA6B,GAAA;AACjCC,IAAAA,WAAAA,EAAa,EAAC;AACdC,IAAAA,YAAAA,EAAc;AAChB,CAAA;AAEA,MAAMC,OAAO,CAACC,UAAAA,GAAAA;IACZ,OAAO;AACL,QAAA,GAAGJ,YAAY;QACfC,WAAaG,EAAAA,UAAAA;QACbF,YAAcE,EAAAA;AAChB,KAAA;AACF,CAAA;;ACOO,MAAMC,OAAU,GAAA,CACrBC,KAAsBN,GAAAA,YAAY,EAClCO,MAAiB,GAAA;IACfV,IAAM,EAAA;AACR,CAAC;AAGDW,IAAAA,aAAAA,CAAQF,OAAO,CAACG,UAAAA,GAAAA;AACd,QAAA,OAAQF,OAAOV,IAAI;YACjB,KAAKH,SAAAA;AAAW,gBAAA;AACd,oBAAA,IAAI,UAAUa,MAAU,IAAA,OAAA,IAAWA,MAAUA,IAAAA,MAAAA,CAAOT,IAAI,EAAE;AACxDY,wBAAAA,GAAAA,CAAID,UAAY,EAAA;AAAC,4BAAA,cAAA;+BAAmBF,MAAOT,CAAAA,IAAI,CAACa,KAAK,CAAC,GAAA;AAAK,yBAAA,EAAEJ,OAAOxB,KAAK,CAAA;AAC3E;AACA,oBAAA;AACF;YACA,KAAKa,UAAAA;AAAY,gBAAA;;oBAEf,MAAMgB,YAAAA,GAAeT,IAAKU,CAAAA,GAAAA,CAAIJ,UAAY,EAAA;AAAC,wBAAA;AAAe,qBAAA,EAAE,EAAC,CAAA,CAAA;oBAC7DA,UAAWR,CAAAA,WAAW,GAAGW,YAAAA,CAAaX,WAAW;oBACjDQ,UAAWP,CAAAA,YAAY,GAAGU,YAAAA,CAAaV,YAAY;AACnD,oBAAA;AACF;AACA,YAAA;gBACE,OAAOO,UAAAA;AACX;KACC,CAAA;;AClDL;AAiCaK,MAAAA,gBAAAA,GAAmB,CAAC,EAAEC,MAAM,EAAyB,GAAA;IAChE,MAAM,EAAEC,UAAU,EAAE,GAAGC,uBAAAA,EAAAA;IACvB,MAAM,EAAE9D,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;IAC1B,MAAM,EAAE8D,kBAAkB,EAAE,GAAGC,2BAAAA,EAAAA;IAC/B,MAAM,EAAEC,YAAY,EAAE,GAAGC,eAAAA,EAAAA;AACzB,IAAA,MAAM,EAAEC,SAAAA,EAAWC,gBAAgB,EAAE,GAAGH,YAAAA;AAExC,IAAA,MAAM,CAACI,iBAAmBC,EAAAA,gBAAAA,CAAiB,GAAGC,gBAAAA,CAAMC,QAAQ,CAAC,KAAA,CAAA;AAC7D,IAAA,MAAMC,mBAAsB,GAAA,IAAMH,gBAAiB,CAAA,CAACI,YAAc,CAACA,SAAAA,CAAAA;IAEnE,MAAM,CAACC,YAAcC,EAAAA,QAAAA,CAAS,GAAGL,gBAAAA,CAAMM,UAAU,CAC/C3B,OAAAA,EACAL,YACA,EAAA,IAAoBG,IAAKY,CAAAA,MAAAA,CAAAA,CAAAA;AAE3B,IAAA,MAAMkB,aAAwCF,GAAAA,QAAAA;AAC9C,IAAA,MAAM,EAAE9B,WAAW,EAAEC,YAAY,EAAE,GAAG4B,YAAAA;AAEtC,IAAA,MAAMI,eAAe,CAACC,CAAAA,GAAAA;AACpBA,QAAAA,CAAAA,CAAEC,cAAc,EAAA;AAChBR,QAAAA,mBAAAA,EAAAA;AACF,KAAA;AAEA,IAAA,MAAMS,aAAgB,GAAA,UAAA;QACpBrB,UAAW,CAAA,4BAAA,CAAA;QACX,MAAMI,YAAAA,CAAakB,WAAW,CAACpC,YAAAA,CAAAA;QAC/BuB,gBAAiB,CAAA,KAAA,CAAA;QACjBQ,aAAclC,CAAAA,SAAAA,EAAAA,CAAAA;QACdmB,kBAAmB,CAAA;YACjBrB,IAAM,EAAA,SAAA;AACN0C,YAAAA,OAAAA,EAASpF,aAAc,CAAA;gBACrBsB,EAAI,EAAA,kCAAA;gBACJE,cAAgB,EAAA;AAClB,aAAA;AACF,SAAA,CAAA;AACF,KAAA;IAEA,MAAM6D,YAAAA,GAAe,CAAC,EACpBxD,MAAAA,EAAQ,EAAEJ,IAAI,EAAEG,KAAK,EAAE,EAGxB,GAAA;AACCkD,QAAAA,aAAAA,CAAc/E,QAAS,CAAA;AAAE0B,YAAAA,IAAAA;AAAMG,YAAAA;AAAM,SAAA,CAAA,CAAA;AACvC,KAAA;IAEA,qBACE1B,cAAA,CAACoF,oBAAQzE,IAAI,EAAA;gCACXX,cAAA,CAACqF,iBAAKC,IAAI,EAAA;YAACC,WAAWrB,EAAAA,gBAAAA;AACpB,YAAA,QAAA,gBAAAzD,eAAC+E,CAAAA,MAAAA,EAAAA;gBAAKC,QAAUZ,EAAAA,YAAAA;;AACd,kCAAA7E,cAAA,CAACoF,oBAAQM,MAAM,EAAA;AACbC,wBAAAA,gBAAAA,gBACE3F,cAAC4F,CAAAA,iBAAAA,EAAAA;4BACCC,GAAKC,EAAAA,sBAAAA;AACLC,4BAAAA,SAAAA,gBAAW/F,cAACgG,CAAAA,eAAAA,EAAAA,EAAAA,CAAAA;AACZC,4BAAAA,EAAAA,EAAI,CAAC,SAAS,EAAE3D,cAAAA,CAAS,CAAC;4BAC1BlB,EAAG,EAAA,SAAA;sCAEFtB,aAAc,CAAA;AAAEsB,gCAAAA,EAAAA,EAAIC,aAAQ,CAAA,aAAA,CAAA;gCAAgBC,cAAgB,EAAA;AAAO,6BAAA;;AAGxE4E,wBAAAA,aAAAA,gBACElG,cAACmG,CAAAA,mBAAAA,EAAAA;4BACCC,IAAK,EAAA,GAAA;AACLL,4BAAAA,SAAAA,gBAAW/F,cAACqG,CAAAA,WAAAA,EAAAA,EAAAA,CAAAA;AACZC,4BAAAA,QAAAA,EAAUC,QAAQ1D,YAAcD,EAAAA,WAAAA,CAAAA;4BAChCJ,IAAK,EAAA,QAAA;sCAEJ1C,aAAc,CAAA;gCAAEsB,EAAI,EAAA,aAAA;gCAAeE,cAAgB,EAAA;AAAO,6BAAA;;AAG/DkF,wBAAAA,QAAAA,EAAU1G,aAAc,CAAA;AACtBsB,4BAAAA,EAAAA,EAAIC,aAAQ,CAAA,iBAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB,yBAAA,CAAA;AACAmF,wBAAAA,KAAAA,EAAO3G,aAAc,CAAA;AACnBsB,4BAAAA,EAAAA,EAAIC,aAAQ,CAAA,cAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB,yBAAA;;AAEF,kCAAAtB,cAAA,CAACoF,oBAAQsB,OAAO,EAAA;AACd,wBAAA,QAAA,gBAAA1G,cAACN,CAAAA,QAAAA,EAAAA;4BACCuC,aAAY,EAAA,UAAA;4BACZrC,QAAUiD,EAAAA,YAAAA,CAAajD,QAAQ,IAAI,EAAA;4BACnCD,IAAMkD,EAAAA,YAAAA,CAAalD,IAAI,IAAI,EAAA;4BAC3BE,QAAUsF,EAAAA;;;AAEI,oBAAA,GAAA;AAElB,kCAAAnF,cAAA,CAAC2G,oBAAOhG,IAAI,EAAA;wBAACiG,IAAMzC,EAAAA,iBAAAA;wBAAmB0C,YAActC,EAAAA,mBAAAA;AAClD,wBAAA,QAAA,gBAAAvE,cAAC8G,CAAAA,yBAAAA,EAAAA;4BAAcC,SAAW/B,EAAAA,aAAAA;4BAAegC,OAAQ,EAAA,SAAA;sCAC9ClH,aAAc,CAAA;AACbsB,gCAAAA,EAAAA,EAAIC,aAAQ,CAAA,+CAAA,CAAA;gCACZC,cAAgB,EAAA;AAClB,6BAAA;;;;;;;AAOd;;;;"}