@metamask-previews/design-system-react 0.24.0-preview.a0fe3894 → 0.25.0-preview.1f40f69f

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 (148) hide show
  1. package/CHANGELOG.md +16 -1
  2. package/dist/components/AvatarBase/AvatarBase.cjs +1 -1
  3. package/dist/components/AvatarBase/AvatarBase.cjs.map +1 -1
  4. package/dist/components/AvatarBase/AvatarBase.mjs +1 -1
  5. package/dist/components/AvatarBase/AvatarBase.mjs.map +1 -1
  6. package/dist/components/AvatarFavicon/AvatarFavicon.cjs +1 -1
  7. package/dist/components/AvatarFavicon/AvatarFavicon.cjs.map +1 -1
  8. package/dist/components/AvatarFavicon/AvatarFavicon.mjs +1 -1
  9. package/dist/components/AvatarFavicon/AvatarFavicon.mjs.map +1 -1
  10. package/dist/components/AvatarNetwork/AvatarNetwork.cjs +1 -1
  11. package/dist/components/AvatarNetwork/AvatarNetwork.cjs.map +1 -1
  12. package/dist/components/AvatarNetwork/AvatarNetwork.mjs +1 -1
  13. package/dist/components/AvatarNetwork/AvatarNetwork.mjs.map +1 -1
  14. package/dist/components/AvatarToken/AvatarToken.cjs +2 -2
  15. package/dist/components/AvatarToken/AvatarToken.cjs.map +1 -1
  16. package/dist/components/AvatarToken/AvatarToken.mjs +2 -2
  17. package/dist/components/AvatarToken/AvatarToken.mjs.map +1 -1
  18. package/dist/components/FormTextField/FormTextField.cjs +38 -0
  19. package/dist/components/FormTextField/FormTextField.cjs.map +1 -0
  20. package/dist/components/FormTextField/FormTextField.d.cts +4 -0
  21. package/dist/components/FormTextField/FormTextField.d.cts.map +1 -0
  22. package/dist/components/FormTextField/FormTextField.d.mts +4 -0
  23. package/dist/components/FormTextField/FormTextField.d.mts.map +1 -0
  24. package/dist/components/FormTextField/FormTextField.mjs +19 -0
  25. package/dist/components/FormTextField/FormTextField.mjs.map +1 -0
  26. package/dist/components/FormTextField/FormTextField.types.cjs +3 -0
  27. package/dist/components/FormTextField/FormTextField.types.cjs.map +1 -0
  28. package/dist/components/FormTextField/FormTextField.types.d.cts +50 -0
  29. package/dist/components/FormTextField/FormTextField.types.d.cts.map +1 -0
  30. package/dist/components/FormTextField/FormTextField.types.d.mts +50 -0
  31. package/dist/components/FormTextField/FormTextField.types.d.mts.map +1 -0
  32. package/dist/components/FormTextField/FormTextField.types.mjs +2 -0
  33. package/dist/components/FormTextField/FormTextField.types.mjs.map +1 -0
  34. package/dist/components/FormTextField/index.cjs +6 -0
  35. package/dist/components/FormTextField/index.cjs.map +1 -0
  36. package/dist/components/FormTextField/index.d.cts +3 -0
  37. package/dist/components/FormTextField/index.d.cts.map +1 -0
  38. package/dist/components/FormTextField/index.d.mts +3 -0
  39. package/dist/components/FormTextField/index.d.mts.map +1 -0
  40. package/dist/components/FormTextField/index.mjs +2 -0
  41. package/dist/components/FormTextField/index.mjs.map +1 -0
  42. package/dist/components/Popover/Popover.cjs +129 -0
  43. package/dist/components/Popover/Popover.cjs.map +1 -0
  44. package/dist/components/Popover/Popover.constants.cjs +28 -0
  45. package/dist/components/Popover/Popover.constants.cjs.map +1 -0
  46. package/dist/components/Popover/Popover.constants.d.cts +12 -0
  47. package/dist/components/Popover/Popover.constants.d.cts.map +1 -0
  48. package/dist/components/Popover/Popover.constants.d.mts +12 -0
  49. package/dist/components/Popover/Popover.constants.d.mts.map +1 -0
  50. package/dist/components/Popover/Popover.constants.mjs +25 -0
  51. package/dist/components/Popover/Popover.constants.mjs.map +1 -0
  52. package/dist/components/Popover/Popover.d.cts +4 -0
  53. package/dist/components/Popover/Popover.d.cts.map +1 -0
  54. package/dist/components/Popover/Popover.d.mts +4 -0
  55. package/dist/components/Popover/Popover.d.mts.map +1 -0
  56. package/dist/components/Popover/Popover.mjs +110 -0
  57. package/dist/components/Popover/Popover.mjs.map +1 -0
  58. package/dist/components/Popover/Popover.types.cjs +33 -0
  59. package/dist/components/Popover/Popover.types.cjs.map +1 -0
  60. package/dist/components/Popover/Popover.types.d.cts +128 -0
  61. package/dist/components/Popover/Popover.types.d.cts.map +1 -0
  62. package/dist/components/Popover/Popover.types.d.mts +128 -0
  63. package/dist/components/Popover/Popover.types.d.mts.map +1 -0
  64. package/dist/components/Popover/Popover.types.mjs +30 -0
  65. package/dist/components/Popover/Popover.types.mjs.map +1 -0
  66. package/dist/components/Popover/index.cjs +9 -0
  67. package/dist/components/Popover/index.cjs.map +1 -0
  68. package/dist/components/Popover/index.d.cts +4 -0
  69. package/dist/components/Popover/index.d.cts.map +1 -0
  70. package/dist/components/Popover/index.d.mts +4 -0
  71. package/dist/components/Popover/index.d.mts.map +1 -0
  72. package/dist/components/Popover/index.mjs +3 -0
  73. package/dist/components/Popover/index.mjs.map +1 -0
  74. package/dist/components/TextArea/TextArea.cjs +37 -0
  75. package/dist/components/TextArea/TextArea.cjs.map +1 -0
  76. package/dist/components/TextArea/TextArea.constants.cjs +35 -0
  77. package/dist/components/TextArea/TextArea.constants.cjs.map +1 -0
  78. package/dist/components/TextArea/TextArea.constants.d.cts +28 -0
  79. package/dist/components/TextArea/TextArea.constants.d.cts.map +1 -0
  80. package/dist/components/TextArea/TextArea.constants.d.mts +28 -0
  81. package/dist/components/TextArea/TextArea.constants.d.mts.map +1 -0
  82. package/dist/components/TextArea/TextArea.constants.mjs +32 -0
  83. package/dist/components/TextArea/TextArea.constants.mjs.map +1 -0
  84. package/dist/components/TextArea/TextArea.d.cts +9 -0
  85. package/dist/components/TextArea/TextArea.d.cts.map +1 -0
  86. package/dist/components/TextArea/TextArea.d.mts +9 -0
  87. package/dist/components/TextArea/TextArea.d.mts.map +1 -0
  88. package/dist/components/TextArea/TextArea.mjs +18 -0
  89. package/dist/components/TextArea/TextArea.mjs.map +1 -0
  90. package/dist/components/TextArea/TextArea.types.cjs +3 -0
  91. package/dist/components/TextArea/TextArea.types.cjs.map +1 -0
  92. package/dist/components/TextArea/TextArea.types.d.cts +33 -0
  93. package/dist/components/TextArea/TextArea.types.d.cts.map +1 -0
  94. package/dist/components/TextArea/TextArea.types.d.mts +33 -0
  95. package/dist/components/TextArea/TextArea.types.d.mts.map +1 -0
  96. package/dist/components/TextArea/TextArea.types.mjs +2 -0
  97. package/dist/components/TextArea/TextArea.types.mjs.map +1 -0
  98. package/dist/components/TextArea/index.cjs +8 -0
  99. package/dist/components/TextArea/index.cjs.map +1 -0
  100. package/dist/components/TextArea/index.d.cts +4 -0
  101. package/dist/components/TextArea/index.d.cts.map +1 -0
  102. package/dist/components/TextArea/index.d.mts +4 -0
  103. package/dist/components/TextArea/index.d.mts.map +1 -0
  104. package/dist/components/TextArea/index.mjs +3 -0
  105. package/dist/components/TextArea/index.mjs.map +1 -0
  106. package/dist/components/TextFieldSearch/TextFieldSearch.cjs +40 -0
  107. package/dist/components/TextFieldSearch/TextFieldSearch.cjs.map +1 -0
  108. package/dist/components/TextFieldSearch/TextFieldSearch.d.cts +6 -0
  109. package/dist/components/TextFieldSearch/TextFieldSearch.d.cts.map +1 -0
  110. package/dist/components/TextFieldSearch/TextFieldSearch.d.mts +6 -0
  111. package/dist/components/TextFieldSearch/TextFieldSearch.d.mts.map +1 -0
  112. package/dist/components/TextFieldSearch/TextFieldSearch.mjs +21 -0
  113. package/dist/components/TextFieldSearch/TextFieldSearch.mjs.map +1 -0
  114. package/dist/components/TextFieldSearch/TextFieldSearch.types.cjs +3 -0
  115. package/dist/components/TextFieldSearch/TextFieldSearch.types.cjs.map +1 -0
  116. package/dist/components/TextFieldSearch/TextFieldSearch.types.d.cts +17 -0
  117. package/dist/components/TextFieldSearch/TextFieldSearch.types.d.cts.map +1 -0
  118. package/dist/components/TextFieldSearch/TextFieldSearch.types.d.mts +17 -0
  119. package/dist/components/TextFieldSearch/TextFieldSearch.types.d.mts.map +1 -0
  120. package/dist/components/TextFieldSearch/TextFieldSearch.types.mjs +2 -0
  121. package/dist/components/TextFieldSearch/TextFieldSearch.types.mjs.map +1 -0
  122. package/dist/components/TextFieldSearch/index.cjs +6 -0
  123. package/dist/components/TextFieldSearch/index.cjs.map +1 -0
  124. package/dist/components/TextFieldSearch/index.d.cts +3 -0
  125. package/dist/components/TextFieldSearch/index.d.cts.map +1 -0
  126. package/dist/components/TextFieldSearch/index.d.mts +3 -0
  127. package/dist/components/TextFieldSearch/index.d.mts.map +1 -0
  128. package/dist/components/TextFieldSearch/index.mjs +2 -0
  129. package/dist/components/TextFieldSearch/index.mjs.map +1 -0
  130. package/dist/components/Toast/Toast.cjs +1 -1
  131. package/dist/components/Toast/Toast.cjs.map +1 -1
  132. package/dist/components/Toast/Toast.mjs +1 -1
  133. package/dist/components/Toast/Toast.mjs.map +1 -1
  134. package/dist/components/Toast/Toaster.cjs +75 -39
  135. package/dist/components/Toast/Toaster.cjs.map +1 -1
  136. package/dist/components/Toast/Toaster.d.cts.map +1 -1
  137. package/dist/components/Toast/Toaster.d.mts.map +1 -1
  138. package/dist/components/Toast/Toaster.mjs +76 -40
  139. package/dist/components/Toast/Toaster.mjs.map +1 -1
  140. package/dist/components/index.cjs +13 -1
  141. package/dist/components/index.cjs.map +1 -1
  142. package/dist/components/index.d.cts +8 -0
  143. package/dist/components/index.d.cts.map +1 -1
  144. package/dist/components/index.d.mts +8 -0
  145. package/dist/components/index.d.mts.map +1 -1
  146. package/dist/components/index.mjs +4 -0
  147. package/dist/components/index.mjs.map +1 -1
  148. package/package.json +6 -5
package/CHANGELOG.md CHANGED
@@ -7,6 +7,20 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.25.0]
11
+
12
+ ### Added
13
+
14
+ - Added `Popover` for anchored overlays such as menus, tooltips, and dialogs ([#1153](https://github.com/MetaMask/metamask-design-system/pull/1153))
15
+ - Added `TextArea` for controlled multiline text entry ([#1036](https://github.com/MetaMask/metamask-design-system/pull/1036))
16
+ - Added `TextFieldSearch` for controlled search-field flows on top of `TextField` ([#1171](https://github.com/MetaMask/metamask-design-system/pull/1171))
17
+ - Added `FormTextField` for labeled form controls built from `Label`, `TextField`, and `HelpText` ([#1197](https://github.com/MetaMask/metamask-design-system/pull/1197))
18
+
19
+ ### Changed
20
+
21
+ - **BREAKING:** Dropped Node.js 18 support for the release line; consumers must run Node 20 or newer ([#1206](https://github.com/MetaMask/metamask-design-system/pull/1206))
22
+ - Updated avatar fallback handling so `AvatarToken`, `AvatarNetwork`, and `AvatarFavicon` resolve consistently when the requested image is unavailable ([#1212](https://github.com/MetaMask/metamask-design-system/pull/1212))
23
+
10
24
  ## [0.24.0]
11
25
 
12
26
  ### Added
@@ -333,7 +347,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
333
347
  - Full TypeScript support with type definitions and enums
334
348
  - Tailwind CSS integration with design token support
335
349
 
336
- [Unreleased]: https://github.com/MetaMask/metamask-design-system/compare/@metamask/design-system-react@0.24.0...HEAD
350
+ [Unreleased]: https://github.com/MetaMask/metamask-design-system/compare/@metamask/design-system-react@0.25.0...HEAD
351
+ [0.25.0]: https://github.com/MetaMask/metamask-design-system/compare/@metamask/design-system-react@0.24.0...@metamask/design-system-react@0.25.0
337
352
  [0.24.0]: https://github.com/MetaMask/metamask-design-system/compare/@metamask/design-system-react@0.23.1...@metamask/design-system-react@0.24.0
338
353
  [0.23.1]: https://github.com/MetaMask/metamask-design-system/compare/@metamask/design-system-react@0.23.0...@metamask/design-system-react@0.23.1
339
354
  [0.23.0]: https://github.com/MetaMask/metamask-design-system/compare/@metamask/design-system-react@0.22.0...@metamask/design-system-react@0.23.0
@@ -34,7 +34,7 @@ exports.AvatarBase = (0, react_1.forwardRef)(({ children, fallbackText, fallback
34
34
  const Component = asChild ? react_slot_1.Slot : 'div';
35
35
  const mergedClassName = (0, tw_merge_1.twMerge)(
36
36
  // Base styles
37
- 'inline-flex shrink-0 items-center justify-center overflow-hidden bg-section', shape === design_system_shared_1.AvatarBaseShape.Circle
37
+ 'inline-flex shrink-0 items-center justify-center overflow-hidden bg-alternative', shape === design_system_shared_1.AvatarBaseShape.Circle
38
38
  ? 'rounded-full'
39
39
  : AvatarBase_constants_1.TWCLASSMAP_AVATARBASE_SIZE_BORDERRADIUSS_SQUARE[size],
40
40
  // Size
@@ -1 +1 @@
1
- {"version":3,"file":"AvatarBase.cjs","sourceRoot":"","sources":["../../../src/components/AvatarBase/AvatarBase.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kFAGiD;AACjD,qDAA4C;AAC5C,+CAA0C;AAE1C,uDAA+C;AAC/C,4CAAmE;AAEnE,qEAKgC;AAGnB,QAAA,UAAU,GAAG,IAAA,kBAAU,EAClC,CACE,EACE,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,qCAAc,CAAC,EAAE,EACxB,KAAK,GAAG,sCAAe,CAAC,MAAM,EAC9B,OAAO,EACP,KAAK,EACL,SAAS,GAAG,KAAK,EACjB,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,iBAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAEzC,MAAM,eAAe,GAAG,IAAA,kBAAO;IAC7B,cAAc;IACd,6EAA6E,EAC7E,KAAK,KAAK,sCAAe,CAAC,MAAM;QAC9B,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,sEAA+C,CAAC,IAAI,CAAC;IACzD,OAAO;IACP,SAAS;QACP,CAAC,CAAC,qEAA8C,CAAC,IAAI,CAAC;QACtD,CAAC,CAAC,2DAAoC,CAAC,IAAI,CAAC;IAC9C,SAAS;IACT,SAAS,IAAI,wDAAiC,CAAC,IAAI,CAAC;IACpD,iBAAiB;IACjB,SAAS,CACV,CAAC;IAEF,OAAO,CACL,8BAAC,SAAS,IAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,KAAM,KAAK,IACrE,YAAY,CAAC,CAAC,CAAC,CACd,8BAAC,WAAI,IACH,OAAO,EAAE,kBAAW,CAAC,MAAM,EAC3B,UAAU,EAAE,iBAAU,CAAC,MAAM,EAC7B,KAAK,EAAE,gBAAS,CAAC,SAAS,EAC1B,OAAO,QACP,SAAS,EAAC,WAAW,KACjB,iBAAiB;QAGrB,4CAAO,YAAY,CAAQ,CACtB,CACR,CAAC,CAAC,CAAC,CACF,QAAQ,CACT,CACS,CACb,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,kBAAU,CAAC,WAAW,GAAG,YAAY,CAAC","sourcesContent":["import {\n AvatarBaseSize,\n AvatarBaseShape,\n} from '@metamask-previews/design-system-shared';\nimport { Slot } from '@radix-ui/react-slot';\nimport React, { forwardRef } from 'react';\n\nimport { twMerge } from '../../utils/tw-merge';\nimport { Text, FontWeight, TextVariant, TextColor } from '../Text';\n\nimport {\n TWCLASSMAP_AVATARBASE_SIZE_DIMENSION,\n TWCLASSMAP_AVATARBASE_HASBORDER_SIZE_DIMENSION,\n TWCLASSMAP_AVATARBASE_SIZE_BORDERRADIUSS_SQUARE,\n TWCLASSMAP_AVATARBASE_SIZE_BORDER,\n} from './AvatarBase.constants';\nimport type { AvatarBaseProps } from './AvatarBase.types';\n\nexport const AvatarBase = forwardRef<HTMLDivElement, AvatarBaseProps>(\n (\n {\n children,\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarBaseSize.Md,\n shape = AvatarBaseShape.Circle,\n asChild,\n style,\n hasBorder = false,\n ...props\n },\n ref,\n ) => {\n const Component = asChild ? Slot : 'div';\n\n const mergedClassName = twMerge(\n // Base styles\n 'inline-flex shrink-0 items-center justify-center overflow-hidden bg-section',\n shape === AvatarBaseShape.Circle\n ? 'rounded-full'\n : TWCLASSMAP_AVATARBASE_SIZE_BORDERRADIUSS_SQUARE[size],\n // Size\n hasBorder\n ? TWCLASSMAP_AVATARBASE_HASBORDER_SIZE_DIMENSION[size]\n : TWCLASSMAP_AVATARBASE_SIZE_DIMENSION[size],\n // Border\n hasBorder && TWCLASSMAP_AVATARBASE_SIZE_BORDER[size],\n // Custom classes\n className,\n );\n\n return (\n <Component ref={ref} className={mergedClassName} style={style} {...props}>\n {fallbackText ? (\n <Text\n variant={TextVariant.BodySm}\n fontWeight={FontWeight.Medium}\n color={TextColor.TextMuted}\n asChild\n className=\"uppercase\"\n {...fallbackTextProps}\n >\n {/* asChild prop renders Text component as a span, it does not create an additional element */}\n <span>{fallbackText}</span>\n </Text>\n ) : (\n children\n )}\n </Component>\n );\n },\n);\n\nAvatarBase.displayName = 'AvatarBase';\n"]}
1
+ {"version":3,"file":"AvatarBase.cjs","sourceRoot":"","sources":["../../../src/components/AvatarBase/AvatarBase.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kFAGiD;AACjD,qDAA4C;AAC5C,+CAA0C;AAE1C,uDAA+C;AAC/C,4CAAmE;AAEnE,qEAKgC;AAGnB,QAAA,UAAU,GAAG,IAAA,kBAAU,EAClC,CACE,EACE,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,qCAAc,CAAC,EAAE,EACxB,KAAK,GAAG,sCAAe,CAAC,MAAM,EAC9B,OAAO,EACP,KAAK,EACL,SAAS,GAAG,KAAK,EACjB,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,iBAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAEzC,MAAM,eAAe,GAAG,IAAA,kBAAO;IAC7B,cAAc;IACd,iFAAiF,EACjF,KAAK,KAAK,sCAAe,CAAC,MAAM;QAC9B,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,sEAA+C,CAAC,IAAI,CAAC;IACzD,OAAO;IACP,SAAS;QACP,CAAC,CAAC,qEAA8C,CAAC,IAAI,CAAC;QACtD,CAAC,CAAC,2DAAoC,CAAC,IAAI,CAAC;IAC9C,SAAS;IACT,SAAS,IAAI,wDAAiC,CAAC,IAAI,CAAC;IACpD,iBAAiB;IACjB,SAAS,CACV,CAAC;IAEF,OAAO,CACL,8BAAC,SAAS,IAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,KAAM,KAAK,IACrE,YAAY,CAAC,CAAC,CAAC,CACd,8BAAC,WAAI,IACH,OAAO,EAAE,kBAAW,CAAC,MAAM,EAC3B,UAAU,EAAE,iBAAU,CAAC,MAAM,EAC7B,KAAK,EAAE,gBAAS,CAAC,SAAS,EAC1B,OAAO,QACP,SAAS,EAAC,WAAW,KACjB,iBAAiB;QAGrB,4CAAO,YAAY,CAAQ,CACtB,CACR,CAAC,CAAC,CAAC,CACF,QAAQ,CACT,CACS,CACb,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,kBAAU,CAAC,WAAW,GAAG,YAAY,CAAC","sourcesContent":["import {\n AvatarBaseSize,\n AvatarBaseShape,\n} from '@metamask-previews/design-system-shared';\nimport { Slot } from '@radix-ui/react-slot';\nimport React, { forwardRef } from 'react';\n\nimport { twMerge } from '../../utils/tw-merge';\nimport { Text, FontWeight, TextVariant, TextColor } from '../Text';\n\nimport {\n TWCLASSMAP_AVATARBASE_SIZE_DIMENSION,\n TWCLASSMAP_AVATARBASE_HASBORDER_SIZE_DIMENSION,\n TWCLASSMAP_AVATARBASE_SIZE_BORDERRADIUSS_SQUARE,\n TWCLASSMAP_AVATARBASE_SIZE_BORDER,\n} from './AvatarBase.constants';\nimport type { AvatarBaseProps } from './AvatarBase.types';\n\nexport const AvatarBase = forwardRef<HTMLDivElement, AvatarBaseProps>(\n (\n {\n children,\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarBaseSize.Md,\n shape = AvatarBaseShape.Circle,\n asChild,\n style,\n hasBorder = false,\n ...props\n },\n ref,\n ) => {\n const Component = asChild ? Slot : 'div';\n\n const mergedClassName = twMerge(\n // Base styles\n 'inline-flex shrink-0 items-center justify-center overflow-hidden bg-alternative',\n shape === AvatarBaseShape.Circle\n ? 'rounded-full'\n : TWCLASSMAP_AVATARBASE_SIZE_BORDERRADIUSS_SQUARE[size],\n // Size\n hasBorder\n ? TWCLASSMAP_AVATARBASE_HASBORDER_SIZE_DIMENSION[size]\n : TWCLASSMAP_AVATARBASE_SIZE_DIMENSION[size],\n // Border\n hasBorder && TWCLASSMAP_AVATARBASE_SIZE_BORDER[size],\n // Custom classes\n className,\n );\n\n return (\n <Component ref={ref} className={mergedClassName} style={style} {...props}>\n {fallbackText ? (\n <Text\n variant={TextVariant.BodySm}\n fontWeight={FontWeight.Medium}\n color={TextColor.TextMuted}\n asChild\n className=\"uppercase\"\n {...fallbackTextProps}\n >\n {/* asChild prop renders Text component as a span, it does not create an additional element */}\n <span>{fallbackText}</span>\n </Text>\n ) : (\n children\n )}\n </Component>\n );\n },\n);\n\nAvatarBase.displayName = 'AvatarBase';\n"]}
@@ -15,7 +15,7 @@ export const AvatarBase = forwardRef(({ children, fallbackText, fallbackTextProp
15
15
  const Component = asChild ? Slot : 'div';
16
16
  const mergedClassName = twMerge(
17
17
  // Base styles
18
- 'inline-flex shrink-0 items-center justify-center overflow-hidden bg-section', shape === AvatarBaseShape.Circle
18
+ 'inline-flex shrink-0 items-center justify-center overflow-hidden bg-alternative', shape === AvatarBaseShape.Circle
19
19
  ? 'rounded-full'
20
20
  : TWCLASSMAP_AVATARBASE_SIZE_BORDERRADIUSS_SQUARE[size],
21
21
  // Size
@@ -1 +1 @@
1
- {"version":3,"file":"AvatarBase.mjs","sourceRoot":"","sources":["../../../src/components/AvatarBase/AvatarBase.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,cAAc,EACd,eAAe,EAChB,gDAAgD;AACjD,OAAO,EAAE,IAAI,EAAE,6BAA6B;AAC5C,OAAO,QAAO,EAAE,UAAU,EAAE,cAAc;;AAE1C,OAAO,EAAE,OAAO,EAAE,iCAA6B;AAC/C,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,0BAAgB;AAEnE,OAAO,EACL,oCAAoC,EACpC,8CAA8C,EAC9C,+CAA+C,EAC/C,iCAAiC,EAClC,mCAA+B;AAGhC,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAClC,CACE,EACE,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,cAAc,CAAC,EAAE,EACxB,KAAK,GAAG,eAAe,CAAC,MAAM,EAC9B,OAAO,EACP,KAAK,EACL,SAAS,GAAG,KAAK,EACjB,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAEzC,MAAM,eAAe,GAAG,OAAO;IAC7B,cAAc;IACd,6EAA6E,EAC7E,KAAK,KAAK,eAAe,CAAC,MAAM;QAC9B,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,+CAA+C,CAAC,IAAI,CAAC;IACzD,OAAO;IACP,SAAS;QACP,CAAC,CAAC,8CAA8C,CAAC,IAAI,CAAC;QACtD,CAAC,CAAC,oCAAoC,CAAC,IAAI,CAAC;IAC9C,SAAS;IACT,SAAS,IAAI,iCAAiC,CAAC,IAAI,CAAC;IACpD,iBAAiB;IACjB,SAAS,CACV,CAAC;IAEF,OAAO,CACL,oBAAC,SAAS,IAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,KAAM,KAAK,IACrE,YAAY,CAAC,CAAC,CAAC,CACd,oBAAC,IAAI,IACH,OAAO,EAAE,WAAW,CAAC,MAAM,EAC3B,UAAU,EAAE,UAAU,CAAC,MAAM,EAC7B,KAAK,EAAE,SAAS,CAAC,SAAS,EAC1B,OAAO,QACP,SAAS,EAAC,WAAW,KACjB,iBAAiB;QAGrB,kCAAO,YAAY,CAAQ,CACtB,CACR,CAAC,CAAC,CAAC,CACF,QAAQ,CACT,CACS,CACb,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC","sourcesContent":["import {\n AvatarBaseSize,\n AvatarBaseShape,\n} from '@metamask-previews/design-system-shared';\nimport { Slot } from '@radix-ui/react-slot';\nimport React, { forwardRef } from 'react';\n\nimport { twMerge } from '../../utils/tw-merge';\nimport { Text, FontWeight, TextVariant, TextColor } from '../Text';\n\nimport {\n TWCLASSMAP_AVATARBASE_SIZE_DIMENSION,\n TWCLASSMAP_AVATARBASE_HASBORDER_SIZE_DIMENSION,\n TWCLASSMAP_AVATARBASE_SIZE_BORDERRADIUSS_SQUARE,\n TWCLASSMAP_AVATARBASE_SIZE_BORDER,\n} from './AvatarBase.constants';\nimport type { AvatarBaseProps } from './AvatarBase.types';\n\nexport const AvatarBase = forwardRef<HTMLDivElement, AvatarBaseProps>(\n (\n {\n children,\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarBaseSize.Md,\n shape = AvatarBaseShape.Circle,\n asChild,\n style,\n hasBorder = false,\n ...props\n },\n ref,\n ) => {\n const Component = asChild ? Slot : 'div';\n\n const mergedClassName = twMerge(\n // Base styles\n 'inline-flex shrink-0 items-center justify-center overflow-hidden bg-section',\n shape === AvatarBaseShape.Circle\n ? 'rounded-full'\n : TWCLASSMAP_AVATARBASE_SIZE_BORDERRADIUSS_SQUARE[size],\n // Size\n hasBorder\n ? TWCLASSMAP_AVATARBASE_HASBORDER_SIZE_DIMENSION[size]\n : TWCLASSMAP_AVATARBASE_SIZE_DIMENSION[size],\n // Border\n hasBorder && TWCLASSMAP_AVATARBASE_SIZE_BORDER[size],\n // Custom classes\n className,\n );\n\n return (\n <Component ref={ref} className={mergedClassName} style={style} {...props}>\n {fallbackText ? (\n <Text\n variant={TextVariant.BodySm}\n fontWeight={FontWeight.Medium}\n color={TextColor.TextMuted}\n asChild\n className=\"uppercase\"\n {...fallbackTextProps}\n >\n {/* asChild prop renders Text component as a span, it does not create an additional element */}\n <span>{fallbackText}</span>\n </Text>\n ) : (\n children\n )}\n </Component>\n );\n },\n);\n\nAvatarBase.displayName = 'AvatarBase';\n"]}
1
+ {"version":3,"file":"AvatarBase.mjs","sourceRoot":"","sources":["../../../src/components/AvatarBase/AvatarBase.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,cAAc,EACd,eAAe,EAChB,gDAAgD;AACjD,OAAO,EAAE,IAAI,EAAE,6BAA6B;AAC5C,OAAO,QAAO,EAAE,UAAU,EAAE,cAAc;;AAE1C,OAAO,EAAE,OAAO,EAAE,iCAA6B;AAC/C,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,0BAAgB;AAEnE,OAAO,EACL,oCAAoC,EACpC,8CAA8C,EAC9C,+CAA+C,EAC/C,iCAAiC,EAClC,mCAA+B;AAGhC,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAClC,CACE,EACE,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,cAAc,CAAC,EAAE,EACxB,KAAK,GAAG,eAAe,CAAC,MAAM,EAC9B,OAAO,EACP,KAAK,EACL,SAAS,GAAG,KAAK,EACjB,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAEzC,MAAM,eAAe,GAAG,OAAO;IAC7B,cAAc;IACd,iFAAiF,EACjF,KAAK,KAAK,eAAe,CAAC,MAAM;QAC9B,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,+CAA+C,CAAC,IAAI,CAAC;IACzD,OAAO;IACP,SAAS;QACP,CAAC,CAAC,8CAA8C,CAAC,IAAI,CAAC;QACtD,CAAC,CAAC,oCAAoC,CAAC,IAAI,CAAC;IAC9C,SAAS;IACT,SAAS,IAAI,iCAAiC,CAAC,IAAI,CAAC;IACpD,iBAAiB;IACjB,SAAS,CACV,CAAC;IAEF,OAAO,CACL,oBAAC,SAAS,IAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,KAAM,KAAK,IACrE,YAAY,CAAC,CAAC,CAAC,CACd,oBAAC,IAAI,IACH,OAAO,EAAE,WAAW,CAAC,MAAM,EAC3B,UAAU,EAAE,UAAU,CAAC,MAAM,EAC7B,KAAK,EAAE,SAAS,CAAC,SAAS,EAC1B,OAAO,QACP,SAAS,EAAC,WAAW,KACjB,iBAAiB;QAGrB,kCAAO,YAAY,CAAQ,CACtB,CACR,CAAC,CAAC,CAAC,CACF,QAAQ,CACT,CACS,CACb,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC","sourcesContent":["import {\n AvatarBaseSize,\n AvatarBaseShape,\n} from '@metamask-previews/design-system-shared';\nimport { Slot } from '@radix-ui/react-slot';\nimport React, { forwardRef } from 'react';\n\nimport { twMerge } from '../../utils/tw-merge';\nimport { Text, FontWeight, TextVariant, TextColor } from '../Text';\n\nimport {\n TWCLASSMAP_AVATARBASE_SIZE_DIMENSION,\n TWCLASSMAP_AVATARBASE_HASBORDER_SIZE_DIMENSION,\n TWCLASSMAP_AVATARBASE_SIZE_BORDERRADIUSS_SQUARE,\n TWCLASSMAP_AVATARBASE_SIZE_BORDER,\n} from './AvatarBase.constants';\nimport type { AvatarBaseProps } from './AvatarBase.types';\n\nexport const AvatarBase = forwardRef<HTMLDivElement, AvatarBaseProps>(\n (\n {\n children,\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarBaseSize.Md,\n shape = AvatarBaseShape.Circle,\n asChild,\n style,\n hasBorder = false,\n ...props\n },\n ref,\n ) => {\n const Component = asChild ? Slot : 'div';\n\n const mergedClassName = twMerge(\n // Base styles\n 'inline-flex shrink-0 items-center justify-center overflow-hidden bg-alternative',\n shape === AvatarBaseShape.Circle\n ? 'rounded-full'\n : TWCLASSMAP_AVATARBASE_SIZE_BORDERRADIUSS_SQUARE[size],\n // Size\n hasBorder\n ? TWCLASSMAP_AVATARBASE_HASBORDER_SIZE_DIMENSION[size]\n : TWCLASSMAP_AVATARBASE_SIZE_DIMENSION[size],\n // Border\n hasBorder && TWCLASSMAP_AVATARBASE_SIZE_BORDER[size],\n // Custom classes\n className,\n );\n\n return (\n <Component ref={ref} className={mergedClassName} style={style} {...props}>\n {fallbackText ? (\n <Text\n variant={TextVariant.BodySm}\n fontWeight={FontWeight.Medium}\n color={TextColor.TextMuted}\n asChild\n className=\"uppercase\"\n {...fallbackTextProps}\n >\n {/* asChild prop renders Text component as a span, it does not create an additional element */}\n <span>{fallbackText}</span>\n </Text>\n ) : (\n children\n )}\n </Component>\n );\n },\n);\n\nAvatarBase.displayName = 'AvatarBase';\n"]}
@@ -29,7 +29,7 @@ const react_1 = __importStar(require("react"));
29
29
  const AvatarBase_1 = require("../AvatarBase/index.cjs");
30
30
  exports.AvatarFavicon = (0, react_1.forwardRef)(({ src, name = '', fallbackText, fallbackTextProps, className, size = design_system_shared_1.AvatarFaviconSize.Md, imageProps, ...props }, ref) => {
31
31
  const [finalFallbackText, setFinalFallbackText] = (0, react_1.useState)('');
32
- const backupFallbackText = fallbackText || name?.[0] || '';
32
+ const backupFallbackText = fallbackText || name?.[0] || '?';
33
33
  const altText = name || 'Dapp logo'; // TBC: Add localization for default text
34
34
  const onErrorHandler = (e) => {
35
35
  setFinalFallbackText(backupFallbackText);
@@ -1 +1 @@
1
- {"version":3,"file":"AvatarFavicon.cjs","sourceRoot":"","sources":["../../../src/components/AvatarFavicon/AvatarFavicon.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kFAGiD;AACjD,+CAAoD;AAEpD,wDAA2C;AAI9B,QAAA,aAAa,GAAG,IAAA,kBAAU,EACrC,CACE,EACE,GAAG,EACH,IAAI,GAAG,EAAE,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,wCAAiB,CAAC,EAAE,EAC3B,UAAU,EACV,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,IAAA,gBAAQ,EAAS,EAAE,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,MAAM,OAAO,GAAG,IAAI,IAAI,WAAW,CAAC,CAAC,yCAAyC;IAE9E,MAAM,cAAc,GAAG,CAAC,CAAyC,EAAE,EAAE;QACnE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACzC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO,CACL,8BAAC,uBAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,sCAAe,CAAC,MAAM,EAC7B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,EAC1D,iBAAiB,EAAE,iBAAiB,KAChC,KAAK,IAER,GAAG,IAAI,CACN,uCACE,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,0BAA0B,KAChC,UAAU,EACd,OAAO,EAAE,cAAc,GACvB,CACH,CACU,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,qBAAa,CAAC,WAAW,GAAG,eAAe,CAAC","sourcesContent":["import {\n AvatarBaseShape,\n AvatarFaviconSize,\n} from '@metamask-previews/design-system-shared';\nimport React, { forwardRef, useState } from 'react';\n\nimport { AvatarBase } from '../AvatarBase';\n\nimport type { AvatarFaviconProps } from './AvatarFavicon.types';\n\nexport const AvatarFavicon = forwardRef<HTMLDivElement, AvatarFaviconProps>(\n (\n {\n src,\n name = '',\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarFaviconSize.Md,\n imageProps,\n ...props\n },\n ref,\n ) => {\n const [finalFallbackText, setFinalFallbackText] = useState<string>('');\n const backupFallbackText = fallbackText || name?.[0] || '';\n const altText = name || 'Dapp logo'; // TBC: Add localization for default text\n\n const onErrorHandler = (e: React.SyntheticEvent<HTMLImageElement>) => {\n setFinalFallbackText(backupFallbackText);\n imageProps?.onError?.(e);\n };\n\n return (\n <AvatarBase\n ref={ref}\n shape={AvatarBaseShape.Circle}\n size={size}\n className={className}\n fallbackText={src ? finalFallbackText : backupFallbackText}\n fallbackTextProps={fallbackTextProps}\n {...props}\n >\n {src && (\n <img\n src={src}\n alt={altText}\n className=\"size-full object-contain\"\n {...imageProps}\n onError={onErrorHandler}\n />\n )}\n </AvatarBase>\n );\n },\n);\n\nAvatarFavicon.displayName = 'AvatarFavicon';\n"]}
1
+ {"version":3,"file":"AvatarFavicon.cjs","sourceRoot":"","sources":["../../../src/components/AvatarFavicon/AvatarFavicon.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kFAGiD;AACjD,+CAAoD;AAEpD,wDAA2C;AAI9B,QAAA,aAAa,GAAG,IAAA,kBAAU,EACrC,CACE,EACE,GAAG,EACH,IAAI,GAAG,EAAE,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,wCAAiB,CAAC,EAAE,EAC3B,UAAU,EACV,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,IAAA,gBAAQ,EAAS,EAAE,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IAC5D,MAAM,OAAO,GAAG,IAAI,IAAI,WAAW,CAAC,CAAC,yCAAyC;IAE9E,MAAM,cAAc,GAAG,CAAC,CAAyC,EAAE,EAAE;QACnE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACzC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO,CACL,8BAAC,uBAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,sCAAe,CAAC,MAAM,EAC7B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,EAC1D,iBAAiB,EAAE,iBAAiB,KAChC,KAAK,IAER,GAAG,IAAI,CACN,uCACE,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,0BAA0B,KAChC,UAAU,EACd,OAAO,EAAE,cAAc,GACvB,CACH,CACU,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,qBAAa,CAAC,WAAW,GAAG,eAAe,CAAC","sourcesContent":["import {\n AvatarBaseShape,\n AvatarFaviconSize,\n} from '@metamask-previews/design-system-shared';\nimport React, { forwardRef, useState } from 'react';\n\nimport { AvatarBase } from '../AvatarBase';\n\nimport type { AvatarFaviconProps } from './AvatarFavicon.types';\n\nexport const AvatarFavicon = forwardRef<HTMLDivElement, AvatarFaviconProps>(\n (\n {\n src,\n name = '',\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarFaviconSize.Md,\n imageProps,\n ...props\n },\n ref,\n ) => {\n const [finalFallbackText, setFinalFallbackText] = useState<string>('');\n const backupFallbackText = fallbackText || name?.[0] || '?';\n const altText = name || 'Dapp logo'; // TBC: Add localization for default text\n\n const onErrorHandler = (e: React.SyntheticEvent<HTMLImageElement>) => {\n setFinalFallbackText(backupFallbackText);\n imageProps?.onError?.(e);\n };\n\n return (\n <AvatarBase\n ref={ref}\n shape={AvatarBaseShape.Circle}\n size={size}\n className={className}\n fallbackText={src ? finalFallbackText : backupFallbackText}\n fallbackTextProps={fallbackTextProps}\n {...props}\n >\n {src && (\n <img\n src={src}\n alt={altText}\n className=\"size-full object-contain\"\n {...imageProps}\n onError={onErrorHandler}\n />\n )}\n </AvatarBase>\n );\n },\n);\n\nAvatarFavicon.displayName = 'AvatarFavicon';\n"]}
@@ -10,7 +10,7 @@ const React = $importDefault($React);
10
10
  import { AvatarBase } from "../AvatarBase/index.mjs";
11
11
  export const AvatarFavicon = forwardRef(({ src, name = '', fallbackText, fallbackTextProps, className, size = AvatarFaviconSize.Md, imageProps, ...props }, ref) => {
12
12
  const [finalFallbackText, setFinalFallbackText] = useState('');
13
- const backupFallbackText = fallbackText || name?.[0] || '';
13
+ const backupFallbackText = fallbackText || name?.[0] || '?';
14
14
  const altText = name || 'Dapp logo'; // TBC: Add localization for default text
15
15
  const onErrorHandler = (e) => {
16
16
  setFinalFallbackText(backupFallbackText);
@@ -1 +1 @@
1
- {"version":3,"file":"AvatarFavicon.mjs","sourceRoot":"","sources":["../../../src/components/AvatarFavicon/AvatarFavicon.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,eAAe,EACf,iBAAiB,EAClB,gDAAgD;AACjD,OAAO,QAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc;;AAEpD,OAAO,EAAE,UAAU,EAAE,gCAAsB;AAI3C,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CACrC,CACE,EACE,GAAG,EACH,IAAI,GAAG,EAAE,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,iBAAiB,CAAC,EAAE,EAC3B,UAAU,EACV,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,MAAM,OAAO,GAAG,IAAI,IAAI,WAAW,CAAC,CAAC,yCAAyC;IAE9E,MAAM,cAAc,GAAG,CAAC,CAAyC,EAAE,EAAE;QACnE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACzC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,eAAe,CAAC,MAAM,EAC7B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,EAC1D,iBAAiB,EAAE,iBAAiB,KAChC,KAAK,IAER,GAAG,IAAI,CACN,6BACE,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,0BAA0B,KAChC,UAAU,EACd,OAAO,EAAE,cAAc,GACvB,CACH,CACU,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,aAAa,CAAC,WAAW,GAAG,eAAe,CAAC","sourcesContent":["import {\n AvatarBaseShape,\n AvatarFaviconSize,\n} from '@metamask-previews/design-system-shared';\nimport React, { forwardRef, useState } from 'react';\n\nimport { AvatarBase } from '../AvatarBase';\n\nimport type { AvatarFaviconProps } from './AvatarFavicon.types';\n\nexport const AvatarFavicon = forwardRef<HTMLDivElement, AvatarFaviconProps>(\n (\n {\n src,\n name = '',\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarFaviconSize.Md,\n imageProps,\n ...props\n },\n ref,\n ) => {\n const [finalFallbackText, setFinalFallbackText] = useState<string>('');\n const backupFallbackText = fallbackText || name?.[0] || '';\n const altText = name || 'Dapp logo'; // TBC: Add localization for default text\n\n const onErrorHandler = (e: React.SyntheticEvent<HTMLImageElement>) => {\n setFinalFallbackText(backupFallbackText);\n imageProps?.onError?.(e);\n };\n\n return (\n <AvatarBase\n ref={ref}\n shape={AvatarBaseShape.Circle}\n size={size}\n className={className}\n fallbackText={src ? finalFallbackText : backupFallbackText}\n fallbackTextProps={fallbackTextProps}\n {...props}\n >\n {src && (\n <img\n src={src}\n alt={altText}\n className=\"size-full object-contain\"\n {...imageProps}\n onError={onErrorHandler}\n />\n )}\n </AvatarBase>\n );\n },\n);\n\nAvatarFavicon.displayName = 'AvatarFavicon';\n"]}
1
+ {"version":3,"file":"AvatarFavicon.mjs","sourceRoot":"","sources":["../../../src/components/AvatarFavicon/AvatarFavicon.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,eAAe,EACf,iBAAiB,EAClB,gDAAgD;AACjD,OAAO,QAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc;;AAEpD,OAAO,EAAE,UAAU,EAAE,gCAAsB;AAI3C,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CACrC,CACE,EACE,GAAG,EACH,IAAI,GAAG,EAAE,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,iBAAiB,CAAC,EAAE,EAC3B,UAAU,EACV,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IAC5D,MAAM,OAAO,GAAG,IAAI,IAAI,WAAW,CAAC,CAAC,yCAAyC;IAE9E,MAAM,cAAc,GAAG,CAAC,CAAyC,EAAE,EAAE;QACnE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACzC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,eAAe,CAAC,MAAM,EAC7B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,EAC1D,iBAAiB,EAAE,iBAAiB,KAChC,KAAK,IAER,GAAG,IAAI,CACN,6BACE,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,0BAA0B,KAChC,UAAU,EACd,OAAO,EAAE,cAAc,GACvB,CACH,CACU,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,aAAa,CAAC,WAAW,GAAG,eAAe,CAAC","sourcesContent":["import {\n AvatarBaseShape,\n AvatarFaviconSize,\n} from '@metamask-previews/design-system-shared';\nimport React, { forwardRef, useState } from 'react';\n\nimport { AvatarBase } from '../AvatarBase';\n\nimport type { AvatarFaviconProps } from './AvatarFavicon.types';\n\nexport const AvatarFavicon = forwardRef<HTMLDivElement, AvatarFaviconProps>(\n (\n {\n src,\n name = '',\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarFaviconSize.Md,\n imageProps,\n ...props\n },\n ref,\n ) => {\n const [finalFallbackText, setFinalFallbackText] = useState<string>('');\n const backupFallbackText = fallbackText || name?.[0] || '?';\n const altText = name || 'Dapp logo'; // TBC: Add localization for default text\n\n const onErrorHandler = (e: React.SyntheticEvent<HTMLImageElement>) => {\n setFinalFallbackText(backupFallbackText);\n imageProps?.onError?.(e);\n };\n\n return (\n <AvatarBase\n ref={ref}\n shape={AvatarBaseShape.Circle}\n size={size}\n className={className}\n fallbackText={src ? finalFallbackText : backupFallbackText}\n fallbackTextProps={fallbackTextProps}\n {...props}\n >\n {src && (\n <img\n src={src}\n alt={altText}\n className=\"size-full object-contain\"\n {...imageProps}\n onError={onErrorHandler}\n />\n )}\n </AvatarBase>\n );\n },\n);\n\nAvatarFavicon.displayName = 'AvatarFavicon';\n"]}
@@ -30,7 +30,7 @@ const types_1 = require("../../types/index.cjs");
30
30
  const AvatarBase_1 = require("../AvatarBase/index.cjs");
31
31
  exports.AvatarNetwork = (0, react_1.forwardRef)(({ src, name = '', fallbackText, fallbackTextProps, className, size = types_1.AvatarNetworkSize.Md, imageProps, ...props }, ref) => {
32
32
  const [finalFallbackText, setFinalFallbackText] = (0, react_1.useState)('');
33
- const backupFallbackText = fallbackText || name?.[0] || '';
33
+ const backupFallbackText = fallbackText || name?.[0] || '?';
34
34
  const altText = name || 'Network logo'; // TBC: Add localization for default text
35
35
  const onErrorHandler = (e) => {
36
36
  setFinalFallbackText(backupFallbackText);
@@ -1 +1 @@
1
- {"version":3,"file":"AvatarNetwork.cjs","sourceRoot":"","sources":["../../../src/components/AvatarNetwork/AvatarNetwork.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kFAA0E;AAC1E,+CAAoD;AAEpD,iDAAgD;AAChD,wDAA2C;AAI9B,QAAA,aAAa,GAAG,IAAA,kBAAU,EACrC,CACE,EACE,GAAG,EACH,IAAI,GAAG,EAAE,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,yBAAiB,CAAC,EAAE,EAC3B,UAAU,EACV,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,IAAA,gBAAQ,EAAS,EAAE,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,MAAM,OAAO,GAAG,IAAI,IAAI,cAAc,CAAC,CAAC,yCAAyC;IAEjF,MAAM,cAAc,GAAG,CAAC,CAAyC,EAAE,EAAE;QACnE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACzC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO,CACL,8BAAC,uBAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,sCAAe,CAAC,MAAM,EAC7B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,EAC1D,iBAAiB,EAAE,iBAAiB,KAChC,KAAK,IAER,GAAG,IAAI,CACN,uCACE,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,0BAA0B,KAChC,UAAU,EACd,OAAO,EAAE,cAAc,GACvB,CACH,CACU,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,qBAAa,CAAC,WAAW,GAAG,eAAe,CAAC","sourcesContent":["import { AvatarBaseShape } from '@metamask-previews/design-system-shared';\nimport React, { forwardRef, useState } from 'react';\n\nimport { AvatarNetworkSize } from '../../types';\nimport { AvatarBase } from '../AvatarBase';\n\nimport type { AvatarNetworkProps } from './AvatarNetwork.types';\n\nexport const AvatarNetwork = forwardRef<HTMLDivElement, AvatarNetworkProps>(\n (\n {\n src,\n name = '',\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarNetworkSize.Md,\n imageProps,\n ...props\n },\n ref,\n ) => {\n const [finalFallbackText, setFinalFallbackText] = useState<string>('');\n const backupFallbackText = fallbackText || name?.[0] || '';\n const altText = name || 'Network logo'; // TBC: Add localization for default text\n\n const onErrorHandler = (e: React.SyntheticEvent<HTMLImageElement>) => {\n setFinalFallbackText(backupFallbackText);\n imageProps?.onError?.(e);\n };\n\n return (\n <AvatarBase\n ref={ref}\n shape={AvatarBaseShape.Square}\n size={size}\n className={className}\n fallbackText={src ? finalFallbackText : backupFallbackText}\n fallbackTextProps={fallbackTextProps}\n {...props}\n >\n {src && (\n <img\n src={src}\n alt={altText}\n className=\"size-full object-contain\"\n {...imageProps}\n onError={onErrorHandler}\n />\n )}\n </AvatarBase>\n );\n },\n);\n\nAvatarNetwork.displayName = 'AvatarNetwork';\n"]}
1
+ {"version":3,"file":"AvatarNetwork.cjs","sourceRoot":"","sources":["../../../src/components/AvatarNetwork/AvatarNetwork.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kFAA0E;AAC1E,+CAAoD;AAEpD,iDAAgD;AAChD,wDAA2C;AAI9B,QAAA,aAAa,GAAG,IAAA,kBAAU,EACrC,CACE,EACE,GAAG,EACH,IAAI,GAAG,EAAE,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,yBAAiB,CAAC,EAAE,EAC3B,UAAU,EACV,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,IAAA,gBAAQ,EAAS,EAAE,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IAC5D,MAAM,OAAO,GAAG,IAAI,IAAI,cAAc,CAAC,CAAC,yCAAyC;IAEjF,MAAM,cAAc,GAAG,CAAC,CAAyC,EAAE,EAAE;QACnE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACzC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO,CACL,8BAAC,uBAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,sCAAe,CAAC,MAAM,EAC7B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,EAC1D,iBAAiB,EAAE,iBAAiB,KAChC,KAAK,IAER,GAAG,IAAI,CACN,uCACE,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,0BAA0B,KAChC,UAAU,EACd,OAAO,EAAE,cAAc,GACvB,CACH,CACU,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,qBAAa,CAAC,WAAW,GAAG,eAAe,CAAC","sourcesContent":["import { AvatarBaseShape } from '@metamask-previews/design-system-shared';\nimport React, { forwardRef, useState } from 'react';\n\nimport { AvatarNetworkSize } from '../../types';\nimport { AvatarBase } from '../AvatarBase';\n\nimport type { AvatarNetworkProps } from './AvatarNetwork.types';\n\nexport const AvatarNetwork = forwardRef<HTMLDivElement, AvatarNetworkProps>(\n (\n {\n src,\n name = '',\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarNetworkSize.Md,\n imageProps,\n ...props\n },\n ref,\n ) => {\n const [finalFallbackText, setFinalFallbackText] = useState<string>('');\n const backupFallbackText = fallbackText || name?.[0] || '?';\n const altText = name || 'Network logo'; // TBC: Add localization for default text\n\n const onErrorHandler = (e: React.SyntheticEvent<HTMLImageElement>) => {\n setFinalFallbackText(backupFallbackText);\n imageProps?.onError?.(e);\n };\n\n return (\n <AvatarBase\n ref={ref}\n shape={AvatarBaseShape.Square}\n size={size}\n className={className}\n fallbackText={src ? finalFallbackText : backupFallbackText}\n fallbackTextProps={fallbackTextProps}\n {...props}\n >\n {src && (\n <img\n src={src}\n alt={altText}\n className=\"size-full object-contain\"\n {...imageProps}\n onError={onErrorHandler}\n />\n )}\n </AvatarBase>\n );\n },\n);\n\nAvatarNetwork.displayName = 'AvatarNetwork';\n"]}
@@ -11,7 +11,7 @@ import { AvatarNetworkSize } from "../../types/index.mjs";
11
11
  import { AvatarBase } from "../AvatarBase/index.mjs";
12
12
  export const AvatarNetwork = forwardRef(({ src, name = '', fallbackText, fallbackTextProps, className, size = AvatarNetworkSize.Md, imageProps, ...props }, ref) => {
13
13
  const [finalFallbackText, setFinalFallbackText] = useState('');
14
- const backupFallbackText = fallbackText || name?.[0] || '';
14
+ const backupFallbackText = fallbackText || name?.[0] || '?';
15
15
  const altText = name || 'Network logo'; // TBC: Add localization for default text
16
16
  const onErrorHandler = (e) => {
17
17
  setFinalFallbackText(backupFallbackText);
@@ -1 +1 @@
1
- {"version":3,"file":"AvatarNetwork.mjs","sourceRoot":"","sources":["../../../src/components/AvatarNetwork/AvatarNetwork.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,gDAAgD;AAC1E,OAAO,QAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc;;AAEpD,OAAO,EAAE,iBAAiB,EAAE,8BAAoB;AAChD,OAAO,EAAE,UAAU,EAAE,gCAAsB;AAI3C,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CACrC,CACE,EACE,GAAG,EACH,IAAI,GAAG,EAAE,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,iBAAiB,CAAC,EAAE,EAC3B,UAAU,EACV,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,MAAM,OAAO,GAAG,IAAI,IAAI,cAAc,CAAC,CAAC,yCAAyC;IAEjF,MAAM,cAAc,GAAG,CAAC,CAAyC,EAAE,EAAE;QACnE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACzC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,eAAe,CAAC,MAAM,EAC7B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,EAC1D,iBAAiB,EAAE,iBAAiB,KAChC,KAAK,IAER,GAAG,IAAI,CACN,6BACE,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,0BAA0B,KAChC,UAAU,EACd,OAAO,EAAE,cAAc,GACvB,CACH,CACU,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,aAAa,CAAC,WAAW,GAAG,eAAe,CAAC","sourcesContent":["import { AvatarBaseShape } from '@metamask-previews/design-system-shared';\nimport React, { forwardRef, useState } from 'react';\n\nimport { AvatarNetworkSize } from '../../types';\nimport { AvatarBase } from '../AvatarBase';\n\nimport type { AvatarNetworkProps } from './AvatarNetwork.types';\n\nexport const AvatarNetwork = forwardRef<HTMLDivElement, AvatarNetworkProps>(\n (\n {\n src,\n name = '',\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarNetworkSize.Md,\n imageProps,\n ...props\n },\n ref,\n ) => {\n const [finalFallbackText, setFinalFallbackText] = useState<string>('');\n const backupFallbackText = fallbackText || name?.[0] || '';\n const altText = name || 'Network logo'; // TBC: Add localization for default text\n\n const onErrorHandler = (e: React.SyntheticEvent<HTMLImageElement>) => {\n setFinalFallbackText(backupFallbackText);\n imageProps?.onError?.(e);\n };\n\n return (\n <AvatarBase\n ref={ref}\n shape={AvatarBaseShape.Square}\n size={size}\n className={className}\n fallbackText={src ? finalFallbackText : backupFallbackText}\n fallbackTextProps={fallbackTextProps}\n {...props}\n >\n {src && (\n <img\n src={src}\n alt={altText}\n className=\"size-full object-contain\"\n {...imageProps}\n onError={onErrorHandler}\n />\n )}\n </AvatarBase>\n );\n },\n);\n\nAvatarNetwork.displayName = 'AvatarNetwork';\n"]}
1
+ {"version":3,"file":"AvatarNetwork.mjs","sourceRoot":"","sources":["../../../src/components/AvatarNetwork/AvatarNetwork.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,gDAAgD;AAC1E,OAAO,QAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc;;AAEpD,OAAO,EAAE,iBAAiB,EAAE,8BAAoB;AAChD,OAAO,EAAE,UAAU,EAAE,gCAAsB;AAI3C,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CACrC,CACE,EACE,GAAG,EACH,IAAI,GAAG,EAAE,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,iBAAiB,CAAC,EAAE,EAC3B,UAAU,EACV,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IAC5D,MAAM,OAAO,GAAG,IAAI,IAAI,cAAc,CAAC,CAAC,yCAAyC;IAEjF,MAAM,cAAc,GAAG,CAAC,CAAyC,EAAE,EAAE;QACnE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACzC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,eAAe,CAAC,MAAM,EAC7B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,EAC1D,iBAAiB,EAAE,iBAAiB,KAChC,KAAK,IAER,GAAG,IAAI,CACN,6BACE,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,0BAA0B,KAChC,UAAU,EACd,OAAO,EAAE,cAAc,GACvB,CACH,CACU,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,aAAa,CAAC,WAAW,GAAG,eAAe,CAAC","sourcesContent":["import { AvatarBaseShape } from '@metamask-previews/design-system-shared';\nimport React, { forwardRef, useState } from 'react';\n\nimport { AvatarNetworkSize } from '../../types';\nimport { AvatarBase } from '../AvatarBase';\n\nimport type { AvatarNetworkProps } from './AvatarNetwork.types';\n\nexport const AvatarNetwork = forwardRef<HTMLDivElement, AvatarNetworkProps>(\n (\n {\n src,\n name = '',\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarNetworkSize.Md,\n imageProps,\n ...props\n },\n ref,\n ) => {\n const [finalFallbackText, setFinalFallbackText] = useState<string>('');\n const backupFallbackText = fallbackText || name?.[0] || '?';\n const altText = name || 'Network logo'; // TBC: Add localization for default text\n\n const onErrorHandler = (e: React.SyntheticEvent<HTMLImageElement>) => {\n setFinalFallbackText(backupFallbackText);\n imageProps?.onError?.(e);\n };\n\n return (\n <AvatarBase\n ref={ref}\n shape={AvatarBaseShape.Square}\n size={size}\n className={className}\n fallbackText={src ? finalFallbackText : backupFallbackText}\n fallbackTextProps={fallbackTextProps}\n {...props}\n >\n {src && (\n <img\n src={src}\n alt={altText}\n className=\"size-full object-contain\"\n {...imageProps}\n onError={onErrorHandler}\n />\n )}\n </AvatarBase>\n );\n },\n);\n\nAvatarNetwork.displayName = 'AvatarNetwork';\n"]}
@@ -29,13 +29,13 @@ const react_1 = __importStar(require("react"));
29
29
  const AvatarBase_1 = require("../AvatarBase/index.cjs");
30
30
  exports.AvatarToken = (0, react_1.forwardRef)(({ src, name = '', fallbackText, fallbackTextProps, className, size = design_system_shared_1.AvatarTokenSize.Md, imageProps, ...props }, ref) => {
31
31
  const [finalFallbackText, setFinalFallbackText] = (0, react_1.useState)('');
32
- const backupFallbackText = fallbackText || name?.[0] || '';
32
+ const backupFallbackText = fallbackText || name?.[0] || '?';
33
33
  const altText = name || 'Token logo'; // TBC: Add localization for default text
34
34
  const onErrorHandler = (e) => {
35
35
  setFinalFallbackText(backupFallbackText);
36
36
  imageProps?.onError?.(e);
37
37
  };
38
- return (react_1.default.createElement(AvatarBase_1.AvatarBase, { ref: ref, shape: design_system_shared_1.AvatarBaseShape.Circle, size: size, className: className, fallbackText: src ? finalFallbackText : backupFallbackText, fallbackTextProps: fallbackTextProps, ...props }, src && (react_1.default.createElement("img", { src: src, alt: altText, className: "size-full object-contain", onError: onErrorHandler, ...imageProps }))));
38
+ return (react_1.default.createElement(AvatarBase_1.AvatarBase, { ref: ref, shape: design_system_shared_1.AvatarBaseShape.Circle, size: size, className: className, fallbackText: src ? finalFallbackText : backupFallbackText, fallbackTextProps: fallbackTextProps, ...props }, src && (react_1.default.createElement("img", { src: src, alt: altText, className: "size-full object-contain", ...imageProps, onError: onErrorHandler }))));
39
39
  });
40
40
  exports.AvatarToken.displayName = 'AvatarToken';
41
41
  //# sourceMappingURL=AvatarToken.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"AvatarToken.cjs","sourceRoot":"","sources":["../../../src/components/AvatarToken/AvatarToken.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kFAGiD;AACjD,+CAAoD;AAEpD,wDAA2C;AAI9B,QAAA,WAAW,GAAG,IAAA,kBAAU,EACnC,CACE,EACE,GAAG,EACH,IAAI,GAAG,EAAE,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,sCAAe,CAAC,EAAE,EACzB,UAAU,EACV,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,IAAA,gBAAQ,EAAS,EAAE,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,MAAM,OAAO,GAAG,IAAI,IAAI,YAAY,CAAC,CAAC,yCAAyC;IAE/E,MAAM,cAAc,GAAG,CAAC,CAAyC,EAAE,EAAE;QACnE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACzC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO,CACL,8BAAC,uBAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,sCAAe,CAAC,MAAM,EAC7B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,EAC1D,iBAAiB,EAAE,iBAAiB,KAChC,KAAK,IAER,GAAG,IAAI,CACN,uCACE,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,0BAA0B,EACpC,OAAO,EAAE,cAAc,KACnB,UAAU,GACd,CACH,CACU,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,mBAAW,CAAC,WAAW,GAAG,aAAa,CAAC","sourcesContent":["import {\n AvatarBaseShape,\n AvatarTokenSize,\n} from '@metamask-previews/design-system-shared';\nimport React, { forwardRef, useState } from 'react';\n\nimport { AvatarBase } from '../AvatarBase';\n\nimport type { AvatarTokenProps } from './AvatarToken.types';\n\nexport const AvatarToken = forwardRef<HTMLDivElement, AvatarTokenProps>(\n (\n {\n src,\n name = '',\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarTokenSize.Md,\n imageProps,\n ...props\n },\n ref,\n ) => {\n const [finalFallbackText, setFinalFallbackText] = useState<string>('');\n const backupFallbackText = fallbackText || name?.[0] || '';\n const altText = name || 'Token logo'; // TBC: Add localization for default text\n\n const onErrorHandler = (e: React.SyntheticEvent<HTMLImageElement>) => {\n setFinalFallbackText(backupFallbackText);\n imageProps?.onError?.(e);\n };\n\n return (\n <AvatarBase\n ref={ref}\n shape={AvatarBaseShape.Circle}\n size={size}\n className={className}\n fallbackText={src ? finalFallbackText : backupFallbackText}\n fallbackTextProps={fallbackTextProps}\n {...props}\n >\n {src && (\n <img\n src={src}\n alt={altText}\n className=\"size-full object-contain\"\n onError={onErrorHandler}\n {...imageProps}\n />\n )}\n </AvatarBase>\n );\n },\n);\n\nAvatarToken.displayName = 'AvatarToken';\n"]}
1
+ {"version":3,"file":"AvatarToken.cjs","sourceRoot":"","sources":["../../../src/components/AvatarToken/AvatarToken.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kFAGiD;AACjD,+CAAoD;AAEpD,wDAA2C;AAI9B,QAAA,WAAW,GAAG,IAAA,kBAAU,EACnC,CACE,EACE,GAAG,EACH,IAAI,GAAG,EAAE,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,sCAAe,CAAC,EAAE,EACzB,UAAU,EACV,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,IAAA,gBAAQ,EAAS,EAAE,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IAC5D,MAAM,OAAO,GAAG,IAAI,IAAI,YAAY,CAAC,CAAC,yCAAyC;IAE/E,MAAM,cAAc,GAAG,CAAC,CAAyC,EAAE,EAAE;QACnE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACzC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO,CACL,8BAAC,uBAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,sCAAe,CAAC,MAAM,EAC7B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,EAC1D,iBAAiB,EAAE,iBAAiB,KAChC,KAAK,IAER,GAAG,IAAI,CACN,uCACE,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,0BAA0B,KAChC,UAAU,EACd,OAAO,EAAE,cAAc,GACvB,CACH,CACU,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,mBAAW,CAAC,WAAW,GAAG,aAAa,CAAC","sourcesContent":["import {\n AvatarBaseShape,\n AvatarTokenSize,\n} from '@metamask-previews/design-system-shared';\nimport React, { forwardRef, useState } from 'react';\n\nimport { AvatarBase } from '../AvatarBase';\n\nimport type { AvatarTokenProps } from './AvatarToken.types';\n\nexport const AvatarToken = forwardRef<HTMLDivElement, AvatarTokenProps>(\n (\n {\n src,\n name = '',\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarTokenSize.Md,\n imageProps,\n ...props\n },\n ref,\n ) => {\n const [finalFallbackText, setFinalFallbackText] = useState<string>('');\n const backupFallbackText = fallbackText || name?.[0] || '?';\n const altText = name || 'Token logo'; // TBC: Add localization for default text\n\n const onErrorHandler = (e: React.SyntheticEvent<HTMLImageElement>) => {\n setFinalFallbackText(backupFallbackText);\n imageProps?.onError?.(e);\n };\n\n return (\n <AvatarBase\n ref={ref}\n shape={AvatarBaseShape.Circle}\n size={size}\n className={className}\n fallbackText={src ? finalFallbackText : backupFallbackText}\n fallbackTextProps={fallbackTextProps}\n {...props}\n >\n {src && (\n <img\n src={src}\n alt={altText}\n className=\"size-full object-contain\"\n {...imageProps}\n onError={onErrorHandler}\n />\n )}\n </AvatarBase>\n );\n },\n);\n\nAvatarToken.displayName = 'AvatarToken';\n"]}
@@ -10,13 +10,13 @@ const React = $importDefault($React);
10
10
  import { AvatarBase } from "../AvatarBase/index.mjs";
11
11
  export const AvatarToken = forwardRef(({ src, name = '', fallbackText, fallbackTextProps, className, size = AvatarTokenSize.Md, imageProps, ...props }, ref) => {
12
12
  const [finalFallbackText, setFinalFallbackText] = useState('');
13
- const backupFallbackText = fallbackText || name?.[0] || '';
13
+ const backupFallbackText = fallbackText || name?.[0] || '?';
14
14
  const altText = name || 'Token logo'; // TBC: Add localization for default text
15
15
  const onErrorHandler = (e) => {
16
16
  setFinalFallbackText(backupFallbackText);
17
17
  imageProps?.onError?.(e);
18
18
  };
19
- return (React.createElement(AvatarBase, { ref: ref, shape: AvatarBaseShape.Circle, size: size, className: className, fallbackText: src ? finalFallbackText : backupFallbackText, fallbackTextProps: fallbackTextProps, ...props }, src && (React.createElement("img", { src: src, alt: altText, className: "size-full object-contain", onError: onErrorHandler, ...imageProps }))));
19
+ return (React.createElement(AvatarBase, { ref: ref, shape: AvatarBaseShape.Circle, size: size, className: className, fallbackText: src ? finalFallbackText : backupFallbackText, fallbackTextProps: fallbackTextProps, ...props }, src && (React.createElement("img", { src: src, alt: altText, className: "size-full object-contain", ...imageProps, onError: onErrorHandler }))));
20
20
  });
21
21
  AvatarToken.displayName = 'AvatarToken';
22
22
  //# sourceMappingURL=AvatarToken.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"AvatarToken.mjs","sourceRoot":"","sources":["../../../src/components/AvatarToken/AvatarToken.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,eAAe,EACf,eAAe,EAChB,gDAAgD;AACjD,OAAO,QAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc;;AAEpD,OAAO,EAAE,UAAU,EAAE,gCAAsB;AAI3C,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CACnC,CACE,EACE,GAAG,EACH,IAAI,GAAG,EAAE,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,eAAe,CAAC,EAAE,EACzB,UAAU,EACV,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,MAAM,OAAO,GAAG,IAAI,IAAI,YAAY,CAAC,CAAC,yCAAyC;IAE/E,MAAM,cAAc,GAAG,CAAC,CAAyC,EAAE,EAAE;QACnE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACzC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,eAAe,CAAC,MAAM,EAC7B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,EAC1D,iBAAiB,EAAE,iBAAiB,KAChC,KAAK,IAER,GAAG,IAAI,CACN,6BACE,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,0BAA0B,EACpC,OAAO,EAAE,cAAc,KACnB,UAAU,GACd,CACH,CACU,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,WAAW,CAAC,WAAW,GAAG,aAAa,CAAC","sourcesContent":["import {\n AvatarBaseShape,\n AvatarTokenSize,\n} from '@metamask-previews/design-system-shared';\nimport React, { forwardRef, useState } from 'react';\n\nimport { AvatarBase } from '../AvatarBase';\n\nimport type { AvatarTokenProps } from './AvatarToken.types';\n\nexport const AvatarToken = forwardRef<HTMLDivElement, AvatarTokenProps>(\n (\n {\n src,\n name = '',\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarTokenSize.Md,\n imageProps,\n ...props\n },\n ref,\n ) => {\n const [finalFallbackText, setFinalFallbackText] = useState<string>('');\n const backupFallbackText = fallbackText || name?.[0] || '';\n const altText = name || 'Token logo'; // TBC: Add localization for default text\n\n const onErrorHandler = (e: React.SyntheticEvent<HTMLImageElement>) => {\n setFinalFallbackText(backupFallbackText);\n imageProps?.onError?.(e);\n };\n\n return (\n <AvatarBase\n ref={ref}\n shape={AvatarBaseShape.Circle}\n size={size}\n className={className}\n fallbackText={src ? finalFallbackText : backupFallbackText}\n fallbackTextProps={fallbackTextProps}\n {...props}\n >\n {src && (\n <img\n src={src}\n alt={altText}\n className=\"size-full object-contain\"\n onError={onErrorHandler}\n {...imageProps}\n />\n )}\n </AvatarBase>\n );\n },\n);\n\nAvatarToken.displayName = 'AvatarToken';\n"]}
1
+ {"version":3,"file":"AvatarToken.mjs","sourceRoot":"","sources":["../../../src/components/AvatarToken/AvatarToken.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,eAAe,EACf,eAAe,EAChB,gDAAgD;AACjD,OAAO,QAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc;;AAEpD,OAAO,EAAE,UAAU,EAAE,gCAAsB;AAI3C,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CACnC,CACE,EACE,GAAG,EACH,IAAI,GAAG,EAAE,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,eAAe,CAAC,EAAE,EACzB,UAAU,EACV,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IAC5D,MAAM,OAAO,GAAG,IAAI,IAAI,YAAY,CAAC,CAAC,yCAAyC;IAE/E,MAAM,cAAc,GAAG,CAAC,CAAyC,EAAE,EAAE;QACnE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACzC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,eAAe,CAAC,MAAM,EAC7B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,EAC1D,iBAAiB,EAAE,iBAAiB,KAChC,KAAK,IAER,GAAG,IAAI,CACN,6BACE,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,0BAA0B,KAChC,UAAU,EACd,OAAO,EAAE,cAAc,GACvB,CACH,CACU,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,WAAW,CAAC,WAAW,GAAG,aAAa,CAAC","sourcesContent":["import {\n AvatarBaseShape,\n AvatarTokenSize,\n} from '@metamask-previews/design-system-shared';\nimport React, { forwardRef, useState } from 'react';\n\nimport { AvatarBase } from '../AvatarBase';\n\nimport type { AvatarTokenProps } from './AvatarToken.types';\n\nexport const AvatarToken = forwardRef<HTMLDivElement, AvatarTokenProps>(\n (\n {\n src,\n name = '',\n fallbackText,\n fallbackTextProps,\n className,\n size = AvatarTokenSize.Md,\n imageProps,\n ...props\n },\n ref,\n ) => {\n const [finalFallbackText, setFinalFallbackText] = useState<string>('');\n const backupFallbackText = fallbackText || name?.[0] || '?';\n const altText = name || 'Token logo'; // TBC: Add localization for default text\n\n const onErrorHandler = (e: React.SyntheticEvent<HTMLImageElement>) => {\n setFinalFallbackText(backupFallbackText);\n imageProps?.onError?.(e);\n };\n\n return (\n <AvatarBase\n ref={ref}\n shape={AvatarBaseShape.Circle}\n size={size}\n className={className}\n fallbackText={src ? finalFallbackText : backupFallbackText}\n fallbackTextProps={fallbackTextProps}\n {...props}\n >\n {src && (\n <img\n src={src}\n alt={altText}\n className=\"size-full object-contain\"\n {...imageProps}\n onError={onErrorHandler}\n />\n )}\n </AvatarBase>\n );\n },\n);\n\nAvatarToken.displayName = 'AvatarToken';\n"]}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.FormTextField = void 0;
27
+ const react_1 = __importStar(require("react"));
28
+ const tw_merge_1 = require("../../utils/tw-merge.cjs");
29
+ const Box_1 = require("../Box/index.cjs");
30
+ const HelpText_1 = require("../HelpText/index.cjs");
31
+ const Label_1 = require("../Label/index.cjs");
32
+ const TextField_1 = require("../TextField/index.cjs");
33
+ exports.FormTextField = (0, react_1.forwardRef)(({ className, endAccessory, helpText, helpTextProps, id, inputElement, inputProps, inputRef, isDisabled, isError, isReadOnly, label, labelProps, maxLength, name, onBlur, onChange, onFocus, placeholder, required, size, startAccessory, style, textFieldProps, truncate, type, value, autoFocus, ...rest }, ref) => (react_1.default.createElement(Box_1.Box, { ref: ref, flexDirection: Box_1.BoxFlexDirection.Column, className: className, style: style, ...rest },
34
+ label && (react_1.default.createElement(Label_1.Label, { htmlFor: id, ...labelProps, className: (0, tw_merge_1.twMerge)('mb-1', labelProps?.className) }, label)),
35
+ react_1.default.createElement(TextField_1.TextField, { ...textFieldProps, autoFocus: autoFocus, endAccessory: endAccessory, id: id, inputElement: inputElement, inputProps: inputProps, inputRef: inputRef, isDisabled: isDisabled, isError: isError, isReadOnly: isReadOnly, maxLength: maxLength, name: name, onBlur: onBlur, onChange: onChange, onFocus: onFocus, placeholder: placeholder, required: required, size: size, startAccessory: startAccessory, truncate: truncate, type: type, value: value }),
36
+ helpText && (react_1.default.createElement(HelpText_1.HelpText, { severity: isError ? HelpText_1.HelpTextSeverity.Danger : undefined, ...helpTextProps, className: (0, tw_merge_1.twMerge)('mt-1', helpTextProps?.className) }, helpText)))));
37
+ exports.FormTextField.displayName = 'FormTextField';
38
+ //# sourceMappingURL=FormTextField.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormTextField.cjs","sourceRoot":"","sources":["../../../src/components/FormTextField/FormTextField.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA0C;AAE1C,uDAA+C;AAC/C,0CAA+C;AAC/C,oDAAyD;AACzD,8CAAiC;AACjC,sDAAyC;AAI5B,QAAA,aAAa,GAAG,IAAA,kBAAU,EACrC,CACE,EACE,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,EAAE,EACF,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,UAAU,EACV,OAAO,EACP,UAAU,EACV,KAAK,EACL,UAAU,EACV,SAAS,EACT,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,OAAO,EACP,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,cAAc,EACd,KAAK,EACL,cAAc,EACd,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,SAAS,EACT,GAAG,IAAI,EACR,EACD,GAAG,EACH,EAAE,CAAC,CACH,8BAAC,SAAG,IACF,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,sBAAgB,CAAC,MAAM,EACtC,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,KACR,IAAI;IAEP,KAAK,IAAI,CACR,8BAAC,aAAK,IACJ,OAAO,EAAE,EAAE,KACP,UAAU,EACd,SAAS,EAAE,IAAA,kBAAO,EAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,IAEhD,KAAK,CACA,CACT;IACD,8BAAC,qBAAS,OACJ,cAAc,EAClB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY,EAC1B,EAAE,EAAE,EAAE,EACN,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,EACV,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,GACZ;IACD,QAAQ,IAAI,CACX,8BAAC,mBAAQ,IACP,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,2BAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,KACnD,aAAa,EACjB,SAAS,EAAE,IAAA,kBAAO,EAAC,MAAM,EAAE,aAAa,EAAE,SAAS,CAAC,IAEnD,QAAQ,CACA,CACZ,CACG,CACP,CACF,CAAC;AAEF,qBAAa,CAAC,WAAW,GAAG,eAAe,CAAC","sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { twMerge } from '../../utils/tw-merge';\nimport { Box, BoxFlexDirection } from '../Box';\nimport { HelpText, HelpTextSeverity } from '../HelpText';\nimport { Label } from '../Label';\nimport { TextField } from '../TextField';\n\nimport type { FormTextFieldProps } from './FormTextField.types';\n\nexport const FormTextField = forwardRef<HTMLDivElement, FormTextFieldProps>(\n (\n {\n className,\n endAccessory,\n helpText,\n helpTextProps,\n id,\n inputElement,\n inputProps,\n inputRef,\n isDisabled,\n isError,\n isReadOnly,\n label,\n labelProps,\n maxLength,\n name,\n onBlur,\n onChange,\n onFocus,\n placeholder,\n required,\n size,\n startAccessory,\n style,\n textFieldProps,\n truncate,\n type,\n value,\n autoFocus,\n ...rest\n },\n ref,\n ) => (\n <Box\n ref={ref}\n flexDirection={BoxFlexDirection.Column}\n className={className}\n style={style}\n {...rest}\n >\n {label && (\n <Label\n htmlFor={id}\n {...labelProps}\n className={twMerge('mb-1', labelProps?.className)}\n >\n {label}\n </Label>\n )}\n <TextField\n {...textFieldProps}\n autoFocus={autoFocus}\n endAccessory={endAccessory}\n id={id}\n inputElement={inputElement}\n inputProps={inputProps}\n inputRef={inputRef}\n isDisabled={isDisabled}\n isError={isError}\n isReadOnly={isReadOnly}\n maxLength={maxLength}\n name={name}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n placeholder={placeholder}\n required={required}\n size={size}\n startAccessory={startAccessory}\n truncate={truncate}\n type={type}\n value={value}\n />\n {helpText && (\n <HelpText\n severity={isError ? HelpTextSeverity.Danger : undefined}\n {...helpTextProps}\n className={twMerge('mt-1', helpTextProps?.className)}\n >\n {helpText}\n </HelpText>\n )}\n </Box>\n ),\n);\n\nFormTextField.displayName = 'FormTextField';\n"]}
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import type { FormTextFieldProps } from "./FormTextField.types.cjs";
3
+ export declare const FormTextField: React.ForwardRefExoticComponent<FormTextFieldProps & React.RefAttributes<HTMLDivElement>>;
4
+ //# sourceMappingURL=FormTextField.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormTextField.d.cts","sourceRoot":"","sources":["../../../src/components/FormTextField/FormTextField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,cAAc;AAQ1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,kCAA8B;AAEhE,eAAO,MAAM,aAAa,2FAsFzB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import type { FormTextFieldProps } from "./FormTextField.types.mjs";
3
+ export declare const FormTextField: React.ForwardRefExoticComponent<FormTextFieldProps & React.RefAttributes<HTMLDivElement>>;
4
+ //# sourceMappingURL=FormTextField.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormTextField.d.mts","sourceRoot":"","sources":["../../../src/components/FormTextField/FormTextField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,cAAc;AAQ1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,kCAA8B;AAEhE,eAAO,MAAM,aAAa,2FAsFzB,CAAC"}
@@ -0,0 +1,19 @@
1
+ function $importDefault(module) {
2
+ if (module?.__esModule) {
3
+ return module.default;
4
+ }
5
+ return module;
6
+ }
7
+ import $React, { forwardRef } from "react";
8
+ const React = $importDefault($React);
9
+ import { twMerge } from "../../utils/tw-merge.mjs";
10
+ import { Box, BoxFlexDirection } from "../Box/index.mjs";
11
+ import { HelpText, HelpTextSeverity } from "../HelpText/index.mjs";
12
+ import { Label } from "../Label/index.mjs";
13
+ import { TextField } from "../TextField/index.mjs";
14
+ export const FormTextField = forwardRef(({ className, endAccessory, helpText, helpTextProps, id, inputElement, inputProps, inputRef, isDisabled, isError, isReadOnly, label, labelProps, maxLength, name, onBlur, onChange, onFocus, placeholder, required, size, startAccessory, style, textFieldProps, truncate, type, value, autoFocus, ...rest }, ref) => (React.createElement(Box, { ref: ref, flexDirection: BoxFlexDirection.Column, className: className, style: style, ...rest },
15
+ label && (React.createElement(Label, { htmlFor: id, ...labelProps, className: twMerge('mb-1', labelProps?.className) }, label)),
16
+ React.createElement(TextField, { ...textFieldProps, autoFocus: autoFocus, endAccessory: endAccessory, id: id, inputElement: inputElement, inputProps: inputProps, inputRef: inputRef, isDisabled: isDisabled, isError: isError, isReadOnly: isReadOnly, maxLength: maxLength, name: name, onBlur: onBlur, onChange: onChange, onFocus: onFocus, placeholder: placeholder, required: required, size: size, startAccessory: startAccessory, truncate: truncate, type: type, value: value }),
17
+ helpText && (React.createElement(HelpText, { severity: isError ? HelpTextSeverity.Danger : undefined, ...helpTextProps, className: twMerge('mt-1', helpTextProps?.className) }, helpText)))));
18
+ FormTextField.displayName = 'FormTextField';
19
+ //# sourceMappingURL=FormTextField.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormTextField.mjs","sourceRoot":"","sources":["../../../src/components/FormTextField/FormTextField.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,QAAO,EAAE,UAAU,EAAE,cAAc;;AAE1C,OAAO,EAAE,OAAO,EAAE,iCAA6B;AAC/C,OAAO,EAAE,GAAG,EAAE,gBAAgB,EAAE,yBAAe;AAC/C,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,8BAAoB;AACzD,OAAO,EAAE,KAAK,EAAE,2BAAiB;AACjC,OAAO,EAAE,SAAS,EAAE,+BAAqB;AAIzC,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CACrC,CACE,EACE,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,EAAE,EACF,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,UAAU,EACV,OAAO,EACP,UAAU,EACV,KAAK,EACL,UAAU,EACV,SAAS,EACT,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,OAAO,EACP,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,cAAc,EACd,KAAK,EACL,cAAc,EACd,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,SAAS,EACT,GAAG,IAAI,EACR,EACD,GAAG,EACH,EAAE,CAAC,CACH,oBAAC,GAAG,IACF,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,gBAAgB,CAAC,MAAM,EACtC,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,KACR,IAAI;IAEP,KAAK,IAAI,CACR,oBAAC,KAAK,IACJ,OAAO,EAAE,EAAE,KACP,UAAU,EACd,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,IAEhD,KAAK,CACA,CACT;IACD,oBAAC,SAAS,OACJ,cAAc,EAClB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY,EAC1B,EAAE,EAAE,EAAE,EACN,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,EACV,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,GACZ;IACD,QAAQ,IAAI,CACX,oBAAC,QAAQ,IACP,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,KACnD,aAAa,EACjB,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,CAAC,IAEnD,QAAQ,CACA,CACZ,CACG,CACP,CACF,CAAC;AAEF,aAAa,CAAC,WAAW,GAAG,eAAe,CAAC","sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { twMerge } from '../../utils/tw-merge';\nimport { Box, BoxFlexDirection } from '../Box';\nimport { HelpText, HelpTextSeverity } from '../HelpText';\nimport { Label } from '../Label';\nimport { TextField } from '../TextField';\n\nimport type { FormTextFieldProps } from './FormTextField.types';\n\nexport const FormTextField = forwardRef<HTMLDivElement, FormTextFieldProps>(\n (\n {\n className,\n endAccessory,\n helpText,\n helpTextProps,\n id,\n inputElement,\n inputProps,\n inputRef,\n isDisabled,\n isError,\n isReadOnly,\n label,\n labelProps,\n maxLength,\n name,\n onBlur,\n onChange,\n onFocus,\n placeholder,\n required,\n size,\n startAccessory,\n style,\n textFieldProps,\n truncate,\n type,\n value,\n autoFocus,\n ...rest\n },\n ref,\n ) => (\n <Box\n ref={ref}\n flexDirection={BoxFlexDirection.Column}\n className={className}\n style={style}\n {...rest}\n >\n {label && (\n <Label\n htmlFor={id}\n {...labelProps}\n className={twMerge('mb-1', labelProps?.className)}\n >\n {label}\n </Label>\n )}\n <TextField\n {...textFieldProps}\n autoFocus={autoFocus}\n endAccessory={endAccessory}\n id={id}\n inputElement={inputElement}\n inputProps={inputProps}\n inputRef={inputRef}\n isDisabled={isDisabled}\n isError={isError}\n isReadOnly={isReadOnly}\n maxLength={maxLength}\n name={name}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n placeholder={placeholder}\n required={required}\n size={size}\n startAccessory={startAccessory}\n truncate={truncate}\n type={type}\n value={value}\n />\n {helpText && (\n <HelpText\n severity={isError ? HelpTextSeverity.Danger : undefined}\n {...helpTextProps}\n className={twMerge('mt-1', helpTextProps?.className)}\n >\n {helpText}\n </HelpText>\n )}\n </Box>\n ),\n);\n\nFormTextField.displayName = 'FormTextField';\n"]}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=FormTextField.types.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormTextField.types.cjs","sourceRoot":"","sources":["../../../src/components/FormTextField/FormTextField.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { CSSProperties, ReactNode } from 'react';\n\nimport type { HelpTextProps } from '../HelpText';\nimport type { LabelProps } from '../Label';\nimport type { TextFieldProps } from '../TextField';\n\n/**\n * Props forwarded to the inner `TextField`. Omits every key that\n * `FormTextField` already owns at the top level — passing those via\n * `textFieldProps` would either be silently overridden by the explicit prop\n * or, in the case of `isError`, desynchronize the `TextField` from the\n * `HelpText` severity. `className` / `style` remain available here to style\n * the inner `TextField` (merged with its own defaults).\n */\ntype FormTextFieldInnerTextFieldProps = Omit<\n TextFieldProps,\n | 'autoFocus'\n | 'endAccessory'\n | 'id'\n | 'inputElement'\n | 'inputProps'\n | 'inputRef'\n | 'isDisabled'\n | 'isError'\n | 'isReadOnly'\n | 'maxLength'\n | 'name'\n | 'onBlur'\n | 'onChange'\n | 'onFocus'\n | 'placeholder'\n | 'required'\n | 'size'\n | 'startAccessory'\n | 'truncate'\n | 'type'\n | 'value'\n>;\n\ntype FormTextFieldBaseProps = Omit<TextFieldProps, 'className' | 'style'> & {\n /** Optional additional CSS classes for the root container. */\n className?: string;\n /** Optional inline styles for the root container. */\n style?: CSSProperties;\n /**\n * Help text rendered below the field. Renders with error styling when\n * `isError` is true.\n */\n helpText?: ReactNode;\n /** Additional props forwarded to the rendered `HelpText`. */\n helpTextProps?: Omit<HelpTextProps, 'severity' | 'children'>;\n /** Additional props forwarded to the inner `TextField`. */\n textFieldProps?: FormTextFieldInnerTextFieldProps;\n};\n\ntype FormTextFieldWithLabelProps = FormTextFieldBaseProps & {\n /**\n * Label rendered above the field. When set, `id` is required so the label\n * can be associated with the inner `<input>`.\n */\n label: ReactNode;\n /** Additional props forwarded to the rendered `Label`. */\n labelProps?: Omit<LabelProps, 'htmlFor' | 'children'>;\n /**\n * Required when `label` is provided. Used as the `htmlFor` target of the\n * label and the `id` of the inner `<input>`.\n */\n id: string;\n};\n\ntype FormTextFieldWithoutLabelProps = FormTextFieldBaseProps & {\n label?: never;\n labelProps?: never;\n id?: string;\n};\n\nexport type FormTextFieldProps =\n | FormTextFieldWithLabelProps\n | FormTextFieldWithoutLabelProps;\n"]}
@@ -0,0 +1,50 @@
1
+ import type { CSSProperties, ReactNode } from "react";
2
+ import type { HelpTextProps } from "../HelpText/index.cjs";
3
+ import type { LabelProps } from "../Label/index.cjs";
4
+ import type { TextFieldProps } from "../TextField/index.cjs";
5
+ /**
6
+ * Props forwarded to the inner `TextField`. Omits every key that
7
+ * `FormTextField` already owns at the top level — passing those via
8
+ * `textFieldProps` would either be silently overridden by the explicit prop
9
+ * or, in the case of `isError`, desynchronize the `TextField` from the
10
+ * `HelpText` severity. `className` / `style` remain available here to style
11
+ * the inner `TextField` (merged with its own defaults).
12
+ */
13
+ type FormTextFieldInnerTextFieldProps = Omit<TextFieldProps, 'autoFocus' | 'endAccessory' | 'id' | 'inputElement' | 'inputProps' | 'inputRef' | 'isDisabled' | 'isError' | 'isReadOnly' | 'maxLength' | 'name' | 'onBlur' | 'onChange' | 'onFocus' | 'placeholder' | 'required' | 'size' | 'startAccessory' | 'truncate' | 'type' | 'value'>;
14
+ type FormTextFieldBaseProps = Omit<TextFieldProps, 'className' | 'style'> & {
15
+ /** Optional additional CSS classes for the root container. */
16
+ className?: string;
17
+ /** Optional inline styles for the root container. */
18
+ style?: CSSProperties;
19
+ /**
20
+ * Help text rendered below the field. Renders with error styling when
21
+ * `isError` is true.
22
+ */
23
+ helpText?: ReactNode;
24
+ /** Additional props forwarded to the rendered `HelpText`. */
25
+ helpTextProps?: Omit<HelpTextProps, 'severity' | 'children'>;
26
+ /** Additional props forwarded to the inner `TextField`. */
27
+ textFieldProps?: FormTextFieldInnerTextFieldProps;
28
+ };
29
+ type FormTextFieldWithLabelProps = FormTextFieldBaseProps & {
30
+ /**
31
+ * Label rendered above the field. When set, `id` is required so the label
32
+ * can be associated with the inner `<input>`.
33
+ */
34
+ label: ReactNode;
35
+ /** Additional props forwarded to the rendered `Label`. */
36
+ labelProps?: Omit<LabelProps, 'htmlFor' | 'children'>;
37
+ /**
38
+ * Required when `label` is provided. Used as the `htmlFor` target of the
39
+ * label and the `id` of the inner `<input>`.
40
+ */
41
+ id: string;
42
+ };
43
+ type FormTextFieldWithoutLabelProps = FormTextFieldBaseProps & {
44
+ label?: never;
45
+ labelProps?: never;
46
+ id?: string;
47
+ };
48
+ export type FormTextFieldProps = FormTextFieldWithLabelProps | FormTextFieldWithoutLabelProps;
49
+ export {};
50
+ //# sourceMappingURL=FormTextField.types.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormTextField.types.d.cts","sourceRoot":"","sources":["../../../src/components/FormTextField/FormTextField.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,cAAc;AAEtD,OAAO,KAAK,EAAE,aAAa,EAAE,8BAAoB;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,2BAAiB;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,+BAAqB;AAEnD;;;;;;;GAOG;AACH,KAAK,gCAAgC,GAAG,IAAI,CAC1C,cAAc,EACZ,WAAW,GACX,cAAc,GACd,IAAI,GACJ,cAAc,GACd,YAAY,GACZ,UAAU,GACV,YAAY,GACZ,SAAS,GACT,YAAY,GACZ,WAAW,GACX,MAAM,GACN,QAAQ,GACR,UAAU,GACV,SAAS,GACT,aAAa,GACb,UAAU,GACV,MAAM,GACN,gBAAgB,GAChB,UAAU,GACV,MAAM,GACN,OAAO,CACV,CAAC;AAEF,KAAK,sBAAsB,GAAG,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG;IAC1E,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,UAAU,GAAG,UAAU,CAAC,CAAC;IAC7D,2DAA2D;IAC3D,cAAc,CAAC,EAAE,gCAAgC,CAAC;CACnD,CAAC;AAEF,KAAK,2BAA2B,GAAG,sBAAsB,GAAG;IAC1D;;;OAGG;IACH,KAAK,EAAE,SAAS,CAAC;IACjB,0DAA0D;IAC1D,UAAU,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC;IACtD;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF,KAAK,8BAA8B,GAAG,sBAAsB,GAAG;IAC7D,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,UAAU,CAAC,EAAE,KAAK,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC1B,2BAA2B,GAC3B,8BAA8B,CAAC"}
@@ -0,0 +1,50 @@
1
+ import type { CSSProperties, ReactNode } from "react";
2
+ import type { HelpTextProps } from "../HelpText/index.mjs";
3
+ import type { LabelProps } from "../Label/index.mjs";
4
+ import type { TextFieldProps } from "../TextField/index.mjs";
5
+ /**
6
+ * Props forwarded to the inner `TextField`. Omits every key that
7
+ * `FormTextField` already owns at the top level — passing those via
8
+ * `textFieldProps` would either be silently overridden by the explicit prop
9
+ * or, in the case of `isError`, desynchronize the `TextField` from the
10
+ * `HelpText` severity. `className` / `style` remain available here to style
11
+ * the inner `TextField` (merged with its own defaults).
12
+ */
13
+ type FormTextFieldInnerTextFieldProps = Omit<TextFieldProps, 'autoFocus' | 'endAccessory' | 'id' | 'inputElement' | 'inputProps' | 'inputRef' | 'isDisabled' | 'isError' | 'isReadOnly' | 'maxLength' | 'name' | 'onBlur' | 'onChange' | 'onFocus' | 'placeholder' | 'required' | 'size' | 'startAccessory' | 'truncate' | 'type' | 'value'>;
14
+ type FormTextFieldBaseProps = Omit<TextFieldProps, 'className' | 'style'> & {
15
+ /** Optional additional CSS classes for the root container. */
16
+ className?: string;
17
+ /** Optional inline styles for the root container. */
18
+ style?: CSSProperties;
19
+ /**
20
+ * Help text rendered below the field. Renders with error styling when
21
+ * `isError` is true.
22
+ */
23
+ helpText?: ReactNode;
24
+ /** Additional props forwarded to the rendered `HelpText`. */
25
+ helpTextProps?: Omit<HelpTextProps, 'severity' | 'children'>;
26
+ /** Additional props forwarded to the inner `TextField`. */
27
+ textFieldProps?: FormTextFieldInnerTextFieldProps;
28
+ };
29
+ type FormTextFieldWithLabelProps = FormTextFieldBaseProps & {
30
+ /**
31
+ * Label rendered above the field. When set, `id` is required so the label
32
+ * can be associated with the inner `<input>`.
33
+ */
34
+ label: ReactNode;
35
+ /** Additional props forwarded to the rendered `Label`. */
36
+ labelProps?: Omit<LabelProps, 'htmlFor' | 'children'>;
37
+ /**
38
+ * Required when `label` is provided. Used as the `htmlFor` target of the
39
+ * label and the `id` of the inner `<input>`.
40
+ */
41
+ id: string;
42
+ };
43
+ type FormTextFieldWithoutLabelProps = FormTextFieldBaseProps & {
44
+ label?: never;
45
+ labelProps?: never;
46
+ id?: string;
47
+ };
48
+ export type FormTextFieldProps = FormTextFieldWithLabelProps | FormTextFieldWithoutLabelProps;
49
+ export {};
50
+ //# sourceMappingURL=FormTextField.types.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormTextField.types.d.mts","sourceRoot":"","sources":["../../../src/components/FormTextField/FormTextField.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,cAAc;AAEtD,OAAO,KAAK,EAAE,aAAa,EAAE,8BAAoB;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,2BAAiB;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,+BAAqB;AAEnD;;;;;;;GAOG;AACH,KAAK,gCAAgC,GAAG,IAAI,CAC1C,cAAc,EACZ,WAAW,GACX,cAAc,GACd,IAAI,GACJ,cAAc,GACd,YAAY,GACZ,UAAU,GACV,YAAY,GACZ,SAAS,GACT,YAAY,GACZ,WAAW,GACX,MAAM,GACN,QAAQ,GACR,UAAU,GACV,SAAS,GACT,aAAa,GACb,UAAU,GACV,MAAM,GACN,gBAAgB,GAChB,UAAU,GACV,MAAM,GACN,OAAO,CACV,CAAC;AAEF,KAAK,sBAAsB,GAAG,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG;IAC1E,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,UAAU,GAAG,UAAU,CAAC,CAAC;IAC7D,2DAA2D;IAC3D,cAAc,CAAC,EAAE,gCAAgC,CAAC;CACnD,CAAC;AAEF,KAAK,2BAA2B,GAAG,sBAAsB,GAAG;IAC1D;;;OAGG;IACH,KAAK,EAAE,SAAS,CAAC;IACjB,0DAA0D;IAC1D,UAAU,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC;IACtD;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF,KAAK,8BAA8B,GAAG,sBAAsB,GAAG;IAC7D,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,UAAU,CAAC,EAAE,KAAK,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC1B,2BAA2B,GAC3B,8BAA8B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=FormTextField.types.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormTextField.types.mjs","sourceRoot":"","sources":["../../../src/components/FormTextField/FormTextField.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { CSSProperties, ReactNode } from 'react';\n\nimport type { HelpTextProps } from '../HelpText';\nimport type { LabelProps } from '../Label';\nimport type { TextFieldProps } from '../TextField';\n\n/**\n * Props forwarded to the inner `TextField`. Omits every key that\n * `FormTextField` already owns at the top level — passing those via\n * `textFieldProps` would either be silently overridden by the explicit prop\n * or, in the case of `isError`, desynchronize the `TextField` from the\n * `HelpText` severity. `className` / `style` remain available here to style\n * the inner `TextField` (merged with its own defaults).\n */\ntype FormTextFieldInnerTextFieldProps = Omit<\n TextFieldProps,\n | 'autoFocus'\n | 'endAccessory'\n | 'id'\n | 'inputElement'\n | 'inputProps'\n | 'inputRef'\n | 'isDisabled'\n | 'isError'\n | 'isReadOnly'\n | 'maxLength'\n | 'name'\n | 'onBlur'\n | 'onChange'\n | 'onFocus'\n | 'placeholder'\n | 'required'\n | 'size'\n | 'startAccessory'\n | 'truncate'\n | 'type'\n | 'value'\n>;\n\ntype FormTextFieldBaseProps = Omit<TextFieldProps, 'className' | 'style'> & {\n /** Optional additional CSS classes for the root container. */\n className?: string;\n /** Optional inline styles for the root container. */\n style?: CSSProperties;\n /**\n * Help text rendered below the field. Renders with error styling when\n * `isError` is true.\n */\n helpText?: ReactNode;\n /** Additional props forwarded to the rendered `HelpText`. */\n helpTextProps?: Omit<HelpTextProps, 'severity' | 'children'>;\n /** Additional props forwarded to the inner `TextField`. */\n textFieldProps?: FormTextFieldInnerTextFieldProps;\n};\n\ntype FormTextFieldWithLabelProps = FormTextFieldBaseProps & {\n /**\n * Label rendered above the field. When set, `id` is required so the label\n * can be associated with the inner `<input>`.\n */\n label: ReactNode;\n /** Additional props forwarded to the rendered `Label`. */\n labelProps?: Omit<LabelProps, 'htmlFor' | 'children'>;\n /**\n * Required when `label` is provided. Used as the `htmlFor` target of the\n * label and the `id` of the inner `<input>`.\n */\n id: string;\n};\n\ntype FormTextFieldWithoutLabelProps = FormTextFieldBaseProps & {\n label?: never;\n labelProps?: never;\n id?: string;\n};\n\nexport type FormTextFieldProps =\n | FormTextFieldWithLabelProps\n | FormTextFieldWithoutLabelProps;\n"]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FormTextField = void 0;
4
+ var FormTextField_1 = require("./FormTextField.cjs");
5
+ Object.defineProperty(exports, "FormTextField", { enumerable: true, get: function () { return FormTextField_1.FormTextField; } });
6
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../src/components/FormTextField/index.ts"],"names":[],"mappings":";;;AAAA,qDAAgD;AAAvC,8GAAA,aAAa,OAAA","sourcesContent":["export { FormTextField } from './FormTextField';\nexport type { FormTextFieldProps } from './FormTextField.types';\n"]}
@@ -0,0 +1,3 @@
1
+ export { FormTextField } from "./FormTextField.cjs";
2
+ export type { FormTextFieldProps } from "./FormTextField.types.cjs";
3
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../src/components/FormTextField/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,4BAAwB;AAChD,YAAY,EAAE,kBAAkB,EAAE,kCAA8B"}
@@ -0,0 +1,3 @@
1
+ export { FormTextField } from "./FormTextField.mjs";
2
+ export type { FormTextFieldProps } from "./FormTextField.types.mjs";
3
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../src/components/FormTextField/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,4BAAwB;AAChD,YAAY,EAAE,kBAAkB,EAAE,kCAA8B"}
@@ -0,0 +1,2 @@
1
+ export { FormTextField } from "./FormTextField.mjs";
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../src/components/FormTextField/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,4BAAwB","sourcesContent":["export { FormTextField } from './FormTextField';\nexport type { FormTextFieldProps } from './FormTextField.types';\n"]}