@razorpay/blade 11.17.1 → 11.18.1

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 (138) hide show
  1. package/build/lib/native/components/ActionList/ActionListItem.js +2 -1
  2. package/build/lib/native/components/ActionList/ActionListItem.js.map +1 -1
  3. package/build/lib/native/components/Avatar/Avatar.native.js +7 -0
  4. package/build/lib/native/components/Avatar/Avatar.native.js.map +1 -0
  5. package/build/lib/native/components/Avatar/AvatarGroup.native.js +7 -0
  6. package/build/lib/native/components/Avatar/AvatarGroup.native.js.map +1 -0
  7. package/build/lib/native/components/Button/BaseButton/BaseButton.js +1 -1
  8. package/build/lib/native/components/Button/BaseButton/BaseButton.js.map +1 -1
  9. package/build/lib/native/components/Dropdown/Dropdown.js +1 -1
  10. package/build/lib/native/components/Dropdown/Dropdown.js.map +1 -1
  11. package/build/lib/native/components/Dropdown/DropdownHeaderFooter.js +1 -1
  12. package/build/lib/native/components/Dropdown/DropdownHeaderFooter.js.map +1 -1
  13. package/build/lib/native/components/Dropdown/dropdownComponentIds.js +1 -1
  14. package/build/lib/native/components/Dropdown/dropdownComponentIds.js.map +1 -1
  15. package/build/lib/native/components/Dropdown/dropdownUtils.js +1 -1
  16. package/build/lib/native/components/Dropdown/dropdownUtils.js.map +1 -1
  17. package/build/lib/native/components/Dropdown/useDropdown.js.map +1 -1
  18. package/build/lib/native/components/Input/BaseInput/BaseInputVisuals.js +1 -1
  19. package/build/lib/native/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
  20. package/build/lib/native/components/Input/SearchInput/SearchInput.js +34 -0
  21. package/build/lib/native/components/Input/SearchInput/SearchInput.js.map +1 -0
  22. package/build/lib/native/components/ProgressBar/ProgressBar.js +1 -1
  23. package/build/lib/native/components/ProgressBar/ProgressBar.js.map +1 -1
  24. package/build/lib/native/components/index.js +3 -0
  25. package/build/lib/native/components/index.js.map +1 -1
  26. package/build/lib/native/tokens/global/size.js +1 -1
  27. package/build/lib/native/tokens/global/size.js.map +1 -1
  28. package/build/lib/native/tokens/theme/bladeTheme.js +1 -1
  29. package/build/lib/native/tokens/theme/bladeTheme.js.map +1 -1
  30. package/build/lib/native/utils/metaAttribute/metaConstants.js +1 -1
  31. package/build/lib/native/utils/metaAttribute/metaConstants.js.map +1 -1
  32. package/build/lib/web/development/components/ActionList/ActionListItem.js +3 -1
  33. package/build/lib/web/development/components/ActionList/ActionListItem.js.map +1 -1
  34. package/build/lib/web/development/components/Avatar/Avatar.web.js +125 -0
  35. package/build/lib/web/development/components/Avatar/Avatar.web.js.map +1 -0
  36. package/build/lib/web/development/components/Avatar/AvatarButton.js +86 -0
  37. package/build/lib/web/development/components/Avatar/AvatarButton.js.map +1 -0
  38. package/build/lib/web/development/components/Avatar/AvatarGroup.web.js +114 -0
  39. package/build/lib/web/development/components/Avatar/AvatarGroup.web.js.map +1 -0
  40. package/build/lib/web/development/components/Avatar/AvatarGroupContext.js +11 -0
  41. package/build/lib/web/development/components/Avatar/AvatarGroupContext.js.map +1 -0
  42. package/build/lib/web/development/components/Avatar/StyledAvatar.js +30 -0
  43. package/build/lib/web/development/components/Avatar/StyledAvatar.js.map +1 -0
  44. package/build/lib/web/development/components/Avatar/StyledAvatarButton.js +48 -0
  45. package/build/lib/web/development/components/Avatar/StyledAvatarButton.js.map +1 -0
  46. package/build/lib/web/development/components/Avatar/StyledAvatarGroup.js +24 -0
  47. package/build/lib/web/development/components/Avatar/StyledAvatarGroup.js.map +1 -0
  48. package/build/lib/web/development/components/Avatar/avatarTokens.js +49 -0
  49. package/build/lib/web/development/components/Avatar/avatarTokens.js.map +1 -0
  50. package/build/lib/web/development/components/Avatar/index.js +3 -0
  51. package/build/lib/web/development/components/Avatar/index.js.map +1 -0
  52. package/build/lib/web/development/components/Button/BaseButton/BaseButton.js +1 -1
  53. package/build/lib/web/development/components/Button/BaseButton/BaseButton.js.map +1 -1
  54. package/build/lib/web/development/components/Dropdown/Dropdown.js +4 -1
  55. package/build/lib/web/development/components/Dropdown/Dropdown.js.map +1 -1
  56. package/build/lib/web/development/components/Dropdown/DropdownHeaderFooter.js +2 -16
  57. package/build/lib/web/development/components/Dropdown/DropdownHeaderFooter.js.map +1 -1
  58. package/build/lib/web/development/components/Dropdown/DropdownOverlay.web.js +1 -1
  59. package/build/lib/web/development/components/Dropdown/DropdownOverlay.web.js.map +1 -1
  60. package/build/lib/web/development/components/Dropdown/dropdownComponentIds.js +2 -1
  61. package/build/lib/web/development/components/Dropdown/dropdownComponentIds.js.map +1 -1
  62. package/build/lib/web/development/components/Dropdown/dropdownUtils.js +1 -1
  63. package/build/lib/web/development/components/Dropdown/dropdownUtils.js.map +1 -1
  64. package/build/lib/web/development/components/Dropdown/useDropdown.js.map +1 -1
  65. package/build/lib/web/development/components/Input/BaseInput/BaseInputVisuals.js +1 -1
  66. package/build/lib/web/development/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
  67. package/build/lib/web/development/components/Input/SearchInput/SearchInput.js +180 -0
  68. package/build/lib/web/development/components/Input/SearchInput/SearchInput.js.map +1 -0
  69. package/build/lib/web/development/components/Input/SearchInput/index.js +2 -0
  70. package/build/lib/web/development/components/Input/SearchInput/index.js.map +1 -0
  71. package/build/lib/web/development/components/ProgressBar/CircularProgressBar.web.js +5 -3
  72. package/build/lib/web/development/components/ProgressBar/CircularProgressBar.web.js.map +1 -1
  73. package/build/lib/web/development/components/ProgressBar/ProgressBar.js +1 -1
  74. package/build/lib/web/development/components/ProgressBar/ProgressBar.js.map +1 -1
  75. package/build/lib/web/development/components/index.js +5 -0
  76. package/build/lib/web/development/components/index.js.map +1 -1
  77. package/build/lib/web/development/tokens/global/size.js +2 -0
  78. package/build/lib/web/development/tokens/global/size.js.map +1 -1
  79. package/build/lib/web/development/tokens/theme/bladeTheme.js +6 -6
  80. package/build/lib/web/development/tokens/theme/bladeTheme.js.map +1 -1
  81. package/build/lib/web/development/utils/metaAttribute/metaConstants.js +3 -0
  82. package/build/lib/web/development/utils/metaAttribute/metaConstants.js.map +1 -1
  83. package/build/lib/web/production/components/ActionList/ActionListItem.js +3 -1
  84. package/build/lib/web/production/components/ActionList/ActionListItem.js.map +1 -1
  85. package/build/lib/web/production/components/Avatar/Avatar.web.js +125 -0
  86. package/build/lib/web/production/components/Avatar/Avatar.web.js.map +1 -0
  87. package/build/lib/web/production/components/Avatar/AvatarButton.js +86 -0
  88. package/build/lib/web/production/components/Avatar/AvatarButton.js.map +1 -0
  89. package/build/lib/web/production/components/Avatar/AvatarGroup.web.js +114 -0
  90. package/build/lib/web/production/components/Avatar/AvatarGroup.web.js.map +1 -0
  91. package/build/lib/web/production/components/Avatar/AvatarGroupContext.js +11 -0
  92. package/build/lib/web/production/components/Avatar/AvatarGroupContext.js.map +1 -0
  93. package/build/lib/web/production/components/Avatar/StyledAvatar.js +30 -0
  94. package/build/lib/web/production/components/Avatar/StyledAvatar.js.map +1 -0
  95. package/build/lib/web/production/components/Avatar/StyledAvatarButton.js +48 -0
  96. package/build/lib/web/production/components/Avatar/StyledAvatarButton.js.map +1 -0
  97. package/build/lib/web/production/components/Avatar/StyledAvatarGroup.js +24 -0
  98. package/build/lib/web/production/components/Avatar/StyledAvatarGroup.js.map +1 -0
  99. package/build/lib/web/production/components/Avatar/avatarTokens.js +49 -0
  100. package/build/lib/web/production/components/Avatar/avatarTokens.js.map +1 -0
  101. package/build/lib/web/production/components/Avatar/index.js +3 -0
  102. package/build/lib/web/production/components/Avatar/index.js.map +1 -0
  103. package/build/lib/web/production/components/Button/BaseButton/BaseButton.js +1 -1
  104. package/build/lib/web/production/components/Button/BaseButton/BaseButton.js.map +1 -1
  105. package/build/lib/web/production/components/Dropdown/Dropdown.js +4 -1
  106. package/build/lib/web/production/components/Dropdown/Dropdown.js.map +1 -1
  107. package/build/lib/web/production/components/Dropdown/DropdownHeaderFooter.js +2 -16
  108. package/build/lib/web/production/components/Dropdown/DropdownHeaderFooter.js.map +1 -1
  109. package/build/lib/web/production/components/Dropdown/DropdownOverlay.web.js +1 -1
  110. package/build/lib/web/production/components/Dropdown/DropdownOverlay.web.js.map +1 -1
  111. package/build/lib/web/production/components/Dropdown/dropdownComponentIds.js +2 -1
  112. package/build/lib/web/production/components/Dropdown/dropdownComponentIds.js.map +1 -1
  113. package/build/lib/web/production/components/Dropdown/dropdownUtils.js +1 -1
  114. package/build/lib/web/production/components/Dropdown/dropdownUtils.js.map +1 -1
  115. package/build/lib/web/production/components/Dropdown/useDropdown.js.map +1 -1
  116. package/build/lib/web/production/components/Input/BaseInput/BaseInputVisuals.js +1 -1
  117. package/build/lib/web/production/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
  118. package/build/lib/web/production/components/Input/SearchInput/SearchInput.js +180 -0
  119. package/build/lib/web/production/components/Input/SearchInput/SearchInput.js.map +1 -0
  120. package/build/lib/web/production/components/Input/SearchInput/index.js +2 -0
  121. package/build/lib/web/production/components/Input/SearchInput/index.js.map +1 -0
  122. package/build/lib/web/production/components/ProgressBar/CircularProgressBar.web.js +5 -3
  123. package/build/lib/web/production/components/ProgressBar/CircularProgressBar.web.js.map +1 -1
  124. package/build/lib/web/production/components/ProgressBar/ProgressBar.js +1 -1
  125. package/build/lib/web/production/components/ProgressBar/ProgressBar.js.map +1 -1
  126. package/build/lib/web/production/components/index.js +5 -0
  127. package/build/lib/web/production/components/index.js.map +1 -1
  128. package/build/lib/web/production/tokens/global/size.js +2 -0
  129. package/build/lib/web/production/tokens/global/size.js.map +1 -1
  130. package/build/lib/web/production/tokens/theme/bladeTheme.js +6 -6
  131. package/build/lib/web/production/tokens/theme/bladeTheme.js.map +1 -1
  132. package/build/lib/web/production/utils/metaAttribute/metaConstants.js +3 -0
  133. package/build/lib/web/production/utils/metaAttribute/metaConstants.js.map +1 -1
  134. package/build/types/components/index.d.ts +328 -147
  135. package/build/types/components/index.native.d.ts +282 -147
  136. package/build/types/tokens/index.d.ts +2 -0
  137. package/build/types/tokens/index.native.d.ts +2 -0
  138. package/package.json +1 -1
@@ -0,0 +1,125 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
3
+ import 'react';
4
+ import { StyledAvatar } from './StyledAvatar.js';
5
+ import { useAvatarGroupContext } from './AvatarGroupContext.js';
6
+ import { AvatarButton } from './AvatarButton.js';
7
+ import '../Box/styledProps/index.js';
8
+ import '../../utils/metaAttribute/index.js';
9
+ import '../../utils/assignWithoutSideEffects/index.js';
10
+ import '../../utils/logger/index.js';
11
+ import '../Icons/index.js';
12
+ import { jsx } from 'react/jsx-runtime';
13
+ import { throwBladeError } from '../../utils/logger/logger.js';
14
+ import UserIcon from '../Icons/UserIcon/UserIcon.js';
15
+ import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
16
+ import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
17
+ import { getStyledProps } from '../Box/styledProps/getStyledProps.js';
18
+ import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
19
+
20
+ var _excluded = ["name", "color", "size", "variant", "icon", "href", "target", "rel", "src", "alt", "srcSet", "crossOrigin", "referrerPolicy", "testID"];
21
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
22
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
23
+ var getInitials = function getInitials(name) {
24
+ // Combine first and last name initials
25
+ var names = name.trim().toUpperCase().split(' ');
26
+ if (names.length === 1) {
27
+ return names[0].substring(0, 2);
28
+ }
29
+ return names[0][0] + names[names.length - 1][0];
30
+ };
31
+ var _Avatar = function _Avatar(_ref) {
32
+ var _groupProps$size;
33
+ var name = _ref.name,
34
+ _ref$color = _ref.color,
35
+ color = _ref$color === void 0 ? 'neutral' : _ref$color,
36
+ _ref$size = _ref.size,
37
+ size = _ref$size === void 0 ? 'medium' : _ref$size,
38
+ _ref$variant = _ref.variant,
39
+ variant = _ref$variant === void 0 ? 'circle' : _ref$variant,
40
+ icon = _ref.icon,
41
+ href = _ref.href,
42
+ target = _ref.target,
43
+ rel = _ref.rel,
44
+ src = _ref.src,
45
+ alt = _ref.alt,
46
+ srcSet = _ref.srcSet,
47
+ crossOrigin = _ref.crossOrigin,
48
+ referrerPolicy = _ref.referrerPolicy,
49
+ testID = _ref.testID,
50
+ styledProps = _objectWithoutProperties(_ref, _excluded);
51
+ if (true) {
52
+ if (src && !alt && !name) {
53
+ throwBladeError({
54
+ moduleName: 'Avatar',
55
+ message: '"alt" or "name" prop is required when the "src" prop is provided.'
56
+ });
57
+ }
58
+ }
59
+ var groupProps = useAvatarGroupContext();
60
+ var avatarSize = (_groupProps$size = groupProps === null || groupProps === void 0 ? void 0 : groupProps.size) !== null && _groupProps$size !== void 0 ? _groupProps$size : size;
61
+ var commonButtonProps = {
62
+ variant: variant,
63
+ color: color,
64
+ size: avatarSize,
65
+ href: href,
66
+ target: target,
67
+ rel: rel
68
+ };
69
+ var getChildrenToRender = function getChildrenToRender() {
70
+ if (src) {
71
+ return /*#__PURE__*/jsx(AvatarButton, _objectSpread(_objectSpread({}, commonButtonProps), {}, {
72
+ imgProps: {
73
+ src: src,
74
+ alt: alt !== null && alt !== void 0 ? alt : name,
75
+ srcSet: srcSet,
76
+ crossOrigin: crossOrigin,
77
+ referrerPolicy: referrerPolicy
78
+ }
79
+ }));
80
+ }
81
+ if (name && !src) {
82
+ return /*#__PURE__*/jsx(AvatarButton, _objectSpread(_objectSpread({}, commonButtonProps), {}, {
83
+ children: getInitials(name)
84
+ }));
85
+ }
86
+ return /*#__PURE__*/jsx(AvatarButton, _objectSpread(_objectSpread({}, commonButtonProps), {}, {
87
+ icon: icon !== null && icon !== void 0 ? icon : UserIcon
88
+ }));
89
+ };
90
+ return /*#__PURE__*/jsx(StyledAvatar, _objectSpread(_objectSpread(_objectSpread({}, metaAttribute({
91
+ name: MetaConstants.Avatar,
92
+ testID: testID
93
+ })), getStyledProps(styledProps)), {}, {
94
+ backgroundColor: "surface.background.gray.intense",
95
+ variant: variant,
96
+ size: avatarSize,
97
+ children: getChildrenToRender()
98
+ }));
99
+ };
100
+
101
+ /**
102
+ * ### Avatar Component
103
+ *
104
+ * An avatar component is a standardized visual representation of a user or entity.
105
+ *
106
+ * ---
107
+ *
108
+ * #### Usage
109
+ *
110
+ * ```jsx
111
+ <Avatar name="Nitin Kumar" src="https://avatars.githubusercontent.com/u/46647141?v=4" />
112
+ * ```
113
+ *
114
+ * ---
115
+ *
116
+ * Checkout {@link https://blade.razorpay.com/?path=/docs/components-avatar-avatar Avatar Documentation}
117
+ *
118
+ */
119
+ var Avatar = /*#__PURE__*/assignWithoutSideEffects(_Avatar, {
120
+ displayName: 'Avatar',
121
+ componentId: 'Avatar'
122
+ });
123
+
124
+ export { Avatar };
125
+ //# sourceMappingURL=Avatar.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Avatar.web.js","sources":["../../../../../../src/components/Avatar/Avatar.web.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport React from 'react';\nimport type { AvatarProps } from './types';\nimport { StyledAvatar } from './StyledAvatar';\nimport { useAvatarGroupContext } from './AvatarGroupContext';\nimport { AvatarButton } from './AvatarButton';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { throwBladeError } from '~utils/logger';\nimport { UserIcon } from '~components/Icons';\n\nconst getInitials = (name: string): string => {\n // Combine first and last name initials\n const names = name.trim().toUpperCase().split(' ');\n\n if (names.length === 1) {\n return names[0].substring(0, 2);\n }\n return names[0][0] + names[names.length - 1][0];\n};\n\nconst _Avatar = ({\n name,\n color = 'neutral',\n size = 'medium',\n variant = 'circle',\n icon,\n href,\n target,\n rel,\n // Image Props\n src,\n alt,\n srcSet,\n crossOrigin,\n referrerPolicy,\n testID,\n ...styledProps\n}: AvatarProps): ReactElement => {\n if (__DEV__) {\n if (src && !alt && !name) {\n throwBladeError({\n moduleName: 'Avatar',\n message: '\"alt\" or \"name\" prop is required when the \"src\" prop is provided.',\n });\n }\n }\n\n const groupProps = useAvatarGroupContext();\n const avatarSize = groupProps?.size ?? size;\n\n const commonButtonProps = {\n variant,\n color,\n size: avatarSize,\n href,\n target,\n rel,\n };\n\n const getChildrenToRender = (): React.ReactElement => {\n if (src) {\n return (\n <AvatarButton\n {...commonButtonProps}\n imgProps={{\n src,\n alt: alt ?? name,\n srcSet,\n crossOrigin,\n referrerPolicy,\n }}\n />\n );\n }\n\n if (name && !src) {\n return <AvatarButton {...commonButtonProps}>{getInitials(name)}</AvatarButton>;\n }\n\n return <AvatarButton {...commonButtonProps} icon={icon ?? UserIcon} />;\n };\n\n return (\n <StyledAvatar\n {...metaAttribute({ name: MetaConstants.Avatar, testID })}\n {...getStyledProps(styledProps)}\n backgroundColor=\"surface.background.gray.intense\"\n variant={variant}\n size={avatarSize}\n >\n {getChildrenToRender()}\n </StyledAvatar>\n );\n};\n\n/**\n * ### Avatar Component\n * \n * An avatar component is a standardized visual representation of a user or entity.\n * \n * ---\n * \n * #### Usage\n * \n * ```jsx\n <Avatar name=\"Nitin Kumar\" src=\"https://avatars.githubusercontent.com/u/46647141?v=4\" /> \n * ```\n *\n * ---\n *\n * Checkout {@link https://blade.razorpay.com/?path=/docs/components-avatar-avatar Avatar Documentation}\n * \n */\nconst Avatar = assignWithoutSideEffects(_Avatar, {\n displayName: 'Avatar',\n componentId: 'Avatar',\n});\n\nexport { Avatar };\nexport type { AvatarProps };\n"],"names":["getInitials","name","names","trim","toUpperCase","split","length","substring","_Avatar","_ref","_groupProps$size","_ref$color","color","_ref$size","size","_ref$variant","variant","icon","href","target","rel","src","alt","srcSet","crossOrigin","referrerPolicy","testID","styledProps","_objectWithoutProperties","_excluded","throwBladeError","moduleName","message","groupProps","useAvatarGroupContext","avatarSize","commonButtonProps","getChildrenToRender","_jsx","AvatarButton","_objectSpread","imgProps","children","UserIcon","StyledAvatar","metaAttribute","MetaConstants","Avatar","getStyledProps","backgroundColor","assignWithoutSideEffects","displayName","componentId"],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import 'react';
3
+ import { StyledAvatarButton } from './StyledAvatarButton.js';
4
+ import { avatarIconSizeTokens, avatarTextSizeMapping } from './avatarTokens.js';
5
+ import '../Box/BaseBox/index.js';
6
+ import '../../utils/makeAccessible/index.js';
7
+ import '../Typography/index.js';
8
+ import { getTextColorToken } from '../Button/BaseButton/BaseButton.js';
9
+ import { jsx, jsxs } from 'react/jsx-runtime';
10
+ import { makeAccessible } from '../../utils/makeAccessible/makeAccessible.web.js';
11
+ import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
12
+ import { Heading } from '../Typography/Heading/Heading.js';
13
+ import { Text } from '../Typography/Text/Text.js';
14
+
15
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
17
+ var AvatarButton = function AvatarButton(_ref) {
18
+ var href = _ref.href,
19
+ target = _ref.target,
20
+ rel = _ref.rel,
21
+ _ref$variant = _ref.variant,
22
+ variant = _ref$variant === void 0 ? 'circle' : _ref$variant,
23
+ _ref$color = _ref.color,
24
+ color = _ref$color === void 0 ? 'neutral' : _ref$color,
25
+ _ref$size = _ref.size,
26
+ size = _ref$size === void 0 ? 'medium' : _ref$size,
27
+ Icon = _ref.icon,
28
+ imgProps = _ref.imgProps,
29
+ children = _ref.children;
30
+ var isLink = Boolean(href);
31
+ var defaultRel = target === '_blank' ? 'noreferrer noopener' : undefined;
32
+ var iconColor = getTextColorToken({
33
+ property: 'icon',
34
+ variant: 'secondary',
35
+ color: color,
36
+ state: 'default'
37
+ });
38
+ var textColor = getTextColorToken({
39
+ property: 'text',
40
+ variant: 'secondary',
41
+ color: color,
42
+ state: 'default'
43
+ });
44
+ return /*#__PURE__*/jsx(StyledAvatarButton, {
45
+ as: href ? 'a' : 'button',
46
+ size: size,
47
+ color: color,
48
+ href: href,
49
+ variant: variant,
50
+ target: target,
51
+ rel: rel !== null && rel !== void 0 ? rel : defaultRel,
52
+ accessibilityProps: _objectSpread({}, makeAccessible({
53
+ role: isLink ? 'link' : 'button'
54
+ })),
55
+ children: /*#__PURE__*/jsxs(BaseBox, {
56
+ display: "flex",
57
+ flexDirection: "row",
58
+ alignItems: "center",
59
+ justifyContent: "center",
60
+ zIndex: 1,
61
+ height: "100%",
62
+ children: [Icon ? /*#__PURE__*/jsx(BaseBox, {
63
+ display: "flex",
64
+ justifyContent: "center",
65
+ alignItems: "center",
66
+ children: /*#__PURE__*/jsx(Icon, {
67
+ size: avatarIconSizeTokens[size],
68
+ color: iconColor
69
+ })
70
+ }) : null, imgProps !== null && imgProps !== void 0 && imgProps.src ? /*#__PURE__*/jsx("img", _objectSpread({}, imgProps)) : null, size === 'xlarge' ? /*#__PURE__*/jsx(Heading, {
71
+ size: avatarTextSizeMapping[size],
72
+ weight: "semibold",
73
+ color: textColor,
74
+ children: children
75
+ }) : /*#__PURE__*/jsx(Text, {
76
+ size: avatarTextSizeMapping[size],
77
+ weight: "semibold",
78
+ color: textColor,
79
+ children: children
80
+ })]
81
+ })
82
+ });
83
+ };
84
+
85
+ export { AvatarButton };
86
+ //# sourceMappingURL=AvatarButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AvatarButton.js","sources":["../../../../../../src/components/Avatar/AvatarButton.tsx"],"sourcesContent":["import React from 'react';\nimport { StyledAvatarButton } from './StyledAvatarButton';\nimport type { AvatarButtonProps } from './types';\nimport { avatarTextSizeMapping, avatarIconSizeTokens } from './avatarTokens';\nimport BaseBox from '~components/Box/BaseBox';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { Heading, Text } from '~components/Typography';\nimport { getTextColorToken } from '~components/Button/BaseButton/BaseButton';\nimport type { IconColor } from '~components/Button/BaseButton/types';\nimport type { BaseTextProps } from '~components/Typography/BaseText/types';\n\nconst AvatarButton = ({\n href,\n target,\n rel,\n variant = 'circle',\n color = 'neutral',\n size = 'medium',\n icon: Icon,\n imgProps,\n children,\n}: AvatarButtonProps): React.ReactElement => {\n const isLink = Boolean(href);\n const defaultRel = target === '_blank' ? 'noreferrer noopener' : undefined;\n const iconColor = getTextColorToken({\n property: 'icon',\n variant: 'secondary',\n color,\n state: 'default',\n }) as IconColor;\n const textColor = getTextColorToken({\n property: 'text',\n variant: 'secondary',\n color,\n state: 'default',\n }) as BaseTextProps['color'];\n\n return (\n <StyledAvatarButton\n as={href ? 'a' : 'button'}\n size={size}\n color={color}\n href={href}\n variant={variant}\n target={target}\n rel={rel ?? defaultRel}\n accessibilityProps={{\n ...makeAccessible({\n role: isLink ? 'link' : 'button',\n }),\n }}\n >\n <BaseBox\n display=\"flex\"\n flexDirection=\"row\"\n alignItems=\"center\"\n justifyContent=\"center\"\n zIndex={1}\n height=\"100%\"\n >\n {Icon ? (\n <BaseBox display=\"flex\" justifyContent=\"center\" alignItems=\"center\">\n <Icon size={avatarIconSizeTokens[size]} color={iconColor} />\n </BaseBox>\n ) : null}\n\n {/* eslint-disable-next-line jsx-a11y/alt-text -- alt text is provided in imgProps */}\n {imgProps?.src ? <img {...imgProps} /> : null}\n\n {size === 'xlarge' ? (\n <Heading size={avatarTextSizeMapping[size]} weight=\"semibold\" color={textColor}>\n {children}\n </Heading>\n ) : (\n <Text size={avatarTextSizeMapping[size]} weight=\"semibold\" color={textColor}>\n {children}\n </Text>\n )}\n </BaseBox>\n </StyledAvatarButton>\n );\n};\n\nexport { AvatarButton };\n"],"names":["AvatarButton","_ref","href","target","rel","_ref$variant","variant","_ref$color","color","_ref$size","size","Icon","icon","imgProps","children","isLink","Boolean","defaultRel","undefined","iconColor","getTextColorToken","property","state","textColor","_jsx","StyledAvatarButton","as","accessibilityProps","_objectSpread","makeAccessible","role","_jsxs","BaseBox","display","flexDirection","alignItems","justifyContent","zIndex","height","avatarIconSizeTokens","src","Heading","avatarTextSizeMapping","weight","Text"],"mappings":"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"}
@@ -0,0 +1,114 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
3
+ import React__default from 'react';
4
+ import { StyledAvatarGroup } from './StyledAvatarGroup.js';
5
+ import { StyledAvatar } from './StyledAvatar.js';
6
+ import { AvatarGroupProvider } from './AvatarGroupContext.js';
7
+ import { AvatarButton } from './AvatarButton.js';
8
+ import '../Box/styledProps/index.js';
9
+ import '../../utils/metaAttribute/index.js';
10
+ import '../../utils/assignWithoutSideEffects/index.js';
11
+ import '../../utils/logger/index.js';
12
+ import '../../utils/isValidAllowedChildren/index.js';
13
+ import { jsx } from 'react/jsx-runtime';
14
+ import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
15
+ import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
16
+ import { getStyledProps } from '../Box/styledProps/getStyledProps.js';
17
+ import { isValidAllowedChildren } from '../../utils/isValidAllowedChildren/isValidAllowedChildren.js';
18
+ import { throwBladeError } from '../../utils/logger/logger.js';
19
+ import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
20
+
21
+ var _excluded = ["children", "size", "maxCount", "testID"];
22
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24
+ var _AvatarGroup = function _AvatarGroup(_ref) {
25
+ var children = _ref.children,
26
+ _ref$size = _ref.size,
27
+ size = _ref$size === void 0 ? 'medium' : _ref$size,
28
+ maxCount = _ref.maxCount,
29
+ testID = _ref.testID,
30
+ styledProps = _objectWithoutProperties(_ref, _excluded);
31
+ var contextValue = {
32
+ size: size
33
+ };
34
+ var childrenCount = React__default.Children.count(children);
35
+ return /*#__PURE__*/jsx(AvatarGroupProvider, {
36
+ value: contextValue,
37
+ children: /*#__PURE__*/jsx(StyledAvatarGroup, _objectSpread(_objectSpread(_objectSpread({}, metaAttribute({
38
+ name: MetaConstants.AvatarGroup,
39
+ testID: testID
40
+ })), getStyledProps(styledProps)), {}, {
41
+ role: "group",
42
+ size: size,
43
+ children: React__default.Children.map(children, function (child, index) {
44
+ if (true) {
45
+ // throw error if child is not an Avatar
46
+ if (!isValidAllowedChildren(child, 'Avatar')) {
47
+ throwBladeError({
48
+ moduleName: 'AvatarGroup',
49
+ message: "Only \"Avatar\" component is allowed as a children."
50
+ });
51
+ }
52
+ }
53
+ if (maxCount && maxCount <= childrenCount) {
54
+ if (index === maxCount) {
55
+ return /*#__PURE__*/jsx(StyledAvatar, _objectSpread(_objectSpread({}, metaAttribute({
56
+ name: MetaConstants.Avatar,
57
+ testID: testID
58
+ })), {}, {
59
+ backgroundColor: "surface.background.gray.intense",
60
+ size: size,
61
+ variant: "circle",
62
+ children: /*#__PURE__*/jsx(AvatarButton, {
63
+ variant: "circle",
64
+ color: "neutral",
65
+ size: size,
66
+ children: "+".concat(String(childrenCount - maxCount))
67
+ })
68
+ }));
69
+ }
70
+ if (index > maxCount) {
71
+ return null;
72
+ }
73
+ }
74
+ return child;
75
+ })
76
+ }))
77
+ });
78
+ };
79
+
80
+ /**
81
+ * ### AvatarGroup Component
82
+ *
83
+ * The AvatarGroup component is used to group Avatars together.
84
+ *
85
+ * ---
86
+ *
87
+ * #### Usage
88
+ *
89
+ * ```jsx
90
+ const App = () => {
91
+ return (
92
+ <AvatarGroup>
93
+ <Avatar name="Kamlesh Chandnani" />
94
+ <Avatar name="Rama Krushna Behera" />
95
+ <Avatar name="Chaitanya Vikas Deorukhkar" />
96
+ <Avatar name="Anurag Hazra" />
97
+ <Avatar name="Nitin Kumar" />
98
+ </AvatarGroup>
99
+ );
100
+ }
101
+ * ```
102
+ *
103
+ * ---
104
+ *
105
+ * Checkout {@link https://blade.razorpay.com/?path=/docs/components-avatar-avatargroup AvatarGroup Documentation}
106
+ *
107
+ */
108
+ var AvatarGroup = /*#__PURE__*/assignWithoutSideEffects(_AvatarGroup, {
109
+ displayName: 'AvatarGroup',
110
+ componentId: 'AvatarGroup'
111
+ });
112
+
113
+ export { AvatarGroup };
114
+ //# sourceMappingURL=AvatarGroup.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AvatarGroup.web.js","sources":["../../../../../../src/components/Avatar/AvatarGroup.web.tsx"],"sourcesContent":["import React from 'react';\nimport type { AvatarGroupProps, AvatarGroupContextType } from './types';\nimport { StyledAvatarGroup } from './StyledAvatarGroup';\nimport { StyledAvatar } from './StyledAvatar';\nimport { AvatarGroupProvider } from './AvatarGroupContext';\nimport { AvatarButton } from './AvatarButton';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { throwBladeError } from '~utils/logger';\nimport { isValidAllowedChildren } from '~utils/isValidAllowedChildren';\n\nconst _AvatarGroup = ({\n children,\n size = 'medium',\n maxCount,\n testID,\n ...styledProps\n}: AvatarGroupProps): React.ReactElement => {\n const contextValue: AvatarGroupContextType = {\n size,\n };\n const childrenCount = React.Children.count(children);\n\n return (\n <AvatarGroupProvider value={contextValue}>\n <StyledAvatarGroup\n {...metaAttribute({ name: MetaConstants.AvatarGroup, testID })}\n {...getStyledProps(styledProps)}\n role=\"group\"\n size={size}\n >\n {React.Children.map(children, (child, index) => {\n if (__DEV__) {\n // throw error if child is not an Avatar\n if (!isValidAllowedChildren(child, 'Avatar')) {\n throwBladeError({\n moduleName: 'AvatarGroup',\n message: `Only \"Avatar\" component is allowed as a children.`,\n });\n }\n }\n\n if (maxCount && maxCount <= childrenCount) {\n if (index === maxCount) {\n return (\n <StyledAvatar\n {...metaAttribute({ name: MetaConstants.Avatar, testID })}\n backgroundColor=\"surface.background.gray.intense\"\n size={size}\n variant=\"circle\"\n >\n <AvatarButton variant=\"circle\" color=\"neutral\" size={size}>\n {`+${String(childrenCount - maxCount)}`}\n </AvatarButton>\n </StyledAvatar>\n );\n }\n\n if (index > maxCount) {\n return null;\n }\n }\n\n return child;\n })}\n </StyledAvatarGroup>\n </AvatarGroupProvider>\n );\n};\n\n/**\n * ### AvatarGroup Component\n * \n * The AvatarGroup component is used to group Avatars together.\n * \n * ---\n * \n * #### Usage\n * \n * ```jsx\n const App = () => {\n return (\n <AvatarGroup>\n <Avatar name=\"Kamlesh Chandnani\" />\n <Avatar name=\"Rama Krushna Behera\" />\n <Avatar name=\"Chaitanya Vikas Deorukhkar\" />\n <Avatar name=\"Anurag Hazra\" />\n <Avatar name=\"Nitin Kumar\" />\n </AvatarGroup>\n );\n }\n * ```\n *\n * ---\n *\n * Checkout {@link https://blade.razorpay.com/?path=/docs/components-avatar-avatargroup AvatarGroup Documentation}\n * \n */\nconst AvatarGroup = assignWithoutSideEffects(_AvatarGroup, {\n displayName: 'AvatarGroup',\n componentId: 'AvatarGroup',\n});\n\nexport { AvatarGroup };\nexport type { AvatarGroupProps };\n"],"names":["_AvatarGroup","_ref","children","_ref$size","size","maxCount","testID","styledProps","_objectWithoutProperties","_excluded","contextValue","childrenCount","React","Children","count","_jsx","AvatarGroupProvider","value","StyledAvatarGroup","_objectSpread","metaAttribute","name","MetaConstants","AvatarGroup","getStyledProps","role","map","child","index","isValidAllowedChildren","throwBladeError","moduleName","message","StyledAvatar","Avatar","backgroundColor","variant","AvatarButton","color","concat","String","assignWithoutSideEffects","displayName","componentId"],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import React__default from 'react';
2
+
3
+ var AvatarGroupContext = /*#__PURE__*/React__default.createContext({});
4
+ var AvatarGroupProvider = AvatarGroupContext.Provider;
5
+ var useAvatarGroupContext = function useAvatarGroupContext() {
6
+ var context = React__default.useContext(AvatarGroupContext);
7
+ return context;
8
+ };
9
+
10
+ export { AvatarGroupProvider, useAvatarGroupContext };
11
+ //# sourceMappingURL=AvatarGroupContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AvatarGroupContext.js","sources":["../../../../../../src/components/Avatar/AvatarGroupContext.tsx"],"sourcesContent":["import React from 'react';\nimport type { AvatarGroupContextType } from './types';\n\nconst AvatarGroupContext = React.createContext<AvatarGroupContextType>({});\nconst AvatarGroupProvider = AvatarGroupContext.Provider;\n\nconst useAvatarGroupContext = (): AvatarGroupContextType => {\n const context = React.useContext(AvatarGroupContext);\n return context;\n};\n\nexport { useAvatarGroupContext, AvatarGroupProvider };\n"],"names":["AvatarGroupContext","React","createContext","AvatarGroupProvider","Provider","useAvatarGroupContext","context","useContext"],"mappings":";;AAGA,IAAMA,kBAAkB,gBAAGC,cAAK,CAACC,aAAa,CAAyB,EAAE,CAAC,CAAA;AAC1E,IAAMC,mBAAmB,GAAGH,kBAAkB,CAACI,SAAQ;AAEvD,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqBA,GAAiC;AAC1D,EAAA,IAAMC,OAAO,GAAGL,cAAK,CAACM,UAAU,CAACP,kBAAkB,CAAC,CAAA;AACpD,EAAA,OAAOM,OAAO,CAAA;AAChB;;;;"}
@@ -0,0 +1,30 @@
1
+ import styled from 'styled-components';
2
+ import { avatarSizeTokens, avatarBorderRadiusTokens } from './avatarTokens.js';
3
+ import '../Box/BaseBox/index.js';
4
+ import '../../utils/index.js';
5
+ import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
6
+ import { makeSize } from '../../utils/makeSize/makeSize.js';
7
+ import { makeBorderSize } from '../../utils/makeBorderSize/makeBorderSize.js';
8
+
9
+ var StyledAvatar = /*#__PURE__*/styled(BaseBox).withConfig({
10
+ displayName: "StyledAvatar",
11
+ componentId: "sc-127ewkg-0"
12
+ })(function (_ref) {
13
+ var theme = _ref.theme,
14
+ variant = _ref.variant,
15
+ size = _ref.size;
16
+ return {
17
+ display: 'flex',
18
+ width: makeSize(avatarSizeTokens[size]),
19
+ height: makeSize(avatarSizeTokens[size]),
20
+ borderRadius: makeBorderSize(theme.border.radius[avatarBorderRadiusTokens[variant]]),
21
+ outline: "".concat(makeBorderSize(theme.border.width.thinner), " solid ").concat(theme.colors.surface.border.gray.subtle),
22
+ '&:hover': {
23
+ outline: "".concat(makeBorderSize(theme.border.width.thick), " solid ").concat(theme.colors.surface.border.gray.muted),
24
+ borderColor: theme.colors.surface.border.gray.muted
25
+ }
26
+ };
27
+ });
28
+
29
+ export { StyledAvatar };
30
+ //# sourceMappingURL=StyledAvatar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StyledAvatar.js","sources":["../../../../../../src/components/Avatar/StyledAvatar.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport type { StyledAvatarProps } from './types';\nimport { avatarSizeTokens, avatarBorderRadiusTokens } from './avatarTokens';\nimport BaseBox from '~components/Box/BaseBox';\nimport { makeBorderSize, makeSize } from '~utils';\n\nconst StyledAvatar = styled(BaseBox)<StyledAvatarProps>(({ theme, variant, size }) => {\n return {\n display: 'flex',\n width: makeSize(avatarSizeTokens[size]),\n height: makeSize(avatarSizeTokens[size]),\n borderRadius: makeBorderSize(theme.border.radius[avatarBorderRadiusTokens[variant]]),\n outline: `${makeBorderSize(theme.border.width.thinner)} solid ${\n theme.colors.surface.border.gray.subtle\n }`,\n\n '&:hover': {\n outline: `${makeBorderSize(theme.border.width.thick)} solid ${\n theme.colors.surface.border.gray.muted\n }`,\n borderColor: theme.colors.surface.border.gray.muted,\n },\n };\n});\n\nexport { StyledAvatar };\n"],"names":["StyledAvatar","styled","BaseBox","withConfig","displayName","componentId","_ref","theme","variant","size","display","width","makeSize","avatarSizeTokens","height","borderRadius","makeBorderSize","border","radius","avatarBorderRadiusTokens","outline","concat","thinner","colors","surface","gray","subtle","thick","muted","borderColor"],"mappings":";;;;;;;;AAMA,IAAMA,YAAY,gBAAGC,MAAM,CAACC,OAAO,CAAC,CAAAC,UAAA,CAAA;EAAAC,WAAA,EAAA,cAAA;EAAAC,WAAA,EAAA,cAAA;AAAA,CAAoB,CAAA,CAAA,UAAAC,IAAA,EAA8B;AAAA,EAAA,IAA3BC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,OAAO,GAAAF,IAAA,CAAPE,OAAO;IAAEC,IAAI,GAAAH,IAAA,CAAJG,IAAI,CAAA;EAC7E,OAAO;AACLC,IAAAA,OAAO,EAAE,MAAM;AACfC,IAAAA,KAAK,EAAEC,QAAQ,CAACC,gBAAgB,CAACJ,IAAI,CAAC,CAAC;AACvCK,IAAAA,MAAM,EAAEF,QAAQ,CAACC,gBAAgB,CAACJ,IAAI,CAAC,CAAC;AACxCM,IAAAA,YAAY,EAAEC,cAAc,CAACT,KAAK,CAACU,MAAM,CAACC,MAAM,CAACC,wBAAwB,CAACX,OAAO,CAAC,CAAC,CAAC;IACpFY,OAAO,EAAA,EAAA,CAAAC,MAAA,CAAKL,cAAc,CAACT,KAAK,CAACU,MAAM,CAACN,KAAK,CAACW,OAAO,CAAC,EAAAD,SAAAA,CAAAA,CAAAA,MAAA,CACpDd,KAAK,CAACgB,MAAM,CAACC,OAAO,CAACP,MAAM,CAACQ,IAAI,CAACC,MAAM,CACvC;AAEF,IAAA,SAAS,EAAE;MACTN,OAAO,EAAA,EAAA,CAAAC,MAAA,CAAKL,cAAc,CAACT,KAAK,CAACU,MAAM,CAACN,KAAK,CAACgB,KAAK,CAAC,EAAAN,SAAAA,CAAAA,CAAAA,MAAA,CAClDd,KAAK,CAACgB,MAAM,CAACC,OAAO,CAACP,MAAM,CAACQ,IAAI,CAACG,KAAK,CACtC;MACFC,WAAW,EAAEtB,KAAK,CAACgB,MAAM,CAACC,OAAO,CAACP,MAAM,CAACQ,IAAI,CAACG,KAAAA;AAChD,KAAA;GACD,CAAA;AACH,CAAC;;;;"}
@@ -0,0 +1,48 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import styled from 'styled-components';
3
+ import { avatarSizeTokens, avatarBorderRadiusTokens, avatarColorTokens } from './avatarTokens.js';
4
+ import '../../utils/index.js';
5
+ import getIn from '../../utils/lodashButBetter/get.js';
6
+ import '../../utils/getFocusRingStyles/index.js';
7
+ import { makeSize } from '../../utils/makeSize/makeSize.js';
8
+ import { makeBorderSize } from '../../utils/makeBorderSize/makeBorderSize.js';
9
+ import { getFocusRingStyles } from '../../utils/getFocusRingStyles/getFocusRingStyles.web.js';
10
+
11
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
12
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
13
+ var StyledAvatarButton = /*#__PURE__*/styled.button.withConfig({
14
+ displayName: "StyledAvatarButton",
15
+ componentId: "sc-1w6qflj-0"
16
+ })(function (_ref) {
17
+ var theme = _ref.theme,
18
+ _ref$size = _ref.size,
19
+ size = _ref$size === void 0 ? 'medium' : _ref$size,
20
+ _ref$variant = _ref.variant,
21
+ variant = _ref$variant === void 0 ? 'circle' : _ref$variant,
22
+ _ref$color = _ref.color,
23
+ color = _ref$color === void 0 ? 'neutral' : _ref$color;
24
+ return {
25
+ textAlign: 'center',
26
+ textDecoration: 'none',
27
+ cursor: 'pointer',
28
+ minHeight: makeSize(avatarSizeTokens[size]),
29
+ height: makeSize(avatarSizeTokens[size]),
30
+ width: makeSize(avatarSizeTokens[size]),
31
+ border: 'none',
32
+ borderRadius: makeBorderSize(theme.border.radius[avatarBorderRadiusTokens[variant]]),
33
+ backgroundColor: getIn(theme.colors, avatarColorTokens.background[color]),
34
+ img: {
35
+ display: 'block',
36
+ height: avatarSizeTokens[size],
37
+ width: avatarSizeTokens[size],
38
+ borderRadius: makeBorderSize(theme.border.radius[avatarBorderRadiusTokens[variant]]),
39
+ objectFit: 'cover'
40
+ },
41
+ '&:focus-visible': _objectSpread({}, getFocusRingStyles({
42
+ theme: theme
43
+ }))
44
+ };
45
+ });
46
+
47
+ export { StyledAvatarButton };
48
+ //# sourceMappingURL=StyledAvatarButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StyledAvatarButton.js","sources":["../../../../../../src/components/Avatar/StyledAvatarButton.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport type { AvatarButtonProps } from './types';\nimport { avatarSizeTokens, avatarColorTokens, avatarBorderRadiusTokens } from './avatarTokens';\nimport { makeBorderSize, makeSize } from '~utils';\nimport getIn from '~utils/lodashButBetter/get';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\n\nconst StyledAvatarButton = styled.button<AvatarButtonProps>(\n ({ theme, size = 'medium', variant = 'circle', color = 'neutral' }) => {\n return {\n textAlign: 'center',\n textDecoration: 'none',\n cursor: 'pointer',\n minHeight: makeSize(avatarSizeTokens[size]),\n height: makeSize(avatarSizeTokens[size]),\n width: makeSize(avatarSizeTokens[size]),\n border: 'none',\n borderRadius: makeBorderSize(theme.border.radius[avatarBorderRadiusTokens[variant]]),\n backgroundColor: getIn(theme.colors, avatarColorTokens.background[color]),\n\n img: {\n display: 'block',\n height: avatarSizeTokens[size],\n width: avatarSizeTokens[size],\n borderRadius: makeBorderSize(theme.border.radius[avatarBorderRadiusTokens[variant]]),\n objectFit: 'cover',\n },\n\n '&:focus-visible': {\n ...getFocusRingStyles({ theme }),\n },\n };\n },\n);\n\nexport { StyledAvatarButton };\n"],"names":["StyledAvatarButton","styled","button","withConfig","displayName","componentId","_ref","theme","_ref$size","size","_ref$variant","variant","_ref$color","color","textAlign","textDecoration","cursor","minHeight","makeSize","avatarSizeTokens","height","width","border","borderRadius","makeBorderSize","radius","avatarBorderRadiusTokens","backgroundColor","getIn","colors","avatarColorTokens","background","img","display","objectFit","_objectSpread","getFocusRingStyles"],"mappings":";;;;;;;;;;;;AAOA,IAAMA,kBAAkB,gBAAGC,MAAM,CAACC,MAAM,CAAAC,UAAA,CAAA;EAAAC,WAAA,EAAA,oBAAA;EAAAC,WAAA,EAAA,cAAA;AAAA,CACtC,CAAA,CAAA,UAAAC,IAAA,EAAuE;AAAA,EAAA,IAApEC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAAC,SAAA,GAAAF,IAAA,CAAEG,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAAE,YAAA,GAAAJ,IAAA,CAAEK,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,YAAA;IAAAE,UAAA,GAAAN,IAAA,CAAEO,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,UAAA,CAAA;EAC9D,OAAO;AACLE,IAAAA,SAAS,EAAE,QAAQ;AACnBC,IAAAA,cAAc,EAAE,MAAM;AACtBC,IAAAA,MAAM,EAAE,SAAS;AACjBC,IAAAA,SAAS,EAAEC,QAAQ,CAACC,gBAAgB,CAACV,IAAI,CAAC,CAAC;AAC3CW,IAAAA,MAAM,EAAEF,QAAQ,CAACC,gBAAgB,CAACV,IAAI,CAAC,CAAC;AACxCY,IAAAA,KAAK,EAAEH,QAAQ,CAACC,gBAAgB,CAACV,IAAI,CAAC,CAAC;AACvCa,IAAAA,MAAM,EAAE,MAAM;AACdC,IAAAA,YAAY,EAAEC,cAAc,CAACjB,KAAK,CAACe,MAAM,CAACG,MAAM,CAACC,wBAAwB,CAACf,OAAO,CAAC,CAAC,CAAC;AACpFgB,IAAAA,eAAe,EAAEC,KAAK,CAACrB,KAAK,CAACsB,MAAM,EAAEC,iBAAiB,CAACC,UAAU,CAAClB,KAAK,CAAC,CAAC;AAEzEmB,IAAAA,GAAG,EAAE;AACHC,MAAAA,OAAO,EAAE,OAAO;AAChBb,MAAAA,MAAM,EAAED,gBAAgB,CAACV,IAAI,CAAC;AAC9BY,MAAAA,KAAK,EAAEF,gBAAgB,CAACV,IAAI,CAAC;AAC7Bc,MAAAA,YAAY,EAAEC,cAAc,CAACjB,KAAK,CAACe,MAAM,CAACG,MAAM,CAACC,wBAAwB,CAACf,OAAO,CAAC,CAAC,CAAC;AACpFuB,MAAAA,SAAS,EAAE,OAAA;KACZ;AAED,IAAA,iBAAiB,EAAAC,aAAA,CACZC,EAAAA,EAAAA,kBAAkB,CAAC;AAAE7B,MAAAA,KAAK,EAALA,KAAAA;AAAM,KAAC,CAAC,CAAA;GAEnC,CAAA;AACH,CAAC;;;;"}
@@ -0,0 +1,24 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import styled from 'styled-components';
3
+ import { avatarSizeTokens } from './avatarTokens.js';
4
+ import '../Box/BaseBox/index.js';
5
+ import '../../utils/index.js';
6
+ import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
7
+ import { makeSize } from '../../utils/makeSize/makeSize.js';
8
+
9
+ var StyledAvatarGroup = /*#__PURE__*/styled(BaseBox).withConfig({
10
+ displayName: "StyledAvatarGroup",
11
+ componentId: "sc-1fkrhuq-0"
12
+ })(function (_ref) {
13
+ var size = _ref.size;
14
+ return _defineProperty({
15
+ display: 'inline-flex',
16
+ flexDirection: 'row'
17
+ }, "> *:not(:first-child)", {
18
+ marginLeft: "-".concat(makeSize(avatarSizeTokens[size] / 2)),
19
+ zIndex: 2
20
+ });
21
+ });
22
+
23
+ export { StyledAvatarGroup };
24
+ //# sourceMappingURL=StyledAvatarGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StyledAvatarGroup.js","sources":["../../../../../../src/components/Avatar/StyledAvatarGroup.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport type { AvatarGroupProps } from './types';\nimport { avatarSizeTokens } from './avatarTokens';\nimport BaseBox from '~components/Box/BaseBox';\nimport { makeSize } from '~utils';\n\nconst StyledAvatarGroup = styled(BaseBox)<{ size: NonNullable<AvatarGroupProps['size']> }>(\n ({ size }) => {\n return {\n display: 'inline-flex',\n flexDirection: 'row',\n\n [`> *:not(:first-child)`]: {\n marginLeft: `-${makeSize(avatarSizeTokens[size] / 2)}`,\n zIndex: 2,\n },\n };\n },\n);\n\nexport { StyledAvatarGroup };\n"],"names":["StyledAvatarGroup","styled","BaseBox","withConfig","displayName","componentId","_ref","size","_defineProperty","display","flexDirection","marginLeft","concat","makeSize","avatarSizeTokens","zIndex"],"mappings":";;;;;;;;AAMA,IAAMA,iBAAiB,gBAAGC,MAAM,CAACC,OAAO,CAAC,CAAAC,UAAA,CAAA;EAAAC,WAAA,EAAA,mBAAA;EAAAC,WAAA,EAAA,cAAA;AAAA,CACvC,CAAA,CAAA,UAAAC,IAAA,EAAc;AAAA,EAAA,IAAXC,IAAI,GAAAD,IAAA,CAAJC,IAAI,CAAA;AACL,EAAA,OAAAC,eAAA,CAAA;AACEC,IAAAA,OAAO,EAAE,aAAa;AACtBC,IAAAA,aAAa,EAAE,KAAA;GAEY,EAAA,uBAAA,EAAA;AACzBC,IAAAA,UAAU,EAAAC,GAAAA,CAAAA,MAAA,CAAMC,QAAQ,CAACC,gBAAgB,CAACP,IAAI,CAAC,GAAG,CAAC,CAAC,CAAE;AACtDQ,IAAAA,MAAM,EAAE,CAAA;GACT,CAAA,CAAA;AAEL,CAAC;;;;"}
@@ -0,0 +1,49 @@
1
+ import '../../tokens/global/index.js';
2
+ import { size } from '../../tokens/global/size.js';
3
+
4
+ var avatarSizeTokens = {
5
+ xsmall: size[20],
6
+ small: size[28],
7
+ medium: size[36],
8
+ large: size[48],
9
+ xlarge: size[56]
10
+ };
11
+ var avatarIconSizeTokens = {
12
+ xsmall: 'small',
13
+ small: 'medium',
14
+ medium: 'medium',
15
+ large: 'large',
16
+ xlarge: 'xlarge'
17
+ };
18
+ var avatarTextSizeMapping = {
19
+ xsmall: 'xsmall',
20
+ small: 'xsmall',
21
+ medium: 'small',
22
+ large: 'medium',
23
+ xlarge: 'medium'
24
+ };
25
+ var avatarColorTokens = {
26
+ text: {
27
+ primary: 'interactive.text.primary.normal',
28
+ positive: 'interactive.text.positive.normal',
29
+ negative: 'interactive.text.negative.normal',
30
+ notice: 'interactive.text.notice.normal',
31
+ information: 'interactive.text.information.normal',
32
+ neutral: 'interactive.text.neutral.normal'
33
+ },
34
+ background: {
35
+ primary: 'interactive.background.primary.faded',
36
+ positive: 'interactive.background.positive.faded',
37
+ negative: 'interactive.background.negative.faded',
38
+ notice: 'interactive.background.notice.faded',
39
+ information: 'interactive.background.information.faded',
40
+ neutral: 'interactive.background.neutral.faded'
41
+ }
42
+ };
43
+ var avatarBorderRadiusTokens = {
44
+ circle: 'max',
45
+ square: 'medium'
46
+ };
47
+
48
+ export { avatarBorderRadiusTokens, avatarColorTokens, avatarIconSizeTokens, avatarSizeTokens, avatarTextSizeMapping };
49
+ //# sourceMappingURL=avatarTokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatarTokens.js","sources":["../../../../../../src/components/Avatar/avatarTokens.ts"],"sourcesContent":["import { size } from '~tokens/global';\n\nconst avatarSizeTokens = {\n xsmall: size[20],\n small: size[28],\n medium: size[36],\n large: size[48],\n xlarge: size[56],\n} as const;\n\nconst avatarIconSizeTokens = {\n xsmall: 'small',\n small: 'medium',\n medium: 'medium',\n large: 'large',\n xlarge: 'xlarge',\n} as const;\n\nconst avatarTextSizeMapping = {\n xsmall: 'xsmall',\n small: 'xsmall',\n medium: 'small',\n large: 'medium',\n xlarge: 'medium',\n} as const;\n\nconst avatarColorTokens = {\n text: {\n primary: 'interactive.text.primary.normal',\n positive: 'interactive.text.positive.normal',\n negative: 'interactive.text.negative.normal',\n notice: 'interactive.text.notice.normal',\n information: 'interactive.text.information.normal',\n neutral: 'interactive.text.neutral.normal',\n },\n background: {\n primary: 'interactive.background.primary.faded',\n positive: 'interactive.background.positive.faded',\n negative: 'interactive.background.negative.faded',\n notice: 'interactive.background.notice.faded',\n information: 'interactive.background.information.faded',\n neutral: 'interactive.background.neutral.faded',\n },\n} as const;\n\nconst avatarBorderRadiusTokens = {\n circle: 'max',\n square: 'medium',\n} as const;\n\nexport {\n avatarSizeTokens,\n avatarIconSizeTokens,\n avatarTextSizeMapping,\n avatarColorTokens,\n avatarBorderRadiusTokens,\n};\n"],"names":["avatarSizeTokens","xsmall","size","small","medium","large","xlarge","avatarIconSizeTokens","avatarTextSizeMapping","avatarColorTokens","text","primary","positive","negative","notice","information","neutral","background","avatarBorderRadiusTokens","circle","square"],"mappings":";;;AAEA,IAAMA,gBAAgB,GAAG;AACvBC,EAAAA,MAAM,EAAEC,IAAI,CAAC,EAAE,CAAC;AAChBC,EAAAA,KAAK,EAAED,IAAI,CAAC,EAAE,CAAC;AACfE,EAAAA,MAAM,EAAEF,IAAI,CAAC,EAAE,CAAC;AAChBG,EAAAA,KAAK,EAAEH,IAAI,CAAC,EAAE,CAAC;EACfI,MAAM,EAAEJ,IAAI,CAAC,EAAE,CAAA;AACjB,EAAU;AAEV,IAAMK,oBAAoB,GAAG;AAC3BN,EAAAA,MAAM,EAAE,OAAO;AACfE,EAAAA,KAAK,EAAE,QAAQ;AACfC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,MAAM,EAAE,QAAA;AACV,EAAU;AAEV,IAAME,qBAAqB,GAAG;AAC5BP,EAAAA,MAAM,EAAE,QAAQ;AAChBE,EAAAA,KAAK,EAAE,QAAQ;AACfC,EAAAA,MAAM,EAAE,OAAO;AACfC,EAAAA,KAAK,EAAE,QAAQ;AACfC,EAAAA,MAAM,EAAE,QAAA;AACV,EAAU;AAEV,IAAMG,iBAAiB,GAAG;AACxBC,EAAAA,IAAI,EAAE;AACJC,IAAAA,OAAO,EAAE,iCAAiC;AAC1CC,IAAAA,QAAQ,EAAE,kCAAkC;AAC5CC,IAAAA,QAAQ,EAAE,kCAAkC;AAC5CC,IAAAA,MAAM,EAAE,gCAAgC;AACxCC,IAAAA,WAAW,EAAE,qCAAqC;AAClDC,IAAAA,OAAO,EAAE,iCAAA;GACV;AACDC,EAAAA,UAAU,EAAE;AACVN,IAAAA,OAAO,EAAE,sCAAsC;AAC/CC,IAAAA,QAAQ,EAAE,uCAAuC;AACjDC,IAAAA,QAAQ,EAAE,uCAAuC;AACjDC,IAAAA,MAAM,EAAE,qCAAqC;AAC7CC,IAAAA,WAAW,EAAE,0CAA0C;AACvDC,IAAAA,OAAO,EAAE,sCAAA;AACX,GAAA;AACF,EAAU;AAEV,IAAME,wBAAwB,GAAG;AAC/BC,EAAAA,MAAM,EAAE,KAAK;AACbC,EAAAA,MAAM,EAAE,QAAA;AACV;;;;"}
@@ -0,0 +1,3 @@
1
+ export { Avatar } from './Avatar.web.js';
2
+ export { AvatarGroup } from './AvatarGroup.web.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -471,5 +471,5 @@ var BaseButton = /*#__PURE__*/assignWithoutSideEffects( /*#__PURE__*/React__defa
471
471
  displayName: 'BaseButton'
472
472
  });
473
473
 
474
- export { BaseButton as default, getBackgroundColorToken };
474
+ export { BaseButton as default, getBackgroundColorToken, getTextColorToken };
475
475
  //# sourceMappingURL=BaseButton.js.map