@dreamcommerce/aurora 2.7.0-1 → 2.7.0-3

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.
@@ -11,11 +11,14 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
11
11
 
12
12
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
13
 
14
- const Tabs = ({ initialActiveTabId, children }) => {
15
- const { setActiveId } = React.useContext(context.TabsContext);
14
+ const Tabs = ({ initialActiveTabId, children, onChange }) => {
15
+ const { setActiveId, activeId } = React.useContext(context.TabsContext);
16
16
  React.useEffect(() => {
17
17
  setActiveId(initialActiveTabId);
18
18
  }, [setActiveId, initialActiveTabId]);
19
+ React.useEffect(() => {
20
+ activeId && (onChange === null || onChange === void 0 ? void 0 : onChange(activeId));
21
+ }, [activeId]);
19
22
  return React__default['default'].createElement("div", { className: main_module['default'][css_classes['default'].tabs] }, children);
20
23
  };
21
24
 
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -14,7 +14,7 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
14
14
  const TabsItem = ({ id, children }) => {
15
15
  const { activeId, setActiveId } = React.useContext(context.TabsContext);
16
16
  const activeItem = activeId === id;
17
- return (React__default['default'].createElement("button", { className: `${main_module['default'][css_classes['default'].tabsItem]} ${activeItem ? main_module['default'][css_classes['default'].tabsItemActive] : ''}`, role: "tab", tabIndex: activeItem ? 1 : -1, "aria-selected": activeItem, "aria-controls": id, onClick: () => setActiveId(id) }, children));
17
+ return (React__default['default'].createElement("button", { type: 'button', className: `${main_module['default'][css_classes['default'].tabsItem]} ${activeItem ? main_module['default'][css_classes['default'].tabsItemActive] : ''}`, role: "tab", tabIndex: activeItem ? 1 : -1, "aria-selected": activeItem, "aria-controls": id, onClick: () => setActiveId(id) }, children));
18
18
  };
19
19
 
20
20
  exports.TabsItem = TabsItem;
@@ -3,11 +3,14 @@ import CSS_CLASSES from '../css_classes.js';
3
3
  import { TabsContext } from '../context.js';
4
4
  import cssClasses from '../../../css/tabs/main.module.less.js';
5
5
 
6
- const Tabs = ({ initialActiveTabId, children }) => {
7
- const { setActiveId } = useContext(TabsContext);
6
+ const Tabs = ({ initialActiveTabId, children, onChange }) => {
7
+ const { setActiveId, activeId } = useContext(TabsContext);
8
8
  useEffect(() => {
9
9
  setActiveId(initialActiveTabId);
10
10
  }, [setActiveId, initialActiveTabId]);
11
+ useEffect(() => {
12
+ activeId && (onChange === null || onChange === void 0 ? void 0 : onChange(activeId));
13
+ }, [activeId]);
11
14
  return React.createElement("div", { className: cssClasses[CSS_CLASSES.tabs] }, children);
12
15
  };
13
16
 
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -6,7 +6,7 @@ import cssClasses from '../../../css/tabs/main.module.less.js';
6
6
  const TabsItem = ({ id, children }) => {
7
7
  const { activeId, setActiveId } = useContext(TabsContext);
8
8
  const activeItem = activeId === id;
9
- return (React.createElement("button", { className: `${cssClasses[CSS_CLASSES.tabsItem]} ${activeItem ? cssClasses[CSS_CLASSES.tabsItemActive] : ''}`, role: "tab", tabIndex: activeItem ? 1 : -1, "aria-selected": activeItem, "aria-controls": id, onClick: () => setActiveId(id) }, children));
9
+ return (React.createElement("button", { type: 'button', className: `${cssClasses[CSS_CLASSES.tabsItem]} ${activeItem ? cssClasses[CSS_CLASSES.tabsItemActive] : ''}`, role: "tab", tabIndex: activeItem ? 1 : -1, "aria-selected": activeItem, "aria-controls": id, onClick: () => setActiveId(id) }, children));
10
10
  };
11
11
 
12
12
  export default TabsItem;
@@ -26,4 +26,5 @@ export interface ITabsWrapperProps {
26
26
  export interface ITabsProps {
27
27
  children: ReactNode;
28
28
  initialActiveTabId: string;
29
+ onChange?: (id: string) => void;
29
30
  }
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@dreamcommerce/aurora",
3
3
  "packageManager": "yarn@3.2.0",
4
4
  "sideEffects": false,
5
- "version": "2.7.0-1",
5
+ "version": "2.7.0-3",
6
6
  "description": "aurora",
7
7
  "author": "k0ssak",
8
8
  "license": "MIT",