@salutejs/plasma-new-hope 0.131.0-canary.1390.10557448117.0 → 0.131.0-canary.1392.10557537816.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/Segment/tokens.js +15 -1
- package/cjs/components/Segment/tokens.js.map +1 -1
- package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.css +10 -4
- package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +160 -83
- package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
- package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +37 -1
- package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js.map +1 -1
- package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles_1rr47x4.css +8 -0
- package/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +9 -0
- package/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js.map +1 -0
- package/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base_11agnr.css +1 -0
- package/cjs/components/Segment/ui/SegmentItem/SegmentItem.css +7 -3
- package/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +4 -2
- package/cjs/components/Segment/ui/SegmentItem/SegmentItem.js.map +1 -1
- package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +31 -2
- package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js.map +1 -1
- package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles_f1jpip.css +6 -0
- package/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -1
- package/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js.map +1 -1
- package/cjs/components/Segment/ui/SegmentItem/variations/_view/base_168a47w.css +1 -0
- package/cjs/components/Tabs/ui/Tabs/Tabs.js +2 -2
- package/cjs/components/Tabs/ui/Tabs/Tabs.js.map +1 -1
- package/cjs/components/_Icon/Icon.assets/DisclosureDown.js +22 -0
- package/cjs/components/_Icon/Icon.assets/DisclosureDown.js.map +1 -0
- package/cjs/components/_Icon/Icon.assets/DisclosureUp.js +22 -0
- package/cjs/components/_Icon/Icon.assets/DisclosureUp.js.map +1 -0
- package/cjs/components/_Icon/Icons/IconDisclosureDown.js +23 -0
- package/cjs/components/_Icon/Icons/IconDisclosureDown.js.map +1 -0
- package/cjs/components/_Icon/Icons/IconDisclosureUp.js +23 -0
- package/cjs/components/_Icon/Icons/IconDisclosureUp.js.map +1 -0
- package/cjs/index.css +17 -7
- package/emotion/cjs/components/Segment/README.md +61 -0
- package/emotion/cjs/components/Segment/tokens.js +15 -1
- package/emotion/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +156 -82
- package/emotion/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +25 -17
- package/emotion/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +10 -0
- package/emotion/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +1 -0
- package/emotion/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +4 -2
- package/emotion/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +28 -6
- package/emotion/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +2 -1
- package/emotion/cjs/components/Tabs/ui/Tabs/Tabs.js +2 -2
- package/emotion/cjs/components/_Icon/Icon.assets/DisclosureDown.js +21 -0
- package/emotion/cjs/components/_Icon/Icon.assets/DisclosureUp.js +21 -0
- package/emotion/cjs/components/_Icon/Icons/IconDisclosureDown.js +22 -0
- package/emotion/cjs/components/_Icon/Icons/IconDisclosureUp.js +22 -0
- package/emotion/cjs/components/_Icon/index.js +14 -0
- package/emotion/cjs/examples/plasma_web/components/Segment/Segment.stories.tsx +143 -2
- package/emotion/cjs/examples/plasma_web/components/Segment/SegmentGroup.config.js +12 -9
- package/emotion/cjs/examples/plasma_web/components/Segment/SegmentItem.config.js +9 -9
- package/emotion/es/components/Segment/README.md +61 -0
- package/emotion/es/components/Segment/tokens.js +15 -1
- package/emotion/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +159 -85
- package/emotion/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +25 -17
- package/emotion/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +4 -0
- package/emotion/es/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +1 -0
- package/emotion/es/components/Segment/ui/SegmentItem/SegmentItem.js +5 -3
- package/emotion/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +27 -5
- package/emotion/es/components/Segment/ui/SegmentItem/variations/_view/base.js +2 -1
- package/emotion/es/components/Tabs/ui/Tabs/Tabs.js +2 -2
- package/emotion/es/components/_Icon/Icon.assets/DisclosureDown.js +14 -0
- package/emotion/es/components/_Icon/Icon.assets/DisclosureUp.js +14 -0
- package/emotion/es/components/_Icon/Icons/IconDisclosureDown.js +15 -0
- package/emotion/es/components/_Icon/Icons/IconDisclosureUp.js +15 -0
- package/emotion/es/components/_Icon/index.js +2 -0
- package/emotion/es/examples/plasma_web/components/Segment/Segment.stories.tsx +143 -2
- package/emotion/es/examples/plasma_web/components/Segment/SegmentGroup.config.js +12 -9
- package/emotion/es/examples/plasma_web/components/Segment/SegmentItem.config.js +9 -9
- package/es/components/Segment/tokens.js +15 -1
- package/es/components/Segment/tokens.js.map +1 -1
- package/es/components/Segment/ui/SegmentGroup/SegmentGroup.css +10 -4
- package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +163 -87
- package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
- package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +34 -2
- package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js.map +1 -1
- package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles_1rr47x4.css +8 -0
- package/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +5 -0
- package/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js.map +1 -0
- package/es/components/Segment/ui/SegmentGroup/variations/_vertical/base_11agnr.css +1 -0
- package/es/components/Segment/ui/SegmentItem/SegmentItem.css +7 -3
- package/es/components/Segment/ui/SegmentItem/SegmentItem.js +5 -3
- package/es/components/Segment/ui/SegmentItem/SegmentItem.js.map +1 -1
- package/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +30 -3
- package/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js.map +1 -1
- package/es/components/Segment/ui/SegmentItem/SegmentItem.styles_f1jpip.css +6 -0
- package/es/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -1
- package/es/components/Segment/ui/SegmentItem/variations/_view/base.js.map +1 -1
- package/es/components/Segment/ui/SegmentItem/variations/_view/base_168a47w.css +1 -0
- package/es/components/Tabs/ui/Tabs/Tabs.js +2 -2
- package/es/components/Tabs/ui/Tabs/Tabs.js.map +1 -1
- package/es/components/_Icon/Icon.assets/DisclosureDown.js +18 -0
- package/es/components/_Icon/Icon.assets/DisclosureDown.js.map +1 -0
- package/es/components/_Icon/Icon.assets/DisclosureUp.js +18 -0
- package/es/components/_Icon/Icon.assets/DisclosureUp.js.map +1 -0
- package/es/components/_Icon/Icons/IconDisclosureDown.js +19 -0
- package/es/components/_Icon/Icons/IconDisclosureDown.js.map +1 -0
- package/es/components/_Icon/Icons/IconDisclosureUp.js +19 -0
- package/es/components/_Icon/Icons/IconDisclosureUp.js.map +1 -0
- package/es/index.css +17 -7
- package/package.json +2 -2
- package/styled-components/cjs/components/Segment/README.md +61 -0
- package/styled-components/cjs/components/Segment/tokens.js +15 -1
- package/styled-components/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +156 -82
- package/styled-components/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +16 -4
- package/styled-components/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +10 -0
- package/styled-components/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +1 -0
- package/styled-components/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +4 -2
- package/styled-components/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +23 -5
- package/styled-components/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +2 -1
- package/styled-components/cjs/components/Tabs/ui/Tabs/Tabs.js +2 -2
- package/styled-components/cjs/components/_Icon/Icon.assets/DisclosureDown.js +21 -0
- package/styled-components/cjs/components/_Icon/Icon.assets/DisclosureUp.js +21 -0
- package/styled-components/cjs/components/_Icon/Icons/IconDisclosureDown.js +22 -0
- package/styled-components/cjs/components/_Icon/Icons/IconDisclosureUp.js +22 -0
- package/styled-components/cjs/components/_Icon/index.js +14 -0
- package/styled-components/cjs/examples/plasma_web/components/Segment/Segment.stories.tsx +143 -2
- package/styled-components/cjs/examples/plasma_web/components/Segment/SegmentGroup.config.js +7 -4
- package/styled-components/cjs/examples/plasma_web/components/Segment/SegmentItem.config.js +8 -8
- package/styled-components/es/components/Segment/README.md +61 -0
- package/styled-components/es/components/Segment/tokens.js +15 -1
- package/styled-components/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +159 -85
- package/styled-components/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +16 -4
- package/styled-components/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +4 -0
- package/styled-components/es/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +1 -0
- package/styled-components/es/components/Segment/ui/SegmentItem/SegmentItem.js +5 -3
- package/styled-components/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +22 -4
- package/styled-components/es/components/Segment/ui/SegmentItem/variations/_view/base.js +2 -1
- package/styled-components/es/components/Tabs/ui/Tabs/Tabs.js +2 -2
- package/styled-components/es/components/_Icon/Icon.assets/DisclosureDown.js +14 -0
- package/styled-components/es/components/_Icon/Icon.assets/DisclosureUp.js +14 -0
- package/styled-components/es/components/_Icon/Icons/IconDisclosureDown.js +15 -0
- package/styled-components/es/components/_Icon/Icons/IconDisclosureUp.js +15 -0
- package/styled-components/es/components/_Icon/index.js +2 -0
- package/styled-components/es/examples/plasma_web/components/Segment/Segment.stories.tsx +143 -2
- package/styled-components/es/examples/plasma_web/components/Segment/SegmentGroup.config.js +7 -4
- package/styled-components/es/examples/plasma_web/components/Segment/SegmentItem.config.js +8 -8
- package/types/components/Segment/tokens.d.ts +14 -0
- package/types/components/Segment/tokens.d.ts.map +1 -1
- package/types/components/Segment/ui/SegmentGroup/SegmentGroup.d.ts +7 -0
- package/types/components/Segment/ui/SegmentGroup/SegmentGroup.d.ts.map +1 -1
- package/types/components/Segment/ui/SegmentGroup/SegmentGroup.styles.d.ts +12 -0
- package/types/components/Segment/ui/SegmentGroup/SegmentGroup.styles.d.ts.map +1 -1
- package/types/components/Segment/ui/SegmentGroup/SegmentGroup.types.d.ts +5 -1
- package/types/components/Segment/ui/SegmentGroup/SegmentGroup.types.d.ts.map +1 -1
- package/types/components/Segment/ui/SegmentGroup/variations/_vertical/base.d.ts +2 -0
- package/types/components/Segment/ui/SegmentGroup/variations/_vertical/base.d.ts.map +1 -0
- package/types/components/Segment/ui/SegmentItem/SegmentItem.d.ts +4 -0
- package/types/components/Segment/ui/SegmentItem/SegmentItem.d.ts.map +1 -1
- package/types/components/Segment/ui/SegmentItem/SegmentItem.styles.d.ts +9 -1
- package/types/components/Segment/ui/SegmentItem/SegmentItem.styles.d.ts.map +1 -1
- package/types/components/Segment/ui/SegmentItem/SegmentItem.types.d.ts +8 -0
- package/types/components/Segment/ui/SegmentItem/SegmentItem.types.d.ts.map +1 -1
- package/types/components/Segment/ui/SegmentItem/variations/_view/base.d.ts.map +1 -1
- package/types/components/Tabs/ui/Tabs/Tabs.d.ts.map +1 -1
- package/types/components/_Icon/Icon.assets/DisclosureDown.d.ts +4 -0
- package/types/components/_Icon/Icon.assets/DisclosureDown.d.ts.map +1 -0
- package/types/components/_Icon/Icon.assets/DisclosureUp.d.ts +4 -0
- package/types/components/_Icon/Icon.assets/DisclosureUp.d.ts.map +1 -0
- package/types/components/_Icon/Icons/IconDisclosureDown.d.ts +4 -0
- package/types/components/_Icon/Icons/IconDisclosureDown.d.ts.map +1 -0
- package/types/components/_Icon/Icons/IconDisclosureUp.d.ts +4 -0
- package/types/components/_Icon/Icons/IconDisclosureUp.d.ts.map +1 -0
- package/types/components/_Icon/index.d.ts +2 -0
- package/types/components/_Icon/index.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Segment/Segment.d.ts +3 -0
- package/types/examples/plasma_b2c/components/Segment/Segment.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Segment/Segment.d.ts +6 -0
- package/types/examples/plasma_web/components/Segment/Segment.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Segment/SegmentGroup.config.d.ts +3 -0
- package/types/examples/plasma_web/components/Segment/SegmentGroup.config.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Segment/SegmentItem.config.d.ts.map +1 -1
- package/types/examples/sds_engineer/components/Segment/Segment.d.ts +3 -0
- package/types/examples/sds_engineer/components/Segment/Segment.d.ts.map +1 -1
- package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles_m9i9p0.css +0 -4
- package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles_18h1p52.css +0 -2
- package/cjs/components/Segment/ui/SegmentItem/variations/_view/base_1m1u2ys.css +0 -1
- package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles_m9i9p0.css +0 -4
- package/es/components/Segment/ui/SegmentItem/SegmentItem.styles_18h1p52.css +0 -2
- package/es/components/Segment/ui/SegmentItem/variations/_view/base_1m1u2ys.css +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"SegmentItem.js","sources":["../../../../../src/components/Segment/ui/SegmentItem/SegmentItem.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo } from 'react';\nimport type { MouseEvent } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../../../engines/types';\nimport { cx, extractTextFrom } from '../../../../utils';\nimport { classes } from '../../tokens';\nimport { useSegmentInner } from '../../SegmentProvider/SegmentProvider';\n\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as pilledCSS } from './variations/_pilled/base';\nimport type { SegmentItemProps } from './SegmentItem.types';\nimport { StyledContent, base } from './SegmentItem.styles';\n\nexport const segmentItemRoot = (Root: RootProps<HTMLLabelElement, SegmentItemProps>) =>\n forwardRef<HTMLLabelElement, SegmentItemProps>((props, outerRef) => {\n const {\n size,\n view,\n id,\n label,\n value,\n pilled,\n customHandleSelect,\n 'aria-label': ariaLabelExternal,\n ...rest\n } = props;\n const { selectionMode, disabledGroup, handleSelect, selectedSegmentItems } = useSegmentInner();\n\n const uniqId = safeUseId();\n const segmentId = id || `label-${uniqId}`;\n\n const ariaLabelDefault = useMemo(() => extractTextFrom(label), [label]);\n const pilledAttr = view !== 'clear' && pilled;\n const pilledClass = pilledAttr ? classes.segmentPilled : undefined;\n\n const isSelected = selectedSegmentItems?.includes(value || ariaLabelDefault);\n const selectedClass = isSelected ? classes.selectedSegmentItem : undefined;\n\n const handleSelectSegment = useCallback(\n (event: MouseEvent<HTMLButtonElement>) => {\n if (disabledGroup) {\n return;\n }\n\n customHandleSelect?.(event);\n handleSelect?.(value || ariaLabelDefault);\n },\n [selectionMode],\n );\n\n return (\n <Root\n view={view}\n size={size}\n id={segmentId}\n ref={outerRef}\n aria-label={ariaLabelExternal || ariaLabelDefault}\n value={value}\n pilled={pilledAttr}\n className={cx(selectedClass, pilledClass)}\n onClick={handleSelectSegment}\n tabIndex={disabledGroup ? -1 : 0}\n disabled={disabledGroup}\n {...rest}\n >\n <StyledContent>{label || value}</StyledContent>\n </Root>\n );\n });\n\nexport const segmentItemConfig = {\n name: 'SegmentItem',\n tag: 'button',\n layout: segmentItemRoot,\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 attrs: true,\n },\n },\n defaults: {\n view: 'clear',\n size: 'xs',\n },\n};\n"],"names":["segmentItemRoot","Root","forwardRef","props","outerRef","size","view","id","label","value","pilled","customHandleSelect","ariaLabelExternal","rest","_objectWithoutProperties","_excluded","_useSegmentInner","useSegmentInner","selectionMode","disabledGroup","handleSelect","selectedSegmentItems","uniqId","safeUseId","segmentId","concat","ariaLabelDefault","useMemo","extractTextFrom","pilledAttr","pilledClass","classes","segmentPilled","undefined","isSelected","includes","selectedClass","selectedSegmentItem","handleSelectSegment","useCallback","event","React","createElement","_extends","ref","className","cx","onClick","tabIndex","disabled","StyledContent","segmentItemConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","pilledCSS","defaults"],"mappings":";;;;;;;;;;;;;;IAgBaA,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,IAAmD,EAAA;AAAA,EAAA,oBAC/EC,UAAU,CAAqC,UAACC,KAAK,EAAEC,QAAQ,EAAK;AAChE,IAAA,IACIC,IAAI,
|
1
|
+
{"version":3,"file":"SegmentItem.js","sources":["../../../../../src/components/Segment/ui/SegmentItem/SegmentItem.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo } from 'react';\nimport type { MouseEvent } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../../../engines/types';\nimport { cx, extractTextFrom } from '../../../../utils';\nimport { classes } from '../../tokens';\nimport { useSegmentInner } from '../../SegmentProvider/SegmentProvider';\n\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as pilledCSS } from './variations/_pilled/base';\nimport type { SegmentItemProps } from './SegmentItem.types';\nimport { StyledContent, base, LeftContent, RightContent } from './SegmentItem.styles';\n\nexport const segmentItemRoot = (Root: RootProps<HTMLLabelElement, SegmentItemProps>) =>\n forwardRef<HTMLLabelElement, SegmentItemProps>((props, outerRef) => {\n const {\n size,\n view,\n id,\n label,\n value,\n pilled,\n contentLeft,\n contentRight,\n customHandleSelect,\n 'aria-label': ariaLabelExternal,\n ...rest\n } = props;\n const { selectionMode, disabledGroup, handleSelect, selectedSegmentItems } = useSegmentInner();\n\n const uniqId = safeUseId();\n const segmentId = id || `label-${uniqId}`;\n\n const ariaLabelDefault = useMemo(() => extractTextFrom(label), [label]);\n const pilledAttr = view !== 'clear' && pilled;\n const pilledClass = pilledAttr ? classes.segmentPilled : undefined;\n\n const isSelected = selectedSegmentItems?.includes(value || ariaLabelDefault);\n const selectedClass = isSelected ? classes.selectedSegmentItem : undefined;\n\n const handleSelectSegment = useCallback(\n (event: MouseEvent<HTMLButtonElement>) => {\n if (disabledGroup) {\n return;\n }\n\n customHandleSelect?.(event);\n handleSelect?.(value || ariaLabelDefault);\n },\n [selectionMode],\n );\n\n return (\n <Root\n view={view}\n size={size}\n id={segmentId}\n ref={outerRef}\n aria-label={ariaLabelExternal || ariaLabelDefault}\n value={value}\n pilled={pilledAttr}\n className={cx(selectedClass, pilledClass)}\n onClick={handleSelectSegment}\n tabIndex={disabledGroup ? -1 : 0}\n disabled={disabledGroup}\n {...rest}\n >\n {contentLeft && <LeftContent>{contentLeft}</LeftContent>}\n <StyledContent>{label || value}</StyledContent>\n {contentRight && <RightContent>{contentRight}</RightContent>}\n </Root>\n );\n });\n\nexport const segmentItemConfig = {\n name: 'SegmentItem',\n tag: 'button',\n layout: segmentItemRoot,\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 attrs: true,\n },\n },\n defaults: {\n view: 'clear',\n size: 'xs',\n },\n};\n"],"names":["segmentItemRoot","Root","forwardRef","props","outerRef","size","view","id","label","value","pilled","contentLeft","contentRight","customHandleSelect","ariaLabelExternal","rest","_objectWithoutProperties","_excluded","_useSegmentInner","useSegmentInner","selectionMode","disabledGroup","handleSelect","selectedSegmentItems","uniqId","safeUseId","segmentId","concat","ariaLabelDefault","useMemo","extractTextFrom","pilledAttr","pilledClass","classes","segmentPilled","undefined","isSelected","includes","selectedClass","selectedSegmentItem","handleSelectSegment","useCallback","event","React","createElement","_extends","ref","className","cx","onClick","tabIndex","disabled","LeftContent","StyledContent","RightContent","segmentItemConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","pilledCSS","defaults"],"mappings":"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"}
|
@@ -1,12 +1,39 @@
|
|
1
|
-
import './SegmentItem.
|
1
|
+
import './SegmentItem.styles_f1jpip.css';
|
2
2
|
import { styled } from '@linaria/react';
|
3
|
+
import { tokens } from '../../tokens.js';
|
3
4
|
|
4
5
|
var base = "bxcdyja";
|
6
|
+
var _exp7 = function _exp7() {
|
7
|
+
return function (_ref) {
|
8
|
+
var hasRightMargin = _ref.hasRightMargin;
|
9
|
+
return hasRightMargin ? "var(".concat(tokens.itemIconMargin, ")") : '0';
|
10
|
+
};
|
11
|
+
};
|
12
|
+
var _exp8 = function _exp8() {
|
13
|
+
return function (_ref2) {
|
14
|
+
var hasLeftMargin = _ref2.hasLeftMargin;
|
15
|
+
return hasLeftMargin ? "var(".concat(tokens.itemIconMargin, ")") : '0';
|
16
|
+
};
|
17
|
+
};
|
5
18
|
var StyledContent = /*#__PURE__*/styled('div')({
|
6
19
|
name: "StyledContent",
|
7
|
-
"class": "
|
20
|
+
"class": "sctm1j9",
|
21
|
+
propsAsIs: false,
|
22
|
+
vars: {
|
23
|
+
"sctm1j9-0": [/*#__PURE__*/_exp7()],
|
24
|
+
"sctm1j9-1": [/*#__PURE__*/_exp8()]
|
25
|
+
}
|
26
|
+
});
|
27
|
+
var RightContent = /*#__PURE__*/styled('div')({
|
28
|
+
name: "RightContent",
|
29
|
+
"class": "rgzn5ju",
|
30
|
+
propsAsIs: false
|
31
|
+
});
|
32
|
+
var LeftContent = /*#__PURE__*/styled('div')({
|
33
|
+
name: "LeftContent",
|
34
|
+
"class": "l1sp2ipp",
|
8
35
|
propsAsIs: false
|
9
36
|
});
|
10
37
|
|
11
|
-
export { StyledContent, base };
|
38
|
+
export { LeftContent, RightContent, StyledContent, base };
|
12
39
|
//# sourceMappingURL=SegmentItem.styles.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"SegmentItem.styles.js","sources":["../../../../../src/components/Segment/ui/SegmentItem/SegmentItem.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\nimport { css } from '@linaria/core';\n\nimport { addFocus, applyEllipsis } from '../../../../mixins';\nimport { tokens } from '../../tokens';\n\nexport const base = css`\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n
|
1
|
+
{"version":3,"file":"SegmentItem.styles.js","sources":["../../../../../src/components/Segment/ui/SegmentItem/SegmentItem.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\nimport { css } from '@linaria/core';\n\nimport { addFocus, applyEllipsis } from '../../../../mixins';\nimport { tokens } from '../../tokens';\n\nexport const base = css`\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n\n appearance: none;\n border: none;\n outline: none;\n cursor: pointer;\n margin-left: var(${tokens.itemMarginLeft});\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n\n &:first-child {\n margin-left: 0;\n }\n\n ${addFocus({\n outlineSize: '0.063rem',\n outlineOffset: '0.063rem',\n outlineColor: `var(${tokens.outlineFocusColor})`,\n outlineRadius: 'calc(var(--plasma_private-outline-radius) + 0.063rem)',\n customFocusRules: `\n &.focus-visible:focus,\n &[data-focus-visible-added] {\n &::before {\n z-index: 1;\n outline: none;\n box-shadow: 0 0 0 0.063rem var(${tokens.outlineFocusColor});\n }\n }\n `,\n })};\n`;\n\nexport const StyledLeftIcon = styled.div`\n margin-right: var(${tokens.itemIconMargin});\n`;\n\nexport const StyledRightIcon = styled.div`\n margin-left: var(${tokens.itemIconMargin});\n`;\n\nexport const StyledContent = styled.div<{\n hasRightMargin?: boolean;\n hasLeftMargin?: boolean;\n isSecondary?: boolean;\n}>`\n display: inline-block;\n width: fit-content;\n padding: var(${tokens.itemContentPadding});\n ${applyEllipsis()};\n\n margin-right: ${({ hasRightMargin }) => (hasRightMargin ? `var(${tokens.itemIconMargin})` : '0')};\n margin-left: ${({ hasLeftMargin }) => (hasLeftMargin ? `var(${tokens.itemIconMargin})` : '0')};\n`;\n\nexport const RightContent = styled.div`\n display: flex;\n margin-left: var(${tokens.itemIconMargin});\n\n color: var(${tokens.itemAdditionalColor});\n`;\n\nexport const LeftContent = styled.div`\n display: flex;\n margin-right: var(${tokens.itemIconMargin});\n\n color: inherit;\n`;\n"],"names":["base","_exp7","_ref","hasRightMargin","concat","tokens","itemIconMargin","_exp8","_ref2","hasLeftMargin","StyledContent","styled","name","class","propsAsIs","vars","RightContent","LeftContent"],"mappings":";;;AAMO,IAAMA,IAAI,GAkChB,UAAA;AAQC,IAAAC,KAAA,GA/CgBA,SA+ChBA,KAAAA,GAAA;AAAA,EAAA,OAYkB,UAAAC,IAAA,EAAA;AAAA,IAAA,IAAGC,cAAAA,GAAAA,IAAAA,CAAAA,cAAAA,CAAAA;IAAAA,OAAsBA,cAAc,UAAAC,MAAA,CAAUC,MAAM,CAACC,cAAe,SAAK,GAAI,CAAA;AAAA,GAAA,CAAA;AAAA,CAAA,CAAA;AAAA,IAAAC,KAAA,GA3DlFA,SA2DkFA,KAAAA,GAAA;AAAA,EAAA,OACjF,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAGC,aAAAA,GAAAA,KAAAA,CAAAA,aAAAA,CAAAA;IAAAA,OAAqBA,aAAa,UAAAL,MAAA,CAAUC,MAAM,CAACC,cAAe,SAAK,GAAI,CAAA;AAAA,GAAA,CAAA;AAAA,CAAA,CAAA;AAX1F,IAAMI,aAAa,gBAAGC,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,eAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAAC,EAAAA,IAAA,EAAA;AAAA,IAAA,WAAA,EAAA,cAUfd,KAAgF,EAAA,CAAA;AAAA,IAAA,WAAA,EAAA,cACjFM,KAA8E,EAAA,CAAA;AAAA,GAAA;AAAA,CAChG,EAAA;AAEM,IAAMS,YAAY,gBAAGL,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,cAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAKjC,EAAA;AAEM,IAAMG,WAAW,gBAAGN,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAKhC;;;;"}
|
@@ -0,0 +1,6 @@
|
|
1
|
+
.bxcdyja{position:relative;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;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;outline:none;cursor:pointer;margin-left:var(--plasma-segment-item-margin-left);-webkit-tap-highlight-color:rgba(0,0,0,0);position:relative;}.bxcdyja:first-child{margin-left:0;}.bxcdyja::before{content:'';position:absolute;top:0.063rem;left:0.063rem;right:0.063rem;bottom:0.063rem;z-index:1;display:block;box-sizing:content-box;border:0.063rem solid transparent;border-radius:calc(var(--plasma_private-outline-radius) + 0.063rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.bxcdyja.focus-visible:focus::before,.bxcdyja[data-focus-visible-added]::before{z-index:1;outline:none;box-shadow:0 0 0 0.063rem var(--plasma-segment-outline-focus-color);}
|
2
|
+
.sxjfe87{margin-right:var(--plasma-segment-item-content-icon-margin);}
|
3
|
+
.s1gg7fed{margin-left:var(--plasma-segment-item-content-icon-margin);}
|
4
|
+
.sctm1j9{display:inline-block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:var(--plasma-segment-item-content-padding);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:var(--sctm1j9-0);margin-left:var(--sctm1j9-1);}
|
5
|
+
.rgzn5ju{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-segment-item-content-icon-margin);color:var(--plasma-segment-item-additional-color);}
|
6
|
+
.l1sp2ipp{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-right:var(--plasma-segment-item-content-icon-margin);color:inherit;}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"base.js","sources":["../../../../../../../src/components/Segment/ui/SegmentItem/variations/_view/base.ts"],"sourcesContent":["import { css } from '@linaria/core';\n\nimport { classes, tokens } from '../../../../tokens';\n\nexport const base = css`\n color: var(${tokens.itemColor});\n background-color: var(${tokens.itemBackgroundColor});\n\n &:hover {\n color: var(${tokens.itemColorHover});\n background-color: var(${tokens.itemBackgroundColorHover});\n }\n\n &.${String(classes.selectedSegmentItem)} {\n color: var(${tokens.itemSelectedColor});\n background-color: var(${tokens.itemSelectedBackgroundColor});\n\n &:hover {\n color: var(${tokens.itemSelectedColorHover});\n background-color: var(${tokens.itemSelectedBackgroundColorHover});\n }\n }\n`;\n"],"names":["base"],"mappings":"
|
1
|
+
{"version":3,"file":"base.js","sources":["../../../../../../../src/components/Segment/ui/SegmentItem/variations/_view/base.ts"],"sourcesContent":["import { css } from '@linaria/core';\n\nimport { classes, tokens } from '../../../../tokens';\nimport { RightContent } from '../../SegmentItem.styles';\n\nexport const base = css`\n color: var(${tokens.itemColor});\n background-color: var(${tokens.itemBackgroundColor});\n\n &:hover {\n color: var(${tokens.itemColorHover});\n background-color: var(${tokens.itemBackgroundColorHover});\n\n ${RightContent} {\n color: var(${tokens.itemAdditionalColorHover});\n }\n }\n\n &.${String(classes.selectedSegmentItem)} {\n color: var(${tokens.itemSelectedColor});\n background-color: var(${tokens.itemSelectedBackgroundColor});\n\n ${RightContent} {\n color: var(${tokens.itemSelectedAdditionalColor});\n }\n\n &:hover {\n color: var(${tokens.itemSelectedColorHover});\n background-color: var(${tokens.itemSelectedBackgroundColorHover});\n\n ${RightContent} {\n color: var(${tokens.itemSelectedAdditionalColorHover});\n }\n }\n }\n`;\n"],"names":["base"],"mappings":"AAKO,IAAMA,IAAI,GA8BhB;;;;"}
|
@@ -0,0 +1 @@
|
|
1
|
+
.b1tykljf{color:var(--plasma-segment-item-color);background-color:var(--plasma-segment-item-background-color);}.b1tykljf:hover{color:var(--plasma-segment-item-color-hover);background-color:var(--plasma-segment-item-background-color-hover);}.b1tykljf:hover .rgzn5ju{color:var(--plasma-segment-item-additional-color-hover);}.b1tykljf.selected-segment-item{color:var(--plasma-segment-item-selected-color);background-color:var(--plasma-segment-item-selected-background-color);}.b1tykljf.selected-segment-item .rgzn5ju{color:var(--plasma-segment-item-selected-additional-color);}.b1tykljf.selected-segment-item:hover{color:var(--plasma-segment-item-selected-color-hover);background-color:var(--plasma-segment-item-selected-background-color-hover);}.b1tykljf.selected-segment-item:hover .rgzn5ju{color:var(--plasma-segment-item-selected-additional-color-hover);}
|
@@ -131,7 +131,7 @@ var tabsRoot = function tabsRoot(Root) {
|
|
131
131
|
var scrollLeft = Math.round(event.currentTarget.scrollLeft);
|
132
132
|
setFirstItemVisible(scrollLeft <= 0);
|
133
133
|
setLastItemVisible(scrollLeft >= maxScrollLeft);
|
134
|
-
}, [
|
134
|
+
}, []);
|
135
135
|
var onKeyDown = useCallback(function (event) {
|
136
136
|
if (index === undefined) {
|
137
137
|
return;
|
@@ -179,7 +179,7 @@ var tabsRoot = function tabsRoot(Root) {
|
|
179
179
|
scrollRef.current.scrollTo({
|
180
180
|
left: Math.round(scrollRef.current.scrollLeft + leftArrowRef.current.clientWidth)
|
181
181
|
});
|
182
|
-
}, [firstItemVisible
|
182
|
+
}, [firstItemVisible]);
|
183
183
|
return /*#__PURE__*/React.createElement(TabsContext.Provider, {
|
184
184
|
value: refs
|
185
185
|
}, /*#__PURE__*/React.createElement(Root, _extends({
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Tabs.js","sources":["../../../../../src/components/Tabs/ui/Tabs/Tabs.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo, useState, useEffect, useRef, KeyboardEvent } from 'react';\nimport type { MutableRefObject } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../../../engines/types';\nimport { IconDisclosureLeft, IconDisclosureRight } from '../../../_Icon';\nimport { classes, tokens } from '../../tokens';\nimport { cx } from '../../../../utils';\nimport { TabItemRefs, TabsContext } from '../../TabsContext';\n\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as pilledCSS } from './variations/_pilled/base';\nimport { base as stretchCSS } from './variations/_stretch/base';\nimport { StyledArrow, StyledContent, StyledContentWrapper, base } from './Tabs.styles';\nimport type { TabsProps } from './Tabs.types';\n\nenum Keys {\n end = 35,\n home = 36,\n left = 37,\n right = 39,\n}\n\nexport const tabsRoot = (Root: RootProps<HTMLDivElement, TabsProps>) =>\n forwardRef<HTMLDivElement, TabsProps>((props, outerRef) => {\n const {\n id,\n stretch = false,\n disabled = false,\n clip = 'scroll',\n size,\n view,\n children,\n pilled = false,\n index,\n className,\n ...rest\n } = props;\n const [firstItemVisible, setFirstItemVisible] = useState(true);\n const [lastItemVisible, setLastItemVisible] = useState(true);\n\n const refs = useMemo(() => new TabItemRefs(index), []);\n\n const uniqId = safeUseId();\n const tabsId = id || uniqId;\n\n const isFilled = view === 'filled'; // outer padding is only for filled view\n const pilledAttr = view !== 'clear' && pilled;\n const pilledClass = pilledAttr ? classes.tabsPilled : undefined;\n\n const stretchClass = firstItemVisible && lastItemVisible && stretch ? classes.tabsStretch : undefined;\n const hasLeftArrowClass = !firstItemVisible ? classes.tabsHasLeftArrow : undefined;\n const hasRightArrowClass = !lastItemVisible ? classes.tabsHasRightArrow : undefined;\n const clipScrollClass = clip === 'scroll' ? classes.tabsClipScroll : undefined;\n const clipShowAllClass = clip === 'showAll' ? classes.tabsClipShowAll : undefined;\n\n const scrollRef = useRef<HTMLElement | null>(null);\n const trackRef = useRef<HTMLElement | null>(null);\n const leftArrowRef = useRef<HTMLButtonElement | null>(null);\n\n const onPrev = useCallback(() => {\n if (disabled || !scrollRef.current) {\n return;\n }\n\n const scrollLeft = Math.round(scrollRef.current.scrollLeft);\n const firstOverflowingTab = refs.items\n .slice()\n .reverse()\n .find((item: MutableRefObject<HTMLElement | null>) => {\n if (!item.current || item.current.offsetLeft === undefined) {\n return;\n }\n const tabStartX = item.current.offsetLeft;\n\n return tabStartX < scrollLeft;\n });\n\n firstOverflowingTab?.current?.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n }, [disabled, scrollRef, refs]);\n\n const onNext = useCallback(() => {\n if (disabled || !scrollRef.current) {\n return;\n }\n\n const scrollRight = Math.round(scrollRef.current.scrollLeft + scrollRef.current.clientWidth);\n const lastOverflowingTab = refs.items.find((item: MutableRefObject<HTMLElement | null>) => {\n if (!item.current || item.current.offsetLeft === undefined) {\n return;\n }\n const tabEndX = item.current.offsetLeft + item.current.offsetWidth;\n\n return tabEndX > scrollRight;\n });\n\n lastOverflowingTab?.current?.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n }, [disabled, scrollRef, refs]);\n\n const PreviousButton = useMemo(\n () => (\n <StyledArrow\n type=\"button\"\n aria-label=\"Предыдущий таб\"\n onClick={onPrev}\n tabIndex={disabled ? -1 : 0}\n disabled={disabled}\n isFilled={isFilled}\n ref={leftArrowRef}\n isLeftArrow\n >\n <IconDisclosureLeft color={`var(${tokens.arrowColor})`} />\n </StyledArrow>\n ),\n [onPrev, disabled, isFilled],\n );\n\n const NextButton = useMemo(\n () => (\n <StyledArrow\n type=\"button\"\n aria-label=\"Следующий таб\"\n onClick={onNext}\n tabIndex={disabled ? -1 : 0}\n disabled={disabled}\n isFilled={isFilled}\n >\n <IconDisclosureRight color={`var(${tokens.arrowColor})`} />\n </StyledArrow>\n ),\n [onNext, disabled, isFilled],\n );\n\n const handleScroll = useCallback(\n (event: React.UIEvent<HTMLElement>): void => {\n event.stopPropagation();\n const maxScrollLeft = event.currentTarget.scrollWidth - event.currentTarget.clientWidth;\n const scrollLeft = Math.round(event.currentTarget.scrollLeft);\n\n setFirstItemVisible(scrollLeft <= 0);\n setLastItemVisible(scrollLeft >= maxScrollLeft);\n },\n [setFirstItemVisible, setLastItemVisible],\n );\n\n const onKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n if (index === undefined) {\n return;\n }\n\n const minIndex = 0;\n const maxIndex = refs.items.length - 1;\n let nextIndex: number;\n\n switch (event.keyCode) {\n case Keys.end:\n nextIndex = maxIndex;\n break;\n case Keys.left:\n nextIndex = index > minIndex ? index - 1 : index;\n break;\n case Keys.right:\n nextIndex = index < maxIndex ? index + 1 : index;\n break;\n case Keys.home:\n nextIndex = minIndex;\n break;\n default:\n return;\n }\n\n if (nextIndex !== index) {\n event.preventDefault();\n refs.items[nextIndex].current?.focus();\n refs.items[nextIndex].current?.scrollIntoView({\n block: 'center',\n inline: 'center',\n behavior: 'smooth',\n });\n }\n },\n [index],\n );\n\n useEffect(() => {\n setLastItemVisible(scrollRef.current?.scrollWidth === scrollRef.current?.clientWidth);\n }, []);\n\n // Этот хук компенсирует появление левой стрелки при прокрутке\n useEffect(() => {\n if (firstItemVisible || !scrollRef.current || !leftArrowRef.current) {\n return;\n }\n\n scrollRef.current.scrollTo({\n left: Math.round(scrollRef.current.scrollLeft + leftArrowRef.current.clientWidth),\n });\n }, [firstItemVisible, scrollRef, leftArrowRef]);\n\n return (\n <TabsContext.Provider value={refs}>\n <Root\n view={view}\n role=\"tablist\"\n size={size}\n pilled={pilled}\n id={tabsId}\n ref={outerRef}\n disabled={disabled}\n className={cx(pilledClass, stretchClass, hasLeftArrowClass, hasRightArrowClass, className)}\n onKeyDown={onKeyDown}\n {...rest}\n >\n {!firstItemVisible && PreviousButton}\n <StyledContentWrapper\n className={cx(clipScrollClass, clipShowAllClass)}\n ref={scrollRef as MutableRefObject<HTMLDivElement | null>}\n onScroll={handleScroll}\n >\n <StyledContent ref={trackRef as MutableRefObject<HTMLDivElement | null>}>\n {children}\n </StyledContent>\n </StyledContentWrapper>\n {!lastItemVisible && NextButton}\n </Root>\n </TabsContext.Provider>\n );\n });\n\nexport const tabsConfig = {\n name: 'Tabs',\n tag: 'div',\n layout: tabsRoot,\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 stretch: {\n css: stretchCSS,\n attrs: true,\n },\n pilled: {\n css: pilledCSS,\n },\n },\n defaults: {\n view: 'clear',\n size: 'xs',\n },\n};\n"],"names":["Keys","tabsRoot","Root","forwardRef","props","outerRef","id","_props$stretch","stretch","_props$disabled","disabled","_props$clip","clip","size","view","children","_props$pilled","pilled","index","className","rest","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","firstItemVisible","setFirstItemVisible","_useState3","_useState4","lastItemVisible","setLastItemVisible","refs","useMemo","TabItemRefs","uniqId","safeUseId","tabsId","isFilled","pilledAttr","pilledClass","classes","tabsPilled","undefined","stretchClass","tabsStretch","hasLeftArrowClass","tabsHasLeftArrow","hasRightArrowClass","tabsHasRightArrow","clipScrollClass","tabsClipScroll","clipShowAllClass","tabsClipShowAll","scrollRef","useRef","trackRef","leftArrowRef","onPrev","useCallback","_firstOverflowingTab$","current","scrollLeft","Math","round","firstOverflowingTab","items","slice","reverse","find","item","offsetLeft","tabStartX","scrollIntoView","block","inline","onNext","_lastOverflowingTab$c","scrollRight","clientWidth","lastOverflowingTab","tabEndX","offsetWidth","PreviousButton","React","createElement","StyledArrow","type","onClick","tabIndex","ref","isLeftArrow","IconDisclosureLeft","color","concat","tokens","arrowColor","NextButton","IconDisclosureRight","handleScroll","event","stopPropagation","maxScrollLeft","currentTarget","scrollWidth","onKeyDown","minIndex","maxIndex","length","nextIndex","keyCode","end","left","right","home","_refs$items$nextIndex","_refs$items$nextIndex2","preventDefault","focus","behavior","useEffect","_scrollRef$current","_scrollRef$current2","scrollTo","TabsContext","Provider","value","_extends","role","cx","StyledContentWrapper","onScroll","StyledContent","tabsConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","stretchCSS","pilledCSS","defaults"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Tabs.js","sources":["../../../../../src/components/Tabs/ui/Tabs/Tabs.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo, useState, useEffect, useRef, KeyboardEvent } from 'react';\nimport type { MutableRefObject } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../../../engines/types';\nimport { IconDisclosureLeft, IconDisclosureRight } from '../../../_Icon';\nimport { classes, tokens } from '../../tokens';\nimport { cx } from '../../../../utils';\nimport { TabItemRefs, TabsContext } from '../../TabsContext';\n\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as pilledCSS } from './variations/_pilled/base';\nimport { base as stretchCSS } from './variations/_stretch/base';\nimport { StyledArrow, StyledContent, StyledContentWrapper, base } from './Tabs.styles';\nimport type { TabsProps } from './Tabs.types';\n\nenum Keys {\n end = 35,\n home = 36,\n left = 37,\n right = 39,\n}\n\nexport const tabsRoot = (Root: RootProps<HTMLDivElement, TabsProps>) =>\n forwardRef<HTMLDivElement, TabsProps>((props, outerRef) => {\n const {\n id,\n stretch = false,\n disabled = false,\n clip = 'scroll',\n size,\n view,\n children,\n pilled = false,\n index,\n className,\n ...rest\n } = props;\n const [firstItemVisible, setFirstItemVisible] = useState(true);\n const [lastItemVisible, setLastItemVisible] = useState(true);\n\n const refs = useMemo(() => new TabItemRefs(index), []);\n\n const uniqId = safeUseId();\n const tabsId = id || uniqId;\n\n const isFilled = view === 'filled'; // outer padding is only for filled view\n const pilledAttr = view !== 'clear' && pilled;\n const pilledClass = pilledAttr ? classes.tabsPilled : undefined;\n\n const stretchClass = firstItemVisible && lastItemVisible && stretch ? classes.tabsStretch : undefined;\n const hasLeftArrowClass = !firstItemVisible ? classes.tabsHasLeftArrow : undefined;\n const hasRightArrowClass = !lastItemVisible ? classes.tabsHasRightArrow : undefined;\n const clipScrollClass = clip === 'scroll' ? classes.tabsClipScroll : undefined;\n const clipShowAllClass = clip === 'showAll' ? classes.tabsClipShowAll : undefined;\n\n const scrollRef = useRef<HTMLElement | null>(null);\n const trackRef = useRef<HTMLElement | null>(null);\n const leftArrowRef = useRef<HTMLButtonElement | null>(null);\n\n const onPrev = useCallback(() => {\n if (disabled || !scrollRef.current) {\n return;\n }\n\n const scrollLeft = Math.round(scrollRef.current.scrollLeft);\n const firstOverflowingTab = refs.items\n .slice()\n .reverse()\n .find((item: MutableRefObject<HTMLElement | null>) => {\n if (!item.current || item.current.offsetLeft === undefined) {\n return;\n }\n const tabStartX = item.current.offsetLeft;\n\n return tabStartX < scrollLeft;\n });\n\n firstOverflowingTab?.current?.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n }, [disabled, scrollRef, refs]);\n\n const onNext = useCallback(() => {\n if (disabled || !scrollRef.current) {\n return;\n }\n\n const scrollRight = Math.round(scrollRef.current.scrollLeft + scrollRef.current.clientWidth);\n const lastOverflowingTab = refs.items.find((item: MutableRefObject<HTMLElement | null>) => {\n if (!item.current || item.current.offsetLeft === undefined) {\n return;\n }\n const tabEndX = item.current.offsetLeft + item.current.offsetWidth;\n\n return tabEndX > scrollRight;\n });\n\n lastOverflowingTab?.current?.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n }, [disabled, scrollRef, refs]);\n\n const PreviousButton = useMemo(\n () => (\n <StyledArrow\n type=\"button\"\n aria-label=\"Предыдущий таб\"\n onClick={onPrev}\n tabIndex={disabled ? -1 : 0}\n disabled={disabled}\n isFilled={isFilled}\n ref={leftArrowRef}\n isLeftArrow\n >\n <IconDisclosureLeft color={`var(${tokens.arrowColor})`} />\n </StyledArrow>\n ),\n [onPrev, disabled, isFilled],\n );\n\n const NextButton = useMemo(\n () => (\n <StyledArrow\n type=\"button\"\n aria-label=\"Следующий таб\"\n onClick={onNext}\n tabIndex={disabled ? -1 : 0}\n disabled={disabled}\n isFilled={isFilled}\n >\n <IconDisclosureRight color={`var(${tokens.arrowColor})`} />\n </StyledArrow>\n ),\n [onNext, disabled, isFilled],\n );\n\n const handleScroll = useCallback((event: React.UIEvent<HTMLElement>): void => {\n event.stopPropagation();\n const maxScrollLeft = event.currentTarget.scrollWidth - event.currentTarget.clientWidth;\n const scrollLeft = Math.round(event.currentTarget.scrollLeft);\n\n setFirstItemVisible(scrollLeft <= 0);\n setLastItemVisible(scrollLeft >= maxScrollLeft);\n }, []);\n\n const onKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n if (index === undefined) {\n return;\n }\n\n const minIndex = 0;\n const maxIndex = refs.items.length - 1;\n let nextIndex: number;\n\n switch (event.keyCode) {\n case Keys.end:\n nextIndex = maxIndex;\n break;\n case Keys.left:\n nextIndex = index > minIndex ? index - 1 : index;\n break;\n case Keys.right:\n nextIndex = index < maxIndex ? index + 1 : index;\n break;\n case Keys.home:\n nextIndex = minIndex;\n break;\n default:\n return;\n }\n\n if (nextIndex !== index) {\n event.preventDefault();\n refs.items[nextIndex].current?.focus();\n refs.items[nextIndex].current?.scrollIntoView({\n block: 'center',\n inline: 'center',\n behavior: 'smooth',\n });\n }\n },\n [index],\n );\n\n useEffect(() => {\n setLastItemVisible(scrollRef.current?.scrollWidth === scrollRef.current?.clientWidth);\n }, []);\n\n // Этот хук компенсирует появление левой стрелки при прокрутке\n useEffect(() => {\n if (firstItemVisible || !scrollRef.current || !leftArrowRef.current) {\n return;\n }\n\n scrollRef.current.scrollTo({\n left: Math.round(scrollRef.current.scrollLeft + leftArrowRef.current.clientWidth),\n });\n }, [firstItemVisible]);\n\n return (\n <TabsContext.Provider value={refs}>\n <Root\n view={view}\n role=\"tablist\"\n size={size}\n pilled={pilled}\n id={tabsId}\n ref={outerRef}\n disabled={disabled}\n className={cx(pilledClass, stretchClass, hasLeftArrowClass, hasRightArrowClass, className)}\n onKeyDown={onKeyDown}\n {...rest}\n >\n {!firstItemVisible && PreviousButton}\n <StyledContentWrapper\n className={cx(clipScrollClass, clipShowAllClass)}\n ref={scrollRef as MutableRefObject<HTMLDivElement | null>}\n onScroll={handleScroll}\n >\n <StyledContent ref={trackRef as MutableRefObject<HTMLDivElement | null>}>\n {children}\n </StyledContent>\n </StyledContentWrapper>\n {!lastItemVisible && NextButton}\n </Root>\n </TabsContext.Provider>\n );\n });\n\nexport const tabsConfig = {\n name: 'Tabs',\n tag: 'div',\n layout: tabsRoot,\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 stretch: {\n css: stretchCSS,\n attrs: true,\n },\n pilled: {\n css: pilledCSS,\n },\n },\n defaults: {\n view: 'clear',\n size: 'xs',\n },\n};\n"],"names":["Keys","tabsRoot","Root","forwardRef","props","outerRef","id","_props$stretch","stretch","_props$disabled","disabled","_props$clip","clip","size","view","children","_props$pilled","pilled","index","className","rest","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","firstItemVisible","setFirstItemVisible","_useState3","_useState4","lastItemVisible","setLastItemVisible","refs","useMemo","TabItemRefs","uniqId","safeUseId","tabsId","isFilled","pilledAttr","pilledClass","classes","tabsPilled","undefined","stretchClass","tabsStretch","hasLeftArrowClass","tabsHasLeftArrow","hasRightArrowClass","tabsHasRightArrow","clipScrollClass","tabsClipScroll","clipShowAllClass","tabsClipShowAll","scrollRef","useRef","trackRef","leftArrowRef","onPrev","useCallback","_firstOverflowingTab$","current","scrollLeft","Math","round","firstOverflowingTab","items","slice","reverse","find","item","offsetLeft","tabStartX","scrollIntoView","block","inline","onNext","_lastOverflowingTab$c","scrollRight","clientWidth","lastOverflowingTab","tabEndX","offsetWidth","PreviousButton","React","createElement","StyledArrow","type","onClick","tabIndex","ref","isLeftArrow","IconDisclosureLeft","color","concat","tokens","arrowColor","NextButton","IconDisclosureRight","handleScroll","event","stopPropagation","maxScrollLeft","currentTarget","scrollWidth","onKeyDown","minIndex","maxIndex","length","nextIndex","keyCode","end","left","right","home","_refs$items$nextIndex","_refs$items$nextIndex2","preventDefault","focus","behavior","useEffect","_scrollRef$current","_scrollRef$current2","scrollTo","TabsContext","Provider","value","_extends","role","cx","StyledContentWrapper","onScroll","StyledContent","tabsConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","stretchCSS","pilledCSS","defaults"],"mappings":"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"}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import { extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
2
|
+
import React from 'react';
|
3
|
+
|
4
|
+
var _path;
|
5
|
+
var DisclosureDown = function DisclosureDown(props) {
|
6
|
+
return /*#__PURE__*/React.createElement("svg", _extends({
|
7
|
+
width: "100%",
|
8
|
+
viewBox: "0 0 24 24",
|
9
|
+
fill: "none"
|
10
|
+
}, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
|
11
|
+
d: "M17.78 18.21C17.48 17.92 17.01 17.92 16.71 18.21L12.75 22.18L8.78 18.21C8.48 17.92 8.01 17.92 7.71 18.21C7.42 18.51 7.42 18.98 7.71 19.28L12.75 24.31L17.78 19.28C18.07 18.98 18.07 18.51 17.78 18.21Z",
|
12
|
+
fillRule: "evenodd",
|
13
|
+
fill: "currentColor"
|
14
|
+
})));
|
15
|
+
};
|
16
|
+
|
17
|
+
export { DisclosureDown };
|
18
|
+
//# sourceMappingURL=DisclosureDown.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"DisclosureDown.js","sources":["../../../../src/components/_Icon/Icon.assets/DisclosureDown.tsx"],"sourcesContent":["import React from 'react';\n\nimport { IconProps } from '../IconRoot';\n\nexport const DisclosureDown: React.FC<IconProps> = (props) => {\n return (\n <svg width=\"100%\" viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n <path\n d=\"M17.78 18.21C17.48 17.92 17.01 17.92 16.71 18.21L12.75 22.18L8.78 18.21C8.48 17.92 8.01 17.92 7.71 18.21C7.42 18.51 7.42 18.98 7.71 19.28L12.75 24.31L17.78 19.28C18.07 18.98 18.07 18.51 17.78 18.21Z\"\n fillRule=\"evenodd\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n"],"names":["DisclosureDown","props","React","createElement","_extends","width","viewBox","fill","_path","d","fillRule"],"mappings":";;;;IAIaA,cAAmC,GAAG,SAAtCA,cAAmCA,CAAIC,KAAK,EAAK;AAC1D,EAAA,oBACIC,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAAC,QAAA,CAAA;AAAKC,IAAAA,KAAK,EAAC,MAAM;AAACC,IAAAA,OAAO,EAAC,WAAW;AAACC,IAAAA,IAAI,EAAC,MAAA;GAAWN,EAAAA,KAAK,GAAAO,KAAA,KAAAA,KAAA,gBACvDN,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACIM,IAAAA,CAAC,EAAC,wMAAwM;AAC1MC,IAAAA,QAAQ,EAAC,SAAS;AAClBH,IAAAA,IAAI,EAAC,cAAA;GACR,CAAC,CACD,CAAC,CAAA;AAEd;;;;"}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import { extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
2
|
+
import React from 'react';
|
3
|
+
|
4
|
+
var _path;
|
5
|
+
var DisclosureUp = function DisclosureUp(props) {
|
6
|
+
return /*#__PURE__*/React.createElement("svg", _extends({
|
7
|
+
width: "100%",
|
8
|
+
viewBox: "0 0 24 24",
|
9
|
+
fill: "none"
|
10
|
+
}, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
|
11
|
+
d: "M17.18 8.18C16.89 8.47 16.41 8.47 16.12 8.18L12.15 4.21L8.18 8.18C7.89 8.47 7.41 8.47 7.12 8.18C6.83 7.89 6.83 7.41 7.12 7.12L12.15 2.09L17.18 7.12C17.47 7.41 17.47 7.89 17.18 8.18Z",
|
12
|
+
fillRule: "evenodd",
|
13
|
+
fill: "currentColor"
|
14
|
+
})));
|
15
|
+
};
|
16
|
+
|
17
|
+
export { DisclosureUp };
|
18
|
+
//# sourceMappingURL=DisclosureUp.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"DisclosureUp.js","sources":["../../../../src/components/_Icon/Icon.assets/DisclosureUp.tsx"],"sourcesContent":["import React from 'react';\n\nimport { IconProps } from '../IconRoot';\n\nexport const DisclosureUp: React.FC<IconProps> = (props) => {\n return (\n <svg width=\"100%\" viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n <path\n d=\"M17.18 8.18C16.89 8.47 16.41 8.47 16.12 8.18L12.15 4.21L8.18 8.18C7.89 8.47 7.41 8.47 7.12 8.18C6.83 7.89 6.83 7.41 7.12 7.12L12.15 2.09L17.18 7.12C17.47 7.41 17.47 7.89 17.18 8.18Z\"\n fillRule=\"evenodd\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n"],"names":["DisclosureUp","props","React","createElement","_extends","width","viewBox","fill","_path","d","fillRule"],"mappings":";;;;IAIaA,YAAiC,GAAG,SAApCA,YAAiCA,CAAIC,KAAK,EAAK;AACxD,EAAA,oBACIC,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAAC,QAAA,CAAA;AAAKC,IAAAA,KAAK,EAAC,MAAM;AAACC,IAAAA,OAAO,EAAC,WAAW;AAACC,IAAAA,IAAI,EAAC,MAAA;GAAWN,EAAAA,KAAK,GAAAO,KAAA,KAAAA,KAAA,gBACvDN,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACIM,IAAAA,CAAC,EAAC,uLAAuL;AACzLC,IAAAA,QAAQ,EAAC,SAAS;AAClBH,IAAAA,IAAI,EAAC,cAAA;GACR,CAAC,CACD,CAAC,CAAA;AAEd;;;;"}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { DisclosureDown } from '../Icon.assets/DisclosureDown.js';
|
3
|
+
import { IconRoot } from '../IconRoot.js';
|
4
|
+
|
5
|
+
var IconDisclosureDown = function IconDisclosureDown(_ref) {
|
6
|
+
var _ref$size = _ref.size,
|
7
|
+
size = _ref$size === void 0 ? 's' : _ref$size,
|
8
|
+
color = _ref.color,
|
9
|
+
className = _ref.className;
|
10
|
+
return /*#__PURE__*/React.createElement(IconRoot, {
|
11
|
+
className: className,
|
12
|
+
size: size,
|
13
|
+
color: color,
|
14
|
+
icon: DisclosureDown
|
15
|
+
});
|
16
|
+
};
|
17
|
+
|
18
|
+
export { IconDisclosureDown };
|
19
|
+
//# sourceMappingURL=IconDisclosureDown.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"IconDisclosureDown.js","sources":["../../../../src/components/_Icon/Icons/IconDisclosureDown.tsx"],"sourcesContent":["import React from 'react';\n\nimport { DisclosureDown } from '../Icon.assets/DisclosureDown';\nimport { IconRoot, IconProps } from '../IconRoot';\n\nexport const IconDisclosureDown: React.FC<IconProps> = ({ size = 's', color, className }) => {\n return <IconRoot className={className} size={size} color={color} icon={DisclosureDown} />;\n};\n"],"names":["IconDisclosureDown","_ref","_ref$size","size","color","className","React","createElement","IconRoot","icon","DisclosureDown"],"mappings":";;;;IAKaA,kBAAuC,GAAG,SAA1CA,kBAAuCA,CAAAC,IAAA,EAAyC;AAAA,EAAA,IAAAC,SAAA,GAAAD,IAAA,CAAnCE,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,GAAG,GAAAA,SAAA;IAAEE,KAAK,GAAAH,IAAA,CAALG,KAAK;IAAEC,SAAS,GAAAJ,IAAA,CAATI,SAAS,CAAA;AAClF,EAAA,oBAAOC,KAAA,CAAAC,aAAA,CAACC,QAAQ,EAAA;AAACH,IAAAA,SAAS,EAAEA,SAAU;AAACF,IAAAA,IAAI,EAAEA,IAAK;AAACC,IAAAA,KAAK,EAAEA,KAAM;AAACK,IAAAA,IAAI,EAAEC,cAAAA;AAAe,GAAE,CAAC,CAAA;AAC7F;;;;"}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { DisclosureUp } from '../Icon.assets/DisclosureUp.js';
|
3
|
+
import { IconRoot } from '../IconRoot.js';
|
4
|
+
|
5
|
+
var IconDisclosureUp = function IconDisclosureUp(_ref) {
|
6
|
+
var _ref$size = _ref.size,
|
7
|
+
size = _ref$size === void 0 ? 's' : _ref$size,
|
8
|
+
color = _ref.color,
|
9
|
+
className = _ref.className;
|
10
|
+
return /*#__PURE__*/React.createElement(IconRoot, {
|
11
|
+
className: className,
|
12
|
+
size: size,
|
13
|
+
color: color,
|
14
|
+
icon: DisclosureUp
|
15
|
+
});
|
16
|
+
};
|
17
|
+
|
18
|
+
export { IconDisclosureUp };
|
19
|
+
//# sourceMappingURL=IconDisclosureUp.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"IconDisclosureUp.js","sources":["../../../../src/components/_Icon/Icons/IconDisclosureUp.tsx"],"sourcesContent":["import React from 'react';\n\nimport { DisclosureUp } from '../Icon.assets/DisclosureUp';\nimport { IconRoot, IconProps } from '../IconRoot';\n\nexport const IconDisclosureUp: React.FC<IconProps> = ({ size = 's', color, className }) => {\n return <IconRoot className={className} size={size} color={color} icon={DisclosureUp} />;\n};\n"],"names":["IconDisclosureUp","_ref","_ref$size","size","color","className","React","createElement","IconRoot","icon","DisclosureUp"],"mappings":";;;;IAKaA,gBAAqC,GAAG,SAAxCA,gBAAqCA,CAAAC,IAAA,EAAyC;AAAA,EAAA,IAAAC,SAAA,GAAAD,IAAA,CAAnCE,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,GAAG,GAAAA,SAAA;IAAEE,KAAK,GAAAH,IAAA,CAALG,KAAK;IAAEC,SAAS,GAAAJ,IAAA,CAATI,SAAS,CAAA;AAChF,EAAA,oBAAOC,KAAA,CAAAC,aAAA,CAACC,QAAQ,EAAA;AAACH,IAAAA,SAAS,EAAEA,SAAU;AAACF,IAAAA,IAAI,EAAEA,IAAK;AAACC,IAAAA,KAAK,EAAEA,KAAM;AAACK,IAAAA,IAAI,EAAEC,YAAAA;AAAa,GAAE,CAAC,CAAA;AAC3F;;;;"}
|
package/es/index.css
CHANGED
@@ -329,21 +329,31 @@
|
|
329
329
|
|
330
330
|
.base_74wj10_b1bb2stb__3b76a172.base_74wj10_segmentStretched__3b76a172{width:100%;}.base_74wj10_b1bb2stb__3b76a172.base_74wj10_segmentStretched__3b76a172 .base_74wj10_spuzt9m__3b76a172,.base_74wj10_b1bb2stb__3b76a172.base_74wj10_segmentStretched__3b76a172 .base_74wj10_sin9wo2__3b76a172,.base_74wj10_b1bb2stb__3b76a172.base_74wj10_segmentStretched__3b76a172 .base_74wj10_sin9wo2__3b76a172 > button{width:100%;}
|
331
331
|
|
332
|
-
.
|
333
|
-
|
334
|
-
.
|
335
|
-
.
|
332
|
+
.base_11agnr_bg914h8__2b2e1bdf.base_11agnr_segmentVertical__2b2e1bdf{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;max-height:var(--plasma-segment-group-vertical-height);}.base_11agnr_bg914h8__2b2e1bdf.base_11agnr_segmentVertical__2b2e1bdf .base_11agnr_spuzt9m__2b2e1bdf{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}.base_11agnr_bg914h8__2b2e1bdf.base_11agnr_segmentVertical__2b2e1bdf .base_11agnr_sin9wo2__2b2e1bdf{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}
|
333
|
+
|
334
|
+
.SegmentGroup_styles_1rr47x4_b2sori2__31ddf97a{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;}
|
335
|
+
.SegmentGroup_styles_1rr47x4_sin9wo2__31ddf97a{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}
|
336
|
+
.SegmentGroup_styles_1rr47x4_spuzt9m__31ddf97a{margin:-0.125rem;padding:0.125rem;box-sizing:content-box;position:relative;height:100%;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}.SegmentGroup_styles_1rr47x4_spuzt9m__31ddf97a.SegmentGroup_styles_1rr47x4_segmentGroupClipScroll__31ddf97a{overflow:scroll;-webkit-scroll-padding:0.25rem;-moz-scroll-padding:0.25rem;-ms-scroll-padding:0.25rem;scroll-padding:0.25rem;overscroll-behavior:contain;-webkit-scrollbar-width:none;-moz-scrollbar-width:none;-ms-scrollbar-width:none;scrollbar-width:none;}.SegmentGroup_styles_1rr47x4_spuzt9m__31ddf97a.SegmentGroup_styles_1rr47x4_segmentGroupClipScroll__31ddf97a::-webkit-scrollbar{display:none;}.SegmentGroup_styles_1rr47x4_spuzt9m__31ddf97a.SegmentGroup_styles_1rr47x4_segmentGroupClipShowAll__31ddf97a{overflow:visible;}
|
337
|
+
.SegmentGroup_styles_1rr47x4_s1qf4oye__31ddf97a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;cursor:pointer;border:none;background-color:transparent;outline:none;position:relative;}.SegmentGroup_styles_1rr47x4_s1qf4oye__31ddf97a::before{content:'';position:absolute;top:-0.125rem;left:-0.125rem;right:-0.125rem;bottom:-0.125rem;z-index:1;display:block;box-sizing:content-box;border:0.063rem solid transparent;border-radius:calc(var(--plasma_private-outline-radius) - 0.063rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.SegmentGroup_styles_1rr47x4_s1qf4oye__31ddf97a.SegmentGroup_styles_1rr47x4_focusVisible__31ddf97a:focus::before,.SegmentGroup_styles_1rr47x4_s1qf4oye__31ddf97a[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.063rem var(--plasma-segment-outline-focus-color);}.SegmentGroup_styles_1rr47x4_s1qf4oye__31ddf97a[disabled]{cursor:not-allowed;}
|
338
|
+
.SegmentGroup_styles_1rr47x4_s3pgccr__31ddf97a.SegmentGroup_styles_1rr47x4_s1qf4oye__31ddf97a{padding:var(--plasma-segment-group-arrow-padding);padding-right:0;margin-right:0.1875rem;}
|
339
|
+
.SegmentGroup_styles_1rr47x4_sax6mvm__31ddf97a.SegmentGroup_styles_1rr47x4_s1qf4oye__31ddf97a{padding:var(--plasma-segment-group-arrow-padding);padding-left:0;margin-left:0.1875rem;}
|
340
|
+
.SegmentGroup_styles_1rr47x4_s1n81rr8__31ddf97a.SegmentGroup_styles_1rr47x4_s1qf4oye__31ddf97a{padding:var(--plasma-segment-group-vertical-arrow-padding);padding-bottom:0;margin-bottom:0.1875rem;}
|
341
|
+
.SegmentGroup_styles_1rr47x4_s7ukuvj__31ddf97a.SegmentGroup_styles_1rr47x4_s1qf4oye__31ddf97a{padding:var(--plasma-segment-group-vertical-arrow-padding);padding-top:0;margin-top:0.1875rem;}
|
336
342
|
|
337
343
|
.base_7kjuok_b1kyapt7__5060a19f{font-family:var(--plasma-segment-item-font-family);font-size:var(--plasma-segment-item-font-size);font-style:var(--plasma-segment-item-font-style);font-weight:var(--plasma-segment-item-font-weight);-webkit-letter-spacing:var(--plasma-segment-item-letter-spacing);-moz-letter-spacing:var(--plasma-segment-item-letter-spacing);-ms-letter-spacing:var(--plasma-segment-item-letter-spacing);letter-spacing:var(--plasma-segment-item-letter-spacing);line-height:var(--plasma-segment-item-lineheight);--plasma_private-outline-radius:var(--plasma-segment-item-border-radius);border-radius:var(--plasma-segment-item-border-radius);width:var(--plasma-segment-item-width);height:var(--plasma-segment-item-height);padding:var(--plasma-segment-item-padding);}
|
338
344
|
|
339
|
-
.
|
345
|
+
.base_168a47w_b1tykljf__d270d938{color:var(--plasma-segment-item-color);background-color:var(--plasma-segment-item-background-color);}.base_168a47w_b1tykljf__d270d938:hover{color:var(--plasma-segment-item-color-hover);background-color:var(--plasma-segment-item-background-color-hover);}.base_168a47w_b1tykljf__d270d938:hover .base_168a47w_rgzn5ju__d270d938{color:var(--plasma-segment-item-additional-color-hover);}.base_168a47w_b1tykljf__d270d938.base_168a47w_selectedSegmentItem__d270d938{color:var(--plasma-segment-item-selected-color);background-color:var(--plasma-segment-item-selected-background-color);}.base_168a47w_b1tykljf__d270d938.base_168a47w_selectedSegmentItem__d270d938 .base_168a47w_rgzn5ju__d270d938{color:var(--plasma-segment-item-selected-additional-color);}.base_168a47w_b1tykljf__d270d938.base_168a47w_selectedSegmentItem__d270d938:hover{color:var(--plasma-segment-item-selected-color-hover);background-color:var(--plasma-segment-item-selected-background-color-hover);}.base_168a47w_b1tykljf__d270d938.base_168a47w_selectedSegmentItem__d270d938:hover .base_168a47w_rgzn5ju__d270d938{color:var(--plasma-segment-item-selected-additional-color-hover);}
|
340
346
|
|
341
347
|
.base_y6af8r_bwprat9__353907e1[disabled]{cursor:not-allowed;}.base_y6af8r_bwprat9__353907e1[disabled]:hover{color:var(--plasma-segment-item-color);background-color:var(--plasma-segment-item-background-color);}.base_y6af8r_bwprat9__353907e1[disabled].base_y6af8r_selectedSegmentItem__353907e1:hover{color:var(--plasma-segment-item-selected-color);background-color:var(--plasma-segment-item-selected-background-color);}
|
342
348
|
|
343
349
|
.base_15s0fel_b795lc7__4501241a.base_15s0fel_segmentPilled__4501241a{--plasma_private-outline-radius:var(--plasma-segment-item-pilled-border-radius);border-radius:var(--plasma-segment-item-pilled-border-radius);}
|
344
350
|
|
345
|
-
.
|
346
|
-
.
|
351
|
+
.SegmentItem_styles_f1jpip_bxcdyja__cfc991ac{position:relative;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;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;outline:none;cursor:pointer;margin-left:var(--plasma-segment-item-margin-left);-webkit-tap-highlight-color:rgba(0,0,0,0);position:relative;}.SegmentItem_styles_f1jpip_bxcdyja__cfc991ac:first-child{margin-left:0;}.SegmentItem_styles_f1jpip_bxcdyja__cfc991ac::before{content:'';position:absolute;top:0.063rem;left:0.063rem;right:0.063rem;bottom:0.063rem;z-index:1;display:block;box-sizing:content-box;border:0.063rem solid transparent;border-radius:calc(var(--plasma_private-outline-radius) + 0.063rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.SegmentItem_styles_f1jpip_bxcdyja__cfc991ac.SegmentItem_styles_f1jpip_focusVisible__cfc991ac:focus::before,.SegmentItem_styles_f1jpip_bxcdyja__cfc991ac[data-focus-visible-added]::before{z-index:1;outline:none;box-shadow:0 0 0 0.063rem var(--plasma-segment-outline-focus-color);}
|
352
|
+
.SegmentItem_styles_f1jpip_sxjfe87__cfc991ac{margin-right:var(--plasma-segment-item-content-icon-margin);}
|
353
|
+
.SegmentItem_styles_f1jpip_s1gg7fed__cfc991ac{margin-left:var(--plasma-segment-item-content-icon-margin);}
|
354
|
+
.SegmentItem_styles_f1jpip_sctm1j9__cfc991ac{display:inline-block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:var(--plasma-segment-item-content-padding);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:var(--sctm1j9-0);margin-left:var(--sctm1j9-1);}
|
355
|
+
.SegmentItem_styles_f1jpip_rgzn5ju__cfc991ac{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-segment-item-content-icon-margin);color:var(--plasma-segment-item-additional-color);}
|
356
|
+
.SegmentItem_styles_f1jpip_l1sp2ipp__cfc991ac{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-right:var(--plasma-segment-item-content-icon-margin);color:inherit;}
|
347
357
|
|
348
358
|
.base_1wf7n5i_b1x66a6y__80fc5ddb{height:var(--plasma-skeleton-line-height);}.base_1wf7n5i_b1x66a6y__80fc5ddb .base_1wf7n5i_sn3du7u__80fc5ddb{height:var(--plasma-skeleton-visible-line-height);}
|
349
359
|
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@salutejs/plasma-new-hope",
|
3
|
-
"version": "0.131.0-canary.
|
3
|
+
"version": "0.131.0-canary.1392.10557537816.0",
|
4
4
|
"description": "Salute Design System blueprint",
|
5
5
|
"main": "cjs/index.js",
|
6
6
|
"module": "es/index.js",
|
@@ -118,5 +118,5 @@
|
|
118
118
|
"react-popper": "2.3.0",
|
119
119
|
"storeon": "3.1.5"
|
120
120
|
},
|
121
|
-
"gitHead": "
|
121
|
+
"gitHead": "41f9200d0bc8d6012495843752c04c985fc6b300"
|
122
122
|
}
|
@@ -0,0 +1,61 @@
|
|
1
|
+
https://mui.com/material-ui/api/select/
|
2
|
+
|
3
|
+
Segment
|
4
|
+
|
5
|
+
SegmentGroup
|
6
|
+
variations/
|
7
|
+
SegmentGroup.tsx
|
8
|
+
SegmentGroup.styles.ts
|
9
|
+
SegmentGroup.types.ts
|
10
|
+
|
11
|
+
SegmentItem
|
12
|
+
variations/
|
13
|
+
SegmentItem.tsx
|
14
|
+
SegmentItem.styles.ts
|
15
|
+
SegmentItem.types.ts
|
16
|
+
|
17
|
+
```ts
|
18
|
+
type SegmentValue = string | number;
|
19
|
+
|
20
|
+
interface SegmentItem {
|
21
|
+
value: SegmentValue;
|
22
|
+
label?: string;
|
23
|
+
}
|
24
|
+
|
25
|
+
interface SegmentGroup {
|
26
|
+
defaultValue?: SegmentValue | SegmentValue[];
|
27
|
+
value?: SegmentValue | SegmentValue[];
|
28
|
+
items: SegmentItem[];
|
29
|
+
customItem?: ({ item, selected, vertical }: { item: SegmentItem; selected: boolean; vertical: boolean }) => void;
|
30
|
+
onChange?: ({ item, selected }: { item: SegmentItem; selected: boolean }) => void;
|
31
|
+
view?: 'clear' | 'filled';
|
32
|
+
size?: 'm' | 's' | 'l' | 'xs';
|
33
|
+
disabled?: boolean;
|
34
|
+
pilled?: boolean;
|
35
|
+
filledBackground?: boolean;
|
36
|
+
stretch?: boolean;
|
37
|
+
vertical?: boolean;
|
38
|
+
selectionMode?: 'multiple' | 'single';
|
39
|
+
}
|
40
|
+
|
41
|
+
interface SegmentItem {
|
42
|
+
view?: 'clear' | 'filled';
|
43
|
+
size?: 'm' | 's' | 'l' | 'xs';
|
44
|
+
pilled?: boolean;
|
45
|
+
label?: ReactNode;
|
46
|
+
stretch?: boolean;
|
47
|
+
selectionMode?: 'multiple' | 'single';
|
48
|
+
}
|
49
|
+
```
|
50
|
+
|
51
|
+
```jsx
|
52
|
+
<SegmentGroup
|
53
|
+
defaultValue={['a']}
|
54
|
+
value={''}
|
55
|
+
items={[
|
56
|
+
{ value: 'a', label: 'A' },
|
57
|
+
{ value: 'b', label: 'B' },
|
58
|
+
]}
|
59
|
+
onChange(({ value }) => void)
|
60
|
+
/>
|
61
|
+
```
|
@@ -8,7 +8,11 @@ var classes = exports.classes = {
|
|
8
8
|
selectedSegmentItem: 'selected-segment-item',
|
9
9
|
segmentPilled: 'segment-pilled',
|
10
10
|
segmentGroupFilledBackground: 'segment-group-filled-background',
|
11
|
-
segmentStretch: 'segment-stretched'
|
11
|
+
segmentStretch: 'segment-stretched',
|
12
|
+
segmentVertical: 'segment-vertical',
|
13
|
+
segmentArrowPadding: 'segment-arrow-padding',
|
14
|
+
segmentGroupClipScroll: 'segment-group-clip-scroll',
|
15
|
+
segmentGroupClipShowAll: 'segment-group-clip-show-all'
|
12
16
|
};
|
13
17
|
var tokens = exports.tokens = {
|
14
18
|
fontFamily: '--plasma-segment-item-font-family',
|
@@ -23,6 +27,9 @@ var tokens = exports.tokens = {
|
|
23
27
|
groupPilledBorderRadius: '--plasma-segment-group-pilled-border-radius',
|
24
28
|
groupWidth: '--plasma-segment-group-width',
|
25
29
|
groupHeight: '--plasma-segment-group-height',
|
30
|
+
groupVerticalHeight: '--plasma-segment-group-vertical-height',
|
31
|
+
groupArrowPadding: '--plasma-segment-group-arrow-padding',
|
32
|
+
groupVerticalArrowPadding: '--plasma-segment-group-vertical-arrow-padding',
|
26
33
|
groupBackgroundColor: '--plasma-segment-group-background-color',
|
27
34
|
groupFilledBackgroundColor: '--plasma-segment-group-filled-background-color',
|
28
35
|
itemBorderRadius: '--plasma-segment-item-border-radius',
|
@@ -31,13 +38,20 @@ var tokens = exports.tokens = {
|
|
31
38
|
itemHeight: '--plasma-segment-item-height',
|
32
39
|
itemPadding: '--plasma-segment-item-padding',
|
33
40
|
itemMarginLeft: '--plasma-segment-item-margin-left',
|
41
|
+
itemContentPadding: '--plasma-segment-item-content-padding',
|
42
|
+
itemIconMargin: '--plasma-segment-item-content-icon-margin',
|
34
43
|
itemColor: '--plasma-segment-item-color',
|
35
44
|
itemBackgroundColor: '--plasma-segment-item-background-color',
|
36
45
|
itemColorHover: '--plasma-segment-item-color-hover',
|
37
46
|
itemBackgroundColorHover: '--plasma-segment-item-background-color-hover',
|
47
|
+
itemAdditionalColor: '--plasma-segment-item-additional-color',
|
48
|
+
itemAdditionalColorHover: '--plasma-segment-item-additional-color-hover',
|
38
49
|
itemSelectedColor: '--plasma-segment-item-selected-color',
|
50
|
+
itemSelectedColorSecondary: '--plasma-segment-item-selected-color-secondary',
|
39
51
|
itemSelectedBackgroundColor: '--plasma-segment-item-selected-background-color',
|
40
52
|
itemSelectedColorHover: '--plasma-segment-item-selected-color-hover',
|
41
53
|
itemSelectedBackgroundColorHover: '--plasma-segment-item-selected-background-color-hover',
|
54
|
+
itemSelectedAdditionalColor: '--plasma-segment-item-selected-additional-color',
|
55
|
+
itemSelectedAdditionalColorHover: '--plasma-segment-item-selected-additional-color-hover',
|
42
56
|
disabledOpacity: '--plasma-segment-disabled-opacity'
|
43
57
|
};
|