@payloadcms/ui 3.0.0-canary.4eb1bfc → 3.0.0-canary.51be7be

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 (222) hide show
  1. package/dist/elements/AddNewRelation/index.scss +36 -34
  2. package/dist/elements/AppHeader/index.scss +151 -150
  3. package/dist/elements/ArrayAction/index.scss +23 -21
  4. package/dist/elements/Autosave/index.scss +4 -2
  5. package/dist/elements/Banner/index.scss +51 -49
  6. package/dist/elements/BulkUpload/ActionsBar/index.scss +45 -43
  7. package/dist/elements/BulkUpload/AddFilesView/index.d.ts +2 -1
  8. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
  9. package/dist/elements/BulkUpload/AddFilesView/index.js +2 -0
  10. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  11. package/dist/elements/BulkUpload/AddFilesView/index.scss +23 -21
  12. package/dist/elements/BulkUpload/AddingFilesView/index.scss +16 -14
  13. package/dist/elements/BulkUpload/DrawerCloseButton/index.scss +23 -21
  14. package/dist/elements/BulkUpload/EditForm/index.scss +6 -4
  15. package/dist/elements/BulkUpload/FileSidebar/index.scss +214 -212
  16. package/dist/elements/BulkUpload/Header/index.scss +11 -9
  17. package/dist/elements/BulkUpload/index.d.ts.map +1 -1
  18. package/dist/elements/BulkUpload/index.js +22 -42
  19. package/dist/elements/BulkUpload/index.js.map +1 -1
  20. package/dist/elements/Button/index.scss +202 -200
  21. package/dist/elements/Card/index.scss +58 -56
  22. package/dist/elements/CodeEditor/index.scss +16 -14
  23. package/dist/elements/Collapsible/index.scss +125 -123
  24. package/dist/elements/ColumnSelector/index.scss +36 -34
  25. package/dist/elements/CopyToClipboard/index.scss +21 -19
  26. package/dist/elements/DatePicker/DatePicker.d.ts +1 -1
  27. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  28. package/dist/elements/DatePicker/DatePicker.js +1 -1
  29. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  30. package/dist/elements/DatePicker/index.scss +309 -307
  31. package/dist/elements/DatePicker/library.scss +859 -0
  32. package/dist/elements/DeleteDocument/index.scss +32 -30
  33. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  34. package/dist/elements/DeleteMany/index.js +16 -5
  35. package/dist/elements/DeleteMany/index.js.map +1 -1
  36. package/dist/elements/DeleteMany/index.scss +29 -27
  37. package/dist/elements/DocumentControls/index.js +1 -1
  38. package/dist/elements/DocumentControls/index.js.map +1 -1
  39. package/dist/elements/DocumentControls/index.scss +190 -188
  40. package/dist/elements/DocumentDrawer/index.scss +55 -53
  41. package/dist/elements/DocumentFields/index.scss +144 -142
  42. package/dist/elements/Drawer/index.scss +111 -109
  43. package/dist/elements/Dropzone/index.scss +32 -30
  44. package/dist/elements/DuplicateDocument/index.scss +31 -29
  45. package/dist/elements/EditMany/index.scss +162 -160
  46. package/dist/elements/EditUpload/index.scss +180 -178
  47. package/dist/elements/ErrorPill/index.scss +27 -25
  48. package/dist/elements/FieldSelect/index.scss +4 -2
  49. package/dist/elements/FileDetails/DraggableFileDetails/index.scss +25 -23
  50. package/dist/elements/FileDetails/FileMeta/index.scss +21 -19
  51. package/dist/elements/FileDetails/StaticFileDetails/index.scss +104 -102
  52. package/dist/elements/GenerateConfirmation/index.scss +29 -27
  53. package/dist/elements/Gutter/index.scss +14 -12
  54. package/dist/elements/Hamburger/index.scss +38 -36
  55. package/dist/elements/IDLabel/index.scss +11 -9
  56. package/dist/elements/ListControls/index.scss +71 -69
  57. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  58. package/dist/elements/ListDrawer/DrawerContent.js +61 -57
  59. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  60. package/dist/elements/ListDrawer/index.scss +93 -91
  61. package/dist/elements/ListHeader/index.scss +9 -7
  62. package/dist/elements/ListSelection/index.scss +14 -12
  63. package/dist/elements/Loading/index.scss +108 -106
  64. package/dist/elements/Localizer/LocalizerLabel/index.scss +44 -42
  65. package/dist/elements/Localizer/index.scss +7 -5
  66. package/dist/elements/Locked/index.scss +11 -9
  67. package/dist/elements/Nav/NavToggler/index.scss +9 -7
  68. package/dist/elements/NavGroup/index.scss +43 -41
  69. package/dist/elements/Pagination/ClickableArrow/index.scss +34 -32
  70. package/dist/elements/Pagination/index.scss +40 -38
  71. package/dist/elements/PerPage/index.scss +37 -35
  72. package/dist/elements/Pill/index.scss +103 -101
  73. package/dist/elements/Popup/PopupButtonList/index.scss +45 -43
  74. package/dist/elements/Popup/PopupTrigger/index.scss +23 -21
  75. package/dist/elements/Popup/index.scss +185 -183
  76. package/dist/elements/PreviewSizes/index.scss +115 -113
  77. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  78. package/dist/elements/PublishMany/index.js +16 -5
  79. package/dist/elements/PublishMany/index.js.map +1 -1
  80. package/dist/elements/PublishMany/index.scss +28 -26
  81. package/dist/elements/ReactSelect/ClearIndicator/index.scss +6 -4
  82. package/dist/elements/ReactSelect/DropdownIndicator/index.scss +11 -9
  83. package/dist/elements/ReactSelect/MultiValue/index.scss +26 -24
  84. package/dist/elements/ReactSelect/MultiValueLabel/index.scss +16 -14
  85. package/dist/elements/ReactSelect/MultiValueRemove/index.scss +20 -18
  86. package/dist/elements/ReactSelect/ValueContainer/index.scss +22 -20
  87. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  88. package/dist/elements/ReactSelect/index.js +2 -0
  89. package/dist/elements/ReactSelect/index.js.map +1 -1
  90. package/dist/elements/ReactSelect/index.scss +66 -59
  91. package/dist/elements/RelationshipTable/cells/DrawerLink/index.scss +5 -3
  92. package/dist/elements/RelationshipTable/index.scss +21 -19
  93. package/dist/elements/RenderTitle/index.scss +7 -5
  94. package/dist/elements/SearchFilter/index.scss +31 -28
  95. package/dist/elements/SelectAll/index.scss +5 -3
  96. package/dist/elements/SelectRow/index.scss +6 -4
  97. package/dist/elements/ShimmerEffect/index.scss +26 -24
  98. package/dist/elements/SortColumn/index.scss +51 -49
  99. package/dist/elements/SortComplex/index.scss +27 -25
  100. package/dist/elements/Status/index.scss +45 -43
  101. package/dist/elements/StayLoggedIn/index.scss +28 -26
  102. package/dist/elements/StepNav/index.scss +62 -61
  103. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.scss +20 -18
  104. package/dist/elements/Table/DefaultCell/fields/Code/index.scss +22 -20
  105. package/dist/elements/Table/DefaultCell/fields/File/index.scss +18 -16
  106. package/dist/elements/Table/DefaultCell/fields/JSON/index.scss +20 -18
  107. package/dist/elements/Table/DefaultCell/index.js +2 -2
  108. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  109. package/dist/elements/Table/index.scss +74 -72
  110. package/dist/elements/Thumbnail/index.scss +37 -35
  111. package/dist/elements/ThumbnailCard/index.scss +31 -29
  112. package/dist/elements/Tooltip/index.scss +77 -75
  113. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  114. package/dist/elements/UnpublishMany/index.js +16 -5
  115. package/dist/elements/UnpublishMany/index.js.map +1 -1
  116. package/dist/elements/UnpublishMany/index.scss +28 -26
  117. package/dist/elements/Upload/index.d.ts.map +1 -1
  118. package/dist/elements/Upload/index.js +2 -0
  119. package/dist/elements/Upload/index.js.map +1 -1
  120. package/dist/elements/Upload/index.scss +122 -120
  121. package/dist/elements/WhereBuilder/Condition/Number/index.scss +4 -2
  122. package/dist/elements/WhereBuilder/Condition/Relationship/index.scss +9 -7
  123. package/dist/elements/WhereBuilder/Condition/Text/index.scss +4 -2
  124. package/dist/elements/WhereBuilder/Condition/index.scss +43 -41
  125. package/dist/elements/WhereBuilder/index.scss +28 -26
  126. package/dist/exports/client/{DatePicker-HNJMUG32.js → DatePicker-2ZXVD574.js} +2 -2
  127. package/dist/exports/client/{chunk-IHJK2MAT.js → chunk-ED2SHEMU.js} +2 -2
  128. package/dist/exports/client/{chunk-IHJK2MAT.js.map → chunk-ED2SHEMU.js.map} +3 -3
  129. package/dist/exports/client/index.d.ts +2 -1
  130. package/dist/exports/client/index.d.ts.map +1 -1
  131. package/dist/exports/client/index.js +22 -19
  132. package/dist/exports/client/index.js.map +3 -3
  133. package/dist/fields/Array/index.scss +74 -72
  134. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.scss +25 -23
  135. package/dist/fields/Blocks/BlocksDrawer/index.scss +36 -34
  136. package/dist/fields/Blocks/SectionTitle/index.scss +51 -49
  137. package/dist/fields/Blocks/index.scss +89 -87
  138. package/dist/fields/Checkbox/index.scss +107 -105
  139. package/dist/fields/Code/index.scss +18 -16
  140. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  141. package/dist/fields/Collapsible/index.scss +8 -6
  142. package/dist/fields/ConfirmPassword/index.scss +18 -16
  143. package/dist/fields/DateTime/index.scss +13 -11
  144. package/dist/fields/Email/index.scss +21 -19
  145. package/dist/fields/FieldDescription/index.scss +9 -7
  146. package/dist/fields/FieldError/index.scss +13 -11
  147. package/dist/fields/FieldLabel/index.scss +17 -15
  148. package/dist/fields/Group/index.scss +107 -105
  149. package/dist/fields/JSON/index.scss +11 -9
  150. package/dist/fields/Number/index.scss +19 -17
  151. package/dist/fields/Password/index.scss +18 -16
  152. package/dist/fields/Point/index.scss +33 -31
  153. package/dist/fields/RadioGroup/Radio/index.scss +58 -56
  154. package/dist/fields/RadioGroup/index.scss +57 -55
  155. package/dist/fields/Relationship/index.scss +44 -42
  156. package/dist/fields/Relationship/select-components/MultiValueLabel/index.scss +40 -38
  157. package/dist/fields/Relationship/select-components/SingleValue/index.scss +43 -41
  158. package/dist/fields/Row/index.scss +31 -29
  159. package/dist/fields/Select/index.scss +16 -14
  160. package/dist/fields/Tabs/Tab/index.scss +58 -56
  161. package/dist/fields/Tabs/index.d.ts.map +1 -1
  162. package/dist/fields/Tabs/index.js +69 -53
  163. package/dist/fields/Tabs/index.js.map +1 -1
  164. package/dist/fields/Tabs/index.scss +46 -44
  165. package/dist/fields/Text/index.scss +23 -21
  166. package/dist/fields/Textarea/index.scss +89 -87
  167. package/dist/fields/Upload/HasMany/index.scss +20 -18
  168. package/dist/fields/Upload/HasOne/index.scss +5 -3
  169. package/dist/fields/Upload/Input.d.ts.map +1 -1
  170. package/dist/fields/Upload/Input.js +39 -36
  171. package/dist/fields/Upload/Input.js.map +1 -1
  172. package/dist/fields/Upload/RelationshipContent/index.scss +44 -42
  173. package/dist/fields/Upload/UploadCard/index.scss +21 -19
  174. package/dist/fields/Upload/index.scss +49 -47
  175. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  176. package/dist/forms/Form/fieldReducer.js +7 -0
  177. package/dist/forms/Form/fieldReducer.js.map +1 -1
  178. package/dist/forms/Form/index.scss +5 -3
  179. package/dist/forms/RenderFields/index.scss +47 -45
  180. package/dist/forms/Submit/index.scss +5 -3
  181. package/dist/forms/useField/index.d.ts.map +1 -1
  182. package/dist/forms/useField/index.js +1 -1
  183. package/dist/forms/useField/index.js.map +1 -1
  184. package/dist/graphics/Account/Default/index.scss +43 -41
  185. package/dist/icons/Calendar/index.scss +8 -6
  186. package/dist/icons/Check/index.scss +9 -7
  187. package/dist/icons/Chevron/index.scss +18 -16
  188. package/dist/icons/CloseMenu/index.scss +7 -5
  189. package/dist/icons/Copy/index.scss +9 -7
  190. package/dist/icons/DragHandle/index.scss +9 -7
  191. package/dist/icons/Edit/index.scss +9 -7
  192. package/dist/icons/Line/index.scss +8 -6
  193. package/dist/icons/Link/index.scss +8 -6
  194. package/dist/icons/Lock/index.scss +6 -4
  195. package/dist/icons/LogOut/index.scss +8 -6
  196. package/dist/icons/Menu/index.scss +6 -4
  197. package/dist/icons/More/index.scss +8 -6
  198. package/dist/icons/Plus/index.scss +6 -4
  199. package/dist/icons/Search/index.scss +8 -6
  200. package/dist/icons/Swap/index.scss +9 -7
  201. package/dist/icons/X/index.scss +6 -4
  202. package/dist/providers/Auth/index.d.ts +9 -4
  203. package/dist/providers/Auth/index.d.ts.map +1 -1
  204. package/dist/providers/Auth/index.js +51 -56
  205. package/dist/providers/Auth/index.js.map +1 -1
  206. package/dist/providers/Config/createClientConfig/fields.d.ts.map +1 -1
  207. package/dist/providers/Config/createClientConfig/fields.js +21 -3
  208. package/dist/providers/Config/createClientConfig/fields.js.map +1 -1
  209. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  210. package/dist/providers/DocumentInfo/index.js +4 -0
  211. package/dist/providers/DocumentInfo/index.js.map +1 -1
  212. package/dist/providers/Selection/index.js +3 -3
  213. package/dist/providers/Selection/index.js.map +1 -1
  214. package/dist/scss/app.scss +166 -162
  215. package/dist/scss/colors.scss +256 -254
  216. package/dist/scss/resets.scss +9 -7
  217. package/dist/scss/toastify.scss +42 -40
  218. package/dist/scss/toasts.scss +105 -103
  219. package/dist/scss/type.scss +81 -79
  220. package/dist/styles.css +1 -1
  221. package/package.json +5 -5
  222. /package/dist/exports/client/{DatePicker-HNJMUG32.js.map → DatePicker-2ZXVD574.js.map} +0 -0
@@ -20,7 +20,7 @@ import { TabComponent } from './Tab/index.js';
20
20
  const baseClass = 'tabs-field';
21
21
  export { TabsProvider };
22
22
  const TabsFieldComponent = props => {
23
- const $ = _c(49);
23
+ const $ = _c(54);
24
24
  const {
25
25
  field,
26
26
  field: t0,
@@ -163,22 +163,35 @@ const TabsFieldComponent = props => {
163
163
  t9 = $[18];
164
164
  }
165
165
  const generateTabPath = t9;
166
- const t10 = isWithinCollapsible && `${baseClass}--within-collapsible`;
167
- let t11;
168
- if ($[19] !== className || $[20] !== t10) {
169
- t11 = [fieldBaseClass, className, baseClass, t10].filter(Boolean);
170
- $[19] = className;
171
- $[20] = t10;
172
- $[21] = t11;
166
+ const activeTabDescription = activeTabConfig.description;
167
+ let t10;
168
+ if ($[19] !== activeTabDescription || $[20] !== i18n) {
169
+ t10 = typeof activeTabDescription === "function" ? activeTabDescription({
170
+ t: i18n.t
171
+ }) : activeTabDescription;
172
+ $[19] = activeTabDescription;
173
+ $[20] = i18n;
174
+ $[21] = t10;
173
175
  } else {
174
- t11 = $[21];
176
+ t10 = $[21];
175
177
  }
176
- const t12 = t11.join(" ");
177
- let t13;
178
- if ($[22] !== activeTabIndex || $[23] !== path || $[24] !== handleTabChange || $[25] !== tabs || $[26] !== activeTabConfig || $[27] !== i18n || $[28] !== field || $[29] !== generateTabPath || $[30] !== siblingPermissions || $[31] !== schemaPath || $[32] !== forceRender || $[33] !== readOnly || $[34] !== t12) {
179
- let t14;
180
- if ($[36] !== activeTabIndex || $[37] !== path || $[38] !== handleTabChange) {
181
- t14 = (tab, tabIndex) => _jsx(TabComponent, {
178
+ const activeTabStaticDescription = t10;
179
+ const t11 = isWithinCollapsible && `${baseClass}--within-collapsible`;
180
+ let t12;
181
+ if ($[22] !== className || $[23] !== t11) {
182
+ t12 = [fieldBaseClass, className, baseClass, t11].filter(Boolean);
183
+ $[22] = className;
184
+ $[23] = t11;
185
+ $[24] = t12;
186
+ } else {
187
+ t12 = $[24];
188
+ }
189
+ const t13 = t12.join(" ");
190
+ let t14;
191
+ if ($[25] !== activeTabIndex || $[26] !== path || $[27] !== handleTabChange || $[28] !== tabs || $[29] !== activeTabConfig || $[30] !== i18n || $[31] !== field || $[32] !== activeTabStaticDescription || $[33] !== generateTabPath || $[34] !== siblingPermissions || $[35] !== schemaPath || $[36] !== forceRender || $[37] !== readOnly || $[38] !== t13) {
192
+ let t15;
193
+ if ($[40] !== activeTabIndex || $[41] !== path || $[42] !== handleTabChange) {
194
+ t15 = (tab, tabIndex) => _jsx(TabComponent, {
182
195
  isActive: activeTabIndex === tabIndex,
183
196
  parentPath: path,
184
197
  setIsActive: () => {
@@ -186,19 +199,20 @@ const TabsFieldComponent = props => {
186
199
  },
187
200
  tab
188
201
  }, tabIndex);
189
- $[36] = activeTabIndex;
190
- $[37] = path;
191
- $[38] = handleTabChange;
192
- $[39] = t14;
202
+ $[40] = activeTabIndex;
203
+ $[41] = path;
204
+ $[42] = handleTabChange;
205
+ $[43] = t15;
193
206
  } else {
194
- t14 = $[39];
207
+ t15 = $[43];
195
208
  }
196
- let t15;
197
- if ($[40] !== activeTabConfig || $[41] !== i18n || $[42] !== field || $[43] !== generateTabPath || $[44] !== siblingPermissions || $[45] !== schemaPath || $[46] !== forceRender || $[47] !== readOnly) {
198
- t15 = activeTabConfig && _jsxs("div", {
209
+ let t16;
210
+ if ($[44] !== activeTabConfig || $[45] !== i18n || $[46] !== field || $[47] !== activeTabStaticDescription || $[48] !== generateTabPath || $[49] !== siblingPermissions || $[50] !== schemaPath || $[51] !== forceRender || $[52] !== readOnly) {
211
+ t16 = activeTabConfig && _jsxs("div", {
199
212
  className: [`${baseClass}__tab`, activeTabConfig.label && `${baseClass}__tabConfigLabel-${toKebabCase(getTranslation(activeTabConfig.label, i18n))}`].filter(Boolean).join(" "),
200
213
  children: [_jsx(FieldDescription, {
201
214
  Description: field?.admin?.components?.Description,
215
+ description: activeTabStaticDescription,
202
216
  field
203
217
  }), _jsx(RenderFields, {
204
218
  fields: activeTabConfig.fields,
@@ -210,51 +224,53 @@ const TabsFieldComponent = props => {
210
224
  schemaPath: `${schemaPath ? `${schemaPath}` : ""}${tabHasName(activeTabConfig) && activeTabConfig.name ? `.${activeTabConfig.name}` : ""}`
211
225
  }, activeTabConfig.label ? getTranslation(activeTabConfig.label, i18n) : activeTabConfig.name)]
212
226
  });
213
- $[40] = activeTabConfig;
214
- $[41] = i18n;
215
- $[42] = field;
216
- $[43] = generateTabPath;
217
- $[44] = siblingPermissions;
218
- $[45] = schemaPath;
219
- $[46] = forceRender;
220
- $[47] = readOnly;
221
- $[48] = t15;
227
+ $[44] = activeTabConfig;
228
+ $[45] = i18n;
229
+ $[46] = field;
230
+ $[47] = activeTabStaticDescription;
231
+ $[48] = generateTabPath;
232
+ $[49] = siblingPermissions;
233
+ $[50] = schemaPath;
234
+ $[51] = forceRender;
235
+ $[52] = readOnly;
236
+ $[53] = t16;
222
237
  } else {
223
- t15 = $[48];
238
+ t16 = $[53];
224
239
  }
225
- t13 = _jsx("div", {
226
- className: t12,
240
+ t14 = _jsx("div", {
241
+ className: t13,
227
242
  children: _jsxs(TabsProvider, {
228
243
  children: [_jsx("div", {
229
244
  className: `${baseClass}__tabs-wrap`,
230
245
  children: _jsx("div", {
231
246
  className: `${baseClass}__tabs`,
232
- children: tabs.map(t14)
247
+ children: tabs.map(t15)
233
248
  })
234
249
  }), _jsx("div", {
235
250
  className: `${baseClass}__content-wrap`,
236
- children: t15
251
+ children: t16
237
252
  })]
238
253
  })
239
254
  });
240
- $[22] = activeTabIndex;
241
- $[23] = path;
242
- $[24] = handleTabChange;
243
- $[25] = tabs;
244
- $[26] = activeTabConfig;
245
- $[27] = i18n;
246
- $[28] = field;
247
- $[29] = generateTabPath;
248
- $[30] = siblingPermissions;
249
- $[31] = schemaPath;
250
- $[32] = forceRender;
251
- $[33] = readOnly;
252
- $[34] = t12;
253
- $[35] = t13;
255
+ $[25] = activeTabIndex;
256
+ $[26] = path;
257
+ $[27] = handleTabChange;
258
+ $[28] = tabs;
259
+ $[29] = activeTabConfig;
260
+ $[30] = i18n;
261
+ $[31] = field;
262
+ $[32] = activeTabStaticDescription;
263
+ $[33] = generateTabPath;
264
+ $[34] = siblingPermissions;
265
+ $[35] = schemaPath;
266
+ $[36] = forceRender;
267
+ $[37] = readOnly;
268
+ $[38] = t13;
269
+ $[39] = t14;
254
270
  } else {
255
- t13 = $[35];
271
+ t14 = $[39];
256
272
  }
257
- return t13;
273
+ return t14;
258
274
  };
259
275
  export const TabsField = withCondition(TabsFieldComponent);
260
276
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","getTranslation","tabHasName","toKebabCase","React","useCallback","useEffect","useState","useCollapsible","useFieldProps","RenderFields","withCondition","useDocumentInfo","usePreferences","useTranslation","FieldDescription","fieldBaseClass","TabsProvider","TabComponent","baseClass","TabsFieldComponent","props","$","field","t0","forceRender","t1","readOnly","readOnlyFromTopLevelProps","_path","pathFromProps","admin","t2","tabs","t3","t4","undefined","className","readOnlyFromAdmin","t5","indexPath","path","pathFromContext","readOnlyFromContext","schemaPath","siblingPermissions","readOnlyFromProps","getPreference","setPreference","preferencesKey","i18n","isWithinCollapsible","activeTabIndex","setActiveTabIndex","tabsPrefKey","t6","t7","getInitialPref","existingPreferences","initialIndex","fields","tabIndex","t8","incomingTabIndex","existingPreferences_0","handleTabChange","activeTabConfig","t9","generateTabPath","tabPath","name","t10","t11","filter","Boolean","t12","join","t13","t14","tab","_jsx","isActive","parentPath","setIsActive","t15","_jsxs","label","children","Description","components","margins","permissions","map","TabsField"],"sources":["../../../src/fields/Tabs/index.tsx"],"sourcesContent":["'use client'\nimport type { DocumentPreferences, TabsFieldClientComponent } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { tabHasName, toKebabCase } from 'payload/shared'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport { useCollapsible } from '../../elements/Collapsible/provider.js'\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { usePreferences } from '../../providers/Preferences/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\nimport { TabsProvider } from './provider.js'\nimport { TabComponent } from './Tab/index.js'\n\nconst baseClass = 'tabs-field'\n\nexport { TabsProvider }\n\nconst TabsFieldComponent: TabsFieldClientComponent = (props) => {\n const {\n field,\n field: {\n _path: pathFromProps,\n admin: { className, readOnly: readOnlyFromAdmin } = {},\n tabs = [],\n },\n forceRender = false,\n readOnly: readOnlyFromTopLevelProps,\n } = props\n\n const {\n indexPath,\n path: pathFromContext,\n readOnly: readOnlyFromContext,\n schemaPath,\n siblingPermissions,\n } = useFieldProps()\n const readOnlyFromProps = readOnlyFromTopLevelProps || readOnlyFromAdmin\n\n const readOnly = readOnlyFromProps || readOnlyFromContext\n const path = pathFromContext ?? pathFromProps\n const { getPreference, setPreference } = usePreferences()\n const { preferencesKey } = useDocumentInfo()\n const { i18n } = useTranslation()\n const { isWithinCollapsible } = useCollapsible()\n const [activeTabIndex, setActiveTabIndex] = useState<number>(0)\n const tabsPrefKey = `tabs-${indexPath}`\n\n useEffect(() => {\n if (preferencesKey) {\n const getInitialPref = async () => {\n const existingPreferences: DocumentPreferences = await getPreference(preferencesKey)\n const initialIndex = path\n ? existingPreferences?.fields?.[path]?.tabIndex\n : existingPreferences?.fields?.[tabsPrefKey]?.tabIndex\n setActiveTabIndex(initialIndex || 0)\n }\n void getInitialPref()\n }\n }, [path, getPreference, preferencesKey, tabsPrefKey])\n\n const handleTabChange = useCallback(\n async (incomingTabIndex: number): Promise<void> => {\n setActiveTabIndex(incomingTabIndex)\n\n const existingPreferences: DocumentPreferences = await getPreference(preferencesKey)\n\n if (preferencesKey) {\n void setPreference(preferencesKey, {\n ...existingPreferences,\n ...(path\n ? {\n fields: {\n ...(existingPreferences?.fields || {}),\n [path]: {\n ...existingPreferences?.fields?.[path],\n tabIndex: incomingTabIndex,\n },\n },\n }\n : {\n fields: {\n ...existingPreferences?.fields,\n [tabsPrefKey]: {\n ...existingPreferences?.fields?.[tabsPrefKey],\n tabIndex: incomingTabIndex,\n },\n },\n }),\n })\n }\n },\n [preferencesKey, getPreference, setPreference, path, tabsPrefKey],\n )\n\n const activeTabConfig = tabs[activeTabIndex]\n\n function generateTabPath() {\n let tabPath = path\n if (path && tabHasName(activeTabConfig) && activeTabConfig.name) {\n tabPath = `${path}.${activeTabConfig.name}`\n } else if (!path && tabHasName(activeTabConfig) && activeTabConfig.name) {\n tabPath = activeTabConfig.name\n }\n\n return tabPath\n }\n\n return (\n <div\n className={[\n fieldBaseClass,\n className,\n baseClass,\n isWithinCollapsible && `${baseClass}--within-collapsible`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <TabsProvider>\n <div className={`${baseClass}__tabs-wrap`}>\n <div className={`${baseClass}__tabs`}>\n {tabs.map((tab, tabIndex) => {\n return (\n <TabComponent\n isActive={activeTabIndex === tabIndex}\n key={tabIndex}\n parentPath={path}\n setIsActive={() => {\n void handleTabChange(tabIndex)\n }}\n tab={tab}\n />\n )\n })}\n </div>\n </div>\n <div className={`${baseClass}__content-wrap`}>\n {activeTabConfig && (\n <div\n className={[\n `${baseClass}__tab`,\n activeTabConfig.label &&\n `${baseClass}__tabConfigLabel-${toKebabCase(\n getTranslation(activeTabConfig.label, i18n),\n )}`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <FieldDescription Description={field?.admin?.components?.Description} field={field} />\n <RenderFields\n fields={activeTabConfig.fields}\n forceRender={forceRender}\n key={\n activeTabConfig.label\n ? getTranslation(activeTabConfig.label, i18n)\n : activeTabConfig['name']\n }\n margins=\"small\"\n path={generateTabPath()}\n permissions={\n 'name' in activeTabConfig && siblingPermissions?.[activeTabConfig.name]?.fields\n ? siblingPermissions[activeTabConfig.name]?.fields\n : siblingPermissions\n }\n readOnly={readOnly}\n schemaPath={`${schemaPath ? `${schemaPath}` : ''}${tabHasName(activeTabConfig) && activeTabConfig.name ? `.${activeTabConfig.name}` : ''}`}\n />\n </div>\n )}\n </div>\n </TabsProvider>\n </div>\n )\n}\n\nexport const TabsField = withCondition(TabsFieldComponent)\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","tabHasName","toKebabCase","React","useCallback","useEffect","useState","useCollapsible","useFieldProps","RenderFields","withCondition","useDocumentInfo","usePreferences","useTranslation","FieldDescription","fieldBaseClass","TabsProvider","TabComponent","baseClass","TabsFieldComponent","props","$","field","t0","forceRender","t1","readOnly","readOnlyFromTopLevelProps","_path","pathFromProps","admin","t2","tabs","t3","t4","undefined","className","readOnlyFromAdmin","t5","indexPath","path","pathFromContext","readOnlyFromContext","schemaPath","siblingPermissions","readOnlyFromProps","getPreference","setPreference","preferencesKey","i18n","isWithinCollapsible","activeTabIndex","setActiveTabIndex","tabsPrefKey","t6","t7","getInitialPref","existingPreferences","initialIndex","fields","tabIndex","t8","incomingTabIndex","existingPreferences_0","handleTabChange","activeTabConfig","t9","generateTabPath","tabPath","name","activeTabDescription","description","t10","t","activeTabStaticDescription","t11","t12","filter","Boolean","t13","join","t14","t15","tab","_jsx","isActive","parentPath","setIsActive","t16","_jsxs","label","children","Description","components","margins","permissions","map","TabsField"],"sources":["../../../src/fields/Tabs/index.tsx"],"sourcesContent":["'use client'\nimport type { DocumentPreferences, TabsFieldClientComponent } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { tabHasName, toKebabCase } from 'payload/shared'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport { useCollapsible } from '../../elements/Collapsible/provider.js'\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { usePreferences } from '../../providers/Preferences/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\nimport { TabsProvider } from './provider.js'\nimport { TabComponent } from './Tab/index.js'\n\nconst baseClass = 'tabs-field'\n\nexport { TabsProvider }\n\nconst TabsFieldComponent: TabsFieldClientComponent = (props) => {\n const {\n field,\n field: {\n _path: pathFromProps,\n admin: { className, readOnly: readOnlyFromAdmin } = {},\n tabs = [],\n },\n forceRender = false,\n readOnly: readOnlyFromTopLevelProps,\n } = props\n\n const {\n indexPath,\n path: pathFromContext,\n readOnly: readOnlyFromContext,\n schemaPath,\n siblingPermissions,\n } = useFieldProps()\n const readOnlyFromProps = readOnlyFromTopLevelProps || readOnlyFromAdmin\n\n const readOnly = readOnlyFromProps || readOnlyFromContext\n const path = pathFromContext ?? pathFromProps\n const { getPreference, setPreference } = usePreferences()\n const { preferencesKey } = useDocumentInfo()\n const { i18n } = useTranslation()\n const { isWithinCollapsible } = useCollapsible()\n const [activeTabIndex, setActiveTabIndex] = useState<number>(0)\n const tabsPrefKey = `tabs-${indexPath}`\n\n useEffect(() => {\n if (preferencesKey) {\n const getInitialPref = async () => {\n const existingPreferences: DocumentPreferences = await getPreference(preferencesKey)\n const initialIndex = path\n ? existingPreferences?.fields?.[path]?.tabIndex\n : existingPreferences?.fields?.[tabsPrefKey]?.tabIndex\n setActiveTabIndex(initialIndex || 0)\n }\n void getInitialPref()\n }\n }, [path, getPreference, preferencesKey, tabsPrefKey])\n\n const handleTabChange = useCallback(\n async (incomingTabIndex: number): Promise<void> => {\n setActiveTabIndex(incomingTabIndex)\n\n const existingPreferences: DocumentPreferences = await getPreference(preferencesKey)\n\n if (preferencesKey) {\n void setPreference(preferencesKey, {\n ...existingPreferences,\n ...(path\n ? {\n fields: {\n ...(existingPreferences?.fields || {}),\n [path]: {\n ...existingPreferences?.fields?.[path],\n tabIndex: incomingTabIndex,\n },\n },\n }\n : {\n fields: {\n ...existingPreferences?.fields,\n [tabsPrefKey]: {\n ...existingPreferences?.fields?.[tabsPrefKey],\n tabIndex: incomingTabIndex,\n },\n },\n }),\n })\n }\n },\n [preferencesKey, getPreference, setPreference, path, tabsPrefKey],\n )\n\n const activeTabConfig = tabs[activeTabIndex]\n\n function generateTabPath() {\n let tabPath = path\n if (path && tabHasName(activeTabConfig) && activeTabConfig.name) {\n tabPath = `${path}.${activeTabConfig.name}`\n } else if (!path && tabHasName(activeTabConfig) && activeTabConfig.name) {\n tabPath = activeTabConfig.name\n }\n\n return tabPath\n }\n\n const activeTabDescription = activeTabConfig.description\n const activeTabStaticDescription =\n typeof activeTabDescription === 'function'\n ? activeTabDescription({ t: i18n.t })\n : activeTabDescription\n\n return (\n <div\n className={[\n fieldBaseClass,\n className,\n baseClass,\n isWithinCollapsible && `${baseClass}--within-collapsible`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <TabsProvider>\n <div className={`${baseClass}__tabs-wrap`}>\n <div className={`${baseClass}__tabs`}>\n {tabs.map((tab, tabIndex) => {\n return (\n <TabComponent\n isActive={activeTabIndex === tabIndex}\n key={tabIndex}\n parentPath={path}\n setIsActive={() => {\n void handleTabChange(tabIndex)\n }}\n tab={tab}\n />\n )\n })}\n </div>\n </div>\n <div className={`${baseClass}__content-wrap`}>\n {activeTabConfig && (\n <div\n className={[\n `${baseClass}__tab`,\n activeTabConfig.label &&\n `${baseClass}__tabConfigLabel-${toKebabCase(\n getTranslation(activeTabConfig.label, i18n),\n )}`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <FieldDescription\n Description={field?.admin?.components?.Description}\n description={activeTabStaticDescription}\n field={field}\n />\n <RenderFields\n fields={activeTabConfig.fields}\n forceRender={forceRender}\n key={\n activeTabConfig.label\n ? getTranslation(activeTabConfig.label, i18n)\n : activeTabConfig['name']\n }\n margins=\"small\"\n path={generateTabPath()}\n permissions={\n 'name' in activeTabConfig && siblingPermissions?.[activeTabConfig.name]?.fields\n ? siblingPermissions[activeTabConfig.name]?.fields\n : siblingPermissions\n }\n readOnly={readOnly}\n schemaPath={`${schemaPath ? `${schemaPath}` : ''}${tabHasName(activeTabConfig) && activeTabConfig.name ? `.${activeTabConfig.name}` : ''}`}\n />\n </div>\n )}\n </div>\n </TabsProvider>\n </div>\n )\n}\n\nexport const TabsField = withCondition(TabsFieldComponent)\n"],"mappings":"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","ignoreList":[]}
@@ -1,62 +1,64 @@
1
1
  @import '../../scss/styles.scss';
2
2
 
3
- .tabs-field {
4
- margin-top: base(2);
5
- margin-left: calc(var(--gutter-h) * -1);
6
- margin-right: calc(var(--gutter-h) * -1);
7
-
8
- &__content-wrap {
9
- padding-left: var(--gutter-h);
10
- padding-right: var(--gutter-h);
11
- }
3
+ @layer payload-default {
4
+ .tabs-field {
5
+ margin-top: base(2);
6
+ margin-left: calc(var(--gutter-h) * -1);
7
+ margin-right: calc(var(--gutter-h) * -1);
8
+
9
+ &__content-wrap {
10
+ padding-left: var(--gutter-h);
11
+ padding-right: var(--gutter-h);
12
+ }
13
+
14
+ &--within-collapsible {
15
+ margin: 0 calc(#{$baseline} * -1);
12
16
 
13
- &--within-collapsible {
14
- margin: 0 calc(#{$baseline} * -1);
17
+ .tabs-field__content-wrap {
18
+ padding-left: $baseline;
19
+ padding-right: $baseline;
20
+ }
21
+
22
+ .tabs-field__tabs {
23
+ &:before,
24
+ &:after {
25
+ content: ' ';
26
+ display: block;
27
+ width: $baseline;
28
+ }
29
+ }
30
+ }
15
31
 
16
- .tabs-field__content-wrap {
17
- padding-left: $baseline;
18
- padding-right: $baseline;
32
+ &__tabs-wrap {
33
+ overflow-x: auto;
34
+ overflow-y: hidden;
35
+ margin-bottom: $baseline;
19
36
  }
20
37
 
21
- .tabs-field__tabs {
38
+ &__tabs {
39
+ border-bottom: 1px solid var(--theme-elevation-100);
40
+ display: inline-flex;
41
+ min-width: 100%;
42
+ vertical-align: bottom;
43
+
22
44
  &:before,
23
45
  &:after {
24
46
  content: ' ';
25
47
  display: block;
26
- width: $baseline;
48
+ width: var(--gutter-h);
49
+ flex-shrink: 0;
27
50
  }
28
51
  }
29
- }
30
52
 
31
- &__tabs-wrap {
32
- overflow-x: auto;
33
- overflow-y: hidden;
34
- margin-bottom: $baseline;
35
- }
36
-
37
- &__tabs {
38
- border-bottom: 1px solid var(--theme-elevation-100);
39
- display: inline-flex;
40
- min-width: 100%;
41
- vertical-align: bottom;
42
-
43
- &:before,
44
- &:after {
45
- content: ' ';
46
- display: block;
47
- width: var(--gutter-h);
48
- flex-shrink: 0;
53
+ &__description {
54
+ margin-bottom: calc(var(--base) / 2);
49
55
  }
50
- }
51
56
 
52
- &__description {
53
- margin-bottom: calc(var(--base) / 2);
54
- }
55
-
56
- @include small-break {
57
- &--within-collapsible {
58
- margin-left: calc(var(--gutter-h) * -1);
59
- margin-right: calc(var(--gutter-h) * -1);
57
+ @include small-break {
58
+ &--within-collapsible {
59
+ margin-left: calc(var(--gutter-h) * -1);
60
+ margin-right: calc(var(--gutter-h) * -1);
61
+ }
60
62
  }
61
63
  }
62
64
  }
@@ -1,36 +1,38 @@
1
1
  @import '../../scss/styles.scss';
2
2
 
3
- .field-type.text {
4
- position: relative;
3
+ @layer payload-default {
4
+ .field-type.text {
5
+ position: relative;
5
6
 
6
- &:not(.has-many) {
7
- input {
8
- @include formInput;
7
+ &:not(.has-many) {
8
+ input {
9
+ @include formInput;
10
+ }
9
11
  }
10
12
  }
11
- }
12
13
 
13
- .has-many {
14
- .rs__input-container {
15
- overflow: hidden;
14
+ .has-many {
15
+ .rs__input-container {
16
+ overflow: hidden;
17
+ }
16
18
  }
17
- }
18
19
 
19
- html[data-theme='light'] {
20
- .field-type.text {
21
- &.error {
22
- input {
23
- @include lightInputError;
20
+ html[data-theme='light'] {
21
+ .field-type.text {
22
+ &.error {
23
+ input {
24
+ @include lightInputError;
25
+ }
24
26
  }
25
27
  }
26
28
  }
27
- }
28
29
 
29
- html[data-theme='dark'] {
30
- .field-type.text {
31
- &.error {
32
- input {
33
- @include darkInputError;
30
+ html[data-theme='dark'] {
31
+ .field-type.text {
32
+ &.error {
33
+ input {
34
+ @include darkInputError;
35
+ }
34
36
  }
35
37
  }
36
38
  }
@@ -1,112 +1,114 @@
1
1
  @import '../../scss/styles.scss';
2
2
 
3
- .field-type.textarea {
4
- position: relative;
5
- display: flex;
6
- flex-direction: column;
7
-
8
- .textarea-outer {
9
- @include formInput();
3
+ @layer payload-default {
4
+ .field-type.textarea {
5
+ position: relative;
10
6
  display: flex;
11
- resize: vertical;
12
- min-height: base(3);
13
- height: 100%;
7
+ flex-direction: column;
14
8
 
15
- // Scrollbar for giant content
16
- max-height: calc(100vh - $top-header-offset - calc(#{base(5)}));
17
- overflow: hidden;
9
+ .textarea-outer {
10
+ @include formInput();
11
+ display: flex;
12
+ resize: vertical;
13
+ min-height: base(3);
14
+ height: 100%;
18
15
 
19
- @include mid-break {
20
- max-height: 60vh;
16
+ // Scrollbar for giant content
17
+ max-height: calc(100vh - $top-header-offset - calc(#{base(5)}));
18
+ overflow: hidden;
19
+
20
+ @include mid-break {
21
+ max-height: 60vh;
22
+ }
21
23
  }
22
- }
23
24
 
24
- &.read-only {
25
- .textarea-outer {
26
- @include readOnly;
25
+ &.read-only {
26
+ .textarea-outer {
27
+ @include readOnly;
28
+ }
27
29
  }
28
- }
29
30
 
30
- // This element takes exactly the same dimensions as the clone
31
- .textarea-inner {
32
- display: block;
33
- position: relative;
34
- line-height: inherit;
35
- flex-grow: 1;
36
- background: none;
37
- outline: none;
38
- }
31
+ // This element takes exactly the same dimensions as the clone
32
+ .textarea-inner {
33
+ display: block;
34
+ position: relative;
35
+ line-height: inherit;
36
+ flex-grow: 1;
37
+ background: none;
38
+ outline: none;
39
+ }
39
40
 
40
- // Unstyle the textarea, the border is rendered on .textarea-outer
41
- .textarea-element {
42
- position: absolute;
43
- top: 0;
44
- left: 0;
45
- width: 100%;
46
- height: 100%;
47
- border: inherit;
48
- padding: inherit;
49
- font: inherit;
50
- line-height: inherit;
51
- color: inherit;
52
- background: none;
53
- overflow: auto;
54
- resize: none;
55
- outline: none;
56
- text-transform: inherit;
41
+ // Unstyle the textarea, the border is rendered on .textarea-outer
42
+ .textarea-element {
43
+ position: absolute;
44
+ top: 0;
45
+ left: 0;
46
+ width: 100%;
47
+ height: 100%;
48
+ border: inherit;
49
+ padding: inherit;
50
+ font: inherit;
51
+ line-height: inherit;
52
+ color: inherit;
53
+ background: none;
54
+ overflow: auto;
55
+ resize: none;
56
+ outline: none;
57
+ text-transform: inherit;
57
58
 
58
- &::-webkit-scrollbar {
59
- display: none;
60
- }
61
- &[data-rtl='true'] {
62
- direction: rtl;
59
+ &::-webkit-scrollbar {
60
+ display: none;
61
+ }
62
+ &[data-rtl='true'] {
63
+ direction: rtl;
64
+ }
63
65
  }
64
- }
65
66
 
66
- // Clone of textarea with same height
67
- .textarea-clone {
68
- vertical-align: top;
69
- display: inline-block;
70
- flex-grow: 1;
71
- overflow: hidden;
72
- text-overflow: ellipsis;
73
- white-space: pre-wrap;
74
- pointer-events: none;
75
- }
67
+ // Clone of textarea with same height
68
+ .textarea-clone {
69
+ vertical-align: top;
70
+ display: inline-block;
71
+ flex-grow: 1;
72
+ overflow: hidden;
73
+ text-overflow: ellipsis;
74
+ white-space: pre-wrap;
75
+ pointer-events: none;
76
+ }
76
77
 
77
- .textarea-clone::before {
78
- content: attr(data-value) ' ';
79
- visibility: hidden;
80
- opacity: 0;
81
- white-space: pre-wrap;
82
- overflow-wrap: break-word;
83
- }
78
+ .textarea-clone::before {
79
+ content: attr(data-value) ' ';
80
+ visibility: hidden;
81
+ opacity: 0;
82
+ white-space: pre-wrap;
83
+ overflow-wrap: break-word;
84
+ }
84
85
 
85
- .textarea-clone::after {
86
- content: attr(data-after);
87
- opacity: 0.5;
88
- }
86
+ .textarea-clone::after {
87
+ content: attr(data-after);
88
+ opacity: 0.5;
89
+ }
89
90
 
90
- @include mid-break {
91
- padding: 0;
91
+ @include mid-break {
92
+ padding: 0;
93
+ }
92
94
  }
93
- }
94
95
 
95
- html[data-theme='light'] {
96
- .field-type.textarea {
97
- &.error {
98
- .textarea-outer {
99
- @include lightInputError;
96
+ html[data-theme='light'] {
97
+ .field-type.textarea {
98
+ &.error {
99
+ .textarea-outer {
100
+ @include lightInputError;
101
+ }
100
102
  }
101
103
  }
102
104
  }
103
- }
104
105
 
105
- html[data-theme='dark'] {
106
- .field-type.textarea {
107
- &.error {
108
- .textarea-outer {
109
- @include darkInputError;
106
+ html[data-theme='dark'] {
107
+ .field-type.textarea {
108
+ &.error {
109
+ .textarea-outer {
110
+ @include darkInputError;
111
+ }
110
112
  }
111
113
  }
112
114
  }
@@ -1,27 +1,29 @@
1
1
  @import '../../../scss/styles.scss';
2
2
 
3
- .upload--has-many {
4
- position: relative;
5
- max-width: 100%;
3
+ @layer payload-default {
4
+ .upload--has-many {
5
+ position: relative;
6
+ max-width: 100%;
6
7
 
7
- &__draggable-rows {
8
- display: flex;
9
- flex-direction: column;
10
- gap: calc(var(--base) / 4);
11
- }
12
-
13
- &__dragItem {
14
- .icon--drag-handle {
15
- color: var(--theme-elevation-400);
8
+ &__draggable-rows {
9
+ display: flex;
10
+ flex-direction: column;
11
+ gap: calc(var(--base) / 4);
16
12
  }
17
13
 
18
- .thumbnail {
19
- width: 26px;
20
- height: 26px;
21
- }
14
+ &__dragItem {
15
+ .icon--drag-handle {
16
+ color: var(--theme-elevation-400);
17
+ }
18
+
19
+ .thumbnail {
20
+ width: 26px;
21
+ height: 26px;
22
+ }
22
23
 
23
- .uploadDocRelationshipContent__details {
24
- line-height: 1.2;
24
+ .uploadDocRelationshipContent__details {
25
+ line-height: 1.2;
26
+ }
25
27
  }
26
28
  }
27
29
  }