@payloadcms/ui 4.0.0-canary.2 → 4.0.0-internal.011fd46

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 (194) hide show
  1. package/dist/css/colors.css +3 -0
  2. package/dist/css/design-tokens.css +5 -0
  3. package/dist/css/elevations.css +4 -0
  4. package/dist/elements/AppHeader/index.d.ts +3 -2
  5. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  6. package/dist/elements/AppHeader/index.js +2 -2
  7. package/dist/elements/AppHeader/index.js.map +1 -1
  8. package/dist/elements/ColumnSelection/Popup.d.ts +12 -0
  9. package/dist/elements/ColumnSelection/Popup.d.ts.map +1 -0
  10. package/dist/elements/{ColumnSelector/index.js → ColumnSelection/Popup.js} +23 -12
  11. package/dist/elements/ColumnSelection/Popup.js.map +1 -0
  12. package/dist/elements/ColumnSelection/index.d.ts +10 -0
  13. package/dist/elements/ColumnSelection/index.d.ts.map +1 -0
  14. package/dist/elements/{ColumnsButton → ColumnSelection}/index.js +23 -17
  15. package/dist/elements/ColumnSelection/index.js.map +1 -0
  16. package/dist/elements/DocumentControls/index.css +7 -1
  17. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  18. package/dist/elements/DocumentControls/index.js +2 -2
  19. package/dist/elements/DocumentControls/index.js.map +1 -1
  20. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts.map +1 -1
  21. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +5 -3
  22. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  23. package/dist/elements/GroupBy/Popup.d.ts +21 -0
  24. package/dist/elements/GroupBy/Popup.d.ts.map +1 -0
  25. package/dist/elements/GroupBy/Popup.js +269 -0
  26. package/dist/elements/GroupBy/Popup.js.map +1 -0
  27. package/dist/elements/GroupBy/index.d.ts +12 -0
  28. package/dist/elements/GroupBy/index.d.ts.map +1 -0
  29. package/dist/elements/GroupBy/index.js +91 -0
  30. package/dist/elements/GroupBy/index.js.map +1 -0
  31. package/dist/elements/ListColumnSelectionButton/index.d.ts +11 -0
  32. package/dist/elements/ListColumnSelectionButton/index.d.ts.map +1 -0
  33. package/dist/elements/ListColumnSelectionButton/index.js +37 -0
  34. package/dist/elements/ListColumnSelectionButton/index.js.map +1 -0
  35. package/dist/elements/ListControls/index.d.ts.map +1 -1
  36. package/dist/elements/ListControls/index.js +7 -7
  37. package/dist/elements/ListControls/index.js.map +1 -1
  38. package/dist/elements/ListGroupByButton/index.d.ts +12 -0
  39. package/dist/elements/ListGroupByButton/index.d.ts.map +1 -0
  40. package/dist/elements/ListGroupByButton/index.js +55 -0
  41. package/dist/elements/ListGroupByButton/index.js.map +1 -0
  42. package/dist/elements/ListWhereBuilder/index.d.ts +16 -0
  43. package/dist/elements/ListWhereBuilder/index.d.ts.map +1 -0
  44. package/dist/elements/ListWhereBuilder/index.js +62 -0
  45. package/dist/elements/ListWhereBuilder/index.js.map +1 -0
  46. package/dist/elements/Popup/PopupButtonList/index.css +5 -0
  47. package/dist/elements/Popup/PopupGroupLabel/index.css +8 -5
  48. package/dist/elements/Popup/index.d.ts.map +1 -1
  49. package/dist/elements/Popup/index.js +42 -11
  50. package/dist/elements/Popup/index.js.map +1 -1
  51. package/dist/elements/PublishMany/DrawerContent.d.ts +2 -1
  52. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  53. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  54. package/dist/elements/PublishMany/index.d.ts +2 -6
  55. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  56. package/dist/elements/PublishMany/index.js +0 -38
  57. package/dist/elements/PublishMany/index.js.map +1 -1
  58. package/dist/elements/QueryPresets/cells/ColumnsCell/{index.scss → index.css} +1 -3
  59. package/dist/elements/QueryPresets/cells/ColumnsCell/index.d.ts +1 -1
  60. package/dist/elements/QueryPresets/cells/ColumnsCell/index.d.ts.map +1 -1
  61. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +1 -1
  62. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -1
  63. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts +1 -1
  64. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts.map +1 -1
  65. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +77 -48
  66. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  67. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts +1 -1
  68. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts.map +1 -1
  69. package/dist/elements/QueryPresets/fields/GroupByField/index.js +12 -21
  70. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  71. package/dist/elements/QueryPresets/fields/Heading/index.css +52 -0
  72. package/dist/elements/QueryPresets/fields/Heading/index.d.ts +7 -0
  73. package/dist/elements/QueryPresets/fields/Heading/index.d.ts.map +1 -0
  74. package/dist/elements/QueryPresets/fields/Heading/index.js +31 -0
  75. package/dist/elements/QueryPresets/fields/Heading/index.js.map +1 -0
  76. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts +1 -1
  77. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts.map +1 -1
  78. package/dist/elements/QueryPresets/fields/WhereField/index.js +24 -23
  79. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  80. package/dist/elements/QueryPresets/fields/fields.css +23 -0
  81. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts +5 -0
  82. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts.map +1 -0
  83. package/dist/elements/ReactSelect/getCaptureMenuScroll.js +10 -0
  84. package/dist/elements/ReactSelect/getCaptureMenuScroll.js.map +1 -0
  85. package/dist/elements/ReactSelect/getMenuListStyles.d.ts +6 -0
  86. package/dist/elements/ReactSelect/getMenuListStyles.d.ts.map +1 -0
  87. package/dist/elements/ReactSelect/getMenuListStyles.js +7 -0
  88. package/dist/elements/ReactSelect/getMenuListStyles.js.map +1 -0
  89. package/dist/elements/ReactSelect/index.css +0 -1
  90. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  91. package/dist/elements/ReactSelect/index.js +168 -148
  92. package/dist/elements/ReactSelect/index.js.map +1 -1
  93. package/dist/elements/ReactSelect/types.d.ts +1 -0
  94. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  95. package/dist/elements/ReactSelect/types.js.map +1 -1
  96. package/dist/elements/RelationshipTable/index.js +2 -2
  97. package/dist/elements/RelationshipTable/index.js.map +1 -1
  98. package/dist/elements/SortColumn/index.css +1 -1
  99. package/dist/elements/Table/index.css +24 -2
  100. package/dist/elements/Toasts/fieldErrors.d.ts +1 -0
  101. package/dist/elements/Toasts/fieldErrors.d.ts.map +1 -1
  102. package/dist/elements/Toasts/fieldErrors.js +25 -9
  103. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  104. package/dist/elements/Toasts/index.css +5 -0
  105. package/dist/elements/UnpublishMany/DrawerContent.d.ts +2 -1
  106. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  107. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  108. package/dist/elements/UnpublishMany/index.d.ts +2 -4
  109. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  110. package/dist/elements/UnpublishMany/index.js +0 -38
  111. package/dist/elements/UnpublishMany/index.js.map +1 -1
  112. package/dist/elements/UserMenu/LanguageMenu/index.js +1 -1
  113. package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -1
  114. package/dist/elements/UserMenu/SettingsMenu/index.d.ts +6 -2
  115. package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -1
  116. package/dist/elements/UserMenu/SettingsMenu/index.js +15 -10
  117. package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -1
  118. package/dist/elements/UserMenu/ThemeMenu/index.js +1 -1
  119. package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -1
  120. package/dist/elements/UserMenu/index.d.ts +2 -1
  121. package/dist/elements/UserMenu/index.d.ts.map +1 -1
  122. package/dist/elements/UserMenu/index.js +8 -5
  123. package/dist/elements/UserMenu/index.js.map +1 -1
  124. package/dist/elements/WhereBuilder/Condition/index.d.ts +1 -0
  125. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  126. package/dist/elements/WhereBuilder/Condition/index.js +17 -2
  127. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  128. package/dist/elements/WhereBuilder/index.d.ts +4 -3
  129. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  130. package/dist/elements/WhereBuilder/index.js +71 -62
  131. package/dist/elements/WhereBuilder/index.js.map +1 -1
  132. package/dist/elements/WhereBuilder/types.d.ts +6 -5
  133. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  134. package/dist/elements/WhereBuilder/types.js.map +1 -1
  135. package/dist/exports/client/index.d.ts +2 -0
  136. package/dist/exports/client/index.d.ts.map +1 -1
  137. package/dist/exports/client/index.js +26 -26
  138. package/dist/exports/client/index.js.map +4 -4
  139. package/dist/fields/RadioGroup/index.css +6 -0
  140. package/dist/icons/Check/index.css +1 -2
  141. package/dist/icons/Check/index.js +1 -1
  142. package/dist/icons/Check/index.js.map +1 -1
  143. package/dist/icons/Warning/index.css +1 -7
  144. package/dist/icons/Warning/index.d.ts +1 -1
  145. package/dist/icons/Warning/index.d.ts.map +1 -1
  146. package/dist/icons/Warning/index.js +11 -16
  147. package/dist/icons/Warning/index.js.map +1 -1
  148. package/dist/providers/ToastContainer/index.css +208 -0
  149. package/dist/providers/ToastContainer/index.d.ts +1 -0
  150. package/dist/providers/ToastContainer/index.d.ts.map +1 -1
  151. package/dist/providers/ToastContainer/index.js +19 -6
  152. package/dist/providers/ToastContainer/index.js.map +1 -1
  153. package/dist/scss/app.scss +7 -2
  154. package/dist/styles.css +1 -1
  155. package/dist/templates/Default/index.d.ts.map +1 -1
  156. package/dist/templates/Default/index.js +51 -9
  157. package/dist/templates/Default/index.js.map +1 -1
  158. package/dist/utilities/reduceFieldsToOptions.js +1 -1
  159. package/dist/utilities/reduceFieldsToOptions.js.map +1 -1
  160. package/dist/views/HierarchyList/DocumentListSelection/index.js +4 -4
  161. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  162. package/dist/views/List/ListSelection/index.js +4 -4
  163. package/dist/views/List/ListSelection/index.js.map +1 -1
  164. package/dist/views/List/index.client.d.ts.map +1 -1
  165. package/dist/views/List/index.client.js +3 -3
  166. package/dist/views/List/index.client.js.map +1 -1
  167. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  168. package/dist/views/List/renderListViewSlots.js +9 -6
  169. package/dist/views/List/renderListViewSlots.js.map +1 -1
  170. package/dist/views/Logout/LogoutClient.js +1 -1
  171. package/dist/views/Logout/LogoutClient.js.map +1 -1
  172. package/dist/views/Versions/index.css +0 -4
  173. package/package.json +5 -5
  174. package/dist/elements/ColumnSelector/index.d.ts +0 -9
  175. package/dist/elements/ColumnSelector/index.d.ts.map +0 -1
  176. package/dist/elements/ColumnSelector/index.js.map +0 -1
  177. package/dist/elements/ColumnsButton/index.d.ts +0 -7
  178. package/dist/elements/ColumnsButton/index.d.ts.map +0 -1
  179. package/dist/elements/ColumnsButton/index.js.map +0 -1
  180. package/dist/elements/GroupByBuilder/index.d.ts +0 -12
  181. package/dist/elements/GroupByBuilder/index.d.ts.map +0 -1
  182. package/dist/elements/GroupByBuilder/index.js +0 -164
  183. package/dist/elements/GroupByBuilder/index.js.map +0 -1
  184. package/dist/elements/GroupByBuilder/index.scss +0 -39
  185. package/dist/elements/GroupByControl/index.d.ts +0 -9
  186. package/dist/elements/GroupByControl/index.d.ts.map +0 -1
  187. package/dist/elements/GroupByControl/index.js +0 -254
  188. package/dist/elements/GroupByControl/index.js.map +0 -1
  189. package/dist/elements/QueryPresets/fields/ColumnsField/index.scss +0 -17
  190. package/dist/elements/QueryPresets/fields/GroupByField/index.scss +0 -17
  191. package/dist/elements/QueryPresets/fields/WhereField/index.scss +0 -23
  192. package/dist/scss/toasts.scss +0 -146
  193. /package/dist/elements/{ColumnSelector/index.css → ColumnSelection/Popup.css} +0 -0
  194. /package/dist/elements/{GroupByControl/index.css → GroupBy/Popup.css} +0 -0
@@ -4,6 +4,12 @@
4
4
  flex-direction: column;
5
5
  gap: var(--spacer-2);
6
6
 
7
+ .field-type__wrap {
8
+ display: flex;
9
+ flex-direction: column;
10
+ gap: var(--spacer-2);
11
+ }
12
+
7
13
  .tooltip:not([aria-hidden='true']) {
8
14
  right: auto;
9
15
  position: static;
@@ -1,6 +1,5 @@
1
1
  @layer payload-default {
2
2
  .icon--check {
3
- height: 1rem;
4
- width: 1rem;
3
+ /* Size is controlled by the icon component's `size` prop. */
5
4
  }
6
5
  }
@@ -3,7 +3,7 @@ import React from 'react';
3
3
  import './index.css';
4
4
  const paths = {
5
5
  16: 'M12.277 3.584a.5.5 0 0 1 .139.693l-5 7.5a.5.5 0 0 1-.77.077l-3-3a.5.5 0 0 1 .708-.708l2.568 2.57 4.662-6.993a.5.5 0 0 1 .693-.139',
6
- 24: 'M16.277 7.584a.5.5 0 0 1 .139.693l-5 7.5a.5.5 0 0 1-.77.076l-3-3a.5.5 0 0 1 .708-.707l2.568 2.569 4.662-6.993a.5.5 0 0 1 .693-.138'
6
+ 24: 'M17.91 7.285a.5.5 0 0 0-.82-.57l-5.916 8.518-3.328-3.194a.5.5 0 1 0-.692.722l3.75 3.6a.5.5 0 0 0 .757-.076z'
7
7
  };
8
8
  export const CheckIcon = ({
9
9
  className,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","paths","CheckIcon","className","size","_jsx","filter","Boolean","join","fill","height","viewBox","width","xmlns","clipRule","d","fillRule"],"sources":["../../../src/icons/Check/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.css'\n\nconst paths = {\n 16: 'M12.277 3.584a.5.5 0 0 1 .139.693l-5 7.5a.5.5 0 0 1-.77.077l-3-3a.5.5 0 0 1 .708-.708l2.568 2.57 4.662-6.993a.5.5 0 0 1 .693-.139',\n 24: 'M16.277 7.584a.5.5 0 0 1 .139.693l-5 7.5a.5.5 0 0 1-.77.076l-3-3a.5.5 0 0 1 .708-.707l2.568 2.569 4.662-6.993a.5.5 0 0 1 .693-.138',\n}\n\nexport const CheckIcon: React.FC<{\n readonly className?: string\n readonly size?: 16 | 24\n}> = ({ className, size = 16 }) => (\n <svg\n className={['icon', 'icon--check', className].filter(Boolean).join(' ')}\n fill=\"none\"\n height={size}\n viewBox={`0 0 ${size} ${size}`}\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path clipRule=\"evenodd\" d={paths[size]} fill=\"currentColor\" fillRule=\"evenodd\" />\n </svg>\n)\n"],"mappings":";AAAA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,MAAMC,KAAA,GAAQ;EACZ,IAAI;EACJ,IAAI;AACN;AAEA,OAAO,MAAMC,SAAA,GAGRA,CAAC;EAAEC,SAAS;EAAEC,IAAA,GAAO;AAAE,CAAE,kBAC5BC,IAAA,CAAC;EACCF,SAAA,EAAW,CAAC,QAAQ,eAAeA,SAAA,CAAU,CAACG,MAAM,CAACC,OAAA,EAASC,IAAI,CAAC;EACnEC,IAAA,EAAK;EACLC,MAAA,EAAQN,IAAA;EACRO,OAAA,EAAS,OAAOP,IAAA,IAAQA,IAAA,EAAM;EAC9BQ,KAAA,EAAOR,IAAA;EACPS,KAAA,EAAM;YAEN,aAAAR,IAAA,CAAC;IAAKS,QAAA,EAAS;IAAUC,CAAA,EAAGd,KAAK,CAACG,IAAA,CAAK;IAAEK,IAAA,EAAK;IAAeO,QAAA,EAAS","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","paths","CheckIcon","className","size","_jsx","filter","Boolean","join","fill","height","viewBox","width","xmlns","clipRule","d","fillRule"],"sources":["../../../src/icons/Check/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.css'\n\nconst paths = {\n 16: 'M12.277 3.584a.5.5 0 0 1 .139.693l-5 7.5a.5.5 0 0 1-.77.077l-3-3a.5.5 0 0 1 .708-.708l2.568 2.57 4.662-6.993a.5.5 0 0 1 .693-.139',\n 24: 'M17.91 7.285a.5.5 0 0 0-.82-.57l-5.916 8.518-3.328-3.194a.5.5 0 1 0-.692.722l3.75 3.6a.5.5 0 0 0 .757-.076z',\n}\n\nexport const CheckIcon: React.FC<{\n readonly className?: string\n readonly size?: 16 | 24\n}> = ({ className, size = 16 }) => (\n <svg\n className={['icon', 'icon--check', className].filter(Boolean).join(' ')}\n fill=\"none\"\n height={size}\n viewBox={`0 0 ${size} ${size}`}\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path clipRule=\"evenodd\" d={paths[size]} fill=\"currentColor\" fillRule=\"evenodd\" />\n </svg>\n)\n"],"mappings":";AAAA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,MAAMC,KAAA,GAAQ;EACZ,IAAI;EACJ,IAAI;AACN;AAEA,OAAO,MAAMC,SAAA,GAGRA,CAAC;EAAEC,SAAS;EAAEC,IAAA,GAAO;AAAE,CAAE,kBAC5BC,IAAA,CAAC;EACCF,SAAA,EAAW,CAAC,QAAQ,eAAeA,SAAA,CAAU,CAACG,MAAM,CAACC,OAAA,EAASC,IAAI,CAAC;EACnEC,IAAA,EAAK;EACLC,MAAA,EAAQN,IAAA;EACRO,OAAA,EAAS,OAAOP,IAAA,IAAQA,IAAA,EAAM;EAC9BQ,KAAA,EAAOR,IAAA;EACPS,KAAA,EAAM;YAEN,aAAAR,IAAA,CAAC;IAAKS,QAAA,EAAS;IAAUC,CAAA,EAAGd,KAAK,CAACG,IAAA,CAAK;IAAEK,IAAA,EAAK;IAAeO,QAAA,EAAS","ignoreList":[]}
@@ -1,11 +1,5 @@
1
1
  @layer payload-default {
2
2
  .icon--warning {
3
- .icon__circle {
4
- fill: var(--color-bg-warning);
5
- }
6
-
7
- .icon__symbol {
8
- stroke: var(--color-text-onwarning);
9
- }
3
+ color: var(--color-bg-warning);
10
4
  }
11
5
  }
@@ -2,6 +2,6 @@ import React from 'react';
2
2
  import './index.css';
3
3
  export declare const WarningIcon: React.FC<{
4
4
  readonly className?: string;
5
- readonly size?: 26;
5
+ readonly size?: 16 | 24;
6
6
  }>;
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/icons/Warning/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,aAAa,CAAA;AAUpB,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAA;CACnB,CAiBA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/icons/Warning/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,aAAa,CAAA;AAOpB,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAA;CACxB,CAWA,CAAA"}
@@ -1,30 +1,25 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import React from 'react';
3
3
  import './index.css';
4
4
  const paths = {
5
- 26: {
6
- circle: 'M13 21C17.4183 21 21 17.4183 21 13C21 8.58172 17.4183 5 13 5C8.58172 5 5 8.58172 5 13C5 17.4183 8.58172 21 13 21Z',
7
- symbol: 'M13 10V13.2M13 16.4H13.008'
8
- }
5
+ 16: 'M6.285 2.915c.777-1.295 2.653-1.294 3.43 0l4.234 7.056c.8 1.333-.161 3.029-1.716 3.029H3.766c-1.554 0-2.515-1.696-1.716-3.03zm2.572.514a1 1 0 0 0-1.715 0l-4.234 7.056a1 1 0 0 0 .716 1.505l.142.01h8.467a1 1 0 0 0 .857-1.515zM8 9.499A.75.75 0 1 1 8 11a.75.75 0 0 1 0-1.5m.079-4.495a.73.73 0 0 1 .648.787l-.23 2.75a.5.5 0 0 1-.996 0L7.272 5.79A.73.73 0 0 1 8 5z',
6
+ 24: 'M10.257 6.06c.764-1.36 2.722-1.36 3.486 0l5.04 8.96c.75 1.333-.213 2.98-1.743 2.98H6.96c-1.53 0-2.493-1.647-1.743-2.98l.87.49a1 1 0 0 0 .733 1.48l.14.01h10.08a1 1 0 0 0 .872-1.49l-.001-.001-5.04-8.96a1 1 0 0 0-1.742 0l-5.041 8.96-.871-.49zM12 14.003a.75.75 0 1 1 0 1.5.75.75 0 0 1 0-1.5M12 8.5c.425 0 .76.36.73.785l-.231 3.25a.5.5 0 0 1-.998 0l-.232-3.25A.733.733 0 0 1 12 8.5'
9
7
  };
10
8
  export const WarningIcon = ({
11
9
  className,
12
- size = 26
13
- }) => /*#__PURE__*/_jsxs("svg", {
10
+ size = 24
11
+ }) => /*#__PURE__*/_jsx("svg", {
14
12
  className: ['icon', 'icon--warning', className].filter(Boolean).join(' '),
15
13
  fill: "none",
16
14
  height: size,
17
15
  viewBox: `0 0 ${size} ${size}`,
18
16
  width: size,
19
17
  xmlns: "http://www.w3.org/2000/svg",
20
- children: [/*#__PURE__*/_jsx("path", {
21
- className: "icon__circle",
22
- d: paths[size].circle
23
- }), /*#__PURE__*/_jsx("path", {
24
- className: "icon__symbol",
25
- d: paths[size].symbol,
26
- strokeLinecap: "round",
27
- strokeLinejoin: "round"
28
- })]
18
+ children: /*#__PURE__*/_jsx("path", {
19
+ clipRule: "evenodd",
20
+ d: paths[size],
21
+ fill: "currentColor",
22
+ fillRule: "evenodd"
23
+ })
29
24
  });
30
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","paths","circle","symbol","WarningIcon","className","size","_jsxs","filter","Boolean","join","fill","height","viewBox","width","xmlns","_jsx","d","strokeLinecap","strokeLinejoin"],"sources":["../../../src/icons/Warning/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.css'\n\nconst paths = {\n 26: {\n circle:\n 'M13 21C17.4183 21 21 17.4183 21 13C21 8.58172 17.4183 5 13 5C8.58172 5 5 8.58172 5 13C5 17.4183 8.58172 21 13 21Z',\n symbol: 'M13 10V13.2M13 16.4H13.008',\n },\n}\n\nexport const WarningIcon: React.FC<{\n readonly className?: string\n readonly size?: 26\n}> = ({ className, size = 26 }) => (\n <svg\n className={['icon', 'icon--warning', className].filter(Boolean).join(' ')}\n fill=\"none\"\n height={size}\n viewBox={`0 0 ${size} ${size}`}\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path className=\"icon__circle\" d={paths[size].circle} />\n <path\n className=\"icon__symbol\"\n d={paths[size].symbol}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n)\n"],"mappings":";AAAA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,MAAMC,KAAA,GAAQ;EACZ,IAAI;IACFC,MAAA,EACE;IACFC,MAAA,EAAQ;EACV;AACF;AAEA,OAAO,MAAMC,WAAA,GAGRA,CAAC;EAAEC,SAAS;EAAEC,IAAA,GAAO;AAAE,CAAE,kBAC5BC,KAAA,CAAC;EACCF,SAAA,EAAW,CAAC,QAAQ,iBAAiBA,SAAA,CAAU,CAACG,MAAM,CAACC,OAAA,EAASC,IAAI,CAAC;EACrEC,IAAA,EAAK;EACLC,MAAA,EAAQN,IAAA;EACRO,OAAA,EAAS,OAAOP,IAAA,IAAQA,IAAA,EAAM;EAC9BQ,KAAA,EAAOR,IAAA;EACPS,KAAA,EAAM;0BAENC,IAAA,CAAC;IAAKX,SAAA,EAAU;IAAeY,CAAA,EAAGhB,KAAK,CAACK,IAAA,CAAK,CAACJ;mBAC9Cc,IAAA,CAAC;IACCX,SAAA,EAAU;IACVY,CAAA,EAAGhB,KAAK,CAACK,IAAA,CAAK,CAACH,MAAM;IACrBe,aAAA,EAAc;IACdC,cAAA,EAAe","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","paths","WarningIcon","className","size","_jsx","filter","Boolean","join","fill","height","viewBox","width","xmlns","clipRule","d","fillRule"],"sources":["../../../src/icons/Warning/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.css'\n\nconst paths = {\n 16: 'M6.285 2.915c.777-1.295 2.653-1.294 3.43 0l4.234 7.056c.8 1.333-.161 3.029-1.716 3.029H3.766c-1.554 0-2.515-1.696-1.716-3.03zm2.572.514a1 1 0 0 0-1.715 0l-4.234 7.056a1 1 0 0 0 .716 1.505l.142.01h8.467a1 1 0 0 0 .857-1.515zM8 9.499A.75.75 0 1 1 8 11a.75.75 0 0 1 0-1.5m.079-4.495a.73.73 0 0 1 .648.787l-.23 2.75a.5.5 0 0 1-.996 0L7.272 5.79A.73.73 0 0 1 8 5z',\n 24: 'M10.257 6.06c.764-1.36 2.722-1.36 3.486 0l5.04 8.96c.75 1.333-.213 2.98-1.743 2.98H6.96c-1.53 0-2.493-1.647-1.743-2.98l.87.49a1 1 0 0 0 .733 1.48l.14.01h10.08a1 1 0 0 0 .872-1.49l-.001-.001-5.04-8.96a1 1 0 0 0-1.742 0l-5.041 8.96-.871-.49zM12 14.003a.75.75 0 1 1 0 1.5.75.75 0 0 1 0-1.5M12 8.5c.425 0 .76.36.73.785l-.231 3.25a.5.5 0 0 1-.998 0l-.232-3.25A.733.733 0 0 1 12 8.5',\n}\n\nexport const WarningIcon: React.FC<{\n readonly className?: string\n readonly size?: 16 | 24\n}> = ({ className, size = 24 }) => (\n <svg\n className={['icon', 'icon--warning', className].filter(Boolean).join(' ')}\n fill=\"none\"\n height={size}\n viewBox={`0 0 ${size} ${size}`}\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path clipRule=\"evenodd\" d={paths[size]} fill=\"currentColor\" fillRule=\"evenodd\" />\n </svg>\n)\n"],"mappings":";AAAA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,MAAMC,KAAA,GAAQ;EACZ,IAAI;EACJ,IAAI;AACN;AAEA,OAAO,MAAMC,WAAA,GAGRA,CAAC;EAAEC,SAAS;EAAEC,IAAA,GAAO;AAAE,CAAE,kBAC5BC,IAAA,CAAC;EACCF,SAAA,EAAW,CAAC,QAAQ,iBAAiBA,SAAA,CAAU,CAACG,MAAM,CAACC,OAAA,EAASC,IAAI,CAAC;EACrEC,IAAA,EAAK;EACLC,MAAA,EAAQN,IAAA;EACRO,OAAA,EAAS,OAAOP,IAAA,IAAQA,IAAA,EAAM;EAC9BQ,KAAA,EAAOR,IAAA;EACPS,KAAA,EAAM;YAEN,aAAAR,IAAA,CAAC;IAAKS,QAAA,EAAS;IAAUC,CAAA,EAAGd,KAAK,CAACG,IAAA,CAAK;IAAEK,IAAA,EAAK;IAAeO,QAAA,EAAS","ignoreList":[]}
@@ -0,0 +1,208 @@
1
+ @layer payload-default {
2
+ .payload-toast-container {
3
+ padding: 0;
4
+ margin: 0;
5
+
6
+ .toast-title {
7
+ padding-inline: var(--spacer-1);
8
+ color: var(--color-text);
9
+ font-family: var(--text-body-medium-strong-font-family);
10
+ font-size: var(--text-body-medium-strong-font-size);
11
+ font-weight: var(--text-body-medium-strong-font-weight);
12
+ letter-spacing: var(--text-body-medium-strong-letter-spacing);
13
+ line-height: var(--text-body-medium-strong-line-height);
14
+ }
15
+
16
+ .payload-toast-item {
17
+ display: flex;
18
+ align-items: flex-start;
19
+ gap: var(--spacer-2);
20
+ min-height: var(--spacer-6);
21
+ /* set width to match FPL */
22
+ inline-size: 280px;
23
+ margin: 0;
24
+ padding: var(--spacer-2);
25
+ color: var(--color-text);
26
+ font-style: normal;
27
+ font-weight: var(--font-weight-strong);
28
+ background: var(--color-bg-elevated);
29
+ border-radius: var(--radius-large);
30
+ box-shadow: var(--elevation-100-canvas);
31
+
32
+ .toast-content {
33
+ display: flex;
34
+ flex: 1;
35
+ flex-direction: column;
36
+ gap: var(--spacer-1);
37
+ width: 100%;
38
+ transition: opacity 100ms cubic-bezier(0.55, 0.055, 0.675, 0.19);
39
+ padding-block: var(--spacer-1);
40
+ }
41
+
42
+ &[data-front='false'] {
43
+ .toast-content {
44
+ opacity: 0;
45
+ }
46
+ }
47
+
48
+ &[data-expanded='true'] {
49
+ .toast-content {
50
+ opacity: 1;
51
+ }
52
+ }
53
+
54
+ .toast-icon {
55
+ display: flex;
56
+ align-items: center;
57
+ justify-content: center;
58
+ margin: 0;
59
+ flex-shrink: 0;
60
+ }
61
+
62
+ .toast-icon + .toast-content .toast-title {
63
+ padding-inline-start: 0;
64
+ }
65
+
66
+ &.toast-error {
67
+ color: var(--color-text-ondanger);
68
+ background: var(--color-bg-danger);
69
+
70
+ .toast-title {
71
+ color: var(--color-text-ondanger);
72
+ }
73
+
74
+ .icon--warning {
75
+ color: var(--color-text-ondanger);
76
+ }
77
+ }
78
+
79
+ &.toast-warning {
80
+ .icon--warning {
81
+ color: var(--color-icon-warning);
82
+ }
83
+ }
84
+ }
85
+ }
86
+ }
87
+
88
+ /* Sonner injects unlayered `:where()` (0,0,0) styles that beat our layered rules. These overrides
89
+ are unlayered too, winning on class specificity. */
90
+
91
+ .payload-toast-container .toast-title {
92
+ font-weight: var(--text-body-medium-strong-font-weight);
93
+ line-height: var(--text-body-medium-strong-line-height);
94
+ }
95
+
96
+ /* Sonner forces [data-icon] to 16px; use a --spacer-4 (24px) box so our icons fit. */
97
+ .payload-toast-container .payload-toast-item .toast-icon {
98
+ position: relative;
99
+ width: var(--spacer-4);
100
+ height: var(--spacer-4);
101
+ margin: 0;
102
+ justify-content: center;
103
+ }
104
+
105
+ .payload-toast-container .payload-toast-item .toast-icon svg {
106
+ margin: 0;
107
+ }
108
+
109
+ /* Spinner wrapper is `absolute; inset: 0`; restore flex flow so the box centers it. */
110
+ .payload-toast-container .payload-toast-item .toast-icon .sonner-loading-wrapper {
111
+ position: static;
112
+ }
113
+
114
+ .payload-toast-container
115
+ .payload-toast-item
116
+ .toast-icon
117
+ .sonner-loading-wrapper[data-visible='false'] {
118
+ display: none;
119
+ }
120
+
121
+ /* Sonner positions [data-close-button] absolutely; place it inline as a --spacer-4 (24px) IconButton. */
122
+ .payload-toast-container .payload-toast-item .payload-toast-close-button {
123
+ position: relative;
124
+ inset: auto;
125
+ order: 1;
126
+ display: flex;
127
+ align-items: center;
128
+ justify-content: center;
129
+ flex-shrink: 0;
130
+ min-width: var(--spacer-4);
131
+ min-height: var(--spacer-4);
132
+ width: auto;
133
+ height: auto;
134
+ margin: 0;
135
+ padding: 0;
136
+ border: 0;
137
+ border-radius: var(--radius-medium);
138
+ background: transparent;
139
+ color: var(--color-icon);
140
+ transform: none;
141
+ cursor: pointer;
142
+ transition: none;
143
+ }
144
+
145
+ /* Sonner sets a dark-theme base background on [data-close-button]. Override with higher specificity. */
146
+ [data-sonner-toaster][data-theme='dark'].payload-toast-container
147
+ [data-sonner-toast].payload-toast-item
148
+ [data-close-button].payload-toast-close-button {
149
+ background: transparent;
150
+ border-color: transparent;
151
+ }
152
+
153
+ .payload-toast-container .payload-toast-item .payload-toast-close-button:hover,
154
+ .payload-toast-container .payload-toast-item .payload-toast-close-button:focus-visible {
155
+ background: var(--color-bg-hover);
156
+ }
157
+
158
+ [data-sonner-toaster][data-theme='dark'].payload-toast-container
159
+ [data-sonner-toast].payload-toast-item
160
+ [data-close-button].payload-toast-close-button:hover,
161
+ [data-sonner-toaster][data-theme='dark'].payload-toast-container
162
+ [data-sonner-toast].payload-toast-item
163
+ [data-close-button].payload-toast-close-button:focus-visible {
164
+ background: var(--color-bg-hover);
165
+ }
166
+
167
+ [data-sonner-toaster][data-theme='dark'].payload-toast-container
168
+ [data-sonner-toast].payload-toast-item
169
+ [data-close-button].payload-toast-close-button:active {
170
+ background: var(--color-bg-pressed);
171
+ }
172
+
173
+ .payload-toast-container .toast-error .payload-toast-close-button {
174
+ color: var(--color-text-ondanger);
175
+ }
176
+
177
+ .payload-toast-container .toast-error .payload-toast-close-button:hover,
178
+ .payload-toast-container .toast-error .payload-toast-close-button:focus-visible {
179
+ background: var(--color-bg-danger-hover);
180
+ }
181
+
182
+ [data-sonner-toaster][data-theme='dark'].payload-toast-container
183
+ [data-sonner-toast].payload-toast-item.toast-error
184
+ [data-close-button].payload-toast-close-button:hover,
185
+ [data-sonner-toaster][data-theme='dark'].payload-toast-container
186
+ [data-sonner-toast].payload-toast-item.toast-error
187
+ [data-close-button].payload-toast-close-button:focus-visible {
188
+ background: var(--color-bg-danger-hover);
189
+ }
190
+
191
+ [data-sonner-toaster][data-theme='dark'].payload-toast-container
192
+ [data-sonner-toast].payload-toast-item.toast-error
193
+ [data-close-button].payload-toast-close-button:active {
194
+ background: var(--color-bg-danger-pressed);
195
+ }
196
+
197
+ [data-sonner-toaster].payload-toast-container[data-lifted='true'] {
198
+ transform: none;
199
+ }
200
+
201
+ [data-sonner-toaster].payload-toast-container[data-x-position='right'] {
202
+ left: auto;
203
+ right: var(--spacer-6);
204
+ }
205
+
206
+ [data-sonner-toaster].payload-toast-container[data-y-position='bottom'] {
207
+ bottom: var(--spacer-6);
208
+ }
@@ -1,5 +1,6 @@
1
1
  import type { ClientConfig } from 'payload';
2
2
  import React from 'react';
3
+ import './index.css';
3
4
  export declare const ToastContainer: React.FC<{
4
5
  config: ClientConfig;
5
6
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ToastContainer/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE3C,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,MAAM,EAAE,YAAY,CAAA;CACrB,CAqCA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ToastContainer/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE3C,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,aAAa,CAAA;AAEpB,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,MAAM,EAAE,YAAY,CAAA;CACrB,CA6CA,CAAA"}
@@ -3,10 +3,11 @@
3
3
  import { jsx as _jsx } from "react/jsx-runtime";
4
4
  import React from 'react';
5
5
  import { Toaster } from 'sonner';
6
- import { ErrorIcon } from '../../icons/Error/index.js';
6
+ import { CheckIcon } from '../../icons/Check/index.js';
7
7
  import { InfoIcon } from '../../icons/Info/index.js';
8
- import { SuccessIcon } from '../../icons/Success/index.js';
9
8
  import { WarningIcon } from '../../icons/Warning/index.js';
9
+ import { XIcon } from '../../icons/X/index.js';
10
+ import './index.css';
10
11
  export const ToastContainer = ({
11
12
  config
12
13
  }) => {
@@ -23,19 +24,31 @@ export const ToastContainer = ({
23
24
  return /*#__PURE__*/_jsx(Toaster, {
24
25
  className: "payload-toast-container",
25
26
  closeButton: true,
26
- // @ts-expect-error
27
+ // @ts-expect-error - Sonner's `dir` prop is typed as `Direction`, but passing "undefined" opts out of RTL/LTR handling
27
28
  dir: "undefined",
28
29
  duration: duration ?? 4000,
29
30
  expand: expand ?? false,
30
31
  gap: 8,
31
32
  icons: {
32
- error: /*#__PURE__*/_jsx(ErrorIcon, {}),
33
+ close: /*#__PURE__*/_jsx(XIcon, {
34
+ size: 24
35
+ }),
36
+ error: /*#__PURE__*/_jsx(WarningIcon, {}),
33
37
  info: /*#__PURE__*/_jsx(InfoIcon, {}),
34
- success: /*#__PURE__*/_jsx(SuccessIcon, {}),
38
+ success: /*#__PURE__*/_jsx(CheckIcon, {
39
+ size: 24
40
+ }),
35
41
  warning: /*#__PURE__*/_jsx(WarningIcon, {})
36
42
  },
37
- offset: "calc(var(--gutter-h) / 2)",
43
+ offset: {
44
+ bottom: 'var(--spacer-6)',
45
+ right: 'var(--spacer-6)'
46
+ },
38
47
  position: position ?? 'bottom-right',
48
+ style: {
49
+ width: '280px'
50
+ },
51
+ theme: "dark",
39
52
  toastOptions: {
40
53
  classNames: {
41
54
  closeButton: 'payload-toast-close-button',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","Toaster","ErrorIcon","InfoIcon","SuccessIcon","WarningIcon","ToastContainer","config","admin","toast","duration","expand","limit","position","_jsx","className","closeButton","dir","gap","icons","error","info","success","warning","offset","toastOptions","classNames","content","icon","title","unstyled","visibleToasts"],"sources":["../../../src/providers/ToastContainer/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientConfig } from 'payload'\n\nimport React from 'react'\nimport { Toaster } from 'sonner'\n\nimport { ErrorIcon } from '../../icons/Error/index.js'\nimport { InfoIcon } from '../../icons/Info/index.js'\nimport { SuccessIcon } from '../../icons/Success/index.js'\nimport { WarningIcon } from '../../icons/Warning/index.js'\n\nexport const ToastContainer: React.FC<{\n config: ClientConfig\n}> = ({ config }) => {\n const { admin: { toast: { duration, expand, limit, position } = {} } = {} } = config\n\n return (\n <Toaster\n className=\"payload-toast-container\"\n closeButton\n // @ts-expect-error\n dir=\"undefined\"\n duration={duration ?? 4000}\n expand={expand ?? false}\n gap={8}\n icons={{\n error: <ErrorIcon />,\n info: <InfoIcon />,\n success: <SuccessIcon />,\n warning: <WarningIcon />,\n }}\n offset=\"calc(var(--gutter-h) / 2)\"\n position={position ?? 'bottom-right'}\n toastOptions={{\n classNames: {\n closeButton: 'payload-toast-close-button',\n content: 'toast-content',\n error: 'toast-error',\n icon: 'toast-icon',\n info: 'toast-info',\n success: 'toast-success',\n title: 'toast-title',\n toast: 'payload-toast-item',\n warning: 'toast-warning',\n },\n unstyled: true,\n }}\n visibleToasts={limit ?? 5}\n />\n )\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,KAAA,MAAW;AAClB,SAASC,OAAO,QAAQ;AAExB,SAASC,SAAS,QAAQ;AAC1B,SAASC,QAAQ,QAAQ;AACzB,SAASC,WAAW,QAAQ;AAC5B,SAASC,WAAW,QAAQ;AAE5B,OAAO,MAAMC,cAAA,GAERA,CAAC;EAAEC;AAAM,CAAE;EACd,MAAM;IAAEC,KAAA,EAAO;MAAEC,KAAA,EAAO;QAAEC,QAAQ;QAAEC,MAAM;QAAEC,KAAK;QAAEC;MAAQ,CAAE,GAAG,CAAC;IAAC,CAAE,GAAG,CAAC;EAAC,CAAE,GAAGN,MAAA;EAE9E,oBACEO,IAAA,CAACb,OAAA;IACCc,SAAA,EAAU;IACVC,WAAW;IACX;IACAC,GAAA,EAAI;IACJP,QAAA,EAAUA,QAAA,IAAY;IACtBC,MAAA,EAAQA,MAAA,IAAU;IAClBO,GAAA,EAAK;IACLC,KAAA,EAAO;MACLC,KAAA,eAAON,IAAA,CAACZ,SAAA;MACRmB,IAAA,eAAMP,IAAA,CAACX,QAAA;MACPmB,OAAA,eAASR,IAAA,CAACV,WAAA;MACVmB,OAAA,eAAST,IAAA,CAACT,WAAA;IACZ;IACAmB,MAAA,EAAO;IACPX,QAAA,EAAUA,QAAA,IAAY;IACtBY,YAAA,EAAc;MACZC,UAAA,EAAY;QACVV,WAAA,EAAa;QACbW,OAAA,EAAS;QACTP,KAAA,EAAO;QACPQ,IAAA,EAAM;QACNP,IAAA,EAAM;QACNC,OAAA,EAAS;QACTO,KAAA,EAAO;QACPpB,KAAA,EAAO;QACPc,OAAA,EAAS;MACX;MACAO,QAAA,EAAU;IACZ;IACAC,aAAA,EAAenB,KAAA,IAAS;;AAG9B","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","Toaster","CheckIcon","InfoIcon","WarningIcon","XIcon","ToastContainer","config","admin","toast","duration","expand","limit","position","_jsx","className","closeButton","dir","gap","icons","close","size","error","info","success","warning","offset","bottom","right","style","width","theme","toastOptions","classNames","content","icon","title","unstyled","visibleToasts"],"sources":["../../../src/providers/ToastContainer/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientConfig } from 'payload'\n\nimport React from 'react'\nimport { Toaster } from 'sonner'\n\nimport { CheckIcon } from '../../icons/Check/index.js'\nimport { InfoIcon } from '../../icons/Info/index.js'\nimport { WarningIcon } from '../../icons/Warning/index.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport './index.css'\n\nexport const ToastContainer: React.FC<{\n config: ClientConfig\n}> = ({ config }) => {\n const { admin: { toast: { duration, expand, limit, position } = {} } = {} } = config\n\n return (\n <Toaster\n className=\"payload-toast-container\"\n closeButton\n // @ts-expect-error - Sonner's `dir` prop is typed as `Direction`, but passing \"undefined\" opts out of RTL/LTR handling\n dir=\"undefined\"\n duration={duration ?? 4000}\n expand={expand ?? false}\n gap={8}\n icons={{\n close: <XIcon size={24} />,\n error: <WarningIcon />,\n info: <InfoIcon />,\n success: <CheckIcon size={24} />,\n warning: <WarningIcon />,\n }}\n offset={{\n bottom: 'var(--spacer-6)',\n right: 'var(--spacer-6)',\n }}\n position={position ?? 'bottom-right'}\n style={{\n width: '280px',\n }}\n theme=\"dark\"\n toastOptions={{\n classNames: {\n closeButton: 'payload-toast-close-button',\n content: 'toast-content',\n error: 'toast-error',\n icon: 'toast-icon',\n info: 'toast-info',\n success: 'toast-success',\n title: 'toast-title',\n toast: 'payload-toast-item',\n warning: 'toast-warning',\n },\n unstyled: true,\n }}\n visibleToasts={limit ?? 5}\n />\n )\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,KAAA,MAAW;AAClB,SAASC,OAAO,QAAQ;AAExB,SAASC,SAAS,QAAQ;AAC1B,SAASC,QAAQ,QAAQ;AACzB,SAASC,WAAW,QAAQ;AAC5B,SAASC,KAAK,QAAQ;AACtB,OAAO;AAEP,OAAO,MAAMC,cAAA,GAERA,CAAC;EAAEC;AAAM,CAAE;EACd,MAAM;IAAEC,KAAA,EAAO;MAAEC,KAAA,EAAO;QAAEC,QAAQ;QAAEC,MAAM;QAAEC,KAAK;QAAEC;MAAQ,CAAE,GAAG,CAAC;IAAC,CAAE,GAAG,CAAC;EAAC,CAAE,GAAGN,MAAA;EAE9E,oBACEO,IAAA,CAACb,OAAA;IACCc,SAAA,EAAU;IACVC,WAAW;IACX;IACAC,GAAA,EAAI;IACJP,QAAA,EAAUA,QAAA,IAAY;IACtBC,MAAA,EAAQA,MAAA,IAAU;IAClBO,GAAA,EAAK;IACLC,KAAA,EAAO;MACLC,KAAA,eAAON,IAAA,CAACT,KAAA;QAAMgB,IAAA,EAAM;;MACpBC,KAAA,eAAOR,IAAA,CAACV,WAAA;MACRmB,IAAA,eAAMT,IAAA,CAACX,QAAA;MACPqB,OAAA,eAASV,IAAA,CAACZ,SAAA;QAAUmB,IAAA,EAAM;;MAC1BI,OAAA,eAASX,IAAA,CAACV,WAAA;IACZ;IACAsB,MAAA,EAAQ;MACNC,MAAA,EAAQ;MACRC,KAAA,EAAO;IACT;IACAf,QAAA,EAAUA,QAAA,IAAY;IACtBgB,KAAA,EAAO;MACLC,KAAA,EAAO;IACT;IACAC,KAAA,EAAM;IACNC,YAAA,EAAc;MACZC,UAAA,EAAY;QACVjB,WAAA,EAAa;QACbkB,OAAA,EAAS;QACTZ,KAAA,EAAO;QACPa,IAAA,EAAM;QACNZ,IAAA,EAAM;QACNC,OAAA,EAAS;QACTY,KAAA,EAAO;QACP3B,KAAA,EAAO;QACPgB,OAAA,EAAS;MACX;MACAY,QAAA,EAAU;IACZ;IACAC,aAAA,EAAe1B,KAAA,IAAS;;AAG9B","ignoreList":[]}
@@ -1,7 +1,6 @@
1
1
  @layer payload-default, payload;
2
2
 
3
- @import './styles';
4
- @import './toasts.scss';
3
+ @import 'styles';
5
4
  @import './colors.scss';
6
5
  @import '../styles.css';
7
6
 
@@ -96,6 +95,12 @@
96
95
  overflow-x: hidden;
97
96
  }
98
97
 
98
+ // Lock background scroll while a drawer is open. Backs up faceless-ui's JS
99
+ // body-scroll-lock, which a sibling modal can clear prematurely.
100
+ body:has(.drawer--is-open) {
101
+ overflow: hidden;
102
+ }
103
+
99
104
  img {
100
105
  max-width: 100%;
101
106
  height: auto;