@gympass/yoga 7.88.1 → 7.89.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.
Files changed (55) hide show
  1. package/cjs/NavigationMenu/NavigationMenu.theme.js +80 -0
  2. package/cjs/NavigationMenu/index.js +35 -0
  3. package/cjs/NavigationMenu/web/BottomItems/BottomItem.js +165 -0
  4. package/cjs/NavigationMenu/web/BottomItems/BottomItems.js +66 -0
  5. package/cjs/NavigationMenu/web/BottomItems/index.js +41 -0
  6. package/cjs/NavigationMenu/web/Item/Item.js +55 -0
  7. package/cjs/NavigationMenu/web/Item/Subitem.js +39 -0
  8. package/cjs/NavigationMenu/web/Item/index.js +41 -0
  9. package/cjs/NavigationMenu/web/Item/styles.js +188 -0
  10. package/cjs/NavigationMenu/web/Menu/Menu.js +109 -0
  11. package/cjs/NavigationMenu/web/Menu/index.js +35 -0
  12. package/cjs/NavigationMenu/web/NavigationMenu.js +155 -0
  13. package/cjs/NavigationMenu/web/NavigationMenu.test.js +178 -0
  14. package/cjs/NavigationMenu/web/Switcher/Actions.js +72 -0
  15. package/cjs/NavigationMenu/web/Switcher/Switcher.js +105 -0
  16. package/cjs/NavigationMenu/web/Switcher/index.js +35 -0
  17. package/cjs/NavigationMenu/web/index.js +35 -0
  18. package/cjs/Theme/theme/componentThemes.js +114 -0
  19. package/cjs/Theme/theme/theme.js +3 -3
  20. package/cjs/index.js +3 -0
  21. package/cjs/yoga.d.js +1 -0
  22. package/esm/NavigationMenu/NavigationMenu.theme.js +60 -0
  23. package/esm/NavigationMenu/index.js +5 -0
  24. package/esm/NavigationMenu/web/BottomItems/BottomItem.js +135 -0
  25. package/esm/NavigationMenu/web/BottomItems/BottomItems.js +36 -0
  26. package/esm/NavigationMenu/web/BottomItems/index.js +6 -0
  27. package/esm/NavigationMenu/web/Item/Item.js +25 -0
  28. package/esm/NavigationMenu/web/Item/Subitem.js +9 -0
  29. package/esm/NavigationMenu/web/Item/index.js +6 -0
  30. package/esm/NavigationMenu/web/Item/styles.js +151 -0
  31. package/esm/NavigationMenu/web/Menu/Menu.js +79 -0
  32. package/esm/NavigationMenu/web/Menu/index.js +5 -0
  33. package/esm/NavigationMenu/web/NavigationMenu.js +125 -0
  34. package/esm/NavigationMenu/web/NavigationMenu.test.js +155 -0
  35. package/esm/NavigationMenu/web/Switcher/Actions.js +42 -0
  36. package/esm/NavigationMenu/web/Switcher/Switcher.js +75 -0
  37. package/esm/NavigationMenu/web/Switcher/index.js +5 -0
  38. package/esm/NavigationMenu/web/index.js +5 -0
  39. package/esm/Theme/theme/componentThemes.js +84 -0
  40. package/esm/Theme/theme/theme.js +2 -2
  41. package/esm/index.js +2 -0
  42. package/esm/yoga.d.js +0 -0
  43. package/package.json +2 -2
  44. package/typings/Icon-4557ae6b.d.ts +3 -0
  45. package/typings/NavigationMenu/NavigationMenu.theme.d.ts +73 -0
  46. package/typings/NavigationMenu/index.d.ts +7 -0
  47. package/typings/NavigationMenu/web/BottomItems/index.d.ts +16 -0
  48. package/typings/NavigationMenu/web/Item/index.d.ts +23 -0
  49. package/typings/NavigationMenu/web/Item/styles.d.ts +6 -0
  50. package/typings/NavigationMenu/web/Menu/index.d.ts +11 -0
  51. package/typings/NavigationMenu/web/Switcher/index.d.ts +6 -0
  52. package/typings/NavigationMenu/web/index.d.ts +7 -0
  53. package/typings/NavigationMenu-7f690c1e.d.ts +55 -0
  54. package/typings/Switcher-cab05b9f.d.ts +18 -0
  55. package/typings/index.d.ts +10 -9
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var Actions_exports = {};
30
+ __export(Actions_exports, {
31
+ default: () => Actions_default
32
+ });
33
+ module.exports = __toCommonJS(Actions_exports);
34
+ var import_jsx_runtime = require("react/jsx-runtime");
35
+ var import_styled_components = __toESM(require("styled-components"));
36
+ var import_yoga_icons = require("@gympass/yoga-icons");
37
+ var import_yoga = require("@gympass/yoga");
38
+ var import_Icon = __toESM(require("../../../Icon"));
39
+ var import_Box = __toESM(require("../../../Box"));
40
+ const StyledAction = (0, import_styled_components.default)(import_Box.default)`
41
+ ${({
42
+ theme: {
43
+ yoga: {
44
+ components: {
45
+ navigationmenu: { backgroundColor, border, height, width }
46
+ }
47
+ }
48
+ }
49
+ }) => import_styled_components.css`
50
+ transition: background-color 300ms ease-in-out;
51
+
52
+ display: flex;
53
+ align-items: center;
54
+ justify-content: center;
55
+ width: ${width.xxlarge}px;
56
+ height: ${height.xxlarge}px;
57
+ border-radius: ${border.radius.circle}px;
58
+
59
+ :hover,
60
+ &:focus {
61
+ cursor: pointer;
62
+ background-color: ${backgroundColor.hover};
63
+ }
64
+ `}
65
+ `;
66
+ const Actions = ({ actions, sideOffset }) => {
67
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_yoga.Menu, { onMouseHover: false, children: [
68
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_yoga.Menu.Action, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledAction, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Icon.default, { as: import_yoga_icons.MenuMore, size: "medium", fill: "vibin" }) }) }),
69
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_yoga.Menu.List, { side: "right", sideOffset, zIndex: "10", children: actions.map(({ id, label, onClick }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_yoga.Menu.Item, { onClick, children: label }, id)) })
70
+ ] });
71
+ };
72
+ var Actions_default = Actions;
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var Switcher_exports = {};
30
+ __export(Switcher_exports, {
31
+ default: () => Switcher_default
32
+ });
33
+ module.exports = __toCommonJS(Switcher_exports);
34
+ var import_jsx_runtime = require("react/jsx-runtime");
35
+ var import_styled_components = __toESM(require("styled-components"));
36
+ var import_yoga = require("@gympass/yoga");
37
+ var import_Actions = __toESM(require("./Actions"));
38
+ var import_Box = __toESM(require("../../../Box"));
39
+ const StyledSwitcher = (0, import_styled_components.default)(import_Box.default)`
40
+ ${({
41
+ fill,
42
+ theme: {
43
+ yoga: {
44
+ colors,
45
+ components: {
46
+ navigationmenu: { border, gap, height, padding, width }
47
+ }
48
+ }
49
+ }
50
+ }) => import_styled_components.css`
51
+ display: flex;
52
+ align-items: center;
53
+ justify-content: space-between;
54
+ width: 100%;
55
+ gap: ${gap.xxsmall}px;
56
+ padding: ${padding.xsmall}px;
57
+ background-color: ${colors[fill]};
58
+ border-radius: ${border.radius.default}px;
59
+
60
+ > div:first-child {
61
+ height: ${height.xlarge}px;
62
+ width: ${width.xlarge}px;
63
+ }
64
+ `}
65
+ `;
66
+ const StyledTextContainer = (0, import_styled_components.default)(import_Box.default)`
67
+ flex: 1;
68
+ overflow: hidden;
69
+ `;
70
+ const StyledTitle = (0, import_styled_components.default)(import_yoga.Text.Small)`
71
+ ${({
72
+ theme: {
73
+ yoga: {
74
+ components: {
75
+ navigationmenu: { font }
76
+ }
77
+ }
78
+ }
79
+ }) => import_styled_components.css`
80
+ font-weight: ${font.weight.medium};
81
+ flex: 1;
82
+ white-space: nowrap;
83
+ text-overflow: ellipsis;
84
+ overflow: hidden;
85
+ `}
86
+ `;
87
+ const Switcher = ({
88
+ actions,
89
+ avatar: Avatar,
90
+ fill = "transparent",
91
+ sideOffset = 36,
92
+ subtitle,
93
+ title
94
+ }) => {
95
+ const hasActions = actions == null ? void 0 : actions.length;
96
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(StyledSwitcher, { fill, children: [
97
+ Avatar,
98
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(StyledTextContainer, { children: [
99
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledTitle, { children: title || /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_yoga.Skeleton, { type: "text", variant: "body2", width: "100%" }) }),
100
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_yoga.Text.Tiny, { color: "deep", children: subtitle })
101
+ ] }),
102
+ hasActions && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Actions.default, { actions, sideOffset })
103
+ ] });
104
+ };
105
+ var Switcher_default = Switcher;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var Switcher_exports = {};
30
+ __export(Switcher_exports, {
31
+ default: () => Switcher_default
32
+ });
33
+ module.exports = __toCommonJS(Switcher_exports);
34
+ var import_Switcher = __toESM(require("./Switcher"));
35
+ var Switcher_default = import_Switcher.default;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var web_exports = {};
30
+ __export(web_exports, {
31
+ default: () => web_default
32
+ });
33
+ module.exports = __toCommonJS(web_exports);
34
+ var import_NavigationMenu = __toESM(require("./NavigationMenu"));
35
+ var web_default = import_NavigationMenu.default;
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var componentThemes_exports = {};
30
+ __export(componentThemes_exports, {
31
+ default: () => componentThemes_default
32
+ });
33
+ module.exports = __toCommonJS(componentThemes_exports);
34
+ var import_Accordion_theme = __toESM(require("../../Accordion/Accordion.theme.js"));
35
+ var import_ActionRequirement_theme = __toESM(require("../../ActionRequirement/ActionRequirement.theme.js"));
36
+ var import_AutoComplete_theme = __toESM(require("../../AutoComplete/AutoComplete.theme.js"));
37
+ var import_Avatar_theme = __toESM(require("../../Avatar/Avatar.theme.js"));
38
+ var import_Banner_theme = __toESM(require("../../Banner/Banner.theme.js"));
39
+ var import_BottomSheet_theme = __toESM(require("../../BottomSheet/BottomSheet.theme.js"));
40
+ var import_Button_theme = __toESM(require("../../Button/Button.theme.js"));
41
+ var import_Card_theme = __toESM(require("../../Card/Card.theme.js"));
42
+ var import_Card_native_theme = __toESM(require("../../Card/Card.native.theme.js"));
43
+ var import_Card_web_theme = __toESM(require("../../Card/Card.web.theme.js"));
44
+ var import_Checkbox_theme = __toESM(require("../../Checkbox/Checkbox.theme.js"));
45
+ var import_CheckboxSwitch_theme = __toESM(require("../../Checkbox/CheckboxSwitch.theme.js"));
46
+ var import_Datepicker_theme = __toESM(require("../../Datepicker/Datepicker.theme.js"));
47
+ var import_Dialog_theme = __toESM(require("../../Dialog/Dialog.theme.js"));
48
+ var import_Divider_theme = __toESM(require("../../Divider/Divider.theme.js"));
49
+ var import_Drawer_theme = __toESM(require("../../Drawer/Drawer.theme.js"));
50
+ var import_Dropdown_theme = __toESM(require("../../Dropdown/Dropdown.theme.js"));
51
+ var import_Feedback_theme = __toESM(require("../../Feedback/Feedback.theme.js"));
52
+ var import_Grid_theme = __toESM(require("../../Grid/Grid.theme.js"));
53
+ var import_Header_theme = __toESM(require("../../Header/Header.theme.js"));
54
+ var import_Heading_theme = __toESM(require("../../Heading/Heading.theme.js"));
55
+ var import_Icon_theme = __toESM(require("../../Icon/Icon.theme.js"));
56
+ var import_Input_theme = __toESM(require("../../Input/Input.theme.js"));
57
+ var import_List_theme = __toESM(require("../../List/List.theme.js"));
58
+ var import_Menu_theme = __toESM(require("../../Menu/Menu.theme.js"));
59
+ var import_Popover_theme = __toESM(require("../../Popover/Popover.theme.js"));
60
+ var import_Progress_theme = __toESM(require("../../Progress/Progress.theme.js"));
61
+ var import_RadioGroup_theme = __toESM(require("../../RadioGroup/RadioGroup.theme.js"));
62
+ var import_Rating_theme = __toESM(require("../../Rating/Rating.theme.js"));
63
+ var import_Result_theme = __toESM(require("../../Result/Result.theme.js"));
64
+ var import_Skeleton_theme = __toESM(require("../../Skeleton/Skeleton.theme.js"));
65
+ var import_Slider_theme = __toESM(require("../../Slider/Slider.theme.js"));
66
+ var import_Snackbar_theme = __toESM(require("../../Snackbar/Snackbar.theme.js"));
67
+ var import_Spinner_theme = __toESM(require("../../Spinner/Spinner.theme.js"));
68
+ var import_Stepper_theme = __toESM(require("../../Stepper/Stepper.theme.js"));
69
+ var import_Tag_theme = __toESM(require("../../Tag/Tag.theme.js"));
70
+ var import_Text_theme = __toESM(require("../../Text/Text.theme.js"));
71
+ var import_TextArea_theme = __toESM(require("../../TextArea/TextArea.theme.js"));
72
+ var import_NavigationMenu = __toESM(require("../../NavigationMenu/NavigationMenu.theme"));
73
+ const componentThemes = {
74
+ Accordion: import_Accordion_theme.default,
75
+ ActionRequirement: import_ActionRequirement_theme.default,
76
+ AutoComplete: import_AutoComplete_theme.default,
77
+ Avatar: import_Avatar_theme.default,
78
+ Banner: import_Banner_theme.default,
79
+ BottomSheet: import_BottomSheet_theme.default,
80
+ Button: import_Button_theme.default,
81
+ Card: import_Card_theme.default,
82
+ CardNative: import_Card_native_theme.default,
83
+ CardWeb: import_Card_web_theme.default,
84
+ Checkbox: import_Checkbox_theme.default,
85
+ CheckboxSwitch: import_CheckboxSwitch_theme.default,
86
+ Datepicker: import_Datepicker_theme.default,
87
+ Dialog: import_Dialog_theme.default,
88
+ Divider: import_Divider_theme.default,
89
+ Drawer: import_Drawer_theme.default,
90
+ Dropdown: import_Dropdown_theme.default,
91
+ Feedback: import_Feedback_theme.default,
92
+ Grid: import_Grid_theme.default,
93
+ Header: import_Header_theme.default,
94
+ Heading: import_Heading_theme.default,
95
+ Icon: import_Icon_theme.default,
96
+ Input: import_Input_theme.default,
97
+ List: import_List_theme.default,
98
+ Menu: import_Menu_theme.default,
99
+ Popover: import_Popover_theme.default,
100
+ Progress: import_Progress_theme.default,
101
+ RadioGroup: import_RadioGroup_theme.default,
102
+ Rating: import_Rating_theme.default,
103
+ Result: import_Result_theme.default,
104
+ Skeleton: import_Skeleton_theme.default,
105
+ Slider: import_Slider_theme.default,
106
+ Snackbar: import_Snackbar_theme.default,
107
+ Spinner: import_Spinner_theme.default,
108
+ Stepper: import_Stepper_theme.default,
109
+ Tag: import_Tag_theme.default,
110
+ Text: import_Text_theme.default,
111
+ TextArea: import_TextArea_theme.default,
112
+ NavigationMenu: import_NavigationMenu.default
113
+ };
114
+ var componentThemes_default = componentThemes;
@@ -49,12 +49,12 @@ __export(theme_exports, {
49
49
  });
50
50
  module.exports = __toCommonJS(theme_exports);
51
51
  var import_yoga_common = require("@gympass/yoga-common");
52
- var componentThemes = __toESM(require("../../**/*.theme.js"));
52
+ var import_componentThemes = __toESM(require("./componentThemes"));
53
53
  const getComponentThemes = (tokens) => {
54
54
  const { colors, baseFont, baseFontSize } = tokens;
55
- const components = Object.entries(componentThemes).reduce(
55
+ const components = Object.entries(import_componentThemes.default).reduce(
56
56
  (componentsStyles, [names, themed]) => {
57
- const [, name] = names.toLowerCase().split("$");
57
+ const name = names.toLowerCase();
58
58
  return __spreadProps(__spreadValues({}, componentsStyles), {
59
59
  [name]: themed(__spreadProps(__spreadValues({}, tokens), {
60
60
  colors,
package/cjs/index.js CHANGED
@@ -56,6 +56,7 @@ __export(src_exports, {
56
56
  Input: () => import_Input.default,
57
57
  List: () => import_List.default,
58
58
  Menu: () => import_Menu.default,
59
+ NavigationMenu: () => import_NavigationMenu.default,
59
60
  PlanCard: () => import_Card.PlanCard,
60
61
  Popover: () => import_Popover.default,
61
62
  Progress: () => import_Progress.default,
@@ -113,6 +114,7 @@ var import_Skeleton = __toESM(require("./Skeleton"));
113
114
  var import_ActionRequirement = __toESM(require("./ActionRequirement"));
114
115
  var import_Popover = __toESM(require("./Popover"));
115
116
  var import_Spinner = __toESM(require("./Spinner"));
117
+ var import_NavigationMenu = __toESM(require("./NavigationMenu"));
116
118
  // Annotate the CommonJS export names for ESM import in node:
117
119
  0 && (module.exports = {
118
120
  Accordion,
@@ -143,6 +145,7 @@ var import_Spinner = __toESM(require("./Spinner"));
143
145
  Input,
144
146
  List,
145
147
  Menu,
148
+ NavigationMenu,
146
149
  PlanCard,
147
150
  Popover,
148
151
  Progress,
package/cjs/yoga.d.js ADDED
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1,60 @@
1
+ const NavigationMenu = ({ colors, fontWeights, radii, spacing }) => ({
2
+ avatar: {
3
+ height: spacing.xlarge,
4
+ width: spacing.xlarge
5
+ },
6
+ backgroundColor: {
7
+ default: colors.clear,
8
+ hover: colors.light,
9
+ stamina: colors.stamina,
10
+ yoga: colors.yoga,
11
+ white: colors.white
12
+ },
13
+ border: {
14
+ color: {
15
+ default: colors.light,
16
+ white: colors.white
17
+ },
18
+ radius: {
19
+ default: radii.small,
20
+ circle: radii.circle
21
+ }
22
+ },
23
+ font: {
24
+ color: {
25
+ default: colors.deep,
26
+ active: colors.vibin,
27
+ hover: colors.stamina
28
+ },
29
+ weight: { medium: fontWeights.medium }
30
+ },
31
+ gap: {
32
+ xxxsmall: spacing.xxxsmall,
33
+ xxsmall: spacing.xxsmall,
34
+ medium: spacing.medium
35
+ },
36
+ height: { xxlarge: spacing.xxlarge, xlarge: spacing.xlarge },
37
+ icon: {
38
+ height: spacing.medium,
39
+ width: spacing.medium,
40
+ fill: {
41
+ default: colors.deep,
42
+ active: colors.vibin,
43
+ hover: colors.stamina
44
+ }
45
+ },
46
+ padding: {
47
+ xxxsmall: spacing.xxxsmall,
48
+ xxsmall: spacing.xxsmall,
49
+ xsmall: spacing.xsmall,
50
+ small: spacing.small
51
+ },
52
+ tag: {
53
+ color: { default: colors.white }
54
+ },
55
+ width: { xxlarge: spacing.xxlarge, xlarge: spacing.xlarge }
56
+ });
57
+ var NavigationMenu_theme_default = NavigationMenu;
58
+ export {
59
+ NavigationMenu_theme_default as default
60
+ };
@@ -0,0 +1,5 @@
1
+ import WebNavigationMenu from "./web";
2
+ var NavigationMenu_default = WebNavigationMenu;
3
+ export {
4
+ NavigationMenu_default as default
5
+ };
@@ -0,0 +1,135 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import styled, { css } from "styled-components";
3
+ import Icon from "../../../Icon";
4
+ import Box from "../../../Box";
5
+ import Text from "../../../Text";
6
+ const StyledText = styled(Text)`
7
+ ${({
8
+ theme: {
9
+ yoga: {
10
+ components: {
11
+ navigationmenu: { font }
12
+ }
13
+ }
14
+ }
15
+ }) => css`
16
+ color: ${font.color.default};
17
+ max-width: 100%;
18
+ white-space: nowrap;
19
+ text-overflow: ellipsis;
20
+ overflow: hidden;
21
+ `}
22
+ `;
23
+ const Active = css`
24
+ ${({
25
+ theme: {
26
+ yoga: {
27
+ components: {
28
+ navigationmenu: { backgroundColor, icon, font }
29
+ }
30
+ }
31
+ }
32
+ }) => css`
33
+ :not(:last-child) {
34
+ pointer-events: none;
35
+ }
36
+
37
+ div {
38
+ background-color: ${backgroundColor.default};
39
+
40
+ ${StyledText} {
41
+ color: ${font.color.active};
42
+ }
43
+
44
+ svg {
45
+ fill: ${icon.fill.active};
46
+ }
47
+ }
48
+ `}
49
+ `;
50
+ const StyledItem = styled.li`
51
+ ${({
52
+ isActive,
53
+ theme: {
54
+ yoga: {
55
+ components: {
56
+ navigationmenu: { backgroundColor, border, icon, font }
57
+ }
58
+ }
59
+ }
60
+ }) => css`
61
+ transition: background-color 300ms ease-in-out;
62
+
63
+ background-color: transparent;
64
+ border-radius: ${border.radius.default}px;
65
+ list-style-type: none;
66
+ cursor: pointer;
67
+
68
+ svg {
69
+ height: ${icon.height}px;
70
+ width: ${icon.width}px;
71
+ fill: ${icon.fill.default};
72
+ }
73
+
74
+ &:hover,
75
+ &:focus {
76
+ ${!isActive && css`
77
+ background-color: ${backgroundColor.hover};
78
+
79
+ ${StyledText} {
80
+ color: ${font.color.hover};
81
+ }
82
+
83
+ svg {
84
+ fill: ${icon.fill.hover};
85
+ }
86
+ `};
87
+ }
88
+
89
+ a {
90
+ text-decoration: none;
91
+
92
+ &.active {
93
+ cursor: auto;
94
+
95
+ ${Active}
96
+ }
97
+ }
98
+
99
+ ${isActive && Active};
100
+ `}
101
+ `;
102
+ const StyledTextContainer = styled(Box)`
103
+ ${({
104
+ theme: {
105
+ yoga: {
106
+ components: {
107
+ navigationmenu: { border, gap, padding }
108
+ }
109
+ }
110
+ }
111
+ }) => css`
112
+ display: flex;
113
+ flex-direction: column;
114
+ align-items: center;
115
+ justify-content: center;
116
+ gap: ${gap.xxxsmall}px;
117
+ padding: ${padding.xxsmall}px ${padding.xxxsmall}px;
118
+ border-radius: ${border.radius.default}px;
119
+ `}
120
+ `;
121
+ const BottomItem = ({
122
+ active = false,
123
+ icon,
124
+ label,
125
+ wrapper: Wrapper
126
+ }) => {
127
+ return /* @__PURE__ */ jsx(StyledItem, { isActive: active, children: /* @__PURE__ */ jsx(Wrapper, { children: /* @__PURE__ */ jsxs(StyledTextContainer, { children: [
128
+ /* @__PURE__ */ jsx(Icon, { as: icon }),
129
+ /* @__PURE__ */ jsx(StyledText, { children: label })
130
+ ] }) }) });
131
+ };
132
+ var BottomItem_default = BottomItem;
133
+ export {
134
+ BottomItem_default as default
135
+ };
@@ -0,0 +1,36 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import styled, { css } from "styled-components";
3
+ import { media } from "@gympass/yoga-helpers";
4
+ const StyledItemsContainer = styled.nav`
5
+ ${media.lg`display: none`}
6
+ `;
7
+ const StyledItems = styled.ul`
8
+ ${({
9
+ theme: {
10
+ yoga: {
11
+ components: {
12
+ navigationmenu: { backgroundColor, border, gap, padding }
13
+ }
14
+ }
15
+ }
16
+ }) => css`
17
+ display: grid;
18
+ grid-auto-columns: minmax(0, 1fr);
19
+ grid-auto-flow: column;
20
+ align-items: center;
21
+ width: 100%;
22
+ height: 74px;
23
+ background-color: ${backgroundColor.default};
24
+ margin: 0;
25
+ padding: ${padding.xxxsmall}px;
26
+ border: 1px solid ${border.color.default};
27
+ gap: ${gap.xxxsmall}px;
28
+ `}
29
+ `;
30
+ const BottomItems = ({ children }) => {
31
+ return /* @__PURE__ */ jsx(StyledItemsContainer, { children: /* @__PURE__ */ jsx(StyledItems, { children }) });
32
+ };
33
+ var BottomItems_default = BottomItems;
34
+ export {
35
+ BottomItems_default as default
36
+ };
@@ -0,0 +1,6 @@
1
+ import BottomItems from "./BottomItems";
2
+ import BottomItem from "./BottomItem";
3
+ export {
4
+ BottomItem,
5
+ BottomItems
6
+ };
@@ -0,0 +1,25 @@
1
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
2
+ import * as Styles from "./styles";
3
+ const Item = ({
4
+ active = false,
5
+ children,
6
+ expanded = false,
7
+ icon: Icon2,
8
+ label,
9
+ responsive = true,
10
+ tag,
11
+ wrapper: Wrapper
12
+ }) => {
13
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
14
+ /* @__PURE__ */ jsx(Styles.StyledItem, { isActive: active, isResponsive: responsive, children: /* @__PURE__ */ jsx(Wrapper, { children: /* @__PURE__ */ jsxs(Styles.StyledTextContainer, { children: [
15
+ Icon2,
16
+ /* @__PURE__ */ jsx(Styles.StyledText, { children: label }),
17
+ tag && /* @__PURE__ */ jsx(Styles.StyledTag, { children: tag })
18
+ ] }) }) }),
19
+ expanded && children
20
+ ] });
21
+ };
22
+ var Item_default = Item;
23
+ export {
24
+ Item_default as default
25
+ };