@channel.io/bezier-react 2.1.0 → 2.2.0

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 (119) hide show
  1. package/dist/cjs/components/AlphaButton/Button.js +3 -3
  2. package/dist/cjs/components/AlphaButton/Button.js.map +1 -1
  3. package/dist/cjs/components/AlphaButton/Button.module.scss.js +1 -1
  4. package/dist/cjs/components/AlphaFloatingButton/FloatingButton.js +3 -3
  5. package/dist/cjs/components/AlphaFloatingButton/FloatingButton.js.map +1 -1
  6. package/dist/cjs/components/AlphaFloatingButton/FloatingButton.module.scss.js +1 -1
  7. package/dist/cjs/components/AlphaFloatingIconButton/FloatingIconButton.js +3 -3
  8. package/dist/cjs/components/AlphaFloatingIconButton/FloatingIconButton.js.map +1 -1
  9. package/dist/cjs/components/AlphaFloatingIconButton/FloatingIconButton.module.scss.js +1 -1
  10. package/dist/cjs/components/AlphaIconButton/IconButton.js +3 -3
  11. package/dist/cjs/components/AlphaIconButton/IconButton.js.map +1 -1
  12. package/dist/cjs/components/AlphaIconButton/IconButton.module.scss.js +1 -1
  13. package/dist/cjs/components/{AlphaSpinner/Spinner.js → AlphaLoader/Loader.js} +10 -10
  14. package/dist/cjs/components/AlphaLoader/Loader.js.map +1 -0
  15. package/dist/cjs/components/AlphaLoader/Loader.module.scss.js +8 -0
  16. package/dist/cjs/components/AlphaLoader/Loader.module.scss.js.map +1 -0
  17. package/dist/cjs/components/AlphaToggleButton/ToggleButton.js +3 -3
  18. package/dist/cjs/components/AlphaToggleButton/ToggleButton.js.map +1 -1
  19. package/dist/cjs/components/AlphaToggleButton/ToggleButton.module.scss.js +1 -1
  20. package/dist/cjs/components/TextField/TextField.js +1 -1
  21. package/dist/cjs/components/TextField/TextField.js.map +1 -1
  22. package/dist/cjs/components/TextField/TextField.module.scss.js +1 -1
  23. package/dist/cjs/hooks/useMergeRefs.js +1 -0
  24. package/dist/cjs/hooks/useMergeRefs.js.map +1 -1
  25. package/dist/cjs/index.js +4 -4
  26. package/dist/cjs/node_modules/tslib/tslib.es6.js.map +1 -1
  27. package/dist/cjs/styles.css +1 -1
  28. package/dist/esm/components/AlphaButton/Button.mjs +3 -3
  29. package/dist/esm/components/AlphaButton/Button.mjs.map +1 -1
  30. package/dist/esm/components/AlphaButton/Button.module.scss.mjs +1 -1
  31. package/dist/esm/components/AlphaFloatingButton/FloatingButton.mjs +3 -3
  32. package/dist/esm/components/AlphaFloatingButton/FloatingButton.mjs.map +1 -1
  33. package/dist/esm/components/AlphaFloatingButton/FloatingButton.module.scss.mjs +1 -1
  34. package/dist/esm/components/AlphaFloatingIconButton/FloatingIconButton.mjs +3 -3
  35. package/dist/esm/components/AlphaFloatingIconButton/FloatingIconButton.mjs.map +1 -1
  36. package/dist/esm/components/AlphaFloatingIconButton/FloatingIconButton.module.scss.mjs +1 -1
  37. package/dist/esm/components/AlphaIconButton/IconButton.mjs +3 -3
  38. package/dist/esm/components/AlphaIconButton/IconButton.mjs.map +1 -1
  39. package/dist/esm/components/AlphaIconButton/IconButton.module.scss.mjs +1 -1
  40. package/dist/esm/components/{AlphaSpinner/Spinner.mjs → AlphaLoader/Loader.mjs} +7 -7
  41. package/dist/esm/components/AlphaLoader/Loader.mjs.map +1 -0
  42. package/dist/esm/components/AlphaLoader/Loader.module.scss.mjs +4 -0
  43. package/dist/esm/components/AlphaLoader/Loader.module.scss.mjs.map +1 -0
  44. package/dist/esm/components/AlphaToggleButton/ToggleButton.mjs +3 -3
  45. package/dist/esm/components/AlphaToggleButton/ToggleButton.mjs.map +1 -1
  46. package/dist/esm/components/AlphaToggleButton/ToggleButton.module.scss.mjs +1 -1
  47. package/dist/esm/components/TextField/TextField.mjs +1 -1
  48. package/dist/esm/components/TextField/TextField.mjs.map +1 -1
  49. package/dist/esm/components/TextField/TextField.module.scss.mjs +1 -1
  50. package/dist/esm/hooks/useMergeRefs.mjs +1 -0
  51. package/dist/esm/hooks/useMergeRefs.mjs.map +1 -1
  52. package/dist/esm/index.mjs +1 -1
  53. package/dist/esm/node_modules/tslib/tslib.es6.mjs.map +1 -1
  54. package/dist/esm/styles.css +1 -1
  55. package/dist/types/components/AlphaAvatarGroup/AvatarGroup.types.d.ts.map +1 -1
  56. package/dist/types/components/AlphaLoader/Loader.d.ts +5 -0
  57. package/dist/types/components/AlphaLoader/Loader.d.ts.map +1 -0
  58. package/dist/types/components/AlphaLoader/Loader.types.d.ts +13 -0
  59. package/dist/types/components/AlphaLoader/Loader.types.d.ts.map +1 -0
  60. package/dist/types/components/AlphaLoader/index.d.ts +3 -0
  61. package/dist/types/components/AlphaLoader/index.d.ts.map +1 -0
  62. package/dist/types/hooks/useMergeRefs.d.ts.map +1 -1
  63. package/dist/types/index.d.ts +1 -1
  64. package/dist/types/index.d.ts.map +1 -1
  65. package/package.json +17 -14
  66. package/src/components/AlphaAvatarGroup/AvatarGroup.types.ts +1 -4
  67. package/src/components/AlphaButton/Button.module.scss +1 -1
  68. package/src/components/AlphaButton/Button.tsx +3 -3
  69. package/src/components/AlphaDialogPrimitive/AlphaDialogPrimitive.stories.tsx +1 -0
  70. package/src/components/AlphaFloatingButton/FloatingButton.module.scss +1 -1
  71. package/src/components/AlphaFloatingButton/FloatingButton.tsx +3 -3
  72. package/src/components/AlphaFloatingIconButton/FloatingIconButton.module.scss +1 -1
  73. package/src/components/AlphaFloatingIconButton/FloatingIconButton.tsx +3 -3
  74. package/src/components/AlphaIconButton/IconButton.module.scss +1 -1
  75. package/src/components/AlphaIconButton/IconButton.tsx +3 -3
  76. package/src/components/AlphaLoader/AlphaLoader.stories.tsx +23 -0
  77. package/src/components/AlphaLoader/Loader.module.scss +75 -0
  78. package/src/components/AlphaLoader/Loader.test.tsx +34 -0
  79. package/src/components/AlphaLoader/Loader.tsx +47 -0
  80. package/src/components/{AlphaSpinner/Spinner.types.ts → AlphaLoader/Loader.types.ts} +6 -6
  81. package/src/components/AlphaLoader/index.ts +2 -0
  82. package/src/components/AlphaToggleButton/ToggleButton.module.scss +1 -1
  83. package/src/components/AlphaToggleButton/ToggleButton.tsx +3 -3
  84. package/src/components/AlphaTooltipPrimitive/AlphaTooltipPrimitive.stories.tsx +1 -0
  85. package/src/components/Banner/Banner.mdx +14 -28
  86. package/src/components/Banner/Banner.stories.tsx +1 -0
  87. package/src/components/Button/Button.mdx +19 -37
  88. package/src/components/Button/Button.stories.tsx +1 -0
  89. package/src/components/ButtonGroup/ButtonGroup.mdx +4 -7
  90. package/src/components/ButtonGroup/ButtonGroup.stories.tsx +2 -0
  91. package/src/components/Icon/Icon.mdx +7 -7
  92. package/src/components/Icon/Icon.stories.tsx +2 -0
  93. package/src/components/LegacyStack/LegacyStack.mdx +16 -29
  94. package/src/components/LegacyStack/LegacyStack.stories.tsx +1 -0
  95. package/src/components/ProgressBar/ProgressBar.mdx +8 -14
  96. package/src/components/ProgressBar/ProgressBar.stories.tsx +2 -0
  97. package/src/components/Slider/Slider.stories.tsx +1 -1
  98. package/src/components/TextField/TextField.module.scss +2 -1
  99. package/src/components/TextField/TextField.test.tsx +16 -1
  100. package/src/components/TextField/TextField.tsx +1 -1
  101. package/src/hooks/useMergeRefs.ts +1 -0
  102. package/src/index.ts +1 -1
  103. package/dist/cjs/components/AlphaSpinner/Spinner.js.map +0 -1
  104. package/dist/cjs/components/AlphaSpinner/Spinner.module.scss.js +0 -8
  105. package/dist/cjs/components/AlphaSpinner/Spinner.module.scss.js.map +0 -1
  106. package/dist/esm/components/AlphaSpinner/Spinner.mjs.map +0 -1
  107. package/dist/esm/components/AlphaSpinner/Spinner.module.scss.mjs +0 -4
  108. package/dist/esm/components/AlphaSpinner/Spinner.module.scss.mjs.map +0 -1
  109. package/dist/types/components/AlphaSpinner/Spinner.d.ts +0 -5
  110. package/dist/types/components/AlphaSpinner/Spinner.d.ts.map +0 -1
  111. package/dist/types/components/AlphaSpinner/Spinner.types.d.ts +0 -13
  112. package/dist/types/components/AlphaSpinner/Spinner.types.d.ts.map +0 -1
  113. package/dist/types/components/AlphaSpinner/index.d.ts +0 -3
  114. package/dist/types/components/AlphaSpinner/index.d.ts.map +0 -1
  115. package/src/components/AlphaSpinner/AlphaSpinner.stories.tsx +0 -23
  116. package/src/components/AlphaSpinner/Spinner.module.scss +0 -75
  117. package/src/components/AlphaSpinner/Spinner.test.tsx +0 -34
  118. package/src/components/AlphaSpinner/Spinner.tsx +0 -49
  119. package/src/components/AlphaSpinner/index.ts +0 -2
@@ -3,7 +3,7 @@ import { isBezierIcon } from '@channel.io/bezier-icons';
3
3
  import classNames from '../../node_modules/classnames/index.mjs';
4
4
  import styles from './Button.module.scss.mjs';
5
5
  import { Text } from '../Text/Text.mjs';
6
- import { Spinner } from '../AlphaSpinner/Spinner.mjs';
6
+ import { Loader } from '../AlphaLoader/Loader.mjs';
7
7
  import { BaseButton } from '../BaseButton/BaseButton.mjs';
8
8
  import { Icon } from '../Icon/Icon.mjs';
9
9
 
@@ -66,8 +66,8 @@ const Button = /*#__PURE__*/forwardRef(function Button({
66
66
  content: suffixContent
67
67
  })), loading && /*#__PURE__*/React__default.createElement("div", {
68
68
  className: classNames(styles.ButtonLoader, styles[`size-${getIconSize(size)}`])
69
- }, /*#__PURE__*/React__default.createElement(Spinner, {
70
- className: styles.Spinner,
69
+ }, /*#__PURE__*/React__default.createElement(Loader, {
70
+ className: styles.Loader,
71
71
  variant: "on-overlay"
72
72
  })));
73
73
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Button.mjs","sources":["../../../../src/components/AlphaButton/Button.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport {\n type ButtonProps,\n type ButtonSize,\n} from '~/src/components/AlphaButton/Button.types'\nimport { AlphaSpinner } from '~/src/components/AlphaSpinner'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { Icon, type IconSize } from '~/src/components/Icon'\nimport { Text } from '~/src/components/Text'\n\nimport styles from './Button.module.scss'\n\nfunction SideContent({\n size,\n content,\n}: {\n size: IconSize\n content?: ButtonProps['prefixContent']\n}) {\n return isBezierIcon(content) ? (\n <Icon\n source={content}\n size={size}\n className={styles.ButtonIcon}\n />\n ) : (\n content\n )\n}\n\nfunction getIconSize(size: ButtonSize) {\n return (\n {\n xs: 'xxs',\n s: 'xs',\n m: 's',\n l: 's',\n xl: 'm',\n } as const\n )[size]\n}\n\nfunction getTypography(size: ButtonSize) {\n return (\n {\n xs: '13',\n s: '13',\n m: '14',\n l: '15',\n xl: '18',\n } as const\n )[size]\n}\n\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(\n function Button(\n {\n as = BaseButton,\n text,\n prefixContent,\n suffixContent,\n color = 'blue',\n variant = 'primary',\n size = 'm',\n active,\n className,\n loading,\n ...rest\n },\n forwardedRef\n ) {\n const Comp = as as typeof BaseButton\n\n return (\n <Comp\n ref={forwardedRef}\n className={classNames(\n styles.Button,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n styles[`color-${color}`],\n active && styles.active,\n className\n )}\n {...rest}\n >\n <div\n className={classNames(\n styles.ButtonContent,\n loading && styles.loading\n )}\n >\n <SideContent\n size={getIconSize(size)}\n content={prefixContent}\n />\n\n {/* TODO: use AlphaText later, add typo */}\n <Text\n className={styles.ButtonText}\n typo={getTypography(size)}\n bold\n >\n {text}\n </Text>\n\n <SideContent\n size={getIconSize(size)}\n content={suffixContent}\n />\n </div>\n\n {loading && (\n <div\n className={classNames(\n styles.ButtonLoader,\n styles[`size-${getIconSize(size)}`]\n )}\n >\n <AlphaSpinner\n className={styles.Spinner}\n variant=\"on-overlay\"\n />\n </div>\n )}\n </Comp>\n )\n }\n)\n"],"names":["SideContent","size","content","isBezierIcon","React","createElement","Icon","source","className","styles","ButtonIcon","getIconSize","xs","s","m","l","xl","getTypography","Button","forwardRef","as","BaseButton","text","prefixContent","suffixContent","color","variant","active","loading","rest","forwardedRef","Comp","Object","assign","ref","classNames","ButtonContent","Text","ButtonText","typo","bold","ButtonLoader","AlphaSpinner","Spinner"],"mappings":"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"}
1
+ {"version":3,"file":"Button.mjs","sources":["../../../../src/components/AlphaButton/Button.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport {\n type ButtonProps,\n type ButtonSize,\n} from '~/src/components/AlphaButton/Button.types'\nimport { AlphaLoader } from '~/src/components/AlphaLoader'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { Icon, type IconSize } from '~/src/components/Icon'\nimport { Text } from '~/src/components/Text'\n\nimport styles from './Button.module.scss'\n\nfunction SideContent({\n size,\n content,\n}: {\n size: IconSize\n content?: ButtonProps['prefixContent']\n}) {\n return isBezierIcon(content) ? (\n <Icon\n source={content}\n size={size}\n className={styles.ButtonIcon}\n />\n ) : (\n content\n )\n}\n\nfunction getIconSize(size: ButtonSize) {\n return (\n {\n xs: 'xxs',\n s: 'xs',\n m: 's',\n l: 's',\n xl: 'm',\n } as const\n )[size]\n}\n\nfunction getTypography(size: ButtonSize) {\n return (\n {\n xs: '13',\n s: '13',\n m: '14',\n l: '15',\n xl: '18',\n } as const\n )[size]\n}\n\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(\n function Button(\n {\n as = BaseButton,\n text,\n prefixContent,\n suffixContent,\n color = 'blue',\n variant = 'primary',\n size = 'm',\n active,\n className,\n loading,\n ...rest\n },\n forwardedRef\n ) {\n const Comp = as as typeof BaseButton\n\n return (\n <Comp\n ref={forwardedRef}\n className={classNames(\n styles.Button,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n styles[`color-${color}`],\n active && styles.active,\n className\n )}\n {...rest}\n >\n <div\n className={classNames(\n styles.ButtonContent,\n loading && styles.loading\n )}\n >\n <SideContent\n size={getIconSize(size)}\n content={prefixContent}\n />\n\n {/* TODO: use AlphaText later, add typo */}\n <Text\n className={styles.ButtonText}\n typo={getTypography(size)}\n bold\n >\n {text}\n </Text>\n\n <SideContent\n size={getIconSize(size)}\n content={suffixContent}\n />\n </div>\n\n {loading && (\n <div\n className={classNames(\n styles.ButtonLoader,\n styles[`size-${getIconSize(size)}`]\n )}\n >\n <AlphaLoader\n className={styles.Loader}\n variant=\"on-overlay\"\n />\n </div>\n )}\n </Comp>\n )\n }\n)\n"],"names":["SideContent","size","content","isBezierIcon","React","createElement","Icon","source","className","styles","ButtonIcon","getIconSize","xs","s","m","l","xl","getTypography","Button","forwardRef","as","BaseButton","text","prefixContent","suffixContent","color","variant","active","loading","rest","forwardedRef","Comp","Object","assign","ref","classNames","ButtonContent","Text","ButtonText","typo","bold","ButtonLoader","AlphaLoader","Loader"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- var styles = {"Icon":"b--FZGN","size-xxxs":"b-o9swE","size-xxs":"b-xlhxz","size-xs":"b-dMl6r","size-s":"b-FZTyp","size-m":"b-Tenxe","size-l":"b-IJLB6","size-xl":"b-xKsUH","Button":"b-Bu63w","ButtonText":"b-Xr8t8","ButtonContent":"b-nSti0","variant-primary":"b-ohV3j","color-blue":"b-EL8PY","color-cobalt":"b--YAo9","color-red":"b-EAdoN","color-orange":"b-k-FfG","color-green":"b-REP7x","color-pink":"b-dkbxj","color-purple":"b-k3Z8M","color-dark-grey":"b-BudYM","color-light-grey":"b-eO-XU","color-white":"b-x9nmp","variant-secondary":"b-l8-bH","variant-tertiary":"b-PB-TW","ButtonIcon":"b-HX6lq","active":"b-Y2foo","ButtonLoader":"b-TRaYF","loading":"b-rUXJx","Spinner":"b-97gyD"};
1
+ var styles = {"Icon":"b--FZGN","size-xxxs":"b-o9swE","size-xxs":"b-xlhxz","size-xs":"b-dMl6r","size-s":"b-FZTyp","size-m":"b-Tenxe","size-l":"b-IJLB6","size-xl":"b-xKsUH","Button":"b-Bu63w","ButtonText":"b-Xr8t8","ButtonContent":"b-nSti0","variant-primary":"b-ohV3j","color-blue":"b-EL8PY","color-cobalt":"b--YAo9","color-red":"b-EAdoN","color-orange":"b-k-FfG","color-green":"b-REP7x","color-pink":"b-dkbxj","color-purple":"b-k3Z8M","color-dark-grey":"b-BudYM","color-light-grey":"b-eO-XU","color-white":"b-x9nmp","variant-secondary":"b-l8-bH","variant-tertiary":"b-PB-TW","ButtonIcon":"b-HX6lq","active":"b-Y2foo","ButtonLoader":"b-TRaYF","loading":"b-rUXJx","Loader":"b-Y9S8P"};
2
2
 
3
3
  export { styles as default };
4
4
  //# sourceMappingURL=Button.module.scss.mjs.map
@@ -3,7 +3,7 @@ import { isBezierIcon } from '@channel.io/bezier-icons';
3
3
  import classNames from '../../node_modules/classnames/index.mjs';
4
4
  import styles from './FloatingButton.module.scss.mjs';
5
5
  import { Text } from '../Text/Text.mjs';
6
- import { Spinner } from '../AlphaSpinner/Spinner.mjs';
6
+ import { Loader } from '../AlphaLoader/Loader.mjs';
7
7
  import { BaseButton } from '../BaseButton/BaseButton.mjs';
8
8
  import { Icon } from '../Icon/Icon.mjs';
9
9
 
@@ -66,8 +66,8 @@ const FloatingButton = /*#__PURE__*/forwardRef(function Button({
66
66
  content: suffixContent
67
67
  })), loading && /*#__PURE__*/React__default.createElement("div", {
68
68
  className: classNames(styles.ButtonLoader, styles[`size-${getIconSize(size)}`])
69
- }, /*#__PURE__*/React__default.createElement(Spinner, {
70
- className: styles.Spinner,
69
+ }, /*#__PURE__*/React__default.createElement(Loader, {
70
+ className: styles.Loader,
71
71
  variant: "on-overlay"
72
72
  })));
73
73
  });
@@ -1 +1 @@
1
- {"version":3,"file":"FloatingButton.mjs","sources":["../../../../src/components/AlphaFloatingButton/FloatingButton.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport {\n type FloatingButtonProps,\n type FloatingButtonSize,\n} from '~/src/components/AlphaFloatingButton/FloatingButton.types'\nimport { AlphaSpinner } from '~/src/components/AlphaSpinner'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { Icon, type IconSize } from '~/src/components/Icon'\nimport { Text } from '~/src/components/Text'\n\nimport styles from './FloatingButton.module.scss'\n\nfunction SideContent({\n size,\n content,\n}: {\n size: IconSize\n content?: FloatingButtonProps['prefixContent']\n}) {\n return isBezierIcon(content) ? (\n <Icon\n source={content}\n size={size}\n className={styles.ButtonIcon}\n />\n ) : (\n content\n )\n}\n\nfunction getIconSize(size: FloatingButtonSize) {\n return (\n {\n xs: 'xxs',\n s: 'xs',\n m: 's',\n l: 's',\n xl: 'm',\n } as const\n )[size]\n}\n\nfunction getTypography(size: FloatingButtonSize) {\n return (\n {\n xs: '13',\n s: '13',\n m: '14',\n l: '15',\n xl: '18',\n } as const\n )[size]\n}\n\nexport const FloatingButton = forwardRef<\n HTMLButtonElement,\n FloatingButtonProps\n>(function Button(\n {\n as = BaseButton,\n text,\n prefixContent,\n suffixContent,\n color = 'blue',\n variant = 'primary',\n size = 'm',\n active,\n className,\n loading,\n ...rest\n },\n forwardedRef\n) {\n const Comp = as as typeof BaseButton\n\n return (\n <Comp\n ref={forwardedRef}\n className={classNames(\n styles.FloatingButton,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n styles[`color-${color}`],\n active && styles.active,\n className\n )}\n {...rest}\n >\n <div\n className={classNames(styles.ButtonContent, loading && styles.loading)}\n >\n <SideContent\n size={getIconSize(size)}\n content={prefixContent}\n />\n\n {/* TODO: use AlphaText later, add typo */}\n <Text\n className={styles.ButtonText}\n typo={getTypography(size)}\n bold\n >\n {text}\n </Text>\n\n <SideContent\n size={getIconSize(size)}\n content={suffixContent}\n />\n </div>\n\n {loading && (\n <div\n className={classNames(\n styles.ButtonLoader,\n styles[`size-${getIconSize(size)}`]\n )}\n >\n <AlphaSpinner\n className={styles.Spinner}\n variant=\"on-overlay\"\n />\n </div>\n )}\n </Comp>\n )\n})\n"],"names":["SideContent","size","content","isBezierIcon","React","createElement","Icon","source","className","styles","ButtonIcon","getIconSize","xs","s","m","l","xl","getTypography","FloatingButton","forwardRef","Button","as","BaseButton","text","prefixContent","suffixContent","color","variant","active","loading","rest","forwardedRef","Comp","Object","assign","ref","classNames","ButtonContent","Text","ButtonText","typo","bold","ButtonLoader","AlphaSpinner","Spinner"],"mappings":"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"}
1
+ {"version":3,"file":"FloatingButton.mjs","sources":["../../../../src/components/AlphaFloatingButton/FloatingButton.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport {\n type FloatingButtonProps,\n type FloatingButtonSize,\n} from '~/src/components/AlphaFloatingButton/FloatingButton.types'\nimport { AlphaLoader } from '~/src/components/AlphaLoader'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { Icon, type IconSize } from '~/src/components/Icon'\nimport { Text } from '~/src/components/Text'\n\nimport styles from './FloatingButton.module.scss'\n\nfunction SideContent({\n size,\n content,\n}: {\n size: IconSize\n content?: FloatingButtonProps['prefixContent']\n}) {\n return isBezierIcon(content) ? (\n <Icon\n source={content}\n size={size}\n className={styles.ButtonIcon}\n />\n ) : (\n content\n )\n}\n\nfunction getIconSize(size: FloatingButtonSize) {\n return (\n {\n xs: 'xxs',\n s: 'xs',\n m: 's',\n l: 's',\n xl: 'm',\n } as const\n )[size]\n}\n\nfunction getTypography(size: FloatingButtonSize) {\n return (\n {\n xs: '13',\n s: '13',\n m: '14',\n l: '15',\n xl: '18',\n } as const\n )[size]\n}\n\nexport const FloatingButton = forwardRef<\n HTMLButtonElement,\n FloatingButtonProps\n>(function Button(\n {\n as = BaseButton,\n text,\n prefixContent,\n suffixContent,\n color = 'blue',\n variant = 'primary',\n size = 'm',\n active,\n className,\n loading,\n ...rest\n },\n forwardedRef\n) {\n const Comp = as as typeof BaseButton\n\n return (\n <Comp\n ref={forwardedRef}\n className={classNames(\n styles.FloatingButton,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n styles[`color-${color}`],\n active && styles.active,\n className\n )}\n {...rest}\n >\n <div\n className={classNames(styles.ButtonContent, loading && styles.loading)}\n >\n <SideContent\n size={getIconSize(size)}\n content={prefixContent}\n />\n\n {/* TODO: use AlphaText later, add typo */}\n <Text\n className={styles.ButtonText}\n typo={getTypography(size)}\n bold\n >\n {text}\n </Text>\n\n <SideContent\n size={getIconSize(size)}\n content={suffixContent}\n />\n </div>\n\n {loading && (\n <div\n className={classNames(\n styles.ButtonLoader,\n styles[`size-${getIconSize(size)}`]\n )}\n >\n <AlphaLoader\n className={styles.Loader}\n variant=\"on-overlay\"\n />\n </div>\n )}\n </Comp>\n )\n})\n"],"names":["SideContent","size","content","isBezierIcon","React","createElement","Icon","source","className","styles","ButtonIcon","getIconSize","xs","s","m","l","xl","getTypography","FloatingButton","forwardRef","Button","as","BaseButton","text","prefixContent","suffixContent","color","variant","active","loading","rest","forwardedRef","Comp","Object","assign","ref","classNames","ButtonContent","Text","ButtonText","typo","bold","ButtonLoader","AlphaLoader","Loader"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- var styles = {"Icon":"b-N1oNZ","size-xxxs":"b-SmyZ3","size-xxs":"b-f9TeV","size-xs":"b-QsWAB","size-s":"b-XpD2O","size-m":"b-o-cLI","size-l":"b-Hk5nU","size-xl":"b-k3y4r","FloatingButton":"b-bYve2","ButtonText":"b-alAiF","ButtonContent":"b-RUr-1","variant-primary":"b-QmpYs","color-blue":"b-Us2nD","color-cobalt":"b-HbgqQ","color-red":"b-KNnPg","color-orange":"b-BuR0o","color-green":"b-e5qII","color-pink":"b-R5OJT","color-purple":"b-Qst2f","color-dark-grey":"b-s325E","color-light-grey":"b-88I-7","variant-secondary":"b-yEZ4V","ButtonIcon":"b--zoBE","active":"b-tMcpZ","ButtonLoader":"b-cOdoe","loading":"b-sFtLb","Spinner":"b-vHNv3"};
1
+ var styles = {"Icon":"b-N1oNZ","size-xxxs":"b-SmyZ3","size-xxs":"b-f9TeV","size-xs":"b-QsWAB","size-s":"b-XpD2O","size-m":"b-o-cLI","size-l":"b-Hk5nU","size-xl":"b-k3y4r","FloatingButton":"b-bYve2","ButtonText":"b-alAiF","ButtonContent":"b-RUr-1","variant-primary":"b-QmpYs","color-blue":"b-Us2nD","color-cobalt":"b-HbgqQ","color-red":"b-KNnPg","color-orange":"b-BuR0o","color-green":"b-e5qII","color-pink":"b-R5OJT","color-purple":"b-Qst2f","color-dark-grey":"b-s325E","color-light-grey":"b-88I-7","variant-secondary":"b-yEZ4V","ButtonIcon":"b--zoBE","active":"b-tMcpZ","ButtonLoader":"b-cOdoe","loading":"b-sFtLb","Loader":"b-xybMi"};
2
2
 
3
3
  export { styles as default };
4
4
  //# sourceMappingURL=FloatingButton.module.scss.mjs.map
@@ -3,7 +3,7 @@ import { isBezierIcon } from '@channel.io/bezier-icons';
3
3
  import classNames from '../../node_modules/classnames/index.mjs';
4
4
  import styles from './FloatingIconButton.module.scss.mjs';
5
5
  import { Icon } from '../Icon/Icon.mjs';
6
- import { Spinner } from '../AlphaSpinner/Spinner.mjs';
6
+ import { Loader } from '../AlphaLoader/Loader.mjs';
7
7
  import { BaseButton } from '../BaseButton/BaseButton.mjs';
8
8
 
9
9
  function getIconSize(size) {
@@ -37,8 +37,8 @@ const FloatingIconButton = /*#__PURE__*/forwardRef(function FloatingIconButton({
37
37
  source: content
38
38
  }) : content), loading && /*#__PURE__*/React__default.createElement("div", {
39
39
  className: classNames(styles.ButtonLoader, styles[`size-${getIconSize(size)}`])
40
- }, /*#__PURE__*/React__default.createElement(Spinner, {
41
- className: styles.Spinner,
40
+ }, /*#__PURE__*/React__default.createElement(Loader, {
41
+ className: styles.Loader,
42
42
  variant: "on-overlay"
43
43
  })));
44
44
  });
@@ -1 +1 @@
1
- {"version":3,"file":"FloatingIconButton.mjs","sources":["../../../../src/components/AlphaFloatingIconButton/FloatingIconButton.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { type AlphaFloatingIconButtonProps } from '~/src/components/AlphaFloatingIconButton'\nimport { AlphaSpinner } from '~/src/components/AlphaSpinner'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { type ButtonSize } from '~/src/components/Button'\nimport { Icon } from '~/src/components/Icon'\n\nimport styles from './FloatingIconButton.module.scss'\n\nfunction getIconSize(size: ButtonSize) {\n return (\n {\n xs: 'xxs',\n s: 'xs',\n m: 's',\n l: 's',\n xl: 'm',\n } as const\n )[size]\n}\n\nexport const FloatingIconButton = forwardRef<\n HTMLButtonElement,\n AlphaFloatingIconButtonProps\n>(function FloatingIconButton(\n {\n as = BaseButton,\n color = 'blue',\n variant = 'primary',\n size = 'm',\n active,\n content,\n loading,\n className,\n ...rest\n },\n forwardedRef\n) {\n const Comp = as as typeof BaseButton\n\n return (\n <Comp\n ref={forwardedRef}\n className={classNames(\n styles.FloatingIconButton,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n styles[`color-${color}`],\n active && styles.active,\n className\n )}\n {...rest}\n >\n <div\n className={classNames(styles.ButtonContent, loading && styles.loading)}\n >\n {isBezierIcon(content) ? (\n <Icon\n size={getIconSize(size)}\n source={content}\n />\n ) : (\n content\n )}\n </div>\n\n {loading && (\n <div\n className={classNames(\n styles.ButtonLoader,\n styles[`size-${getIconSize(size)}`]\n )}\n >\n <AlphaSpinner\n className={styles.Spinner}\n variant=\"on-overlay\"\n />\n </div>\n )}\n </Comp>\n )\n})\n"],"names":["getIconSize","size","xs","s","m","l","xl","FloatingIconButton","forwardRef","as","BaseButton","color","variant","active","content","loading","className","rest","forwardedRef","Comp","React","createElement","Object","assign","ref","classNames","styles","ButtonContent","isBezierIcon","Icon","source","ButtonLoader","AlphaSpinner","Spinner"],"mappings":";;;;;;;;AAaA,SAASA,WAAWA,CAACC,IAAgB,EAAE;EACrC,OACE;AACEC,IAAAA,EAAE,EAAE,KAAK;AACTC,IAAAA,CAAC,EAAE,IAAI;AACPC,IAAAA,CAAC,EAAE,GAAG;AACNC,IAAAA,CAAC,EAAE,GAAG;AACNC,IAAAA,EAAE,EAAE,GAAA;GACL,CACDL,IAAI,CAAC,CAAA;AACT,CAAA;MAEaM,kBAAkB,gBAAGC,UAAU,CAG1C,SAASD,kBAAkBA,CAC3B;AACEE,EAAAA,EAAE,GAAGC,UAAU;AACfC,EAAAA,KAAK,GAAG,MAAM;AACdC,EAAAA,OAAO,GAAG,SAAS;AACnBX,EAAAA,IAAI,GAAG,GAAG;EACVY,MAAM;EACNC,OAAO;EACPC,OAAO;EACPC,SAAS;EACT,GAAGC,IAAAA;AACL,CAAC,EACDC,YAAY,EACZ;EACA,MAAMC,IAAI,GAAGV,EAAuB,CAAA;EAEpC,oBACEW,cAAA,CAAAC,aAAA,CAACF,IAAI,EAAAG,MAAA,CAAAC,MAAA,CAAA;AACHC,IAAAA,GAAG,EAAEN,YAAa;AAClBF,IAAAA,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACnB,kBAAkB,EACzBmB,MAAM,CAAC,QAAQzB,IAAI,CAAA,CAAE,CAAC,EACtByB,MAAM,CAAC,CAAA,QAAA,EAAWd,OAAO,CAAA,CAAE,CAAC,EAC5Bc,MAAM,CAAC,SAASf,KAAK,CAAA,CAAE,CAAC,EACxBE,MAAM,IAAIa,MAAM,CAACb,MAAM,EACvBG,SACF,CAAA;AAAE,GAAA,EACEC,IAAI,CAAA,eAERG,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IACEL,SAAS,EAAES,UAAU,CAACC,MAAM,CAACC,aAAa,EAAEZ,OAAO,IAAIW,MAAM,CAACX,OAAO,CAAA;GAEpEa,EAAAA,YAAY,CAACd,OAAO,CAAC,gBACpBM,cAAA,CAAAC,aAAA,CAACQ,IAAI,EAAA;AACH5B,IAAAA,IAAI,EAAED,WAAW,CAACC,IAAI,CAAE;AACxB6B,IAAAA,MAAM,EAAEhB,OAAAA;GACT,CAAC,GAEFA,OAEC,CAAC,EAELC,OAAO,iBACNK,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEL,IAAAA,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACK,YAAY,EACnBL,MAAM,CAAC,QAAQ1B,WAAW,CAACC,IAAI,CAAC,EAAE,CACpC,CAAA;AAAE,GAAA,eAEFmB,cAAA,CAAAC,aAAA,CAACW,OAAY,EAAA;IACXhB,SAAS,EAAEU,MAAM,CAACO,OAAQ;AAC1BrB,IAAAA,OAAO,EAAC,YAAA;GACT,CACE,CAEH,CAAC,CAAA;AAEX,CAAC;;;;"}
1
+ {"version":3,"file":"FloatingIconButton.mjs","sources":["../../../../src/components/AlphaFloatingIconButton/FloatingIconButton.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { type AlphaFloatingIconButtonProps } from '~/src/components/AlphaFloatingIconButton'\nimport { AlphaLoader } from '~/src/components/AlphaLoader'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { type ButtonSize } from '~/src/components/Button'\nimport { Icon } from '~/src/components/Icon'\n\nimport styles from './FloatingIconButton.module.scss'\n\nfunction getIconSize(size: ButtonSize) {\n return (\n {\n xs: 'xxs',\n s: 'xs',\n m: 's',\n l: 's',\n xl: 'm',\n } as const\n )[size]\n}\n\nexport const FloatingIconButton = forwardRef<\n HTMLButtonElement,\n AlphaFloatingIconButtonProps\n>(function FloatingIconButton(\n {\n as = BaseButton,\n color = 'blue',\n variant = 'primary',\n size = 'm',\n active,\n content,\n loading,\n className,\n ...rest\n },\n forwardedRef\n) {\n const Comp = as as typeof BaseButton\n\n return (\n <Comp\n ref={forwardedRef}\n className={classNames(\n styles.FloatingIconButton,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n styles[`color-${color}`],\n active && styles.active,\n className\n )}\n {...rest}\n >\n <div\n className={classNames(styles.ButtonContent, loading && styles.loading)}\n >\n {isBezierIcon(content) ? (\n <Icon\n size={getIconSize(size)}\n source={content}\n />\n ) : (\n content\n )}\n </div>\n\n {loading && (\n <div\n className={classNames(\n styles.ButtonLoader,\n styles[`size-${getIconSize(size)}`]\n )}\n >\n <AlphaLoader\n className={styles.Loader}\n variant=\"on-overlay\"\n />\n </div>\n )}\n </Comp>\n )\n})\n"],"names":["getIconSize","size","xs","s","m","l","xl","FloatingIconButton","forwardRef","as","BaseButton","color","variant","active","content","loading","className","rest","forwardedRef","Comp","React","createElement","Object","assign","ref","classNames","styles","ButtonContent","isBezierIcon","Icon","source","ButtonLoader","AlphaLoader","Loader"],"mappings":";;;;;;;;AAaA,SAASA,WAAWA,CAACC,IAAgB,EAAE;EACrC,OACE;AACEC,IAAAA,EAAE,EAAE,KAAK;AACTC,IAAAA,CAAC,EAAE,IAAI;AACPC,IAAAA,CAAC,EAAE,GAAG;AACNC,IAAAA,CAAC,EAAE,GAAG;AACNC,IAAAA,EAAE,EAAE,GAAA;GACL,CACDL,IAAI,CAAC,CAAA;AACT,CAAA;MAEaM,kBAAkB,gBAAGC,UAAU,CAG1C,SAASD,kBAAkBA,CAC3B;AACEE,EAAAA,EAAE,GAAGC,UAAU;AACfC,EAAAA,KAAK,GAAG,MAAM;AACdC,EAAAA,OAAO,GAAG,SAAS;AACnBX,EAAAA,IAAI,GAAG,GAAG;EACVY,MAAM;EACNC,OAAO;EACPC,OAAO;EACPC,SAAS;EACT,GAAGC,IAAAA;AACL,CAAC,EACDC,YAAY,EACZ;EACA,MAAMC,IAAI,GAAGV,EAAuB,CAAA;EAEpC,oBACEW,cAAA,CAAAC,aAAA,CAACF,IAAI,EAAAG,MAAA,CAAAC,MAAA,CAAA;AACHC,IAAAA,GAAG,EAAEN,YAAa;AAClBF,IAAAA,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACnB,kBAAkB,EACzBmB,MAAM,CAAC,QAAQzB,IAAI,CAAA,CAAE,CAAC,EACtByB,MAAM,CAAC,CAAA,QAAA,EAAWd,OAAO,CAAA,CAAE,CAAC,EAC5Bc,MAAM,CAAC,SAASf,KAAK,CAAA,CAAE,CAAC,EACxBE,MAAM,IAAIa,MAAM,CAACb,MAAM,EACvBG,SACF,CAAA;AAAE,GAAA,EACEC,IAAI,CAAA,eAERG,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IACEL,SAAS,EAAES,UAAU,CAACC,MAAM,CAACC,aAAa,EAAEZ,OAAO,IAAIW,MAAM,CAACX,OAAO,CAAA;GAEpEa,EAAAA,YAAY,CAACd,OAAO,CAAC,gBACpBM,cAAA,CAAAC,aAAA,CAACQ,IAAI,EAAA;AACH5B,IAAAA,IAAI,EAAED,WAAW,CAACC,IAAI,CAAE;AACxB6B,IAAAA,MAAM,EAAEhB,OAAAA;GACT,CAAC,GAEFA,OAEC,CAAC,EAELC,OAAO,iBACNK,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEL,IAAAA,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACK,YAAY,EACnBL,MAAM,CAAC,QAAQ1B,WAAW,CAACC,IAAI,CAAC,EAAE,CACpC,CAAA;AAAE,GAAA,eAEFmB,cAAA,CAAAC,aAAA,CAACW,MAAW,EAAA;IACVhB,SAAS,EAAEU,MAAM,CAACO,MAAO;AACzBrB,IAAAA,OAAO,EAAC,YAAA;GACT,CACE,CAEH,CAAC,CAAA;AAEX,CAAC;;;;"}
@@ -1,4 +1,4 @@
1
- var styles = {"Icon":"b-76vGa","size-xxxs":"b-m7Pmk","size-xxs":"b-g4122","size-xs":"b-u5Zl3","size-s":"b-3wbJg","size-m":"b-C7fAv","size-l":"b-FwA2i","size-xl":"b-VPiwI","FloatingIconButton":"b-pDR7b","variant-primary":"b-eSXS9","color-blue":"b-6Qpq3","color-cobalt":"b-dIPru","color-red":"b-wZj6M","color-orange":"b-Vb6Hw","color-green":"b-nSxKM","color-pink":"b-4raYA","color-purple":"b-ppJl-","color-dark-grey":"b-3T-00","color-light-grey":"b-lJzxe","variant-secondary":"b-Q-xex","active":"b-9pRbB","ButtonLoader":"b-hkZIN","ButtonContent":"b-8juuH","loading":"b-w7dD7","Spinner":"b-U9qSJ"};
1
+ var styles = {"Icon":"b-76vGa","size-xxxs":"b-m7Pmk","size-xxs":"b-g4122","size-xs":"b-u5Zl3","size-s":"b-3wbJg","size-m":"b-C7fAv","size-l":"b-FwA2i","size-xl":"b-VPiwI","FloatingIconButton":"b-pDR7b","variant-primary":"b-eSXS9","color-blue":"b-6Qpq3","color-cobalt":"b-dIPru","color-red":"b-wZj6M","color-orange":"b-Vb6Hw","color-green":"b-nSxKM","color-pink":"b-4raYA","color-purple":"b-ppJl-","color-dark-grey":"b-3T-00","color-light-grey":"b-lJzxe","variant-secondary":"b-Q-xex","active":"b-9pRbB","ButtonLoader":"b-hkZIN","ButtonContent":"b-8juuH","loading":"b-w7dD7","Loader":"b-t8LIK"};
2
2
 
3
3
  export { styles as default };
4
4
  //# sourceMappingURL=FloatingIconButton.module.scss.mjs.map
@@ -3,7 +3,7 @@ import { isBezierIcon } from '@channel.io/bezier-icons';
3
3
  import classNames from '../../node_modules/classnames/index.mjs';
4
4
  import styles from './IconButton.module.scss.mjs';
5
5
  import { Icon } from '../Icon/Icon.mjs';
6
- import { Spinner } from '../AlphaSpinner/Spinner.mjs';
6
+ import { Loader } from '../AlphaLoader/Loader.mjs';
7
7
  import { BaseButton } from '../BaseButton/BaseButton.mjs';
8
8
 
9
9
  function getIconSize(size) {
@@ -39,8 +39,8 @@ const IconButton = /*#__PURE__*/forwardRef(function IconButton({
39
39
  className: styles.ButtonIcon
40
40
  }) : content), loading && /*#__PURE__*/React__default.createElement("div", {
41
41
  className: classNames(styles.ButtonLoader, styles[`size-${getIconSize(size)}`])
42
- }, /*#__PURE__*/React__default.createElement(Spinner, {
43
- className: styles.Spinner,
42
+ }, /*#__PURE__*/React__default.createElement(Loader, {
43
+ className: styles.Loader,
44
44
  variant: "on-overlay"
45
45
  })));
46
46
  });
@@ -1 +1 @@
1
- {"version":3,"file":"IconButton.mjs","sources":["../../../../src/components/AlphaIconButton/IconButton.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { type AlphaIconButtonProps } from '~/src/components/AlphaIconButton'\nimport { AlphaSpinner } from '~/src/components/AlphaSpinner'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { type ButtonSize } from '~/src/components/Button'\nimport { Icon } from '~/src/components/Icon'\n\nimport styles from './IconButton.module.scss'\n\nfunction getIconSize(size: ButtonSize) {\n return (\n {\n xs: 'xxs',\n s: 'xs',\n m: 's',\n l: 's',\n xl: 'm',\n } as const\n )[size]\n}\n\nexport const IconButton = forwardRef<HTMLButtonElement, AlphaIconButtonProps>(\n function IconButton(\n {\n as = BaseButton,\n color = 'blue',\n variant = 'primary',\n size = 'm',\n active,\n shape = 'rectangle',\n content,\n loading,\n className,\n ...rest\n },\n forwardedRef\n ) {\n const Comp = as as typeof BaseButton\n\n return (\n <Comp\n ref={forwardedRef}\n className={classNames(\n styles.IconButton,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n styles[`color-${color}`],\n styles[`shape-${shape}`],\n active && styles.active,\n className\n )}\n {...rest}\n >\n <div\n className={classNames(\n styles.ButtonContent,\n loading && styles.loading\n )}\n >\n {isBezierIcon(content) ? (\n <Icon\n size={getIconSize(size)}\n source={content}\n className={styles.ButtonIcon}\n />\n ) : (\n content\n )}\n </div>\n\n {loading && (\n <div\n className={classNames(\n styles.ButtonLoader,\n styles[`size-${getIconSize(size)}`]\n )}\n >\n <AlphaSpinner\n className={styles.Spinner}\n variant=\"on-overlay\"\n />\n </div>\n )}\n </Comp>\n )\n }\n)\n"],"names":["getIconSize","size","xs","s","m","l","xl","IconButton","forwardRef","as","BaseButton","color","variant","active","shape","content","loading","className","rest","forwardedRef","Comp","React","createElement","Object","assign","ref","classNames","styles","ButtonContent","isBezierIcon","Icon","source","ButtonIcon","ButtonLoader","AlphaSpinner","Spinner"],"mappings":";;;;;;;;AAaA,SAASA,WAAWA,CAACC,IAAgB,EAAE;EACrC,OACE;AACEC,IAAAA,EAAE,EAAE,KAAK;AACTC,IAAAA,CAAC,EAAE,IAAI;AACPC,IAAAA,CAAC,EAAE,GAAG;AACNC,IAAAA,CAAC,EAAE,GAAG;AACNC,IAAAA,EAAE,EAAE,GAAA;GACL,CACDL,IAAI,CAAC,CAAA;AACT,CAAA;MAEaM,UAAU,gBAAGC,UAAU,CAClC,SAASD,UAAUA,CACjB;AACEE,EAAAA,EAAE,GAAGC,UAAU;AACfC,EAAAA,KAAK,GAAG,MAAM;AACdC,EAAAA,OAAO,GAAG,SAAS;AACnBX,EAAAA,IAAI,GAAG,GAAG;EACVY,MAAM;AACNC,EAAAA,KAAK,GAAG,WAAW;EACnBC,OAAO;EACPC,OAAO;EACPC,SAAS;EACT,GAAGC,IAAAA;AACL,CAAC,EACDC,YAAY,EACZ;EACA,MAAMC,IAAI,GAAGX,EAAuB,CAAA;EAEpC,oBACEY,cAAA,CAAAC,aAAA,CAACF,IAAI,EAAAG,MAAA,CAAAC,MAAA,CAAA;AACHC,IAAAA,GAAG,EAAEN,YAAa;AAClBF,IAAAA,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACpB,UAAU,EACjBoB,MAAM,CAAC,CAAQ1B,KAAAA,EAAAA,IAAI,EAAE,CAAC,EACtB0B,MAAM,CAAC,CAAA,QAAA,EAAWf,OAAO,CAAE,CAAA,CAAC,EAC5Be,MAAM,CAAC,CAAShB,MAAAA,EAAAA,KAAK,EAAE,CAAC,EACxBgB,MAAM,CAAC,CAAA,MAAA,EAASb,KAAK,CAAE,CAAA,CAAC,EACxBD,MAAM,IAAIc,MAAM,CAACd,MAAM,EACvBI,SACF,CAAA;AAAE,GAAA,EACEC,IAAI,CAAA,eAERG,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IACEL,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACC,aAAa,EACpBZ,OAAO,IAAIW,MAAM,CAACX,OACpB,CAAA;GAECa,EAAAA,YAAY,CAACd,OAAO,CAAC,gBACpBM,cAAA,CAAAC,aAAA,CAACQ,IAAI,EAAA;AACH7B,IAAAA,IAAI,EAAED,WAAW,CAACC,IAAI,CAAE;AACxB8B,IAAAA,MAAM,EAAEhB,OAAQ;IAChBE,SAAS,EAAEU,MAAM,CAACK,UAAAA;GACnB,CAAC,GAEFjB,OAEC,CAAC,EAELC,OAAO,iBACNK,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEL,IAAAA,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACM,YAAY,EACnBN,MAAM,CAAC,QAAQ3B,WAAW,CAACC,IAAI,CAAC,EAAE,CACpC,CAAA;AAAE,GAAA,eAEFoB,cAAA,CAAAC,aAAA,CAACY,OAAY,EAAA;IACXjB,SAAS,EAAEU,MAAM,CAACQ,OAAQ;AAC1BvB,IAAAA,OAAO,EAAC,YAAA;GACT,CACE,CAEH,CAAC,CAAA;AAEX,CACF;;;;"}
1
+ {"version":3,"file":"IconButton.mjs","sources":["../../../../src/components/AlphaIconButton/IconButton.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { type AlphaIconButtonProps } from '~/src/components/AlphaIconButton'\nimport { AlphaLoader } from '~/src/components/AlphaLoader'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { type ButtonSize } from '~/src/components/Button'\nimport { Icon } from '~/src/components/Icon'\n\nimport styles from './IconButton.module.scss'\n\nfunction getIconSize(size: ButtonSize) {\n return (\n {\n xs: 'xxs',\n s: 'xs',\n m: 's',\n l: 's',\n xl: 'm',\n } as const\n )[size]\n}\n\nexport const IconButton = forwardRef<HTMLButtonElement, AlphaIconButtonProps>(\n function IconButton(\n {\n as = BaseButton,\n color = 'blue',\n variant = 'primary',\n size = 'm',\n active,\n shape = 'rectangle',\n content,\n loading,\n className,\n ...rest\n },\n forwardedRef\n ) {\n const Comp = as as typeof BaseButton\n\n return (\n <Comp\n ref={forwardedRef}\n className={classNames(\n styles.IconButton,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n styles[`color-${color}`],\n styles[`shape-${shape}`],\n active && styles.active,\n className\n )}\n {...rest}\n >\n <div\n className={classNames(\n styles.ButtonContent,\n loading && styles.loading\n )}\n >\n {isBezierIcon(content) ? (\n <Icon\n size={getIconSize(size)}\n source={content}\n className={styles.ButtonIcon}\n />\n ) : (\n content\n )}\n </div>\n\n {loading && (\n <div\n className={classNames(\n styles.ButtonLoader,\n styles[`size-${getIconSize(size)}`]\n )}\n >\n <AlphaLoader\n className={styles.Loader}\n variant=\"on-overlay\"\n />\n </div>\n )}\n </Comp>\n )\n }\n)\n"],"names":["getIconSize","size","xs","s","m","l","xl","IconButton","forwardRef","as","BaseButton","color","variant","active","shape","content","loading","className","rest","forwardedRef","Comp","React","createElement","Object","assign","ref","classNames","styles","ButtonContent","isBezierIcon","Icon","source","ButtonIcon","ButtonLoader","AlphaLoader","Loader"],"mappings":";;;;;;;;AAaA,SAASA,WAAWA,CAACC,IAAgB,EAAE;EACrC,OACE;AACEC,IAAAA,EAAE,EAAE,KAAK;AACTC,IAAAA,CAAC,EAAE,IAAI;AACPC,IAAAA,CAAC,EAAE,GAAG;AACNC,IAAAA,CAAC,EAAE,GAAG;AACNC,IAAAA,EAAE,EAAE,GAAA;GACL,CACDL,IAAI,CAAC,CAAA;AACT,CAAA;MAEaM,UAAU,gBAAGC,UAAU,CAClC,SAASD,UAAUA,CACjB;AACEE,EAAAA,EAAE,GAAGC,UAAU;AACfC,EAAAA,KAAK,GAAG,MAAM;AACdC,EAAAA,OAAO,GAAG,SAAS;AACnBX,EAAAA,IAAI,GAAG,GAAG;EACVY,MAAM;AACNC,EAAAA,KAAK,GAAG,WAAW;EACnBC,OAAO;EACPC,OAAO;EACPC,SAAS;EACT,GAAGC,IAAAA;AACL,CAAC,EACDC,YAAY,EACZ;EACA,MAAMC,IAAI,GAAGX,EAAuB,CAAA;EAEpC,oBACEY,cAAA,CAAAC,aAAA,CAACF,IAAI,EAAAG,MAAA,CAAAC,MAAA,CAAA;AACHC,IAAAA,GAAG,EAAEN,YAAa;AAClBF,IAAAA,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACpB,UAAU,EACjBoB,MAAM,CAAC,CAAQ1B,KAAAA,EAAAA,IAAI,EAAE,CAAC,EACtB0B,MAAM,CAAC,CAAA,QAAA,EAAWf,OAAO,CAAE,CAAA,CAAC,EAC5Be,MAAM,CAAC,CAAShB,MAAAA,EAAAA,KAAK,EAAE,CAAC,EACxBgB,MAAM,CAAC,CAAA,MAAA,EAASb,KAAK,CAAE,CAAA,CAAC,EACxBD,MAAM,IAAIc,MAAM,CAACd,MAAM,EACvBI,SACF,CAAA;AAAE,GAAA,EACEC,IAAI,CAAA,eAERG,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IACEL,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACC,aAAa,EACpBZ,OAAO,IAAIW,MAAM,CAACX,OACpB,CAAA;GAECa,EAAAA,YAAY,CAACd,OAAO,CAAC,gBACpBM,cAAA,CAAAC,aAAA,CAACQ,IAAI,EAAA;AACH7B,IAAAA,IAAI,EAAED,WAAW,CAACC,IAAI,CAAE;AACxB8B,IAAAA,MAAM,EAAEhB,OAAQ;IAChBE,SAAS,EAAEU,MAAM,CAACK,UAAAA;GACnB,CAAC,GAEFjB,OAEC,CAAC,EAELC,OAAO,iBACNK,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEL,IAAAA,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACM,YAAY,EACnBN,MAAM,CAAC,QAAQ3B,WAAW,CAACC,IAAI,CAAC,EAAE,CACpC,CAAA;AAAE,GAAA,eAEFoB,cAAA,CAAAC,aAAA,CAACY,MAAW,EAAA;IACVjB,SAAS,EAAEU,MAAM,CAACQ,MAAO;AACzBvB,IAAAA,OAAO,EAAC,YAAA;GACT,CACE,CAEH,CAAC,CAAA;AAEX,CACF;;;;"}
@@ -1,4 +1,4 @@
1
- var styles = {"Icon":"b-cK83D","size-xxxs":"b-ATSdQ","size-xxs":"b-506kS","size-xs":"b-mWKOx","size-s":"b-8N-9n","size-m":"b-pDYUy","size-l":"b-YJw65","size-xl":"b-tjHwL","IconButton":"b-xyUBm","variant-primary":"b-Ff2Fz","color-blue":"b-ne4OD","color-cobalt":"b-5zudh","color-red":"b-plyr-","color-orange":"b-h5y75","color-green":"b-Tnm-7","color-pink":"b-uZ0LR","color-purple":"b-5-tPX","color-dark-grey":"b-BN6Xk","color-light-grey":"b-paZDh","color-white":"b--tIjF","variant-secondary":"b-ucRsW","variant-tertiary":"b-WHAB-","ButtonIcon":"b-Ty8vu","shape-rectangle":"b-hyTqW","shape-circle":"b-03MST","active":"b-P0tkF","ButtonLoader":"b-lfx3h","ButtonContent":"b-r9mfO","loading":"b--Ij3P","Spinner":"b-zWwY6"};
1
+ var styles = {"Icon":"b-cK83D","size-xxxs":"b-ATSdQ","size-xxs":"b-506kS","size-xs":"b-mWKOx","size-s":"b-8N-9n","size-m":"b-pDYUy","size-l":"b-YJw65","size-xl":"b-tjHwL","IconButton":"b-xyUBm","variant-primary":"b-Ff2Fz","color-blue":"b-ne4OD","color-cobalt":"b-5zudh","color-red":"b-plyr-","color-orange":"b-h5y75","color-green":"b-Tnm-7","color-pink":"b-uZ0LR","color-purple":"b-5-tPX","color-dark-grey":"b-BN6Xk","color-light-grey":"b-paZDh","color-white":"b--tIjF","variant-secondary":"b-ucRsW","variant-tertiary":"b-WHAB-","ButtonIcon":"b-Ty8vu","shape-rectangle":"b-hyTqW","shape-circle":"b-03MST","active":"b-P0tkF","ButtonLoader":"b-lfx3h","ButtonContent":"b-r9mfO","loading":"b--Ij3P","Loader":"b-kjV8d"};
2
2
 
3
3
  export { styles as default };
4
4
  //# sourceMappingURL=IconButton.module.scss.mjs.map
@@ -1,18 +1,18 @@
1
1
  import React__default, { forwardRef } from 'react';
2
2
  import classNames from '../../node_modules/classnames/index.mjs';
3
- import styles from './Spinner.module.scss.mjs';
3
+ import styles from './Loader.module.scss.mjs';
4
4
 
5
- const SPINNER_TEST_ID = 'bezier-spinner';
6
- const Spinner = /*#__PURE__*/forwardRef(function Spinner({
5
+ const LOADER_TEST_ID = 'bezier-loader';
6
+ const Loader = /*#__PURE__*/forwardRef(function Loader({
7
7
  className,
8
8
  size,
9
9
  variant = 'secondary',
10
10
  ...rest
11
11
  }, forwardedRef) {
12
12
  return /*#__PURE__*/React__default.createElement("span", Object.assign({
13
- className: classNames(styles.Spinner, size && styles[`size-${size}`], styles[`variant-${variant}`], className),
13
+ className: classNames(styles.Loader, size && styles[`size-${size}`], styles[`variant-${variant}`], className),
14
14
  ref: forwardedRef,
15
- "data-testid": SPINNER_TEST_ID
15
+ "data-testid": LOADER_TEST_ID
16
16
  }, rest), /*#__PURE__*/React__default.createElement("svg", {
17
17
  xmlns: "http://www.w3.org/2000/svg",
18
18
  viewBox: "0 0 16 16"
@@ -29,5 +29,5 @@ const Spinner = /*#__PURE__*/forwardRef(function Spinner({
29
29
  })));
30
30
  });
31
31
 
32
- export { SPINNER_TEST_ID, Spinner };
33
- //# sourceMappingURL=Spinner.mjs.map
32
+ export { LOADER_TEST_ID, Loader };
33
+ //# sourceMappingURL=Loader.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Loader.mjs","sources":["../../../../src/components/AlphaLoader/Loader.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nimport classNames from 'classnames'\n\nimport { type LoaderProps } from './Loader.types'\n\nimport styles from './Loader.module.scss'\n\nexport const LOADER_TEST_ID = 'bezier-loader'\n\nexport const Loader = forwardRef<HTMLSpanElement, LoaderProps>(function Loader(\n { className, size, variant = 'secondary', ...rest },\n forwardedRef\n) {\n return (\n <span\n className={classNames(\n styles.Loader,\n size && styles[`size-${size}`],\n styles[`variant-${variant}`],\n className\n )}\n ref={forwardedRef}\n data-testid={LOADER_TEST_ID}\n {...rest}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 16 16\"\n >\n <circle\n cx=\"8\"\n cy=\"8\"\n r=\"6.5\"\n className={styles.track}\n />\n\n <circle\n cx=\"8\"\n cy=\"8\"\n r=\"6.5\"\n className={styles.indicator}\n />\n </svg>\n </span>\n )\n})\n"],"names":["LOADER_TEST_ID","Loader","forwardRef","className","size","variant","rest","forwardedRef","React","createElement","Object","assign","classNames","styles","ref","xmlns","viewBox","cx","cy","r","track","indicator"],"mappings":";;;;AAQO,MAAMA,cAAc,GAAG,gBAAe;MAEhCC,MAAM,gBAAGC,UAAU,CAA+B,SAASD,MAAMA,CAC5E;EAAEE,SAAS;EAAEC,IAAI;AAAEC,EAAAA,OAAO,GAAG,WAAW;EAAE,GAAGC,IAAAA;AAAK,CAAC,EACnDC,YAAY,EACZ;AACA,EAAA,oBACEC,cAAA,CAAAC,aAAA,CAAAC,MAAAA,EAAAA,MAAA,CAAAC,MAAA,CAAA;IACER,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACZ,MAAM,EACbG,IAAI,IAAIS,MAAM,CAAC,CAAA,KAAA,EAAQT,IAAI,CAAE,CAAA,CAAC,EAC9BS,MAAM,CAAC,CAAA,QAAA,EAAWR,OAAO,CAAE,CAAA,CAAC,EAC5BF,SACF,CAAE;AACFW,IAAAA,GAAG,EAAEP,YAAa;IAClB,aAAaP,EAAAA,cAAAA;AAAe,GAAA,EACxBM,IAAI,CAAA,eAERE,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEM,IAAAA,KAAK,EAAC,4BAA4B;AAClCC,IAAAA,OAAO,EAAC,WAAA;GAERR,eAAAA,cAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;AACEQ,IAAAA,EAAE,EAAC,GAAG;AACNC,IAAAA,EAAE,EAAC,GAAG;AACNC,IAAAA,CAAC,EAAC,KAAK;IACPhB,SAAS,EAAEU,MAAM,CAACO,KAAAA;AAAM,GACzB,CAAC,eAEFZ,cAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;AACEQ,IAAAA,EAAE,EAAC,GAAG;AACNC,IAAAA,EAAE,EAAC,GAAG;AACNC,IAAAA,CAAC,EAAC,KAAK;IACPhB,SAAS,EAAEU,MAAM,CAACQ,SAAAA;GACnB,CACE,CACD,CAAC,CAAA;AAEX,CAAC;;;;"}
@@ -0,0 +1,4 @@
1
+ var styles = {"Loader":"b-0Z4ju","rotate":"b-naVm2","track":"b-5qK77","indicator":"b-fRXyc","size-s":"b-iOfXt","size-m":"b-TMQyE","variant-primary":"b-Gpi9s","variant-secondary":"b-2a8Xi","variant-on-overlay":"b-NJIqK"};
2
+
3
+ export { styles as default };
4
+ //# sourceMappingURL=Loader.module.scss.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Loader.module.scss.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -5,7 +5,7 @@ import classNames from '../../node_modules/classnames/index.mjs';
5
5
  import { useToggleButtonContext } from './ToggleButtonContext.mjs';
6
6
  import styles from './ToggleButton.module.scss.mjs';
7
7
  import { Text } from '../Text/Text.mjs';
8
- import { Spinner } from '../AlphaSpinner/Spinner.mjs';
8
+ import { Loader } from '../AlphaLoader/Loader.mjs';
9
9
  import { BaseButton } from '../BaseButton/BaseButton.mjs';
10
10
  import { Icon } from '../Icon/Icon.mjs';
11
11
 
@@ -59,8 +59,8 @@ const ToggleButton = /*#__PURE__*/forwardRef(function ToggleButton({
59
59
  content: suffixContent
60
60
  })), loading && /*#__PURE__*/React__default.createElement("div", {
61
61
  className: classNames(styles.ButtonLoader, styles[`size-${ICON_SIZE}`])
62
- }, /*#__PURE__*/React__default.createElement(Spinner, {
63
- className: styles.Spinner,
62
+ }, /*#__PURE__*/React__default.createElement(Loader, {
63
+ className: styles.Loader,
64
64
  variant: "secondary"
65
65
  }))));
66
66
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleButton.mjs","sources":["../../../../src/components/AlphaToggleButton/ToggleButton.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport * as TogglePrimitive from '@radix-ui/react-toggle'\nimport classNames from 'classnames'\n\nimport { AlphaSpinner } from '~/src/components/AlphaSpinner'\nimport { useToggleButtonContext } from '~/src/components/AlphaToggleButton/ToggleButtonContext'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { Icon, type IconSize } from '~/src/components/Icon'\nimport { Text } from '~/src/components/Text'\n\nimport { type ToggleButtonProps } from './ToggleButton.types'\n\nimport styles from './ToggleButton.module.scss'\n\nfunction SideContent({\n size,\n content,\n}: {\n size: IconSize\n content?: ToggleButtonProps['prefixContent']\n}) {\n return isBezierIcon(content) ? (\n <Icon\n source={content}\n size={size}\n className={styles.ButtonIcon}\n />\n ) : (\n content\n )\n}\n\nexport const ToggleButton = forwardRef<HTMLButtonElement, ToggleButtonProps>(\n function ToggleButton(\n {\n as = BaseButton,\n text,\n prefixContent,\n suffixContent,\n variant = 'primary',\n shape: shapeProps,\n size = 'm',\n className,\n loading,\n onSelectedChange,\n ...rest\n },\n forwardedRef\n ) {\n const { shape: shapeContext } = useToggleButtonContext()\n const shape = shapeProps ?? shapeContext ?? 'capsule'\n const Comp = as as typeof BaseButton\n const ICON_SIZE = 's'\n\n return (\n <TogglePrimitive.Root\n asChild\n onPressedChange={onSelectedChange}\n {...rest}\n >\n <Comp\n ref={forwardedRef}\n className={classNames(\n styles.Button,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n shape && styles[`shape-${shape}`],\n className\n )}\n >\n <div\n className={classNames(\n styles.ButtonContent,\n loading && styles.loading\n )}\n >\n <SideContent\n size={ICON_SIZE}\n content={prefixContent}\n />\n\n {/* TODO: use AlphaText later, add typo */}\n <Text\n className={styles.ButtonText}\n typo=\"14\"\n data-text={text}\n truncated\n >\n {text}\n </Text>\n\n <SideContent\n size={ICON_SIZE}\n content={suffixContent}\n />\n </div>\n\n {loading && (\n <div\n className={classNames(\n styles.ButtonLoader,\n styles[`size-${ICON_SIZE}`]\n )}\n >\n <AlphaSpinner\n className={styles.Spinner}\n variant=\"secondary\"\n />\n </div>\n )}\n </Comp>\n </TogglePrimitive.Root>\n )\n }\n)\n"],"names":["SideContent","size","content","isBezierIcon","React","createElement","Icon","source","className","styles","ButtonIcon","ToggleButton","forwardRef","as","BaseButton","text","prefixContent","suffixContent","variant","shape","shapeProps","loading","onSelectedChange","rest","forwardedRef","shapeContext","useToggleButtonContext","Comp","ICON_SIZE","TogglePrimitive","Object","assign","asChild","onPressedChange","ref","classNames","Button","ButtonContent","Text","ButtonText","typo","truncated","ButtonLoader","AlphaSpinner","Spinner"],"mappings":"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"}
1
+ {"version":3,"file":"ToggleButton.mjs","sources":["../../../../src/components/AlphaToggleButton/ToggleButton.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport * as TogglePrimitive from '@radix-ui/react-toggle'\nimport classNames from 'classnames'\n\nimport { AlphaLoader } from '~/src/components/AlphaLoader'\nimport { useToggleButtonContext } from '~/src/components/AlphaToggleButton/ToggleButtonContext'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { Icon, type IconSize } from '~/src/components/Icon'\nimport { Text } from '~/src/components/Text'\n\nimport { type ToggleButtonProps } from './ToggleButton.types'\n\nimport styles from './ToggleButton.module.scss'\n\nfunction SideContent({\n size,\n content,\n}: {\n size: IconSize\n content?: ToggleButtonProps['prefixContent']\n}) {\n return isBezierIcon(content) ? (\n <Icon\n source={content}\n size={size}\n className={styles.ButtonIcon}\n />\n ) : (\n content\n )\n}\n\nexport const ToggleButton = forwardRef<HTMLButtonElement, ToggleButtonProps>(\n function ToggleButton(\n {\n as = BaseButton,\n text,\n prefixContent,\n suffixContent,\n variant = 'primary',\n shape: shapeProps,\n size = 'm',\n className,\n loading,\n onSelectedChange,\n ...rest\n },\n forwardedRef\n ) {\n const { shape: shapeContext } = useToggleButtonContext()\n const shape = shapeProps ?? shapeContext ?? 'capsule'\n const Comp = as as typeof BaseButton\n const ICON_SIZE = 's'\n\n return (\n <TogglePrimitive.Root\n asChild\n onPressedChange={onSelectedChange}\n {...rest}\n >\n <Comp\n ref={forwardedRef}\n className={classNames(\n styles.Button,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n shape && styles[`shape-${shape}`],\n className\n )}\n >\n <div\n className={classNames(\n styles.ButtonContent,\n loading && styles.loading\n )}\n >\n <SideContent\n size={ICON_SIZE}\n content={prefixContent}\n />\n\n {/* TODO: use AlphaText later, add typo */}\n <Text\n className={styles.ButtonText}\n typo=\"14\"\n data-text={text}\n truncated\n >\n {text}\n </Text>\n\n <SideContent\n size={ICON_SIZE}\n content={suffixContent}\n />\n </div>\n\n {loading && (\n <div\n className={classNames(\n styles.ButtonLoader,\n styles[`size-${ICON_SIZE}`]\n )}\n >\n <AlphaLoader\n className={styles.Loader}\n variant=\"secondary\"\n />\n </div>\n )}\n </Comp>\n </TogglePrimitive.Root>\n )\n }\n)\n"],"names":["SideContent","size","content","isBezierIcon","React","createElement","Icon","source","className","styles","ButtonIcon","ToggleButton","forwardRef","as","BaseButton","text","prefixContent","suffixContent","variant","shape","shapeProps","loading","onSelectedChange","rest","forwardedRef","shapeContext","useToggleButtonContext","Comp","ICON_SIZE","TogglePrimitive","Object","assign","asChild","onPressedChange","ref","classNames","Button","ButtonContent","Text","ButtonText","typo","truncated","ButtonLoader","AlphaLoader","Loader"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- var styles = {"Icon":"b-IeE6h","size-xxxs":"b-PNc-m","size-xxs":"b-MX6T7","size-xs":"b-O1HAU","size-s":"b-19s1t","size-m":"b-uiuB9","size-l":"b-CGM60","size-xl":"b-jYKcF","Button":"b-Uff8c","ButtonText":"b-XEr1t","variant-primary":"b-0Kyle","variant-secondary":"b-xS5Uj","shape-rectangle":"b-K7FY1","shape-capsule":"b-fR1nh","ButtonIcon":"b-NsnxS","ButtonContent":"b--czc7","loading":"b-N4M8g","ButtonLoader":"b-dvDDy","Spinner":"b-VsR6-"};
1
+ var styles = {"Icon":"b-IeE6h","size-xxxs":"b-PNc-m","size-xxs":"b-MX6T7","size-xs":"b-O1HAU","size-s":"b-19s1t","size-m":"b-uiuB9","size-l":"b-CGM60","size-xl":"b-jYKcF","Button":"b-Uff8c","ButtonText":"b-XEr1t","variant-primary":"b-0Kyle","variant-secondary":"b-xS5Uj","shape-rectangle":"b-K7FY1","shape-capsule":"b-fR1nh","ButtonIcon":"b-NsnxS","ButtonContent":"b--czc7","loading":"b-N4M8g","ButtonLoader":"b-dvDDy","Loader":"b-K6RFl"};
2
2
 
3
3
  export { styles as default };
4
4
  //# sourceMappingURL=ToggleButton.module.scss.mjs.map
@@ -271,7 +271,7 @@ const TextField = /*#__PURE__*/forwardRef(function TextField({
271
271
  onKeyUp: handleKeyUp
272
272
  }, ownProps)), activeClear && /*#__PURE__*/React__default.createElement(BaseButton, {
273
273
  className: styles.CloseIconWrapper,
274
- tabIndex: -1,
274
+ tabIndex: 0,
275
275
  onClick: handleClear
276
276
  }, /*#__PURE__*/React__default.createElement(Icon, {
277
277
  className: styles.CloseIcon,
@@ -1 +1 @@
1
- {"version":3,"file":"TextField.mjs","sources":["../../../../src/components/TextField/TextField.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n} from 'react'\n\nimport { CancelCircleFilledIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\nimport { v4 as uuid } from 'uuid'\n\nimport {\n COMMON_IME_CONTROL_KEYS,\n useKeyboardActionLockerWhileComposing,\n} from '~/src/hooks/useKeyboardActionLockerWhileComposing'\nimport { type FormFieldSize } from '~/src/types/props'\nimport { getFormFieldSizeClassName } from '~/src/types/props-helpers'\nimport { toString } from '~/src/utils/string'\nimport { isArray, isEmpty, isNil } from '~/src/utils/type'\n\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { useFormFieldProps } from '~/src/components/FormControl'\nimport { Icon } from '~/src/components/Icon'\nimport { useWindow } from '~/src/components/WindowProvider'\n\nimport {\n type SelectionRangeDirections,\n type TextFieldItemProps,\n type TextFieldProps,\n type TextFieldRef,\n} from './TextField.types'\n\nimport styles from './TextField.module.scss'\n\nexport const TEXT_INPUT_TEST_ID = 'bezier-text-input'\nexport const TEXT_INPUT_CLEAR_ICON_TEST_ID = 'bezier-text-input-clear-icon'\n\n/**\n * FIXME: This mapping constant was defined for UI consistency,\n * and it should be removed with size attribute\n */\nconst INPUT_LENGTH_BY_SIZE: Record<FormFieldSize, number> = {\n xs: 28,\n m: 36,\n l: 44,\n xl: 54,\n}\n\nfunction TextFieldLeftContent({\n children,\n wrapperStyle,\n wrapperClassName,\n withoutWrapper,\n}: {\n children: TextFieldProps['leftContent']\n wrapperStyle: TextFieldProps['leftWrapperStyle']\n wrapperClassName: TextFieldProps['leftWrapperClassName']\n withoutWrapper: TextFieldProps['withoutLeftContentWrapper']\n}) {\n if (isNil(children)) {\n return null\n }\n\n const Content = (() => {\n if ('icon' in children) {\n return (\n <Icon\n className={!isNil(children.onClick) ? styles.clickable : undefined}\n source={children.icon}\n size=\"s\"\n color={children.iconColor ?? 'txt-black-dark'}\n onClick={children.onClick}\n />\n )\n }\n\n return children\n })()\n\n if (withoutWrapper) {\n return Content\n }\n\n return (\n <div\n style={wrapperStyle}\n className={classNames(styles.LeftContentWrapper, wrapperClassName)}\n >\n {Content}\n </div>\n )\n}\n\nfunction TextFieldRightContent({\n children,\n wrapperStyle,\n wrapperClassName,\n withoutWrapper,\n}: {\n children: TextFieldProps['rightContent']\n wrapperStyle: TextFieldProps['rightWrapperStyle']\n wrapperClassName: TextFieldProps['rightWrapperClassName']\n withoutWrapper: TextFieldProps['withoutRightContentWrapper']\n}) {\n const renderRightItem = useCallback(\n (item: TextFieldItemProps, key?: string) => {\n if ('icon' in item) {\n const Comp = !isNil(item.onClick) ? BaseButton : 'div'\n\n return (\n <Comp\n key={key}\n className={styles.RightItemWrapper}\n onClick={item.onClick}\n >\n <Icon\n source={item.icon}\n size=\"xs\"\n color={item.iconColor ?? 'txt-black-dark'}\n />\n </Comp>\n )\n }\n\n return React.cloneElement(item, { key })\n },\n []\n )\n\n if (isNil(children) || isEmpty(children)) {\n return null\n }\n\n const contents = isArray(children)\n ? children.map((item) => renderRightItem(item, uuid()))\n : renderRightItem(children)\n\n if (withoutWrapper) {\n return <>{contents}</>\n }\n\n return (\n <div\n style={wrapperStyle}\n className={classNames(styles.RightContentWrapper, wrapperClassName)}\n >\n {contents}\n </div>\n )\n}\n\nexport const TextField = forwardRef<TextFieldRef, TextFieldProps>(\n function TextField(\n {\n type,\n size: sizeProps,\n autoFocus,\n autoComplete = 'off',\n variant = 'primary',\n allowClear = false,\n selectAllOnInit = false,\n selectAllOnFocus = false,\n leftContent,\n rightContent,\n withoutLeftContentWrapper = false,\n withoutRightContentWrapper = false,\n style,\n className,\n wrapperStyle,\n wrapperClassName,\n leftWrapperStyle,\n leftWrapperClassName,\n rightWrapperStyle,\n rightWrapperClassName,\n value,\n onFocus,\n onChange,\n onKeyDown,\n onKeyUp,\n ...rest\n },\n forwardedRef\n ) {\n const { window } = useWindow()\n\n const {\n disabled,\n readOnly,\n hasError,\n size: formFieldSize,\n ...ownProps\n } = useFormFieldProps(rest)\n\n const focusTimeout = useRef<ReturnType<Window['setTimeout']>>()\n const blurTimeout = useRef<ReturnType<Window['setTimeout']>>()\n\n const normalizedValue = isNil(value) ? undefined : toString(value)\n const activeInput = !disabled && !readOnly\n const activeClear = activeInput && allowClear && !isEmpty(normalizedValue)\n const size = sizeProps ?? formFieldSize ?? 'm'\n\n const inputRef = useRef<HTMLInputElement | null>(null)\n\n const focus = useCallback(() => {\n clearTimeout(focusTimeout.current)\n focusTimeout.current = window.setTimeout(() => {\n inputRef.current?.focus()\n }, 0)\n }, [window])\n\n const blur = useCallback(() => {\n clearTimeout(blurTimeout.current)\n blurTimeout.current = window.setTimeout(() => {\n inputRef.current?.blur()\n }, 0)\n }, [window])\n\n const setSelectionRange = useCallback(\n (start?: number, end?: number, direction?: SelectionRangeDirections) => {\n if (type && ['number', 'email', 'hidden'].includes(type)) {\n return\n }\n inputRef.current?.setSelectionRange(\n start || 0,\n end || 0,\n direction || 'none'\n )\n },\n [type]\n )\n\n const getSelectionRange = useCallback(\n (): [number, number] => [\n inputRef.current?.selectionStart || 0,\n inputRef.current?.selectionEnd || 0,\n ],\n []\n )\n\n const selectAll = useCallback(() => {\n focus()\n if (inputRef.current) {\n setSelectionRange(0, inputRef.current.value.length, 'backward')\n }\n }, [focus, setSelectionRange])\n\n const unselect = useCallback(() => {\n focus()\n if (inputRef.current) {\n const valueLen = inputRef.current.value.length\n setSelectionRange(valueLen, valueLen)\n }\n }, [focus, setSelectionRange])\n\n const getBoundingClientRect = useCallback((): DOMRect => {\n if (inputRef.current) {\n return inputRef.current.getBoundingClientRect()\n }\n return new DOMRect(undefined, undefined, 0, 0)\n }, [])\n\n const getDOMNode = useCallback(() => inputRef.current, [])\n\n const handle = useMemo(\n (): TextFieldRef => ({\n focus,\n blur,\n setSelectionRange,\n getSelectionRange,\n selectAll,\n unselect,\n getBoundingClientRect,\n getDOMNode,\n }),\n [\n focus,\n blur,\n setSelectionRange,\n getSelectionRange,\n selectAll,\n unselect,\n getBoundingClientRect,\n getDOMNode,\n ]\n )\n\n useImperativeHandle(forwardedRef, () => handle)\n\n useEffect(() => {\n if (autoFocus) {\n focus()\n }\n if (selectAllOnInit) {\n focus()\n selectAll()\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n const handleFocus = useCallback(\n (event: React.FocusEvent<HTMLInputElement>) => {\n if (!activeInput) {\n return\n }\n if (selectAllOnFocus) {\n selectAll()\n }\n if (onFocus) {\n onFocus(event)\n }\n },\n [selectAllOnFocus, selectAll, activeInput, onFocus]\n )\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n if (activeInput && onChange) {\n onChange(event)\n }\n },\n [activeInput, onChange]\n )\n\n const {\n handleKeyDown: handleKeyDownWrappedWithComposingLocker,\n handleKeyUp: handleKeyUpWrappedWithComposingLocker,\n } = useKeyboardActionLockerWhileComposing({\n keysToLock: COMMON_IME_CONTROL_KEYS,\n onKeyDown,\n onKeyUp,\n })\n\n const handleKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (activeInput && handleKeyDownWrappedWithComposingLocker) {\n handleKeyDownWrappedWithComposingLocker(event)\n }\n },\n [activeInput, handleKeyDownWrappedWithComposingLocker]\n )\n\n const handleKeyUp = useCallback(\n (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (activeInput && handleKeyUpWrappedWithComposingLocker) {\n handleKeyUpWrappedWithComposingLocker(event)\n }\n },\n [activeInput, handleKeyUpWrappedWithComposingLocker]\n )\n\n const handleClear = useCallback(() => {\n const input = inputRef.current\n if (activeInput && input) {\n const setValue = Object?.getOwnPropertyDescriptor(\n HTMLInputElement.prototype,\n 'value'\n )?.set\n const event = new Event('input', { bubbles: true })\n setValue?.call(input, '')\n input.dispatchEvent(event)\n }\n }, [activeInput])\n\n return (\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <div\n style={wrapperStyle}\n className={classNames(\n styles.TextFieldWrapper,\n styles[`variant-${variant}`],\n styles[`size-${size}`],\n getFormFieldSizeClassName(size),\n wrapperClassName\n )}\n data-testid={TEXT_INPUT_TEST_ID}\n onMouseDown={focus}\n >\n <TextFieldLeftContent\n wrapperStyle={leftWrapperStyle}\n wrapperClassName={leftWrapperClassName}\n withoutWrapper={withoutLeftContentWrapper}\n >\n {leftContent}\n </TextFieldLeftContent>\n\n <input\n style={style}\n className={classNames(styles.TextFieldInput, className)}\n ref={inputRef}\n type={type}\n value={normalizedValue}\n /**\n * Invalid size attribute\n * FIXME: https://github.com/channel-io/bezier-react/issues/1053\n */\n size={INPUT_LENGTH_BY_SIZE[size]}\n autoComplete={autoComplete}\n readOnly={readOnly}\n disabled={disabled}\n onFocus={handleFocus}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n onKeyUp={handleKeyUp}\n {...ownProps}\n />\n\n {activeClear && (\n <BaseButton\n className={styles.CloseIconWrapper}\n tabIndex={-1}\n onClick={handleClear}\n >\n <Icon\n className={styles.CloseIcon}\n data-testid={TEXT_INPUT_CLEAR_ICON_TEST_ID}\n source={CancelCircleFilledIcon}\n size=\"xs\"\n />\n </BaseButton>\n )}\n\n <TextFieldRightContent\n wrapperStyle={rightWrapperStyle}\n withoutWrapper={withoutRightContentWrapper}\n wrapperClassName={rightWrapperClassName}\n >\n {rightContent}\n </TextFieldRightContent>\n </div>\n )\n }\n)\n"],"names":["TEXT_INPUT_TEST_ID","TEXT_INPUT_CLEAR_ICON_TEST_ID","INPUT_LENGTH_BY_SIZE","xs","m","l","xl","TextFieldLeftContent","children","wrapperStyle","wrapperClassName","withoutWrapper","isNil","Content","React","createElement","Icon","className","onClick","styles","clickable","undefined","source","icon","size","color","iconColor","style","classNames","LeftContentWrapper","TextFieldRightContent","renderRightItem","useCallback","item","key","Comp","BaseButton","RightItemWrapper","cloneElement","isEmpty","contents","isArray","map","uuid","Fragment","RightContentWrapper","TextField","forwardRef","type","sizeProps","autoFocus","autoComplete","variant","allowClear","selectAllOnInit","selectAllOnFocus","leftContent","rightContent","withoutLeftContentWrapper","withoutRightContentWrapper","leftWrapperStyle","leftWrapperClassName","rightWrapperStyle","rightWrapperClassName","value","onFocus","onChange","onKeyDown","onKeyUp","rest","forwardedRef","window","useWindow","disabled","readOnly","hasError","formFieldSize","ownProps","useFormFieldProps","focusTimeout","useRef","blurTimeout","normalizedValue","toString","activeInput","activeClear","inputRef","focus","clearTimeout","current","setTimeout","blur","setSelectionRange","start","end","direction","includes","getSelectionRange","selectionStart","selectionEnd","selectAll","length","unselect","valueLen","getBoundingClientRect","DOMRect","getDOMNode","handle","useMemo","useImperativeHandle","useEffect","handleFocus","event","handleChange","handleKeyDown","handleKeyDownWrappedWithComposingLocker","handleKeyUp","handleKeyUpWrappedWithComposingLocker","useKeyboardActionLockerWhileComposing","keysToLock","COMMON_IME_CONTROL_KEYS","handleClear","input","setValue","Object","getOwnPropertyDescriptor","HTMLInputElement","prototype","set","Event","bubbles","call","dispatchEvent","TextFieldWrapper","getFormFieldSizeClassName","onMouseDown","assign","TextFieldInput","ref","CloseIconWrapper","tabIndex","CloseIcon","CancelCircleFilledIcon"],"mappings":"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"}
1
+ {"version":3,"file":"TextField.mjs","sources":["../../../../src/components/TextField/TextField.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n} from 'react'\n\nimport { CancelCircleFilledIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\nimport { v4 as uuid } from 'uuid'\n\nimport {\n COMMON_IME_CONTROL_KEYS,\n useKeyboardActionLockerWhileComposing,\n} from '~/src/hooks/useKeyboardActionLockerWhileComposing'\nimport { type FormFieldSize } from '~/src/types/props'\nimport { getFormFieldSizeClassName } from '~/src/types/props-helpers'\nimport { toString } from '~/src/utils/string'\nimport { isArray, isEmpty, isNil } from '~/src/utils/type'\n\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { useFormFieldProps } from '~/src/components/FormControl'\nimport { Icon } from '~/src/components/Icon'\nimport { useWindow } from '~/src/components/WindowProvider'\n\nimport {\n type SelectionRangeDirections,\n type TextFieldItemProps,\n type TextFieldProps,\n type TextFieldRef,\n} from './TextField.types'\n\nimport styles from './TextField.module.scss'\n\nexport const TEXT_INPUT_TEST_ID = 'bezier-text-input'\nexport const TEXT_INPUT_CLEAR_ICON_TEST_ID = 'bezier-text-input-clear-icon'\n\n/**\n * FIXME: This mapping constant was defined for UI consistency,\n * and it should be removed with size attribute\n */\nconst INPUT_LENGTH_BY_SIZE: Record<FormFieldSize, number> = {\n xs: 28,\n m: 36,\n l: 44,\n xl: 54,\n}\n\nfunction TextFieldLeftContent({\n children,\n wrapperStyle,\n wrapperClassName,\n withoutWrapper,\n}: {\n children: TextFieldProps['leftContent']\n wrapperStyle: TextFieldProps['leftWrapperStyle']\n wrapperClassName: TextFieldProps['leftWrapperClassName']\n withoutWrapper: TextFieldProps['withoutLeftContentWrapper']\n}) {\n if (isNil(children)) {\n return null\n }\n\n const Content = (() => {\n if ('icon' in children) {\n return (\n <Icon\n className={!isNil(children.onClick) ? styles.clickable : undefined}\n source={children.icon}\n size=\"s\"\n color={children.iconColor ?? 'txt-black-dark'}\n onClick={children.onClick}\n />\n )\n }\n\n return children\n })()\n\n if (withoutWrapper) {\n return Content\n }\n\n return (\n <div\n style={wrapperStyle}\n className={classNames(styles.LeftContentWrapper, wrapperClassName)}\n >\n {Content}\n </div>\n )\n}\n\nfunction TextFieldRightContent({\n children,\n wrapperStyle,\n wrapperClassName,\n withoutWrapper,\n}: {\n children: TextFieldProps['rightContent']\n wrapperStyle: TextFieldProps['rightWrapperStyle']\n wrapperClassName: TextFieldProps['rightWrapperClassName']\n withoutWrapper: TextFieldProps['withoutRightContentWrapper']\n}) {\n const renderRightItem = useCallback(\n (item: TextFieldItemProps, key?: string) => {\n if ('icon' in item) {\n const Comp = !isNil(item.onClick) ? BaseButton : 'div'\n\n return (\n <Comp\n key={key}\n className={styles.RightItemWrapper}\n onClick={item.onClick}\n >\n <Icon\n source={item.icon}\n size=\"xs\"\n color={item.iconColor ?? 'txt-black-dark'}\n />\n </Comp>\n )\n }\n\n return React.cloneElement(item, { key })\n },\n []\n )\n\n if (isNil(children) || isEmpty(children)) {\n return null\n }\n\n const contents = isArray(children)\n ? children.map((item) => renderRightItem(item, uuid()))\n : renderRightItem(children)\n\n if (withoutWrapper) {\n return <>{contents}</>\n }\n\n return (\n <div\n style={wrapperStyle}\n className={classNames(styles.RightContentWrapper, wrapperClassName)}\n >\n {contents}\n </div>\n )\n}\n\nexport const TextField = forwardRef<TextFieldRef, TextFieldProps>(\n function TextField(\n {\n type,\n size: sizeProps,\n autoFocus,\n autoComplete = 'off',\n variant = 'primary',\n allowClear = false,\n selectAllOnInit = false,\n selectAllOnFocus = false,\n leftContent,\n rightContent,\n withoutLeftContentWrapper = false,\n withoutRightContentWrapper = false,\n style,\n className,\n wrapperStyle,\n wrapperClassName,\n leftWrapperStyle,\n leftWrapperClassName,\n rightWrapperStyle,\n rightWrapperClassName,\n value,\n onFocus,\n onChange,\n onKeyDown,\n onKeyUp,\n ...rest\n },\n forwardedRef\n ) {\n const { window } = useWindow()\n\n const {\n disabled,\n readOnly,\n hasError,\n size: formFieldSize,\n ...ownProps\n } = useFormFieldProps(rest)\n\n const focusTimeout = useRef<ReturnType<Window['setTimeout']>>()\n const blurTimeout = useRef<ReturnType<Window['setTimeout']>>()\n\n const normalizedValue = isNil(value) ? undefined : toString(value)\n const activeInput = !disabled && !readOnly\n const activeClear = activeInput && allowClear && !isEmpty(normalizedValue)\n const size = sizeProps ?? formFieldSize ?? 'm'\n\n const inputRef = useRef<HTMLInputElement | null>(null)\n\n const focus = useCallback(() => {\n clearTimeout(focusTimeout.current)\n focusTimeout.current = window.setTimeout(() => {\n inputRef.current?.focus()\n }, 0)\n }, [window])\n\n const blur = useCallback(() => {\n clearTimeout(blurTimeout.current)\n blurTimeout.current = window.setTimeout(() => {\n inputRef.current?.blur()\n }, 0)\n }, [window])\n\n const setSelectionRange = useCallback(\n (start?: number, end?: number, direction?: SelectionRangeDirections) => {\n if (type && ['number', 'email', 'hidden'].includes(type)) {\n return\n }\n inputRef.current?.setSelectionRange(\n start || 0,\n end || 0,\n direction || 'none'\n )\n },\n [type]\n )\n\n const getSelectionRange = useCallback(\n (): [number, number] => [\n inputRef.current?.selectionStart || 0,\n inputRef.current?.selectionEnd || 0,\n ],\n []\n )\n\n const selectAll = useCallback(() => {\n focus()\n if (inputRef.current) {\n setSelectionRange(0, inputRef.current.value.length, 'backward')\n }\n }, [focus, setSelectionRange])\n\n const unselect = useCallback(() => {\n focus()\n if (inputRef.current) {\n const valueLen = inputRef.current.value.length\n setSelectionRange(valueLen, valueLen)\n }\n }, [focus, setSelectionRange])\n\n const getBoundingClientRect = useCallback((): DOMRect => {\n if (inputRef.current) {\n return inputRef.current.getBoundingClientRect()\n }\n return new DOMRect(undefined, undefined, 0, 0)\n }, [])\n\n const getDOMNode = useCallback(() => inputRef.current, [])\n\n const handle = useMemo(\n (): TextFieldRef => ({\n focus,\n blur,\n setSelectionRange,\n getSelectionRange,\n selectAll,\n unselect,\n getBoundingClientRect,\n getDOMNode,\n }),\n [\n focus,\n blur,\n setSelectionRange,\n getSelectionRange,\n selectAll,\n unselect,\n getBoundingClientRect,\n getDOMNode,\n ]\n )\n\n useImperativeHandle(forwardedRef, () => handle)\n\n useEffect(() => {\n if (autoFocus) {\n focus()\n }\n if (selectAllOnInit) {\n focus()\n selectAll()\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n const handleFocus = useCallback(\n (event: React.FocusEvent<HTMLInputElement>) => {\n if (!activeInput) {\n return\n }\n if (selectAllOnFocus) {\n selectAll()\n }\n if (onFocus) {\n onFocus(event)\n }\n },\n [selectAllOnFocus, selectAll, activeInput, onFocus]\n )\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n if (activeInput && onChange) {\n onChange(event)\n }\n },\n [activeInput, onChange]\n )\n\n const {\n handleKeyDown: handleKeyDownWrappedWithComposingLocker,\n handleKeyUp: handleKeyUpWrappedWithComposingLocker,\n } = useKeyboardActionLockerWhileComposing({\n keysToLock: COMMON_IME_CONTROL_KEYS,\n onKeyDown,\n onKeyUp,\n })\n\n const handleKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (activeInput && handleKeyDownWrappedWithComposingLocker) {\n handleKeyDownWrappedWithComposingLocker(event)\n }\n },\n [activeInput, handleKeyDownWrappedWithComposingLocker]\n )\n\n const handleKeyUp = useCallback(\n (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (activeInput && handleKeyUpWrappedWithComposingLocker) {\n handleKeyUpWrappedWithComposingLocker(event)\n }\n },\n [activeInput, handleKeyUpWrappedWithComposingLocker]\n )\n\n const handleClear = useCallback(() => {\n const input = inputRef.current\n if (activeInput && input) {\n const setValue = Object?.getOwnPropertyDescriptor(\n HTMLInputElement.prototype,\n 'value'\n )?.set\n const event = new Event('input', { bubbles: true })\n setValue?.call(input, '')\n input.dispatchEvent(event)\n }\n }, [activeInput])\n\n return (\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <div\n style={wrapperStyle}\n className={classNames(\n styles.TextFieldWrapper,\n styles[`variant-${variant}`],\n styles[`size-${size}`],\n getFormFieldSizeClassName(size),\n wrapperClassName\n )}\n data-testid={TEXT_INPUT_TEST_ID}\n onMouseDown={focus}\n >\n <TextFieldLeftContent\n wrapperStyle={leftWrapperStyle}\n wrapperClassName={leftWrapperClassName}\n withoutWrapper={withoutLeftContentWrapper}\n >\n {leftContent}\n </TextFieldLeftContent>\n\n <input\n style={style}\n className={classNames(styles.TextFieldInput, className)}\n ref={inputRef}\n type={type}\n value={normalizedValue}\n /**\n * Invalid size attribute\n * FIXME: https://github.com/channel-io/bezier-react/issues/1053\n */\n size={INPUT_LENGTH_BY_SIZE[size]}\n autoComplete={autoComplete}\n readOnly={readOnly}\n disabled={disabled}\n onFocus={handleFocus}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n onKeyUp={handleKeyUp}\n {...ownProps}\n />\n\n {activeClear && (\n <BaseButton\n className={styles.CloseIconWrapper}\n tabIndex={0}\n onClick={handleClear}\n >\n <Icon\n className={styles.CloseIcon}\n data-testid={TEXT_INPUT_CLEAR_ICON_TEST_ID}\n source={CancelCircleFilledIcon}\n size=\"xs\"\n />\n </BaseButton>\n )}\n\n <TextFieldRightContent\n wrapperStyle={rightWrapperStyle}\n withoutWrapper={withoutRightContentWrapper}\n wrapperClassName={rightWrapperClassName}\n >\n {rightContent}\n </TextFieldRightContent>\n </div>\n )\n }\n)\n"],"names":["TEXT_INPUT_TEST_ID","TEXT_INPUT_CLEAR_ICON_TEST_ID","INPUT_LENGTH_BY_SIZE","xs","m","l","xl","TextFieldLeftContent","children","wrapperStyle","wrapperClassName","withoutWrapper","isNil","Content","React","createElement","Icon","className","onClick","styles","clickable","undefined","source","icon","size","color","iconColor","style","classNames","LeftContentWrapper","TextFieldRightContent","renderRightItem","useCallback","item","key","Comp","BaseButton","RightItemWrapper","cloneElement","isEmpty","contents","isArray","map","uuid","Fragment","RightContentWrapper","TextField","forwardRef","type","sizeProps","autoFocus","autoComplete","variant","allowClear","selectAllOnInit","selectAllOnFocus","leftContent","rightContent","withoutLeftContentWrapper","withoutRightContentWrapper","leftWrapperStyle","leftWrapperClassName","rightWrapperStyle","rightWrapperClassName","value","onFocus","onChange","onKeyDown","onKeyUp","rest","forwardedRef","window","useWindow","disabled","readOnly","hasError","formFieldSize","ownProps","useFormFieldProps","focusTimeout","useRef","blurTimeout","normalizedValue","toString","activeInput","activeClear","inputRef","focus","clearTimeout","current","setTimeout","blur","setSelectionRange","start","end","direction","includes","getSelectionRange","selectionStart","selectionEnd","selectAll","length","unselect","valueLen","getBoundingClientRect","DOMRect","getDOMNode","handle","useMemo","useImperativeHandle","useEffect","handleFocus","event","handleChange","handleKeyDown","handleKeyDownWrappedWithComposingLocker","handleKeyUp","handleKeyUpWrappedWithComposingLocker","useKeyboardActionLockerWhileComposing","keysToLock","COMMON_IME_CONTROL_KEYS","handleClear","input","setValue","Object","getOwnPropertyDescriptor","HTMLInputElement","prototype","set","Event","bubbles","call","dispatchEvent","TextFieldWrapper","getFormFieldSizeClassName","onMouseDown","assign","TextFieldInput","ref","CloseIconWrapper","tabIndex","CloseIcon","CancelCircleFilledIcon"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- var styles = {"TextFieldInput":"b-QLq6v","CloseIcon":"b-fdLzK","TextFieldWrapper":"b-AJ8CN","variant-secondary":"b-KuNM4","size-l":"b-9a8IE","size-xl":"b-z0jWx","variant-primary":"b-uaoi1","clickable":"b-5RE73","LeftContentWrapper":"b-bVaJe","RightContentWrapper":"b-woldV","RightItemWrapper":"b-TtCx2","CloseIconWrapper":"b-t6Z-k"};
1
+ var styles = {"TextFieldInput":"b-QLq6v","CloseIcon":"b-fdLzK","TextFieldWrapper":"b-AJ8CN","variant-secondary":"b-KuNM4","size-l":"b-9a8IE","size-xl":"b-z0jWx","variant-primary":"b-uaoi1","CloseIconWrapper":"b-t6Z-k","clickable":"b-5RE73","LeftContentWrapper":"b-bVaJe","RightContentWrapper":"b-woldV","RightItemWrapper":"b-TtCx2"};
2
2
 
3
3
  export { styles as default };
4
4
  //# sourceMappingURL=TextField.module.scss.mjs.map
@@ -10,6 +10,7 @@ function assignRef(ref, value) {
10
10
  }
11
11
  try {
12
12
  ref.current = value;
13
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
13
14
  } catch (error) {
14
15
  throw new Error(`Cannot assign value '${value}' to ref '${ref}'`);
15
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useMergeRefs.mjs","sources":["../../../src/hooks/useMergeRefs.ts"],"sourcesContent":["import { useMemo } from 'react'\n\ntype ReactRef<Node> =\n | React.RefCallback<Node>\n | React.MutableRefObject<Node | null>\n\ntype Ref<Node> = ReactRef<Node> | null | undefined\ntype Refs<Node> = Array<Ref<Node>>\n\nfunction assignRef<Node>(ref: Ref<Node>, value: Node | null) {\n if (ref === null || ref === undefined) {\n return\n }\n\n if (typeof ref === 'function') {\n ref(value)\n return\n }\n\n try {\n ref.current = value\n } catch (error) {\n throw new Error(`Cannot assign value '${value}' to ref '${ref}'`)\n }\n}\n\nfunction mergeRefs<Node>(...refs: Refs<Node>) {\n return (node: Node | null) => {\n refs.forEach((ref) => {\n assignRef(ref, node)\n })\n }\n}\n\nexport default function useMergeRefs<Node>(...refs: Refs<Node>) {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return useMemo(() => mergeRefs(...refs), refs)\n}\n"],"names":["assignRef","ref","value","undefined","current","error","Error","mergeRefs","refs","node","forEach","useMergeRefs","useMemo"],"mappings":";;AASA,SAASA,SAASA,CAAOC,GAAc,EAAEC,KAAkB,EAAE;AAC3D,EAAA,IAAID,GAAG,KAAK,IAAI,IAAIA,GAAG,KAAKE,SAAS,EAAE;AACrC,IAAA,OAAA;AACF,GAAA;AAEA,EAAA,IAAI,OAAOF,GAAG,KAAK,UAAU,EAAE;IAC7BA,GAAG,CAACC,KAAK,CAAC,CAAA;AACV,IAAA,OAAA;AACF,GAAA;EAEA,IAAI;IACFD,GAAG,CAACG,OAAO,GAAGF,KAAK,CAAA;GACpB,CAAC,OAAOG,KAAK,EAAE;IACd,MAAM,IAAIC,KAAK,CAAC,CAAA,qBAAA,EAAwBJ,KAAK,CAAaD,UAAAA,EAAAA,GAAG,GAAG,CAAC,CAAA;AACnE,GAAA;AACF,CAAA;AAEA,SAASM,SAASA,CAAO,GAAGC,IAAgB,EAAE;AAC5C,EAAA,OAAQC,IAAiB,IAAK;AAC5BD,IAAAA,IAAI,CAACE,OAAO,CAAET,GAAG,IAAK;AACpBD,MAAAA,SAAS,CAACC,GAAG,EAAEQ,IAAI,CAAC,CAAA;AACtB,KAAC,CAAC,CAAA;GACH,CAAA;AACH,CAAA;AAEe,SAASE,YAAYA,CAAO,GAAGH,IAAgB,EAAE;AAC9D;EACA,OAAOI,OAAO,CAAC,MAAML,SAAS,CAAC,GAAGC,IAAI,CAAC,EAAEA,IAAI,CAAC,CAAA;AAChD;;;;"}
1
+ {"version":3,"file":"useMergeRefs.mjs","sources":["../../../src/hooks/useMergeRefs.ts"],"sourcesContent":["import { useMemo } from 'react'\n\ntype ReactRef<Node> =\n | React.RefCallback<Node>\n | React.MutableRefObject<Node | null>\n\ntype Ref<Node> = ReactRef<Node> | null | undefined\ntype Refs<Node> = Array<Ref<Node>>\n\nfunction assignRef<Node>(ref: Ref<Node>, value: Node | null) {\n if (ref === null || ref === undefined) {\n return\n }\n\n if (typeof ref === 'function') {\n ref(value)\n return\n }\n\n try {\n ref.current = value\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n } catch (error) {\n throw new Error(`Cannot assign value '${value}' to ref '${ref}'`)\n }\n}\n\nfunction mergeRefs<Node>(...refs: Refs<Node>) {\n return (node: Node | null) => {\n refs.forEach((ref) => {\n assignRef(ref, node)\n })\n }\n}\n\nexport default function useMergeRefs<Node>(...refs: Refs<Node>) {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return useMemo(() => mergeRefs(...refs), refs)\n}\n"],"names":["assignRef","ref","value","undefined","current","error","Error","mergeRefs","refs","node","forEach","useMergeRefs","useMemo"],"mappings":";;AASA,SAASA,SAASA,CAAOC,GAAc,EAAEC,KAAkB,EAAE;AAC3D,EAAA,IAAID,GAAG,KAAK,IAAI,IAAIA,GAAG,KAAKE,SAAS,EAAE;AACrC,IAAA,OAAA;AACF,GAAA;AAEA,EAAA,IAAI,OAAOF,GAAG,KAAK,UAAU,EAAE;IAC7BA,GAAG,CAACC,KAAK,CAAC,CAAA;AACV,IAAA,OAAA;AACF,GAAA;EAEA,IAAI;IACFD,GAAG,CAACG,OAAO,GAAGF,KAAK,CAAA;AACnB;GACD,CAAC,OAAOG,KAAK,EAAE;IACd,MAAM,IAAIC,KAAK,CAAC,CAAA,qBAAA,EAAwBJ,KAAK,CAAaD,UAAAA,EAAAA,GAAG,GAAG,CAAC,CAAA;AACnE,GAAA;AACF,CAAA;AAEA,SAASM,SAASA,CAAO,GAAGC,IAAgB,EAAE;AAC5C,EAAA,OAAQC,IAAiB,IAAK;AAC5BD,IAAAA,IAAI,CAACE,OAAO,CAAET,GAAG,IAAK;AACpBD,MAAAA,SAAS,CAACC,GAAG,EAAEQ,IAAI,CAAC,CAAA;AACtB,KAAC,CAAC,CAAA;GACH,CAAA;AACH,CAAA;AAEe,SAASE,YAAYA,CAAO,GAAGH,IAAgB,EAAE;AAC9D;EACA,OAAOI,OAAO,CAAC,MAAML,SAAS,CAAC,GAAGC,IAAI,CAAC,EAAEA,IAAI,CAAC,CAAA;AAChD;;;;"}
@@ -7,7 +7,7 @@ export { DialogPrimitive as AlphaDialogPrimitive, DialogPrimitiveClose as AlphaD
7
7
  export { FloatingButton as AlphaFloatingButton } from './components/AlphaFloatingButton/FloatingButton.mjs';
8
8
  export { FloatingIconButton as AlphaFloatingIconButton } from './components/AlphaFloatingIconButton/FloatingIconButton.mjs';
9
9
  export { IconButton as AlphaIconButton } from './components/AlphaIconButton/IconButton.mjs';
10
- export { Spinner as AlphaSpinner } from './components/AlphaSpinner/Spinner.mjs';
10
+ export { Loader as AlphaLoader } from './components/AlphaLoader/Loader.mjs';
11
11
  export { ToggleButton as AlphaToggleButton } from './components/AlphaToggleButton/ToggleButton.mjs';
12
12
  export { ToggleButtonGroup } from './components/AlphaToggleButtonGroup/ToggleButtonGroup.mjs';
13
13
  export { TooltipPrimitive as AlphaTooltipPrimitive, TooltipPrimitiveArrow as AlphaTooltipPrimitiveArrow, TooltipPrimitiveContent as AlphaTooltipPrimitiveContent, TooltipPrimitivePortal as AlphaTooltipPrimitivePortal, TooltipPrimitiveProvider as AlphaTooltipPrimitiveProvider, TooltipPrimitiveTrigger as AlphaTooltipPrimitiveTrigger } from './components/AlphaTooltipPrimitive/TooltipPrimitive.mjs';