@doist/reactist 29.1.0 → 29.1.2

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 (227) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/reactist.cjs.development.js +6749 -1829
  3. package/dist/reactist.cjs.development.js.map +1 -1
  4. package/dist/reactist.cjs.production.min.js +1 -1
  5. package/dist/reactist.cjs.production.min.js.map +1 -1
  6. package/es/avatar/avatar.js +106 -36
  7. package/es/avatar/avatar.js.map +1 -1
  8. package/es/avatar/utils.js +17 -19
  9. package/es/avatar/utils.js.map +1 -1
  10. package/es/badge/badge.js +50 -6
  11. package/es/badge/badge.js.map +1 -1
  12. package/es/banner/banner.js +384 -41
  13. package/es/banner/banner.js.map +1 -1
  14. package/es/base-field/base-field.js +367 -77
  15. package/es/base-field/base-field.js.map +1 -1
  16. package/es/box/box.js +139 -61
  17. package/es/box/box.js.map +1 -1
  18. package/es/button/button.js +346 -36
  19. package/es/button/button.js.map +1 -1
  20. package/es/checkbox-field/checkbox-field.js +71 -48
  21. package/es/checkbox-field/checkbox-field.js.map +1 -1
  22. package/es/checkbox-field/checkbox-icon.js +88 -28
  23. package/es/checkbox-field/checkbox-icon.js.map +1 -1
  24. package/es/checkbox-field/use-fork-ref.js +15 -20
  25. package/es/checkbox-field/use-fork-ref.js.map +1 -1
  26. package/es/columns/columns.js +46 -23
  27. package/es/columns/columns.js.map +1 -1
  28. package/es/components/color-picker/color-picker.js +190 -46
  29. package/es/components/color-picker/color-picker.js.map +1 -1
  30. package/es/components/deprecated-button/deprecated-button.js +102 -9
  31. package/es/components/deprecated-button/deprecated-button.js.map +1 -1
  32. package/es/components/deprecated-button/index.js +5 -2
  33. package/es/components/deprecated-button/index.js.map +1 -1
  34. package/es/components/deprecated-dropdown/dropdown.js +234 -134
  35. package/es/components/deprecated-dropdown/dropdown.js.map +1 -1
  36. package/es/components/deprecated-dropdown/index.js +4 -1
  37. package/es/components/deprecated-dropdown/index.js.map +1 -1
  38. package/es/components/deprecated-input/index.js +5 -2
  39. package/es/components/deprecated-input/index.js.map +1 -1
  40. package/es/components/deprecated-input/input.js +27 -4
  41. package/es/components/deprecated-input/input.js.map +1 -1
  42. package/es/components/deprecated-select/select.js +110 -7
  43. package/es/components/deprecated-select/select.js.map +1 -1
  44. package/es/components/key-capturer/key-capturer.js +190 -137
  45. package/es/components/key-capturer/key-capturer.js.map +1 -1
  46. package/es/components/keyboard-shortcut/keyboard-shortcut.js +65 -45
  47. package/es/components/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
  48. package/es/components/progress-bar/progress-bar.js +61 -9
  49. package/es/components/progress-bar/progress-bar.js.map +1 -1
  50. package/es/components/time/index.js +5 -2
  51. package/es/components/time/index.js.map +1 -1
  52. package/es/components/time/time-utils.js +59 -53
  53. package/es/components/time/time-utils.js.map +1 -1
  54. package/es/components/time/time.js +94 -91
  55. package/es/components/time/time.js.map +1 -1
  56. package/es/divider/divider.js +44 -5
  57. package/es/divider/divider.js.map +1 -1
  58. package/es/heading/heading.js +122 -20
  59. package/es/heading/heading.js.map +1 -1
  60. package/es/hidden/hidden.js +36 -30
  61. package/es/hidden/hidden.js.map +1 -1
  62. package/es/hidden-visually/hidden-visually.js +9 -4
  63. package/es/hidden-visually/hidden-visually.js.map +1 -1
  64. package/es/icons/alert-icon.js +145 -18
  65. package/es/icons/alert-icon.js.map +1 -1
  66. package/es/icons/banner-icon.js +213 -25
  67. package/es/icons/banner-icon.js.map +1 -1
  68. package/es/icons/close-icon.js +26 -3
  69. package/es/icons/close-icon.js.map +1 -1
  70. package/es/icons/password-hidden-icon.js +40 -6
  71. package/es/icons/password-hidden-icon.js.map +1 -1
  72. package/es/icons/password-visible-icon.js +33 -5
  73. package/es/icons/password-visible-icon.js.map +1 -1
  74. package/es/index.js +9 -9
  75. package/es/inline/inline.js +24 -9
  76. package/es/inline/inline.js.map +1 -1
  77. package/es/loading/loading.js +63 -17
  78. package/es/loading/loading.js.map +1 -1
  79. package/es/menu/menu.js +469 -92
  80. package/es/menu/menu.js.map +1 -1
  81. package/es/modal/modal.js +675 -112
  82. package/es/modal/modal.js.map +1 -1
  83. package/es/notice/notice.js +77 -10
  84. package/es/notice/notice.js.map +1 -1
  85. package/es/password-field/password-field.js +89 -11
  86. package/es/password-field/password-field.js.map +1 -1
  87. package/es/prose/prose.js +48 -9
  88. package/es/prose/prose.js.map +1 -1
  89. package/es/select-field/select-field.js +150 -16
  90. package/es/select-field/select-field.js.map +1 -1
  91. package/es/spinner/spinner.js +39 -6
  92. package/es/spinner/spinner.js.map +1 -1
  93. package/es/stack/stack.js +29 -17
  94. package/es/stack/stack.js.map +1 -1
  95. package/es/switch-field/switch-field.js +225 -42
  96. package/es/switch-field/switch-field.js.map +1 -1
  97. package/es/tabs/tabs.js +207 -109
  98. package/es/tabs/tabs.js.map +1 -1
  99. package/es/text/text.js +27 -17
  100. package/es/text/text.js.map +1 -1
  101. package/es/text-area/text-area.js +264 -54
  102. package/es/text-area/text-area.js.map +1 -1
  103. package/es/text-field/text-field.js +204 -31
  104. package/es/text-field/text-field.js.map +1 -1
  105. package/es/text-link/text-link.js +21 -10
  106. package/es/text-link/text-link.js.map +1 -1
  107. package/es/toast/static-toast.js +143 -25
  108. package/es/toast/static-toast.js.map +1 -1
  109. package/es/toast/toast-animation.js +159 -109
  110. package/es/toast/toast-animation.js.map +1 -1
  111. package/es/toast/use-toasts.js +309 -84
  112. package/es/toast/use-toasts.js.map +1 -1
  113. package/es/tooltip/tooltip.js +88 -32
  114. package/es/tooltip/tooltip.js.map +1 -1
  115. package/es/utils/common-helpers.js +12 -11
  116. package/es/utils/common-helpers.js.map +1 -1
  117. package/es/utils/polymorphism.js +84 -1
  118. package/es/utils/polymorphism.js.map +1 -1
  119. package/es/utils/responsive-props.js +43 -32
  120. package/es/utils/responsive-props.js.map +1 -1
  121. package/lib/avatar/avatar.js +109 -35
  122. package/lib/avatar/avatar.js.map +1 -1
  123. package/lib/avatar/utils.js +17 -19
  124. package/lib/avatar/utils.js.map +1 -1
  125. package/lib/badge/badge.js +53 -5
  126. package/lib/badge/badge.js.map +1 -1
  127. package/lib/banner/banner.js +385 -38
  128. package/lib/banner/banner.js.map +1 -1
  129. package/lib/base-field/base-field.js +366 -73
  130. package/lib/base-field/base-field.js.map +1 -1
  131. package/lib/box/box.js +141 -61
  132. package/lib/box/box.js.map +1 -1
  133. package/lib/button/button.js +347 -35
  134. package/lib/button/button.js.map +1 -1
  135. package/lib/checkbox-field/checkbox-field.js +73 -46
  136. package/lib/checkbox-field/checkbox-field.js.map +1 -1
  137. package/lib/checkbox-field/checkbox-icon.js +92 -28
  138. package/lib/checkbox-field/checkbox-icon.js.map +1 -1
  139. package/lib/checkbox-field/use-fork-ref.js +15 -20
  140. package/lib/checkbox-field/use-fork-ref.js.map +1 -1
  141. package/lib/columns/columns.js +49 -22
  142. package/lib/columns/columns.js.map +1 -1
  143. package/lib/components/color-picker/color-picker.js +189 -45
  144. package/lib/components/color-picker/color-picker.js.map +1 -1
  145. package/lib/components/deprecated-button/deprecated-button.js +104 -9
  146. package/lib/components/deprecated-button/deprecated-button.js.map +1 -1
  147. package/lib/components/deprecated-dropdown/dropdown.js +235 -133
  148. package/lib/components/deprecated-dropdown/dropdown.js.map +1 -1
  149. package/lib/components/deprecated-input/input.js +28 -4
  150. package/lib/components/deprecated-input/input.js.map +1 -1
  151. package/lib/components/deprecated-select/select.js +112 -7
  152. package/lib/components/deprecated-select/select.js.map +1 -1
  153. package/lib/components/key-capturer/key-capturer.js +188 -135
  154. package/lib/components/key-capturer/key-capturer.js.map +1 -1
  155. package/lib/components/keyboard-shortcut/keyboard-shortcut.js +67 -45
  156. package/lib/components/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
  157. package/lib/components/progress-bar/progress-bar.js +60 -8
  158. package/lib/components/progress-bar/progress-bar.js.map +1 -1
  159. package/lib/components/time/time-utils.js +59 -53
  160. package/lib/components/time/time-utils.js.map +1 -1
  161. package/lib/components/time/time.js +93 -90
  162. package/lib/components/time/time.js.map +1 -1
  163. package/lib/divider/divider.js +47 -4
  164. package/lib/divider/divider.js.map +1 -1
  165. package/lib/heading/heading.js +125 -19
  166. package/lib/heading/heading.js.map +1 -1
  167. package/lib/hidden/hidden.js +39 -29
  168. package/lib/hidden/hidden.js.map +1 -1
  169. package/lib/hidden-visually/hidden-visually.js +11 -3
  170. package/lib/hidden-visually/hidden-visually.js.map +1 -1
  171. package/lib/icons/alert-icon.js +149 -18
  172. package/lib/icons/alert-icon.js.map +1 -1
  173. package/lib/icons/banner-icon.js +217 -25
  174. package/lib/icons/banner-icon.js.map +1 -1
  175. package/lib/icons/close-icon.js +29 -3
  176. package/lib/icons/close-icon.js.map +1 -1
  177. package/lib/icons/password-hidden-icon.js +43 -6
  178. package/lib/icons/password-hidden-icon.js.map +1 -1
  179. package/lib/icons/password-visible-icon.js +36 -5
  180. package/lib/icons/password-visible-icon.js.map +1 -1
  181. package/lib/inline/inline.js +27 -8
  182. package/lib/inline/inline.js.map +1 -1
  183. package/lib/loading/loading.js +67 -17
  184. package/lib/loading/loading.js.map +1 -1
  185. package/lib/menu/menu.js +471 -91
  186. package/lib/menu/menu.js.map +1 -1
  187. package/lib/modal/modal.js +671 -106
  188. package/lib/modal/modal.js.map +1 -1
  189. package/lib/notice/notice.js +75 -8
  190. package/lib/notice/notice.js.map +1 -1
  191. package/lib/password-field/password-field.js +92 -10
  192. package/lib/password-field/password-field.js.map +1 -1
  193. package/lib/prose/prose.js +51 -8
  194. package/lib/prose/prose.js.map +1 -1
  195. package/lib/select-field/select-field.js +152 -14
  196. package/lib/select-field/select-field.js.map +1 -1
  197. package/lib/spinner/spinner.js +39 -6
  198. package/lib/spinner/spinner.js.map +1 -1
  199. package/lib/stack/stack.js +29 -15
  200. package/lib/stack/stack.js.map +1 -1
  201. package/lib/switch-field/switch-field.js +225 -38
  202. package/lib/switch-field/switch-field.js.map +1 -1
  203. package/lib/tabs/tabs.js +207 -107
  204. package/lib/tabs/tabs.js.map +1 -1
  205. package/lib/text/text.js +30 -16
  206. package/lib/text/text.js.map +1 -1
  207. package/lib/text-area/text-area.js +264 -52
  208. package/lib/text-area/text-area.js.map +1 -1
  209. package/lib/text-field/text-field.js +207 -30
  210. package/lib/text-field/text-field.js.map +1 -1
  211. package/lib/text-link/text-link.js +24 -9
  212. package/lib/text-link/text-link.js.map +1 -1
  213. package/lib/toast/static-toast.js +142 -22
  214. package/lib/toast/static-toast.js.map +1 -1
  215. package/lib/toast/toast-animation.js +158 -108
  216. package/lib/toast/toast-animation.js.map +1 -1
  217. package/lib/toast/use-toasts.js +310 -82
  218. package/lib/toast/use-toasts.js.map +1 -1
  219. package/lib/tooltip/tooltip.js +87 -31
  220. package/lib/tooltip/tooltip.js.map +1 -1
  221. package/lib/utils/common-helpers.js +12 -11
  222. package/lib/utils/common-helpers.js.map +1 -1
  223. package/lib/utils/polymorphism.js +84 -1
  224. package/lib/utils/polymorphism.js.map +1 -1
  225. package/lib/utils/responsive-props.js +43 -32
  226. package/lib/utils/responsive-props.js.map +1 -1
  227. package/package.json +10 -2
@@ -1 +1 @@
1
- {"version":3,"file":"avatar.js","sources":["../../src/avatar/avatar.tsx"],"sourcesContent":[null],"names":["__rest","getInitials","emailToIndex","getClassNames","styles","React","Box","__assign"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,IAAM,aAAa,GAAG;IAClB,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;CACZ,CAAA;AAcD,SAAS,MAAM,CAAC,EAQR,EAAA;AAPJ,IAAA,IAAA,IAAI,GAAA,EAAA,CAAA,IAAA,EACJ,SAAS,GAAA,EAAA,CAAA,SAAA,EACT,EAAU,GAAA,EAAA,CAAA,IAAA,EAAV,IAAI,GAAA,EAAA,KAAA,KAAA,CAAA,GAAG,GAAG,GAAA,EAAA,EACV,SAAS,GAAA,EAAA,CAAA,SAAA,EACT,EAAyB,GAAA,EAAA,CAAA,SAAA,EAAzB,SAAS,GAAA,EAAA,KAAA,KAAA,CAAA,GAAG,aAAa,GAAA,EAAA,EACzB,yBAAyB,GAAA,EAAA,CAAA,yBAAA,EACtB,KAAK,GAAAA,YAAA,CAAA,EAAA,EAPI,oFAQf,CADW,CAAA;AAER,IAAA,IAAM,YAAY,GAAGC,iBAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAIA,iBAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACtE,IAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,GAAG,CAAA;IAEpC,IAAM,KAAK,GAAG,SAAS;AACnB,UAAE;YACI,eAAe,EAAE,MAAO,CAAA,MAAA,CAAA,SAAS,EAAG,GAAA,CAAA;YACpC,UAAU,EAAE,SAAS;AACxB,SAAA;AACH,UAAE;AACI,YAAA,eAAe,EAAE,SAAS,CAACC,kBAAY,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;SACzE,CAAA;IAEP,IAAM,aAAa,GAAGC,6BAAa,CAACC,wBAAM,EAAE,MAAM,EAAE,UAAU,CAAC,CAAA;IAE/D,QACIC,gBAAC,CAAA,aAAA,CAAAC,OAAG,EACAC,cAAA,CAAA,EAAA,SAAS,EAAE,CAAC,SAAS,EAAEH,wBAAM,CAAC,MAAM,EAAE,aAAa,EAAE,yBAAyB,CAAC,EAC/E,KAAK,EAAE,KAAK,EACR,EAAA,KAAK,CAER,EAAA,YAAY,CACX,EACT;AACL,CAAC;AACD,MAAM,CAAC,WAAW,GAAG,QAAQ;;;;"}
1
+ {"version":3,"file":"avatar.js","sources":["../../src/avatar/avatar.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { Box } from '../box'\nimport { getClassNames } from '../utils/responsive-props'\n\nimport { emailToIndex, getInitials } from './utils'\n\nimport styles from './avatar.module.css'\n\nimport type { ObfuscatedClassName } from '../utils/common-types'\nimport type { ResponsiveProp } from '../utils/responsive-props'\n\nconst AVATAR_COLORS = [\n '#fcc652',\n '#e9952c',\n '#e16b2d',\n '#d84b40',\n '#e8435a',\n '#e5198a',\n '#ad3889',\n '#86389c',\n '#a8a8a8',\n '#98be2f',\n '#5d9d50',\n '#5f9f85',\n '#5bbcb6',\n '#32a3bf',\n '#2bafeb',\n '#2d88c3',\n '#3863cc',\n '#5e5e5e',\n]\n\ntype AvatarSize = 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl' | 'xxxl'\n\ntype Props = ObfuscatedClassName & {\n /** @deprecated Please use `exceptionallySetClassName` */\n className?: string\n /** @deprecated */\n colorList?: string[]\n size?: ResponsiveProp<AvatarSize>\n avatarUrl?: string\n user: { name?: string; email: string }\n}\n\nfunction Avatar({\n user,\n avatarUrl,\n size = 'l',\n className,\n colorList = AVATAR_COLORS,\n exceptionallySetClassName,\n ...props\n}: Props) {\n const userInitials = getInitials(user.name) || getInitials(user.email)\n const avatarSize = size ? size : 'l'\n\n const style = avatarUrl\n ? {\n backgroundImage: `url(${avatarUrl})`,\n textIndent: '-9999px', // hide the initials\n }\n : {\n backgroundColor: colorList[emailToIndex(user.email, colorList.length)],\n }\n\n const sizeClassName = getClassNames(styles, 'size', avatarSize)\n\n return (\n <Box\n className={[className, styles.avatar, sizeClassName, exceptionallySetClassName]}\n style={style}\n {...props}\n >\n {userInitials}\n </Box>\n )\n}\nAvatar.displayName = 'Avatar'\n\nexport { Avatar }\n"],"names":["AVATAR_COLORS","Avatar","t0","$","_c","avatarUrl","className","exceptionallySetClassName","props","t1","t2","user","_t","size","colorList","_objectWithoutProperties","_excluded","undefined","t3","email","name","getInitials","userInitials","avatarSize","t4","backgroundImage","textIndent","backgroundColor","emailToIndex","length","style","t5","getClassNames","styles","sizeClassName","t6","avatar","t7","React","createElement","Box","_extends","displayName"],"mappings":"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"}
@@ -3,27 +3,25 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  function getInitials(name) {
6
- if (!name) {
7
- return '';
8
- }
9
- var seed = name.trim().split(' ');
10
- var firstInitial = seed[0];
11
- var lastInitial = seed[seed.length - 1];
12
- var initials = firstInitial === null || firstInitial === void 0 ? void 0 : firstInitial[0];
13
- if (firstInitial != null &&
14
- lastInitial != null &&
15
- initials != null &&
16
- // Better readable this way.
17
- // eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with
18
- firstInitial[0] !== lastInitial[0]) {
19
- initials += lastInitial[0];
20
- }
21
- return initials === null || initials === void 0 ? void 0 : initials.toUpperCase();
6
+ if (!name) {
7
+ return '';
8
+ }
9
+ const seed = name.trim().split(' ');
10
+ const firstInitial = seed[0];
11
+ const lastInitial = seed[seed.length - 1];
12
+ let initials = firstInitial?.[0];
13
+ if (firstInitial != null && lastInitial != null && initials != null &&
14
+ // Better readable this way.
15
+ // eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with
16
+ firstInitial[0] !== lastInitial[0]) {
17
+ initials += lastInitial[0];
18
+ }
19
+ return initials?.toUpperCase();
22
20
  }
23
21
  function emailToIndex(email, maxIndex) {
24
- var seed = email.split('@')[0];
25
- var hash = seed ? seed.charCodeAt(0) + seed.charCodeAt(seed.length - 1) || 0 : 0;
26
- return hash % maxIndex;
22
+ const seed = email.split('@')[0];
23
+ const hash = seed ? seed.charCodeAt(0) + seed.charCodeAt(seed.length - 1) || 0 : 0;
24
+ return hash % maxIndex;
27
25
  }
28
26
 
29
27
  exports.emailToIndex = emailToIndex;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../src/avatar/utils.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAAA,SAAS,WAAW,CAAC,IAAa,EAAA;IAC9B,IAAI,CAAC,IAAI,EAAE;AACP,QAAA,OAAO,EAAE,CAAA;KACZ;IAED,IAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AACnC,IAAA,IAAM,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;IAC5B,IAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAEzC,IAAI,QAAQ,GAAG,YAAY,KAAZ,IAAA,IAAA,YAAY,uBAAZ,YAAY,CAAG,CAAC,CAAC,CAAA;IAChC,IACI,YAAY,IAAI,IAAI;AACpB,QAAA,WAAW,IAAI,IAAI;AACnB,QAAA,QAAQ,IAAI,IAAI;;;QAGhB,YAAY,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,CAAC,EACpC;AACE,QAAA,QAAQ,IAAI,WAAW,CAAC,CAAC,CAAC,CAAA;KAC7B;IACD,OAAO,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,WAAW,EAAE,CAAA;AAClC,CAAC;AAED,SAAS,YAAY,CAAC,KAAa,EAAE,QAAgB,EAAA;IACjD,IAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;AAChC,IAAA,IAAM,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAClF,OAAO,IAAI,GAAG,QAAQ,CAAA;AAC1B;;;;;"}
1
+ {"version":3,"file":"utils.js","sources":["../../src/avatar/utils.ts"],"sourcesContent":["function getInitials(name?: string) {\n if (!name) {\n return ''\n }\n\n const seed = name.trim().split(' ')\n const firstInitial = seed[0]\n const lastInitial = seed[seed.length - 1]\n\n let initials = firstInitial?.[0]\n if (\n firstInitial != null &&\n lastInitial != null &&\n initials != null &&\n // Better readable this way.\n // eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with\n firstInitial[0] !== lastInitial[0]\n ) {\n initials += lastInitial[0]\n }\n return initials?.toUpperCase()\n}\n\nfunction emailToIndex(email: string, maxIndex: number) {\n const seed = email.split('@')[0]\n const hash = seed ? seed.charCodeAt(0) + seed.charCodeAt(seed.length - 1) || 0 : 0\n return hash % maxIndex\n}\n\nexport { emailToIndex, getInitials }\n"],"names":["getInitials","name","seed","trim","split","firstInitial","lastInitial","length","initials","toUpperCase","emailToIndex","email","maxIndex","hash","charCodeAt"],"mappings":";;;;AAAA,SAASA,WAAWA,CAACC,IAAa,EAAE;EAChC,IAAI,CAACA,IAAI,EAAE;AACP,IAAA,OAAO,EAAE,CAAA;AACb,GAAA;EAEA,MAAMC,IAAI,GAAGD,IAAI,CAACE,IAAI,EAAE,CAACC,KAAK,CAAC,GAAG,CAAC,CAAA;AACnC,EAAA,MAAMC,YAAY,GAAGH,IAAI,CAAC,CAAC,CAAC,CAAA;EAC5B,MAAMI,WAAW,GAAGJ,IAAI,CAACA,IAAI,CAACK,MAAM,GAAG,CAAC,CAAC,CAAA;AAEzC,EAAA,IAAIC,QAAQ,GAAGH,YAAY,GAAG,CAAC,CAAC,CAAA;EAChC,IACIA,YAAY,IAAI,IAAI,IACpBC,WAAW,IAAI,IAAI,IACnBE,QAAQ,IAAI,IAAI;AAChB;AACA;EACAH,YAAY,CAAC,CAAC,CAAC,KAAKC,WAAW,CAAC,CAAC,CAAC,EACpC;AACEE,IAAAA,QAAQ,IAAIF,WAAW,CAAC,CAAC,CAAC,CAAA;AAC9B,GAAA;AACA,EAAA,OAAOE,QAAQ,EAAEC,WAAW,EAAE,CAAA;AAClC,CAAA;AAEA,SAASC,YAAYA,CAACC,KAAa,EAAEC,QAAgB,EAAE;EACnD,MAAMV,IAAI,GAAGS,KAAK,CAACP,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;EAChC,MAAMS,IAAI,GAAGX,IAAI,GAAGA,IAAI,CAACY,UAAU,CAAC,CAAC,CAAC,GAAGZ,IAAI,CAACY,UAAU,CAACZ,IAAI,CAACK,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;EAClF,OAAOM,IAAI,GAAGD,QAAQ,CAAA;AAC1B;;;;;"}
@@ -2,11 +2,15 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib = require('tslib');
5
+ var _extends = require('@babel/runtime/helpers/extends');
6
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
7
+ var reactCompilerRuntime = require('react-compiler-runtime');
6
8
  var React = require('react');
7
9
  var box = require('../box/box.js');
8
10
  var badge_module = require('./badge.module.css.js');
9
11
 
12
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
+
10
14
  function _interopNamespace(e) {
11
15
  if (e && e.__esModule) return e;
12
16
  var n = Object.create(null);
@@ -25,12 +29,56 @@ function _interopNamespace(e) {
25
29
  return Object.freeze(n);
26
30
  }
27
31
 
32
+ var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
33
+ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
28
34
  var React__namespace = /*#__PURE__*/_interopNamespace(React);
29
35
 
30
- function Badge(_a) {
31
- var tone = _a.tone, label = _a.label, props = tslib.__rest(_a, ["tone", "label"]);
32
- return (React__namespace.createElement(box.Box, tslib.__assign({}, props, { as: "span" // It enables putting the badge inside a button (https://stackoverflow.com/a/12982334)
33
- , display: "inline", className: [badge_module["default"].badge, badge_module["default"]["badge-".concat(tone)]] }), label));
36
+ const _excluded = ["tone", "label"];
37
+ function Badge(t0) {
38
+ const $ = reactCompilerRuntime.c(10);
39
+ let label;
40
+ let props;
41
+ let tone;
42
+ if ($[0] !== t0) {
43
+ var _t = t0;
44
+ ({
45
+ tone,
46
+ label
47
+ } = _t);
48
+ props = _objectWithoutProperties__default["default"](_t, _excluded);
49
+ $[0] = t0;
50
+ $[1] = label;
51
+ $[2] = props;
52
+ $[3] = tone;
53
+ } else {
54
+ label = $[1];
55
+ props = $[2];
56
+ tone = $[3];
57
+ }
58
+ const t1 = badge_module["default"][`badge-${tone}`];
59
+ let t2;
60
+ if ($[4] !== t1) {
61
+ t2 = [badge_module["default"].badge, t1];
62
+ $[4] = t1;
63
+ $[5] = t2;
64
+ } else {
65
+ t2 = $[5];
66
+ }
67
+ let t3;
68
+ if ($[6] !== label || $[7] !== props || $[8] !== t2) {
69
+ t3 = /*#__PURE__*/React__namespace.createElement(box.Box, _extends__default["default"]({}, props, {
70
+ as: "span",
71
+ display: "inline",
72
+ className: t2
73
+ }), label);
74
+ $[6] = label;
75
+ $[7] = props;
76
+ $[8] = t2;
77
+ $[9] = t3;
78
+ } else {
79
+ t3 = $[9];
80
+ }
81
+ return t3;
34
82
  }
35
83
 
36
84
  exports.Badge = Badge;
@@ -1 +1 @@
1
- {"version":3,"file":"badge.js","sources":["../../src/badge/badge.tsx"],"sourcesContent":[null],"names":["__rest","React","Box","__assign","styles"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBA,SAAS,KAAK,CAAC,EAAqC,EAAA;IAAnC,IAAA,IAAI,UAAA,EAAE,KAAK,WAAA,EAAK,KAAK,GAAvBA,YAAA,CAAA,EAAA,EAAA,CAAA,MAAA,EAAA,OAAA,CAAyB,CAAF,CAAA;IAClC,QACIC,gBAAC,CAAA,aAAA,CAAAC,OAAG,EACIC,cAAA,CAAA,EAAA,EAAA,KAAK,IACT,EAAE,EAAC,MAAM;UACT,OAAO,EAAC,QAAQ,EAChB,SAAS,EAAE,CAACC,uBAAM,CAAC,KAAK,EAAEA,uBAAM,CAAC,QAAA,CAAA,MAAA,CAAS,IAAI,CAAE,CAAC,CAAC,EAEjD,CAAA,EAAA,KAAK,CACJ,EACT;AACL;;;;"}
1
+ {"version":3,"file":"badge.js","sources":["../../src/badge/badge.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { Box } from '../box'\n\nimport styles from './badge.module.css'\n\ntype BadgeTone = 'info' | 'positive' | 'promote' | 'attention' | 'warning'\n\ntype BadgeProps = {\n /**\n * The label to show inside the badge element.\n */\n label: string\n /**\n * The tone of the badge.\n */\n tone: BadgeTone\n}\n\nfunction Badge({ tone, label, ...props }: BadgeProps) {\n return (\n <Box\n {...props}\n as=\"span\" // It enables putting the badge inside a button (https://stackoverflow.com/a/12982334)\n display=\"inline\"\n className={[styles.badge, styles[`badge-${tone}`]]}\n >\n {label}\n </Box>\n )\n}\n\nexport { Badge }\nexport type { BadgeProps }\n"],"names":["Badge","t0","$","_c","label","props","tone","_t","_objectWithoutProperties","_excluded","t1","styles","t2","badge","t3","React","createElement","Box","_extends","as","display","className"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBA,SAAAA,MAAAC,EAAA,EAAA;EAAA,MAAAC,CAAA,GAAAC,sBAAA,CAAA,EAAA,CAAA,CAAA;AAAA,EAAA,IAAAC,KAAA,CAAA;AAAA,EAAA,IAAAC,KAAA,CAAA;AAAA,EAAA,IAAAC,IAAA,CAAA;EAAA,IAAAJ,CAAA,QAAAD,EAAA,EAAA;IAAA,IAAAM,EAAA,GAAeN,EAAqC,CAAA;AAAA,IAAA,CAAA;MAAAK,IAAA;AAAAF,MAAAA,KAAAA;AAAA,KAAA,GAAAG,EAAA,EAAA;AAAAF,IAAAA,KAAA,GAAAG,4CAAA,CAAAD,EAAA,EAAAE,SAAA,CAAA,CAAA;AAAAP,IAAAA,CAAA,MAAAD,EAAA,CAAA;AAAAC,IAAAA,CAAA,MAAAE,KAAA,CAAA;AAAAF,IAAAA,CAAA,MAAAG,KAAA,CAAA;AAAAH,IAAAA,CAAA,MAAAI,IAAA,CAAA;AAAA,GAAA,MAAA;AAAAF,IAAAA,KAAA,GAAAF,CAAA,CAAA,CAAA,CAAA,CAAA;AAAAG,IAAAA,KAAA,GAAAH,CAAA,CAAA,CAAA,CAAA,CAAA;AAAAI,IAAAA,IAAA,GAAAJ,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,GAAA;AAMd,EAAA,MAAAQ,EAAA,GAAAC,uBAAM,CAAC,CAASL,MAAAA,EAAAA,IAAI,EAAE,CAAC,CAAA;AAAA,EAAA,IAAAM,EAAA,CAAA;EAAA,IAAAV,CAAA,QAAAQ,EAAA,EAAA;AAAtCE,IAAAA,EAAA,IAACD,uBAAM,CAAAE,KAAM,EAAEH,EAAuB,CAAC,CAAA;AAAAR,IAAAA,CAAA,MAAAQ,EAAA,CAAA;AAAAR,IAAAA,CAAA,MAAAU,EAAA,CAAA;AAAA,GAAA,MAAA;AAAAA,IAAAA,EAAA,GAAAV,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,EAAA,IAAAY,EAAA,CAAA;EAAA,IAAAZ,CAAA,CAAAE,CAAAA,CAAAA,KAAAA,KAAA,IAAAF,CAAA,QAAAG,KAAA,IAAAH,CAAA,CAAA,CAAA,CAAA,KAAAU,EAAA,EAAA;IAJtDE,EAAA,gBAAAC,gBAAA,CAAAC,aAAA,CAACC,OAAG,EAAAC,4BAAA,CAAA,EAAA,EACIb,KAAK,EAAA;AACNc,MAAAA,EAAM,EAAN,MAAM;AACDC,MAAAA,OAAQ,EAAR,QAAQ;AACLC,MAAAA,SAAuC,EAAvCT,EAAAA;AAAuC,KAAA,CAAA,EAEjDR,KACA,CAAC,CAAA;AAAAF,IAAAA,CAAA,MAAAE,KAAA,CAAA;AAAAF,IAAAA,CAAA,MAAAG,KAAA,CAAA;AAAAH,IAAAA,CAAA,MAAAU,EAAA,CAAA;AAAAV,IAAAA,CAAA,MAAAY,EAAA,CAAA;AAAA,GAAA,MAAA;AAAAA,IAAAA,EAAA,GAAAZ,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,EAAA,OAPNY,EAOM,CAAA;AAAA;;;;"}
@@ -2,7 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib = require('tslib');
5
+ var _extends = require('@babel/runtime/helpers/extends');
6
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
7
+ var reactCompilerRuntime = require('react-compiler-runtime');
6
8
  var React = require('react');
7
9
  var box = require('../box/box.js');
8
10
  var button = require('../button/button.js');
@@ -12,6 +14,8 @@ var textLink = require('../text-link/text-link.js');
12
14
  var commonHelpers = require('../utils/common-helpers.js');
13
15
  var banner_module = require('./banner.module.css.js');
14
16
 
17
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
18
+
15
19
  function _interopNamespace(e) {
16
20
  if (e && e.__esModule) return e;
17
21
  var n = Object.create(null);
@@ -30,52 +34,395 @@ function _interopNamespace(e) {
30
34
  return Object.freeze(n);
31
35
  }
32
36
 
37
+ var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
38
+ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
33
39
  var React__namespace = /*#__PURE__*/_interopNamespace(React);
34
40
 
41
+ const _excluded = ["id", "type", "title", "description", "children", "action", "icon", "image", "inlineLinks", "closeLabel", "onClose"],
42
+ _excluded2 = ["label"],
43
+ _excluded3 = ["type", "label"],
44
+ _excluded4 = ["type", "label", "variant"];
45
+
46
+ /**
47
+ * Represents the type of a banner.
48
+ * 'neutral' accepts a custom icon, the rest do not.
49
+ * @default 'neutral'
50
+ */
51
+
52
+ /**
53
+ * Predefined system types for banners.
54
+ * Each type has its own preset icon.
55
+ */
56
+
57
+ /**
58
+ * Represents an action that can be taken from the banner.
59
+ * Can be either a button or a link, sharing common properties from BaseAction.
60
+ */
61
+
62
+ /**
63
+ * Configuration for inline links within the banner description.
64
+ * Extends TextLink component props with a required label.
65
+ */
66
+
67
+ /**
68
+ * Controls the close button behavior.
69
+ * If none is provided, the banner will not have a close button.
70
+ */
71
+
72
+ /**
73
+ * Configuration for neutral banners.
74
+ * Can include either an image, an icon, or neither, but never both.
75
+ */
76
+
77
+ /**
78
+ * Configuration for system banners.
79
+ * Cannot include custom images or icons as they use preset ones.
80
+ */
81
+
35
82
  /**
36
83
  * Type guard to check if the action is an Action object (button or link)
37
84
  */
38
85
  function isActionObject(action) {
39
- return (typeof action === 'object' &&
40
- action !== null &&
41
- 'type' in action &&
42
- (action.type === 'button' || action.type === 'link'));
86
+ return typeof action === 'object' && action !== null && 'type' in action && (action.type === 'button' || action.type === 'link');
43
87
  }
44
- var Banner = React__namespace.forwardRef(function Banner(_a, ref) {
45
- var id = _a.id, type = _a.type, title = _a.title, description = _a.description, children = _a.children, action = _a.action, icon = _a.icon, image = _a.image, inlineLinks = _a.inlineLinks, closeLabel = _a.closeLabel, onClose = _a.onClose, props = tslib.__rest(_a, ["id", "type", "title", "description", "children", "action", "icon", "image", "inlineLinks", "closeLabel", "onClose"]);
46
- var titleId = commonHelpers.useId();
47
- var descriptionId = commonHelpers.useId();
48
- var closeButton = onClose ? (React__namespace.createElement(button.IconButton, { exceptionallySetClassName: banner_module["default"].closeButton, variant: "quaternary", onClick: onClose, icon: React__namespace.createElement(closeIcon.CloseIcon, null), "aria-label": closeLabel !== null && closeLabel !== void 0 ? closeLabel : 'Close banner' })) : null;
49
- return (React__namespace.createElement(box.Box, tslib.__assign({}, props, { ref: ref, id: id, display: "flex", flexDirection: "column", justifyContent: "center", role: "status", "aria-labelledby": title ? titleId : descriptionId, "aria-describedby": title ? descriptionId : undefined, "aria-live": "polite", tabIndex: 0, borderRadius: "full", className: banner_module["default"].banner }),
50
- image ? React__namespace.createElement(box.Box, { className: banner_module["default"].image }, image) : null,
51
- React__namespace.createElement(box.Box, { className: banner_module["default"].content, display: "flex", gap: "small" },
52
- React__namespace.createElement(box.Box, { className: banner_module["default"].icon },
53
- type === 'neutral' ? icon : React__namespace.createElement(bannerIcon.BannerIcon, { type: type }),
54
- closeButton),
55
- React__namespace.createElement(box.Box, { display: "flex", flexDirection: "column", gap: "small", flexGrow: 1 },
56
- React__namespace.createElement(box.Box, { className: banner_module["default"].topContent, display: "flex", gap: "small", alignItems: "flexStart" },
57
- React__namespace.createElement(box.Box, { className: banner_module["default"].copy, display: "flex", flexDirection: "column", flexGrow: 1 },
58
- title ? (React__namespace.createElement(box.Box, { id: titleId, className: banner_module["default"].title }, title)) : null,
59
- React__namespace.createElement(box.Box, { id: descriptionId, className: [banner_module["default"].description, title ? banner_module["default"].secondary : null] },
60
- description, inlineLinks === null || inlineLinks === void 0 ? void 0 :
61
- inlineLinks.map(function (_a, index) {
62
- var label = _a.label, props = tslib.__rest(_a, ["label"]);
63
- return (React__namespace.createElement(React__namespace.Fragment, { key: index },
64
- React__namespace.createElement(textLink.TextLink, tslib.__assign({}, props, { exceptionallySetClassName: banner_module["default"].inlineLink }), label),
65
- index < inlineLinks.length - 1 ? React__namespace.createElement("span", null, " \u00B7 ") : ''));
66
- }))),
67
- action || closeButton ? (React__namespace.createElement(box.Box, { className: banner_module["default"].actions, display: "flex", gap: "small" },
68
- action ? (isActionObject(action) ? (action.type === 'button' ? (React__namespace.createElement(ActionButton, tslib.__assign({}, action))) : (React__namespace.createElement(ActionLink, tslib.__assign({}, action)))) : (action)) : null,
69
- closeButton)) : null),
70
- children))));
88
+ const Banner = /*#__PURE__*/React__namespace.forwardRef(function Banner(t0, ref) {
89
+ const $ = reactCompilerRuntime.c(59);
90
+ let action;
91
+ let children;
92
+ let closeLabel;
93
+ let description;
94
+ let icon;
95
+ let id;
96
+ let image;
97
+ let inlineLinks;
98
+ let onClose;
99
+ let props;
100
+ let title;
101
+ let type;
102
+ if ($[0] !== t0) {
103
+ var _t = t0;
104
+ ({
105
+ id,
106
+ type,
107
+ title,
108
+ description,
109
+ children,
110
+ action,
111
+ icon,
112
+ image,
113
+ inlineLinks,
114
+ closeLabel,
115
+ onClose
116
+ } = _t);
117
+ props = _objectWithoutProperties__default["default"](_t, _excluded);
118
+ $[0] = t0;
119
+ $[1] = action;
120
+ $[2] = children;
121
+ $[3] = closeLabel;
122
+ $[4] = description;
123
+ $[5] = icon;
124
+ $[6] = id;
125
+ $[7] = image;
126
+ $[8] = inlineLinks;
127
+ $[9] = onClose;
128
+ $[10] = props;
129
+ $[11] = title;
130
+ $[12] = type;
131
+ } else {
132
+ action = $[1];
133
+ children = $[2];
134
+ closeLabel = $[3];
135
+ description = $[4];
136
+ icon = $[5];
137
+ id = $[6];
138
+ image = $[7];
139
+ inlineLinks = $[8];
140
+ onClose = $[9];
141
+ props = $[10];
142
+ title = $[11];
143
+ type = $[12];
144
+ }
145
+ const titleId = commonHelpers.useId();
146
+ const descriptionId = commonHelpers.useId();
147
+ let t1;
148
+ if ($[13] !== closeLabel || $[14] !== onClose) {
149
+ t1 = onClose ? /*#__PURE__*/React__namespace.createElement(button.IconButton, {
150
+ exceptionallySetClassName: banner_module["default"].closeButton,
151
+ variant: "quaternary",
152
+ onClick: onClose,
153
+ icon: /*#__PURE__*/React__namespace.createElement(closeIcon.CloseIcon, null),
154
+ "aria-label": closeLabel ?? "Close banner"
155
+ }) : null;
156
+ $[13] = closeLabel;
157
+ $[14] = onClose;
158
+ $[15] = t1;
159
+ } else {
160
+ t1 = $[15];
161
+ }
162
+ const closeButton = t1;
163
+ const t2 = title ? titleId : descriptionId;
164
+ const t3 = title ? descriptionId : undefined;
165
+ let t4;
166
+ if ($[16] !== image) {
167
+ t4 = image ? /*#__PURE__*/React__namespace.createElement(box.Box, {
168
+ className: banner_module["default"].image
169
+ }, image) : null;
170
+ $[16] = image;
171
+ $[17] = t4;
172
+ } else {
173
+ t4 = $[17];
174
+ }
175
+ let t5;
176
+ if ($[18] !== icon || $[19] !== type) {
177
+ t5 = type === "neutral" ? icon : /*#__PURE__*/React__namespace.createElement(bannerIcon.BannerIcon, {
178
+ type: type
179
+ });
180
+ $[18] = icon;
181
+ $[19] = type;
182
+ $[20] = t5;
183
+ } else {
184
+ t5 = $[20];
185
+ }
186
+ let t6;
187
+ if ($[21] !== closeButton || $[22] !== t5) {
188
+ t6 = /*#__PURE__*/React__namespace.createElement(box.Box, {
189
+ className: banner_module["default"].icon
190
+ }, t5, closeButton);
191
+ $[21] = closeButton;
192
+ $[22] = t5;
193
+ $[23] = t6;
194
+ } else {
195
+ t6 = $[23];
196
+ }
197
+ let t7;
198
+ if ($[24] !== title || $[25] !== titleId) {
199
+ t7 = title ? /*#__PURE__*/React__namespace.createElement(box.Box, {
200
+ id: titleId,
201
+ className: banner_module["default"].title
202
+ }, title) : null;
203
+ $[24] = title;
204
+ $[25] = titleId;
205
+ $[26] = t7;
206
+ } else {
207
+ t7 = $[26];
208
+ }
209
+ const t8 = title ? banner_module["default"].secondary : null;
210
+ let t9;
211
+ if ($[27] !== t8) {
212
+ t9 = [banner_module["default"].description, t8];
213
+ $[27] = t8;
214
+ $[28] = t9;
215
+ } else {
216
+ t9 = $[28];
217
+ }
218
+ let t10;
219
+ if ($[29] !== inlineLinks) {
220
+ t10 = inlineLinks?.map((t11, index) => {
221
+ const {
222
+ label
223
+ } = t11,
224
+ props_0 = _objectWithoutProperties__default["default"](t11, _excluded2);
225
+ return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, {
226
+ key: index
227
+ }, /*#__PURE__*/React__namespace.createElement(textLink.TextLink, _extends__default["default"]({}, props_0, {
228
+ exceptionallySetClassName: banner_module["default"].inlineLink
229
+ }), label), index < inlineLinks.length - 1 ? /*#__PURE__*/React__namespace.createElement("span", null, " \xB7 ") : "");
230
+ });
231
+ $[29] = inlineLinks;
232
+ $[30] = t10;
233
+ } else {
234
+ t10 = $[30];
235
+ }
236
+ let t11;
237
+ if ($[31] !== description || $[32] !== descriptionId || $[33] !== t10 || $[34] !== t9) {
238
+ t11 = /*#__PURE__*/React__namespace.createElement(box.Box, {
239
+ id: descriptionId,
240
+ className: t9
241
+ }, description, t10);
242
+ $[31] = description;
243
+ $[32] = descriptionId;
244
+ $[33] = t10;
245
+ $[34] = t9;
246
+ $[35] = t11;
247
+ } else {
248
+ t11 = $[35];
249
+ }
250
+ let t12;
251
+ if ($[36] !== t11 || $[37] !== t7) {
252
+ t12 = /*#__PURE__*/React__namespace.createElement(box.Box, {
253
+ className: banner_module["default"].copy,
254
+ display: "flex",
255
+ flexDirection: "column",
256
+ flexGrow: 1
257
+ }, t7, t11);
258
+ $[36] = t11;
259
+ $[37] = t7;
260
+ $[38] = t12;
261
+ } else {
262
+ t12 = $[38];
263
+ }
264
+ let t13;
265
+ if ($[39] !== action || $[40] !== closeButton) {
266
+ t13 = action || closeButton ? /*#__PURE__*/React__namespace.createElement(box.Box, {
267
+ className: banner_module["default"].actions,
268
+ display: "flex",
269
+ gap: "small"
270
+ }, action ? isActionObject(action) ? action.type === "button" ? /*#__PURE__*/React__namespace.createElement(ActionButton, action) : /*#__PURE__*/React__namespace.createElement(ActionLink, action) : action : null, closeButton) : null;
271
+ $[39] = action;
272
+ $[40] = closeButton;
273
+ $[41] = t13;
274
+ } else {
275
+ t13 = $[41];
276
+ }
277
+ let t14;
278
+ if ($[42] !== t12 || $[43] !== t13) {
279
+ t14 = /*#__PURE__*/React__namespace.createElement(box.Box, {
280
+ className: banner_module["default"].topContent,
281
+ display: "flex",
282
+ gap: "small",
283
+ alignItems: "flexStart"
284
+ }, t12, t13);
285
+ $[42] = t12;
286
+ $[43] = t13;
287
+ $[44] = t14;
288
+ } else {
289
+ t14 = $[44];
290
+ }
291
+ let t15;
292
+ if ($[45] !== children || $[46] !== t14) {
293
+ t15 = /*#__PURE__*/React__namespace.createElement(box.Box, {
294
+ display: "flex",
295
+ flexDirection: "column",
296
+ gap: "small",
297
+ flexGrow: 1
298
+ }, t14, children);
299
+ $[45] = children;
300
+ $[46] = t14;
301
+ $[47] = t15;
302
+ } else {
303
+ t15 = $[47];
304
+ }
305
+ let t16;
306
+ if ($[48] !== t15 || $[49] !== t6) {
307
+ t16 = /*#__PURE__*/React__namespace.createElement(box.Box, {
308
+ className: banner_module["default"].content,
309
+ display: "flex",
310
+ gap: "small"
311
+ }, t6, t15);
312
+ $[48] = t15;
313
+ $[49] = t6;
314
+ $[50] = t16;
315
+ } else {
316
+ t16 = $[50];
317
+ }
318
+ let t17;
319
+ if ($[51] !== id || $[52] !== props || $[53] !== ref || $[54] !== t16 || $[55] !== t2 || $[56] !== t3 || $[57] !== t4) {
320
+ t17 = /*#__PURE__*/React__namespace.createElement(box.Box, _extends__default["default"]({}, props, {
321
+ ref: ref,
322
+ id: id,
323
+ display: "flex",
324
+ flexDirection: "column",
325
+ justifyContent: "center",
326
+ role: "status",
327
+ "aria-labelledby": t2,
328
+ "aria-describedby": t3,
329
+ "aria-live": "polite",
330
+ tabIndex: 0,
331
+ borderRadius: "full",
332
+ className: banner_module["default"].banner
333
+ }), t4, t16);
334
+ $[51] = id;
335
+ $[52] = props;
336
+ $[53] = ref;
337
+ $[54] = t16;
338
+ $[55] = t2;
339
+ $[56] = t3;
340
+ $[57] = t4;
341
+ $[58] = t17;
342
+ } else {
343
+ t17 = $[58];
344
+ }
345
+ return t17;
71
346
  });
72
- function ActionButton(_a) {
73
- _a.type; var label = _a.label, props = tslib.__rest(_a, ["type", "label"]);
74
- return React__namespace.createElement(button.Button, tslib.__assign({}, props), label);
347
+ function ActionButton(t0) {
348
+ const $ = reactCompilerRuntime.c(6);
349
+ let label;
350
+ let props;
351
+ if ($[0] !== t0) {
352
+ const {
353
+ type,
354
+ label: t1
355
+ } = t0,
356
+ t2 = _objectWithoutProperties__default["default"](t0, _excluded3);
357
+ label = t1;
358
+ props = t2;
359
+ $[0] = t0;
360
+ $[1] = label;
361
+ $[2] = props;
362
+ } else {
363
+ label = $[1];
364
+ props = $[2];
365
+ }
366
+ let t1;
367
+ if ($[3] !== label || $[4] !== props) {
368
+ t1 = /*#__PURE__*/React__namespace.createElement(button.Button, props, label);
369
+ $[3] = label;
370
+ $[4] = props;
371
+ $[5] = t1;
372
+ } else {
373
+ t1 = $[5];
374
+ }
375
+ return t1;
75
376
  }
76
- function ActionLink(_a) {
77
- _a.type; var label = _a.label, variant = _a.variant, props = tslib.__rest(_a, ["type", "label", "variant"]);
78
- return (React__namespace.createElement(button.Button, { variant: variant, render: React__namespace.createElement("a", tslib.__assign({ rel: "noopener noreferrer", target: "_blank" }, props)) }, label));
377
+ function ActionLink(t0) {
378
+ const $ = reactCompilerRuntime.c(10);
379
+ let label;
380
+ let props;
381
+ let variant;
382
+ if ($[0] !== t0) {
383
+ const {
384
+ type,
385
+ label: t1,
386
+ variant: t2
387
+ } = t0,
388
+ t3 = _objectWithoutProperties__default["default"](t0, _excluded4);
389
+ label = t1;
390
+ variant = t2;
391
+ props = t3;
392
+ $[0] = t0;
393
+ $[1] = label;
394
+ $[2] = props;
395
+ $[3] = variant;
396
+ } else {
397
+ label = $[1];
398
+ props = $[2];
399
+ variant = $[3];
400
+ }
401
+ let t1;
402
+ if ($[4] !== props) {
403
+ t1 = /*#__PURE__*/React__namespace.createElement("a", _extends__default["default"]({
404
+ rel: "noopener noreferrer",
405
+ target: "_blank"
406
+ }, props));
407
+ $[4] = props;
408
+ $[5] = t1;
409
+ } else {
410
+ t1 = $[5];
411
+ }
412
+ let t2;
413
+ if ($[6] !== label || $[7] !== t1 || $[8] !== variant) {
414
+ t2 = /*#__PURE__*/React__namespace.createElement(button.Button, {
415
+ variant: variant,
416
+ render: t1
417
+ }, label);
418
+ $[6] = label;
419
+ $[7] = t1;
420
+ $[8] = variant;
421
+ $[9] = t2;
422
+ } else {
423
+ t2 = $[9];
424
+ }
425
+ return t2;
79
426
  }
80
427
 
81
428
  exports.Banner = Banner;