@economic/taco 14.1.0-EC-87105-test-release.1 → 14.1.0
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.
- package/dist/charts/components/Pie/util.cjs +1 -1
- package/dist/charts/components/Pie/util.cjs.map +1 -1
- package/dist/charts/components/Pie/util.js +1 -1
- package/dist/charts/components/Pie/util.js.map +1 -1
- package/dist/components/Tabs/Tabs.cjs +4 -4
- package/dist/components/Tabs/Tabs.cjs.map +1 -1
- package/dist/components/Tabs/Tabs.d.ts +2 -2
- package/dist/components/Tabs/Tabs.js +3 -3
- package/dist/components/Tabs/Tabs.js.map +1 -1
- package/dist/components/Tabs/components/{TabPanel.cjs → TabContent.cjs} +5 -4
- package/dist/components/Tabs/components/TabContent.cjs.map +1 -0
- package/dist/components/Tabs/components/{TabPanel.d.ts → TabContent.d.ts} +1 -1
- package/dist/components/Tabs/components/{TabPanel.js → TabContent.js} +5 -4
- package/dist/components/Tabs/components/TabContent.js.map +1 -0
- package/dist/components/Tabs/components/TabList.cjs +2 -1
- package/dist/components/Tabs/components/TabList.cjs.map +1 -1
- package/dist/components/Tabs/components/TabList.js +2 -1
- package/dist/components/Tabs/components/TabList.js.map +1 -1
- package/dist/components/Tabs/components/{Trigger.cjs → TabTrigger.cjs} +3 -2
- package/dist/components/Tabs/components/TabTrigger.cjs.map +1 -0
- package/dist/components/Tabs/components/{Trigger.js → TabTrigger.js} +3 -2
- package/dist/components/Tabs/components/TabTrigger.js.map +1 -0
- package/package.json +4 -4
- package/dist/components/Tabs/components/TabPanel.cjs.map +0 -1
- package/dist/components/Tabs/components/TabPanel.js.map +0 -1
- package/dist/components/Tabs/components/Trigger.cjs.map +0 -1
- package/dist/components/Tabs/components/Trigger.js.map +0 -1
- /package/dist/components/Tabs/components/{Trigger.d.ts → TabTrigger.d.ts} +0 -0
|
@@ -31,7 +31,7 @@ function usePieChart(children, options) {
|
|
|
31
31
|
const pieProps = {
|
|
32
32
|
activeIndex,
|
|
33
33
|
activeShape: (props) => /* @__PURE__ */ React.createElement(ActiveShape, { ...props }),
|
|
34
|
-
children: shapes.map((shape, index) => /* @__PURE__ */ React.createElement(RechartsPrimitive__namespace.Cell, { key:
|
|
34
|
+
children: shapes.map((shape, index) => /* @__PURE__ */ React.createElement(RechartsPrimitive__namespace.Cell, { key: `${index}-${shape.dataKey}`, color: shape.color, fill: shape.fill })),
|
|
35
35
|
// data props
|
|
36
36
|
data: items.filter((item) => !item.isHidden),
|
|
37
37
|
dataKey: "value",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.cjs","sources":["../../../../src/charts/components/Pie/util.tsx"],"sourcesContent":["import React from 'react';\nimport * as RechartsPrimitive from 'recharts';\nimport type { PieSectorDataItem } from 'recharts/types/polar/Pie';\n\nimport type { useChartOptions } from '../useChartData';\nimport { useChart } from '../useChartData';\n\nconst PIE_ACTIVE_WIDTH = 10;\nconst PIE_ACTIVE_WIDTH_OFFSET = 2;\n\nexport function usePieChart<TData extends object>(children: React.ReactNode, options?: useChartOptions) {\n const { items, shapes, activeIndex, setActiveIndex, globalFormatter, toggleItem } = useChart<TData>(children, options);\n const [radius, _setRadius] = React.useState<number>(0);\n\n function setRadius(width: number) {\n _setRadius((width - 2 * (PIE_ACTIVE_WIDTH + PIE_ACTIVE_WIDTH_OFFSET)) / 2);\n }\n\n const pieProps = {\n activeIndex,\n activeShape: (props: PieSectorDataItem) => <ActiveShape {...props} />,\n children: shapes.map((shape, index) => (\n <RechartsPrimitive.Cell key={
|
|
1
|
+
{"version":3,"file":"util.cjs","sources":["../../../../src/charts/components/Pie/util.tsx"],"sourcesContent":["import React from 'react';\nimport * as RechartsPrimitive from 'recharts';\nimport type { PieSectorDataItem } from 'recharts/types/polar/Pie';\n\nimport type { useChartOptions } from '../useChartData';\nimport { useChart } from '../useChartData';\n\nconst PIE_ACTIVE_WIDTH = 10;\nconst PIE_ACTIVE_WIDTH_OFFSET = 2;\n\nexport function usePieChart<TData extends object>(children: React.ReactNode, options?: useChartOptions) {\n const { items, shapes, activeIndex, setActiveIndex, globalFormatter, toggleItem } = useChart<TData>(children, options);\n const [radius, _setRadius] = React.useState<number>(0);\n\n function setRadius(width: number) {\n _setRadius((width - 2 * (PIE_ACTIVE_WIDTH + PIE_ACTIVE_WIDTH_OFFSET)) / 2);\n }\n\n const pieProps = {\n activeIndex,\n activeShape: (props: PieSectorDataItem) => <ActiveShape {...props} />,\n children: shapes.map((shape, index) => (\n <RechartsPrimitive.Cell key={`${index}-${shape.dataKey}`} color={shape.color} fill={shape.fill} />\n )),\n // data props\n data: items.filter(item => !item.isHidden),\n dataKey: 'value',\n nameKey: 'label',\n // style props\n isAnimationActive: false,\n startAngle: 90,\n endAngle: -270,\n stroke: '0',\n labelLine: false,\n outerRadius: radius,\n };\n\n return { pieProps, radius, setRadius, items, activeIndex, setActiveIndex, globalFormatter, toggleItem, shapes };\n}\n\nconst PIE_CHART_HOVER = 10;\nconst PIE_CHART_HOVER_OFFSET = 2;\n\nfunction ActiveShape(props: PieSectorDataItem) {\n const { outerRadius = 0, ...attributes } = props;\n\n return (\n <>\n <RechartsPrimitive.Sector {...attributes} outerRadius={outerRadius} />\n <RechartsPrimitive.Sector\n {...attributes}\n innerRadius={outerRadius + PIE_CHART_HOVER_OFFSET}\n outerRadius={outerRadius + PIE_CHART_HOVER}\n opacity={0.4}\n />\n </>\n );\n}\n"],"names":["useChart","RechartsPrimitive"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAOA,MAAM,mBAAmB;AACzB,MAAM,0BAA0B;AAEzB,SAAS,YAAkC,UAA2B,SAA2B;AACpG,QAAM,EAAE,OAAO,QAAQ,aAAa,gBAAgB,iBAAiB,eAAeA,aAAAA,SAAgB,UAAU,OAAO;AACrH,QAAM,CAAC,QAAQ,UAAU,IAAI,MAAM,SAAiB,CAAC;AAErD,WAAS,UAAU,OAAe;AAC9B,gBAAY,QAAQ,KAAK,mBAAmB,4BAA4B,CAAC;AAAA,EAC7E;AAEA,QAAM,WAAW;AAAA,IACb;AAAA,IACA,aAAa,CAAC,UAA6B,sBAAA,cAAC,aAAA,EAAa,GAAG,OAAO;AAAA,IACnE,UAAU,OAAO,IAAI,CAAC,OAAO,UACzB,sBAAA,cAACC,6BAAkB,MAAlB,EAAuB,KAAK,GAAG,KAAK,IAAI,MAAM,OAAO,IAAI,OAAO,MAAM,OAAO,MAAM,MAAM,KAAA,CAAM,CACnG;AAAA;AAAA,IAED,MAAM,MAAM,OAAO,CAAA,SAAQ,CAAC,KAAK,QAAQ;AAAA,IACzC,SAAS;AAAA,IACT,SAAS;AAAA;AAAA,IAET,mBAAmB;AAAA,IACnB,YAAY;AAAA,IACZ,UAAU;AAAA,IACV,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,aAAa;AAAA,EAAA;AAGjB,SAAO,EAAE,UAAU,QAAQ,WAAW,OAAO,aAAa,gBAAgB,iBAAiB,YAAY,OAAA;AAC3G;AAEA,MAAM,kBAAkB;AACxB,MAAM,yBAAyB;AAE/B,SAAS,YAAY,OAA0B;AAC3C,QAAM,EAAE,cAAc,GAAG,GAAG,eAAe;AAE3C,SACI,sBAAA,cAAA,MAAA,UAAA,0CACKA,6BAAkB,QAAlB,EAA0B,GAAG,YAAY,aAA0B,GACpE,sBAAA;AAAA,IAACA,6BAAkB;AAAA,IAAlB;AAAA,MACI,GAAG;AAAA,MACJ,aAAa,cAAc;AAAA,MAC3B,aAAa,cAAc;AAAA,MAC3B,SAAS;AAAA,IAAA;AAAA,EAAA,CAEjB;AAER;;"}
|
|
@@ -12,7 +12,7 @@ function usePieChart(children, options) {
|
|
|
12
12
|
const pieProps = {
|
|
13
13
|
activeIndex,
|
|
14
14
|
activeShape: (props) => /* @__PURE__ */ React__default.createElement(ActiveShape, { ...props }),
|
|
15
|
-
children: shapes.map((shape, index) => /* @__PURE__ */ React__default.createElement(RechartsPrimitive.Cell, { key:
|
|
15
|
+
children: shapes.map((shape, index) => /* @__PURE__ */ React__default.createElement(RechartsPrimitive.Cell, { key: `${index}-${shape.dataKey}`, color: shape.color, fill: shape.fill })),
|
|
16
16
|
// data props
|
|
17
17
|
data: items.filter((item) => !item.isHidden),
|
|
18
18
|
dataKey: "value",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sources":["../../../../src/charts/components/Pie/util.tsx"],"sourcesContent":["import React from 'react';\nimport * as RechartsPrimitive from 'recharts';\nimport type { PieSectorDataItem } from 'recharts/types/polar/Pie';\n\nimport type { useChartOptions } from '../useChartData';\nimport { useChart } from '../useChartData';\n\nconst PIE_ACTIVE_WIDTH = 10;\nconst PIE_ACTIVE_WIDTH_OFFSET = 2;\n\nexport function usePieChart<TData extends object>(children: React.ReactNode, options?: useChartOptions) {\n const { items, shapes, activeIndex, setActiveIndex, globalFormatter, toggleItem } = useChart<TData>(children, options);\n const [radius, _setRadius] = React.useState<number>(0);\n\n function setRadius(width: number) {\n _setRadius((width - 2 * (PIE_ACTIVE_WIDTH + PIE_ACTIVE_WIDTH_OFFSET)) / 2);\n }\n\n const pieProps = {\n activeIndex,\n activeShape: (props: PieSectorDataItem) => <ActiveShape {...props} />,\n children: shapes.map((shape, index) => (\n <RechartsPrimitive.Cell key={
|
|
1
|
+
{"version":3,"file":"util.js","sources":["../../../../src/charts/components/Pie/util.tsx"],"sourcesContent":["import React from 'react';\nimport * as RechartsPrimitive from 'recharts';\nimport type { PieSectorDataItem } from 'recharts/types/polar/Pie';\n\nimport type { useChartOptions } from '../useChartData';\nimport { useChart } from '../useChartData';\n\nconst PIE_ACTIVE_WIDTH = 10;\nconst PIE_ACTIVE_WIDTH_OFFSET = 2;\n\nexport function usePieChart<TData extends object>(children: React.ReactNode, options?: useChartOptions) {\n const { items, shapes, activeIndex, setActiveIndex, globalFormatter, toggleItem } = useChart<TData>(children, options);\n const [radius, _setRadius] = React.useState<number>(0);\n\n function setRadius(width: number) {\n _setRadius((width - 2 * (PIE_ACTIVE_WIDTH + PIE_ACTIVE_WIDTH_OFFSET)) / 2);\n }\n\n const pieProps = {\n activeIndex,\n activeShape: (props: PieSectorDataItem) => <ActiveShape {...props} />,\n children: shapes.map((shape, index) => (\n <RechartsPrimitive.Cell key={`${index}-${shape.dataKey}`} color={shape.color} fill={shape.fill} />\n )),\n // data props\n data: items.filter(item => !item.isHidden),\n dataKey: 'value',\n nameKey: 'label',\n // style props\n isAnimationActive: false,\n startAngle: 90,\n endAngle: -270,\n stroke: '0',\n labelLine: false,\n outerRadius: radius,\n };\n\n return { pieProps, radius, setRadius, items, activeIndex, setActiveIndex, globalFormatter, toggleItem, shapes };\n}\n\nconst PIE_CHART_HOVER = 10;\nconst PIE_CHART_HOVER_OFFSET = 2;\n\nfunction ActiveShape(props: PieSectorDataItem) {\n const { outerRadius = 0, ...attributes } = props;\n\n return (\n <>\n <RechartsPrimitive.Sector {...attributes} outerRadius={outerRadius} />\n <RechartsPrimitive.Sector\n {...attributes}\n innerRadius={outerRadius + PIE_CHART_HOVER_OFFSET}\n outerRadius={outerRadius + PIE_CHART_HOVER}\n opacity={0.4}\n />\n </>\n );\n}\n"],"names":["React"],"mappings":";;;AAOA,MAAM,mBAAmB;AACzB,MAAM,0BAA0B;AAEzB,SAAS,YAAkC,UAA2B,SAA2B;AACpG,QAAM,EAAE,OAAO,QAAQ,aAAa,gBAAgB,iBAAiB,eAAe,SAAgB,UAAU,OAAO;AACrH,QAAM,CAAC,QAAQ,UAAU,IAAIA,eAAM,SAAiB,CAAC;AAErD,WAAS,UAAU,OAAe;AAC9B,gBAAY,QAAQ,KAAK,mBAAmB,4BAA4B,CAAC;AAAA,EAC7E;AAEA,QAAM,WAAW;AAAA,IACb;AAAA,IACA,aAAa,CAAC,UAA6BA,+BAAA,cAAC,aAAA,EAAa,GAAG,OAAO;AAAA,IACnE,UAAU,OAAO,IAAI,CAAC,OAAO,UACzBA,+BAAA,cAAC,kBAAkB,MAAlB,EAAuB,KAAK,GAAG,KAAK,IAAI,MAAM,OAAO,IAAI,OAAO,MAAM,OAAO,MAAM,MAAM,KAAA,CAAM,CACnG;AAAA;AAAA,IAED,MAAM,MAAM,OAAO,CAAA,SAAQ,CAAC,KAAK,QAAQ;AAAA,IACzC,SAAS;AAAA,IACT,SAAS;AAAA;AAAA,IAET,mBAAmB;AAAA,IACnB,YAAY;AAAA,IACZ,UAAU;AAAA,IACV,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,aAAa;AAAA,EAAA;AAGjB,SAAO,EAAE,UAAU,QAAQ,WAAW,OAAO,aAAa,gBAAgB,iBAAiB,YAAY,OAAA;AAC3G;AAEA,MAAM,kBAAkB;AACxB,MAAM,yBAAyB;AAE/B,SAAS,YAAY,OAA0B;AAC3C,QAAM,EAAE,cAAc,GAAG,GAAG,eAAe;AAE3C,SACIA,+BAAA,cAAAA,eAAA,UAAA,mDACK,kBAAkB,QAAlB,EAA0B,GAAG,YAAY,aAA0B,GACpEA,+BAAA;AAAA,IAAC,kBAAkB;AAAA,IAAlB;AAAA,MACI,GAAG;AAAA,MACJ,aAAa,cAAc;AAAA,MAC3B,aAAa,cAAc;AAAA,MAC3B,SAAS;AAAA,IAAA;AAAA,EAAA,CAEjB;AAER;"}
|
|
@@ -5,9 +5,9 @@ const cn = require("clsx");
|
|
|
5
5
|
const React = require("react");
|
|
6
6
|
const useControlled = require("../../hooks/useControlled.cjs");
|
|
7
7
|
const useId = require("../../hooks/useId.cjs");
|
|
8
|
+
const TabContent = require("./components/TabContent.cjs");
|
|
8
9
|
const TabList = require("./components/TabList.cjs");
|
|
9
|
-
const
|
|
10
|
-
const Trigger = require("./components/Trigger.cjs");
|
|
10
|
+
const TabTrigger = require("./components/TabTrigger.cjs");
|
|
11
11
|
const Context = require("./Context.cjs");
|
|
12
12
|
function _interopNamespaceDefault(e) {
|
|
13
13
|
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
@@ -49,7 +49,7 @@ const Tabs = React__namespace.forwardRef(function Tabs2(props, ref) {
|
|
|
49
49
|
return /* @__PURE__ */ React__namespace.createElement(Context.TabContext.Provider, { value: context }, /* @__PURE__ */ React__namespace.createElement(focus.FocusScope, null, /* @__PURE__ */ React__namespace.createElement("div", { ...otherProps, className, "data-taco": "tabs", ref }, children)));
|
|
50
50
|
});
|
|
51
51
|
Tabs.List = TabList.TabList;
|
|
52
|
-
Tabs.Trigger =
|
|
53
|
-
Tabs.Content =
|
|
52
|
+
Tabs.Trigger = TabTrigger.TabTrigger;
|
|
53
|
+
Tabs.Content = TabContent.TabContent;
|
|
54
54
|
exports.Tabs = Tabs;
|
|
55
55
|
//# sourceMappingURL=Tabs.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.cjs","sources":["../../../src/components/Tabs/Tabs.tsx"],"sourcesContent":["import { FocusScope } from '@react-aria/focus';\nimport cn from 'clsx';\nimport * as React from 'react';\n\nimport { useControlled } from '@/hooks/useControlled';\nimport { useId } from '@/hooks/useId';\nimport type { Orientation } from '@/types';\n\nimport type {
|
|
1
|
+
{"version":3,"file":"Tabs.cjs","sources":["../../../src/components/Tabs/Tabs.tsx"],"sourcesContent":["import { FocusScope } from '@react-aria/focus';\nimport cn from 'clsx';\nimport * as React from 'react';\n\nimport { useControlled } from '@/hooks/useControlled';\nimport { useId } from '@/hooks/useId';\nimport type { Orientation } from '@/types';\n\nimport type { TabContentProps } from './components/TabContent';\nimport { TabContent } from './components/TabContent';\nimport type { TabListProps } from './components/TabList';\nimport { TabList } from './components/TabList';\nimport type { TabTriggerProps } from './components/TabTrigger';\nimport { TabTrigger } from './components/TabTrigger';\nimport { TabContext } from './Context';\n\nexport type TabsProps = Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> & {\n /**\n * The controlled value of the tab to activate. Should be used in conjunction with `onChange`.\n */\n id?: string;\n /**\n * Set which tab is selected on mount.\n * This has to be one of the existing ids provided for tabs\n */\n defaultId?: string;\n /**\n * Content should be one or an array of `Tabs.Trigger` components inside `Tabs.List` and then\n * followed by one or an array of `Tabs.Content`.\n * *Note* that there can also be tabs that are rendered conditionally.\n */\n children: React.ReactNode;\n /**\n * Define orientation of tabs.\n * @defaultValue horizontal\n */\n orientation?: Orientation;\n /**\n * Callback that is called when tab is changed.\n */\n onChange?: (id: string) => void;\n};\n\nexport const Tabs = React.forwardRef(function Tabs(props: TabsProps, ref: React.Ref<HTMLDivElement>) {\n const { id, defaultId, children, onChange, orientation = 'horizontal', ...otherProps } = props;\n const className = cn(\n {\n 'flex w-full': orientation === 'vertical',\n },\n props.className\n );\n\n const baseId = useId();\n\n const [activeTabId, setActiveTabId] = useControlled({\n defaultValue: defaultId,\n onChange,\n value: id,\n });\n\n const context = {\n activeTabId,\n baseId,\n onChange: setActiveTabId,\n orientation,\n };\n\n return (\n <TabContext.Provider value={context}>\n <FocusScope>\n <div {...otherProps} className={className} data-taco=\"tabs\" ref={ref}>\n {children}\n </div>\n </FocusScope>\n </TabContext.Provider>\n );\n}) as React.ForwardRefExoticComponent<TabsProps & React.RefAttributes<HTMLDivElement>> & {\n /** Tab list component containing all tab triggers, rendered in a `Tabs` group component */\n List: React.ForwardRefExoticComponent<TabListProps & React.RefAttributes<HTMLDivElement>>;\n /** Tab trigger component rendered in a `Tabs.List` component */\n Trigger: React.ForwardRefExoticComponent<TabTriggerProps & React.RefAttributes<HTMLButtonElement>>;\n /** Tab content component rendered in a `Tabs` group component */\n Content: React.ForwardRefExoticComponent<TabContentProps & React.RefAttributes<HTMLDivElement>>;\n};\n\nTabs.List = TabList;\nTabs.Trigger = TabTrigger;\nTabs.Content = TabContent;\n"],"names":["React","Tabs","useId","useControlled","TabContext","FocusScope","TabList","TabTrigger","TabContent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2CO,MAAM,OAAOA,iBAAM,WAAW,SAASC,MAAK,OAAkB,KAAgC;AACjG,QAAM,EAAE,IAAI,WAAW,UAAU,UAAU,cAAc,cAAc,GAAG,WAAA,IAAe;AACzF,QAAM,YAAY;AAAA,IACd;AAAA,MACI,eAAe,gBAAgB;AAAA,IAAA;AAAA,IAEnC,MAAM;AAAA,EAAA;AAGV,QAAM,SAASC,MAAAA,MAAA;AAEf,QAAM,CAAC,aAAa,cAAc,IAAIC,4BAAc;AAAA,IAChD,cAAc;AAAA,IACd;AAAA,IACA,OAAO;AAAA,EAAA,CACV;AAED,QAAM,UAAU;AAAA,IACZ;AAAA,IACA;AAAA,IACA,UAAU;AAAA,IACV;AAAA,EAAA;AAGJ,wDACKC,QAAAA,WAAW,UAAX,EAAoB,OAAO,0DACvBC,kBAAA,MACGL,iCAAA,cAAC,OAAA,EAAK,GAAG,YAAY,WAAsB,aAAU,QAAO,OACvD,QACL,CACJ,CACJ;AAER,CAAC;AASD,KAAK,OAAOM,QAAAA;AACZ,KAAK,UAAUC,WAAAA;AACf,KAAK,UAAUC,WAAAA;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Orientation } from '../../types';
|
|
2
|
+
import { TabContentProps } from './components/TabContent';
|
|
2
3
|
import { TabListProps } from './components/TabList';
|
|
3
|
-
import {
|
|
4
|
-
import { TabTriggerProps } from './components/Trigger';
|
|
4
|
+
import { TabTriggerProps } from './components/TabTrigger';
|
|
5
5
|
import * as React from 'react';
|
|
6
6
|
export type TabsProps = Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> & {
|
|
7
7
|
/**
|
|
@@ -3,9 +3,9 @@ import cn from "clsx";
|
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
import { useControlled } from "../../hooks/useControlled.js";
|
|
5
5
|
import { useId } from "../../hooks/useId.js";
|
|
6
|
+
import { TabContent } from "./components/TabContent.js";
|
|
6
7
|
import { TabList } from "./components/TabList.js";
|
|
7
|
-
import {
|
|
8
|
-
import { TabTrigger } from "./components/Trigger.js";
|
|
8
|
+
import { TabTrigger } from "./components/TabTrigger.js";
|
|
9
9
|
import { TabContext } from "./Context.js";
|
|
10
10
|
const Tabs = React.forwardRef(function Tabs2(props, ref) {
|
|
11
11
|
const { id, defaultId, children, onChange, orientation = "horizontal", ...otherProps } = props;
|
|
@@ -31,7 +31,7 @@ const Tabs = React.forwardRef(function Tabs2(props, ref) {
|
|
|
31
31
|
});
|
|
32
32
|
Tabs.List = TabList;
|
|
33
33
|
Tabs.Trigger = TabTrigger;
|
|
34
|
-
Tabs.Content =
|
|
34
|
+
Tabs.Content = TabContent;
|
|
35
35
|
export {
|
|
36
36
|
Tabs
|
|
37
37
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.js","sources":["../../../src/components/Tabs/Tabs.tsx"],"sourcesContent":["import { FocusScope } from '@react-aria/focus';\nimport cn from 'clsx';\nimport * as React from 'react';\n\nimport { useControlled } from '@/hooks/useControlled';\nimport { useId } from '@/hooks/useId';\nimport type { Orientation } from '@/types';\n\nimport type {
|
|
1
|
+
{"version":3,"file":"Tabs.js","sources":["../../../src/components/Tabs/Tabs.tsx"],"sourcesContent":["import { FocusScope } from '@react-aria/focus';\nimport cn from 'clsx';\nimport * as React from 'react';\n\nimport { useControlled } from '@/hooks/useControlled';\nimport { useId } from '@/hooks/useId';\nimport type { Orientation } from '@/types';\n\nimport type { TabContentProps } from './components/TabContent';\nimport { TabContent } from './components/TabContent';\nimport type { TabListProps } from './components/TabList';\nimport { TabList } from './components/TabList';\nimport type { TabTriggerProps } from './components/TabTrigger';\nimport { TabTrigger } from './components/TabTrigger';\nimport { TabContext } from './Context';\n\nexport type TabsProps = Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> & {\n /**\n * The controlled value of the tab to activate. Should be used in conjunction with `onChange`.\n */\n id?: string;\n /**\n * Set which tab is selected on mount.\n * This has to be one of the existing ids provided for tabs\n */\n defaultId?: string;\n /**\n * Content should be one or an array of `Tabs.Trigger` components inside `Tabs.List` and then\n * followed by one or an array of `Tabs.Content`.\n * *Note* that there can also be tabs that are rendered conditionally.\n */\n children: React.ReactNode;\n /**\n * Define orientation of tabs.\n * @defaultValue horizontal\n */\n orientation?: Orientation;\n /**\n * Callback that is called when tab is changed.\n */\n onChange?: (id: string) => void;\n};\n\nexport const Tabs = React.forwardRef(function Tabs(props: TabsProps, ref: React.Ref<HTMLDivElement>) {\n const { id, defaultId, children, onChange, orientation = 'horizontal', ...otherProps } = props;\n const className = cn(\n {\n 'flex w-full': orientation === 'vertical',\n },\n props.className\n );\n\n const baseId = useId();\n\n const [activeTabId, setActiveTabId] = useControlled({\n defaultValue: defaultId,\n onChange,\n value: id,\n });\n\n const context = {\n activeTabId,\n baseId,\n onChange: setActiveTabId,\n orientation,\n };\n\n return (\n <TabContext.Provider value={context}>\n <FocusScope>\n <div {...otherProps} className={className} data-taco=\"tabs\" ref={ref}>\n {children}\n </div>\n </FocusScope>\n </TabContext.Provider>\n );\n}) as React.ForwardRefExoticComponent<TabsProps & React.RefAttributes<HTMLDivElement>> & {\n /** Tab list component containing all tab triggers, rendered in a `Tabs` group component */\n List: React.ForwardRefExoticComponent<TabListProps & React.RefAttributes<HTMLDivElement>>;\n /** Tab trigger component rendered in a `Tabs.List` component */\n Trigger: React.ForwardRefExoticComponent<TabTriggerProps & React.RefAttributes<HTMLButtonElement>>;\n /** Tab content component rendered in a `Tabs` group component */\n Content: React.ForwardRefExoticComponent<TabContentProps & React.RefAttributes<HTMLDivElement>>;\n};\n\nTabs.List = TabList;\nTabs.Trigger = TabTrigger;\nTabs.Content = TabContent;\n"],"names":["Tabs"],"mappings":";;;;;;;;;AA2CO,MAAM,OAAO,MAAM,WAAW,SAASA,MAAK,OAAkB,KAAgC;AACjG,QAAM,EAAE,IAAI,WAAW,UAAU,UAAU,cAAc,cAAc,GAAG,WAAA,IAAe;AACzF,QAAM,YAAY;AAAA,IACd;AAAA,MACI,eAAe,gBAAgB;AAAA,IAAA;AAAA,IAEnC,MAAM;AAAA,EAAA;AAGV,QAAM,SAAS,MAAA;AAEf,QAAM,CAAC,aAAa,cAAc,IAAI,cAAc;AAAA,IAChD,cAAc;AAAA,IACd;AAAA,IACA,OAAO;AAAA,EAAA,CACV;AAED,QAAM,UAAU;AAAA,IACZ;AAAA,IACA;AAAA,IACA,UAAU;AAAA,IACV;AAAA,EAAA;AAGJ,6CACK,WAAW,UAAX,EAAoB,OAAO,+CACvB,YAAA,MACG,sBAAA,cAAC,OAAA,EAAK,GAAG,YAAY,WAAsB,aAAU,QAAO,OACvD,QACL,CACJ,CACJ;AAER,CAAC;AASD,KAAK,OAAO;AACZ,KAAK,UAAU;AACf,KAAK,UAAU;"}
|
|
@@ -4,7 +4,7 @@ const cn = require("clsx");
|
|
|
4
4
|
const React = require("react");
|
|
5
5
|
const Context = require("../Context.cjs");
|
|
6
6
|
const utils = require("./utils.cjs");
|
|
7
|
-
const
|
|
7
|
+
const TabContent = React.forwardRef(function Tab(props, ref) {
|
|
8
8
|
const { id, children, forceMount, ...otherProps } = props;
|
|
9
9
|
const context = React.useContext(Context.TabContext);
|
|
10
10
|
const className = cn(
|
|
@@ -24,10 +24,11 @@ const TabPanel = React.forwardRef(function Tab(props, ref) {
|
|
|
24
24
|
"data-state": id === context.activeTabId ? "active" : "inactive",
|
|
25
25
|
hidden: id !== context.activeTabId,
|
|
26
26
|
ref,
|
|
27
|
-
role: "tabpanel"
|
|
27
|
+
role: "tabpanel",
|
|
28
|
+
"data-taco": "tabs-content"
|
|
28
29
|
},
|
|
29
30
|
id === context.activeTabId || forceMount ? children : null
|
|
30
31
|
);
|
|
31
32
|
});
|
|
32
|
-
exports.
|
|
33
|
-
//# sourceMappingURL=
|
|
33
|
+
exports.TabContent = TabContent;
|
|
34
|
+
//# sourceMappingURL=TabContent.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TabContent.cjs","sources":["../../../../src/components/Tabs/components/TabContent.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\n\nimport { TabContext } from '../Context';\n\nimport { createPanelId, createTriggerId } from './utils';\n\nexport type TabContentProps = React.HTMLAttributes<HTMLDivElement> & {\n /**\n * A unique value that associates the content with a trigger.\n */\n id: string;\n\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n};\n\nexport const TabContent = React.forwardRef(function Tab(props: TabContentProps, ref: React.Ref<HTMLDivElement>) {\n const { id, children, forceMount, ...otherProps } = props;\n\n const context = React.useContext(TabContext);\n\n const className = cn(\n 'outline-none [&[aria-orientation=\"vertical\"]]:grow',\n context?.activeTabId === id ? 'block' : 'hidden',\n props.className\n );\n\n const triggerId = createTriggerId(context.baseId, id);\n const panelId = createPanelId(context.baseId, id);\n\n return (\n <div\n {...otherProps}\n aria-labelledby={triggerId}\n id={panelId}\n className={className}\n data-state={id === context.activeTabId ? 'active' : 'inactive'}\n hidden={id !== context.activeTabId}\n ref={ref}\n role=\"tabpanel\"\n data-taco=\"tabs-content\">\n {id === context.activeTabId || forceMount ? children : null}\n </div>\n );\n});\n"],"names":["TabContext","createTriggerId","createPanelId"],"mappings":";;;;;;AAoBO,MAAM,aAAa,MAAM,WAAW,SAAS,IAAI,OAAwB,KAAgC;AAC5G,QAAM,EAAE,IAAI,UAAU,YAAY,GAAG,eAAe;AAEpD,QAAM,UAAU,MAAM,WAAWA,kBAAU;AAE3C,QAAM,YAAY;AAAA,IACd;AAAA,IACA,SAAS,gBAAgB,KAAK,UAAU;AAAA,IACxC,MAAM;AAAA,EAAA;AAGV,QAAM,YAAYC,MAAAA,gBAAgB,QAAQ,QAAQ,EAAE;AACpD,QAAM,UAAUC,MAAAA,cAAc,QAAQ,QAAQ,EAAE;AAEhD,SACI,sBAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAG;AAAA,MACJ,mBAAiB;AAAA,MACjB,IAAI;AAAA,MACJ;AAAA,MACA,cAAY,OAAO,QAAQ,cAAc,WAAW;AAAA,MACpD,QAAQ,OAAO,QAAQ;AAAA,MACvB;AAAA,MACA,MAAK;AAAA,MACL,aAAU;AAAA,IAAA;AAAA,IACT,OAAO,QAAQ,eAAe,aAAa,WAAW;AAAA,EAAA;AAGnE,CAAC;;"}
|
|
@@ -10,7 +10,7 @@ export type TabContentProps = React.HTMLAttributes<HTMLDivElement> & {
|
|
|
10
10
|
*/
|
|
11
11
|
forceMount?: true;
|
|
12
12
|
};
|
|
13
|
-
export declare const
|
|
13
|
+
export declare const TabContent: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
|
|
14
14
|
/**
|
|
15
15
|
* A unique value that associates the content with a trigger.
|
|
16
16
|
*/
|
|
@@ -2,7 +2,7 @@ import cn from "clsx";
|
|
|
2
2
|
import React__default from "react";
|
|
3
3
|
import { TabContext } from "../Context.js";
|
|
4
4
|
import { createTriggerId, createPanelId } from "./utils.js";
|
|
5
|
-
const
|
|
5
|
+
const TabContent = React__default.forwardRef(function Tab(props, ref) {
|
|
6
6
|
const { id, children, forceMount, ...otherProps } = props;
|
|
7
7
|
const context = React__default.useContext(TabContext);
|
|
8
8
|
const className = cn(
|
|
@@ -22,12 +22,13 @@ const TabPanel = React__default.forwardRef(function Tab(props, ref) {
|
|
|
22
22
|
"data-state": id === context.activeTabId ? "active" : "inactive",
|
|
23
23
|
hidden: id !== context.activeTabId,
|
|
24
24
|
ref,
|
|
25
|
-
role: "tabpanel"
|
|
25
|
+
role: "tabpanel",
|
|
26
|
+
"data-taco": "tabs-content"
|
|
26
27
|
},
|
|
27
28
|
id === context.activeTabId || forceMount ? children : null
|
|
28
29
|
);
|
|
29
30
|
});
|
|
30
31
|
export {
|
|
31
|
-
|
|
32
|
+
TabContent
|
|
32
33
|
};
|
|
33
|
-
//# sourceMappingURL=
|
|
34
|
+
//# sourceMappingURL=TabContent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TabContent.js","sources":["../../../../src/components/Tabs/components/TabContent.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\n\nimport { TabContext } from '../Context';\n\nimport { createPanelId, createTriggerId } from './utils';\n\nexport type TabContentProps = React.HTMLAttributes<HTMLDivElement> & {\n /**\n * A unique value that associates the content with a trigger.\n */\n id: string;\n\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n};\n\nexport const TabContent = React.forwardRef(function Tab(props: TabContentProps, ref: React.Ref<HTMLDivElement>) {\n const { id, children, forceMount, ...otherProps } = props;\n\n const context = React.useContext(TabContext);\n\n const className = cn(\n 'outline-none [&[aria-orientation=\"vertical\"]]:grow',\n context?.activeTabId === id ? 'block' : 'hidden',\n props.className\n );\n\n const triggerId = createTriggerId(context.baseId, id);\n const panelId = createPanelId(context.baseId, id);\n\n return (\n <div\n {...otherProps}\n aria-labelledby={triggerId}\n id={panelId}\n className={className}\n data-state={id === context.activeTabId ? 'active' : 'inactive'}\n hidden={id !== context.activeTabId}\n ref={ref}\n role=\"tabpanel\"\n data-taco=\"tabs-content\">\n {id === context.activeTabId || forceMount ? children : null}\n </div>\n );\n});\n"],"names":["React"],"mappings":";;;;AAoBO,MAAM,aAAaA,eAAM,WAAW,SAAS,IAAI,OAAwB,KAAgC;AAC5G,QAAM,EAAE,IAAI,UAAU,YAAY,GAAG,eAAe;AAEpD,QAAM,UAAUA,eAAM,WAAW,UAAU;AAE3C,QAAM,YAAY;AAAA,IACd;AAAA,IACA,SAAS,gBAAgB,KAAK,UAAU;AAAA,IACxC,MAAM;AAAA,EAAA;AAGV,QAAM,YAAY,gBAAgB,QAAQ,QAAQ,EAAE;AACpD,QAAM,UAAU,cAAc,QAAQ,QAAQ,EAAE;AAEhD,SACIA,+BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAG;AAAA,MACJ,mBAAiB;AAAA,MACjB,IAAI;AAAA,MACJ;AAAA,MACA,cAAY,OAAO,QAAQ,cAAc,WAAW;AAAA,MACpD,QAAQ,OAAO,QAAQ;AAAA,MACvB;AAAA,MACA,MAAK;AAAA,MACL,aAAU;AAAA,IAAA;AAAA,IACT,OAAO,QAAQ,eAAe,aAAa,WAAW;AAAA,EAAA;AAGnE,CAAC;"}
|
|
@@ -52,7 +52,8 @@ const TabList = React.forwardRef(function Tab(props, ref) {
|
|
|
52
52
|
role: "tablist",
|
|
53
53
|
className,
|
|
54
54
|
ref,
|
|
55
|
-
onKeyDown: handleKeyDown
|
|
55
|
+
onKeyDown: handleKeyDown,
|
|
56
|
+
"data-taco": "tabs-list"
|
|
56
57
|
},
|
|
57
58
|
/* @__PURE__ */ React.createElement(
|
|
58
59
|
OverflowGroup.OverflowGroup,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabList.cjs","sources":["../../../../src/components/Tabs/components/TabList.tsx"],"sourcesContent":["import { useFocusManager } from '@react-aria/focus';\nimport cn from 'clsx';\nimport React from 'react';\n\nimport { LegacyButton, OverflowGroup } from '@/components';\n\nimport { TabContext } from '../Context';\n\nexport type TabListProps = React.HTMLAttributes<HTMLDivElement>;\n\nconst focusManagerOptions = {\n wrap: true,\n tabbable: false,\n accept: (element: Element) => {\n return element.getAttribute('role') === 'tab';\n },\n};\n\nexport const TabList = React.forwardRef(function Tab(props: TabListProps, ref: React.Ref<HTMLDivElement>) {\n const { children, ...otherProps } = props;\n const className = cn(\n 'm-0 mb-4 flex flex-row border-gray-200 print:hidden',\n 'aria-orientation-horizontal:border-b',\n 'aria-orientation-vertical:m-0 aria-orientation-vertical:mr-4 aria-orientation-vertical:flex-col aria-orientation-vertical:border-r',\n props.className\n );\n\n const context = React.useContext(TabContext);\n const focusManager = useFocusManager();\n\n const handleKeyDown = (event: React.KeyboardEvent) => {\n if (context.orientation === 'horizontal') {\n if (event.key === 'ArrowRight') {\n event.preventDefault();\n focusManager?.focusNext(focusManagerOptions);\n }\n\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n focusManager?.focusPrevious(focusManagerOptions);\n }\n } else if (context.orientation === 'vertical') {\n if (event.key === 'ArrowUp') {\n event.preventDefault();\n focusManager?.focusPrevious(focusManagerOptions);\n }\n\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n focusManager?.focusNext(focusManagerOptions);\n }\n }\n };\n\n return (\n <div\n {...otherProps}\n aria-orientation={context?.orientation}\n role=\"tablist\"\n className={className}\n ref={ref}\n onKeyDown={handleKeyDown}>\n <OverflowGroup\n wrapChild\n className='w-full [[aria-orientation=\"vertical\"]_&]:flex-col'\n moreButton={(text: string) => <LegacyButton>{text}</LegacyButton>}>\n {React.Children.toArray(children).filter(child => {\n if (React.isValidElement<{ hidden?: boolean }>(child)) {\n return !child.props.hidden;\n }\n\n return true;\n })}\n </OverflowGroup>\n </div>\n );\n});\n"],"names":["TabContext","useFocusManager","OverflowGroup","LegacyButton"],"mappings":";;;;;;;;AAUA,MAAM,sBAAsB;AAAA,EACxB,MAAM;AAAA,EACN,UAAU;AAAA,EACV,QAAQ,CAAC,YAAqB;AAC1B,WAAO,QAAQ,aAAa,MAAM,MAAM;AAAA,EAC5C;AACJ;AAEO,MAAM,UAAU,MAAM,WAAW,SAAS,IAAI,OAAqB,KAAgC;AACtG,QAAM,EAAE,UAAU,GAAG,WAAA,IAAe;AACpC,QAAM,YAAY;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA,MAAM;AAAA,EAAA;AAGV,QAAM,UAAU,MAAM,WAAWA,kBAAU;AAC3C,QAAM,eAAeC,MAAAA,gBAAA;AAErB,QAAM,gBAAgB,CAAC,UAA+B;AAClD,QAAI,QAAQ,gBAAgB,cAAc;AACtC,UAAI,MAAM,QAAQ,cAAc;AAC5B,cAAM,eAAA;AACN,sBAAc,UAAU,mBAAmB;AAAA,MAC/C;AAEA,UAAI,MAAM,QAAQ,aAAa;AAC3B,cAAM,eAAA;AACN,sBAAc,cAAc,mBAAmB;AAAA,MACnD;AAAA,IACJ,WAAW,QAAQ,gBAAgB,YAAY;AAC3C,UAAI,MAAM,QAAQ,WAAW;AACzB,cAAM,eAAA;AACN,sBAAc,cAAc,mBAAmB;AAAA,MACnD;AAEA,UAAI,MAAM,QAAQ,aAAa;AAC3B,cAAM,eAAA;AACN,sBAAc,UAAU,mBAAmB;AAAA,MAC/C;AAAA,IACJ;AAAA,EACJ;AAEA,SACI,sBAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAG;AAAA,MACJ,oBAAkB,SAAS;AAAA,MAC3B,MAAK;AAAA,MACL;AAAA,MACA;AAAA,MACA,WAAW;AAAA,IAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"TabList.cjs","sources":["../../../../src/components/Tabs/components/TabList.tsx"],"sourcesContent":["import { useFocusManager } from '@react-aria/focus';\nimport cn from 'clsx';\nimport React from 'react';\n\nimport { LegacyButton, OverflowGroup } from '@/components';\n\nimport { TabContext } from '../Context';\n\nexport type TabListProps = React.HTMLAttributes<HTMLDivElement>;\n\nconst focusManagerOptions = {\n wrap: true,\n tabbable: false,\n accept: (element: Element) => {\n return element.getAttribute('role') === 'tab';\n },\n};\n\nexport const TabList = React.forwardRef(function Tab(props: TabListProps, ref: React.Ref<HTMLDivElement>) {\n const { children, ...otherProps } = props;\n const className = cn(\n 'm-0 mb-4 flex flex-row border-gray-200 print:hidden',\n 'aria-orientation-horizontal:border-b',\n 'aria-orientation-vertical:m-0 aria-orientation-vertical:mr-4 aria-orientation-vertical:flex-col aria-orientation-vertical:border-r',\n props.className\n );\n\n const context = React.useContext(TabContext);\n const focusManager = useFocusManager();\n\n const handleKeyDown = (event: React.KeyboardEvent) => {\n if (context.orientation === 'horizontal') {\n if (event.key === 'ArrowRight') {\n event.preventDefault();\n focusManager?.focusNext(focusManagerOptions);\n }\n\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n focusManager?.focusPrevious(focusManagerOptions);\n }\n } else if (context.orientation === 'vertical') {\n if (event.key === 'ArrowUp') {\n event.preventDefault();\n focusManager?.focusPrevious(focusManagerOptions);\n }\n\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n focusManager?.focusNext(focusManagerOptions);\n }\n }\n };\n\n return (\n <div\n {...otherProps}\n aria-orientation={context?.orientation}\n role=\"tablist\"\n className={className}\n ref={ref}\n onKeyDown={handleKeyDown}\n data-taco=\"tabs-list\">\n <OverflowGroup\n wrapChild\n className='w-full [[aria-orientation=\"vertical\"]_&]:flex-col'\n moreButton={(text: string) => <LegacyButton>{text}</LegacyButton>}>\n {React.Children.toArray(children).filter(child => {\n if (React.isValidElement<{ hidden?: boolean }>(child)) {\n return !child.props.hidden;\n }\n\n return true;\n })}\n </OverflowGroup>\n </div>\n );\n});\n"],"names":["TabContext","useFocusManager","OverflowGroup","LegacyButton"],"mappings":";;;;;;;;AAUA,MAAM,sBAAsB;AAAA,EACxB,MAAM;AAAA,EACN,UAAU;AAAA,EACV,QAAQ,CAAC,YAAqB;AAC1B,WAAO,QAAQ,aAAa,MAAM,MAAM;AAAA,EAC5C;AACJ;AAEO,MAAM,UAAU,MAAM,WAAW,SAAS,IAAI,OAAqB,KAAgC;AACtG,QAAM,EAAE,UAAU,GAAG,WAAA,IAAe;AACpC,QAAM,YAAY;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA,MAAM;AAAA,EAAA;AAGV,QAAM,UAAU,MAAM,WAAWA,kBAAU;AAC3C,QAAM,eAAeC,MAAAA,gBAAA;AAErB,QAAM,gBAAgB,CAAC,UAA+B;AAClD,QAAI,QAAQ,gBAAgB,cAAc;AACtC,UAAI,MAAM,QAAQ,cAAc;AAC5B,cAAM,eAAA;AACN,sBAAc,UAAU,mBAAmB;AAAA,MAC/C;AAEA,UAAI,MAAM,QAAQ,aAAa;AAC3B,cAAM,eAAA;AACN,sBAAc,cAAc,mBAAmB;AAAA,MACnD;AAAA,IACJ,WAAW,QAAQ,gBAAgB,YAAY;AAC3C,UAAI,MAAM,QAAQ,WAAW;AACzB,cAAM,eAAA;AACN,sBAAc,cAAc,mBAAmB;AAAA,MACnD;AAEA,UAAI,MAAM,QAAQ,aAAa;AAC3B,cAAM,eAAA;AACN,sBAAc,UAAU,mBAAmB;AAAA,MAC/C;AAAA,IACJ;AAAA,EACJ;AAEA,SACI,sBAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAG;AAAA,MACJ,oBAAkB,SAAS;AAAA,MAC3B,MAAK;AAAA,MACL;AAAA,MACA;AAAA,MACA,WAAW;AAAA,MACX,aAAU;AAAA,IAAA;AAAA,IACV,sBAAA;AAAA,MAACC,cAAAA;AAAAA,MAAA;AAAA,QACG,WAAS;AAAA,QACT,WAAU;AAAA,QACV,YAAY,CAAC,SAAiB,sBAAA,cAACC,OAAAA,oBAAc,IAAK;AAAA,MAAA;AAAA,MACjD,MAAM,SAAS,QAAQ,QAAQ,EAAE,OAAO,CAAA,UAAS;AAC9C,YAAI,MAAM,eAAqC,KAAK,GAAG;AACnD,iBAAO,CAAC,MAAM,MAAM;AAAA,QACxB;AAEA,eAAO;AAAA,MACX,CAAC;AAAA,IAAA;AAAA,EACL;AAGZ,CAAC;;"}
|
|
@@ -50,7 +50,8 @@ const TabList = React__default.forwardRef(function Tab(props, ref) {
|
|
|
50
50
|
role: "tablist",
|
|
51
51
|
className,
|
|
52
52
|
ref,
|
|
53
|
-
onKeyDown: handleKeyDown
|
|
53
|
+
onKeyDown: handleKeyDown,
|
|
54
|
+
"data-taco": "tabs-list"
|
|
54
55
|
},
|
|
55
56
|
/* @__PURE__ */ React__default.createElement(
|
|
56
57
|
OverflowGroup,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabList.js","sources":["../../../../src/components/Tabs/components/TabList.tsx"],"sourcesContent":["import { useFocusManager } from '@react-aria/focus';\nimport cn from 'clsx';\nimport React from 'react';\n\nimport { LegacyButton, OverflowGroup } from '@/components';\n\nimport { TabContext } from '../Context';\n\nexport type TabListProps = React.HTMLAttributes<HTMLDivElement>;\n\nconst focusManagerOptions = {\n wrap: true,\n tabbable: false,\n accept: (element: Element) => {\n return element.getAttribute('role') === 'tab';\n },\n};\n\nexport const TabList = React.forwardRef(function Tab(props: TabListProps, ref: React.Ref<HTMLDivElement>) {\n const { children, ...otherProps } = props;\n const className = cn(\n 'm-0 mb-4 flex flex-row border-gray-200 print:hidden',\n 'aria-orientation-horizontal:border-b',\n 'aria-orientation-vertical:m-0 aria-orientation-vertical:mr-4 aria-orientation-vertical:flex-col aria-orientation-vertical:border-r',\n props.className\n );\n\n const context = React.useContext(TabContext);\n const focusManager = useFocusManager();\n\n const handleKeyDown = (event: React.KeyboardEvent) => {\n if (context.orientation === 'horizontal') {\n if (event.key === 'ArrowRight') {\n event.preventDefault();\n focusManager?.focusNext(focusManagerOptions);\n }\n\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n focusManager?.focusPrevious(focusManagerOptions);\n }\n } else if (context.orientation === 'vertical') {\n if (event.key === 'ArrowUp') {\n event.preventDefault();\n focusManager?.focusPrevious(focusManagerOptions);\n }\n\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n focusManager?.focusNext(focusManagerOptions);\n }\n }\n };\n\n return (\n <div\n {...otherProps}\n aria-orientation={context?.orientation}\n role=\"tablist\"\n className={className}\n ref={ref}\n onKeyDown={handleKeyDown}>\n <OverflowGroup\n wrapChild\n className='w-full [[aria-orientation=\"vertical\"]_&]:flex-col'\n moreButton={(text: string) => <LegacyButton>{text}</LegacyButton>}>\n {React.Children.toArray(children).filter(child => {\n if (React.isValidElement<{ hidden?: boolean }>(child)) {\n return !child.props.hidden;\n }\n\n return true;\n })}\n </OverflowGroup>\n </div>\n );\n});\n"],"names":["React"],"mappings":";;;;;;AAUA,MAAM,sBAAsB;AAAA,EACxB,MAAM;AAAA,EACN,UAAU;AAAA,EACV,QAAQ,CAAC,YAAqB;AAC1B,WAAO,QAAQ,aAAa,MAAM,MAAM;AAAA,EAC5C;AACJ;AAEO,MAAM,UAAUA,eAAM,WAAW,SAAS,IAAI,OAAqB,KAAgC;AACtG,QAAM,EAAE,UAAU,GAAG,WAAA,IAAe;AACpC,QAAM,YAAY;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA,MAAM;AAAA,EAAA;AAGV,QAAM,UAAUA,eAAM,WAAW,UAAU;AAC3C,QAAM,eAAe,gBAAA;AAErB,QAAM,gBAAgB,CAAC,UAA+B;AAClD,QAAI,QAAQ,gBAAgB,cAAc;AACtC,UAAI,MAAM,QAAQ,cAAc;AAC5B,cAAM,eAAA;AACN,sBAAc,UAAU,mBAAmB;AAAA,MAC/C;AAEA,UAAI,MAAM,QAAQ,aAAa;AAC3B,cAAM,eAAA;AACN,sBAAc,cAAc,mBAAmB;AAAA,MACnD;AAAA,IACJ,WAAW,QAAQ,gBAAgB,YAAY;AAC3C,UAAI,MAAM,QAAQ,WAAW;AACzB,cAAM,eAAA;AACN,sBAAc,cAAc,mBAAmB;AAAA,MACnD;AAEA,UAAI,MAAM,QAAQ,aAAa;AAC3B,cAAM,eAAA;AACN,sBAAc,UAAU,mBAAmB;AAAA,MAC/C;AAAA,IACJ;AAAA,EACJ;AAEA,SACIA,+BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAG;AAAA,MACJ,oBAAkB,SAAS;AAAA,MAC3B,MAAK;AAAA,MACL;AAAA,MACA;AAAA,MACA,WAAW;AAAA,IAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"TabList.js","sources":["../../../../src/components/Tabs/components/TabList.tsx"],"sourcesContent":["import { useFocusManager } from '@react-aria/focus';\nimport cn from 'clsx';\nimport React from 'react';\n\nimport { LegacyButton, OverflowGroup } from '@/components';\n\nimport { TabContext } from '../Context';\n\nexport type TabListProps = React.HTMLAttributes<HTMLDivElement>;\n\nconst focusManagerOptions = {\n wrap: true,\n tabbable: false,\n accept: (element: Element) => {\n return element.getAttribute('role') === 'tab';\n },\n};\n\nexport const TabList = React.forwardRef(function Tab(props: TabListProps, ref: React.Ref<HTMLDivElement>) {\n const { children, ...otherProps } = props;\n const className = cn(\n 'm-0 mb-4 flex flex-row border-gray-200 print:hidden',\n 'aria-orientation-horizontal:border-b',\n 'aria-orientation-vertical:m-0 aria-orientation-vertical:mr-4 aria-orientation-vertical:flex-col aria-orientation-vertical:border-r',\n props.className\n );\n\n const context = React.useContext(TabContext);\n const focusManager = useFocusManager();\n\n const handleKeyDown = (event: React.KeyboardEvent) => {\n if (context.orientation === 'horizontal') {\n if (event.key === 'ArrowRight') {\n event.preventDefault();\n focusManager?.focusNext(focusManagerOptions);\n }\n\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n focusManager?.focusPrevious(focusManagerOptions);\n }\n } else if (context.orientation === 'vertical') {\n if (event.key === 'ArrowUp') {\n event.preventDefault();\n focusManager?.focusPrevious(focusManagerOptions);\n }\n\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n focusManager?.focusNext(focusManagerOptions);\n }\n }\n };\n\n return (\n <div\n {...otherProps}\n aria-orientation={context?.orientation}\n role=\"tablist\"\n className={className}\n ref={ref}\n onKeyDown={handleKeyDown}\n data-taco=\"tabs-list\">\n <OverflowGroup\n wrapChild\n className='w-full [[aria-orientation=\"vertical\"]_&]:flex-col'\n moreButton={(text: string) => <LegacyButton>{text}</LegacyButton>}>\n {React.Children.toArray(children).filter(child => {\n if (React.isValidElement<{ hidden?: boolean }>(child)) {\n return !child.props.hidden;\n }\n\n return true;\n })}\n </OverflowGroup>\n </div>\n );\n});\n"],"names":["React"],"mappings":";;;;;;AAUA,MAAM,sBAAsB;AAAA,EACxB,MAAM;AAAA,EACN,UAAU;AAAA,EACV,QAAQ,CAAC,YAAqB;AAC1B,WAAO,QAAQ,aAAa,MAAM,MAAM;AAAA,EAC5C;AACJ;AAEO,MAAM,UAAUA,eAAM,WAAW,SAAS,IAAI,OAAqB,KAAgC;AACtG,QAAM,EAAE,UAAU,GAAG,WAAA,IAAe;AACpC,QAAM,YAAY;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA,MAAM;AAAA,EAAA;AAGV,QAAM,UAAUA,eAAM,WAAW,UAAU;AAC3C,QAAM,eAAe,gBAAA;AAErB,QAAM,gBAAgB,CAAC,UAA+B;AAClD,QAAI,QAAQ,gBAAgB,cAAc;AACtC,UAAI,MAAM,QAAQ,cAAc;AAC5B,cAAM,eAAA;AACN,sBAAc,UAAU,mBAAmB;AAAA,MAC/C;AAEA,UAAI,MAAM,QAAQ,aAAa;AAC3B,cAAM,eAAA;AACN,sBAAc,cAAc,mBAAmB;AAAA,MACnD;AAAA,IACJ,WAAW,QAAQ,gBAAgB,YAAY;AAC3C,UAAI,MAAM,QAAQ,WAAW;AACzB,cAAM,eAAA;AACN,sBAAc,cAAc,mBAAmB;AAAA,MACnD;AAEA,UAAI,MAAM,QAAQ,aAAa;AAC3B,cAAM,eAAA;AACN,sBAAc,UAAU,mBAAmB;AAAA,MAC/C;AAAA,IACJ;AAAA,EACJ;AAEA,SACIA,+BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAG;AAAA,MACJ,oBAAkB,SAAS;AAAA,MAC3B,MAAK;AAAA,MACL;AAAA,MACA;AAAA,MACA,WAAW;AAAA,MACX,aAAU;AAAA,IAAA;AAAA,IACVA,+BAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAS;AAAA,QACT,WAAU;AAAA,QACV,YAAY,CAAC,SAAiBA,+BAAA,cAAC,oBAAc,IAAK;AAAA,MAAA;AAAA,MACjDA,eAAM,SAAS,QAAQ,QAAQ,EAAE,OAAO,CAAA,UAAS;AAC9C,YAAIA,eAAM,eAAqC,KAAK,GAAG;AACnD,iBAAO,CAAC,MAAM,MAAM;AAAA,QACxB;AAEA,eAAO;AAAA,MACX,CAAC;AAAA,IAAA;AAAA,EACL;AAGZ,CAAC;"}
|
|
@@ -45,7 +45,8 @@ const TabTrigger = React.forwardRef(function Tab(props, forwardedRef) {
|
|
|
45
45
|
disabled,
|
|
46
46
|
onFocus: () => context.onChange(id),
|
|
47
47
|
ref,
|
|
48
|
-
tabIndex: context?.activeTabId === void 0 ? 0 : id === context?.activeTabId ? 0 : -1
|
|
48
|
+
tabIndex: context?.activeTabId === void 0 ? 0 : id === context?.activeTabId ? 0 : -1,
|
|
49
|
+
"data-taco": "tabs-trigger"
|
|
49
50
|
},
|
|
50
51
|
/* @__PURE__ */ React.createElement("span", { className: buttonClassName }, children),
|
|
51
52
|
/* @__PURE__ */ React.createElement("span", { className: activeClassName })
|
|
@@ -56,4 +57,4 @@ const TabTrigger = React.forwardRef(function Tab(props, forwardedRef) {
|
|
|
56
57
|
return trigger;
|
|
57
58
|
});
|
|
58
59
|
exports.TabTrigger = TabTrigger;
|
|
59
|
-
//# sourceMappingURL=
|
|
60
|
+
//# sourceMappingURL=TabTrigger.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TabTrigger.cjs","sources":["../../../../src/components/Tabs/components/TabTrigger.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\n\nimport { Tooltip } from '@/components';\nimport { getButtonClasses } from '@/components/LegacyComponents/Button/util';\nimport { useMergedRef } from '@/hooks/useMergedRef';\n\nimport { TabContext } from '../Context';\n\nimport { createPanelId, createTriggerId } from './utils';\n\nexport type TabTriggerProps = React.HTMLAttributes<HTMLButtonElement> & {\n /**\n * A unique value that associates the trigger with a content.\n */\n id: string;\n /**\n * When true, prevents the user from interacting with the tab.\n */\n disabled?: boolean;\n /** A tooltip to show when hovering over the trigger */\n tooltip?: string | React.JSX.Element;\n};\n\nexport const TabTrigger = React.forwardRef(function Tab(props: TabTriggerProps, forwardedRef: React.Ref<HTMLButtonElement>) {\n const { children, id, disabled, tooltip, ...otherProps } = props;\n const context = React.useContext(TabContext);\n const ref = useMergedRef<HTMLButtonElement>(forwardedRef);\n\n const triggerClassName = cn(\n props.className,\n 'group relative p-0.5 outline-none disabled:cursor-not-allowed disabled:text-black/50',\n // horizontal\n '[[aria-orientation=\"horizontal\"]_&]:pb-1',\n // vertical\n '[[aria-orientation=\"vertical\"]_&]:pr-1'\n );\n const buttonClassName = cn(\n getButtonClasses(),\n 'pointer-events-none rounded px-3 group-focus-visible:yt-focus-inset group-enabled:group-hover:bg-gray-100 group-enabled:group-hover:text-black'\n );\n const activeClassName = cn(\n 'pointer-events-none absolute z-[1] hidden bg-blue-500 group-aria-selected:flex',\n // horizontal\n '[[aria-orientation=\"horizontal\"]_&]:bottom-0 [[aria-orientation=\"horizontal\"]_&]:left-0 [[aria-orientation=\"horizontal\"]_&]:right-0 [[aria-orientation=\"horizontal\"]_&]:h-0.5 [[aria-orientation=\"horizontal\"]_&]:rounded-t-sm',\n // vertical\n '[[aria-orientation=\"vertical\"]_&]:bottom-0 [[aria-orientation=\"vertical\"]_&]:right-0 [[aria-orientation=\"vertical\"]_&]:top-0 [[aria-orientation=\"vertical\"]_&]:w-0.5 [[aria-orientation=\"vertical\"]_&]:rounded-l-sm'\n );\n\n const triggerId = createTriggerId(context.baseId, id);\n const panelId = createPanelId(context.baseId, id);\n\n const trigger = (\n <button\n {...otherProps}\n aria-selected={id === context?.activeTabId}\n aria-controls={panelId}\n id={triggerId}\n role=\"tab\"\n type=\"button\"\n className={triggerClassName}\n disabled={disabled}\n onFocus={() => context.onChange(id)}\n ref={ref}\n tabIndex={context?.activeTabId === undefined ? 0 : id === context?.activeTabId ? 0 : -1}\n data-taco=\"tabs-trigger\">\n <span className={buttonClassName}>{children}</span>\n <span className={activeClassName} />\n </button>\n );\n\n if (tooltip) {\n return <Tooltip title={tooltip}>{trigger}</Tooltip>;\n }\n\n return trigger;\n});\n"],"names":["TabContext","useMergedRef","getButtonClasses","createTriggerId","createPanelId","Tooltip"],"mappings":";;;;;;;;;AAwBO,MAAM,aAAa,MAAM,WAAW,SAAS,IAAI,OAAwB,cAA4C;AACxH,QAAM,EAAE,UAAU,IAAI,UAAU,SAAS,GAAG,eAAe;AAC3D,QAAM,UAAU,MAAM,WAAWA,kBAAU;AAC3C,QAAM,MAAMC,aAAAA,aAAgC,YAAY;AAExD,QAAM,mBAAmB;AAAA,IACrB,MAAM;AAAA,IACN;AAAA;AAAA,IAEA;AAAA;AAAA,IAEA;AAAA,EAAA;AAEJ,QAAM,kBAAkB;AAAA,IACpBC,sBAAA;AAAA,IACA;AAAA,EAAA;AAEJ,QAAM,kBAAkB;AAAA,IACpB;AAAA;AAAA,IAEA;AAAA;AAAA,IAEA;AAAA,EAAA;AAGJ,QAAM,YAAYC,MAAAA,gBAAgB,QAAQ,QAAQ,EAAE;AACpD,QAAM,UAAUC,MAAAA,cAAc,QAAQ,QAAQ,EAAE;AAEhD,QAAM,UACF,sBAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAG;AAAA,MACJ,iBAAe,OAAO,SAAS;AAAA,MAC/B,iBAAe;AAAA,MACf,IAAI;AAAA,MACJ,MAAK;AAAA,MACL,MAAK;AAAA,MACL,WAAW;AAAA,MACX;AAAA,MACA,SAAS,MAAM,QAAQ,SAAS,EAAE;AAAA,MAClC;AAAA,MACA,UAAU,SAAS,gBAAgB,SAAY,IAAI,OAAO,SAAS,cAAc,IAAI;AAAA,MACrF,aAAU;AAAA,IAAA;AAAA,IACV,sBAAA,cAAC,QAAA,EAAK,WAAW,gBAAA,GAAkB,QAAS;AAAA,IAC5C,sBAAA,cAAC,QAAA,EAAK,WAAW,gBAAA,CAAiB;AAAA,EAAA;AAI1C,MAAI,SAAS;AACT,WAAO,sBAAA,cAACC,QAAAA,SAAA,EAAQ,OAAO,QAAA,GAAU,OAAQ;AAAA,EAC7C;AAEA,SAAO;AACX,CAAC;;"}
|
|
@@ -43,7 +43,8 @@ const TabTrigger = React__default.forwardRef(function Tab(props, forwardedRef) {
|
|
|
43
43
|
disabled,
|
|
44
44
|
onFocus: () => context.onChange(id),
|
|
45
45
|
ref,
|
|
46
|
-
tabIndex: context?.activeTabId === void 0 ? 0 : id === context?.activeTabId ? 0 : -1
|
|
46
|
+
tabIndex: context?.activeTabId === void 0 ? 0 : id === context?.activeTabId ? 0 : -1,
|
|
47
|
+
"data-taco": "tabs-trigger"
|
|
47
48
|
},
|
|
48
49
|
/* @__PURE__ */ React__default.createElement("span", { className: buttonClassName }, children),
|
|
49
50
|
/* @__PURE__ */ React__default.createElement("span", { className: activeClassName })
|
|
@@ -56,4 +57,4 @@ const TabTrigger = React__default.forwardRef(function Tab(props, forwardedRef) {
|
|
|
56
57
|
export {
|
|
57
58
|
TabTrigger
|
|
58
59
|
};
|
|
59
|
-
//# sourceMappingURL=
|
|
60
|
+
//# sourceMappingURL=TabTrigger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TabTrigger.js","sources":["../../../../src/components/Tabs/components/TabTrigger.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\n\nimport { Tooltip } from '@/components';\nimport { getButtonClasses } from '@/components/LegacyComponents/Button/util';\nimport { useMergedRef } from '@/hooks/useMergedRef';\n\nimport { TabContext } from '../Context';\n\nimport { createPanelId, createTriggerId } from './utils';\n\nexport type TabTriggerProps = React.HTMLAttributes<HTMLButtonElement> & {\n /**\n * A unique value that associates the trigger with a content.\n */\n id: string;\n /**\n * When true, prevents the user from interacting with the tab.\n */\n disabled?: boolean;\n /** A tooltip to show when hovering over the trigger */\n tooltip?: string | React.JSX.Element;\n};\n\nexport const TabTrigger = React.forwardRef(function Tab(props: TabTriggerProps, forwardedRef: React.Ref<HTMLButtonElement>) {\n const { children, id, disabled, tooltip, ...otherProps } = props;\n const context = React.useContext(TabContext);\n const ref = useMergedRef<HTMLButtonElement>(forwardedRef);\n\n const triggerClassName = cn(\n props.className,\n 'group relative p-0.5 outline-none disabled:cursor-not-allowed disabled:text-black/50',\n // horizontal\n '[[aria-orientation=\"horizontal\"]_&]:pb-1',\n // vertical\n '[[aria-orientation=\"vertical\"]_&]:pr-1'\n );\n const buttonClassName = cn(\n getButtonClasses(),\n 'pointer-events-none rounded px-3 group-focus-visible:yt-focus-inset group-enabled:group-hover:bg-gray-100 group-enabled:group-hover:text-black'\n );\n const activeClassName = cn(\n 'pointer-events-none absolute z-[1] hidden bg-blue-500 group-aria-selected:flex',\n // horizontal\n '[[aria-orientation=\"horizontal\"]_&]:bottom-0 [[aria-orientation=\"horizontal\"]_&]:left-0 [[aria-orientation=\"horizontal\"]_&]:right-0 [[aria-orientation=\"horizontal\"]_&]:h-0.5 [[aria-orientation=\"horizontal\"]_&]:rounded-t-sm',\n // vertical\n '[[aria-orientation=\"vertical\"]_&]:bottom-0 [[aria-orientation=\"vertical\"]_&]:right-0 [[aria-orientation=\"vertical\"]_&]:top-0 [[aria-orientation=\"vertical\"]_&]:w-0.5 [[aria-orientation=\"vertical\"]_&]:rounded-l-sm'\n );\n\n const triggerId = createTriggerId(context.baseId, id);\n const panelId = createPanelId(context.baseId, id);\n\n const trigger = (\n <button\n {...otherProps}\n aria-selected={id === context?.activeTabId}\n aria-controls={panelId}\n id={triggerId}\n role=\"tab\"\n type=\"button\"\n className={triggerClassName}\n disabled={disabled}\n onFocus={() => context.onChange(id)}\n ref={ref}\n tabIndex={context?.activeTabId === undefined ? 0 : id === context?.activeTabId ? 0 : -1}\n data-taco=\"tabs-trigger\">\n <span className={buttonClassName}>{children}</span>\n <span className={activeClassName} />\n </button>\n );\n\n if (tooltip) {\n return <Tooltip title={tooltip}>{trigger}</Tooltip>;\n }\n\n return trigger;\n});\n"],"names":["React"],"mappings":";;;;;;;AAwBO,MAAM,aAAaA,eAAM,WAAW,SAAS,IAAI,OAAwB,cAA4C;AACxH,QAAM,EAAE,UAAU,IAAI,UAAU,SAAS,GAAG,eAAe;AAC3D,QAAM,UAAUA,eAAM,WAAW,UAAU;AAC3C,QAAM,MAAM,aAAgC,YAAY;AAExD,QAAM,mBAAmB;AAAA,IACrB,MAAM;AAAA,IACN;AAAA;AAAA,IAEA;AAAA;AAAA,IAEA;AAAA,EAAA;AAEJ,QAAM,kBAAkB;AAAA,IACpB,iBAAA;AAAA,IACA;AAAA,EAAA;AAEJ,QAAM,kBAAkB;AAAA,IACpB;AAAA;AAAA,IAEA;AAAA;AAAA,IAEA;AAAA,EAAA;AAGJ,QAAM,YAAY,gBAAgB,QAAQ,QAAQ,EAAE;AACpD,QAAM,UAAU,cAAc,QAAQ,QAAQ,EAAE;AAEhD,QAAM,UACFA,+BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAG;AAAA,MACJ,iBAAe,OAAO,SAAS;AAAA,MAC/B,iBAAe;AAAA,MACf,IAAI;AAAA,MACJ,MAAK;AAAA,MACL,MAAK;AAAA,MACL,WAAW;AAAA,MACX;AAAA,MACA,SAAS,MAAM,QAAQ,SAAS,EAAE;AAAA,MAClC;AAAA,MACA,UAAU,SAAS,gBAAgB,SAAY,IAAI,OAAO,SAAS,cAAc,IAAI;AAAA,MACrF,aAAU;AAAA,IAAA;AAAA,IACVA,+BAAA,cAAC,QAAA,EAAK,WAAW,gBAAA,GAAkB,QAAS;AAAA,IAC5CA,+BAAA,cAAC,QAAA,EAAK,WAAW,gBAAA,CAAiB;AAAA,EAAA;AAI1C,MAAI,SAAS;AACT,WAAOA,+BAAA,cAAC,SAAA,EAAQ,OAAO,QAAA,GAAU,OAAQ;AAAA,EAC7C;AAEA,SAAO;AACX,CAAC;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@economic/taco",
|
|
3
|
-
"version": "14.1.0
|
|
3
|
+
"version": "14.1.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"@dnd-kit/modifiers": "^9.0.0",
|
|
48
48
|
"@dnd-kit/sortable": "^10.0.0",
|
|
49
49
|
"@dnd-kit/utilities": "^3.2.2",
|
|
50
|
-
"@economic/taco-tokens": "3.0.3
|
|
50
|
+
"@economic/taco-tokens": "^3.0.3",
|
|
51
51
|
"@radix-ui/react-scroll-area": "1.2.10",
|
|
52
52
|
"@react-aria/focus": "^3.19.0",
|
|
53
53
|
"@react-aria/interactions": "^3.12.0",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"tailwindcss": ">=3.4.19"
|
|
68
68
|
},
|
|
69
69
|
"devDependencies": {
|
|
70
|
-
"@economic/taco-rules": "1.1.0
|
|
70
|
+
"@economic/taco-rules": "^1.1.0",
|
|
71
71
|
"@oxlint/plugins": "^1.75.0",
|
|
72
72
|
"@svgr/cli": "^8.1.0",
|
|
73
73
|
"@testing-library/jest-dom": "^6.9.1",
|
|
@@ -95,5 +95,5 @@
|
|
|
95
95
|
"optionalDependencies": {
|
|
96
96
|
"@rollup/rollup-linux-x64-gnu": "^4.63.4"
|
|
97
97
|
},
|
|
98
|
-
"gitHead": "
|
|
98
|
+
"gitHead": "d733de8694b838f5adef2658d4337a081683190f"
|
|
99
99
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TabPanel.cjs","sources":["../../../../src/components/Tabs/components/TabPanel.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\n\nimport { TabContext } from '../Context';\n\nimport { createPanelId, createTriggerId } from './utils';\n\nexport type TabContentProps = React.HTMLAttributes<HTMLDivElement> & {\n /**\n * A unique value that associates the content with a trigger.\n */\n id: string;\n\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n};\n\nexport const TabPanel = React.forwardRef(function Tab(props: TabContentProps, ref: React.Ref<HTMLDivElement>) {\n const { id, children, forceMount, ...otherProps } = props;\n\n const context = React.useContext(TabContext);\n\n const className = cn(\n 'outline-none [&[aria-orientation=\"vertical\"]]:grow',\n context?.activeTabId === id ? 'block' : 'hidden',\n props.className\n );\n\n const triggerId = createTriggerId(context.baseId, id);\n const panelId = createPanelId(context.baseId, id);\n\n return (\n <div\n {...otherProps}\n aria-labelledby={triggerId}\n id={panelId}\n className={className}\n data-state={id === context.activeTabId ? 'active' : 'inactive'}\n hidden={id !== context.activeTabId}\n ref={ref}\n role=\"tabpanel\">\n {id === context.activeTabId || forceMount ? children : null}\n </div>\n );\n});\n"],"names":["TabContext","createTriggerId","createPanelId"],"mappings":";;;;;;AAoBO,MAAM,WAAW,MAAM,WAAW,SAAS,IAAI,OAAwB,KAAgC;AAC1G,QAAM,EAAE,IAAI,UAAU,YAAY,GAAG,eAAe;AAEpD,QAAM,UAAU,MAAM,WAAWA,kBAAU;AAE3C,QAAM,YAAY;AAAA,IACd;AAAA,IACA,SAAS,gBAAgB,KAAK,UAAU;AAAA,IACxC,MAAM;AAAA,EAAA;AAGV,QAAM,YAAYC,MAAAA,gBAAgB,QAAQ,QAAQ,EAAE;AACpD,QAAM,UAAUC,MAAAA,cAAc,QAAQ,QAAQ,EAAE;AAEhD,SACI,sBAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAG;AAAA,MACJ,mBAAiB;AAAA,MACjB,IAAI;AAAA,MACJ;AAAA,MACA,cAAY,OAAO,QAAQ,cAAc,WAAW;AAAA,MACpD,QAAQ,OAAO,QAAQ;AAAA,MACvB;AAAA,MACA,MAAK;AAAA,IAAA;AAAA,IACJ,OAAO,QAAQ,eAAe,aAAa,WAAW;AAAA,EAAA;AAGnE,CAAC;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TabPanel.js","sources":["../../../../src/components/Tabs/components/TabPanel.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\n\nimport { TabContext } from '../Context';\n\nimport { createPanelId, createTriggerId } from './utils';\n\nexport type TabContentProps = React.HTMLAttributes<HTMLDivElement> & {\n /**\n * A unique value that associates the content with a trigger.\n */\n id: string;\n\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n};\n\nexport const TabPanel = React.forwardRef(function Tab(props: TabContentProps, ref: React.Ref<HTMLDivElement>) {\n const { id, children, forceMount, ...otherProps } = props;\n\n const context = React.useContext(TabContext);\n\n const className = cn(\n 'outline-none [&[aria-orientation=\"vertical\"]]:grow',\n context?.activeTabId === id ? 'block' : 'hidden',\n props.className\n );\n\n const triggerId = createTriggerId(context.baseId, id);\n const panelId = createPanelId(context.baseId, id);\n\n return (\n <div\n {...otherProps}\n aria-labelledby={triggerId}\n id={panelId}\n className={className}\n data-state={id === context.activeTabId ? 'active' : 'inactive'}\n hidden={id !== context.activeTabId}\n ref={ref}\n role=\"tabpanel\">\n {id === context.activeTabId || forceMount ? children : null}\n </div>\n );\n});\n"],"names":["React"],"mappings":";;;;AAoBO,MAAM,WAAWA,eAAM,WAAW,SAAS,IAAI,OAAwB,KAAgC;AAC1G,QAAM,EAAE,IAAI,UAAU,YAAY,GAAG,eAAe;AAEpD,QAAM,UAAUA,eAAM,WAAW,UAAU;AAE3C,QAAM,YAAY;AAAA,IACd;AAAA,IACA,SAAS,gBAAgB,KAAK,UAAU;AAAA,IACxC,MAAM;AAAA,EAAA;AAGV,QAAM,YAAY,gBAAgB,QAAQ,QAAQ,EAAE;AACpD,QAAM,UAAU,cAAc,QAAQ,QAAQ,EAAE;AAEhD,SACIA,+BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAG;AAAA,MACJ,mBAAiB;AAAA,MACjB,IAAI;AAAA,MACJ;AAAA,MACA,cAAY,OAAO,QAAQ,cAAc,WAAW;AAAA,MACpD,QAAQ,OAAO,QAAQ;AAAA,MACvB;AAAA,MACA,MAAK;AAAA,IAAA;AAAA,IACJ,OAAO,QAAQ,eAAe,aAAa,WAAW;AAAA,EAAA;AAGnE,CAAC;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Trigger.cjs","sources":["../../../../src/components/Tabs/components/Trigger.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\n\nimport { Tooltip } from '@/components';\nimport { getButtonClasses } from '@/components/LegacyComponents/Button/util';\nimport { useMergedRef } from '@/hooks/useMergedRef';\n\nimport { TabContext } from '../Context';\n\nimport { createPanelId, createTriggerId } from './utils';\n\nexport type TabTriggerProps = React.HTMLAttributes<HTMLButtonElement> & {\n /**\n * A unique value that associates the trigger with a content.\n */\n id: string;\n /**\n * When true, prevents the user from interacting with the tab.\n */\n disabled?: boolean;\n /** A tooltip to show when hovering over the trigger */\n tooltip?: string | React.JSX.Element;\n};\n\nexport const TabTrigger = React.forwardRef(function Tab(props: TabTriggerProps, forwardedRef: React.Ref<HTMLButtonElement>) {\n const { children, id, disabled, tooltip, ...otherProps } = props;\n const context = React.useContext(TabContext);\n const ref = useMergedRef<HTMLButtonElement>(forwardedRef);\n\n const triggerClassName = cn(\n props.className,\n 'group relative p-0.5 outline-none disabled:cursor-not-allowed disabled:text-black/50',\n // horizontal\n '[[aria-orientation=\"horizontal\"]_&]:pb-1',\n // vertical\n '[[aria-orientation=\"vertical\"]_&]:pr-1'\n );\n const buttonClassName = cn(\n getButtonClasses(),\n 'pointer-events-none rounded px-3 group-focus-visible:yt-focus-inset group-enabled:group-hover:bg-gray-100 group-enabled:group-hover:text-black'\n );\n const activeClassName = cn(\n 'pointer-events-none absolute z-[1] hidden bg-blue-500 group-aria-selected:flex',\n // horizontal\n '[[aria-orientation=\"horizontal\"]_&]:bottom-0 [[aria-orientation=\"horizontal\"]_&]:left-0 [[aria-orientation=\"horizontal\"]_&]:right-0 [[aria-orientation=\"horizontal\"]_&]:h-0.5 [[aria-orientation=\"horizontal\"]_&]:rounded-t-sm',\n // vertical\n '[[aria-orientation=\"vertical\"]_&]:bottom-0 [[aria-orientation=\"vertical\"]_&]:right-0 [[aria-orientation=\"vertical\"]_&]:top-0 [[aria-orientation=\"vertical\"]_&]:w-0.5 [[aria-orientation=\"vertical\"]_&]:rounded-l-sm'\n );\n\n const triggerId = createTriggerId(context.baseId, id);\n const panelId = createPanelId(context.baseId, id);\n\n const trigger = (\n <button\n {...otherProps}\n aria-selected={id === context?.activeTabId}\n aria-controls={panelId}\n id={triggerId}\n role=\"tab\"\n type=\"button\"\n className={triggerClassName}\n disabled={disabled}\n onFocus={() => context.onChange(id)}\n ref={ref}\n tabIndex={context?.activeTabId === undefined ? 0 : id === context?.activeTabId ? 0 : -1}>\n <span className={buttonClassName}>{children}</span>\n <span className={activeClassName} />\n </button>\n );\n\n if (tooltip) {\n return <Tooltip title={tooltip}>{trigger}</Tooltip>;\n }\n\n return trigger;\n});\n"],"names":["TabContext","useMergedRef","getButtonClasses","createTriggerId","createPanelId","Tooltip"],"mappings":";;;;;;;;;AAwBO,MAAM,aAAa,MAAM,WAAW,SAAS,IAAI,OAAwB,cAA4C;AACxH,QAAM,EAAE,UAAU,IAAI,UAAU,SAAS,GAAG,eAAe;AAC3D,QAAM,UAAU,MAAM,WAAWA,kBAAU;AAC3C,QAAM,MAAMC,aAAAA,aAAgC,YAAY;AAExD,QAAM,mBAAmB;AAAA,IACrB,MAAM;AAAA,IACN;AAAA;AAAA,IAEA;AAAA;AAAA,IAEA;AAAA,EAAA;AAEJ,QAAM,kBAAkB;AAAA,IACpBC,sBAAA;AAAA,IACA;AAAA,EAAA;AAEJ,QAAM,kBAAkB;AAAA,IACpB;AAAA;AAAA,IAEA;AAAA;AAAA,IAEA;AAAA,EAAA;AAGJ,QAAM,YAAYC,MAAAA,gBAAgB,QAAQ,QAAQ,EAAE;AACpD,QAAM,UAAUC,MAAAA,cAAc,QAAQ,QAAQ,EAAE;AAEhD,QAAM,UACF,sBAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAG;AAAA,MACJ,iBAAe,OAAO,SAAS;AAAA,MAC/B,iBAAe;AAAA,MACf,IAAI;AAAA,MACJ,MAAK;AAAA,MACL,MAAK;AAAA,MACL,WAAW;AAAA,MACX;AAAA,MACA,SAAS,MAAM,QAAQ,SAAS,EAAE;AAAA,MAClC;AAAA,MACA,UAAU,SAAS,gBAAgB,SAAY,IAAI,OAAO,SAAS,cAAc,IAAI;AAAA,IAAA;AAAA,IACrF,sBAAA,cAAC,QAAA,EAAK,WAAW,gBAAA,GAAkB,QAAS;AAAA,IAC5C,sBAAA,cAAC,QAAA,EAAK,WAAW,gBAAA,CAAiB;AAAA,EAAA;AAI1C,MAAI,SAAS;AACT,WAAO,sBAAA,cAACC,QAAAA,SAAA,EAAQ,OAAO,QAAA,GAAU,OAAQ;AAAA,EAC7C;AAEA,SAAO;AACX,CAAC;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Trigger.js","sources":["../../../../src/components/Tabs/components/Trigger.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\n\nimport { Tooltip } from '@/components';\nimport { getButtonClasses } from '@/components/LegacyComponents/Button/util';\nimport { useMergedRef } from '@/hooks/useMergedRef';\n\nimport { TabContext } from '../Context';\n\nimport { createPanelId, createTriggerId } from './utils';\n\nexport type TabTriggerProps = React.HTMLAttributes<HTMLButtonElement> & {\n /**\n * A unique value that associates the trigger with a content.\n */\n id: string;\n /**\n * When true, prevents the user from interacting with the tab.\n */\n disabled?: boolean;\n /** A tooltip to show when hovering over the trigger */\n tooltip?: string | React.JSX.Element;\n};\n\nexport const TabTrigger = React.forwardRef(function Tab(props: TabTriggerProps, forwardedRef: React.Ref<HTMLButtonElement>) {\n const { children, id, disabled, tooltip, ...otherProps } = props;\n const context = React.useContext(TabContext);\n const ref = useMergedRef<HTMLButtonElement>(forwardedRef);\n\n const triggerClassName = cn(\n props.className,\n 'group relative p-0.5 outline-none disabled:cursor-not-allowed disabled:text-black/50',\n // horizontal\n '[[aria-orientation=\"horizontal\"]_&]:pb-1',\n // vertical\n '[[aria-orientation=\"vertical\"]_&]:pr-1'\n );\n const buttonClassName = cn(\n getButtonClasses(),\n 'pointer-events-none rounded px-3 group-focus-visible:yt-focus-inset group-enabled:group-hover:bg-gray-100 group-enabled:group-hover:text-black'\n );\n const activeClassName = cn(\n 'pointer-events-none absolute z-[1] hidden bg-blue-500 group-aria-selected:flex',\n // horizontal\n '[[aria-orientation=\"horizontal\"]_&]:bottom-0 [[aria-orientation=\"horizontal\"]_&]:left-0 [[aria-orientation=\"horizontal\"]_&]:right-0 [[aria-orientation=\"horizontal\"]_&]:h-0.5 [[aria-orientation=\"horizontal\"]_&]:rounded-t-sm',\n // vertical\n '[[aria-orientation=\"vertical\"]_&]:bottom-0 [[aria-orientation=\"vertical\"]_&]:right-0 [[aria-orientation=\"vertical\"]_&]:top-0 [[aria-orientation=\"vertical\"]_&]:w-0.5 [[aria-orientation=\"vertical\"]_&]:rounded-l-sm'\n );\n\n const triggerId = createTriggerId(context.baseId, id);\n const panelId = createPanelId(context.baseId, id);\n\n const trigger = (\n <button\n {...otherProps}\n aria-selected={id === context?.activeTabId}\n aria-controls={panelId}\n id={triggerId}\n role=\"tab\"\n type=\"button\"\n className={triggerClassName}\n disabled={disabled}\n onFocus={() => context.onChange(id)}\n ref={ref}\n tabIndex={context?.activeTabId === undefined ? 0 : id === context?.activeTabId ? 0 : -1}>\n <span className={buttonClassName}>{children}</span>\n <span className={activeClassName} />\n </button>\n );\n\n if (tooltip) {\n return <Tooltip title={tooltip}>{trigger}</Tooltip>;\n }\n\n return trigger;\n});\n"],"names":["React"],"mappings":";;;;;;;AAwBO,MAAM,aAAaA,eAAM,WAAW,SAAS,IAAI,OAAwB,cAA4C;AACxH,QAAM,EAAE,UAAU,IAAI,UAAU,SAAS,GAAG,eAAe;AAC3D,QAAM,UAAUA,eAAM,WAAW,UAAU;AAC3C,QAAM,MAAM,aAAgC,YAAY;AAExD,QAAM,mBAAmB;AAAA,IACrB,MAAM;AAAA,IACN;AAAA;AAAA,IAEA;AAAA;AAAA,IAEA;AAAA,EAAA;AAEJ,QAAM,kBAAkB;AAAA,IACpB,iBAAA;AAAA,IACA;AAAA,EAAA;AAEJ,QAAM,kBAAkB;AAAA,IACpB;AAAA;AAAA,IAEA;AAAA;AAAA,IAEA;AAAA,EAAA;AAGJ,QAAM,YAAY,gBAAgB,QAAQ,QAAQ,EAAE;AACpD,QAAM,UAAU,cAAc,QAAQ,QAAQ,EAAE;AAEhD,QAAM,UACFA,+BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAG;AAAA,MACJ,iBAAe,OAAO,SAAS;AAAA,MAC/B,iBAAe;AAAA,MACf,IAAI;AAAA,MACJ,MAAK;AAAA,MACL,MAAK;AAAA,MACL,WAAW;AAAA,MACX;AAAA,MACA,SAAS,MAAM,QAAQ,SAAS,EAAE;AAAA,MAClC;AAAA,MACA,UAAU,SAAS,gBAAgB,SAAY,IAAI,OAAO,SAAS,cAAc,IAAI;AAAA,IAAA;AAAA,IACrFA,+BAAA,cAAC,QAAA,EAAK,WAAW,gBAAA,GAAkB,QAAS;AAAA,IAC5CA,+BAAA,cAAC,QAAA,EAAK,WAAW,gBAAA,CAAiB;AAAA,EAAA;AAI1C,MAAI,SAAS;AACT,WAAOA,+BAAA,cAAC,SAAA,EAAQ,OAAO,QAAA,GAAU,OAAQ;AAAA,EAC7C;AAEA,SAAO;AACX,CAAC;"}
|
|
File without changes
|