@consta/uikit 4.26.0 → 4.26.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ export * from "../__internal__/src/components/BookmarkTabsCanary";
@@ -0,0 +1 @@
1
+ export * from "../__internal__/src/components/BookmarkTabsCanary";
@@ -1 +1 @@
1
- .BookmarkTabs{display:flex;flex-wrap:nowrap;height:var(--bookmark-tabs-tab-size);max-width:100%;white-space:nowrap;width:100%}.BookmarkTabs-Wrapper{display:inline-flex;max-width:100%;overflow-x:auto;width:-moz-max-content;width:max-content}.BookmarkTabs-Wrapper::-webkit-scrollbar:horizontal{display:none;height:0;width:0}.BookmarkTabs-Wrapper::-webkit-scrollbar-thumb:horizontal{display:none}.BookmarkTabs-List{display:inline-flex;height:var(--bookmark-tabs-tab-size);max-width:var(--bookmarks-list-width);width:-moz-max-content;width:max-content}.BookmarkTabs-List>.BookmarkTabsTab{flex:1}.BookmarkTabs-List>.BookmarkTabsTab:not(.BookmarkTabsTab_form_round.BookmarkTabsTab_active):not(.BookmarkTabsTab_form_round:has(+.BookmarkTabsTab_active)):after{background:var(--color-bg-border);content:"";height:var(--bookmark-divider-height);position:absolute;right:0;top:var(--bookmark-divider-top);width:1px}.BookmarkTabs-List:has(+.BookmarkTabs-List>.BookmarkTabsTab:first-child.BookmarkTabsTab_active)>.BookmarkTabsTab_form_round:last-child:after{display:none}.BookmarkTabs-List:last-child>.BookmarkTabsTab:last-child:after{display:none}.BookmarkTabs_form_brick{--bookmark-divider-height:100%;--bookmark-divider-top:0}.BookmarkTabs_form_round{--bookmark-divider-top:calc(var(--space-l)/2);--bookmark-divider-height:calc(100% - var(--space-l))}.BookmarkTabs_size_s{--bookmark-tabs-tab-size:var(--space-2xl)}.BookmarkTabs_size_m{--bookmark-tabs-tab-size:var(--space-3xl)}.BookmarkTabs_view_ghost{background:var(--color-bg-secondary)}.BookmarkTabs-Empty{flex:auto}.BookmarkTabs-Button,.BookmarkTabs-Empty{border-bottom:1px solid var(--color-bg-border)}.BookmarkTabs-Button{align-items:center;display:inline-flex;justify-content:center;min-height:var(--bookmark-tabs-tab-size);min-width:var(--bookmark-tabs-tab-size);position:relative}.BookmarkTabs-Button_type_add:before{background:var(--color-bg-border);content:"";height:var(--bookmark-divider-height);left:0;position:absolute;top:var(--bookmark-divider-top);width:1px}.BookmarkTabs-Block{max-width:100%;width:-moz-max-content;width:max-content}.BookmarkTabs-ScrollControls{align-items:center;display:inline-flex;justify-content:center}.BookmarkTabs-ScrollControls>*{border-right:1px solid var(--color-bg-border)}
1
+ .canary--BookmarkTabs{display:flex;flex-wrap:nowrap;height:var(--bookmark-tabs-tab-size);max-width:100%;white-space:nowrap;width:100%}.canary--BookmarkTabs-Wrapper{display:inline-flex;max-width:100%;overflow-x:auto;width:-moz-max-content;width:max-content}.canary--BookmarkTabs-Wrapper::-webkit-scrollbar:horizontal{display:none;height:0;width:0}.canary--BookmarkTabs-Wrapper::-webkit-scrollbar-thumb:horizontal{display:none}.canary--BookmarkTabs-List{display:inline-flex;height:var(--bookmark-tabs-tab-size);max-width:var(--bookmarks-list-width);width:-moz-max-content;width:max-content}.canary--BookmarkTabs-List>.canary--BookmarkTabsTab{flex:1}.canary--BookmarkTabs-List>.canary--BookmarkTabsTab:not(.canary--BookmarkTabsTab_form_round.canary--BookmarkTabsTab_active):not(.canary--BookmarkTabsTab_form_round:has(+.canary--BookmarkTabsTab_active)):after{background:var(--color-bg-border);content:"";height:var(--bookmark-divider-height);position:absolute;right:0;top:var(--bookmark-divider-top);width:1px}.canary--BookmarkTabs-List:has(+.canary--BookmarkTabs-List>.canary--BookmarkTabsTab:first-child.canary--BookmarkTabsTab_active)>.canary--BookmarkTabsTab_form_round:last-child:after{display:none}.canary--BookmarkTabs-List:last-child>.canary--BookmarkTabsTab:last-child:after{display:none}.canary--BookmarkTabs_form_brick{--bookmark-divider-height:100%;--bookmark-divider-top:0}.canary--BookmarkTabs_form_round{--bookmark-divider-top:calc(var(--space-l)/2);--bookmark-divider-height:calc(100% - var(--space-l))}.canary--BookmarkTabs_size_s{--bookmark-tabs-tab-size:var(--space-2xl)}.canary--BookmarkTabs_size_m{--bookmark-tabs-tab-size:var(--space-3xl)}.canary--BookmarkTabs_view_ghost{background:var(--color-bg-secondary)}.canary--BookmarkTabs-Empty{border-bottom:1px solid var(--color-bg-border);flex:auto}.canary--BookmarkTabs-Button{align-items:center;border-bottom:1px solid var(--color-bg-border);display:inline-flex;justify-content:center;min-height:var(--bookmark-tabs-tab-size);min-width:var(--bookmark-tabs-tab-size);position:relative}.canary--BookmarkTabs-Button_type_add:before{background:var(--color-bg-border);content:"";height:var(--bookmark-divider-height);left:0;position:absolute;top:var(--bookmark-divider-top);width:1px}.canary--BookmarkTabs-Block{max-width:100%;width:-moz-max-content;width:max-content}.canary--BookmarkTabs-ScrollControls{align-items:center;display:inline-flex;justify-content:center}.canary--BookmarkTabs-ScrollControls>*{border-right:1px solid var(--color-bg-border)}
@@ -0,0 +1,2 @@
1
+ import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["item","attributes"],_excluded2=["items","value","onCreate","getItemKey","getItemLabel","getItemLeftIcon","getItemRightIcon","getItemAs","getItemRef","getItemAttributes","getItemFixed","onChange","onRemove","renderItem","size","form","view","withNavigationButtons","className","id"];import"./BookmarkTabs.css";import{IconAdd}from"@consta/icons/IconAdd";import{IconArrowLeft}from"@consta/icons/IconArrowLeft";import{IconArrowRight}from"@consta/icons/IconArrowRight";import React,{forwardRef}from"react";import{useComponentSize}from"../../hooks/useComponentSize";import{useForkRef}from"../../hooks/useForkRef";import{cnCanary as cn}from"../../utils/bem";import{Button}from"../Button";import{BookmarkTabsTab}from"./BookmarkTabsTab";import{withDefaultGetters}from"./helper";import{bookmarkTabsPropFormDefault,bookmarkTabsPropSizeDefault,bookmarkTabsPropViewDefault}from"./types";import{useBookmarkTabs}from"./useBookmarkTabs";export var cnBookmarkTabs=cn("BookmarkTabs");var renderItemDefault=function(a){var b=a.item,c=a.attributes,d=void 0===c?{}:c,e=_objectWithoutProperties(a,_excluded);return React.createElement(BookmarkTabsTab,Object.assign({},d,e))},BookmarkTabsRender=function(a,b){var c=withDefaultGetters(a),d=c.items,e=void 0===d?[]:d,f=c.value,g=c.onCreate,h=c.getItemKey,i=c.getItemLabel,j=c.getItemLeftIcon,k=c.getItemRightIcon,l=c.getItemAs,m=c.getItemRef,n=c.getItemAttributes,o=c.getItemFixed,p=c.onChange,q=c.onRemove,r=c.renderItem,s=void 0===r?renderItemDefault:r,t=c.size,u=void 0===t?bookmarkTabsPropSizeDefault:t,v=c.form,w=void 0===v?bookmarkTabsPropFormDefault:v,x=c.view,y=void 0===x?bookmarkTabsPropViewDefault:x,z=c.withNavigationButtons,A=c.className,B=c.id,C=_objectWithoutProperties(c,_excluded2),D=function(a){return!!f&&h(a)===h(f)},E=useBookmarkTabs({items:e,getItemFixed:o,size:u,withNavigationButtons:z,withAddButton:!!g}),F=E.refs,G=E.fixedTabs,H=E.fixedTabsRef,I=E.otherTabs,J=E.otherTabsRef,K=E.showControls,L=E.wrapperRef,M=E.containerRef,N=E.controlsRef,O=E.addButtonRef,P=E.navigate,Q=E.sizes,R=useComponentSize(H),S=R.width,T=function(a,b,c,d){var e;return s({item:a,onClick:function onClick(b){return null===p||void 0===p?void 0:p(a,{e:b})},active:D(a),label:i(a),leftIcon:j(a),rightIcon:k(a),as:null!==(e=l(a))&&void 0!==e?e:"button",attributes:n(a),tabRef:m(a),controlRef:c,fixed:b,onClose:q?function(b){return q(a,{e:b})}:void 0,size:u,view:y,form:w,tabWidth:d})};return React.createElement("div",Object.assign({className:cnBookmarkTabs({size:u,view:y,form:w},[A]),ref:useForkRef([b,M]),id:B},C),K&&React.createElement("div",{ref:N,className:cnBookmarkTabs("ScrollControls")},React.createElement("div",{className:cnBookmarkTabs("Button")},React.createElement(Button,{view:"clear",size:"xs",type:"button",onClick:function onClick(){return P("prev")},iconLeft:IconArrowLeft,onlyIcon:!0})),React.createElement("div",{className:cnBookmarkTabs("Button")},React.createElement(Button,{view:"clear",size:"xs",onClick:function onClick(){return P("next")},iconLeft:IconArrowRight,onlyIcon:!0}))),React.createElement("div",{ref:L,className:cnBookmarkTabs("Wrapper")},React.createElement("div",{style:_defineProperty({},"--bookmarks-list-width","max-content"),ref:H,className:cnBookmarkTabs("List")},G.map(function(a,b){return React.createElement(React.Fragment,{key:h(a)},T(a,!0,F[b]))})),React.createElement("div",{style:_defineProperty({},"--bookmarks-list-width","calc(100% - ".concat(S,"px)")),className:cnBookmarkTabs("List"),ref:J},I.map(function(a,b){return React.createElement(React.Fragment,{key:h(a)},T(a,!1,F[G.length+b],Q[b]))}))),g&&React.createElement("div",{ref:O,className:cnBookmarkTabs("Button",{type:"add"})},React.createElement(Button,{view:"clear",size:"xs",onClick:g,iconLeft:IconAdd,onlyIcon:!0})),React.createElement("div",{className:cnBookmarkTabs("Empty")}))};export var BookmarkTabs=forwardRef(BookmarkTabsRender);
2
+ //# sourceMappingURL=BookmarkTabsCanary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BookmarkTabsCanary.js","names":["IconAdd","IconArrowLeft","IconArrowRight","React","forwardRef","useComponentSize","useForkRef","cnCanary","cn","Button","BookmarkTabsTab","withDefaultGetters","bookmarkTabsPropFormDefault","bookmarkTabsPropSizeDefault","bookmarkTabsPropViewDefault","useBookmarkTabs","cnBookmarkTabs","renderItemDefault","props","_item","item","attributes","otherProps","BookmarkTabsRender","ref","items","value","onCreate","getItemKey","getItemLabel","getItemLeftIcon","getItemRightIcon","getItemAs","getItemRef","getItemAttributes","getItemFixed","onChange","onRemove","renderItem","renderItemProp","size","form","view","withNavigationButtons","className","id","getItemActive","withAddButton","refs","fixedTabs","fixedTabsRef","otherTabs","otherTabsRef","showControls","wrapperRef","containerRef","controlsRef","addButtonRef","navigate","sizes","fixedWidth","width","fixed","controlRef","tabWidth","onClick","e","active","label","leftIcon","rightIcon","as","tabRef","onClose","map","index","length","type","BookmarkTabs"],"sources":["../../../../../src/components/BookmarkTabsCanary/BookmarkTabsCanary.tsx"],"sourcesContent":["import './BookmarkTabs.css';\n\nimport { IconAdd } from '@consta/icons/IconAdd';\nimport { IconArrowLeft } from '@consta/icons/IconArrowLeft';\nimport { IconArrowRight } from '@consta/icons/IconArrowRight';\nimport React, { forwardRef } from 'react';\n\nimport { useComponentSize } from '##/hooks/useComponentSize';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { cnCanary as cn } from '##/utils/bem';\n\nimport { Button } from '../Button';\nimport { BookmarkTabsTab } from './BookmarkTabsTab';\nimport { withDefaultGetters } from './helper';\nimport {\n BookmarkTabsComponent,\n bookmarkTabsPropFormDefault,\n BookmarkTabsProps,\n bookmarkTabsPropSizeDefault,\n bookmarkTabsPropViewDefault,\n BookmarkTabsRenderItemProps,\n} from './types';\nimport { useBookmarkTabs } from './useBookmarkTabs';\n\nexport const cnBookmarkTabs = cn('BookmarkTabs');\n\nconst renderItemDefault = <ITEM,>(\n props: BookmarkTabsRenderItemProps<ITEM>,\n): React.ReactElement => {\n const { item: _item, attributes = {}, ...otherProps } = props;\n return <BookmarkTabsTab {...attributes} {...otherProps} />;\n};\n\nconst BookmarkTabsRender = (\n props: BookmarkTabsProps,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const {\n items = [],\n value,\n onCreate,\n getItemKey,\n getItemLabel,\n getItemLeftIcon,\n getItemRightIcon,\n getItemAs,\n getItemRef,\n getItemAttributes,\n getItemFixed,\n onChange,\n onRemove,\n renderItem: renderItemProp = renderItemDefault,\n size = bookmarkTabsPropSizeDefault,\n form = bookmarkTabsPropFormDefault,\n view = bookmarkTabsPropViewDefault,\n withNavigationButtons,\n className,\n id,\n ...otherProps\n } = withDefaultGetters(props);\n\n type Item = typeof items[number];\n\n const getItemActive = (item: Item) => {\n return value ? getItemKey(item) === getItemKey(value) : false;\n };\n\n const {\n refs,\n fixedTabs,\n fixedTabsRef,\n otherTabs,\n otherTabsRef,\n showControls,\n wrapperRef,\n containerRef,\n controlsRef,\n addButtonRef,\n navigate,\n sizes,\n } = useBookmarkTabs({\n items,\n getItemFixed,\n size,\n withNavigationButtons,\n withAddButton: !!onCreate,\n });\n\n const { width: fixedWidth } = useComponentSize(fixedTabsRef);\n\n const renderItem = (\n item: Item,\n fixed: boolean,\n controlRef: React.RefObject<HTMLElement>,\n tabWidth?: string,\n ) =>\n renderItemProp({\n item,\n onClick: (e) => onChange?.(item, { e }),\n active: getItemActive(item),\n label: getItemLabel(item),\n leftIcon: getItemLeftIcon(item),\n rightIcon: getItemRightIcon(item),\n as: getItemAs(item) ?? 'button',\n attributes: getItemAttributes(item),\n tabRef: getItemRef(item),\n controlRef,\n fixed,\n onClose: onRemove ? (e) => onRemove(item, { e }) : undefined,\n size,\n view,\n form,\n tabWidth,\n });\n\n return (\n <div\n className={cnBookmarkTabs({ size, view, form }, [className])}\n ref={useForkRef([ref, containerRef])}\n id={id}\n {...otherProps}\n >\n {showControls && (\n <div ref={controlsRef} className={cnBookmarkTabs('ScrollControls')}>\n <div className={cnBookmarkTabs('Button')}>\n <Button\n view=\"clear\"\n size=\"xs\"\n type=\"button\"\n onClick={() => navigate('prev')}\n iconLeft={IconArrowLeft}\n onlyIcon\n />\n </div>\n <div className={cnBookmarkTabs('Button')}>\n <Button\n view=\"clear\"\n size=\"xs\"\n onClick={() => navigate('next')}\n iconLeft={IconArrowRight}\n onlyIcon\n />\n </div>\n </div>\n )}\n <div ref={wrapperRef} className={cnBookmarkTabs('Wrapper')}>\n <div\n style={{\n ['--bookmarks-list-width' as string]: `max-content`,\n }}\n ref={fixedTabsRef}\n className={cnBookmarkTabs('List')}\n >\n {fixedTabs.map((item, index) => (\n <React.Fragment key={getItemKey(item)}>\n {renderItem(item, true, refs[index])}\n </React.Fragment>\n ))}\n </div>\n <div\n style={{\n ['--bookmarks-list-width' as string]: `calc(100% - ${fixedWidth}px)`,\n }}\n className={cnBookmarkTabs('List')}\n ref={otherTabsRef}\n >\n {otherTabs.map((item, index) => (\n <React.Fragment key={getItemKey(item)}>\n {renderItem(\n item,\n false,\n refs[fixedTabs.length + index],\n sizes[index],\n )}\n </React.Fragment>\n ))}\n </div>\n </div>\n {onCreate && (\n <div\n ref={addButtonRef}\n className={cnBookmarkTabs('Button', { type: 'add' })}\n >\n <Button\n view=\"clear\"\n size=\"xs\"\n onClick={onCreate}\n iconLeft={IconAdd}\n onlyIcon\n />\n </div>\n )}\n <div className={cnBookmarkTabs('Empty')} />\n </div>\n );\n};\n\nexport const BookmarkTabs = forwardRef(\n BookmarkTabsRender,\n) as BookmarkTabsComponent;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- .BookmarkTabsTab{--bookmark-tabs-tab-close-size:0px;--bookmark-tabs-tab-right-icon-size:0px;align-items:center;background:none;border:none;box-sizing:border-box;cursor:pointer;display:inline-flex;height:var(--bookmark-tabs-tab-size);max-height:100%;max-width:200px;min-width:calc(var(--bookmark-tabs-tab-close-size) + var(--bookmark-tabs-tab-right-icon-size) + var(--bookmark-tabs-tab-left-icon-size) + var(--space-3xl) + var(--space-m));overflow:hidden;padding:var(--bookmark-tabs-tab-padding-top) var(--space-xs);position:relative;transition:background-color .3s,box-shadow .3s;width:var(--bookmarks-tab-width)}.BookmarkTabsTab:hover,.BookmarkTabsTab:not(.BookmarkTabsTab_active):focus{--bookmark-tabs-tab-color:var(--color-control-typo-ghost-hover);background-color:var(--color-control-bg-ghost-hover)}.BookmarkTabsTab:not(.BookmarkTabsTab_active){border-bottom:1px solid var(--color-bg-border)}.BookmarkTabsTab:not(.BookmarkTabsTab_withLeftIcon){--bookmark-tabs-tab-left-icon-size:0px}.BookmarkTabsTab_withCloseButton{--bookmark-tabs-tab-close-size:var(--space-2xl)}.BookmarkTabsTab_withRightIcon{--bookmark-tabs-tab-right-icon-size:var(--space-l)}.BookmarkTabsTab_view_ghost{--bookmark-tabs-tab-color:var(--color-typo-primary);background:var(--color-bg-secondary)}.BookmarkTabsTab_view_clear{--bookmark-tabs-tab-color:var(--color-typo-secondary)}.BookmarkTabsTab_size_s{--bookmark-tabs-tab-size:var(--space-2xl);--bookmark-tabs-tab-padding-top:var(--space-2xs);--bookmark-tabs-tab-left-icon-size:var(--space-l)}.BookmarkTabsTab_size_m{--bookmark-tabs-tab-size:var(--space-3xl);--bookmark-tabs-tab-padding-top:var(--space-xs);--bookmark-tabs-tab-left-icon-size:var(--space-2xl)}.BookmarkTabsTab_form_round{border-radius:var(--space-xs) var(--space-xs) 0 0}.BookmarkTabsTab_form_round.BookmarkTabsTab_active{border-left:1px solid var(--color-bg-border);border-right:1px solid var(--color-bg-border);border-top:1px solid var(--color-bg-border);padding-top:calc(var(--bookmark-tabs-tab-padding-top) - 1px)}.BookmarkTabsTab_fixed{--bookmark-tabs-tab-padding-top:var(--space-xs);min-width:var(--bookmark-tabs-tab-size);width:var(--bookmark-tabs-tab-size)}.BookmarkTabsTab_active{--bookmark-tabs-tab-color:var(--color-typo-primary);background:var(--color-bg-default)}.BookmarkTabsTab-Icon_side_left,.BookmarkTabsTab-Label.Text{color:var(--bookmark-tabs-tab-color);transition:color .3s}.BookmarkTabsTab-Icon{display:block;min-width:var(--icon-size)}.BookmarkTabsTab-Label{flex:auto;min-width:var(--space-3xl);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
1
+ .canary--BookmarkTabsTab{--bookmark-tabs-tab-close-size:0px;--bookmark-tabs-tab-right-icon-size:0px;align-items:center;background:none;border:none;box-sizing:border-box;cursor:pointer;display:inline-flex;height:var(--bookmark-tabs-tab-size);max-height:100%;max-width:200px;min-width:calc(var(--bookmark-tabs-tab-close-size) + var(--bookmark-tabs-tab-right-icon-size) + var(--bookmark-tabs-tab-left-icon-size) + var(--space-3xl) + var(--space-m));overflow:hidden;padding:var(--bookmark-tabs-tab-padding-top) var(--space-xs);position:relative;transition:background-color .3s,box-shadow .3s;width:var(--bookmarks-tab-width)}.canary--BookmarkTabsTab:hover,.canary--BookmarkTabsTab:not(.canary--BookmarkTabsTab_active):focus{--bookmark-tabs-tab-color:var(--color-control-typo-ghost-hover);background-color:var(--color-control-bg-ghost-hover)}.canary--BookmarkTabsTab:not(.canary--BookmarkTabsTab_active){border-bottom:1px solid var(--color-bg-border)}.canary--BookmarkTabsTab:not(.canary--BookmarkTabsTab_withLeftIcon){--bookmark-tabs-tab-left-icon-size:0px}.canary--BookmarkTabsTab_withCloseButton{--bookmark-tabs-tab-close-size:var(--space-2xl)}.canary--BookmarkTabsTab_withRightIcon{--bookmark-tabs-tab-right-icon-size:var(--space-l)}.canary--BookmarkTabsTab_view_ghost{--bookmark-tabs-tab-color:var(--color-typo-primary);background:var(--color-bg-secondary)}.canary--BookmarkTabsTab_view_clear{--bookmark-tabs-tab-color:var(--color-typo-secondary)}.canary--BookmarkTabsTab_size_s{--bookmark-tabs-tab-size:var(--space-2xl);--bookmark-tabs-tab-padding-top:var(--space-2xs);--bookmark-tabs-tab-left-icon-size:var(--space-l)}.canary--BookmarkTabsTab_size_m{--bookmark-tabs-tab-size:var(--space-3xl);--bookmark-tabs-tab-padding-top:var(--space-xs);--bookmark-tabs-tab-left-icon-size:var(--space-2xl)}.canary--BookmarkTabsTab_form_round{border-radius:var(--space-xs) var(--space-xs) 0 0}.canary--BookmarkTabsTab_form_round.canary--BookmarkTabsTab_active{border-left:1px solid var(--color-bg-border);border-right:1px solid var(--color-bg-border);border-top:1px solid var(--color-bg-border);padding-top:calc(var(--bookmark-tabs-tab-padding-top) - 1px)}.canary--BookmarkTabsTab_fixed{--bookmark-tabs-tab-padding-top:var(--space-xs);min-width:var(--bookmark-tabs-tab-size);width:var(--bookmark-tabs-tab-size)}.canary--BookmarkTabsTab_active{--bookmark-tabs-tab-color:var(--color-typo-primary);background:var(--color-bg-default)}.canary--BookmarkTabsTab-Icon_side_left,.canary--BookmarkTabsTab-Label.Text{color:var(--bookmark-tabs-tab-color);transition:color .3s}.canary--BookmarkTabsTab-Icon{display:block;min-width:var(--icon-size)}.canary--BookmarkTabsTab-Label{flex:auto;min-width:var(--space-3xl);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@@ -1,2 +1,2 @@
1
- import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["label","leftIcon","rightIcon","as","onClick","size","form","active","fixed","tabRef","controlRef","onClose","view","className","tabWidth","style"];function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}import"./BookmarkTabsTab.css";import{IconClose}from"@consta/icons/IconClose";import React,{forwardRef}from"react";import{Button}from"../../Button";import{Text}from"../../Text";import{useForkRef}from"../../../hooks/useForkRef";import{cnMixSpace}from"../../../mixs/MixSpace";import{cn}from"../../../utils/bem";export var cnBookmarkTabsTab=cn("BookmarkTabsTab");var BookmarkTabsTabRender=function(a,b){var c=a.label,d=a.leftIcon,e=a.rightIcon,f=a.as,g=void 0===f?"button":f,h=a.onClick,i=a.size,j=a.form,k=a.active,l=a.fixed,m=a.tabRef,n=a.controlRef,o=a.onClose,p=a.view,q=a.className,r=a.tabWidth,s=void 0===r?"100%":r,t=a.style,u=_objectWithoutProperties(a,_excluded);return React.createElement(g,Object.assign({className:cnBookmarkTabsTab({size:i,form:j,view:p,active:k,fixed:l,withCloseButton:!!o,withLeftIcon:!!d,withRightIcon:!!e},[q]),role:"tab",type:"button",onClick:h,ref:useForkRef([b,m,n]),style:_objectSpread(_defineProperty({},"--bookmarks-tab-width",s),t)},u),d&&React.createElement(d,{className:cnBookmarkTabsTab("Icon",{side:"left"},[l?void 0:cnMixSpace({mR:"s"===i?"2xs":"xs"})]),size:i}),!l&&React.createElement(React.Fragment,null,React.createElement(Text,{align:"left",className:cnBookmarkTabsTab("Label"),size:i},c),e&&React.createElement(e,{className:cnBookmarkTabsTab("Icon",{side:"right"},[cnMixSpace({mL:"xs"})]),size:"xs",view:"secondary"}),o&&React.createElement(Button,{size:"xs",onlyIcon:!0,as:"div",view:"clear",className:cnBookmarkTabsTab("Button",[cnMixSpace({mL:"xs"})]),onClick:o,iconLeft:IconClose})))};export var BookmarkTabsTab=forwardRef(BookmarkTabsTabRender);
1
+ import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["label","leftIcon","rightIcon","as","onClick","size","form","active","fixed","tabRef","controlRef","onClose","view","className","tabWidth","style"];function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}import"./BookmarkTabsTab.css";import{IconClose}from"@consta/icons/IconClose";import React,{forwardRef}from"react";import{Button}from"../../Button";import{Text}from"../../Text";import{useForkRef}from"../../../hooks/useForkRef";import{cnMixSpace}from"../../../mixs/MixSpace";import{cnCanary as cn}from"../../../utils/bem";export var cnBookmarkTabsTab=cn("BookmarkTabsTab");var BookmarkTabsTabRender=function(a,b){var c=a.label,d=a.leftIcon,e=a.rightIcon,f=a.as,g=void 0===f?"button":f,h=a.onClick,i=a.size,j=a.form,k=a.active,l=a.fixed,m=a.tabRef,n=a.controlRef,o=a.onClose,p=a.view,q=a.className,r=a.tabWidth,s=void 0===r?"100%":r,t=a.style,u=_objectWithoutProperties(a,_excluded);return React.createElement(g,Object.assign({className:cnBookmarkTabsTab({size:i,form:j,view:p,active:k,fixed:l,withCloseButton:!!o,withLeftIcon:!!d,withRightIcon:!!e},[q]),role:"tab",type:"button",onClick:h,ref:useForkRef([b,m,n]),style:_objectSpread(_defineProperty({},"--bookmarks-tab-width",s),t)},u),d&&React.createElement(d,{className:cnBookmarkTabsTab("Icon",{side:"left"},[l?void 0:cnMixSpace({mR:"s"===i?"2xs":"xs"})]),size:i}),!l&&React.createElement(React.Fragment,null,React.createElement(Text,{align:"left",className:cnBookmarkTabsTab("Label"),size:i},c),e&&React.createElement(e,{className:cnBookmarkTabsTab("Icon",{side:"right"},[cnMixSpace({mL:"xs"})]),size:"xs",view:"secondary"}),o&&React.createElement(Button,{size:"xs",onlyIcon:!0,as:"div",view:"clear",className:cnBookmarkTabsTab("Button",[cnMixSpace({mL:"xs"})]),onClick:o,iconLeft:IconClose})))};export var BookmarkTabsTab=forwardRef(BookmarkTabsTabRender);
2
2
  //# sourceMappingURL=BookmarkTabsTab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BookmarkTabsTab.js","names":["IconClose","React","forwardRef","Button","Text","useForkRef","cnMixSpace","cn","cnBookmarkTabsTab","BookmarkTabsTabRender","props","ref","label","LeftIcon","leftIcon","RightIcon","rightIcon","as","Tag","onClick","size","form","active","fixed","tabRef","controlRef","onClose","view","className","tabWidth","style","otherProps","withCloseButton","withLeftIcon","withRightIcon","side","mR","mL","BookmarkTabsTab"],"sources":["../../../../../../src/components/BookmarkTabsCanary/BookmarkTabsTab/BookmarkTabsTab.tsx"],"sourcesContent":["import './BookmarkTabsTab.css';\n\nimport { IconClose } from '@consta/icons/IconClose';\nimport React, { forwardRef } from 'react';\n\nimport { Button } from '##/components/Button';\nimport { Text } from '##/components/Text';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { cnMixSpace } from '##/mixs/MixSpace';\nimport { cn } from '##/utils/bem';\n\nimport { BookmarkTabsTabComponent, BookmarkTabsTabProps } from '../types';\n\nexport const cnBookmarkTabsTab = cn('BookmarkTabsTab');\n\nconst BookmarkTabsTabRender = (\n props: BookmarkTabsTabProps,\n ref: React.Ref<HTMLButtonElement>,\n) => {\n const {\n label,\n leftIcon: LeftIcon,\n rightIcon: RightIcon,\n as: Tag = 'button',\n onClick,\n size,\n form,\n active,\n fixed,\n tabRef,\n controlRef,\n onClose,\n view,\n className,\n tabWidth = '100%',\n style,\n ...otherProps\n } = props;\n\n return (\n <Tag\n className={cnBookmarkTabsTab(\n {\n size,\n form,\n view,\n active,\n fixed,\n withCloseButton: !!onClose,\n withLeftIcon: !!LeftIcon,\n withRightIcon: !!RightIcon,\n },\n [className],\n )}\n role=\"tab\"\n type=\"button\"\n onClick={onClick}\n ref={useForkRef([ref, tabRef, controlRef])}\n style={{\n ['--bookmarks-tab-width' as string]: tabWidth,\n ...style,\n }}\n {...otherProps}\n >\n {LeftIcon && (\n <LeftIcon\n className={cnBookmarkTabsTab('Icon', { side: 'left' }, [\n fixed ? undefined : cnMixSpace({ mR: size === 's' ? '2xs' : 'xs' }),\n ])}\n size={size}\n />\n )}\n {!fixed && (\n <>\n <Text align=\"left\" className={cnBookmarkTabsTab('Label')} size={size}>\n {label}\n </Text>\n {RightIcon && (\n <RightIcon\n className={cnBookmarkTabsTab('Icon', { side: 'right' }, [\n cnMixSpace({ mL: 'xs' }),\n ])}\n size=\"xs\"\n view=\"secondary\"\n />\n )}\n {onClose && (\n <Button\n size=\"xs\"\n onlyIcon\n as=\"div\"\n view=\"clear\"\n className={cnBookmarkTabsTab('Button', [\n cnMixSpace({ mL: 'xs' }),\n ])}\n onClick={onClose}\n iconLeft={IconClose}\n />\n )}\n </>\n )}\n </Tag>\n );\n};\n\nexport const BookmarkTabsTab = forwardRef(\n BookmarkTabsTabRender,\n) as BookmarkTabsTabComponent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"BookmarkTabsTab.js","names":["IconClose","React","forwardRef","Button","Text","useForkRef","cnMixSpace","cnCanary","cn","cnBookmarkTabsTab","BookmarkTabsTabRender","props","ref","label","LeftIcon","leftIcon","RightIcon","rightIcon","as","Tag","onClick","size","form","active","fixed","tabRef","controlRef","onClose","view","className","tabWidth","style","otherProps","withCloseButton","withLeftIcon","withRightIcon","side","mR","mL","BookmarkTabsTab"],"sources":["../../../../../../src/components/BookmarkTabsCanary/BookmarkTabsTab/BookmarkTabsTab.tsx"],"sourcesContent":["import './BookmarkTabsTab.css';\n\nimport { IconClose } from '@consta/icons/IconClose';\nimport React, { forwardRef } from 'react';\n\nimport { Button } from '##/components/Button';\nimport { Text } from '##/components/Text';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { cnMixSpace } from '##/mixs/MixSpace';\nimport { cnCanary as cn } from '##/utils/bem';\n\nimport { BookmarkTabsTabComponent, BookmarkTabsTabProps } from '../types';\n\nexport const cnBookmarkTabsTab = cn('BookmarkTabsTab');\n\nconst BookmarkTabsTabRender = (\n props: BookmarkTabsTabProps,\n ref: React.Ref<HTMLButtonElement>,\n) => {\n const {\n label,\n leftIcon: LeftIcon,\n rightIcon: RightIcon,\n as: Tag = 'button',\n onClick,\n size,\n form,\n active,\n fixed,\n tabRef,\n controlRef,\n onClose,\n view,\n className,\n tabWidth = '100%',\n style,\n ...otherProps\n } = props;\n\n return (\n <Tag\n className={cnBookmarkTabsTab(\n {\n size,\n form,\n view,\n active,\n fixed,\n withCloseButton: !!onClose,\n withLeftIcon: !!LeftIcon,\n withRightIcon: !!RightIcon,\n },\n [className],\n )}\n role=\"tab\"\n type=\"button\"\n onClick={onClick}\n ref={useForkRef([ref, tabRef, controlRef])}\n style={{\n ['--bookmarks-tab-width' as string]: tabWidth,\n ...style,\n }}\n {...otherProps}\n >\n {LeftIcon && (\n <LeftIcon\n className={cnBookmarkTabsTab('Icon', { side: 'left' }, [\n fixed ? undefined : cnMixSpace({ mR: size === 's' ? '2xs' : 'xs' }),\n ])}\n size={size}\n />\n )}\n {!fixed && (\n <>\n <Text align=\"left\" className={cnBookmarkTabsTab('Label')} size={size}>\n {label}\n </Text>\n {RightIcon && (\n <RightIcon\n className={cnBookmarkTabsTab('Icon', { side: 'right' }, [\n cnMixSpace({ mL: 'xs' }),\n ])}\n size=\"xs\"\n view=\"secondary\"\n />\n )}\n {onClose && (\n <Button\n size=\"xs\"\n onlyIcon\n as=\"div\"\n view=\"clear\"\n className={cnBookmarkTabsTab('Button', [\n cnMixSpace({ mL: 'xs' }),\n ])}\n onClick={onClose}\n iconLeft={IconClose}\n />\n )}\n </>\n )}\n </Tag>\n );\n};\n\nexport const BookmarkTabsTab = forwardRef(\n BookmarkTabsTabRender,\n) as BookmarkTabsTabComponent;\n"],"mappings":"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"}
@@ -1,2 +1,3 @@
1
- export * from './BookmarkTabs';
1
+ export * from './BookmarkTabsCanary';
2
2
  export * from './BookmarkTabsTab';
3
+ export * from './types';
@@ -1,2 +1,2 @@
1
- export*from"./BookmarkTabs";export*from"./BookmarkTabsTab";
1
+ export*from"./BookmarkTabsCanary";export*from"./BookmarkTabsTab";export*from"./types";
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/BookmarkTabsCanary/index.ts"],"sourcesContent":["export * from './BookmarkTabs';\nexport * from './BookmarkTabsTab';\n"],"mappings":"AAAA,4BACA"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/BookmarkTabsCanary/index.ts"],"sourcesContent":["export * from './BookmarkTabsCanary';\nexport * from './BookmarkTabsTab';\nexport * from './types';\n"],"mappings":"AAAA,kCACA,+BACA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@consta/uikit",
3
- "version": "4.26.0",
3
+ "version": "4.26.1",
4
4
  "keywords": [
5
5
  "ui-kit",
6
6
  "design-system",
@@ -1,2 +0,0 @@
1
- import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["item","attributes"],_excluded2=["items","value","onCreate","getItemKey","getItemLabel","getItemLeftIcon","getItemRightIcon","getItemAs","getItemRef","getItemAttributes","getItemFixed","onChange","onRemove","renderItem","size","form","view","withNavigationButtons","className","id"];import"./BookmarkTabs.css";import{IconAdd}from"@consta/icons/IconAdd";import{IconArrowLeft}from"@consta/icons/IconArrowLeft";import{IconArrowRight}from"@consta/icons/IconArrowRight";import React,{forwardRef}from"react";import{useComponentSize}from"../../hooks/useComponentSize";import{useForkRef}from"../../hooks/useForkRef";import{cn}from"../../utils/bem";import{Button}from"../Button";import{BookmarkTabsTab}from"./BookmarkTabsTab";import{withDefaultGetters}from"./helper";import{bookmarkTabsPropFormDefault,bookmarkTabsPropSizeDefault,bookmarkTabsPropViewDefault}from"./types";import{useBookmarkTabs}from"./useBookmarkTabs";export var cnBookmarkTabs=cn("BookmarkTabs");var renderItemDefault=function(a){var b=a.item,c=a.attributes,d=void 0===c?{}:c,e=_objectWithoutProperties(a,_excluded);return React.createElement(BookmarkTabsTab,Object.assign({},d,e))},BookmarkTabsRender=function(a,b){var c=withDefaultGetters(a),d=c.items,e=void 0===d?[]:d,f=c.value,g=c.onCreate,h=c.getItemKey,i=c.getItemLabel,j=c.getItemLeftIcon,k=c.getItemRightIcon,l=c.getItemAs,m=c.getItemRef,n=c.getItemAttributes,o=c.getItemFixed,p=c.onChange,q=c.onRemove,r=c.renderItem,s=void 0===r?renderItemDefault:r,t=c.size,u=void 0===t?bookmarkTabsPropSizeDefault:t,v=c.form,w=void 0===v?bookmarkTabsPropFormDefault:v,x=c.view,y=void 0===x?bookmarkTabsPropViewDefault:x,z=c.withNavigationButtons,A=c.className,B=c.id,C=_objectWithoutProperties(c,_excluded2),D=function(a){return!!f&&h(a)===h(f)},E=useBookmarkTabs({items:e,getItemFixed:o,size:u,withNavigationButtons:z,withAddButton:!!g}),F=E.refs,G=E.fixedTabs,H=E.fixedTabsRef,I=E.otherTabs,J=E.otherTabsRef,K=E.showControls,L=E.wrapperRef,M=E.containerRef,N=E.controlsRef,O=E.addButtonRef,P=E.navigate,Q=E.sizes,R=useComponentSize(H),S=R.width,T=function(a,b,c,d){var e;return s({item:a,onClick:function onClick(b){return null===p||void 0===p?void 0:p(a,{e:b})},active:D(a),label:i(a),leftIcon:j(a),rightIcon:k(a),as:null!==(e=l(a))&&void 0!==e?e:"button",attributes:n(a),tabRef:m(a),controlRef:c,fixed:b,onClose:q?function(b){return q(a,{e:b})}:void 0,size:u,view:y,form:w,tabWidth:d})};return React.createElement("div",Object.assign({className:cnBookmarkTabs({size:u,view:y,form:w},[A]),ref:useForkRef([b,M]),id:B},C),K&&React.createElement("div",{ref:N,className:cnBookmarkTabs("ScrollControls")},React.createElement("div",{className:cnBookmarkTabs("Button")},React.createElement(Button,{view:"clear",size:"xs",type:"button",onClick:function onClick(){return P("prev")},iconLeft:IconArrowLeft,onlyIcon:!0})),React.createElement("div",{className:cnBookmarkTabs("Button")},React.createElement(Button,{view:"clear",size:"xs",onClick:function onClick(){return P("next")},iconLeft:IconArrowRight,onlyIcon:!0}))),React.createElement("div",{ref:L,className:cnBookmarkTabs("Wrapper")},React.createElement("div",{style:_defineProperty({},"--bookmarks-list-width","max-content"),ref:H,className:cnBookmarkTabs("List")},G.map(function(a,b){return React.createElement(React.Fragment,{key:h(a)},T(a,!0,F[b]))})),React.createElement("div",{style:_defineProperty({},"--bookmarks-list-width","calc(100% - ".concat(S,"px)")),className:cnBookmarkTabs("List"),ref:J},I.map(function(a,b){return React.createElement(React.Fragment,{key:h(a)},T(a,!1,F[G.length+b],Q[b]))}))),g&&React.createElement("div",{ref:O,className:cnBookmarkTabs("Button",{type:"add"})},React.createElement(Button,{view:"clear",size:"xs",onClick:g,iconLeft:IconAdd,onlyIcon:!0})),React.createElement("div",{className:cnBookmarkTabs("Empty")}))};export var BookmarkTabs=forwardRef(BookmarkTabsRender);
2
- //# sourceMappingURL=BookmarkTabs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BookmarkTabs.js","names":["IconAdd","IconArrowLeft","IconArrowRight","React","forwardRef","useComponentSize","useForkRef","cn","Button","BookmarkTabsTab","withDefaultGetters","bookmarkTabsPropFormDefault","bookmarkTabsPropSizeDefault","bookmarkTabsPropViewDefault","useBookmarkTabs","cnBookmarkTabs","renderItemDefault","props","_item","item","attributes","otherProps","BookmarkTabsRender","ref","items","value","onCreate","getItemKey","getItemLabel","getItemLeftIcon","getItemRightIcon","getItemAs","getItemRef","getItemAttributes","getItemFixed","onChange","onRemove","renderItem","renderItemProp","size","form","view","withNavigationButtons","className","id","getItemActive","withAddButton","refs","fixedTabs","fixedTabsRef","otherTabs","otherTabsRef","showControls","wrapperRef","containerRef","controlsRef","addButtonRef","navigate","sizes","fixedWidth","width","fixed","controlRef","tabWidth","onClick","e","active","label","leftIcon","rightIcon","as","tabRef","onClose","map","index","length","type","BookmarkTabs"],"sources":["../../../../../src/components/BookmarkTabsCanary/BookmarkTabs.tsx"],"sourcesContent":["import './BookmarkTabs.css';\n\nimport { IconAdd } from '@consta/icons/IconAdd';\nimport { IconArrowLeft } from '@consta/icons/IconArrowLeft';\nimport { IconArrowRight } from '@consta/icons/IconArrowRight';\nimport React, { forwardRef } from 'react';\n\nimport { useComponentSize } from '##/hooks/useComponentSize';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { cn } from '##/utils/bem';\n\nimport { Button } from '../Button';\nimport { BookmarkTabsTab } from './BookmarkTabsTab';\nimport { withDefaultGetters } from './helper';\nimport {\n BookmarkTabsComponent,\n bookmarkTabsPropFormDefault,\n BookmarkTabsProps,\n bookmarkTabsPropSizeDefault,\n bookmarkTabsPropViewDefault,\n BookmarkTabsRenderItemProps,\n} from './types';\nimport { useBookmarkTabs } from './useBookmarkTabs';\n\nexport const cnBookmarkTabs = cn('BookmarkTabs');\n\nconst renderItemDefault = <ITEM,>(\n props: BookmarkTabsRenderItemProps<ITEM>,\n): React.ReactElement => {\n const { item: _item, attributes = {}, ...otherProps } = props;\n return <BookmarkTabsTab {...attributes} {...otherProps} />;\n};\n\nconst BookmarkTabsRender = (\n props: BookmarkTabsProps,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const {\n items = [],\n value,\n onCreate,\n getItemKey,\n getItemLabel,\n getItemLeftIcon,\n getItemRightIcon,\n getItemAs,\n getItemRef,\n getItemAttributes,\n getItemFixed,\n onChange,\n onRemove,\n renderItem: renderItemProp = renderItemDefault,\n size = bookmarkTabsPropSizeDefault,\n form = bookmarkTabsPropFormDefault,\n view = bookmarkTabsPropViewDefault,\n withNavigationButtons,\n className,\n id,\n ...otherProps\n } = withDefaultGetters(props);\n\n type Item = typeof items[number];\n\n const getItemActive = (item: Item) => {\n return value ? getItemKey(item) === getItemKey(value) : false;\n };\n\n const {\n refs,\n fixedTabs,\n fixedTabsRef,\n otherTabs,\n otherTabsRef,\n showControls,\n wrapperRef,\n containerRef,\n controlsRef,\n addButtonRef,\n navigate,\n sizes,\n } = useBookmarkTabs({\n items,\n getItemFixed,\n size,\n withNavigationButtons,\n withAddButton: !!onCreate,\n });\n\n const { width: fixedWidth } = useComponentSize(fixedTabsRef);\n\n const renderItem = (\n item: Item,\n fixed: boolean,\n controlRef: React.RefObject<HTMLElement>,\n tabWidth?: string,\n ) =>\n renderItemProp({\n item,\n onClick: (e) => onChange?.(item, { e }),\n active: getItemActive(item),\n label: getItemLabel(item),\n leftIcon: getItemLeftIcon(item),\n rightIcon: getItemRightIcon(item),\n as: getItemAs(item) ?? 'button',\n attributes: getItemAttributes(item),\n tabRef: getItemRef(item),\n controlRef,\n fixed,\n onClose: onRemove ? (e) => onRemove(item, { e }) : undefined,\n size,\n view,\n form,\n tabWidth,\n });\n\n return (\n <div\n className={cnBookmarkTabs({ size, view, form }, [className])}\n ref={useForkRef([ref, containerRef])}\n id={id}\n {...otherProps}\n >\n {showControls && (\n <div ref={controlsRef} className={cnBookmarkTabs('ScrollControls')}>\n <div className={cnBookmarkTabs('Button')}>\n <Button\n view=\"clear\"\n size=\"xs\"\n type=\"button\"\n onClick={() => navigate('prev')}\n iconLeft={IconArrowLeft}\n onlyIcon\n />\n </div>\n <div className={cnBookmarkTabs('Button')}>\n <Button\n view=\"clear\"\n size=\"xs\"\n onClick={() => navigate('next')}\n iconLeft={IconArrowRight}\n onlyIcon\n />\n </div>\n </div>\n )}\n <div ref={wrapperRef} className={cnBookmarkTabs('Wrapper')}>\n <div\n style={{\n ['--bookmarks-list-width' as string]: `max-content`,\n }}\n ref={fixedTabsRef}\n className={cnBookmarkTabs('List')}\n >\n {fixedTabs.map((item, index) => (\n <React.Fragment key={getItemKey(item)}>\n {renderItem(item, true, refs[index])}\n </React.Fragment>\n ))}\n </div>\n <div\n style={{\n ['--bookmarks-list-width' as string]: `calc(100% - ${fixedWidth}px)`,\n }}\n className={cnBookmarkTabs('List')}\n ref={otherTabsRef}\n >\n {otherTabs.map((item, index) => (\n <React.Fragment key={getItemKey(item)}>\n {renderItem(\n item,\n false,\n refs[fixedTabs.length + index],\n sizes[index],\n )}\n </React.Fragment>\n ))}\n </div>\n </div>\n {onCreate && (\n <div\n ref={addButtonRef}\n className={cnBookmarkTabs('Button', { type: 'add' })}\n >\n <Button\n view=\"clear\"\n size=\"xs\"\n onClick={onCreate}\n iconLeft={IconAdd}\n onlyIcon\n />\n </div>\n )}\n <div className={cnBookmarkTabs('Empty')} />\n </div>\n );\n};\n\nexport const BookmarkTabs = forwardRef(\n BookmarkTabsRender,\n) as BookmarkTabsComponent;\n"],"mappings":"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"}