@salutejs/plasma-new-hope 0.160.1-canary.1374.11160084202.0 → 0.160.1-canary.1374.11174853993.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. package/cjs/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.js +1 -1
  2. package/cjs/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.js.map +1 -1
  3. package/cjs/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.js +1 -1
  4. package/cjs/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.js.map +1 -1
  5. package/emotion/cjs/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.js +1 -1
  6. package/emotion/cjs/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.js +1 -1
  7. package/emotion/cjs/examples/plasma_b2c/components/Tabs/TabItem.js +4 -0
  8. package/emotion/cjs/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +214 -95
  9. package/emotion/cjs/examples/plasma_web/components/Tabs/Tabs.stories.tsx +214 -97
  10. package/emotion/es/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.js +1 -1
  11. package/emotion/es/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.js +1 -1
  12. package/emotion/es/examples/plasma_b2c/components/Tabs/TabItem.js +4 -0
  13. package/emotion/es/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +214 -95
  14. package/emotion/es/examples/plasma_web/components/Tabs/Tabs.stories.tsx +214 -97
  15. package/es/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.js +1 -1
  16. package/es/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.js.map +1 -1
  17. package/es/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.js +1 -1
  18. package/es/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.js.map +1 -1
  19. package/package.json +2 -2
  20. package/styled-components/cjs/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.js +1 -1
  21. package/styled-components/cjs/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.js +1 -1
  22. package/styled-components/cjs/examples/plasma_b2c/components/Tabs/TabItem.js +4 -0
  23. package/styled-components/cjs/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +214 -95
  24. package/styled-components/cjs/examples/plasma_web/components/Tabs/Tabs.stories.tsx +214 -97
  25. package/styled-components/es/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.js +1 -1
  26. package/styled-components/es/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.js +1 -1
  27. package/styled-components/es/examples/plasma_b2c/components/Tabs/TabItem.js +4 -0
  28. package/styled-components/es/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +214 -95
  29. package/styled-components/es/examples/plasma_web/components/Tabs/Tabs.stories.tsx +214 -97
  30. package/types/components/Tabs/TabItem.types.d.ts +4 -4
  31. package/types/components/Tabs/TabItem.types.d.ts.map +1 -1
  32. package/types/components/Tabs/Tabs.types.d.ts +4 -4
  33. package/types/components/Tabs/Tabs.types.d.ts.map +1 -1
  34. package/types/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.d.ts.map +1 -1
  35. package/types/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.d.ts.map +1 -1
  36. package/types/examples/plasma_b2c/components/Tabs/TabItem.d.ts +3 -0
  37. package/types/examples/plasma_b2c/components/Tabs/TabItem.d.ts.map +1 -1
@@ -16,6 +16,7 @@ const sizes = ['xs', 's', 'm', 'l'] as const;
16
16
  const headerSizes = ['h5', 'h4', 'h3', 'h2', 'h1'] as const;
17
17
 
18
18
  type Size = typeof sizes[number];
19
+ type HeaderSize = typeof headerSizes[number];
19
20
 
20
21
  type CustomStoryTabsProps = {
21
22
  itemQuantity: number;
@@ -66,6 +67,13 @@ const meta: Meta<StoryTabsProps> = {
66
67
  'outsideScroll',
67
68
  'index',
68
69
  ]),
70
+ contentRight: {
71
+ options: contentRightOptions,
72
+ control: {
73
+ type: 'select',
74
+ },
75
+ if: { arg: 'helperText', eq: '' },
76
+ },
69
77
  },
70
78
  };
71
79
 
@@ -87,22 +95,41 @@ const StoryHorizontalDefault = (props: StoryTabsProps) => {
87
95
 
88
96
  return (
89
97
  <Tabs view={hasDivider ? 'divider' : 'clear'} stretch={stretch} disabled={disabled} size={size}>
90
- {items.map((_, i) => (
91
- <TabItem
92
- key={`item:${i}`}
93
- view="divider"
94
- selected={i === index}
95
- onClick={() => !disabled && setIndex(i)}
96
- tabIndex={!disabled ? 0 : -1}
97
- disabled={disabled}
98
- value={helperText}
99
- contentLeft={getContentLeft(contentLeftOption, size as Size)}
100
- contentRight={getContentRight(contentRightOption, size as Size)}
101
- size={size}
102
- >
103
- {`Label${i + 1}`}
104
- </TabItem>
105
- ))}
98
+ {items.map((_, i) => {
99
+ if (helperText !== '') {
100
+ return (
101
+ <TabItem
102
+ key={`item:${i}`}
103
+ view="divider"
104
+ selected={i === index}
105
+ onClick={() => !disabled && setIndex(i)}
106
+ tabIndex={!disabled ? 0 : -1}
107
+ disabled={disabled}
108
+ value={helperText}
109
+ contentLeft={getContentLeft(contentLeftOption, size as Size)}
110
+ size={size as Size}
111
+ >
112
+ {`Label${i + 1}`}
113
+ </TabItem>
114
+ );
115
+ }
116
+
117
+ return (
118
+ <TabItem
119
+ key={`item:${i}`}
120
+ view="divider"
121
+ selected={i === index}
122
+ onClick={() => !disabled && setIndex(i)}
123
+ tabIndex={!disabled ? 0 : -1}
124
+ disabled={disabled}
125
+ contentLeft={getContentLeft(contentLeftOption, size as Size)}
126
+ contentRight={getContentRight(contentRightOption, size as Size)}
127
+ size={size as Size}
128
+ >
129
+ {`Label${i + 1}`}
130
+ </TabItem>
131
+ );
132
+ })}
106
133
  </Tabs>
107
134
  );
108
135
  };
@@ -129,22 +156,41 @@ const StoryHorizontalScroll = (props: StoryTabsProps) => {
129
156
  size={size}
130
157
  style={{ width: '15rem' }}
131
158
  >
132
- {items.map((_, i) => (
133
- <TabItem
134
- key={`item:${i}`}
135
- view="divider"
136
- selected={i === index}
137
- onClick={() => !disabled && setIndex(i)}
138
- tabIndex={!disabled ? 0 : -1}
139
- disabled={disabled}
140
- value={helperText}
141
- contentLeft={getContentLeft(contentLeftOption, size as Size)}
142
- contentRight={getContentRight(contentRightOption, size as Size)}
143
- size={size}
144
- >
145
- {`Label${i + 1}`}
146
- </TabItem>
147
- ))}
159
+ {items.map((_, i) => {
160
+ if (helperText !== '') {
161
+ return (
162
+ <TabItem
163
+ key={`item:${i}`}
164
+ view="divider"
165
+ selected={i === index}
166
+ onClick={() => !disabled && setIndex(i)}
167
+ tabIndex={!disabled ? 0 : -1}
168
+ disabled={disabled}
169
+ value={helperText}
170
+ contentLeft={getContentLeft(contentLeftOption, size as Size)}
171
+ size={size as Size}
172
+ >
173
+ {`Label${i + 1}`}
174
+ </TabItem>
175
+ );
176
+ }
177
+
178
+ return (
179
+ <TabItem
180
+ key={`item:${i}`}
181
+ view="divider"
182
+ selected={i === index}
183
+ onClick={() => !disabled && setIndex(i)}
184
+ tabIndex={!disabled ? 0 : -1}
185
+ disabled={disabled}
186
+ contentLeft={getContentLeft(contentLeftOption, size as Size)}
187
+ contentRight={getContentRight(contentRightOption, size as Size)}
188
+ size={size as Size}
189
+ >
190
+ {`Label${i + 1}`}
191
+ </TabItem>
192
+ );
193
+ })}
148
194
  </Tabs>
149
195
  );
150
196
  };
@@ -178,22 +224,41 @@ const StoryHorizontalShowAll = (props: StoryTabsProps) => {
178
224
 
179
225
  return (
180
226
  <Tabs clip={clip} view={hasDivider ? 'divider' : 'clear'} disabled={disabled} size={size}>
181
- {visibleItems.map((_, i) => (
182
- <TabItem
183
- key={`item:${i}`}
184
- view="divider"
185
- selected={i === index}
186
- onClick={() => !disabled && setIndex(i)}
187
- tabIndex={!disabled ? 0 : -1}
188
- disabled={disabled}
189
- contentLeft={getContentLeft(contentLeftOption, size as Size)}
190
- contentRight={getContentRight(contentRightOption, size as Size)}
191
- size={size}
192
- value={helperText}
193
- >
194
- {`Label${i + 1}`}
195
- </TabItem>
196
- ))}
227
+ {visibleItems.map((_, i) => {
228
+ if (helperText !== '') {
229
+ return (
230
+ <TabItem
231
+ key={`item:${i}`}
232
+ view="divider"
233
+ selected={i === index}
234
+ onClick={() => !disabled && setIndex(i)}
235
+ tabIndex={!disabled ? 0 : -1}
236
+ disabled={disabled}
237
+ value={helperText}
238
+ contentLeft={getContentLeft(contentLeftOption, size as Size)}
239
+ size={size as Size}
240
+ >
241
+ {`Label${i + 1}`}
242
+ </TabItem>
243
+ );
244
+ }
245
+
246
+ return (
247
+ <TabItem
248
+ key={`item:${i}`}
249
+ view="divider"
250
+ selected={i === index}
251
+ onClick={() => !disabled && setIndex(i)}
252
+ tabIndex={!disabled ? 0 : -1}
253
+ disabled={disabled}
254
+ contentLeft={getContentLeft(contentLeftOption, size as Size)}
255
+ contentRight={getContentRight(contentRightOption, size as Size)}
256
+ size={size as Size}
257
+ >
258
+ {`Label${i + 1}`}
259
+ </TabItem>
260
+ );
261
+ })}
197
262
  {dropdownItems.length > 0 && (
198
263
  <div style={{ marginLeft: '1.75rem' }}>
199
264
  <Dropdown
@@ -206,7 +271,7 @@ const StoryHorizontalShowAll = (props: StoryTabsProps) => {
206
271
  view="divider"
207
272
  tabIndex={!disabled ? 0 : -1}
208
273
  disabled={disabled}
209
- size={size}
274
+ size={size as Size}
210
275
  >
211
276
  ShowAll
212
277
  </TabItem>
@@ -268,7 +333,6 @@ const StoryVerticalDefault = (props: StoryTabsProps) => {
268
333
  const {
269
334
  disabled,
270
335
  itemQuantity,
271
- stretch,
272
336
  size,
273
337
  contentLeft: contentLeftOption,
274
338
  contentRight: contentRightOption,
@@ -279,16 +343,33 @@ const StoryVerticalDefault = (props: StoryTabsProps) => {
279
343
  const [index, setIndex] = useState(0);
280
344
 
281
345
  return (
282
- <div style={{ height: '100vh' }}>
283
- <Tabs
284
- orientation="vertical"
285
- hasDivider={hasDivider}
286
- size={size as Size}
287
- disabled={disabled}
288
- stretch={stretch}
289
- contentLeft={getContentLeft(contentLeftOption, size as Size)}
290
- >
291
- {items.map((_, i) => (
346
+ <Tabs
347
+ orientation="vertical"
348
+ hasDivider={hasDivider}
349
+ size={size as Size}
350
+ disabled={disabled}
351
+ contentLeft={getContentLeft(contentLeftOption, size as Size)}
352
+ >
353
+ {items.map((_, i) => {
354
+ if (helperText !== '') {
355
+ return (
356
+ <TabItem
357
+ orientation="vertical"
358
+ key={`item:${i}`}
359
+ view="divider"
360
+ selected={i === index}
361
+ onClick={() => !disabled && setIndex(i)}
362
+ tabIndex={!disabled ? 0 : -1}
363
+ disabled={disabled}
364
+ value={helperText}
365
+ size={size as Size}
366
+ >
367
+ {`Label${i + 1}`}
368
+ </TabItem>
369
+ );
370
+ }
371
+
372
+ return (
292
373
  <TabItem
293
374
  orientation="vertical"
294
375
  key={`item:${i}`}
@@ -296,16 +377,15 @@ const StoryVerticalDefault = (props: StoryTabsProps) => {
296
377
  selected={i === index}
297
378
  onClick={() => !disabled && setIndex(i)}
298
379
  tabIndex={!disabled ? 0 : -1}
299
- size={size as Size}
300
380
  disabled={disabled}
301
- value={helperText}
302
381
  contentRight={getContentRight(contentRightOption, size as Size)}
382
+ size={size as Size}
303
383
  >
304
384
  {`Label${i + 1}`}
305
385
  </TabItem>
306
- ))}
307
- </Tabs>
308
- </div>
386
+ );
387
+ })}
388
+ </Tabs>
309
389
  );
310
390
  };
311
391
 
@@ -324,17 +404,35 @@ const StoryVerticalScroll = (props: StoryTabsProps) => {
324
404
  const [index, setIndex] = useState(0);
325
405
 
326
406
  return (
327
- <div style={{ height: '100vh' }}>
328
- <Tabs
329
- orientation="vertical"
330
- size={size as Size}
331
- disabled={disabled}
332
- clip={clip}
333
- style={{ height: '10rem' }}
334
- contentLeft={getContentLeft(contentLeftOption, size as Size)}
335
- hasDivider={hasDivider}
336
- >
337
- {items.map((_, i) => (
407
+ <Tabs
408
+ orientation="vertical"
409
+ size={size as Size}
410
+ disabled={disabled}
411
+ clip={clip}
412
+ style={{ height: '10rem' }}
413
+ contentLeft={getContentLeft(contentLeftOption, size as Size)}
414
+ hasDivider={hasDivider}
415
+ >
416
+ {items.map((_, i) => {
417
+ if (helperText !== '') {
418
+ return (
419
+ <TabItem
420
+ orientation="vertical"
421
+ key={`item:${i}`}
422
+ view="divider"
423
+ selected={i === index}
424
+ onClick={() => !disabled && setIndex(i)}
425
+ tabIndex={!disabled ? 0 : -1}
426
+ disabled={disabled}
427
+ value={helperText}
428
+ size={size as Size}
429
+ >
430
+ {`Label${i + 1}`}
431
+ </TabItem>
432
+ );
433
+ }
434
+
435
+ return (
338
436
  <TabItem
339
437
  orientation="vertical"
340
438
  key={`item:${i}`}
@@ -342,16 +440,15 @@ const StoryVerticalScroll = (props: StoryTabsProps) => {
342
440
  selected={i === index}
343
441
  onClick={() => !disabled && setIndex(i)}
344
442
  tabIndex={!disabled ? 0 : -1}
345
- size={size as Size}
346
443
  disabled={disabled}
347
- value={helperText}
348
444
  contentRight={getContentRight(contentRightOption, size as Size)}
445
+ size={size as Size}
349
446
  >
350
447
  {`Label${i + 1}`}
351
448
  </TabItem>
352
- ))}
353
- </Tabs>
354
- </div>
449
+ );
450
+ })}
451
+ </Tabs>
355
452
  );
356
453
  };
357
454
 
@@ -391,21 +488,41 @@ const StoryVerticalShowAll = (props: StoryTabsProps) => {
391
488
  contentLeft={getContentLeft(contentLeftOption, size as Size)}
392
489
  hasDivider={hasDivider}
393
490
  >
394
- {visibleItems.map((_, i) => (
395
- <TabItem
396
- orientation="vertical"
397
- key={`item:${i}`}
398
- selected={i === index}
399
- onClick={() => !disabled && setIndex(i)}
400
- tabIndex={!disabled ? 0 : -1}
401
- disabled={disabled}
402
- value={helperText}
403
- contentRight={getContentRight(contentRightOption, size as Size)}
404
- size={size as Size}
405
- >
406
- {`Label${i + 1}`}
407
- </TabItem>
408
- ))}
491
+ {visibleItems.map((_, i) => {
492
+ if (helperText !== '') {
493
+ return (
494
+ <TabItem
495
+ orientation="vertical"
496
+ key={`item:${i}`}
497
+ view="divider"
498
+ selected={i === index}
499
+ onClick={() => !disabled && setIndex(i)}
500
+ tabIndex={!disabled ? 0 : -1}
501
+ disabled={disabled}
502
+ value={helperText}
503
+ size={size as Size}
504
+ >
505
+ {`Label${i + 1}`}
506
+ </TabItem>
507
+ );
508
+ }
509
+
510
+ return (
511
+ <TabItem
512
+ orientation="vertical"
513
+ key={`item:${i}`}
514
+ view="divider"
515
+ selected={i === index}
516
+ onClick={() => !disabled && setIndex(i)}
517
+ tabIndex={!disabled ? 0 : -1}
518
+ disabled={disabled}
519
+ contentRight={getContentRight(contentRightOption, size as Size)}
520
+ size={size as Size}
521
+ >
522
+ {`Label${i + 1}`}
523
+ </TabItem>
524
+ );
525
+ })}
409
526
  {dropdownItems.length > 0 && (
410
527
  <Dropdown
411
528
  size={size as Size}
@@ -506,7 +623,7 @@ const StoryHeaderTabs = (props: StoryTabsProps) => {
506
623
  disabled={disabled}
507
624
  contentLeft={getContentLeft(contentLeftOption, size as Size)}
508
625
  contentRight={getContentRight(contentRightOption, size as Size)}
509
- size={size}
626
+ size={size as HeaderSize}
510
627
  >
511
628
  {`Label${i + 1}`}
512
629
  </TabItem>
@@ -101,7 +101,7 @@ var horizontalTabItemRoot = function horizontalTabItemRoot(Root) {
101
101
  className: classes.tabLeftContent
102
102
  }, contentLeft), /*#__PURE__*/React.createElement(StyledContent, {
103
103
  className: classes.tabContent
104
- }, children), value && /*#__PURE__*/React.createElement(TabItemValue, null, value), contentRight && /*#__PURE__*/React.createElement(RightContent, {
104
+ }, children), !contentRight && value && /*#__PURE__*/React.createElement(TabItemValue, null, value), !value && contentRight && /*#__PURE__*/React.createElement(RightContent, {
105
105
  className: classes.tabRightContent
106
106
  }, contentRight)));
107
107
  });
@@ -1 +1 @@
1
- {"version":3,"file":"HorizontalTabItem.js","sources":["../../../../../../src/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useContext, useEffect, useCallback } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../../../engines';\nimport { classes } from '../../../tokens';\nimport { cx } from '../../../../../utils';\nimport { TabsContext } from '../../../TabsContext';\nimport { HorizontalTabItemProps } from '../../../TabItem.types';\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 disabledCSS } from './variations/_disabled/base';\nimport { LeftContent, RightContent, StyledContent, TabItemValue, base } from './HorizontalTabItem.styles';\n\nexport const horizontalTabItemRoot = (Root: RootProps<HTMLDivElement, HorizontalTabItemProps>) =>\n forwardRef<HTMLDivElement, HorizontalTabItemProps>((props, outerRef) => {\n const {\n size,\n view,\n isActive,\n selected,\n disabled = false,\n pilled = false,\n children,\n value,\n contentLeft,\n contentRight,\n animated = true,\n onIndexChange,\n itemIndex,\n tabIndex,\n className,\n onClick,\n ...rest\n } = props;\n\n const innerRef = useRef<HTMLDivElement>(null);\n const ref = useForkRef(outerRef, innerRef);\n const refs = useContext(TabsContext);\n\n const role = 'tab';\n\n const pilledAttr = view !== 'clear' && pilled;\n const animatedClass = animated ? classes.tabItemAnimated : undefined;\n const pilledClass = pilledAttr ? classes.tabsPilled : undefined;\n const selectedClass = isActive || selected ? classes.selectedTabsItem : undefined;\n const hasKeyNavigation = itemIndex !== undefined && onIndexChange !== undefined;\n const navigationTabIndex = !disabled && refs?.current === itemIndex ? 0 : -1;\n\n useEffect(() => {\n if (!refs) {\n return;\n }\n\n refs.register(innerRef);\n\n return () => refs.unregister(innerRef);\n }, [refs]);\n\n const onItemFocus = useCallback<React.FocusEventHandler>(\n (event) => {\n if (disabled) {\n return;\n }\n\n if (!hasKeyNavigation && innerRef?.current) {\n innerRef.current.scrollTo({\n top: 0,\n left: innerRef.current.offsetLeft,\n behavior: 'smooth',\n });\n\n return;\n }\n\n if (!refs) {\n return;\n }\n\n const focusIndex = refs.items.findIndex((itemRef) => itemRef.current === event.target);\n\n if (focusIndex === refs.current) {\n return;\n }\n\n onIndexChange?.(focusIndex);\n refs.setCurrent(focusIndex);\n },\n [refs, innerRef, onIndexChange, disabled],\n );\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n event.currentTarget.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n\n if (!onClick) {\n return;\n }\n\n onClick(event);\n };\n\n return (\n <Root\n ref={ref}\n disabled={disabled}\n pilled={pilled}\n role={role}\n view={view}\n size={size}\n onFocus={onItemFocus}\n tabIndex={hasKeyNavigation ? navigationTabIndex : tabIndex}\n className={cx(pilledClass, selectedClass, animatedClass, className)}\n onClick={handleClick}\n {...rest}\n >\n <>\n {contentLeft && <LeftContent className={classes.tabLeftContent}>{contentLeft}</LeftContent>}\n <StyledContent className={classes.tabContent}>{children}</StyledContent>\n {value && <TabItemValue>{value}</TabItemValue>}\n {contentRight && <RightContent className={classes.tabRightContent}>{contentRight}</RightContent>}\n </>\n </Root>\n );\n });\n\nexport const horizontalTabItemConfig = {\n name: 'HorizontalTabItem',\n tag: 'button',\n layout: horizontalTabItemRoot,\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 pilled: {\n css: pilledCSS,\n },\n },\n defaults: {\n view: 'default',\n },\n};\n"],"names":["horizontalTabItemRoot","Root","forwardRef","props","outerRef","size","view","isActive","selected","_props$disabled","disabled","_props$pilled","pilled","children","value","contentLeft","contentRight","_props$animated","animated","onIndexChange","itemIndex","tabIndex","className","onClick","rest","_objectWithoutProperties","_excluded","innerRef","useRef","ref","useForkRef","refs","useContext","TabsContext","role","pilledAttr","animatedClass","classes","tabItemAnimated","undefined","pilledClass","tabsPilled","selectedClass","selectedTabsItem","hasKeyNavigation","navigationTabIndex","current","useEffect","register","unregister","onItemFocus","useCallback","event","scrollTo","top","left","offsetLeft","behavior","focusIndex","items","findIndex","itemRef","target","setCurrent","handleClick","currentTarget","scrollIntoView","block","inline","React","createElement","_extends","onFocus","cx","Fragment","LeftContent","tabLeftContent","StyledContent","tabContent","TabItemValue","RightContent","tabRightContent","horizontalTabItemConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","pilledCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"HorizontalTabItem.js","sources":["../../../../../../src/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useContext, useEffect, useCallback } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../../../engines';\nimport { classes } from '../../../tokens';\nimport { cx } from '../../../../../utils';\nimport { TabsContext } from '../../../TabsContext';\nimport { HorizontalTabItemProps } from '../../../TabItem.types';\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 disabledCSS } from './variations/_disabled/base';\nimport { LeftContent, RightContent, StyledContent, TabItemValue, base } from './HorizontalTabItem.styles';\n\nexport const horizontalTabItemRoot = (Root: RootProps<HTMLDivElement, HorizontalTabItemProps>) =>\n forwardRef<HTMLDivElement, HorizontalTabItemProps>((props, outerRef) => {\n const {\n size,\n view,\n isActive,\n selected,\n disabled = false,\n pilled = false,\n children,\n value,\n contentLeft,\n contentRight,\n animated = true,\n onIndexChange,\n itemIndex,\n tabIndex,\n className,\n onClick,\n ...rest\n } = props;\n\n const innerRef = useRef<HTMLDivElement>(null);\n const ref = useForkRef(outerRef, innerRef);\n const refs = useContext(TabsContext);\n\n const role = 'tab';\n\n const pilledAttr = view !== 'clear' && pilled;\n const animatedClass = animated ? classes.tabItemAnimated : undefined;\n const pilledClass = pilledAttr ? classes.tabsPilled : undefined;\n const selectedClass = isActive || selected ? classes.selectedTabsItem : undefined;\n const hasKeyNavigation = itemIndex !== undefined && onIndexChange !== undefined;\n const navigationTabIndex = !disabled && refs?.current === itemIndex ? 0 : -1;\n\n useEffect(() => {\n if (!refs) {\n return;\n }\n\n refs.register(innerRef);\n\n return () => refs.unregister(innerRef);\n }, [refs]);\n\n const onItemFocus = useCallback<React.FocusEventHandler>(\n (event) => {\n if (disabled) {\n return;\n }\n\n if (!hasKeyNavigation && innerRef?.current) {\n innerRef.current.scrollTo({\n top: 0,\n left: innerRef.current.offsetLeft,\n behavior: 'smooth',\n });\n\n return;\n }\n\n if (!refs) {\n return;\n }\n\n const focusIndex = refs.items.findIndex((itemRef) => itemRef.current === event.target);\n\n if (focusIndex === refs.current) {\n return;\n }\n\n onIndexChange?.(focusIndex);\n refs.setCurrent(focusIndex);\n },\n [refs, innerRef, onIndexChange, disabled],\n );\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n event.currentTarget.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n\n if (!onClick) {\n return;\n }\n\n onClick(event);\n };\n\n return (\n <Root\n ref={ref}\n disabled={disabled}\n pilled={pilled}\n role={role}\n view={view}\n size={size}\n onFocus={onItemFocus}\n tabIndex={hasKeyNavigation ? navigationTabIndex : tabIndex}\n className={cx(pilledClass, selectedClass, animatedClass, className)}\n onClick={handleClick}\n {...rest}\n >\n <>\n {contentLeft && <LeftContent className={classes.tabLeftContent}>{contentLeft}</LeftContent>}\n <StyledContent className={classes.tabContent}>{children}</StyledContent>\n {!contentRight && value && <TabItemValue>{value}</TabItemValue>}\n {!value && contentRight && (\n <RightContent className={classes.tabRightContent}>{contentRight}</RightContent>\n )}\n </>\n </Root>\n );\n });\n\nexport const horizontalTabItemConfig = {\n name: 'HorizontalTabItem',\n tag: 'button',\n layout: horizontalTabItemRoot,\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 pilled: {\n css: pilledCSS,\n },\n },\n defaults: {\n view: 'default',\n },\n};\n"],"names":["horizontalTabItemRoot","Root","forwardRef","props","outerRef","size","view","isActive","selected","_props$disabled","disabled","_props$pilled","pilled","children","value","contentLeft","contentRight","_props$animated","animated","onIndexChange","itemIndex","tabIndex","className","onClick","rest","_objectWithoutProperties","_excluded","innerRef","useRef","ref","useForkRef","refs","useContext","TabsContext","role","pilledAttr","animatedClass","classes","tabItemAnimated","undefined","pilledClass","tabsPilled","selectedClass","selectedTabsItem","hasKeyNavigation","navigationTabIndex","current","useEffect","register","unregister","onItemFocus","useCallback","event","scrollTo","top","left","offsetLeft","behavior","focusIndex","items","findIndex","itemRef","target","setCurrent","handleClick","currentTarget","scrollIntoView","block","inline","React","createElement","_extends","onFocus","cx","Fragment","LeftContent","tabLeftContent","StyledContent","tabContent","TabItemValue","RightContent","tabRightContent","horizontalTabItemConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","pilledCSS","defaults"],"mappings":"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"}
@@ -91,7 +91,7 @@ var verticalTabItemRoot = function verticalTabItemRoot(Root) {
91
91
  className: classes.tabLeftContent
92
92
  }, contentLeft), /*#__PURE__*/React.createElement(StyledContent, {
93
93
  className: classes.tabContent
94
- }, children), value && /*#__PURE__*/React.createElement(TabItemValue, null, value), contentRight && /*#__PURE__*/React.createElement(RightContent, {
94
+ }, children), !contentRight && value && /*#__PURE__*/React.createElement(TabItemValue, null, value), !value && contentRight && /*#__PURE__*/React.createElement(RightContent, {
95
95
  className: classes.tabRightContent
96
96
  }, contentRight)));
97
97
  });
@@ -1 +1 @@
1
- {"version":3,"file":"VerticalTabItem.js","sources":["../../../../../../src/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useContext, useEffect, useCallback } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../../../engines';\nimport { classes } from '../../../tokens';\nimport { cx } from '../../../../../utils';\nimport { TabsContext } from '../../../TabsContext';\nimport { VerticalTabItemProps } from '../../../TabItem.types';\nimport { VerticalTabsContext } from '../VerticalTabsContext';\n\nimport { base, LeftContent, RightContent, StyledContent, TabItemValue } from './VerticalTabItem.styles';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\n\nexport const verticalTabItemRoot = (Root: RootProps<HTMLButtonElement, VerticalTabItemProps>) =>\n forwardRef<HTMLButtonElement, VerticalTabItemProps>((props, outerRef) => {\n const {\n size,\n view,\n selected,\n disabled = false,\n children,\n value,\n contentRight,\n onIndexChange,\n itemIndex,\n tabIndex,\n className,\n onClick,\n ...rest\n } = props;\n\n const innerRef = useRef<HTMLButtonElement>(null);\n const ref = useForkRef(outerRef, innerRef);\n const refs = useContext(TabsContext);\n const contentLeft = useContext(VerticalTabsContext);\n\n const role = 'tab';\n\n const selectedClass = selected ? classes.selectedTabsItem : undefined;\n\n const hasKeyNavigation = itemIndex !== undefined && onIndexChange !== undefined;\n const navigationTabIndex = !disabled && refs?.current === itemIndex ? 0 : -1;\n\n useEffect(() => {\n if (!refs) {\n return;\n }\n\n refs.register(innerRef);\n\n return () => refs.unregister(innerRef);\n }, [refs]);\n\n const onItemFocus = useCallback<React.FocusEventHandler>(\n (event) => {\n if (disabled) {\n return;\n }\n\n if (!hasKeyNavigation && innerRef?.current) {\n innerRef.current.scrollTo({\n top: innerRef.current.offsetTop,\n behavior: 'smooth',\n });\n\n return;\n }\n\n if (!refs) {\n return;\n }\n\n const focusIndex = refs.items.findIndex((itemRef) => itemRef.current === event.target);\n\n if (focusIndex === refs.current) {\n return;\n }\n\n onIndexChange?.(focusIndex);\n refs.setCurrent(focusIndex);\n },\n [refs, innerRef, onIndexChange, disabled],\n );\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n event.currentTarget.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n\n if (!onClick) {\n return;\n }\n\n onClick(event);\n };\n\n return (\n <Root\n ref={ref}\n disabled={disabled}\n role={role}\n view={view}\n size={size}\n onFocus={onItemFocus}\n tabIndex={hasKeyNavigation ? navigationTabIndex : tabIndex}\n className={cx(selectedClass, className)}\n onClick={handleClick}\n {...rest}\n >\n <>\n {contentLeft && <LeftContent className={classes.tabLeftContent}>{contentLeft}</LeftContent>}\n <StyledContent className={classes.tabContent}>{children}</StyledContent>\n {value && <TabItemValue>{value}</TabItemValue>}\n {contentRight && <RightContent className={classes.tabRightContent}>{contentRight}</RightContent>}\n </>\n </Root>\n );\n });\n\nexport const verticalTabItemConfig = {\n name: 'VerticalTabItem',\n tag: 'button',\n layout: verticalTabItemRoot,\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 },\n defaults: {\n view: 'divider',\n },\n};\n"],"names":["verticalTabItemRoot","Root","forwardRef","props","outerRef","size","view","selected","_props$disabled","disabled","children","value","contentRight","onIndexChange","itemIndex","tabIndex","className","onClick","rest","_objectWithoutProperties","_excluded","innerRef","useRef","ref","useForkRef","refs","useContext","TabsContext","contentLeft","VerticalTabsContext","role","selectedClass","classes","selectedTabsItem","undefined","hasKeyNavigation","navigationTabIndex","current","useEffect","register","unregister","onItemFocus","useCallback","event","scrollTo","top","offsetTop","behavior","focusIndex","items","findIndex","itemRef","target","setCurrent","handleClick","currentTarget","scrollIntoView","block","inline","React","createElement","_extends","onFocus","cx","Fragment","LeftContent","tabLeftContent","StyledContent","tabContent","TabItemValue","RightContent","tabRightContent","verticalTabItemConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"VerticalTabItem.js","sources":["../../../../../../src/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useContext, useEffect, useCallback } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../../../engines';\nimport { classes } from '../../../tokens';\nimport { cx } from '../../../../../utils';\nimport { TabsContext } from '../../../TabsContext';\nimport { VerticalTabItemProps } from '../../../TabItem.types';\nimport { VerticalTabsContext } from '../VerticalTabsContext';\n\nimport { base, LeftContent, RightContent, StyledContent, TabItemValue } from './VerticalTabItem.styles';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\n\nexport const verticalTabItemRoot = (Root: RootProps<HTMLButtonElement, VerticalTabItemProps>) =>\n forwardRef<HTMLButtonElement, VerticalTabItemProps>((props, outerRef) => {\n const {\n size,\n view,\n selected,\n disabled = false,\n children,\n value,\n contentRight,\n onIndexChange,\n itemIndex,\n tabIndex,\n className,\n onClick,\n ...rest\n } = props;\n\n const innerRef = useRef<HTMLButtonElement>(null);\n const ref = useForkRef(outerRef, innerRef);\n const refs = useContext(TabsContext);\n const contentLeft = useContext(VerticalTabsContext);\n\n const role = 'tab';\n\n const selectedClass = selected ? classes.selectedTabsItem : undefined;\n\n const hasKeyNavigation = itemIndex !== undefined && onIndexChange !== undefined;\n const navigationTabIndex = !disabled && refs?.current === itemIndex ? 0 : -1;\n\n useEffect(() => {\n if (!refs) {\n return;\n }\n\n refs.register(innerRef);\n\n return () => refs.unregister(innerRef);\n }, [refs]);\n\n const onItemFocus = useCallback<React.FocusEventHandler>(\n (event) => {\n if (disabled) {\n return;\n }\n\n if (!hasKeyNavigation && innerRef?.current) {\n innerRef.current.scrollTo({\n top: innerRef.current.offsetTop,\n behavior: 'smooth',\n });\n\n return;\n }\n\n if (!refs) {\n return;\n }\n\n const focusIndex = refs.items.findIndex((itemRef) => itemRef.current === event.target);\n\n if (focusIndex === refs.current) {\n return;\n }\n\n onIndexChange?.(focusIndex);\n refs.setCurrent(focusIndex);\n },\n [refs, innerRef, onIndexChange, disabled],\n );\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n event.currentTarget.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n\n if (!onClick) {\n return;\n }\n\n onClick(event);\n };\n\n return (\n <Root\n ref={ref}\n disabled={disabled}\n role={role}\n view={view}\n size={size}\n onFocus={onItemFocus}\n tabIndex={hasKeyNavigation ? navigationTabIndex : tabIndex}\n className={cx(selectedClass, className)}\n onClick={handleClick}\n {...rest}\n >\n <>\n {contentLeft && <LeftContent className={classes.tabLeftContent}>{contentLeft}</LeftContent>}\n <StyledContent className={classes.tabContent}>{children}</StyledContent>\n {!contentRight && value && <TabItemValue>{value}</TabItemValue>}\n {!value && contentRight && (\n <RightContent className={classes.tabRightContent}>{contentRight}</RightContent>\n )}\n </>\n </Root>\n );\n });\n\nexport const verticalTabItemConfig = {\n name: 'VerticalTabItem',\n tag: 'button',\n layout: verticalTabItemRoot,\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 },\n defaults: {\n view: 'divider',\n },\n};\n"],"names":["verticalTabItemRoot","Root","forwardRef","props","outerRef","size","view","selected","_props$disabled","disabled","children","value","contentRight","onIndexChange","itemIndex","tabIndex","className","onClick","rest","_objectWithoutProperties","_excluded","innerRef","useRef","ref","useForkRef","refs","useContext","TabsContext","contentLeft","VerticalTabsContext","role","selectedClass","classes","selectedTabsItem","undefined","hasKeyNavigation","navigationTabIndex","current","useEffect","register","unregister","onItemFocus","useCallback","event","scrollTo","top","offsetTop","behavior","focusIndex","items","findIndex","itemRef","target","setCurrent","handleClick","currentTarget","scrollIntoView","block","inline","React","createElement","_extends","onFocus","cx","Fragment","LeftContent","tabLeftContent","StyledContent","tabContent","TabItemValue","RightContent","tabRightContent","verticalTabItemConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","defaults"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salutejs/plasma-new-hope",
3
- "version": "0.160.1-canary.1374.11160084202.0",
3
+ "version": "0.160.1-canary.1374.11174853993.0",
4
4
  "description": "Salute Design System blueprint",
5
5
  "main": "cjs/index.js",
6
6
  "module": "es/index.js",
@@ -124,5 +124,5 @@
124
124
  "react-popper": "2.3.0",
125
125
  "storeon": "3.1.5"
126
126
  },
127
- "gitHead": "84faa4e27faef8609011c434924094fabcee7cf6"
127
+ "gitHead": "6119ee995fd2cb96c0dc1d3d217041809f09b6bd"
128
128
  }
@@ -111,7 +111,7 @@ var horizontalTabItemRoot = exports.horizontalTabItemRoot = function horizontalT
111
111
  className: _tokens.classes.tabLeftContent
112
112
  }, contentLeft), /*#__PURE__*/_react["default"].createElement(_HorizontalTabItem.StyledContent, {
113
113
  className: _tokens.classes.tabContent
114
- }, children), value && /*#__PURE__*/_react["default"].createElement(_HorizontalTabItem.TabItemValue, null, value), contentRight && /*#__PURE__*/_react["default"].createElement(_HorizontalTabItem.RightContent, {
114
+ }, children), !contentRight && value && /*#__PURE__*/_react["default"].createElement(_HorizontalTabItem.TabItemValue, null, value), !value && contentRight && /*#__PURE__*/_react["default"].createElement(_HorizontalTabItem.RightContent, {
115
115
  className: _tokens.classes.tabRightContent
116
116
  }, contentRight)));
117
117
  });
@@ -101,7 +101,7 @@ var verticalTabItemRoot = exports.verticalTabItemRoot = function verticalTabItem
101
101
  className: _tokens.classes.tabLeftContent
102
102
  }, contentLeft), /*#__PURE__*/_react["default"].createElement(_VerticalTabItem.StyledContent, {
103
103
  className: _tokens.classes.tabContent
104
- }, children), value && /*#__PURE__*/_react["default"].createElement(_VerticalTabItem.TabItemValue, null, value), contentRight && /*#__PURE__*/_react["default"].createElement(_VerticalTabItem.RightContent, {
104
+ }, children), !contentRight && value && /*#__PURE__*/_react["default"].createElement(_VerticalTabItem.TabItemValue, null, value), !value && contentRight && /*#__PURE__*/_react["default"].createElement(_VerticalTabItem.RightContent, {
105
105
  className: _tokens.classes.tabRightContent
106
106
  }, contentRight)));
107
107
  });
@@ -14,6 +14,10 @@ var mergedHorizontalTabItemConfig = /*#__PURE__*/(0, _engines.mergeConfig)(_Tabs
14
14
  var HorizontalTabItem = /*#__PURE__*/(0, _engines.component)(mergedHorizontalTabItemConfig);
15
15
  var mergedVerticalTabItemConfig = /*#__PURE__*/(0, _engines.mergeConfig)(_Tabs.verticalTabItemConfig, _VerticalTabItem.config);
16
16
  var VerticalTabItem = /*#__PURE__*/(0, _engines.component)(mergedVerticalTabItemConfig);
17
+
18
+ /**
19
+ * Элемент списка, недопустимо использовать вне компонента Tabs.
20
+ */
17
21
  var TabItem = exports.TabItem = function TabItem(props) {
18
22
  if (props.orientation === 'vertical') {
19
23
  return /*#__PURE__*/_react["default"].createElement(VerticalTabItem, props);