@salutejs/plasma-new-hope 0.118.0-canary.1344.10280312887.0 → 0.118.1-canary.1333.10283987438.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/Accordion/Accordion.tokens.js +0 -1
- package/cjs/components/Accordion/Accordion.tokens.js.map +1 -1
- package/cjs/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +2 -2
- package/cjs/components/Accordion/ui/AccordionItem/AccordionItem.styles.js.map +1 -1
- package/cjs/components/Modal/Modal.js +3 -1
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/Tabs/tokens.js +5 -2
- package/cjs/components/Tabs/tokens.js.map +1 -1
- package/cjs/components/Tabs/ui/TabItem/TabItem.css +1 -1
- package/cjs/components/Tabs/ui/TabItem/TabItem.js +14 -2
- package/cjs/components/Tabs/ui/TabItem/TabItem.js.map +1 -1
- package/cjs/components/Tabs/ui/TabItem/variations/_view/base.js +1 -1
- package/cjs/components/Tabs/ui/TabItem/variations/_view/base.js.map +1 -1
- package/cjs/components/Tabs/ui/TabItem/variations/_view/base_7pcxtm.css +1 -0
- package/cjs/components/Tabs/ui/Tabs/Tabs.css +6 -6
- package/cjs/components/Tabs/ui/Tabs/Tabs.js +57 -8
- package/cjs/components/Tabs/ui/Tabs/Tabs.js.map +1 -1
- package/cjs/components/Tabs/ui/Tabs/Tabs.styles.js +7 -7
- package/cjs/components/Tabs/ui/Tabs/Tabs.styles.js.map +1 -1
- package/{es/components/Tabs/ui/Tabs/Tabs.styles_1b8qt33.css → cjs/components/Tabs/ui/Tabs/Tabs.styles_z4dnzh.css} +2 -2
- package/cjs/components/Tabs/ui/Tabs/variations/_stretch/base.js +1 -1
- package/cjs/components/Tabs/ui/Tabs/variations/_stretch/base.js.map +1 -1
- package/{es/components/Tabs/ui/Tabs/variations/_stretch/base_176tz0n.css → cjs/components/Tabs/ui/Tabs/variations/_stretch/base_1c7lnrm.css} +1 -1
- package/cjs/components/Tabs/ui/Tabs/variations/_view/base.js +1 -1
- package/{es/components/Tabs/ui/Tabs/variations/_view/base_4xkt26.css → cjs/components/Tabs/ui/Tabs/variations/_view/base_aij3sf.css} +1 -1
- package/cjs/hooks/useFocusTrap.js +97 -0
- package/cjs/hooks/useFocusTrap.js.map +1 -0
- package/cjs/index.css +7 -7
- package/cjs/index.js +2 -0
- package/cjs/index.js.map +1 -1
- package/cjs/utils/focusManager.js +56 -0
- package/cjs/utils/focusManager.js.map +1 -0
- package/cjs/utils/scopeTab.js +37 -0
- package/cjs/utils/scopeTab.js.map +1 -0
- package/cjs/utils/tabbable.js +51 -0
- package/cjs/utils/tabbable.js.map +1 -0
- package/emotion/cjs/components/Accordion/Accordion.tokens.js +0 -1
- package/emotion/cjs/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +2 -2
- package/emotion/cjs/components/Modal/Modal.js +4 -3
- package/emotion/cjs/components/Tabs/Tabs.template-doc.mdx +89 -3
- package/emotion/cjs/components/Tabs/tokens.js +5 -2
- package/emotion/cjs/components/Tabs/ui/TabItem/TabItem.js +14 -2
- package/emotion/cjs/components/Tabs/ui/TabItem/variations/_view/base.js +1 -1
- package/emotion/cjs/components/Tabs/ui/Tabs/Tabs.js +57 -8
- package/emotion/cjs/components/Tabs/ui/Tabs/Tabs.styles.js +8 -16
- package/emotion/cjs/components/Tabs/ui/Tabs/variations/_stretch/base.js +1 -1
- package/emotion/cjs/components/Tabs/ui/Tabs/variations/_view/tokens.json +1 -1
- package/emotion/cjs/examples/plasma_b2c/components/Accordion/Accordion.config.js +6 -6
- package/emotion/cjs/examples/plasma_b2c/components/Modal/Modal.stories.tsx +113 -1
- package/emotion/cjs/examples/plasma_b2c/components/Tabs/TabItem.config.js +15 -15
- package/emotion/cjs/examples/plasma_b2c/components/Tabs/Tabs.config.js +16 -17
- package/emotion/cjs/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +238 -197
- package/emotion/cjs/examples/plasma_web/components/Accordion/Accordion.config.js +8 -8
- package/emotion/cjs/examples/plasma_web/components/Modal/Modal.stories.tsx +113 -1
- package/emotion/cjs/examples/plasma_web/components/Tabs/TabItem.config.js +15 -15
- package/emotion/cjs/examples/plasma_web/components/Tabs/Tabs.config.js +16 -17
- package/emotion/cjs/examples/plasma_web/components/Tabs/Tabs.stories.tsx +238 -197
- package/emotion/cjs/hooks/index.js +7 -0
- package/emotion/cjs/hooks/useFocusTrap.js +95 -0
- package/emotion/cjs/utils/focusManager.js +60 -0
- package/emotion/cjs/utils/scopeTab.js +35 -0
- package/emotion/cjs/utils/tabbable.js +46 -0
- package/emotion/cjs/utils/useFocusTrap.js +95 -0
- package/emotion/es/components/Accordion/Accordion.tokens.js +0 -1
- package/emotion/es/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +2 -2
- package/emotion/es/components/Modal/Modal.js +3 -2
- package/emotion/es/components/Tabs/Tabs.template-doc.mdx +89 -3
- package/emotion/es/components/Tabs/tokens.js +5 -2
- package/emotion/es/components/Tabs/ui/TabItem/TabItem.js +14 -2
- package/emotion/es/components/Tabs/ui/TabItem/variations/_view/base.js +1 -1
- package/emotion/es/components/Tabs/ui/Tabs/Tabs.js +58 -9
- package/emotion/es/components/Tabs/ui/Tabs/Tabs.styles.js +9 -17
- package/emotion/es/components/Tabs/ui/Tabs/variations/_stretch/base.js +1 -1
- package/emotion/es/components/Tabs/ui/Tabs/variations/_view/tokens.json +1 -1
- package/emotion/es/examples/plasma_b2c/components/Accordion/Accordion.config.js +6 -6
- package/emotion/es/examples/plasma_b2c/components/Modal/Modal.stories.tsx +113 -1
- package/emotion/es/examples/plasma_b2c/components/Tabs/TabItem.config.js +15 -15
- package/emotion/es/examples/plasma_b2c/components/Tabs/Tabs.config.js +16 -17
- package/emotion/es/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +238 -197
- package/emotion/es/examples/plasma_web/components/Accordion/Accordion.config.js +8 -8
- package/emotion/es/examples/plasma_web/components/Modal/Modal.stories.tsx +113 -1
- package/emotion/es/examples/plasma_web/components/Tabs/TabItem.config.js +15 -15
- package/emotion/es/examples/plasma_web/components/Tabs/Tabs.config.js +16 -17
- package/emotion/es/examples/plasma_web/components/Tabs/Tabs.stories.tsx +238 -197
- package/emotion/es/hooks/index.js +1 -0
- package/emotion/es/hooks/useFocusTrap.js +90 -0
- package/emotion/es/utils/focusManager.js +55 -0
- package/emotion/es/utils/scopeTab.js +30 -0
- package/emotion/es/utils/tabbable.js +40 -0
- package/emotion/es/utils/useFocusTrap.js +90 -0
- package/es/components/Accordion/Accordion.tokens.js +0 -1
- package/es/components/Accordion/Accordion.tokens.js.map +1 -1
- package/es/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +2 -2
- package/es/components/Accordion/ui/AccordionItem/AccordionItem.styles.js.map +1 -1
- package/es/components/Modal/Modal.js +4 -2
- package/es/components/Modal/Modal.js.map +1 -1
- package/es/components/Tabs/tokens.js +5 -2
- package/es/components/Tabs/tokens.js.map +1 -1
- package/es/components/Tabs/ui/TabItem/TabItem.css +1 -1
- package/es/components/Tabs/ui/TabItem/TabItem.js +14 -2
- package/es/components/Tabs/ui/TabItem/TabItem.js.map +1 -1
- package/es/components/Tabs/ui/TabItem/variations/_view/base.js +1 -1
- package/es/components/Tabs/ui/TabItem/variations/_view/base.js.map +1 -1
- package/es/components/Tabs/ui/TabItem/variations/_view/base_7pcxtm.css +1 -0
- package/es/components/Tabs/ui/Tabs/Tabs.css +6 -6
- package/es/components/Tabs/ui/Tabs/Tabs.js +58 -9
- package/es/components/Tabs/ui/Tabs/Tabs.js.map +1 -1
- package/es/components/Tabs/ui/Tabs/Tabs.styles.js +7 -7
- package/es/components/Tabs/ui/Tabs/Tabs.styles.js.map +1 -1
- package/{cjs/components/Tabs/ui/Tabs/Tabs.styles_1b8qt33.css → es/components/Tabs/ui/Tabs/Tabs.styles_z4dnzh.css} +2 -2
- package/es/components/Tabs/ui/Tabs/variations/_stretch/base.js +1 -1
- package/es/components/Tabs/ui/Tabs/variations/_stretch/base.js.map +1 -1
- package/{cjs/components/Tabs/ui/Tabs/variations/_stretch/base_176tz0n.css → es/components/Tabs/ui/Tabs/variations/_stretch/base_1c7lnrm.css} +1 -1
- package/es/components/Tabs/ui/Tabs/variations/_view/base.js +1 -1
- package/{cjs/components/Tabs/ui/Tabs/variations/_view/base_4xkt26.css → es/components/Tabs/ui/Tabs/variations/_view/base_aij3sf.css} +1 -1
- package/es/hooks/useFocusTrap.js +93 -0
- package/es/hooks/useFocusTrap.js.map +1 -0
- package/es/index.css +7 -7
- package/es/index.js +1 -0
- package/es/index.js.map +1 -1
- package/es/utils/focusManager.js +52 -0
- package/es/utils/focusManager.js.map +1 -0
- package/es/utils/scopeTab.js +33 -0
- package/es/utils/scopeTab.js.map +1 -0
- package/es/utils/tabbable.js +43 -0
- package/es/utils/tabbable.js.map +1 -0
- package/package.json +4 -4
- package/styled-components/cjs/components/Accordion/Accordion.tokens.js +0 -1
- package/styled-components/cjs/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +2 -2
- package/styled-components/cjs/components/Modal/Modal.js +4 -3
- package/styled-components/cjs/components/Tabs/Tabs.template-doc.mdx +89 -3
- package/styled-components/cjs/components/Tabs/tokens.js +5 -2
- package/styled-components/cjs/components/Tabs/ui/TabItem/TabItem.js +14 -2
- package/styled-components/cjs/components/Tabs/ui/TabItem/variations/_view/base.js +1 -1
- package/styled-components/cjs/components/Tabs/ui/Tabs/Tabs.js +57 -8
- package/styled-components/cjs/components/Tabs/ui/Tabs/Tabs.styles.js +2 -2
- package/styled-components/cjs/components/Tabs/ui/Tabs/variations/_stretch/base.js +1 -1
- package/styled-components/cjs/components/Tabs/ui/Tabs/variations/_view/tokens.json +1 -1
- package/styled-components/cjs/examples/plasma_b2c/components/Accordion/Accordion.config.js +2 -2
- package/styled-components/cjs/examples/plasma_b2c/components/Modal/Modal.stories.tsx +113 -1
- package/styled-components/cjs/examples/plasma_b2c/components/Tabs/TabItem.config.js +8 -8
- package/styled-components/cjs/examples/plasma_b2c/components/Tabs/Tabs.config.js +4 -5
- package/styled-components/cjs/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +238 -197
- package/styled-components/cjs/examples/plasma_web/components/Accordion/Accordion.config.js +2 -2
- package/styled-components/cjs/examples/plasma_web/components/Modal/Modal.stories.tsx +113 -1
- package/styled-components/cjs/examples/plasma_web/components/Tabs/TabItem.config.js +8 -8
- package/styled-components/cjs/examples/plasma_web/components/Tabs/Tabs.config.js +4 -5
- package/styled-components/cjs/examples/plasma_web/components/Tabs/Tabs.stories.tsx +238 -197
- package/styled-components/cjs/hooks/index.js +7 -0
- package/styled-components/cjs/hooks/useFocusTrap.js +95 -0
- package/styled-components/cjs/utils/focusManager.js +60 -0
- package/styled-components/cjs/utils/scopeTab.js +35 -0
- package/styled-components/cjs/utils/tabbable.js +46 -0
- package/styled-components/cjs/utils/useFocusTrap.js +95 -0
- package/styled-components/es/components/Accordion/Accordion.tokens.js +0 -1
- package/styled-components/es/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +2 -2
- package/styled-components/es/components/Modal/Modal.js +3 -2
- package/styled-components/es/components/Tabs/Tabs.template-doc.mdx +89 -3
- package/styled-components/es/components/Tabs/tokens.js +5 -2
- package/styled-components/es/components/Tabs/ui/TabItem/TabItem.js +14 -2
- package/styled-components/es/components/Tabs/ui/TabItem/variations/_view/base.js +1 -1
- package/styled-components/es/components/Tabs/ui/Tabs/Tabs.js +58 -9
- package/styled-components/es/components/Tabs/ui/Tabs/Tabs.styles.js +3 -3
- package/styled-components/es/components/Tabs/ui/Tabs/variations/_stretch/base.js +1 -1
- package/styled-components/es/components/Tabs/ui/Tabs/variations/_view/tokens.json +1 -1
- package/styled-components/es/examples/plasma_b2c/components/Accordion/Accordion.config.js +2 -2
- package/styled-components/es/examples/plasma_b2c/components/Modal/Modal.stories.tsx +113 -1
- package/styled-components/es/examples/plasma_b2c/components/Tabs/TabItem.config.js +8 -8
- package/styled-components/es/examples/plasma_b2c/components/Tabs/Tabs.config.js +4 -5
- package/styled-components/es/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +238 -197
- package/styled-components/es/examples/plasma_web/components/Accordion/Accordion.config.js +2 -2
- package/styled-components/es/examples/plasma_web/components/Modal/Modal.stories.tsx +113 -1
- package/styled-components/es/examples/plasma_web/components/Tabs/TabItem.config.js +8 -8
- package/styled-components/es/examples/plasma_web/components/Tabs/Tabs.config.js +4 -5
- package/styled-components/es/examples/plasma_web/components/Tabs/Tabs.stories.tsx +238 -197
- package/styled-components/es/hooks/index.js +1 -0
- package/styled-components/es/hooks/useFocusTrap.js +90 -0
- package/styled-components/es/utils/focusManager.js +55 -0
- package/styled-components/es/utils/scopeTab.js +30 -0
- package/styled-components/es/utils/tabbable.js +40 -0
- package/styled-components/es/utils/useFocusTrap.js +90 -0
- package/types/components/Accordion/Accordion.tokens.d.ts +0 -1
- package/types/components/Accordion/Accordion.tokens.d.ts.map +1 -1
- package/types/components/Modal/Modal.d.ts.map +1 -1
- package/types/components/Tabs/tokens.d.ts +3 -0
- package/types/components/Tabs/tokens.d.ts.map +1 -1
- package/types/components/Tabs/ui/TabItem/TabItem.d.ts.map +1 -1
- package/types/components/Tabs/ui/TabItem/variations/_view/base.d.ts.map +1 -1
- package/types/components/Tabs/ui/Tabs/Tabs.d.ts +4 -2
- package/types/components/Tabs/ui/Tabs/Tabs.d.ts.map +1 -1
- package/types/components/Tabs/ui/Tabs/Tabs.styles.d.ts.map +1 -1
- package/types/components/Tabs/ui/Tabs/Tabs.types.d.ts +12 -5
- package/types/components/Tabs/ui/Tabs/Tabs.types.d.ts.map +1 -1
- package/types/components/Tabs/ui/Tabs/variations/_stretch/base.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Accordion/Accordion.config.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Tabs/TabItem.config.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Tabs/Tabs.config.d.ts +0 -1
- package/types/examples/plasma_b2c/components/Tabs/Tabs.config.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Tabs/Tabs.d.ts +2 -1
- package/types/examples/plasma_b2c/components/Tabs/Tabs.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Accordion/Accordion.config.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Tabs/TabItem.config.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Tabs/Tabs.config.d.ts +0 -1
- package/types/examples/plasma_web/components/Tabs/Tabs.config.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Tabs/Tabs.d.ts +2 -1
- package/types/examples/plasma_web/components/Tabs/Tabs.d.ts.map +1 -1
- package/types/examples/sds_engineer/components/Tabs/Tabs.d.ts +2 -1
- package/types/examples/sds_engineer/components/Tabs/Tabs.d.ts.map +1 -1
- package/types/hooks/index.d.ts +1 -0
- package/types/hooks/index.d.ts.map +1 -1
- package/types/hooks/useFocusTrap.d.ts +6 -0
- package/types/hooks/useFocusTrap.d.ts.map +1 -0
- package/types/utils/focusManager.d.ts +15 -0
- package/types/utils/focusManager.d.ts.map +1 -0
- package/types/utils/scopeTab.d.ts +7 -0
- package/types/utils/scopeTab.d.ts.map +1 -0
- package/types/utils/tabbable.d.ts +6 -0
- package/types/utils/tabbable.d.ts.map +1 -0
- package/types/utils/useFocusTrap.d.ts +6 -0
- package/types/utils/useFocusTrap.d.ts.map +1 -0
- package/cjs/components/Tabs/ui/TabItem/variations/_view/base_q8xs21.css +0 -1
- package/es/components/Tabs/ui/TabItem/variations/_view/base_q8xs21.css +0 -1
@@ -27,7 +27,6 @@ var tokens = {
|
|
27
27
|
accordionItemFocus: '--plasma-accordion-item-focus',
|
28
28
|
accordionItemBorder: '--plasma-accordion-item-border',
|
29
29
|
accordionItemBorderBottom: '--plasma-accordion-item-border-bottom',
|
30
|
-
accordionItemIconColor: '--plasma-accordion-item-color-icon',
|
31
30
|
accordionItemTitleColor: '--plasma-accordion-item-title-color',
|
32
31
|
accordionItemTitleFontFamily: '--plasma-accordion-item-title-font-family',
|
33
32
|
accordionItemTitleFontSize: '--plasma-accordion-item-title-font-size',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Accordion.tokens.js","sources":["../../../src/components/Accordion/Accordion.tokens.ts"],"sourcesContent":["export const classes = {\n filledStretching: 'accordion-stretching-filled',\n fixedStretching: 'accordion-stretching-fixed',\n accordionRoot: 'accordion-root',\n accordionItem: 'accordion-item',\n clearAccordionItem: 'clear-accordion-item',\n accordionItemShowBody: 'accordion-item-show-body',\n accordionPlusAnimationElement: 'accordion-plus-animation-element',\n accordionDisabled: 'accordion-disabled',\n accordionItemBody: 'accordion-item-body',\n};\n\nexport const tokens = {\n accordionGap: '--plasma-accordion-gap',\n accordionWidth: '--plasma-accordion-width',\n accordionBackground: '--plasma-accordion-background',\n\n accordionItemBackground: '--plasma-accordion-item-background',\n accordionItemBorderRadius: '--plasma-accordion-item-border-radius',\n accordionItemPadding: '--plasma-accordion-item-padding',\n accordionItemPaddingVertical: '--plasma-accordion-item-padding-vertical',\n accordionItemPaddingHorizontal: '--plasma-accordion-item-padding-horizontal',\n accordionItemPaddingHorizontalLeft: '--plasma-accordion-item-padding-horizontal-left',\n accordionItemGap: '--plasma-accordion-item-gap',\n accordionItemFocus: '--plasma-accordion-item-focus',\n accordionItemBorder: '--plasma-accordion-item-border',\n accordionItemBorderBottom: '--plasma-accordion-item-border-bottom',\n
|
1
|
+
{"version":3,"file":"Accordion.tokens.js","sources":["../../../src/components/Accordion/Accordion.tokens.ts"],"sourcesContent":["export const classes = {\n filledStretching: 'accordion-stretching-filled',\n fixedStretching: 'accordion-stretching-fixed',\n accordionRoot: 'accordion-root',\n accordionItem: 'accordion-item',\n clearAccordionItem: 'clear-accordion-item',\n accordionItemShowBody: 'accordion-item-show-body',\n accordionPlusAnimationElement: 'accordion-plus-animation-element',\n accordionDisabled: 'accordion-disabled',\n accordionItemBody: 'accordion-item-body',\n};\n\nexport const tokens = {\n accordionGap: '--plasma-accordion-gap',\n accordionWidth: '--plasma-accordion-width',\n accordionBackground: '--plasma-accordion-background',\n\n accordionItemBackground: '--plasma-accordion-item-background',\n accordionItemBorderRadius: '--plasma-accordion-item-border-radius',\n accordionItemPadding: '--plasma-accordion-item-padding',\n accordionItemPaddingVertical: '--plasma-accordion-item-padding-vertical',\n accordionItemPaddingHorizontal: '--plasma-accordion-item-padding-horizontal',\n accordionItemPaddingHorizontalLeft: '--plasma-accordion-item-padding-horizontal-left',\n accordionItemGap: '--plasma-accordion-item-gap',\n accordionItemFocus: '--plasma-accordion-item-focus',\n accordionItemBorder: '--plasma-accordion-item-border',\n accordionItemBorderBottom: '--plasma-accordion-item-border-bottom',\n\n accordionItemTitleColor: '--plasma-accordion-item-title-color',\n accordionItemTitleFontFamily: '--plasma-accordion-item-title-font-family',\n accordionItemTitleFontSize: '--plasma-accordion-item-title-font-size',\n accordionItemTitleFontStyle: '--plasma-accordion-item-title-font-style',\n accordionItemTitleFontWeight: '--plasma-accordion-item-title-font-weight',\n accordionItemTitleLetterSpacing: '--plasma-accordion-item-title-letter-spacing',\n accordionItemTitleLineHeight: '--plasma-accordion-item-title-line-height',\n\n accordionItemTextColor: '--plasma-accordion-item-text-color',\n accordionItemTextFontFamily: '--plasma-accordion-item-text-font-family',\n accordionItemTextFontSize: '--plasma-accordion-item-text-font-size',\n accordionItemTextFontStyle: '--plasma-accordion-item-text-font-style',\n accordionItemTextFontWeight: '--plasma-accordion-item-text-font-weight',\n accordionItemTextLetterSpacing: '--plasma-accordion-item-text-letter-spacing',\n accordionItemTextLineHeight: '--plasma-accordion-item-text-line-height',\n};\n"],"names":["classes","filledStretching","fixedStretching","accordionRoot","accordionItem","clearAccordionItem","accordionItemShowBody","accordionPlusAnimationElement","accordionDisabled","accordionItemBody","tokens","accordionGap","accordionWidth","accordionBackground","accordionItemBackground","accordionItemBorderRadius","accordionItemPadding","accordionItemPaddingVertical","accordionItemPaddingHorizontal","accordionItemPaddingHorizontalLeft","accordionItemGap","accordionItemFocus","accordionItemBorder","accordionItemBorderBottom","accordionItemTitleColor","accordionItemTitleFontFamily","accordionItemTitleFontSize","accordionItemTitleFontStyle","accordionItemTitleFontWeight","accordionItemTitleLetterSpacing","accordionItemTitleLineHeight","accordionItemTextColor","accordionItemTextFontFamily","accordionItemTextFontSize","accordionItemTextFontStyle","accordionItemTextFontWeight","accordionItemTextLetterSpacing","accordionItemTextLineHeight"],"mappings":";;;;AAAO,IAAMA,OAAO,GAAG;AACnBC,EAAAA,gBAAgB,EAAE,6BAA6B;AAC/CC,EAAAA,eAAe,EAAE,4BAA4B;AAC7CC,EAAAA,aAAa,EAAE,gBAAgB;AAC/BC,EAAAA,aAAa,EAAE,gBAAgB;AAC/BC,EAAAA,kBAAkB,EAAE,sBAAsB;AAC1CC,EAAAA,qBAAqB,EAAE,0BAA0B;AACjDC,EAAAA,6BAA6B,EAAE,kCAAkC;AACjEC,EAAAA,iBAAiB,EAAE,oBAAoB;AACvCC,EAAAA,iBAAiB,EAAE,qBAAA;AACvB,EAAC;AAEM,IAAMC,MAAM,GAAG;AAClBC,EAAAA,YAAY,EAAE,wBAAwB;AACtCC,EAAAA,cAAc,EAAE,0BAA0B;AAC1CC,EAAAA,mBAAmB,EAAE,+BAA+B;AAEpDC,EAAAA,uBAAuB,EAAE,oCAAoC;AAC7DC,EAAAA,yBAAyB,EAAE,uCAAuC;AAClEC,EAAAA,oBAAoB,EAAE,iCAAiC;AACvDC,EAAAA,4BAA4B,EAAE,0CAA0C;AACxEC,EAAAA,8BAA8B,EAAE,4CAA4C;AAC5EC,EAAAA,kCAAkC,EAAE,iDAAiD;AACrFC,EAAAA,gBAAgB,EAAE,6BAA6B;AAC/CC,EAAAA,kBAAkB,EAAE,+BAA+B;AACnDC,EAAAA,mBAAmB,EAAE,gCAAgC;AACrDC,EAAAA,yBAAyB,EAAE,uCAAuC;AAElEC,EAAAA,uBAAuB,EAAE,qCAAqC;AAC9DC,EAAAA,4BAA4B,EAAE,2CAA2C;AACzEC,EAAAA,0BAA0B,EAAE,yCAAyC;AACrEC,EAAAA,2BAA2B,EAAE,0CAA0C;AACvEC,EAAAA,4BAA4B,EAAE,2CAA2C;AACzEC,EAAAA,+BAA+B,EAAE,8CAA8C;AAC/EC,EAAAA,4BAA4B,EAAE,2CAA2C;AAEzEC,EAAAA,sBAAsB,EAAE,oCAAoC;AAC5DC,EAAAA,2BAA2B,EAAE,0CAA0C;AACvEC,EAAAA,yBAAyB,EAAE,wCAAwC;AACnEC,EAAAA,0BAA0B,EAAE,yCAAyC;AACrEC,EAAAA,2BAA2B,EAAE,0CAA0C;AACvEC,EAAAA,8BAA8B,EAAE,6CAA6C;AAC7EC,EAAAA,2BAA2B,EAAE,0CAAA;AACjC;;;;;"}
|
@@ -41,10 +41,10 @@ var StyledAccordionBody = /*#__PURE__*/styled.div.withConfig({
|
|
41
41
|
})(["color:var(", ");font-family:var(", ");font-size:var(", ");font-weight:var(", ");font-style:var(", ");letter-spacing:var(", ");line-height:var(", ");overflow:hidden;padding-right:var(", ");padding-left:var(", ");text-align:left;"], Accordion_tokens.tokens.accordionItemTextColor, Accordion_tokens.tokens.accordionItemTextFontFamily, Accordion_tokens.tokens.accordionItemTextFontSize, Accordion_tokens.tokens.accordionItemTextFontWeight, Accordion_tokens.tokens.accordionItemTextFontStyle, Accordion_tokens.tokens.accordionItemTextLetterSpacing, Accordion_tokens.tokens.accordionItemTextLineHeight, Accordion_tokens.tokens.accordionItemPaddingHorizontal, Accordion_tokens.tokens.accordionItemPaddingHorizontalLeft);
|
42
42
|
var StyledArrow = /*#__PURE__*/styled(IconChevronDownFill.IconChevronDownFill).withConfig({
|
43
43
|
componentId: "plasma-new-hope__sc-iot32d-8"
|
44
|
-
})(["pointer-events:none;user-select:none;color:var(", ");"], Accordion_tokens.tokens.
|
44
|
+
})(["pointer-events:none;user-select:none;color:var(", ");"], Accordion_tokens.tokens.accordionItemTextColor);
|
45
45
|
var StyledMinus = /*#__PURE__*/styled(IconMinus.IconMinus).withConfig({
|
46
46
|
componentId: "plasma-new-hope__sc-iot32d-9"
|
47
|
-
})(["pointer-events:none;user-select:none;color:var(", ");display:flex;align-items:center;position:absolute;top:0;left:0;&.", "{transition:0.2s;transform:rotate(90deg);}&.", "{transition:0.2s;transform:rotate(0deg);}"], Accordion_tokens.tokens.
|
47
|
+
})(["pointer-events:none;user-select:none;color:var(", ");display:flex;align-items:center;position:absolute;top:0;left:0;&.", "{transition:0.2s;transform:rotate(90deg);}&.", "{transition:0.2s;transform:rotate(0deg);}"], Accordion_tokens.tokens.accordionItemTextColor, Accordion_tokens.classes.accordionPlusAnimationElement, Accordion_tokens.classes.accordionItemShowBody);
|
48
48
|
var StyledPlus = /*#__PURE__*/styled.div.withConfig({
|
49
49
|
componentId: "plasma-new-hope__sc-iot32d-10"
|
50
50
|
})(["position:relative;height:1rem;display:flex;align-items:center;justify-content:center;width:1rem;"]);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"AccordionItem.styles.js","sources":["../../../../../src/components/Accordion/ui/AccordionItem/AccordionItem.styles.ts"],"sourcesContent":["import styled from 'styled-components';\n\nimport { IconChevronDownFill, IconMinus } from '../../../_Icon';\nimport { classes, tokens } from '../../Accordion.tokens';\nimport { addFocus } from '../../../../mixins';\n\nexport const StyledAccordionItem = styled.div`\n background: var(${tokens.accordionItemBackground});\n border: var(${tokens.accordionItemBorder});\n border-bottom: var(${tokens.accordionItemBorderBottom});\n\n &:last-child {\n border-bottom: var(${tokens.accordionItemBorder});\n }\n\n &.${classes.accordionDisabled} {\n opacity: 0.4;\n cursor: not-allowed;\n }\n`;\n\nexport const StyledAccordionHeader = styled.button`\n width: 100%;\n border: none;\n padding: var(${tokens.accordionItemPadding});\n display: flex;\n gap: var(${tokens.accordionItemGap});\n justify-content: space-between;\n align-items: center;\n background: none;\n box-sizing: border-box;\n cursor: pointer;\n\n &:focus {\n outline: none;\n }\n\n ${addFocus({\n outlineOffset: '0.125rem',\n outlineSize: '0.125rem',\n outlineRadius: '0',\n outlineColor: `var(${tokens.accordionItemFocus})`,\n })}\n`;\n\nexport const StyledAccordionHeaderLeft = styled.div`\n display: flex;\n gap: var(${tokens.accordionItemGap});\n justify-content: space-between;\n align-items: center;\n`;\n\nexport const StyledAccordionContentRight = styled.div`\n transition: 0.2s;\n transform: rotate(90deg);\n\n &.${classes.accordionItemShowBody} {\n transition: 0.2s;\n transform: rotate(0deg);\n }\n`;\n\nexport const StyledAccordionContentLeft = styled.div`\n transition: 0.2s;\n display: flex;\n align-items: center;\n\n &.${classes.accordionItemShowBody} {\n transition: 0.2s;\n transform: rotate(180deg);\n }\n`;\n\nexport const StyledAccordionTitle = styled.div`\n color: var(${tokens.accordionItemTitleColor});\n font-family: var(${tokens.accordionItemTitleFontFamily});\n font-size: var(${tokens.accordionItemTitleFontSize});\n font-weight: var(${tokens.accordionItemTitleFontWeight});\n font-style: var(${tokens.accordionItemTitleFontStyle});\n letter-spacing: var(${tokens.accordionItemTitleLetterSpacing});\n line-height: var(${tokens.accordionItemTitleLineHeight});\n text-align: left;\n`;\n\nexport const StyledAccordionBodyAnimate = styled.div`\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows 0.2s ease-out;\n overflow: hidden;\n\n &.${classes.accordionItemShowBody} {\n grid-template-rows: 1fr;\n padding-bottom: var(${tokens.accordionItemPaddingVertical});\n\n &.${classes.accordionPlusAnimationElement} {\n transition: 0.2s;\n transform: rotate(0deg);\n }\n }\n`;\n\nexport const StyledAccordionBody = styled.div`\n color: var(${tokens.accordionItemTextColor});\n font-family: var(${tokens.accordionItemTextFontFamily});\n font-size: var(${tokens.accordionItemTextFontSize});\n font-weight: var(${tokens.accordionItemTextFontWeight});\n font-style: var(${tokens.accordionItemTextFontStyle});\n letter-spacing: var(${tokens.accordionItemTextLetterSpacing});\n line-height: var(${tokens.accordionItemTextLineHeight});\n overflow: hidden;\n padding-right: var(${tokens.accordionItemPaddingHorizontal});\n padding-left: var(${tokens.accordionItemPaddingHorizontalLeft});\n text-align: left;\n`;\n\nexport const StyledArrow = styled(IconChevronDownFill)`\n pointer-events: none;\n user-select: none;\n color: var(${tokens.
|
1
|
+
{"version":3,"file":"AccordionItem.styles.js","sources":["../../../../../src/components/Accordion/ui/AccordionItem/AccordionItem.styles.ts"],"sourcesContent":["import styled from 'styled-components';\n\nimport { IconChevronDownFill, IconMinus } from '../../../_Icon';\nimport { classes, tokens } from '../../Accordion.tokens';\nimport { addFocus } from '../../../../mixins';\n\nexport const StyledAccordionItem = styled.div`\n background: var(${tokens.accordionItemBackground});\n border: var(${tokens.accordionItemBorder});\n border-bottom: var(${tokens.accordionItemBorderBottom});\n\n &:last-child {\n border-bottom: var(${tokens.accordionItemBorder});\n }\n\n &.${classes.accordionDisabled} {\n opacity: 0.4;\n cursor: not-allowed;\n }\n`;\n\nexport const StyledAccordionHeader = styled.button`\n width: 100%;\n border: none;\n padding: var(${tokens.accordionItemPadding});\n display: flex;\n gap: var(${tokens.accordionItemGap});\n justify-content: space-between;\n align-items: center;\n background: none;\n box-sizing: border-box;\n cursor: pointer;\n\n &:focus {\n outline: none;\n }\n\n ${addFocus({\n outlineOffset: '0.125rem',\n outlineSize: '0.125rem',\n outlineRadius: '0',\n outlineColor: `var(${tokens.accordionItemFocus})`,\n })}\n`;\n\nexport const StyledAccordionHeaderLeft = styled.div`\n display: flex;\n gap: var(${tokens.accordionItemGap});\n justify-content: space-between;\n align-items: center;\n`;\n\nexport const StyledAccordionContentRight = styled.div`\n transition: 0.2s;\n transform: rotate(90deg);\n\n &.${classes.accordionItemShowBody} {\n transition: 0.2s;\n transform: rotate(0deg);\n }\n`;\n\nexport const StyledAccordionContentLeft = styled.div`\n transition: 0.2s;\n display: flex;\n align-items: center;\n\n &.${classes.accordionItemShowBody} {\n transition: 0.2s;\n transform: rotate(180deg);\n }\n`;\n\nexport const StyledAccordionTitle = styled.div`\n color: var(${tokens.accordionItemTitleColor});\n font-family: var(${tokens.accordionItemTitleFontFamily});\n font-size: var(${tokens.accordionItemTitleFontSize});\n font-weight: var(${tokens.accordionItemTitleFontWeight});\n font-style: var(${tokens.accordionItemTitleFontStyle});\n letter-spacing: var(${tokens.accordionItemTitleLetterSpacing});\n line-height: var(${tokens.accordionItemTitleLineHeight});\n text-align: left;\n`;\n\nexport const StyledAccordionBodyAnimate = styled.div`\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows 0.2s ease-out;\n overflow: hidden;\n\n &.${classes.accordionItemShowBody} {\n grid-template-rows: 1fr;\n padding-bottom: var(${tokens.accordionItemPaddingVertical});\n\n &.${classes.accordionPlusAnimationElement} {\n transition: 0.2s;\n transform: rotate(0deg);\n }\n }\n`;\n\nexport const StyledAccordionBody = styled.div`\n color: var(${tokens.accordionItemTextColor});\n font-family: var(${tokens.accordionItemTextFontFamily});\n font-size: var(${tokens.accordionItemTextFontSize});\n font-weight: var(${tokens.accordionItemTextFontWeight});\n font-style: var(${tokens.accordionItemTextFontStyle});\n letter-spacing: var(${tokens.accordionItemTextLetterSpacing});\n line-height: var(${tokens.accordionItemTextLineHeight});\n overflow: hidden;\n padding-right: var(${tokens.accordionItemPaddingHorizontal});\n padding-left: var(${tokens.accordionItemPaddingHorizontalLeft});\n text-align: left;\n`;\n\nexport const StyledArrow = styled(IconChevronDownFill)`\n pointer-events: none;\n user-select: none;\n color: var(${tokens.accordionItemTextColor});\n`;\n\nexport const StyledMinus = styled(IconMinus)`\n pointer-events: none;\n user-select: none;\n color: var(${tokens.accordionItemTextColor});\n display: flex;\n align-items: center;\n position: absolute;\n top: 0;\n left: 0;\n\n &.${classes.accordionPlusAnimationElement} {\n transition: 0.2s;\n transform: rotate(90deg);\n }\n\n &.${classes.accordionItemShowBody} {\n transition: 0.2s;\n transform: rotate(0deg);\n }\n`;\n\nexport const StyledPlus = styled.div`\n position: relative;\n height: 1rem;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 1rem;\n`;\n"],"names":["StyledAccordionItem","styled","div","withConfig","componentId","tokens","accordionItemBackground","accordionItemBorder","accordionItemBorderBottom","classes","accordionDisabled","StyledAccordionHeader","button","accordionItemPadding","accordionItemGap","addFocus","outlineOffset","outlineSize","outlineRadius","outlineColor","concat","accordionItemFocus","StyledAccordionHeaderLeft","StyledAccordionContentRight","accordionItemShowBody","StyledAccordionContentLeft","StyledAccordionTitle","accordionItemTitleColor","accordionItemTitleFontFamily","accordionItemTitleFontSize","accordionItemTitleFontWeight","accordionItemTitleFontStyle","accordionItemTitleLetterSpacing","accordionItemTitleLineHeight","StyledAccordionBodyAnimate","accordionItemPaddingVertical","accordionPlusAnimationElement","StyledAccordionBody","accordionItemTextColor","accordionItemTextFontFamily","accordionItemTextFontSize","accordionItemTextFontWeight","accordionItemTextFontStyle","accordionItemTextLetterSpacing","accordionItemTextLineHeight","accordionItemPaddingHorizontal","accordionItemPaddingHorizontalLeft","StyledArrow","IconChevronDownFill","StyledMinus","IconMinus","StyledPlus"],"mappings":"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"}
|
@@ -11,6 +11,8 @@ var PopupContext = require('../Popup/PopupContext.js');
|
|
11
11
|
var Popup$1 = require('../Popup/Popup.js');
|
12
12
|
var Overlay = require('../Overlay/Overlay.js');
|
13
13
|
var index = require('../Popup/utils/index.js');
|
14
|
+
var useFocusTrap = require('../../hooks/useFocusTrap.js');
|
15
|
+
require('../../utils/react.js');
|
14
16
|
var Modal_tokens = require('./Modal.tokens.js');
|
15
17
|
var useModal = require('./hooks/useModal.js');
|
16
18
|
var base = require('./variations/_view/base.js');
|
@@ -45,7 +47,7 @@ var modalRoot = function modalRoot(Root) {
|
|
45
47
|
view = _ref.view,
|
46
48
|
isOpen = _ref.isOpen,
|
47
49
|
rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
|
48
|
-
var trapRef =
|
50
|
+
var trapRef = useFocusTrap.useFocusTrap(true, initialFocusRef, focusAfterRef, true);
|
49
51
|
var popupController = PopupContext.usePopupContext();
|
50
52
|
var innerRef = plasmaCore.useForkRef(trapRef, outerRootRef);
|
51
53
|
var uniqId = plasmaCore.safeUseId();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Modal.js","sources":["../../../src/components/Modal/Modal.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo } from 'react';\nimport {
|
1
|
+
{"version":3,"file":"Modal.js","sources":["../../../src/components/Modal/Modal.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo } from 'react';\nimport { useForkRef, safeUseId } from '@salutejs/plasma-core';\n\nimport { RootProps, component } from '../../engines';\nimport { popupConfig, usePopupContext } from '../Popup';\nimport { Overlay } from '../Overlay';\nimport { DEFAULT_Z_INDEX } from '../Popup/utils';\nimport { useFocusTrap } from '../../hooks';\n\nimport { classes, tokens } from './Modal.tokens';\nimport { ModalProps } from './Modal.types';\nimport { useModal } from './hooks';\nimport { base as viewCSS } from './variations/_view/base';\nimport { getIdLastModal } from './ModalContext';\n\n// issue #823\nconst Popup = component(popupConfig);\n\n/**\n * Modal.\n * Управляет показом/скрытием, подложкой и анимацией визуальной части модального окна.\n */\nexport const modalRoot = (Root: RootProps<HTMLDivElement, ModalProps>) =>\n forwardRef<HTMLDivElement, ModalProps>(\n (\n {\n id,\n withAnimation,\n onClose,\n onOverlayClick,\n onEscKeyDown,\n closeOnEsc = true,\n closeOnOverlayClick = true,\n withBlur,\n initialFocusRef,\n focusAfterRef,\n zIndex,\n popupInfo,\n children,\n view,\n isOpen,\n ...rest\n },\n outerRootRef,\n ) => {\n const trapRef = useFocusTrap(true, initialFocusRef, focusAfterRef, true);\n const popupController = usePopupContext();\n\n const innerRef = useForkRef<HTMLDivElement>(trapRef, outerRootRef);\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const overlayBackgroundToken = withBlur\n ? `var(${tokens.modalOverlayWithBlurColor})`\n : `var(${tokens.modalOverlayColor})`;\n\n const { modalInfo } = useModal({ id: innerId, isOpen, closeOnEsc, onEscKeyDown, onClose, popupInfo });\n const transparent = useMemo(() => getIdLastModal(popupController.items) !== innerId, [\n innerId,\n popupController.items,\n ]);\n\n const onModalOverlayKeyDown = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n if (onOverlayClick) {\n onOverlayClick(event);\n return;\n }\n\n if (onClose) {\n onClose();\n }\n },\n [closeOnOverlayClick, onOverlayClick, onClose],\n );\n\n return (\n <Popup\n id={innerId}\n isOpen={isOpen}\n ref={innerRef}\n popupInfo={modalInfo}\n withAnimation={withAnimation}\n zIndex={zIndex}\n overlay={\n <Root view={view}>\n <Overlay\n className={classes.overlay}\n zIndex={zIndex || DEFAULT_Z_INDEX}\n backgroundColorProperty={overlayBackgroundToken}\n withBlur={withBlur}\n transparent={transparent}\n isClickable={closeOnOverlayClick}\n onOverlayClick={onModalOverlayKeyDown}\n />\n </Root>\n }\n {...rest}\n >\n {children}\n </Popup>\n );\n },\n );\n\nexport const modalConfig = {\n name: 'Modal',\n tag: 'div',\n layout: modalRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n },\n defaults: {\n view: 'default',\n },\n};\n"],"names":["Popup","component","popupConfig","modalRoot","Root","forwardRef","_ref","outerRootRef","id","withAnimation","onClose","onOverlayClick","onEscKeyDown","_ref$closeOnEsc","closeOnEsc","_ref$closeOnOverlayCl","closeOnOverlayClick","withBlur","initialFocusRef","focusAfterRef","zIndex","popupInfo","children","view","isOpen","rest","_objectWithoutProperties","_excluded","trapRef","useFocusTrap","popupController","usePopupContext","innerRef","useForkRef","uniqId","safeUseId","innerId","overlayBackgroundToken","concat","tokens","modalOverlayWithBlurColor","modalOverlayColor","_useModal","useModal","modalInfo","transparent","useMemo","getIdLastModal","items","onModalOverlayKeyDown","useCallback","event","React","createElement","_extends","ref","overlay","Overlay","className","classes","DEFAULT_Z_INDEX","backgroundColorProperty","isClickable","modalConfig","name","tag","layout","base","variations","css","viewCSS","defaults"],"mappings":"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"}
|
@@ -13,7 +13,9 @@ var classes = {
|
|
13
13
|
tabRightContent: 'tab-item-right-content',
|
14
14
|
tabLeftContent: 'tab-item-left-content',
|
15
15
|
tabsHasLeftArrow: 'tabs-has-left-arrow',
|
16
|
-
tabsHasRightArrow: 'tabs-has-right-arrow'
|
16
|
+
tabsHasRightArrow: 'tabs-has-right-arrow',
|
17
|
+
tabsClipScroll: 'tabs-clip-scroll',
|
18
|
+
tabsClipShowAll: 'tabs-clip-show-all'
|
17
19
|
};
|
18
20
|
var tokens = {
|
19
21
|
disabledOpacity: '--plasma-tabs-disabled-opacity',
|
@@ -30,7 +32,7 @@ var tokens = {
|
|
30
32
|
outlineFocusColor: '--plasma-tabs-outline-focus-color',
|
31
33
|
arrowColor: '--plasma-tabs-arrow-color',
|
32
34
|
tabsFilledBackgroundColor: '--plasma-tabs-filled-background-color',
|
33
|
-
tabsBackgroundColor: '--plasma-tabs-
|
35
|
+
tabsBackgroundColor: '--plasma-tabs-background-color',
|
34
36
|
tabsBorderRadius: '--plasma-tabs-border-radius',
|
35
37
|
tabsWidth: '--plasma-tabs-width',
|
36
38
|
tabsHeight: '--plasma-tabs-height',
|
@@ -54,6 +56,7 @@ var tokens = {
|
|
54
56
|
itemColor: '--plasma-tab-item-color',
|
55
57
|
itemBackgroundColor: '--plasma-tab-item-background-color',
|
56
58
|
itemColorHover: '--plasma-tab-item-color-hover',
|
59
|
+
itemColorActive: '--plasma-tab-item-color-active',
|
57
60
|
itemBackgroundColorHover: '--plasma-tab-item-background-color-hover',
|
58
61
|
itemSelectedColor: '--plasma-tab-item-selected-color',
|
59
62
|
itemSelectedBackgroundColor: '--plasma-tab-item-selected-background-color',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"tokens.js","sources":["../../../src/components/Tabs/tokens.ts"],"sourcesContent":["export const classes = {\n selectedTabsItem: 'selected-tabs-item',\n tabsPilled: 'tabs-pilled',\n tabsGroupFilledBackground: 'tabs-group-filled-background',\n tabsStretch: 'tabs-stretched',\n tabItemDivider: 'tab-item-divider',\n tabItemAnimated: 'tab-item-animated',\n tabContent: 'tab-item-content',\n tabRightContent: 'tab-item-right-content',\n tabLeftContent: 'tab-item-left-content',\n tabsHasLeftArrow: 'tabs-has-left-arrow',\n tabsHasRightArrow: 'tabs-has-right-arrow',\n};\n\nexport const tokens = {\n disabledOpacity: '--plasma-tabs-disabled-opacity',\n containerWidth: '--plasma-tabs-container-width',\n cursor: '--plasma-tabs-cursor',\n color: '--plasma-tabs-color',\n colorHover: '--plasma-tabs-color-hover',\n\n tabsDividerHeight: '--plasma-tabs-divider-height',\n tabsDividerColor: '--plasma-tabs-divider-color',\n tabsDividerBorderRadius: '--plasma-tabs-divider-border-radius',\n\n itemSelectedDividerHeight: '--plasma-tab-item-selected-divider-height',\n itemSelectedDividerColor: '--plasma-tab-item-selected-divider-color',\n itemSelectedDividerColorHover: '--plasma-tab-item-selected-hover-divider-color',\n\n outlineFocusColor: '--plasma-tabs-outline-focus-color',\n arrowColor: '--plasma-tabs-arrow-color',\n tabsFilledBackgroundColor: '--plasma-tabs-filled-background-color',\n\n tabsBackgroundColor: '--plasma-tabs-
|
1
|
+
{"version":3,"file":"tokens.js","sources":["../../../src/components/Tabs/tokens.ts"],"sourcesContent":["export const classes = {\n selectedTabsItem: 'selected-tabs-item',\n tabsPilled: 'tabs-pilled',\n tabsGroupFilledBackground: 'tabs-group-filled-background',\n tabsStretch: 'tabs-stretched',\n tabItemDivider: 'tab-item-divider',\n tabItemAnimated: 'tab-item-animated',\n tabContent: 'tab-item-content',\n tabRightContent: 'tab-item-right-content',\n tabLeftContent: 'tab-item-left-content',\n tabsHasLeftArrow: 'tabs-has-left-arrow',\n tabsHasRightArrow: 'tabs-has-right-arrow',\n tabsClipScroll: 'tabs-clip-scroll',\n tabsClipShowAll: 'tabs-clip-show-all',\n};\n\nexport const tokens = {\n disabledOpacity: '--plasma-tabs-disabled-opacity',\n containerWidth: '--plasma-tabs-container-width',\n cursor: '--plasma-tabs-cursor',\n color: '--plasma-tabs-color',\n colorHover: '--plasma-tabs-color-hover',\n\n tabsDividerHeight: '--plasma-tabs-divider-height',\n tabsDividerColor: '--plasma-tabs-divider-color',\n tabsDividerBorderRadius: '--plasma-tabs-divider-border-radius',\n\n itemSelectedDividerHeight: '--plasma-tab-item-selected-divider-height',\n itemSelectedDividerColor: '--plasma-tab-item-selected-divider-color',\n itemSelectedDividerColorHover: '--plasma-tab-item-selected-hover-divider-color',\n\n outlineFocusColor: '--plasma-tabs-outline-focus-color',\n arrowColor: '--plasma-tabs-arrow-color',\n tabsFilledBackgroundColor: '--plasma-tabs-filled-background-color',\n\n tabsBackgroundColor: '--plasma-tabs-background-color',\n tabsBorderRadius: '--plasma-tabs-border-radius',\n tabsWidth: '--plasma-tabs-width',\n tabsHeight: '--plasma-tabs-height',\n tabsPadding: '--plasma-tabs-padding',\n tabsPilledBorderRadius: '--plasma-tabs-pilled-border-radius',\n\n itemBorderRadius: '--plasma-tab-item-border-radius',\n itemPilledBorderRadius: '--plasma-tab-item-pilled-border-radius',\n itemWidth: '--plasma-tab-item-width',\n itemHeight: '--plasma-tab-item-height',\n itemPadding: '--plasma-tab-item-padding',\n itemPaddingClear: '--plasma-tab-item-padding-clear',\n itemPaddingPilled: '--plasma-tab-item-padding-pilled',\n itemMarginLeft: '--plasma-tab-item-margin-left',\n itemMarginLeftFilled: '--plasma-tab-item-margin-left-filled',\n itemContentGap: '--plasma-tab-item-content-gap',\n\n itemContentPadding: '--plasma-tab-item-content-padding',\n itemContentPaddingClear: '--plasma-tab-item-content-padding-clear',\n\n arrowInnerPadding: '--plasma-tab-arrow-inner-padding',\n arrowOuterPadding: '--plasma-tab-arrow-outer-padding',\n arrowViewOuterPadding: '--plasma-tab-arrow-view-outer-padding',\n\n itemColor: '--plasma-tab-item-color',\n itemBackgroundColor: '--plasma-tab-item-background-color',\n itemColorHover: '--plasma-tab-item-color-hover',\n itemColorActive: '--plasma-tab-item-color-active',\n itemBackgroundColorHover: '--plasma-tab-item-background-color-hover',\n\n itemSelectedColor: '--plasma-tab-item-selected-color',\n itemSelectedBackgroundColor: '--plasma-tab-item-selected-background-color',\n itemSelectedColorHover: '--plasma-tab-item-selected-color-hover',\n itemSelectedBackgroundColorHover: '--plasma-tab-item-selected-background-color-hover',\n\n itemBackgroundTransition: '--plasma-tab-item-background-transition',\n\n additionalContentColor: '--plasma-tab-item-additional-content-color',\n additionalContentHoverColor: '--plasma-tab-item-hover-additional-content-color',\n additionalContentSelectedColor: '--plasma-tab-item-selected-additional-content-color',\n additionalContentSelectedHoverColor: '--plasma-tab-item-selected-hover-additional-content-color',\n\n fontFamily: '--plasma-tab-item-font-family',\n fontSize: '--plasma-tab-item-font-size',\n fontStyle: '--plasma-tab-item-font-style',\n fontWeight: '--plasma-tab-item-font-weight',\n letterSpacing: '--plasma-tab-item-letter-spacing',\n lineHeight: '--plasma-tab-item-lineheight',\n};\n"],"names":["classes","selectedTabsItem","tabsPilled","tabsGroupFilledBackground","tabsStretch","tabItemDivider","tabItemAnimated","tabContent","tabRightContent","tabLeftContent","tabsHasLeftArrow","tabsHasRightArrow","tabsClipScroll","tabsClipShowAll","tokens","disabledOpacity","containerWidth","cursor","color","colorHover","tabsDividerHeight","tabsDividerColor","tabsDividerBorderRadius","itemSelectedDividerHeight","itemSelectedDividerColor","itemSelectedDividerColorHover","outlineFocusColor","arrowColor","tabsFilledBackgroundColor","tabsBackgroundColor","tabsBorderRadius","tabsWidth","tabsHeight","tabsPadding","tabsPilledBorderRadius","itemBorderRadius","itemPilledBorderRadius","itemWidth","itemHeight","itemPadding","itemPaddingClear","itemPaddingPilled","itemMarginLeft","itemMarginLeftFilled","itemContentGap","itemContentPadding","itemContentPaddingClear","arrowInnerPadding","arrowOuterPadding","arrowViewOuterPadding","itemColor","itemBackgroundColor","itemColorHover","itemColorActive","itemBackgroundColorHover","itemSelectedColor","itemSelectedBackgroundColor","itemSelectedColorHover","itemSelectedBackgroundColorHover","itemBackgroundTransition","additionalContentColor","additionalContentHoverColor","additionalContentSelectedColor","additionalContentSelectedHoverColor","fontFamily","fontSize","fontStyle","fontWeight","letterSpacing","lineHeight"],"mappings":"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"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
.
|
1
|
+
.base_7pcxtm_b5uyjxl__b67ab7ce{color:var(--plasma-tab-item-color);background-color:var(--plasma-tab-item-background-color);margin-left:var(--plasma-tab-item-margin-left-filled,var(--plasma-tab-item-margin-left));}.base_7pcxtm_b5uyjxl__b67ab7ce:hover{color:var(--plasma-tab-item-color-hover);background-color:var(--plasma-tab-item-background-color-hover);}.base_7pcxtm_b5uyjxl__b67ab7ce:hover .base_7pcxtm_r265xop__b67ab7ce{color:var(--plasma-tab-item-hover-additional-content-color);}.base_7pcxtm_b5uyjxl__b67ab7ce:active{color:var(--plasma-tab-item-color-active);}.base_7pcxtm_b5uyjxl__b67ab7ce.base_7pcxtm_tabItemAnimated__b67ab7ce{-webkit-transition:var(--plasma-tab-item-background-transition);transition:var(--plasma-tab-item-background-transition);}.base_7pcxtm_b5uyjxl__b67ab7ce.base_7pcxtm_selectedTabsItem__b67ab7ce{color:var(--plasma-tab-item-selected-color);background-color:var(--plasma-tab-item-selected-background-color);}.base_7pcxtm_b5uyjxl__b67ab7ce.base_7pcxtm_selectedTabsItem__b67ab7ce:hover{color:var(--plasma-tab-item-selected-color-hover);background-color:var(--plasma-tab-item-selected-background-color-hover);}.base_7pcxtm_b5uyjxl__b67ab7ce.base_7pcxtm_selectedTabsItem__b67ab7ce:hover::after{background:var(--plasma-tab-item-selected-hover-divider-color);}.base_7pcxtm_b5uyjxl__b67ab7ce.base_7pcxtm_selectedTabsItem__b67ab7ce .base_7pcxtm_r265xop__b67ab7ce{color:var(--plasma-tab-item-selected-additional-content-color);}.base_7pcxtm_b5uyjxl__b67ab7ce.base_7pcxtm_selectedTabsItem__b67ab7ce .base_7pcxtm_r265xop__b67ab7ce:hover{color:var(--plasma-tab-item-selected-hover-additional-content-color);}.base_7pcxtm_b5uyjxl__b67ab7ce.base_7pcxtm_selectedTabsItem__b67ab7ce::after{content:'';position:absolute;bottom:0px;left:0;right:0;background:var(--plasma-tab-item-selected-divider-color);height:var(--plasma-tab-item-selected-divider-height);border-radius:1px;}
|
2
2
|
|
3
3
|
.base_1d7e3fp_bvmpqz9__8fd7c45d{font-family:var(--plasma-tab-item-font-family);font-size:var(--plasma-tab-item-font-size);font-style:var(--plasma-tab-item-font-style);font-weight:var(--plasma-tab-item-font-weight);-webkit-letter-spacing:var(--plasma-tab-item-letter-spacing);-moz-letter-spacing:var(--plasma-tab-item-letter-spacing);-ms-letter-spacing:var(--plasma-tab-item-letter-spacing);letter-spacing:var(--plasma-tab-item-letter-spacing);line-height:var(--plasma-tab-item-lineheight);--plasma_private-outline-radius:var(--plasma-tab-item-border-radius);border-radius:var(--plasma-tab-item-border-radius);width:var(--plasma-tab-item-width);height:var(--plasma-tab-item-height);}
|
4
4
|
|
@@ -14,7 +14,7 @@ var base$3 = require('./variations/_pilled/base.js');
|
|
14
14
|
var base$2 = require('./variations/_disabled/base.js');
|
15
15
|
var TabItem_styles = require('./TabItem.styles.js');
|
16
16
|
|
17
|
-
var _excluded = ["size", "view", "isActive", "selected", "disabled", "pilled", "children", "contentLeft", "contentRight", "animated", "onIndexChange", "itemIndex", "tabIndex", "className"];
|
17
|
+
var _excluded = ["size", "view", "isActive", "selected", "disabled", "pilled", "children", "contentLeft", "contentRight", "animated", "onIndexChange", "itemIndex", "tabIndex", "className", "onClick"];
|
18
18
|
var tabItemRoot = function tabItemRoot(Root) {
|
19
19
|
return /*#__PURE__*/React.forwardRef(function (props, outerRef) {
|
20
20
|
var size = props.size,
|
@@ -34,6 +34,7 @@ var tabItemRoot = function tabItemRoot(Root) {
|
|
34
34
|
itemIndex = props.itemIndex,
|
35
35
|
tabIndex = props.tabIndex,
|
36
36
|
className = props.className,
|
37
|
+
onClick = props.onClick,
|
37
38
|
rest = _rollupPluginBabelHelpers.objectWithoutProperties(props, _excluded);
|
38
39
|
var innerRef = React.useRef(null);
|
39
40
|
var ref = plasmaCore.useForkRef(outerRef, innerRef);
|
@@ -75,6 +76,16 @@ var tabItemRoot = function tabItemRoot(Root) {
|
|
75
76
|
onIndexChange === null || onIndexChange === void 0 || onIndexChange(focusIndex);
|
76
77
|
refs.setCurrent(focusIndex);
|
77
78
|
}, [refs, innerRef, onIndexChange, disabled]);
|
79
|
+
var handleClick = function handleClick(event) {
|
80
|
+
event.currentTarget.scrollIntoView({
|
81
|
+
block: 'nearest',
|
82
|
+
inline: 'nearest'
|
83
|
+
});
|
84
|
+
if (!onClick) {
|
85
|
+
return;
|
86
|
+
}
|
87
|
+
onClick(event);
|
88
|
+
};
|
78
89
|
return /*#__PURE__*/React.createElement(Root, _rollupPluginBabelHelpers.extends({
|
79
90
|
ref: ref,
|
80
91
|
disabled: disabled,
|
@@ -84,7 +95,8 @@ var tabItemRoot = function tabItemRoot(Root) {
|
|
84
95
|
size: size,
|
85
96
|
onFocus: onItemFocus,
|
86
97
|
tabIndex: hasKeyNavigation ? navigationTabIndex : tabIndex,
|
87
|
-
className: index.cx(pilledClass, selectedClass, animatedClass, className)
|
98
|
+
className: index.cx(pilledClass, selectedClass, animatedClass, className),
|
99
|
+
onClick: handleClick
|
88
100
|
}, rest), /*#__PURE__*/React.createElement(React.Fragment, null, contentLeft && /*#__PURE__*/React.createElement(TabItem_styles.LeftContent, {
|
89
101
|
className: tokens.classes.tabLeftContent
|
90
102
|
}, contentLeft), /*#__PURE__*/React.createElement(TabItem_styles.StyledContent, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"TabItem.js","sources":["../../../../../src/components/Tabs/ui/TabItem/TabItem.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useContext, useEffect, useCallback } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\n\nimport { ComponentConfig, RootProps } from '../../../../engines';\nimport { classes } from '../../tokens';\nimport { cx } from '../../../../utils';\nimport { TabsContext } from '../../TabsContext';\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 { TabItemProps } from './TabItem.types';\nimport { LeftContent, RightContent, StyledContent, base } from './TabItem.styles';\n\nexport const tabItemRoot = (Root: RootProps<HTMLDivElement, TabItemProps>) =>\n forwardRef<HTMLDivElement, TabItemProps>((props, outerRef) => {\n const {\n size,\n view,\n isActive,\n selected,\n disabled = false,\n pilled = false,\n children,\n contentLeft,\n contentRight,\n animated = true,\n onIndexChange,\n itemIndex,\n tabIndex,\n className,\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 (!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 (disabled || !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 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 {...rest}\n >\n <>\n {contentLeft && <LeftContent className={classes.tabLeftContent}>{contentLeft}</LeftContent>}\n <StyledContent className={classes.tabContent}>{children}</StyledContent>\n {contentRight && <RightContent className={classes.tabRightContent}>{contentRight}</RightContent>}\n </>\n </Root>\n );\n });\n\nexport const tabItemConfig: ComponentConfig = {\n name: 'TabItem',\n tag: 'button',\n layout: tabItemRoot,\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":["tabItemRoot","Root","forwardRef","props","outerRef","size","view","isActive","selected","_props$disabled","disabled","_props$pilled","pilled","children","contentLeft","contentRight","_props$animated","animated","onIndexChange","itemIndex","tabIndex","className","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","React","createElement","_extends","onFocus","cx","Fragment","LeftContent","tabLeftContent","StyledContent","tabContent","RightContent","tabRightContent","tabItemConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","pilledCSS","defaults"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"TabItem.js","sources":["../../../../../src/components/Tabs/ui/TabItem/TabItem.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useContext, useEffect, useCallback } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\n\nimport { ComponentConfig, RootProps } from '../../../../engines';\nimport { classes } from '../../tokens';\nimport { cx } from '../../../../utils';\nimport { TabsContext } from '../../TabsContext';\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 { TabItemProps } from './TabItem.types';\nimport { LeftContent, RightContent, StyledContent, base } from './TabItem.styles';\n\nexport const tabItemRoot = (Root: RootProps<HTMLDivElement, TabItemProps>) =>\n forwardRef<HTMLDivElement, TabItemProps>((props, outerRef) => {\n const {\n size,\n view,\n isActive,\n selected,\n disabled = false,\n pilled = false,\n children,\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 (!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 (disabled || !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 && <RightContent className={classes.tabRightContent}>{contentRight}</RightContent>}\n </>\n </Root>\n );\n });\n\nexport const tabItemConfig: ComponentConfig = {\n name: 'TabItem',\n tag: 'button',\n layout: tabItemRoot,\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":["tabItemRoot","Root","forwardRef","props","outerRef","size","view","isActive","selected","_props$disabled","disabled","_props$pilled","pilled","children","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","RightContent","tabRightContent","tabItemConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","pilledCSS","defaults"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"base.js","sources":["../../../../../../../src/components/Tabs/ui/TabItem/variations/_view/base.ts"],"sourcesContent":["import { css } from '@linaria/core';\n\nimport { classes, tokens } from '../../../../tokens';\nimport { RightContent } from '../../TabItem.styles';\n\nexport const base = css`\n color: var(${tokens.itemColor});\n background-color: var(${tokens.itemBackgroundColor});\n\n margin-left: var(${tokens.itemMarginLeftFilled}, var(${tokens.itemMarginLeft}));\n\n &:hover {\n color: var(${tokens.itemColorHover});\n background-color: var(${tokens.itemBackgroundColorHover});\n\n ${RightContent} {\n color: var(${tokens.additionalContentHoverColor});\n }\n }\n\n &.${String(classes.tabItemAnimated)} {\n transition: var(${tokens.itemBackgroundTransition});\n }\n\n &.${String(classes.selectedTabsItem)} {\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 &::after {\n background: var(${tokens.itemSelectedDividerColorHover});\n }\n }\n\n ${RightContent} {\n color: var(${tokens.additionalContentSelectedColor});\n\n &:hover {\n color: var(${tokens.additionalContentSelectedHoverColor});\n }\n }\n\n &::after {\n content: '';\n position: absolute;\n bottom: 0px;\n left: 0;\n right: 0;\n background: var(${tokens.itemSelectedDividerColor});\n height: var(${tokens.itemSelectedDividerHeight});\n border-radius: 1px;\n }\n }\n`;\n"],"names":["base"],"mappings":";;;;AAKO,IAAMA,IAAI,
|
1
|
+
{"version":3,"file":"base.js","sources":["../../../../../../../src/components/Tabs/ui/TabItem/variations/_view/base.ts"],"sourcesContent":["import { css } from '@linaria/core';\n\nimport { classes, tokens } from '../../../../tokens';\nimport { RightContent } from '../../TabItem.styles';\n\nexport const base = css`\n color: var(${tokens.itemColor});\n background-color: var(${tokens.itemBackgroundColor});\n\n margin-left: var(${tokens.itemMarginLeftFilled}, var(${tokens.itemMarginLeft}));\n\n &:hover {\n color: var(${tokens.itemColorHover});\n background-color: var(${tokens.itemBackgroundColorHover});\n\n ${RightContent} {\n color: var(${tokens.additionalContentHoverColor});\n }\n }\n\n &:active {\n color: var(${tokens.itemColorActive});\n }\n\n &.${String(classes.tabItemAnimated)} {\n transition: var(${tokens.itemBackgroundTransition});\n }\n\n &.${String(classes.selectedTabsItem)} {\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 &::after {\n background: var(${tokens.itemSelectedDividerColorHover});\n }\n }\n\n ${RightContent} {\n color: var(${tokens.additionalContentSelectedColor});\n\n &:hover {\n color: var(${tokens.additionalContentSelectedHoverColor});\n }\n }\n\n &::after {\n content: '';\n position: absolute;\n bottom: 0px;\n left: 0;\n right: 0;\n background: var(${tokens.itemSelectedDividerColor});\n height: var(${tokens.itemSelectedDividerHeight});\n border-radius: 1px;\n }\n }\n`;\n"],"names":["base"],"mappings":";;;;AAKO,IAAMA,IAAI,GAuDhB;;;;"}
|
@@ -0,0 +1 @@
|
|
1
|
+
.b5uyjxl{color:var(--plasma-tab-item-color);background-color:var(--plasma-tab-item-background-color);margin-left:var(--plasma-tab-item-margin-left-filled,var(--plasma-tab-item-margin-left));}.b5uyjxl:hover{color:var(--plasma-tab-item-color-hover);background-color:var(--plasma-tab-item-background-color-hover);}.b5uyjxl:hover .r265xop{color:var(--plasma-tab-item-hover-additional-content-color);}.b5uyjxl:active{color:var(--plasma-tab-item-color-active);}.b5uyjxl.tab-item-animated{-webkit-transition:var(--plasma-tab-item-background-transition);transition:var(--plasma-tab-item-background-transition);}.b5uyjxl.selected-tabs-item{color:var(--plasma-tab-item-selected-color);background-color:var(--plasma-tab-item-selected-background-color);}.b5uyjxl.selected-tabs-item:hover{color:var(--plasma-tab-item-selected-color-hover);background-color:var(--plasma-tab-item-selected-background-color-hover);}.b5uyjxl.selected-tabs-item:hover::after{background:var(--plasma-tab-item-selected-hover-divider-color);}.b5uyjxl.selected-tabs-item .r265xop{color:var(--plasma-tab-item-selected-additional-content-color);}.b5uyjxl.selected-tabs-item .r265xop:hover{color:var(--plasma-tab-item-selected-hover-additional-content-color);}.b5uyjxl.selected-tabs-item::after{content:'';position:absolute;bottom:0px;left:0;right:0;background:var(--plasma-tab-item-selected-divider-color);height:var(--plasma-tab-item-selected-divider-height);border-radius:1px;}
|
@@ -2,15 +2,15 @@
|
|
2
2
|
|
3
3
|
.base_iw773q_b12fajph__34b9af5a{width:var(--plasma-tabs-width);height:var(--plasma-tabs-height);--plasma_private-outline-radius:var(--plasma-tabs-border-radius);border-radius:var(--plasma-tabs-border-radius);}
|
4
4
|
|
5
|
-
.
|
5
|
+
.base_aij3sf_b1mh5p08__d6b8b2c3{background-color:var(--plasma-tabs-background-color);}.base_aij3sf_b1mh5p08__d6b8b2c3::after{content:'';position:absolute;bottom:0.125rem;left:0.125rem;right:0.125rem;background:var(--plasma-tabs-divider-color);height:var(--plasma-tabs-divider-height);border-radius:var(--plasma-tabs-divider-border-radius);}.base_aij3sf_b1mh5p08__d6b8b2c3.base_aij3sf_tabsHasLeftArrow__d6b8b2c3::after{left:1.5rem;}.base_aij3sf_b1mh5p08__d6b8b2c3.base_aij3sf_tabsHasRightArrow__d6b8b2c3::after{right:1.5rem;}
|
6
6
|
|
7
7
|
.base_1i8tr9c_b1lwejhw__63d2542b{opacity:var(--plasma-tabs-disabled-opacity);}
|
8
8
|
|
9
9
|
.base_1ujjl52_b1aa8x3y__dbe55f93.base_1ujjl52_tabsPilled__dbe55f93{--plasma_private-outline-radius:var(--plasma-tabs-pilled-border-radius);border-radius:var(--plasma-tabs-pilled-border-radius);}
|
10
10
|
|
11
|
-
.
|
11
|
+
.base_1c7lnrm_be36ynn__a2a07cea.base_1c7lnrm_tabsStretched__a2a07cea{width:100%;}.base_1c7lnrm_be36ynn__a2a07cea.base_1c7lnrm_tabsStretched__a2a07cea .base_1c7lnrm_sh5e38r__a2a07cea,.base_1c7lnrm_be36ynn__a2a07cea.base_1c7lnrm_tabsStretched__a2a07cea .base_1c7lnrm_s8qwlso__a2a07cea,.base_1c7lnrm_be36ynn__a2a07cea.base_1c7lnrm_tabsStretched__a2a07cea .base_1c7lnrm_s8qwlso__a2a07cea > button{width:100%;margin-left:0;}
|
12
12
|
|
13
|
-
.
|
14
|
-
.
|
15
|
-
.
|
16
|
-
.
|
13
|
+
.Tabs_styles_z4dnzh_bu8v92r__3f447f56{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;gap:0.125rem;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;}
|
14
|
+
.Tabs_styles_z4dnzh_s8qwlso__3f447f56{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;}
|
15
|
+
.Tabs_styles_z4dnzh_sh5e38r__3f447f56{margin:-0.125rem;padding:0.25rem;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;}.Tabs_styles_z4dnzh_sh5e38r__3f447f56.Tabs_styles_z4dnzh_tabsClipScroll__3f447f56{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;}.Tabs_styles_z4dnzh_sh5e38r__3f447f56.Tabs_styles_z4dnzh_tabsClipScroll__3f447f56::-webkit-scrollbar{display:none;}.Tabs_styles_z4dnzh_sh5e38r__3f447f56.Tabs_styles_z4dnzh_tabsClipShowAll__3f447f56{overflow:visible;}
|
16
|
+
.Tabs_styles_z4dnzh_s1ekwj92__3f447f56{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;cursor:pointer;border:none;background-color:transparent;padding:0;outline:none;position:relative;--plasma_private-outer-padding:var(--s1ekwj92-0);padding-right:var(--s1ekwj92-1);padding-left:var(--s1ekwj92-2);}.Tabs_styles_z4dnzh_s1ekwj92__3f447f56::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;}.Tabs_styles_z4dnzh_s1ekwj92__3f447f56.Tabs_styles_z4dnzh_focusVisible__3f447f56:focus::before,.Tabs_styles_z4dnzh_s1ekwj92__3f447f56[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.063rem var(--plasma-tabs-outline-focus-color);}.Tabs_styles_z4dnzh_s1ekwj92__3f447f56[disabled]{cursor:not-allowed;}
|
@@ -18,7 +18,7 @@ var base$4 = require('./variations/_pilled/base.js');
|
|
18
18
|
var base$3 = require('./variations/_stretch/base.js');
|
19
19
|
var Tabs_styles = require('./Tabs.styles.js');
|
20
20
|
|
21
|
-
var _excluded = ["id", "stretch", "disabled", "size", "view", "children", "pilled", "index", "className"];
|
21
|
+
var _excluded = ["id", "stretch", "disabled", "clip", "size", "view", "children", "pilled", "index", "className"];
|
22
22
|
var Keys = /*#__PURE__*/function (Keys) {
|
23
23
|
Keys[Keys["end"] = 35] = "end";
|
24
24
|
Keys[Keys["home"] = 36] = "home";
|
@@ -33,10 +33,13 @@ var tabsRoot = function tabsRoot(Root) {
|
|
33
33
|
stretch = _props$stretch === void 0 ? false : _props$stretch,
|
34
34
|
_props$disabled = props.disabled,
|
35
35
|
disabled = _props$disabled === void 0 ? false : _props$disabled,
|
36
|
+
_props$clip = props.clip,
|
37
|
+
clip = _props$clip === void 0 ? 'scroll' : _props$clip,
|
36
38
|
size = props.size,
|
37
39
|
view = props.view,
|
38
40
|
children = props.children,
|
39
|
-
pilled = props.pilled,
|
41
|
+
_props$pilled = props.pilled,
|
42
|
+
pilled = _props$pilled === void 0 ? false : _props$pilled,
|
40
43
|
index$1 = props.index,
|
41
44
|
className = props.className,
|
42
45
|
rest = _rollupPluginBabelHelpers.objectWithoutProperties(props, _excluded);
|
@@ -59,14 +62,47 @@ var tabsRoot = function tabsRoot(Root) {
|
|
59
62
|
var stretchClass = firstItemVisible && lastItemVisible && stretch ? tokens.classes.tabsStretch : undefined;
|
60
63
|
var hasLeftArrowClass = !firstItemVisible ? tokens.classes.tabsHasLeftArrow : undefined;
|
61
64
|
var hasRightArrowClass = !lastItemVisible ? tokens.classes.tabsHasRightArrow : undefined;
|
65
|
+
var clipScrollClass = clip === 'scroll' ? tokens.classes.tabsClipScroll : undefined;
|
66
|
+
var clipShowAllClass = clip === 'showAll' ? tokens.classes.tabsClipShowAll : undefined;
|
62
67
|
var scrollRef = React.useRef(null);
|
63
68
|
var trackRef = React.useRef(null);
|
69
|
+
var leftArrowRef = React.useRef(null);
|
64
70
|
var onPrev = React.useCallback(function () {
|
65
|
-
|
66
|
-
|
71
|
+
var _firstOverflowingTab$;
|
72
|
+
if (disabled || !scrollRef.current) {
|
73
|
+
return;
|
74
|
+
}
|
75
|
+
var scrollLeft = Math.round(scrollRef.current.scrollLeft);
|
76
|
+
var firstOverflowingTab = refs.items.slice().reverse().find(function (item) {
|
77
|
+
if (!item.current || item.current.offsetLeft === undefined) {
|
78
|
+
return;
|
79
|
+
}
|
80
|
+
var tabStartX = item.current.offsetLeft;
|
81
|
+
return tabStartX < scrollLeft;
|
82
|
+
});
|
83
|
+
firstOverflowingTab === null || firstOverflowingTab === void 0 || (_firstOverflowingTab$ = firstOverflowingTab.current) === null || _firstOverflowingTab$ === void 0 || _firstOverflowingTab$.scrollIntoView({
|
84
|
+
block: 'nearest',
|
85
|
+
inline: 'nearest'
|
86
|
+
});
|
87
|
+
}, [disabled, scrollRef, refs]);
|
67
88
|
var onNext = React.useCallback(function () {
|
68
|
-
|
69
|
-
|
89
|
+
var _lastOverflowingTab$c;
|
90
|
+
if (disabled || !scrollRef.current) {
|
91
|
+
return;
|
92
|
+
}
|
93
|
+
var scrollRight = Math.round(scrollRef.current.scrollLeft + scrollRef.current.clientWidth);
|
94
|
+
var lastOverflowingTab = refs.items.find(function (item) {
|
95
|
+
if (!item.current || item.current.offsetLeft === undefined) {
|
96
|
+
return;
|
97
|
+
}
|
98
|
+
var tabEndX = item.current.offsetLeft + item.current.offsetWidth;
|
99
|
+
return tabEndX > scrollRight;
|
100
|
+
});
|
101
|
+
lastOverflowingTab === null || lastOverflowingTab === void 0 || (_lastOverflowingTab$c = lastOverflowingTab.current) === null || _lastOverflowingTab$c === void 0 || _lastOverflowingTab$c.scrollIntoView({
|
102
|
+
block: 'nearest',
|
103
|
+
inline: 'nearest'
|
104
|
+
});
|
105
|
+
}, [disabled, scrollRef, refs]);
|
70
106
|
var PreviousButton = React.useMemo(function () {
|
71
107
|
return /*#__PURE__*/React.createElement(Tabs_styles.StyledArrow, {
|
72
108
|
type: "button",
|
@@ -75,6 +111,7 @@ var tabsRoot = function tabsRoot(Root) {
|
|
75
111
|
tabIndex: disabled ? -1 : 0,
|
76
112
|
disabled: disabled,
|
77
113
|
isFilled: isFilled,
|
114
|
+
ref: leftArrowRef,
|
78
115
|
isLeftArrow: true
|
79
116
|
}, /*#__PURE__*/React.createElement(IconDisclosureLeft.IconDisclosureLeft, {
|
80
117
|
color: "var(".concat(tokens.tokens.arrowColor, ")")
|
@@ -95,8 +132,9 @@ var tabsRoot = function tabsRoot(Root) {
|
|
95
132
|
var handleScroll = React.useCallback(function (event) {
|
96
133
|
event.stopPropagation();
|
97
134
|
var maxScrollLeft = event.currentTarget.scrollWidth - event.currentTarget.clientWidth;
|
98
|
-
|
99
|
-
|
135
|
+
var scrollLeft = Math.round(event.currentTarget.scrollLeft);
|
136
|
+
setFirstItemVisible(scrollLeft <= 0);
|
137
|
+
setLastItemVisible(scrollLeft >= maxScrollLeft);
|
100
138
|
}, [setFirstItemVisible, setLastItemVisible]);
|
101
139
|
var onKeyDown = React.useCallback(function (event) {
|
102
140
|
if (index$1 === undefined) {
|
@@ -136,6 +174,16 @@ var tabsRoot = function tabsRoot(Root) {
|
|
136
174
|
var _scrollRef$current, _scrollRef$current2;
|
137
175
|
setLastItemVisible(((_scrollRef$current = scrollRef.current) === null || _scrollRef$current === void 0 ? void 0 : _scrollRef$current.scrollWidth) === ((_scrollRef$current2 = scrollRef.current) === null || _scrollRef$current2 === void 0 ? void 0 : _scrollRef$current2.clientWidth));
|
138
176
|
}, []);
|
177
|
+
|
178
|
+
// Этот хук компенсирует появление левой стрелки при прокрутке
|
179
|
+
React.useEffect(function () {
|
180
|
+
if (firstItemVisible || !scrollRef.current || !leftArrowRef.current) {
|
181
|
+
return;
|
182
|
+
}
|
183
|
+
scrollRef.current.scrollTo({
|
184
|
+
left: Math.round(scrollRef.current.scrollLeft + leftArrowRef.current.clientWidth)
|
185
|
+
});
|
186
|
+
}, [firstItemVisible, scrollRef, leftArrowRef]);
|
139
187
|
return /*#__PURE__*/React.createElement(TabsContext.TabsContext.Provider, {
|
140
188
|
value: refs
|
141
189
|
}, /*#__PURE__*/React.createElement(Root, _rollupPluginBabelHelpers.extends({
|
@@ -149,6 +197,7 @@ var tabsRoot = function tabsRoot(Root) {
|
|
149
197
|
className: index.cx(pilledClass, stretchClass, hasLeftArrowClass, hasRightArrowClass, className),
|
150
198
|
onKeyDown: onKeyDown
|
151
199
|
}, rest), !firstItemVisible && PreviousButton, /*#__PURE__*/React.createElement(Tabs_styles.StyledContentWrapper, {
|
200
|
+
className: index.cx(clipScrollClass, clipShowAllClass),
|
152
201
|
ref: scrollRef,
|
153
202
|
onScroll: handleScroll
|
154
203
|
}, /*#__PURE__*/React.createElement(Tabs_styles.StyledContent, {
|