@salutejs/plasma-new-hope 0.142.0-canary.1421.10790809666.0 → 0.142.0-canary.1424.10789422667.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (105) hide show
  1. package/cjs/components/Badge/Badge.css +2 -0
  2. package/cjs/components/Badge/Badge.js +12 -3
  3. package/cjs/components/Badge/Badge.js.map +1 -1
  4. package/cjs/components/Badge/Badge.tokens.js +3 -1
  5. package/cjs/components/Badge/Badge.tokens.js.map +1 -1
  6. package/cjs/components/Badge/variations/_clear/base.js +9 -0
  7. package/cjs/components/Badge/variations/_clear/base.js.map +1 -0
  8. package/cjs/components/Badge/variations/_clear/base_oopyb7.css +1 -0
  9. package/cjs/components/TextArea/TextArea.js +2 -4
  10. package/cjs/components/TextArea/TextArea.js.map +1 -1
  11. package/cjs/index.css +2 -0
  12. package/cjs/index.js +0 -3
  13. package/cjs/index.js.map +1 -1
  14. package/cjs/utils/index.js.map +1 -1
  15. package/emotion/cjs/components/Badge/Badge.js +12 -3
  16. package/emotion/cjs/components/Badge/Badge.template-doc.mdx +19 -28
  17. package/emotion/cjs/components/Badge/Badge.tokens.js +3 -1
  18. package/emotion/cjs/components/Badge/variations/_clear/base.js +9 -0
  19. package/emotion/cjs/components/Badge/variations/_clear/tokens.json +1 -0
  20. package/emotion/cjs/components/TextArea/TextArea.js +3 -4
  21. package/emotion/cjs/examples/plasma_b2c/components/Badge/Badge.config.js +15 -12
  22. package/emotion/cjs/examples/plasma_b2c/components/Badge/Badge.stories.tsx +38 -6
  23. package/emotion/cjs/examples/plasma_web/components/Badge/Badge.config.js +15 -12
  24. package/emotion/cjs/examples/plasma_web/components/Badge/Badge.stories.tsx +39 -6
  25. package/emotion/cjs/utils/index.js +0 -15
  26. package/emotion/es/components/Badge/Badge.js +12 -3
  27. package/emotion/es/components/Badge/Badge.template-doc.mdx +19 -28
  28. package/emotion/es/components/Badge/Badge.tokens.js +3 -1
  29. package/emotion/es/components/Badge/variations/_clear/base.js +3 -0
  30. package/emotion/es/components/Badge/variations/_clear/tokens.json +1 -0
  31. package/emotion/es/components/TextArea/TextArea.js +4 -5
  32. package/emotion/es/examples/plasma_b2c/components/Badge/Badge.config.js +15 -12
  33. package/emotion/es/examples/plasma_b2c/components/Badge/Badge.stories.tsx +38 -6
  34. package/emotion/es/examples/plasma_web/components/Badge/Badge.config.js +15 -12
  35. package/emotion/es/examples/plasma_web/components/Badge/Badge.stories.tsx +39 -6
  36. package/emotion/es/utils/index.js +0 -1
  37. package/es/components/Badge/Badge.css +2 -0
  38. package/es/components/Badge/Badge.js +12 -3
  39. package/es/components/Badge/Badge.js.map +1 -1
  40. package/es/components/Badge/Badge.tokens.js +3 -1
  41. package/es/components/Badge/Badge.tokens.js.map +1 -1
  42. package/es/components/Badge/variations/_clear/base.js +5 -0
  43. package/es/components/Badge/variations/_clear/base.js.map +1 -0
  44. package/es/components/Badge/variations/_clear/base_oopyb7.css +1 -0
  45. package/es/components/TextArea/TextArea.js +2 -4
  46. package/es/components/TextArea/TextArea.js.map +1 -1
  47. package/es/index.css +2 -0
  48. package/es/index.js +0 -1
  49. package/es/index.js.map +1 -1
  50. package/es/utils/index.js.map +1 -1
  51. package/package.json +2 -3
  52. package/styled-components/cjs/components/Badge/Badge.js +12 -3
  53. package/styled-components/cjs/components/Badge/Badge.template-doc.mdx +19 -28
  54. package/styled-components/cjs/components/Badge/Badge.tokens.js +3 -1
  55. package/styled-components/cjs/components/Badge/variations/_clear/base.js +9 -0
  56. package/styled-components/cjs/components/Badge/variations/_clear/tokens.json +1 -0
  57. package/styled-components/cjs/components/TextArea/TextArea.js +2 -3
  58. package/styled-components/cjs/examples/plasma_b2c/components/Badge/Badge.config.js +10 -7
  59. package/styled-components/cjs/examples/plasma_b2c/components/Badge/Badge.stories.tsx +38 -6
  60. package/styled-components/cjs/examples/plasma_web/components/Badge/Badge.config.js +10 -7
  61. package/styled-components/cjs/examples/plasma_web/components/Badge/Badge.stories.tsx +39 -6
  62. package/styled-components/cjs/utils/index.js +0 -15
  63. package/styled-components/es/components/Badge/Badge.js +12 -3
  64. package/styled-components/es/components/Badge/Badge.template-doc.mdx +19 -28
  65. package/styled-components/es/components/Badge/Badge.tokens.js +3 -1
  66. package/styled-components/es/components/Badge/variations/_clear/base.js +3 -0
  67. package/styled-components/es/components/Badge/variations/_clear/tokens.json +1 -0
  68. package/styled-components/es/components/TextArea/TextArea.js +3 -4
  69. package/styled-components/es/examples/plasma_b2c/components/Badge/Badge.config.js +10 -7
  70. package/styled-components/es/examples/plasma_b2c/components/Badge/Badge.stories.tsx +38 -6
  71. package/styled-components/es/examples/plasma_web/components/Badge/Badge.config.js +10 -7
  72. package/styled-components/es/examples/plasma_web/components/Badge/Badge.stories.tsx +39 -6
  73. package/styled-components/es/utils/index.js +0 -1
  74. package/types/components/Badge/Badge.d.ts +7 -23
  75. package/types/components/Badge/Badge.d.ts.map +1 -1
  76. package/types/components/Badge/Badge.tokens.d.ts +2 -0
  77. package/types/components/Badge/Badge.tokens.d.ts.map +1 -1
  78. package/types/components/Badge/Badge.types.d.ts +60 -9
  79. package/types/components/Badge/Badge.types.d.ts.map +1 -1
  80. package/types/components/Badge/variations/_clear/base.d.ts +2 -0
  81. package/types/components/Badge/variations/_clear/base.d.ts.map +1 -0
  82. package/types/examples/plasma_b2c/components/Badge/Badge.config.d.ts +3 -0
  83. package/types/examples/plasma_b2c/components/Badge/Badge.config.d.ts.map +1 -1
  84. package/types/examples/plasma_b2c/components/Badge/Badge.d.ts +32 -3
  85. package/types/examples/plasma_b2c/components/Badge/Badge.d.ts.map +1 -1
  86. package/types/examples/plasma_web/components/Badge/Badge.config.d.ts +3 -0
  87. package/types/examples/plasma_web/components/Badge/Badge.config.d.ts.map +1 -1
  88. package/types/examples/plasma_web/components/Badge/Badge.d.ts +32 -3
  89. package/types/examples/plasma_web/components/Badge/Badge.d.ts.map +1 -1
  90. package/types/utils/index.d.ts +0 -1
  91. package/types/utils/index.d.ts.map +1 -1
  92. package/cjs/utils/setRefList.js +0 -28
  93. package/cjs/utils/setRefList.js.map +0 -1
  94. package/emotion/cjs/examples/plasma_b2c/components/Form/Form.stories.tsx +0 -68
  95. package/emotion/cjs/utils/setRefList.js +0 -27
  96. package/emotion/es/examples/plasma_b2c/components/Form/Form.stories.tsx +0 -68
  97. package/emotion/es/utils/setRefList.js +0 -20
  98. package/es/utils/setRefList.js +0 -23
  99. package/es/utils/setRefList.js.map +0 -1
  100. package/styled-components/cjs/examples/plasma_b2c/components/Form/Form.stories.tsx +0 -68
  101. package/styled-components/cjs/utils/setRefList.js +0 -27
  102. package/styled-components/es/examples/plasma_b2c/components/Form/Form.stories.tsx +0 -68
  103. package/styled-components/es/utils/setRefList.js +0 -20
  104. package/types/utils/setRefList.d.ts +0 -6
  105. package/types/utils/setRefList.d.ts.map +0 -1
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React, { ComponentProps } from 'react';
2
2
  import { disableProps } from '@salutejs/plasma-sb-utils';
3
3
  import type { StoryObj, Meta } from '@storybook/react';
4
4
 
@@ -8,6 +8,7 @@ import { Badge } from './Badge';
8
8
 
9
9
  const meta: Meta<typeof Badge> = {
10
10
  title: 'plasma_web/Badge',
11
+ component: Badge,
11
12
  decorators: [WithTheme],
12
13
  argTypes: {
13
14
  size: {
@@ -22,13 +23,25 @@ const meta: Meta<typeof Badge> = {
22
23
  type: 'select',
23
24
  },
24
25
  },
26
+ pilled: {
27
+ control: { type: 'boolean' },
28
+ if: { arg: 'clear', truthy: false },
29
+ },
30
+ transparent: {
31
+ control: { type: 'boolean' },
32
+ if: { arg: 'clear', truthy: false },
33
+ },
25
34
  ...disableProps(['contentLeft', 'contentRight']),
26
35
  },
27
36
  };
28
37
 
29
38
  export default meta;
30
39
 
31
- type Story = StoryObj<typeof Badge>;
40
+ type StoryProps = ComponentProps<typeof Badge> & {
41
+ enableContentLeft: boolean;
42
+ enableContentRight: boolean;
43
+ };
44
+ type Story = StoryObj<StoryProps>;
32
45
 
33
46
  const BellIcon = (props) => (
34
47
  <svg width="100%" viewBox="0 0 24 24" fill="none" {...props}>
@@ -40,16 +53,36 @@ const BellIcon = (props) => (
40
53
  );
41
54
 
42
55
  export const Default: Story = {
56
+ argTypes: {
57
+ enableContentLeft: {
58
+ control: { type: 'boolean' },
59
+ if: { arg: 'enableContentRight', truthy: false },
60
+ },
61
+ enableContentRight: {
62
+ control: { type: 'boolean' },
63
+ if: { arg: 'enableContentLeft', truthy: false },
64
+ },
65
+ },
43
66
  args: {
44
67
  text: 'Hello',
45
68
  view: 'default',
46
69
  size: 'm',
70
+ enableContentLeft: false,
71
+ enableContentRight: false,
47
72
  pilled: false,
48
73
  transparent: false,
74
+ clear: false,
49
75
  },
50
- };
76
+ render: ({ enableContentLeft, enableContentRight, size, ...rest }: StoryProps) => {
77
+ const iconSize = size === 'l' ? '1rem' : '0.75rem';
51
78
 
52
- export const WithIcon: Story = {
53
- args: { ...Default.args },
54
- render: (args) => <Badge contentLeft={<BellIcon width="1rem" height="1rem" />} {...args} />,
79
+ return (
80
+ <Badge
81
+ contentLeft={enableContentLeft ? <BellIcon width={iconSize} height={iconSize} /> : undefined}
82
+ contentRight={enableContentRight ? <BellIcon width={iconSize} height={iconSize} /> : undefined}
83
+ size={size}
84
+ {...rest}
85
+ />
86
+ );
87
+ },
55
88
  };
@@ -3,7 +3,6 @@ export { extractTextFrom } from './extractTextFrom';
3
3
  export { getSizeValueFromProp } from './getSizeValueFromProp';
4
4
  export { IS_REACT_18, safeUseId } from './react';
5
5
  export { isNumber } from './isNumber';
6
- export { mergeRefs, setRefList } from './setRefList';
7
6
  export { isEmpty } from './isEmpty';
8
7
  export * from './getPopoverPlacement';
9
8
  export var cx = function cx() {
@@ -6,6 +6,8 @@
6
6
 
7
7
  .base_1l6036y_binquhc__5cc72580.base_1l6036y_badgeTransparent__5cc72580{color:var(--plasma-badge-color-transparent);background-color:var(--plasma-badge-background-transparent);}
8
8
 
9
+ .base_oopyb7_b1e1wuvi__72387433.base_oopyb7_badgeClear__72387433{color:var(--plasma-badge-color-clear);background-color:transparent;padding:0;}
10
+
9
11
  .Badge_styles_8pi3br_b1t43xoe__783e5f62{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;box-sizing:border-box;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;width:-webkit-max-content;width:-moz-max-content;width:max-content;}
10
12
  .Badge_styles_8pi3br_st1n7hr__783e5f62{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-badge-left-content-margin-left);margin-right:var(--plasma-badge-left-content-margin-right);}
11
13
 
@@ -5,10 +5,11 @@ import { base as base$1 } from './variations/_view/base.js';
5
5
  import { base as base$2 } from './variations/_size/base.js';
6
6
  import { base as base$3 } from './variations/_pilled/base.js';
7
7
  import { base as base$4 } from './variations/_transparent/base.js';
8
+ import { base as base$5 } from './variations/_clear/base.js';
8
9
  import { StyledContentLeft, StyledContentMain, StyledContentRight, base } from './Badge.styles.js';
9
10
  import { classes } from './Badge.tokens.js';
10
11
 
11
- var _excluded = ["children", "className", "text", "contentLeft", "contentRight", "size", "view", "pilled", "transparent"];
12
+ var _excluded = ["children", "className", "text", "contentLeft", "contentRight", "size", "view", "pilled", "transparent", "clear"];
12
13
  var badgeRoot = function badgeRoot(Root) {
13
14
  return /*#__PURE__*/forwardRef(function (props, ref) {
14
15
  var children = props.children,
@@ -22,17 +23,21 @@ var badgeRoot = function badgeRoot(Root) {
22
23
  pilled = _props$pilled === void 0 ? false : _props$pilled,
23
24
  _props$transparent = props.transparent,
24
25
  transparent = _props$transparent === void 0 ? false : _props$transparent,
26
+ _props$clear = props.clear,
27
+ clear = _props$clear === void 0 ? false : _props$clear,
25
28
  rest = _objectWithoutProperties(props, _excluded);
26
29
  var pilledClass = pilled ? classes.badgePilled : undefined;
27
30
  var transparentClass = transparent ? classes.badgeTransparent : undefined;
31
+ var clearClass = clear ? classes.badgeClear : undefined;
28
32
  var txt = !text && typeof children === 'string' ? children : text;
29
33
  return /*#__PURE__*/React.createElement(Root, _extends({
30
34
  ref: ref,
31
- className: cx(pilledClass, transparentClass, className),
35
+ className: cx(pilledClass, transparentClass, clearClass, className),
32
36
  view: view,
33
37
  size: size,
34
38
  pilled: pilled,
35
- transparent: transparent
39
+ transparent: transparent,
40
+ clear: clear
36
41
  }, rest), contentLeft && /*#__PURE__*/React.createElement(StyledContentLeft, null, contentLeft), txt ? /*#__PURE__*/React.createElement(StyledContentMain, null, txt) : children, contentRight && /*#__PURE__*/React.createElement(StyledContentRight, null, contentRight));
37
42
  });
38
43
  };
@@ -55,6 +60,10 @@ var badgeConfig = {
55
60
  transparent: {
56
61
  css: base$4,
57
62
  attrs: true
63
+ },
64
+ clear: {
65
+ css: base$5,
66
+ attrs: true
58
67
  }
59
68
  },
60
69
  defaults: {
@@ -1 +1 @@
1
- {"version":3,"file":"Badge.js","sources":["../../../src/components/Badge/Badge.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport type { RootProps } from '../../engines';\nimport { cx } from '../../utils';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as pilledCSS } from './variations/_pilled/base';\nimport { base as transparentCSS } from './variations/_transparent/base';\nimport type { BadgeProps } from './Badge.types';\nimport { StyledContentLeft, StyledContentMain, StyledContentRight, base } from './Badge.styles';\nimport { classes } from './Badge.tokens';\n\nexport const badgeRoot = (Root: RootProps<HTMLDivElement, BadgeProps>) =>\n forwardRef<HTMLDivElement, BadgeProps>((props, ref) => {\n const {\n children,\n className,\n text,\n contentLeft,\n contentRight,\n size,\n view,\n pilled = false,\n transparent = false,\n ...rest\n } = props;\n\n const pilledClass = pilled ? classes.badgePilled : undefined;\n const transparentClass = transparent ? classes.badgeTransparent : undefined;\n const txt = !text && typeof children === 'string' ? children : text;\n\n return (\n <Root\n ref={ref}\n className={cx(pilledClass, transparentClass, className)}\n view={view}\n size={size}\n pilled={pilled}\n transparent={transparent}\n {...rest}\n >\n {contentLeft && <StyledContentLeft>{contentLeft}</StyledContentLeft>}\n {txt ? <StyledContentMain>{txt}</StyledContentMain> : children}\n {contentRight && <StyledContentRight>{contentRight}</StyledContentRight>}\n </Root>\n );\n });\n\nexport const badgeConfig = {\n name: 'Badge',\n tag: 'div',\n layout: badgeRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n pilled: {\n css: pilledCSS,\n attrs: true,\n },\n transparent: {\n css: transparentCSS,\n attrs: true,\n },\n },\n defaults: {\n view: 'primary',\n size: 'm',\n },\n};\n"],"names":["badgeRoot","Root","forwardRef","props","ref","children","className","text","contentLeft","contentRight","size","view","_props$pilled","pilled","_props$transparent","transparent","rest","_objectWithoutProperties","_excluded","pilledClass","classes","badgePilled","undefined","transparentClass","badgeTransparent","txt","React","createElement","_extends","cx","StyledContentLeft","StyledContentMain","StyledContentRight","badgeConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","pilledCSS","attrs","transparentCSS","defaults"],"mappings":";;;;;;;;;;;IAaaA,SAAS,GAAG,SAAZA,SAASA,CAAIC,IAA2C,EAAA;AAAA,EAAA,oBACjEC,UAAU,CAA6B,UAACC,KAAK,EAAEC,GAAG,EAAK;AACnD,IAAA,IACIC,QAAQ,GAURF,KAAK,CAVLE,QAAQ;MACRC,SAAS,GASTH,KAAK,CATLG,SAAS;MACTC,IAAI,GAQJJ,KAAK,CARLI,IAAI;MACJC,WAAW,GAOXL,KAAK,CAPLK,WAAW;MACXC,YAAY,GAMZN,KAAK,CANLM,YAAY;MACZC,IAAI,GAKJP,KAAK,CALLO,IAAI;MACJC,IAAI,GAIJR,KAAK,CAJLQ,IAAI;MAAAC,aAAA,GAIJT,KAAK,CAHLU,MAAM;AAANA,MAAAA,MAAM,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,aAAA;MAAAE,kBAAA,GAGdX,KAAK,CAFLY,WAAW;AAAXA,MAAAA,WAAW,GAAAD,kBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,kBAAA;AAChBE,MAAAA,IAAI,GAAAC,wBAAA,CACPd,KAAK,EAAAe,SAAA,CAAA,CAAA;IAET,IAAMC,WAAW,GAAGN,MAAM,GAAGO,OAAO,CAACC,WAAW,GAAGC,SAAS,CAAA;IAC5D,IAAMC,gBAAgB,GAAGR,WAAW,GAAGK,OAAO,CAACI,gBAAgB,GAAGF,SAAS,CAAA;AAC3E,IAAA,IAAMG,GAAG,GAAG,CAAClB,IAAI,IAAI,OAAOF,QAAQ,KAAK,QAAQ,GAAGA,QAAQ,GAAGE,IAAI,CAAA;AAEnE,IAAA,oBACImB,KAAA,CAAAC,aAAA,CAAC1B,IAAI,EAAA2B,QAAA,CAAA;AACDxB,MAAAA,GAAG,EAAEA,GAAI;MACTE,SAAS,EAAEuB,EAAE,CAACV,WAAW,EAAEI,gBAAgB,EAAEjB,SAAS,CAAE;AACxDK,MAAAA,IAAI,EAAEA,IAAK;AACXD,MAAAA,IAAI,EAAEA,IAAK;AACXG,MAAAA,MAAM,EAAEA,MAAO;AACfE,MAAAA,WAAW,EAAEA,WAAAA;AAAY,KAAA,EACrBC,IAAI,CAEPR,EAAAA,WAAW,iBAAIkB,KAAA,CAAAC,aAAA,CAACG,iBAAiB,EAAA,IAAA,EAAEtB,WAA+B,CAAC,EACnEiB,GAAG,gBAAGC,KAAA,CAAAC,aAAA,CAACI,iBAAiB,QAAEN,GAAuB,CAAC,GAAGpB,QAAQ,EAC7DI,YAAY,iBAAIiB,KAAA,CAAAC,aAAA,CAACK,kBAAkB,EAAEvB,IAAAA,EAAAA,YAAiC,CACrE,CAAC,CAAA;AAEf,GAAC,CAAC,CAAA;AAAA,EAAA;AAEC,IAAMwB,WAAW,GAAG;AACvBC,EAAAA,IAAI,EAAE,OAAO;AACbC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAEpC,SAAS;AACjBqC,EAAAA,IAAI,EAAJA,IAAI;AACJC,EAAAA,UAAU,EAAE;AACR3B,IAAAA,IAAI,EAAE;AACF4B,MAAAA,GAAG,EAAEC,MAAAA;KACR;AACD9B,IAAAA,IAAI,EAAE;AACF6B,MAAAA,GAAG,EAAEE,MAAAA;KACR;AACD5B,IAAAA,MAAM,EAAE;AACJ0B,MAAAA,GAAG,EAAEG,MAAS;AACdC,MAAAA,KAAK,EAAE,IAAA;KACV;AACD5B,IAAAA,WAAW,EAAE;AACTwB,MAAAA,GAAG,EAAEK,MAAc;AACnBD,MAAAA,KAAK,EAAE,IAAA;AACX,KAAA;GACH;AACDE,EAAAA,QAAQ,EAAE;AACNlC,IAAAA,IAAI,EAAE,SAAS;AACfD,IAAAA,IAAI,EAAE,GAAA;AACV,GAAA;AACJ;;;;"}
1
+ {"version":3,"file":"Badge.js","sources":["../../../src/components/Badge/Badge.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport type { RootProps } from '../../engines';\nimport { cx } from '../../utils';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as pilledCSS } from './variations/_pilled/base';\nimport { base as transparentCSS } from './variations/_transparent/base';\nimport { base as clearCSS } from './variations/_clear/base';\nimport type { BadgeProps, BadgeRootProps } from './Badge.types';\nimport { StyledContentLeft, StyledContentMain, StyledContentRight, base } from './Badge.styles';\nimport { classes } from './Badge.tokens';\n\nexport const badgeRoot = (Root: RootProps<HTMLDivElement, BadgeRootProps>) =>\n forwardRef<HTMLDivElement, BadgeProps>((props, ref) => {\n const {\n children,\n className,\n text,\n contentLeft,\n contentRight,\n size,\n view,\n pilled = false,\n transparent = false,\n clear = false,\n ...rest\n } = props;\n\n const pilledClass = pilled ? classes.badgePilled : undefined;\n const transparentClass = transparent ? classes.badgeTransparent : undefined;\n const clearClass = clear ? classes.badgeClear : undefined;\n const txt = !text && typeof children === 'string' ? children : text;\n\n return (\n <Root\n ref={ref}\n className={cx(pilledClass, transparentClass, clearClass, className)}\n view={view}\n size={size}\n pilled={pilled}\n transparent={transparent}\n clear={clear}\n {...rest}\n >\n {contentLeft && <StyledContentLeft>{contentLeft}</StyledContentLeft>}\n {txt ? <StyledContentMain>{txt}</StyledContentMain> : children}\n {contentRight && <StyledContentRight>{contentRight}</StyledContentRight>}\n </Root>\n );\n });\n\nexport const badgeConfig = {\n name: 'Badge',\n tag: 'div',\n layout: badgeRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n pilled: {\n css: pilledCSS,\n attrs: true,\n },\n transparent: {\n css: transparentCSS,\n attrs: true,\n },\n clear: {\n css: clearCSS,\n attrs: true,\n },\n },\n defaults: {\n view: 'primary',\n size: 'm',\n },\n};\n"],"names":["badgeRoot","Root","forwardRef","props","ref","children","className","text","contentLeft","contentRight","size","view","_props$pilled","pilled","_props$transparent","transparent","_props$clear","clear","rest","_objectWithoutProperties","_excluded","pilledClass","classes","badgePilled","undefined","transparentClass","badgeTransparent","clearClass","badgeClear","txt","React","createElement","_extends","cx","StyledContentLeft","StyledContentMain","StyledContentRight","badgeConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","pilledCSS","attrs","transparentCSS","clearCSS","defaults"],"mappings":"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"}
@@ -1,12 +1,14 @@
1
1
  var classes = {
2
2
  badgePilled: 'badge-pilled',
3
- badgeTransparent: 'badge-transparent'
3
+ badgeTransparent: 'badge-transparent',
4
+ badgeClear: 'badge-clear'
4
5
  };
5
6
  var tokens = {
6
7
  background: '--plasma-badge-background',
7
8
  color: '--plasma-badge-color',
8
9
  backgroundTransparent: '--plasma-badge-background-transparent',
9
10
  colorTransparent: '--plasma-badge-color-transparent',
11
+ colorClear: '--plasma-badge-color-clear',
10
12
  borderRadius: '--plasma-badge-border-radius',
11
13
  pilledBorderRadius: '--plasma-badge-pilled-border-radius',
12
14
  height: '--plasma-badge-height',
@@ -1 +1 @@
1
- {"version":3,"file":"Badge.tokens.js","sources":["../../../src/components/Badge/Badge.tokens.ts"],"sourcesContent":["export const classes = {\n badgePilled: 'badge-pilled',\n badgeTransparent: 'badge-transparent',\n};\n\nexport const tokens = {\n background: '--plasma-badge-background',\n color: '--plasma-badge-color',\n backgroundTransparent: '--plasma-badge-background-transparent',\n colorTransparent: '--plasma-badge-color-transparent',\n\n borderRadius: '--plasma-badge-border-radius',\n pilledBorderRadius: '--plasma-badge-pilled-border-radius',\n height: '--plasma-badge-height',\n paddingTop: '--plasma-badge-padding-top',\n paddingRight: '--plasma-badge-padding-right',\n paddingBottom: '--plasma-badge-padding-bottom',\n paddingLeft: '--plasma-badge-padding-left',\n\n fontFamily: '--plasma-badge-font-family',\n fontSize: '--plasma-badge-font-size',\n fontStyle: '--plasma-badge-font-style',\n fontWeight: '--plasma-badge-font-weight',\n letterSpacing: '--plasma-badge-letter-spacing',\n lineHeight: '--plasma-badge-lineheight',\n\n leftContentMarginLeft: '--plasma-badge-left-content-margin-left',\n leftContentMarginRight: '--plasma-badge-left-content-margin-right',\n rightContentMarginLeft: '--plasma-badge-right-content-margin-left',\n rightContentMarginRight: '--plasma-badge-right-content-margin-right',\n};\n"],"names":["classes","badgePilled","badgeTransparent","tokens","background","color","backgroundTransparent","colorTransparent","borderRadius","pilledBorderRadius","height","paddingTop","paddingRight","paddingBottom","paddingLeft","fontFamily","fontSize","fontStyle","fontWeight","letterSpacing","lineHeight","leftContentMarginLeft","leftContentMarginRight","rightContentMarginLeft","rightContentMarginRight"],"mappings":"AAAO,IAAMA,OAAO,GAAG;AACnBC,EAAAA,WAAW,EAAE,cAAc;AAC3BC,EAAAA,gBAAgB,EAAE,mBAAA;AACtB,EAAC;AAEM,IAAMC,MAAM,GAAG;AAClBC,EAAAA,UAAU,EAAE,2BAA2B;AACvCC,EAAAA,KAAK,EAAE,sBAAsB;AAC7BC,EAAAA,qBAAqB,EAAE,uCAAuC;AAC9DC,EAAAA,gBAAgB,EAAE,kCAAkC;AAEpDC,EAAAA,YAAY,EAAE,8BAA8B;AAC5CC,EAAAA,kBAAkB,EAAE,qCAAqC;AACzDC,EAAAA,MAAM,EAAE,uBAAuB;AAC/BC,EAAAA,UAAU,EAAE,4BAA4B;AACxCC,EAAAA,YAAY,EAAE,8BAA8B;AAC5CC,EAAAA,aAAa,EAAE,+BAA+B;AAC9CC,EAAAA,WAAW,EAAE,6BAA6B;AAE1CC,EAAAA,UAAU,EAAE,4BAA4B;AACxCC,EAAAA,QAAQ,EAAE,0BAA0B;AACpCC,EAAAA,SAAS,EAAE,2BAA2B;AACtCC,EAAAA,UAAU,EAAE,4BAA4B;AACxCC,EAAAA,aAAa,EAAE,+BAA+B;AAC9CC,EAAAA,UAAU,EAAE,2BAA2B;AAEvCC,EAAAA,qBAAqB,EAAE,yCAAyC;AAChEC,EAAAA,sBAAsB,EAAE,0CAA0C;AAClEC,EAAAA,sBAAsB,EAAE,0CAA0C;AAClEC,EAAAA,uBAAuB,EAAE,2CAAA;AAC7B;;;;"}
1
+ {"version":3,"file":"Badge.tokens.js","sources":["../../../src/components/Badge/Badge.tokens.ts"],"sourcesContent":["export const classes = {\n badgePilled: 'badge-pilled',\n badgeTransparent: 'badge-transparent',\n badgeClear: 'badge-clear',\n};\n\nexport const tokens = {\n background: '--plasma-badge-background',\n color: '--plasma-badge-color',\n backgroundTransparent: '--plasma-badge-background-transparent',\n colorTransparent: '--plasma-badge-color-transparent',\n colorClear: '--plasma-badge-color-clear',\n\n borderRadius: '--plasma-badge-border-radius',\n pilledBorderRadius: '--plasma-badge-pilled-border-radius',\n height: '--plasma-badge-height',\n paddingTop: '--plasma-badge-padding-top',\n paddingRight: '--plasma-badge-padding-right',\n paddingBottom: '--plasma-badge-padding-bottom',\n paddingLeft: '--plasma-badge-padding-left',\n\n fontFamily: '--plasma-badge-font-family',\n fontSize: '--plasma-badge-font-size',\n fontStyle: '--plasma-badge-font-style',\n fontWeight: '--plasma-badge-font-weight',\n letterSpacing: '--plasma-badge-letter-spacing',\n lineHeight: '--plasma-badge-lineheight',\n\n leftContentMarginLeft: '--plasma-badge-left-content-margin-left',\n leftContentMarginRight: '--plasma-badge-left-content-margin-right',\n rightContentMarginLeft: '--plasma-badge-right-content-margin-left',\n rightContentMarginRight: '--plasma-badge-right-content-margin-right',\n};\n"],"names":["classes","badgePilled","badgeTransparent","badgeClear","tokens","background","color","backgroundTransparent","colorTransparent","colorClear","borderRadius","pilledBorderRadius","height","paddingTop","paddingRight","paddingBottom","paddingLeft","fontFamily","fontSize","fontStyle","fontWeight","letterSpacing","lineHeight","leftContentMarginLeft","leftContentMarginRight","rightContentMarginLeft","rightContentMarginRight"],"mappings":"AAAO,IAAMA,OAAO,GAAG;AACnBC,EAAAA,WAAW,EAAE,cAAc;AAC3BC,EAAAA,gBAAgB,EAAE,mBAAmB;AACrCC,EAAAA,UAAU,EAAE,aAAA;AAChB,EAAC;AAEM,IAAMC,MAAM,GAAG;AAClBC,EAAAA,UAAU,EAAE,2BAA2B;AACvCC,EAAAA,KAAK,EAAE,sBAAsB;AAC7BC,EAAAA,qBAAqB,EAAE,uCAAuC;AAC9DC,EAAAA,gBAAgB,EAAE,kCAAkC;AACpDC,EAAAA,UAAU,EAAE,4BAA4B;AAExCC,EAAAA,YAAY,EAAE,8BAA8B;AAC5CC,EAAAA,kBAAkB,EAAE,qCAAqC;AACzDC,EAAAA,MAAM,EAAE,uBAAuB;AAC/BC,EAAAA,UAAU,EAAE,4BAA4B;AACxCC,EAAAA,YAAY,EAAE,8BAA8B;AAC5CC,EAAAA,aAAa,EAAE,+BAA+B;AAC9CC,EAAAA,WAAW,EAAE,6BAA6B;AAE1CC,EAAAA,UAAU,EAAE,4BAA4B;AACxCC,EAAAA,QAAQ,EAAE,0BAA0B;AACpCC,EAAAA,SAAS,EAAE,2BAA2B;AACtCC,EAAAA,UAAU,EAAE,4BAA4B;AACxCC,EAAAA,aAAa,EAAE,+BAA+B;AAC9CC,EAAAA,UAAU,EAAE,2BAA2B;AAEvCC,EAAAA,qBAAqB,EAAE,yCAAyC;AAChEC,EAAAA,sBAAsB,EAAE,0CAA0C;AAClEC,EAAAA,sBAAsB,EAAE,0CAA0C;AAClEC,EAAAA,uBAAuB,EAAE,2CAAA;AAC7B;;;;"}
@@ -0,0 +1,5 @@
1
+ import './base_oopyb7.css';
2
+ var base = "b1e1wuvi";
3
+
4
+ export { base };
5
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sources":["../../../../../src/components/Badge/variations/_clear/base.ts"],"sourcesContent":["import { css } from '@linaria/core';\n\nimport { classes, tokens } from '../../Badge.tokens';\n\nexport const base = css`\n &.${String(classes.badgeClear)} {\n color: var(${tokens.colorClear});\n background-color: transparent;\n padding: 0;\n }\n`;\n"],"names":["base"],"mappings":"AAIO,IAAMA,IAAI,GAMhB;;;;"}
@@ -0,0 +1 @@
1
+ .b1e1wuvi.badge-clear{color:var(--plasma-badge-color-clear);background-color:transparent;padding:0;}
@@ -9,7 +9,6 @@ import { classes } from './TextArea.tokens.js';
9
9
  import { base as base$2 } from './variations/_view/base.js';
10
10
  import { base as base$1 } from './variations/_size/base.js';
11
11
  import { base as base$3 } from './variations/_disabled/base.js';
12
- import { mergeRefs } from '../../utils/setRefList.js';
13
12
 
14
13
  var _excluded = ["helperText", "status", "resize", "rightHelper", "leftHelper", "contentRight", "autoResize", "minAuto", "maxAuto", "label", "labelPlacement", "placeholder", "defaultValue", "height", "width", "value", "disabled", "required", "requiredPlacement", "optional", "size", "view", "id", "style", "className", "readOnly", "rows", "cols", "onChange"];
15
14
  var innerPlaceholderUp = classes.innerPlaceholderUp,
@@ -101,7 +100,7 @@ var textAreaRoot = function textAreaRoot(Root) {
101
100
  _useState6 = _slicedToArray(_useState5, 2),
102
101
  uncontrolledValue = _useState6[0],
103
102
  setUncontrolledValue = _useState6[1];
104
- var outerRef = /*#__PURE__*/createRef();
103
+ var outerRef = innerRef && 'current' in innerRef ? innerRef : /*#__PURE__*/createRef();
105
104
  var innerOptional = required ? false : optional;
106
105
  var hasHelper = Boolean(leftHelper || rightHelper || helperText);
107
106
  var hasOuterLabel = Boolean(label && labelPlacement === 'outer');
@@ -132,7 +131,6 @@ var textAreaRoot = function textAreaRoot(Root) {
132
131
  if (value === undefined) {
133
132
  setUncontrolledValue(event === null || event === void 0 ? void 0 : event.target.value);
134
133
  }
135
- console.log(event);
136
134
  onChange === null || onChange === void 0 || onChange(event);
137
135
  }, [value, onChange]);
138
136
  var dynamicLabelClasses = getDynamicLabelClasses(_objectSpread2({
@@ -174,7 +172,7 @@ var textAreaRoot = function textAreaRoot(Root) {
174
172
  hasContentRight: Boolean(contentRight),
175
173
  hasHelper: hasHelper,
176
174
  applyCustomWidth: applyCustomWidth,
177
- ref: mergeRefs(outerRef, innerRef),
175
+ ref: outerRef,
178
176
  disabled: disabled,
179
177
  height: autoResize ? minAuto : height,
180
178
  width: width,
@@ -1 +1 @@
1
- {"version":3,"file":"TextArea.js","sources":["../../../src/components/TextArea/TextArea.tsx"],"sourcesContent":["import React, { forwardRef, useState, createRef, useCallback } from 'react';\nimport { css } from '@linaria/core';\nimport { useResizeObserver } from '@salutejs/plasma-core';\n\nimport { cx, mergeRefs } from '../../utils';\nimport type { RootProps } from '../../engines/types';\n\nimport { applyDynamicLabel } from './mixins';\nimport { useAutoResize, ROOT_FONT_SIZE } from './hooks';\nimport {\n StyledContent,\n StyledHelpers,\n StyledLeftHelper,\n StyledRightHelper,\n StyledLabel,\n StyledPlaceholder,\n StyledTextArea,\n StyledTextAreaWrapper,\n StyledContainer,\n StyledIndicator,\n StyledOptionalText,\n} from './TextArea.styles';\nimport { classes } from './TextArea.tokens';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport type { TextAreaProps } from './TextArea.types';\n\nconst {\n innerPlaceholderUp,\n focusedOuterPlaceholderColor,\n hidePlaceHolder,\n styledContainer,\n styledTextArea,\n styledTextAreaWrapper,\n styledPlaceholder,\n styledHelpers,\n} = classes;\n\nconst optionalText = 'optional';\n\nconst base = css`\n ${applyDynamicLabel};\n\n position: relative;\n box-sizing: border-box;\n`;\n\n// TODO: Удалить после отказа от старых библиотек plasma-web / plasma-b2c\nconst fallbackStatusMap = {\n '': 'primary',\n success: 'positive',\n warning: 'warning',\n error: 'negative',\n};\n\n// TODO: Перенести этот метод в файл applyDynamicLabel.ts\nexport const getDynamicLabelClasses = (props: TextAreaProps, focused: boolean) => {\n const { readOnly, label, labelPlacement, autoResize, rows, value, size } = props;\n\n // Добавить класс отвечающий за изменение цвета плейсхолдера при фокусе\n const withFocusedOuterUpPlaceholder =\n !readOnly && focused && (!label || labelPlacement === 'outer') ? focusedOuterPlaceholderColor : undefined;\n\n // Добавить класс отвечающий за поднятие и уменьшение плейсхолдера\n const withInnerPlaceholderUp =\n labelPlacement === 'inner' &&\n label &&\n !autoResize &&\n !rows &&\n size !== 'xs' &&\n ((!readOnly && (value || focused)) || (readOnly && value))\n ? innerPlaceholderUp\n : undefined;\n\n // Добавить класс отвечающий за скрытие плейсхолдера\n const withHidePlaceholder =\n (value && !label) ||\n (labelPlacement === 'inner' && ((focused && !readOnly) || value) && label && (rows || autoResize)) ||\n (labelPlacement === 'outer' && value) ||\n (labelPlacement === 'inner' && size === 'xs' && value)\n ? hidePlaceHolder\n : undefined;\n\n return [withFocusedOuterUpPlaceholder, withInnerPlaceholderUp, withHidePlaceholder];\n};\n\nexport const textAreaRoot = (Root: RootProps<HTMLTextAreaElement, TextAreaProps>) =>\n forwardRef<HTMLTextAreaElement, TextAreaProps>((props, innerRef) => {\n const {\n helperText,\n status,\n resize,\n rightHelper,\n leftHelper,\n contentRight,\n autoResize = false,\n minAuto = 0,\n maxAuto,\n label,\n labelPlacement = 'inner',\n placeholder,\n defaultValue,\n height,\n width,\n value,\n disabled,\n required = false,\n requiredPlacement = 'right',\n optional = false,\n size,\n view,\n id,\n style,\n className,\n readOnly,\n rows,\n cols,\n onChange,\n ...rest\n } = props;\n\n const [helperWidth, setHelperWidth] = useState<string>(width ? `${width}rem` : '100%');\n const [focused, setFocused] = useState(false);\n const [uncontrolledValue, setUncontrolledValue] = useState<string | undefined>();\n\n const outerRef = createRef<HTMLTextAreaElement>();\n\n const innerOptional = required ? false : optional;\n const hasHelper = Boolean(leftHelper || rightHelper || helperText);\n const hasOuterLabel = Boolean(label && labelPlacement === 'outer');\n const hasInnerLabel = Boolean(label && labelPlacement === 'inner' && size !== 'xs');\n const hasPlaceholderOptional = innerOptional && !hasOuterLabel;\n\n const overriddenView = status !== undefined ? fallbackStatusMap[status] : view;\n const textareaHelperId = id ? `${id}-helper` : undefined;\n const applyCustomWidth = resize !== 'horizontal' && resize !== 'both' && !cols;\n const placeholderLabel = hasInnerLabel ? label : placeholder;\n\n const requiredPlacementClass = requiredPlacement === 'right' ? 'align-right ' : undefined;\n\n useResizeObserver(outerRef, (currentElement) => {\n const { width: inlineWidth } = currentElement.style;\n\n if (inlineWidth || cols) {\n const { width: elementWidth } = currentElement.getBoundingClientRect();\n setHelperWidth(`${elementWidth / ROOT_FONT_SIZE}rem`);\n }\n });\n\n useAutoResize(autoResize, outerRef, value, minAuto, maxAuto);\n\n const onFocusHandler = useCallback(() => {\n setFocused(true);\n }, []);\n\n const onBlurHandler = useCallback(() => {\n setFocused(false);\n }, []);\n\n const onChangeHandler = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n // INFO: Для крайне редких кейсов, когда value снаружи не контролируется\n if (value === undefined) {\n setUncontrolledValue(event?.target.value);\n }\n console.log(event);\n onChange?.(event);\n },\n [value, onChange],\n );\n\n const dynamicLabelClasses = getDynamicLabelClasses(\n {\n size,\n readOnly,\n label,\n labelPlacement,\n value: value || uncontrolledValue || defaultValue,\n ...(rows ? { rows } : { autoResize }),\n },\n focused,\n );\n\n const optionalTextNode = innerOptional ? (\n <StyledOptionalText>\n {Boolean(hasPlaceholderOptional ? placeholderLabel : label) && '\\xa0'}\n {optionalText}\n </StyledOptionalText>\n ) : null;\n\n return (\n <Root\n view={overriddenView}\n size={size}\n disabled={disabled}\n readOnly={readOnly}\n style={{ width: helperWidth, ...style }}\n className={className}\n >\n {hasOuterLabel && (\n <StyledLabel>\n {required && (\n <StyledIndicator className={cx(classes.outerLabelPlacement, requiredPlacementClass)} />\n )}\n {label}\n {optionalTextNode}\n </StyledLabel>\n )}\n <StyledContainer\n className={cx(styledContainer, ...dynamicLabelClasses)}\n width={helperWidth}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n >\n {required && !hasOuterLabel && (\n <StyledIndicator className={cx(classes.innerLabelPlacement, requiredPlacementClass)} />\n )}\n {contentRight && <StyledContent>{contentRight}</StyledContent>}\n <StyledTextAreaWrapper className={styledTextAreaWrapper} hasHelper={hasHelper}>\n <StyledTextArea\n className={styledTextArea}\n id={id}\n hasContentRight={Boolean(contentRight)}\n hasHelper={hasHelper}\n applyCustomWidth={applyCustomWidth}\n ref={mergeRefs(outerRef, innerRef)}\n disabled={disabled}\n height={autoResize ? minAuto : height}\n width={width}\n placeholder={placeholderLabel}\n aria-describedby={textareaHelperId}\n value={value}\n readOnly={readOnly}\n rows={rows}\n cols={cols}\n resize={resize}\n defaultValue={defaultValue}\n onChange={onChangeHandler}\n {...rest}\n />\n </StyledTextAreaWrapper>\n {hasHelper && (\n <StyledHelpers className={styledHelpers} id={textareaHelperId}>\n {(leftHelper || helperText) && (\n <StyledLeftHelper>{leftHelper || helperText}</StyledLeftHelper>\n )}\n {rightHelper && <StyledRightHelper>{rightHelper}</StyledRightHelper>}\n </StyledHelpers>\n )}\n {placeholderLabel && (\n <StyledPlaceholder\n hasContentRight={Boolean(contentRight)}\n className={styledPlaceholder}\n htmlFor={id}\n >\n {placeholderLabel}\n {!hasOuterLabel && optionalTextNode}\n </StyledPlaceholder>\n )}\n </StyledContainer>\n </Root>\n );\n });\n\nexport const textAreaConfig = {\n name: 'TextArea',\n tag: 'div',\n layout: textAreaRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'primary',\n },\n};\n"],"names":["innerPlaceholderUp","classes","focusedOuterPlaceholderColor","hidePlaceHolder","styledContainer","styledTextArea","styledTextAreaWrapper","styledPlaceholder","styledHelpers","optionalText","base","fallbackStatusMap","success","warning","error","getDynamicLabelClasses","props","focused","readOnly","label","labelPlacement","autoResize","rows","value","size","withFocusedOuterUpPlaceholder","undefined","withInnerPlaceholderUp","withHidePlaceholder","textAreaRoot","Root","forwardRef","innerRef","helperText","status","resize","rightHelper","leftHelper","contentRight","_props$autoResize","_props$minAuto","minAuto","maxAuto","_props$labelPlacement","placeholder","defaultValue","height","width","disabled","_props$required","required","_props$requiredPlacem","requiredPlacement","_props$optional","optional","view","id","style","className","cols","onChange","rest","_excluded","_useState","useState","concat","_useState2","_slicedToArray","helperWidth","setHelperWidth","_useState3","_useState4","setFocused","_useState5","_useState6","uncontrolledValue","setUncontrolledValue","outerRef","createRef","innerOptional","hasHelper","Boolean","hasOuterLabel","hasInnerLabel","hasPlaceholderOptional","overriddenView","textareaHelperId","applyCustomWidth","placeholderLabel","requiredPlacementClass","useResizeObserver","currentElement","inlineWidth","_currentElement$getBo","getBoundingClientRect","elementWidth","ROOT_FONT_SIZE","useAutoResize","onFocusHandler","useCallback","onBlurHandler","onChangeHandler","event","target","console","log","dynamicLabelClasses","_objectSpread","optionalTextNode","React","createElement","StyledOptionalText","StyledLabel","StyledIndicator","cx","outerLabelPlacement","StyledContainer","apply","_toConsumableArray","onFocus","onBlur","innerLabelPlacement","StyledContent","StyledTextAreaWrapper","StyledTextArea","_extends","hasContentRight","ref","mergeRefs","StyledHelpers","StyledLeftHelper","StyledRightHelper","StyledPlaceholder","htmlFor","textAreaConfig","name","tag","layout","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"TextArea.js","sources":["../../../src/components/TextArea/TextArea.tsx"],"sourcesContent":["import React, { forwardRef, useState, createRef, useCallback } from 'react';\nimport { css } from '@linaria/core';\nimport { useResizeObserver } from '@salutejs/plasma-core';\n\nimport { cx } from '../../utils';\nimport type { RootProps } from '../../engines/types';\n\nimport { applyDynamicLabel } from './mixins';\nimport { useAutoResize, ROOT_FONT_SIZE } from './hooks';\nimport {\n StyledContent,\n StyledHelpers,\n StyledLeftHelper,\n StyledRightHelper,\n StyledLabel,\n StyledPlaceholder,\n StyledTextArea,\n StyledTextAreaWrapper,\n StyledContainer,\n StyledIndicator,\n StyledOptionalText,\n} from './TextArea.styles';\nimport { classes } from './TextArea.tokens';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport type { TextAreaProps } from './TextArea.types';\n\nconst {\n innerPlaceholderUp,\n focusedOuterPlaceholderColor,\n hidePlaceHolder,\n styledContainer,\n styledTextArea,\n styledTextAreaWrapper,\n styledPlaceholder,\n styledHelpers,\n} = classes;\n\nconst optionalText = 'optional';\n\nconst base = css`\n ${applyDynamicLabel};\n\n position: relative;\n box-sizing: border-box;\n`;\n\n// TODO: Удалить после отказа от старых библиотек plasma-web / plasma-b2c\nconst fallbackStatusMap = {\n '': 'primary',\n success: 'positive',\n warning: 'warning',\n error: 'negative',\n};\n\n// TODO: Перенести этот метод в файл applyDynamicLabel.ts\nexport const getDynamicLabelClasses = (props: TextAreaProps, focused: boolean) => {\n const { readOnly, label, labelPlacement, autoResize, rows, value, size } = props;\n\n // Добавить класс отвечающий за изменение цвета плейсхолдера при фокусе\n const withFocusedOuterUpPlaceholder =\n !readOnly && focused && (!label || labelPlacement === 'outer') ? focusedOuterPlaceholderColor : undefined;\n\n // Добавить класс отвечающий за поднятие и уменьшение плейсхолдера\n const withInnerPlaceholderUp =\n labelPlacement === 'inner' &&\n label &&\n !autoResize &&\n !rows &&\n size !== 'xs' &&\n ((!readOnly && (value || focused)) || (readOnly && value))\n ? innerPlaceholderUp\n : undefined;\n\n // Добавить класс отвечающий за скрытие плейсхолдера\n const withHidePlaceholder =\n (value && !label) ||\n (labelPlacement === 'inner' && ((focused && !readOnly) || value) && label && (rows || autoResize)) ||\n (labelPlacement === 'outer' && value) ||\n (labelPlacement === 'inner' && size === 'xs' && value)\n ? hidePlaceHolder\n : undefined;\n\n return [withFocusedOuterUpPlaceholder, withInnerPlaceholderUp, withHidePlaceholder];\n};\n\nexport const textAreaRoot = (Root: RootProps<HTMLTextAreaElement, TextAreaProps>) =>\n forwardRef<HTMLTextAreaElement, TextAreaProps>((props, innerRef) => {\n const {\n helperText,\n status,\n resize,\n rightHelper,\n leftHelper,\n contentRight,\n autoResize = false,\n minAuto = 0,\n maxAuto,\n label,\n labelPlacement = 'inner',\n placeholder,\n defaultValue,\n height,\n width,\n value,\n disabled,\n required = false,\n requiredPlacement = 'right',\n optional = false,\n size,\n view,\n id,\n style,\n className,\n readOnly,\n rows,\n cols,\n onChange,\n ...rest\n } = props;\n\n const [helperWidth, setHelperWidth] = useState<string>(width ? `${width}rem` : '100%');\n const [focused, setFocused] = useState(false);\n const [uncontrolledValue, setUncontrolledValue] = useState<string | undefined>();\n\n const outerRef = innerRef && 'current' in innerRef ? innerRef : createRef<HTMLTextAreaElement>();\n\n const innerOptional = required ? false : optional;\n const hasHelper = Boolean(leftHelper || rightHelper || helperText);\n const hasOuterLabel = Boolean(label && labelPlacement === 'outer');\n const hasInnerLabel = Boolean(label && labelPlacement === 'inner' && size !== 'xs');\n const hasPlaceholderOptional = innerOptional && !hasOuterLabel;\n\n const overriddenView = status !== undefined ? fallbackStatusMap[status] : view;\n const textareaHelperId = id ? `${id}-helper` : undefined;\n const applyCustomWidth = resize !== 'horizontal' && resize !== 'both' && !cols;\n const placeholderLabel = hasInnerLabel ? label : placeholder;\n\n const requiredPlacementClass = requiredPlacement === 'right' ? 'align-right ' : undefined;\n\n useResizeObserver(outerRef, (currentElement) => {\n const { width: inlineWidth } = currentElement.style;\n\n if (inlineWidth || cols) {\n const { width: elementWidth } = currentElement.getBoundingClientRect();\n setHelperWidth(`${elementWidth / ROOT_FONT_SIZE}rem`);\n }\n });\n\n useAutoResize(autoResize, outerRef, value, minAuto, maxAuto);\n\n const onFocusHandler = useCallback(() => {\n setFocused(true);\n }, []);\n\n const onBlurHandler = useCallback(() => {\n setFocused(false);\n }, []);\n\n const onChangeHandler = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n // INFO: Для крайне редких кейсов, когда value снаружи не контролируется\n if (value === undefined) {\n setUncontrolledValue(event?.target.value);\n }\n\n onChange?.(event);\n },\n [value, onChange],\n );\n\n const dynamicLabelClasses = getDynamicLabelClasses(\n {\n size,\n readOnly,\n label,\n labelPlacement,\n value: value || uncontrolledValue || defaultValue,\n ...(rows ? { rows } : { autoResize }),\n },\n focused,\n );\n\n const optionalTextNode = innerOptional ? (\n <StyledOptionalText>\n {Boolean(hasPlaceholderOptional ? placeholderLabel : label) && '\\xa0'}\n {optionalText}\n </StyledOptionalText>\n ) : null;\n\n return (\n <Root\n view={overriddenView}\n size={size}\n disabled={disabled}\n readOnly={readOnly}\n style={{ width: helperWidth, ...style }}\n className={className}\n >\n {hasOuterLabel && (\n <StyledLabel>\n {required && (\n <StyledIndicator className={cx(classes.outerLabelPlacement, requiredPlacementClass)} />\n )}\n {label}\n {optionalTextNode}\n </StyledLabel>\n )}\n <StyledContainer\n className={cx(styledContainer, ...dynamicLabelClasses)}\n width={helperWidth}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n >\n {required && !hasOuterLabel && (\n <StyledIndicator className={cx(classes.innerLabelPlacement, requiredPlacementClass)} />\n )}\n {contentRight && <StyledContent>{contentRight}</StyledContent>}\n <StyledTextAreaWrapper className={styledTextAreaWrapper} hasHelper={hasHelper}>\n <StyledTextArea\n className={styledTextArea}\n id={id}\n hasContentRight={Boolean(contentRight)}\n hasHelper={hasHelper}\n applyCustomWidth={applyCustomWidth}\n ref={outerRef}\n disabled={disabled}\n height={autoResize ? minAuto : height}\n width={width}\n placeholder={placeholderLabel}\n aria-describedby={textareaHelperId}\n value={value}\n readOnly={readOnly}\n rows={rows}\n cols={cols}\n resize={resize}\n defaultValue={defaultValue}\n onChange={onChangeHandler}\n {...rest}\n />\n </StyledTextAreaWrapper>\n {hasHelper && (\n <StyledHelpers className={styledHelpers} id={textareaHelperId}>\n {(leftHelper || helperText) && (\n <StyledLeftHelper>{leftHelper || helperText}</StyledLeftHelper>\n )}\n {rightHelper && <StyledRightHelper>{rightHelper}</StyledRightHelper>}\n </StyledHelpers>\n )}\n {placeholderLabel && (\n <StyledPlaceholder\n hasContentRight={Boolean(contentRight)}\n className={styledPlaceholder}\n htmlFor={id}\n >\n {placeholderLabel}\n {!hasOuterLabel && optionalTextNode}\n </StyledPlaceholder>\n )}\n </StyledContainer>\n </Root>\n );\n });\n\nexport const textAreaConfig = {\n name: 'TextArea',\n tag: 'div',\n layout: textAreaRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'primary',\n },\n};\n"],"names":["innerPlaceholderUp","classes","focusedOuterPlaceholderColor","hidePlaceHolder","styledContainer","styledTextArea","styledTextAreaWrapper","styledPlaceholder","styledHelpers","optionalText","base","fallbackStatusMap","success","warning","error","getDynamicLabelClasses","props","focused","readOnly","label","labelPlacement","autoResize","rows","value","size","withFocusedOuterUpPlaceholder","undefined","withInnerPlaceholderUp","withHidePlaceholder","textAreaRoot","Root","forwardRef","innerRef","helperText","status","resize","rightHelper","leftHelper","contentRight","_props$autoResize","_props$minAuto","minAuto","maxAuto","_props$labelPlacement","placeholder","defaultValue","height","width","disabled","_props$required","required","_props$requiredPlacem","requiredPlacement","_props$optional","optional","view","id","style","className","cols","onChange","rest","_excluded","_useState","useState","concat","_useState2","_slicedToArray","helperWidth","setHelperWidth","_useState3","_useState4","setFocused","_useState5","_useState6","uncontrolledValue","setUncontrolledValue","outerRef","createRef","innerOptional","hasHelper","Boolean","hasOuterLabel","hasInnerLabel","hasPlaceholderOptional","overriddenView","textareaHelperId","applyCustomWidth","placeholderLabel","requiredPlacementClass","useResizeObserver","currentElement","inlineWidth","_currentElement$getBo","getBoundingClientRect","elementWidth","ROOT_FONT_SIZE","useAutoResize","onFocusHandler","useCallback","onBlurHandler","onChangeHandler","event","target","dynamicLabelClasses","_objectSpread","optionalTextNode","React","createElement","StyledOptionalText","StyledLabel","StyledIndicator","cx","outerLabelPlacement","StyledContainer","apply","_toConsumableArray","onFocus","onBlur","innerLabelPlacement","StyledContent","StyledTextAreaWrapper","StyledTextArea","_extends","hasContentRight","ref","StyledHelpers","StyledLeftHelper","StyledRightHelper","StyledPlaceholder","htmlFor","textAreaConfig","name","tag","layout","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","defaults"],"mappings":"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"}
package/es/index.css CHANGED
@@ -386,6 +386,8 @@
386
386
 
387
387
  .base_1l6036y_binquhc__5cc72580.base_1l6036y_badgeTransparent__5cc72580{color:var(--plasma-badge-color-transparent);background-color:var(--plasma-badge-background-transparent);}
388
388
 
389
+ .base_oopyb7_b1e1wuvi__72387433.base_oopyb7_badgeClear__72387433{color:var(--plasma-badge-color-clear);background-color:transparent;padding:0;}
390
+
389
391
  .Badge_styles_8pi3br_b1t43xoe__783e5f62{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;box-sizing:border-box;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;width:-webkit-max-content;width:-moz-max-content;width:max-content;}
390
392
  .Badge_styles_8pi3br_st1n7hr__783e5f62{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-badge-left-content-margin-left);margin-right:var(--plasma-badge-left-content-margin-right);}
391
393
 
package/es/index.js CHANGED
@@ -189,7 +189,6 @@ export { extractTextFrom } from './utils/extractTextFrom.js';
189
189
  export { getSizeValueFromProp } from './utils/getSizeValueFromProp.js';
190
190
  export { IS_REACT_18, safeUseId } from './utils/react.js';
191
191
  export { isNumber } from './utils/isNumber.js';
192
- export { mergeRefs, setRefList } from './utils/setRefList.js';
193
192
  export { isEmpty } from './utils/isEmpty.js';
194
193
  export { getPlacement, getPlacements } from './utils/getPopoverPlacement.js';
195
194
  //# sourceMappingURL=index.js.map
package/es/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/utils/index.ts"],"sourcesContent":["import { CSSProperties } from '@linaria/core';\n\nexport { canUseDOM } from './canUseDOM';\nexport { extractTextFrom } from './extractTextFrom';\nexport { getSizeValueFromProp } from './getSizeValueFromProp';\nexport { IS_REACT_18, safeUseId } from './react';\nexport { isNumber } from './isNumber';\nexport { mergeRefs, setRefList } from './setRefList';\nexport { isEmpty } from './isEmpty';\nexport * from './getPopoverPlacement';\n\nexport const cx = (...classes: (string | undefined)[]) => classes.filter((classItem) => classItem).join(' ');\n\nexport const composableStyle = (s: TemplateStringsArray, ...expr: Array<string | number | CSSProperties>): string => {\n let res = '';\n for (let i = 0; i < Math.max(s.length, expr.length); ++i) {\n res += s[i] ?? '';\n res += expr[i] ?? '';\n }\n\n return res;\n};\n"],"names":["cx","_len","arguments","length","classes","Array","_key","filter","classItem","join","composableStyle","s","res","i","Math","max","_s$i","_ref","undefined"],"mappings":";;;AAWaA,IAAAA,EAAE,GAAG,SAALA,EAAEA,GAAA;AAAA,EAAA,KAAA,IAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAOC,OAAO,GAAAC,IAAAA,KAAA,CAAAJ,IAAA,GAAAK,IAAA,GAAA,CAAA,EAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA,EAAA,EAAA;AAAPF,IAAAA,OAAO,CAAAE,IAAA,CAAAJ,GAAAA,SAAA,CAAAI,IAAA,CAAA,CAAA;AAAA,GAAA;AAAA,EAAA,OAA6BF,OAAO,CAACG,MAAM,CAAC,UAACC,SAAS,EAAA;AAAA,IAAA,OAAKA,SAAS,CAAA;AAAA,GAAA,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CAAA;AAAA,EAAA;IAE/FC,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,CAAuB,EAA8D;EACjH,IAAIC,GAAG,GAAG,EAAE,CAAA;EACZ,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGC,IAAI,CAACC,GAAG,CAACJ,CAAC,CAACR,MAAM,EAAAD,SAAA,CAAAC,MAAA,IAAA,CAAA,GAAA,CAAA,GAAAD,SAAA,CAAAC,MAAA,GAAA,CAAa,CAAC,EAAE,EAAEU,CAAC,EAAE;IAAA,IAAAG,IAAA,EAAAC,IAAA,CAAA;AACtDL,IAAAA,GAAG,IAAAI,CAAAA,IAAA,GAAIL,CAAC,CAACE,CAAC,CAAC,MAAA,IAAA,IAAAG,IAAA,KAAA,KAAA,CAAA,GAAAA,IAAA,GAAI,EAAE,CAAA;IACjBJ,GAAG,IAAA,CAAAK,IAAA,GAASJ,CAAC,YAAAX,SAAA,CAAAC,MAAA,IAADU,CAAC,OAAAK,SAAA,GAAAhB,SAAA,CAADW,CAAC,mBAAAI,IAAA,KAAA,KAAA,CAAA,GAAAA,IAAA,GAAK,EAAE,CAAA;AACxB,GAAA;AAEA,EAAA,OAAOL,GAAG,CAAA;AACd;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/utils/index.ts"],"sourcesContent":["import { CSSProperties } from '@linaria/core';\n\nexport { canUseDOM } from './canUseDOM';\nexport { extractTextFrom } from './extractTextFrom';\nexport { getSizeValueFromProp } from './getSizeValueFromProp';\nexport { IS_REACT_18, safeUseId } from './react';\nexport { isNumber } from './isNumber';\nexport { isEmpty } from './isEmpty';\nexport * from './getPopoverPlacement';\n\nexport const cx = (...classes: (string | undefined)[]) => classes.filter((classItem) => classItem).join(' ');\n\nexport const composableStyle = (s: TemplateStringsArray, ...expr: Array<string | number | CSSProperties>): string => {\n let res = '';\n for (let i = 0; i < Math.max(s.length, expr.length); ++i) {\n res += s[i] ?? '';\n res += expr[i] ?? '';\n }\n\n return res;\n};\n"],"names":["cx","_len","arguments","length","classes","Array","_key","filter","classItem","join","composableStyle","s","res","i","Math","max","_s$i","_ref","undefined"],"mappings":";;;AAUaA,IAAAA,EAAE,GAAG,SAALA,EAAEA,GAAA;AAAA,EAAA,KAAA,IAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAOC,OAAO,GAAAC,IAAAA,KAAA,CAAAJ,IAAA,GAAAK,IAAA,GAAA,CAAA,EAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA,EAAA,EAAA;AAAPF,IAAAA,OAAO,CAAAE,IAAA,CAAAJ,GAAAA,SAAA,CAAAI,IAAA,CAAA,CAAA;AAAA,GAAA;AAAA,EAAA,OAA6BF,OAAO,CAACG,MAAM,CAAC,UAACC,SAAS,EAAA;AAAA,IAAA,OAAKA,SAAS,CAAA;AAAA,GAAA,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CAAA;AAAA,EAAA;IAE/FC,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,CAAuB,EAA8D;EACjH,IAAIC,GAAG,GAAG,EAAE,CAAA;EACZ,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGC,IAAI,CAACC,GAAG,CAACJ,CAAC,CAACR,MAAM,EAAAD,SAAA,CAAAC,MAAA,IAAA,CAAA,GAAA,CAAA,GAAAD,SAAA,CAAAC,MAAA,GAAA,CAAa,CAAC,EAAE,EAAEU,CAAC,EAAE;IAAA,IAAAG,IAAA,EAAAC,IAAA,CAAA;AACtDL,IAAAA,GAAG,IAAAI,CAAAA,IAAA,GAAIL,CAAC,CAACE,CAAC,CAAC,MAAA,IAAA,IAAAG,IAAA,KAAA,KAAA,CAAA,GAAAA,IAAA,GAAI,EAAE,CAAA;IACjBJ,GAAG,IAAA,CAAAK,IAAA,GAASJ,CAAC,YAAAX,SAAA,CAAAC,MAAA,IAADU,CAAC,OAAAK,SAAA,GAAAhB,SAAA,CAADW,CAAC,mBAAAI,IAAA,KAAA,KAAA,CAAA,GAAAA,IAAA,GAAK,EAAE,CAAA;AACxB,GAAA;AAEA,EAAA,OAAOL,GAAG,CAAA;AACd;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salutejs/plasma-new-hope",
3
- "version": "0.142.0-canary.1421.10790809666.0",
3
+ "version": "0.142.0-canary.1424.10789422667.0",
4
4
  "description": "Salute Design System blueprint",
5
5
  "main": "cjs/index.js",
6
6
  "module": "es/index.js",
@@ -100,7 +100,6 @@
100
100
  "default-browser-id": "2.0.0",
101
101
  "react": "18.2.0",
102
102
  "react-dom": "18.2.0",
103
- "react-hook-form": "7.52.1",
104
103
  "rollup": "^3.28.0",
105
104
  "storybook": "7.6.17",
106
105
  "styled-components": "5.3.1",
@@ -122,5 +121,5 @@
122
121
  "react-popper": "2.3.0",
123
122
  "storeon": "3.1.5"
124
123
  },
125
- "gitHead": "f27d40f290fcb6f2bebd75fca973046408374e81"
124
+ "gitHead": "2e4cbacb4247fa29f99e04551b10f65391b99ee4"
126
125
  }
@@ -11,9 +11,10 @@ var _base = /*#__PURE__*/require("./variations/_view/base");
11
11
  var _base2 = /*#__PURE__*/require("./variations/_size/base");
12
12
  var _base3 = /*#__PURE__*/require("./variations/_pilled/base");
13
13
  var _base4 = /*#__PURE__*/require("./variations/_transparent/base");
14
+ var _base5 = /*#__PURE__*/require("./variations/_clear/base");
14
15
  var _Badge = /*#__PURE__*/require("./Badge.styles");
15
16
  var _Badge2 = /*#__PURE__*/require("./Badge.tokens");
16
- var _excluded = ["children", "className", "text", "contentLeft", "contentRight", "size", "view", "pilled", "transparent"];
17
+ var _excluded = ["children", "className", "text", "contentLeft", "contentRight", "size", "view", "pilled", "transparent", "clear"];
17
18
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
18
19
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
19
20
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
@@ -32,17 +33,21 @@ var badgeRoot = exports.badgeRoot = function badgeRoot(Root) {
32
33
  pilled = _props$pilled === void 0 ? false : _props$pilled,
33
34
  _props$transparent = props.transparent,
34
35
  transparent = _props$transparent === void 0 ? false : _props$transparent,
36
+ _props$clear = props.clear,
37
+ clear = _props$clear === void 0 ? false : _props$clear,
35
38
  rest = _objectWithoutProperties(props, _excluded);
36
39
  var pilledClass = pilled ? _Badge2.classes.badgePilled : undefined;
37
40
  var transparentClass = transparent ? _Badge2.classes.badgeTransparent : undefined;
41
+ var clearClass = clear ? _Badge2.classes.badgeClear : undefined;
38
42
  var txt = !text && typeof children === 'string' ? children : text;
39
43
  return /*#__PURE__*/_react["default"].createElement(Root, _extends({
40
44
  ref: ref,
41
- className: (0, _utils.cx)(pilledClass, transparentClass, className),
45
+ className: (0, _utils.cx)(pilledClass, transparentClass, clearClass, className),
42
46
  view: view,
43
47
  size: size,
44
48
  pilled: pilled,
45
- transparent: transparent
49
+ transparent: transparent,
50
+ clear: clear
46
51
  }, rest), contentLeft && /*#__PURE__*/_react["default"].createElement(_Badge.StyledContentLeft, null, contentLeft), txt ? /*#__PURE__*/_react["default"].createElement(_Badge.StyledContentMain, null, txt) : children, contentRight && /*#__PURE__*/_react["default"].createElement(_Badge.StyledContentRight, null, contentRight));
47
52
  });
48
53
  };
@@ -65,6 +70,10 @@ var badgeConfig = exports.badgeConfig = {
65
70
  transparent: {
66
71
  css: _base4.base,
67
72
  attrs: true
73
+ },
74
+ clear: {
75
+ css: _base5.base,
76
+ attrs: true
68
77
  }
69
78
  },
70
79
  defaults: {
@@ -60,41 +60,32 @@ export function App() {
60
60
  + `"dark"` – темный badge;
61
61
  + `"light"` – светлый badge.
62
62
 
63
- ```tsx live
64
- import React from 'react';
65
- import { Badge } from '@salutejs/{{ package }}';
66
-
67
- export function App() {
68
- return (
69
- <div>
70
- <Badge text="Бейдж" size="l" view="primary" />
71
- <Badge text="Бейдж" size="l" view="accent" />
72
- <Badge text="Бейдж" size="l" view="positive" />
73
- <Badge text="Бейдж" size="l" view="warning" />
74
- <Badge text="Бейдж" size="l" view="negative" />
75
- <Badge text="Бейдж" size="l" view="dark" />
76
- <Badge text="Бейдж" size="l" view="light" />
77
- </div>
78
- );
79
- }
80
- ```
81
-
82
- Так же на вид badge влияет свойство `transparent`:
63
+ Так же на вид badge влияет свойства `transparent` и `clear`.
83
64
 
84
65
  ```tsx live
85
66
  import React from 'react';
86
67
  import { Badge } from '@salutejs/{{ package }}';
87
68
 
88
69
  export function App() {
70
+ const Badges = ({transparent, clear}) => {
71
+ return (
72
+ <div style=\{{ display: 'flex', gap: '0.5rem' }}>
73
+ <Badge text="Бейдж" size="l" view="primary" transparent={transparent} clear={clear} />
74
+ <Badge text="Бейдж" size="l" view="accent" transparent={transparent} clear={clear} />
75
+ <Badge text="Бейдж" size="l" view="positive" transparent={transparent} clear={clear} />
76
+ <Badge text="Бейдж" size="l" view="warning" transparent={transparent} clear={clear} />
77
+ <Badge text="Бейдж" size="l" view="negative" transparent={transparent} clear={clear} />
78
+ <Badge text="Бейдж" size="l" view="dark" transparent={transparent} clear={clear} />
79
+ <Badge text="Бейдж" size="l" view="light" transparent={transparent} clear={clear} />
80
+ </div>
81
+ )
82
+ }
83
+
89
84
  return (
90
- <div>
91
- <Badge text="Бейдж" size="l" view="primary" transparent />
92
- <Badge text="Бейдж" size="l" view="accent" transparent />
93
- <Badge text="Бейдж" size="l" view="positive" transparent />
94
- <Badge text="Бейдж" size="l" view="warning" transparent />
95
- <Badge text="Бейдж" size="l" view="negative" transparent />
96
- <Badge text="Бейдж" size="l" view="dark" transparent />
97
- <Badge text="Бейдж" size="l" view="light" transparent />
85
+ <div style=\{{ display: 'flex', flexDirection: 'column', gap: '2rem' }}>
86
+ <Badges />
87
+ <Badges transparent />
88
+ <Badges clear />
98
89
  </div>
99
90
  );
100
91
  }
@@ -6,13 +6,15 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.tokens = exports.classes = void 0;
7
7
  var classes = exports.classes = {
8
8
  badgePilled: 'badge-pilled',
9
- badgeTransparent: 'badge-transparent'
9
+ badgeTransparent: 'badge-transparent',
10
+ badgeClear: 'badge-clear'
10
11
  };
11
12
  var tokens = exports.tokens = {
12
13
  background: '--plasma-badge-background',
13
14
  color: '--plasma-badge-color',
14
15
  backgroundTransparent: '--plasma-badge-background-transparent',
15
16
  colorTransparent: '--plasma-badge-color-transparent',
17
+ colorClear: '--plasma-badge-color-clear',
16
18
  borderRadius: '--plasma-badge-border-radius',
17
19
  pilledBorderRadius: '--plasma-badge-pilled-border-radius',
18
20
  height: '--plasma-badge-height',
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.base = void 0;
7
+ var _styledComponents = /*#__PURE__*/require("styled-components");
8
+ var _Badge = /*#__PURE__*/require("../../Badge.tokens");
9
+ var base = exports.base = /*#__PURE__*/(0, _styledComponents.css)(["&.", "{color:var(", ");background-color:transparent;padding:0;}"], /*#__PURE__*/String(_Badge.classes.badgeClear), _Badge.tokens.colorClear);
@@ -0,0 +1 @@
1
+ ["--plasma-badge-color-clear"]
@@ -126,7 +126,7 @@ var textAreaRoot = exports.textAreaRoot = function textAreaRoot(Root) {
126
126
  _useState6 = _slicedToArray(_useState5, 2),
127
127
  uncontrolledValue = _useState6[0],
128
128
  setUncontrolledValue = _useState6[1];
129
- var outerRef = /*#__PURE__*/(0, _react.createRef)();
129
+ var outerRef = innerRef && 'current' in innerRef ? innerRef : /*#__PURE__*/(0, _react.createRef)();
130
130
  var innerOptional = required ? false : optional;
131
131
  var hasHelper = Boolean(leftHelper || rightHelper || helperText);
132
132
  var hasOuterLabel = Boolean(label && labelPlacement === 'outer');
@@ -157,7 +157,6 @@ var textAreaRoot = exports.textAreaRoot = function textAreaRoot(Root) {
157
157
  if (value === undefined) {
158
158
  setUncontrolledValue(event === null || event === void 0 ? void 0 : event.target.value);
159
159
  }
160
- console.log(event);
161
160
  onChange === null || onChange === void 0 || onChange(event);
162
161
  }, [value, onChange]);
163
162
  var dynamicLabelClasses = getDynamicLabelClasses(_objectSpread({
@@ -199,7 +198,7 @@ var textAreaRoot = exports.textAreaRoot = function textAreaRoot(Root) {
199
198
  hasContentRight: Boolean(contentRight),
200
199
  hasHelper: hasHelper,
201
200
  applyCustomWidth: applyCustomWidth,
202
- ref: (0, _utils.mergeRefs)(outerRef, innerRef),
201
+ ref: outerRef,
203
202
  disabled: disabled,
204
203
  height: autoResize ? minAuto : height,
205
204
  width: width,