@axos-web-dev/shared-components 1.0.77-patch.15 → 1.0.77-patch.16

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.
@@ -43,3 +43,4 @@ export declare const ax1_calc_disclosure: import('@vanilla-extract/recipes').Run
43
43
  };
44
44
  };
45
45
  }>;
46
+ export declare const call_to_action_row: string;
@@ -19,6 +19,7 @@ var ax1_header_calc = "_11b2y8zb";
19
19
  var ax1_calc_text = "_11b2y8zc";
20
20
  var ax1_description_text = createRuntimeFn({ defaultClassName: "_11b2y8zd", variantClassNames: { variant: { primary: "_11b2y8ze", secondary: "_11b2y8zf", tertiary: "_11b2y8zg", quaternary: "_11b2y8zh" } }, defaultVariants: {}, compoundVariants: [] });
21
21
  var ax1_calc_disclosure = createRuntimeFn({ defaultClassName: "_11b2y8zi", variantClassNames: { variant: { primary: "_11b2y8zj", secondary: "_11b2y8zk", tertiary: "_11b2y8zl", quaternary: "_11b2y8zm" } }, defaultVariants: {}, compoundVariants: [] });
22
+ var call_to_action_row = "_11b2y8zn";
22
23
  export {
23
24
  ax1_calc_disclosure,
24
25
  ax1_calc_icon,
@@ -34,5 +35,6 @@ export {
34
35
  ax1_input_container,
35
36
  ax1_input_label,
36
37
  ax1_m_label,
37
- ax1_table_container
38
+ ax1_table_container,
39
+ call_to_action_row
38
40
  };
@@ -1,4 +1,5 @@
1
1
  import { default as React, FC } from 'react';
2
+ import { ChevronProps } from '../../Chevron/Chevron.interface';
2
3
 
3
4
  export interface AxosOneCalculatorProps {
4
5
  headline?: React.ReactNode | string;
@@ -7,5 +8,6 @@ export interface AxosOneCalculatorProps {
7
8
  disclosure: React.ReactNode | string;
8
9
  variant: string;
9
10
  initialBalance?: number;
11
+ callToActionRow?: ChevronProps[];
10
12
  }
11
13
  export declare const AxosOneCalculator: FC<AxosOneCalculatorProps>;
@@ -18,14 +18,15 @@ import { headerCell } from "../../Table/Table.css.js";
18
18
  import "../../utils/allowedAxosDomains.js";
19
19
  import { getVariant } from "../../utils/getVariant.js";
20
20
  import clsx from "clsx";
21
- import { ax1_calc_icon, ax1_header_container, ax1_header_calc, ax1_calc_text, ax1_description_text, ax1_calculator_wrapper, ax1_input_container, ax1_input_label, ax1_calculator_input, ax1_calculator_button, ax1_d_label, ax1_m_label, ax1_table_container, ax1_calc_disclosure, ax1_container } from "./BalanceAPYCalculator.css.js";
21
+ import { ax1_calc_icon, ax1_header_container, ax1_header_calc, ax1_calc_text, ax1_description_text, ax1_calculator_wrapper, ax1_input_container, ax1_input_label, ax1_calculator_input, ax1_calculator_button, ax1_d_label, ax1_m_label, ax1_table_container, call_to_action_row, ax1_calc_disclosure, ax1_container } from "./BalanceAPYCalculator.css.js";
22
22
  const AxosOneCalculator = ({
23
23
  headline,
24
24
  bodyCopy,
25
25
  disclosure,
26
26
  icon,
27
27
  variant,
28
- initialBalance
28
+ initialBalance,
29
+ callToActionRow
29
30
  }) => {
30
31
  const calc_variant = getVariant(variant);
31
32
  const AXOS_ONE_APY = +process.env.NEXT_PUBLIC_AXOS_ONE_APY;
@@ -69,6 +70,18 @@ const AxosOneCalculator = ({
69
70
  setBalance(0);
70
71
  }
71
72
  };
73
+ const formatUSD = (value) => {
74
+ if (Number.isInteger(value)) {
75
+ return value.toLocaleString(void 0, {
76
+ minimumFractionDigits: 0,
77
+ maximumFractionDigits: 0
78
+ });
79
+ }
80
+ return value.toLocaleString(void 0, {
81
+ minimumFractionDigits: 2,
82
+ maximumFractionDigits: 2
83
+ });
84
+ };
72
85
  return /* @__PURE__ */ jsx("section", { className: clsx(ax1_container), id: "axoapycalc", children: /* @__PURE__ */ jsxs("div", { className: clsx("containment"), children: [
73
86
  icon && /* @__PURE__ */ jsx("div", { className: clsx("text_center", ax1_calc_icon), children: ["primary", "secondary"].includes(variant) ? /* @__PURE__ */ jsx(SvgComponent, {}) : /* @__PURE__ */ jsx(SvgAxosX, {}) }),
74
87
  (headline || bodyCopy) && /* @__PURE__ */ jsxs("div", { className: `${ax1_header_container} text_center`, children: [
@@ -144,9 +157,7 @@ const AxosOneCalculator = ({
144
157
  ] }) }),
145
158
  /* @__PURE__ */ jsx(TableCell, { variant: "primary", children: /* @__PURE__ */ jsxs("b", { children: [
146
159
  "$",
147
- axbEarning.toLocaleString(void 0, {
148
- maximumFractionDigits: 2
149
- })
160
+ formatUSD(axbEarning)
150
161
  ] }) })
151
162
  ] }),
152
163
  /* @__PURE__ */ jsxs(TableRow, { children: [
@@ -160,9 +171,7 @@ const AxosOneCalculator = ({
160
171
  ] }),
161
172
  /* @__PURE__ */ jsxs(TableCell, { variant: "primary", children: [
162
173
  "$",
163
- fargoEarning.toLocaleString(void 0, {
164
- maximumFractionDigits: 2
165
- })
174
+ formatUSD(fargoEarning)
166
175
  ] })
167
176
  ] }),
168
177
  /* @__PURE__ */ jsxs(TableRow, { children: [
@@ -176,9 +185,7 @@ const AxosOneCalculator = ({
176
185
  ] }),
177
186
  /* @__PURE__ */ jsxs(TableCell, { variant: "primary", children: [
178
187
  "$",
179
- bofaEarning.toLocaleString(void 0, {
180
- maximumFractionDigits: 2
181
- })
188
+ formatUSD(bofaEarning)
182
189
  ] })
183
190
  ] }),
184
191
  /* @__PURE__ */ jsxs(TableRow, { children: [
@@ -192,9 +199,7 @@ const AxosOneCalculator = ({
192
199
  ] }),
193
200
  /* @__PURE__ */ jsxs(TableCell, { variant: "primary", children: [
194
201
  "$",
195
- chaseEarning.toLocaleString(void 0, {
196
- maximumFractionDigits: 2
197
- })
202
+ formatUSD(chaseEarning)
198
203
  ] })
199
204
  ] })
200
205
  ] })
@@ -202,6 +207,19 @@ const AxosOneCalculator = ({
202
207
  }
203
208
  )
204
209
  ] }),
210
+ Array.isArray(callToActionRow) && callToActionRow.length > 0 && /* @__PURE__ */ jsx("div", { className: `${call_to_action_row}`, children: callToActionRow?.map(
211
+ ({ id, variant: variant2, displayText, targetUrl }) => /* @__PURE__ */ jsx(
212
+ Button,
213
+ {
214
+ targetUrl,
215
+ color: getVariant(variant2),
216
+ size: "medium",
217
+ rounded: "medium",
218
+ children: displayText
219
+ },
220
+ id
221
+ )
222
+ ) }),
205
223
  disclosure && /* @__PURE__ */ jsx("div", { className: ax1_calc_disclosure({ variant: calc_variant }), children: disclosure })
206
224
  ] }) });
207
225
  };
@@ -1,5 +1,6 @@
1
1
  import { IconBillboardProps } from '../IconBillboard/IconBillboard.interface';
2
2
  import { default as React } from 'react';
3
+ import { ChevronProps } from '../Chevron/Chevron.interface';
3
4
 
4
5
  export interface CalculatorProps {
5
6
  id?: string;
@@ -12,5 +13,6 @@ export interface CalculatorProps {
12
13
  disclosure?: React.ReactNode;
13
14
  marketingTiles?: IconBillboardProps[];
14
15
  initialBalance?: number;
16
+ callToActionRow?: ChevronProps[];
15
17
  }
16
18
  export declare const Calculator: (props: CalculatorProps) => import("react/jsx-runtime").JSX.Element;
@@ -136,7 +136,8 @@ const Calculator = (props) => {
136
136
  headline,
137
137
  name,
138
138
  marketingTiles,
139
- initialBalance
139
+ initialBalance,
140
+ callToActionRow
140
141
  } = props;
141
142
  const ref = useRef(null);
142
143
  const iframe = calculators.get(name || "");
@@ -228,7 +229,8 @@ const Calculator = (props) => {
228
229
  variant,
229
230
  disclosure,
230
231
  icon,
231
- initialBalance
232
+ initialBalance,
233
+ callToActionRow
232
234
  }
233
235
  );
234
236
  } else if (name === "APY Balance Summit Savings") {
@@ -5,7 +5,12 @@ const useExitIntentModal = (enabled) => {
5
5
  const modalRef = useRef(null);
6
6
  useEffect(() => {
7
7
  if (!enabled) return;
8
- const STORAGE_KEY = "exitIntentShown";
8
+ const getPageSpecificStorageKey = () => {
9
+ const pathname = window.location.pathname;
10
+ const normalizedPath = pathname.replace(/^\/+|\/+$/g, "").replace(/\//g, "_") || "root";
11
+ return `exitIntentShown_${normalizedPath}`;
12
+ };
13
+ const STORAGE_KEY = getPageSpecificStorageKey();
9
14
  const sessionExpiry = 24 * 60 * 60 * 1e3;
10
15
  const hasShown = () => {
11
16
  const stored = localStorage.getItem(STORAGE_KEY);
@@ -61,7 +61,7 @@ export declare const TableCell: ({ children, as, variant, highlighted, colSpan,
61
61
  is?: string | undefined;
62
62
  exportparts?: string | undefined;
63
63
  part?: string | undefined;
64
- popover?: "" | "auto" | "manual" | "hint" | undefined;
64
+ popover?: "" | "auto" | "manual" | undefined;
65
65
  popoverTargetAction?: "toggle" | "show" | "hide" | undefined;
66
66
  popoverTarget?: string | undefined;
67
67
  onToggle?: import('react').ToggleEventHandler<HTMLTableCellElement> | undefined;
@@ -1,6 +1,6 @@
1
- import '../assets/WalnutIframe/wrapper.css.css';const wrapper = "_wrapper_1wqdl_19";
2
- const shimmer = "_shimmer_1wqdl_1";
3
- const wrapper_control = "_wrapper_control_1wqdl_77";
1
+ import '../assets/WalnutIframe/wrapper.css.css';const wrapper = "_wrapper_f1tr5_10";
2
+ const shimmer = "_shimmer_f1tr5_1";
3
+ const wrapper_control = "_wrapper_control_f1tr5_39";
4
4
  const css = {
5
5
  wrapper,
6
6
  shimmer,
@@ -119,6 +119,13 @@
119
119
  ._11b2y8zm {
120
120
  color: var(--_1073cm8n);
121
121
  }
122
+ ._11b2y8zn {
123
+ align-items: center;
124
+ display: flex;
125
+ justify-content: center;
126
+ margin-top: 2rem;
127
+ gap: 3rem;
128
+ }
122
129
  @media screen and (max-width: 1023px) {
123
130
  ._11b2y8z0 > .containment {
124
131
  max-width: 100%;
@@ -134,6 +141,11 @@
134
141
  ._11b2y8z3 {
135
142
  font-size: 23px;
136
143
  }
144
+ ._11b2y8zn {
145
+ flex-direction: column;
146
+ gap: 1rem;
147
+ padding-bottom: 2rem;
148
+ }
137
149
  }
138
150
  @media screen and (max-width: 900px) {
139
151
  ._11b2y8z8 {
@@ -1,48 +1,48 @@
1
- @keyframes _shimmer_1wqdl_1 {
2
- from {
3
- transform: translateX(-100%);
4
- }
5
- to {
6
- transform: translateX(100%);
7
- }
8
- }
9
-
10
- ._wrapper_1wqdl_19 {
11
- background: #1e3860;
12
- border-radius: 8px;
13
- height: 555px;
14
- isolation: isolate;
15
- margin-block: 48px;
16
- }
17
-
18
- section > ._wrapper_1wqdl_19:first-child {
19
- margin-top: 0 !important;
20
- }
21
-
22
- ._wrapper_1wqdl_19::before {
23
- content: "";
24
- position: absolute;
25
- top: 0;
26
- left: 0;
27
- width: 190%;
28
- height: 100%;
29
- background: linear-gradient(
30
- 65deg,
31
- rgba(255, 255, 255, 0) 20%,
32
- rgba(255, 255, 255, 0.5) 50%,
33
- rgba(255, 255, 255, 0) 80%
34
- );
35
- animation: _shimmer_1wqdl_1 1.3s infinite linear;
36
- z-index: -1;
37
- }
38
-
39
- ._wrapper_control_1wqdl_77 {
40
- height: 100%;
41
- width: 100%;
42
- }
43
-
44
- @media (max-width: 1023px) {
45
- ._wrapper_1wqdl_19 {
46
- display: none;
47
- }
48
- }
1
+ @keyframes _shimmer_f1tr5_1 {
2
+ from {
3
+ transform: translateX(-100%);
4
+ }
5
+ to {
6
+ transform: translateX(100%);
7
+ }
8
+ }
9
+
10
+ ._wrapper_f1tr5_10 {
11
+ background: #1e3860;
12
+ border-radius: 8px;
13
+ height: 555px;
14
+ isolation: isolate;
15
+ margin-block: 48px;
16
+ }
17
+
18
+ section > ._wrapper_f1tr5_10:first-child {
19
+ margin-top: 0 !important;
20
+ }
21
+
22
+ ._wrapper_f1tr5_10::before {
23
+ content: "";
24
+ position: absolute;
25
+ top: 0;
26
+ left: 0;
27
+ width: 190%;
28
+ height: 100%;
29
+ background: linear-gradient(
30
+ 65deg,
31
+ rgba(255, 255, 255, 0) 20%,
32
+ rgba(255, 255, 255, 0.5) 50%,
33
+ rgba(255, 255, 255, 0) 80%
34
+ );
35
+ animation: _shimmer_f1tr5_1 1.3s infinite linear;
36
+ z-index: -1;
37
+ }
38
+
39
+ ._wrapper_control_f1tr5_39 {
40
+ height: 100%;
41
+ width: 100%;
42
+ }
43
+
44
+ @media (max-width: 1023px) {
45
+ ._wrapper_f1tr5_10 {
46
+ display: none;
47
+ }
48
+ }
package/package.json CHANGED
@@ -1,133 +1,133 @@
1
- {
2
- "name": "@axos-web-dev/shared-components",
3
- "description": "Axos shared components library for web.",
4
- "version": "1.0.77-patch.15",
5
- "type": "module",
6
- "module": "dist/main.js",
7
- "types": "dist/main.d.ts",
8
- "files": [
9
- "dist"
10
- ],
11
- "sideEffects": [
12
- "dist/assets/**/*.css"
13
- ],
14
- "scripts": {
15
- "dev": "vite",
16
- "build": "tsc --p ./tsconfig.build.json && vite build",
17
- "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
18
- "preview": "vite preview",
19
- "prepublishOnly": "npm run build",
20
- "check-types": "tsc --pretty --noEmit",
21
- "check-format": "prettier --check .",
22
- "check-lint": "eslint . --ext ts --ext tsx --ext js",
23
- "format": "prettier --write .",
24
- "test-all": "npm run check-format && npm run check-lint && npm run check-types && npm run build",
25
- "prepare": "husky",
26
- "storybook": "storybook dev -p 6006",
27
- "build-storybook": "storybook build",
28
- "npm:link": "npm run build && npm link"
29
- },
30
- "dependencies": {
31
- "@headlessui/react": "^2.2.0",
32
- "@hookform/resolvers": "^3.10.0",
33
- "@next-safe-action/adapter-react-hook-form": "^2.0.0",
34
- "@react-input/mask": "^1.2.15",
35
- "@react-input/number-format": "^1.1.3",
36
- "@storybook/icons": "^1.3.0",
37
- "@storybook/preview-api": "^8.4.7",
38
- "@types/iframe-resizer": "3.5.13",
39
- "@vanilla-extract/css": "^1.16.1",
40
- "@vanilla-extract/recipes": "^0.5.1",
41
- "antd": "^5.22.5",
42
- "clsx": "^2.1.1",
43
- "framer-motion": "^12.9.2",
44
- "iframe-resizer": "^3.6.6",
45
- "lodash": "^4.17.21",
46
- "moment": "^2.30.1",
47
- "next-safe-action": "^8.0.2",
48
- "react-date-picker": "^11.0.0",
49
- "react-date-range": "^2.0.1",
50
- "react-hook-form": "^7.54.2",
51
- "react-markdown": "^9.0.1",
52
- "react-popper": "^2.3.0",
53
- "react-slick": "^0.30.2",
54
- "react-use": "^17.6.0",
55
- "react-wrap-balancer": "^1.1.1",
56
- "rsuite": "^5.75.0",
57
- "slick-carousel": "^1.8.1",
58
- "typed-css-modules": "^0.9.1",
59
- "vite-plugin-svgr": "^4.3.0",
60
- "zod": "^3.24.1",
61
- "zustand": "^4.5.5"
62
- },
63
- "peerDependencies": {
64
- "@vanilla-extract/css-utils": "^0.1.3",
65
- "@vanilla-extract/recipes": "^0.5.1",
66
- "@vanilla-extract/vite-plugin": "^4.0.3",
67
- "next": "^14.1.4",
68
- "react": "^18.2.0",
69
- "react-date-range": "^2.0.1",
70
- "react-dom": "^18.2.0",
71
- "react-popper": "^2.3.0",
72
- "react-slick": "^0.30.2",
73
- "slick-carousel": "^1.8.1"
74
- },
75
- "devDependencies": {
76
- "@chromatic-com/storybook": "^1.9.0",
77
- "@rollup/plugin-alias": "^5.1.1",
78
- "@storybook/addon-essentials": "^8.4.7",
79
- "@storybook/addon-interactions": "^8.4.7",
80
- "@storybook/addon-links": "^8.4.7",
81
- "@storybook/addon-mdx-gfm": "^8.4.7",
82
- "@storybook/addon-onboarding": "^8.4.7",
83
- "@storybook/addon-themes": "^8.4.7",
84
- "@storybook/blocks": "^8.4.7",
85
- "@storybook/react": "^8.6.14",
86
- "@storybook/react-vite": "^8.4.7",
87
- "@storybook/test": "^8.6.14",
88
- "@svgr/core": "^8.1.0",
89
- "@svgr/plugin-prettier": "^8.1.0",
90
- "@svgr/plugin-svgo": "^8.1.0",
91
- "@types/lodash": "^4.17.17",
92
- "@types/node": "^20.19.0",
93
- "@types/react": "^18.3.23",
94
- "@types/react-date-range": "^1.4.9",
95
- "@types/react-datepicker": "^6.2.0",
96
- "@types/react-dom": "^18.3.7",
97
- "@types/react-slick": "^0.23.13",
98
- "@typescript-eslint/eslint-plugin": "^7.18.0",
99
- "@typescript-eslint/parser": "^7.18.0",
100
- "@vanilla-extract/css-utils": "^0.1.4",
101
- "@vanilla-extract/recipes": "^0.5.5",
102
- "@vanilla-extract/vite-plugin": "^4.0.18",
103
- "@vitejs/plugin-react-swc": "^3.7.2",
104
- "esbuild-vanilla-image-loader": "^0.1.3",
105
- "eslint": "^8.57.1",
106
- "eslint-plugin-react-hooks": "^4.6.2",
107
- "eslint-plugin-react-refresh": "^0.4.16",
108
- "eslint-plugin-storybook": "^0.8.0",
109
- "glob": "^10.4.5",
110
- "husky": "^9.1.7",
111
- "next": "^14.1.4",
112
- "prettier": "3.2.5",
113
- "react": "^18.3.1",
114
- "react-dom": "^18.3.1",
115
- "rollup-plugin-preserve-directives": "^0.4.0",
116
- "rollup-plugin-svg-import": "^3.0.0",
117
- "rollup-plugin-svgo": "^2.0.0",
118
- "storybook": "^8.4.7",
119
- "typescript": "^5.7.2",
120
- "typescript-plugin-css-modules": "^5.1.0",
121
- "vite": "^5.4.11",
122
- "vite-plugin-dts": "^3.9.1",
123
- "vite-plugin-lib-inject-css": "^2.1.1",
124
- "vite-plugin-setting-css-module": "^1.1.4",
125
- "vite-tsconfig-paths": "^4.3.2"
126
- },
127
- "main": "index.js",
128
- "directories": {
129
- "lib": "lib"
130
- },
131
- "author": "axos-web-dev",
132
- "license": "ISC"
133
- }
1
+ {
2
+ "name": "@axos-web-dev/shared-components",
3
+ "description": "Axos shared components library for web.",
4
+ "version": "1.0.77-patch.16",
5
+ "type": "module",
6
+ "module": "dist/main.js",
7
+ "types": "dist/main.d.ts",
8
+ "files": [
9
+ "dist"
10
+ ],
11
+ "sideEffects": [
12
+ "dist/assets/**/*.css"
13
+ ],
14
+ "scripts": {
15
+ "dev": "vite",
16
+ "build": "tsc --p ./tsconfig.build.json && vite build",
17
+ "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
18
+ "preview": "vite preview",
19
+ "prepublishOnly": "npm run build",
20
+ "check-types": "tsc --pretty --noEmit",
21
+ "check-format": "prettier --check .",
22
+ "check-lint": "eslint . --ext ts --ext tsx --ext js",
23
+ "format": "prettier --write .",
24
+ "test-all": "npm run check-format && npm run check-lint && npm run check-types && npm run build",
25
+ "prepare": "husky",
26
+ "storybook": "storybook dev -p 6006",
27
+ "build-storybook": "storybook build",
28
+ "npm:link": "npm run build && npm link"
29
+ },
30
+ "dependencies": {
31
+ "@headlessui/react": "^2.2.0",
32
+ "@hookform/resolvers": "^3.10.0",
33
+ "@next-safe-action/adapter-react-hook-form": "^2.0.0",
34
+ "@react-input/mask": "^1.2.15",
35
+ "@react-input/number-format": "^1.1.3",
36
+ "@storybook/icons": "^1.3.0",
37
+ "@storybook/preview-api": "^8.4.7",
38
+ "@types/iframe-resizer": "3.5.13",
39
+ "@vanilla-extract/css": "^1.16.1",
40
+ "@vanilla-extract/recipes": "^0.5.1",
41
+ "antd": "^5.22.5",
42
+ "clsx": "^2.1.1",
43
+ "framer-motion": "^12.9.2",
44
+ "iframe-resizer": "^3.6.6",
45
+ "lodash": "^4.17.21",
46
+ "moment": "^2.30.1",
47
+ "next-safe-action": "^8.0.2",
48
+ "react-date-picker": "^11.0.0",
49
+ "react-date-range": "^2.0.1",
50
+ "react-hook-form": "^7.54.2",
51
+ "react-markdown": "^9.0.1",
52
+ "react-popper": "^2.3.0",
53
+ "react-slick": "^0.30.2",
54
+ "react-use": "^17.6.0",
55
+ "react-wrap-balancer": "^1.1.1",
56
+ "rsuite": "^5.75.0",
57
+ "slick-carousel": "^1.8.1",
58
+ "typed-css-modules": "^0.9.1",
59
+ "vite-plugin-svgr": "^4.3.0",
60
+ "zod": "^3.24.1",
61
+ "zustand": "^4.5.5"
62
+ },
63
+ "peerDependencies": {
64
+ "@vanilla-extract/css-utils": "^0.1.3",
65
+ "@vanilla-extract/recipes": "^0.5.1",
66
+ "@vanilla-extract/vite-plugin": "^4.0.3",
67
+ "next": "^14.1.4",
68
+ "react": "^18.2.0",
69
+ "react-date-range": "^2.0.1",
70
+ "react-dom": "^18.2.0",
71
+ "react-popper": "^2.3.0",
72
+ "react-slick": "^0.30.2",
73
+ "slick-carousel": "^1.8.1"
74
+ },
75
+ "devDependencies": {
76
+ "@chromatic-com/storybook": "^1.9.0",
77
+ "@rollup/plugin-alias": "^5.1.1",
78
+ "@storybook/addon-essentials": "^8.4.7",
79
+ "@storybook/addon-interactions": "^8.4.7",
80
+ "@storybook/addon-links": "^8.4.7",
81
+ "@storybook/addon-mdx-gfm": "^8.4.7",
82
+ "@storybook/addon-onboarding": "^8.4.7",
83
+ "@storybook/addon-themes": "^8.4.7",
84
+ "@storybook/blocks": "^8.4.7",
85
+ "@storybook/react": "^8.6.14",
86
+ "@storybook/react-vite": "^8.4.7",
87
+ "@storybook/test": "^8.6.14",
88
+ "@svgr/core": "^8.1.0",
89
+ "@svgr/plugin-prettier": "^8.1.0",
90
+ "@svgr/plugin-svgo": "^8.1.0",
91
+ "@types/lodash": "^4.17.17",
92
+ "@types/node": "^20.19.0",
93
+ "@types/react": "^18.3.23",
94
+ "@types/react-date-range": "^1.4.9",
95
+ "@types/react-datepicker": "^6.2.0",
96
+ "@types/react-dom": "^18.3.7",
97
+ "@types/react-slick": "^0.23.13",
98
+ "@typescript-eslint/eslint-plugin": "^7.18.0",
99
+ "@typescript-eslint/parser": "^7.18.0",
100
+ "@vanilla-extract/css-utils": "^0.1.4",
101
+ "@vanilla-extract/recipes": "^0.5.5",
102
+ "@vanilla-extract/vite-plugin": "^4.0.18",
103
+ "@vitejs/plugin-react-swc": "^3.7.2",
104
+ "esbuild-vanilla-image-loader": "^0.1.3",
105
+ "eslint": "^8.57.1",
106
+ "eslint-plugin-react-hooks": "^4.6.2",
107
+ "eslint-plugin-react-refresh": "^0.4.16",
108
+ "eslint-plugin-storybook": "^0.8.0",
109
+ "glob": "^10.4.5",
110
+ "husky": "^9.1.7",
111
+ "next": "^14.1.4",
112
+ "prettier": "3.2.5",
113
+ "react": "^18.3.1",
114
+ "react-dom": "^18.3.1",
115
+ "rollup-plugin-preserve-directives": "^0.4.0",
116
+ "rollup-plugin-svg-import": "^3.0.0",
117
+ "rollup-plugin-svgo": "^2.0.0",
118
+ "storybook": "^8.4.7",
119
+ "typescript": "^5.7.2",
120
+ "typescript-plugin-css-modules": "^5.1.0",
121
+ "vite": "^5.4.11",
122
+ "vite-plugin-dts": "^3.9.1",
123
+ "vite-plugin-lib-inject-css": "^2.1.1",
124
+ "vite-plugin-setting-css-module": "^1.1.4",
125
+ "vite-tsconfig-paths": "^4.3.2"
126
+ },
127
+ "main": "index.js",
128
+ "directories": {
129
+ "lib": "lib"
130
+ },
131
+ "author": "axos-web-dev",
132
+ "license": "ISC"
133
+ }