@bailaya/react 1.0.3 → 1.0.4

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 (44) hide show
  1. package/README.md +163 -163
  2. package/package.json +35 -35
  3. package/dist/components/ClassSchedule.d.ts +0 -40
  4. package/dist/components/ClassSchedule.d.ts.map +0 -1
  5. package/dist/components/ClassSchedule.js +0 -38
  6. package/dist/components/ClassScheduleByType.d.ts +0 -42
  7. package/dist/components/ClassScheduleByType.d.ts.map +0 -1
  8. package/dist/components/ClassScheduleByType.js +0 -37
  9. package/dist/components/InstructorList.d.ts +0 -34
  10. package/dist/components/InstructorList.d.ts.map +0 -1
  11. package/dist/components/InstructorList.js +0 -27
  12. package/dist/components/StudioProfileCard.d.ts +0 -47
  13. package/dist/components/StudioProfileCard.d.ts.map +0 -1
  14. package/dist/components/StudioProfileCard.js +0 -40
  15. package/dist/components/UserProfileCard.d.ts +0 -47
  16. package/dist/components/UserProfileCard.d.ts.map +0 -1
  17. package/dist/components/UserProfileCard.js +0 -40
  18. package/dist/components/ui/LoadingIcon.d.ts +0 -2
  19. package/dist/components/ui/LoadingIcon.d.ts.map +0 -1
  20. package/dist/components/ui/LoadingIcon.js +0 -9
  21. package/dist/context/BailayaProvider.d.ts +0 -8
  22. package/dist/context/BailayaProvider.d.ts.map +0 -1
  23. package/dist/context/BailayaProvider.js +0 -20
  24. package/dist/hooks/useClasses.d.ts +0 -15
  25. package/dist/hooks/useClasses.d.ts.map +0 -1
  26. package/dist/hooks/useClasses.js +0 -25
  27. package/dist/hooks/useClassesByType.d.ts +0 -16
  28. package/dist/hooks/useClassesByType.d.ts.map +0 -1
  29. package/dist/hooks/useClassesByType.js +0 -28
  30. package/dist/hooks/useInstructors.d.ts +0 -15
  31. package/dist/hooks/useInstructors.d.ts.map +0 -1
  32. package/dist/hooks/useInstructors.js +0 -23
  33. package/dist/hooks/useStudioProfile.d.ts +0 -10
  34. package/dist/hooks/useStudioProfile.d.ts.map +0 -1
  35. package/dist/hooks/useStudioProfile.js +0 -18
  36. package/dist/hooks/useUserProfile.d.ts +0 -12
  37. package/dist/hooks/useUserProfile.d.ts.map +0 -1
  38. package/dist/hooks/useUserProfile.js +0 -20
  39. package/dist/index.d.ts +0 -29
  40. package/dist/index.d.ts.map +0 -1
  41. package/dist/index.js +0 -56
  42. package/dist/types.d.ts +0 -9
  43. package/dist/types.d.ts.map +0 -1
  44. package/dist/types.js +0 -2
package/README.md CHANGED
@@ -1,163 +1,163 @@
1
- # @bailaya/react
2
-
3
- > A React component library and hooks for the BailaYa public API
4
-
5
- ## Overview
6
-
7
- `@bailaya/react` builds on top of **@bailaya/core** to provide:
8
-
9
- - A **`BailayaProvider`** + **`useBailayaClient`** context
10
- - React Query–powered **hooks** for fetching all core data
11
- - **Components** with sensible Tailwind defaults (and full styling slots)
12
- - Full TypeScript support, including localized text & date formatting
13
-
14
- Whether you need a quick `<StudioProfileCard />` or fine-grained hooks like `useClassesByType()`, this package has you covered.
15
-
16
- ## Features
17
-
18
- - **Context + client** (`BailayaProvider` + `useBailayaClient`)
19
- - **Hooks**
20
- - `useStudioProfile(overrideId?)`
21
- - `useUserProfile(userId)`
22
- - `useInstructors(overrideId?)`
23
- - `useClasses(from?, overrideId?)`
24
- - `useClassesByType(typeName, from?, overrideId?)`
25
- - **Components** (all props overridable)
26
- - `<StudioProfileCard />`
27
- - `<UserProfileCard />`
28
- - `<InstructorList />`
29
- - `<ClassSchedule />`
30
- - `<ClassScheduleByType />`
31
- - **Localization**
32
- - Select description by `locale` prop
33
- - Date formatting via Intl
34
- - Custom text labels
35
-
36
- ## Installation
37
-
38
- ```bash
39
- npm install @bailaya/react @tanstack/react-query
40
- ````
41
-
42
- or with Yarn:
43
-
44
- ```bash
45
- yarn add @bailaya/react @tanstack/react-query
46
- ```
47
-
48
- > **Peer Dependencies**
49
- >
50
- > * `"react": ">=17"`
51
- > * `"react-dom": ">=17"`
52
- > * `"@tanstack/react-query": ">=5"`
53
-
54
- ## Quick Start
55
-
56
- First, wrap your app with both **React Query** and **BailayaProvider**:
57
-
58
- ```tsx
59
- // App.tsx
60
- import React from "react";
61
- import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
62
- import { BailayaProvider } from "@bailaya/react";
63
-
64
- const queryClient = new QueryClient();
65
-
66
- export default function App() {
67
- return (
68
- <QueryClientProvider client={queryClient}>
69
- <BailayaProvider config={{ studioId: "YOUR_STUDIO_ID" }}>
70
- {/* ...your app */}
71
- </BailayaProvider>
72
- </QueryClientProvider>
73
- );
74
- }
75
- ```
76
-
77
- ---
78
-
79
- ### Using a Hook
80
-
81
- ```tsx
82
- import React from "react";
83
- import { useInstructors } from "@bailaya/react";
84
-
85
- export function TeamSection() {
86
- const { data: instructors, isLoading, error } = useInstructors();
87
-
88
- if (isLoading) return <p>Loading...</p>;
89
- if (error) return <p>Error: {error.message}</p>;
90
-
91
- return (
92
- <ul>
93
- {instructors.map((i) => (
94
- <li key={i.id}>{i.name} {i.lastname}</li>
95
- ))}
96
- </ul>
97
- );
98
- }
99
- ```
100
-
101
- ---
102
-
103
- ### Using a Component
104
-
105
- ```tsx
106
- import React from "react";
107
- import { StudioProfileCard } from "@bailaya/react";
108
-
109
- export function Dashboard() {
110
- return (
111
- <div className="max-w-md mx-auto">
112
- <StudioProfileCard
113
- locale="en"
114
- className="bg-white rounded-lg shadow p-6"
115
- />
116
- </div>
117
- );
118
- }
119
- ```
120
-
121
- ---
122
-
123
- ## API Reference
124
-
125
- ### `<BailayaProvider config>`
126
-
127
- Provides `useBailayaClient()` context.
128
-
129
- * `config.baseUrl?: string` – override default API URL
130
- * `config.studioId?: string` – default studio ID
131
-
132
- ### Hooks
133
-
134
- | Hook | Description |
135
- |--------------------------------------------------| -------------------------------------------------------------------- |
136
- | `useStudioProfile(overrideId?)` | Fetch & parse a studio’s profile. |
137
- | `useUserProfile(userId)` | Fetch & parse a user’s profile / bio. |
138
- | `useInstructors(overrideId?)` | Fetch & parse list of active instructors (owner, admin, instructor). |
139
- | `useClasses(from?, overrideId?)` | Fetch & parse next 7 days of classes (all types). |
140
- | `useClassesByType(typeName, from?, overrideId?)` | Fetch & parse next 7 days of classes filtered by `typeName`. |
141
-
142
- Each returns a **`UseQueryResult<..., Error>`**.
143
-
144
- ### Components
145
-
146
- All components share:
147
-
148
- * **Override props** for every styling slot
149
- * **`locale`** (where relevant)
150
- * **`labels`** object for custom text (e.g. instructor or business-hours labels)
151
- * **`renderItem`** for full JSX override
152
-
153
- | Component | Props |
154
- | ------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
155
- | `<StudioProfileCard />` | `overrideId?`, `locale?`, `labels?`, `className?`, `nameClassName?`, `descriptionClassName?`, `labelClassName?`, `renderProfile?` |
156
- | `<UserProfileCard />` | `userId`, `locale?`, `labels?`, `className?`, `nameClassName?`, `bioClassName?`, `renderProfile?` |
157
- | `<InstructorList />` | `overrideId?`, `renderItem?`, plus styling slots: `className?`, `itemClassName?`, `imageWrapperClassName?`, etc. |
158
- | `<ClassSchedule />` | `from?`, `overrideId?`, `locale?`, `labels?`, `renderItem?`, plus slots: `className?`, `itemClassName?`, etc. |
159
- | `<ClassScheduleByType />` | `typeName`, `from?`, `overrideId?`, `locale?`, `labels?`, `renderItem?`, plus same styling slots as `<ClassSchedule />`. |
160
-
161
- ## License
162
-
163
- ISC
1
+ # @bailaya/react
2
+
3
+ > A React component library and hooks for the BailaYa public API
4
+
5
+ ## Overview
6
+
7
+ `@bailaya/react` builds on top of **@bailaya/core** to provide:
8
+
9
+ - A **`BailayaProvider`** + **`useBailayaClient`** context
10
+ - React Query–powered **hooks** for fetching all core data
11
+ - **Components** with sensible Tailwind defaults (and full styling slots)
12
+ - Full TypeScript support, including localized text & date formatting
13
+
14
+ Whether you need a quick `<StudioProfileCard />` or fine-grained hooks like `useClassesByType()`, this package has you covered.
15
+
16
+ ## Features
17
+
18
+ - **Context + client** (`BailayaProvider` + `useBailayaClient`)
19
+ - **Hooks**
20
+ - `useStudioProfile(overrideId?)`
21
+ - `useUserProfile(userId)`
22
+ - `useInstructors(overrideId?)`
23
+ - `useClasses(from?, overrideId?)`
24
+ - `useClassesByType(typeName, from?, overrideId?)`
25
+ - **Components** (all props overridable)
26
+ - `<StudioProfileCard />`
27
+ - `<UserProfileCard />`
28
+ - `<InstructorList />`
29
+ - `<ClassSchedule />`
30
+ - `<ClassScheduleByType />`
31
+ - **Localization**
32
+ - Select description by `locale` prop
33
+ - Date formatting via Intl
34
+ - Custom text labels
35
+
36
+ ## Installation
37
+
38
+ ```bash
39
+ npm install @bailaya/react @tanstack/react-query
40
+ ````
41
+
42
+ or with Yarn:
43
+
44
+ ```bash
45
+ yarn add @bailaya/react @tanstack/react-query
46
+ ```
47
+
48
+ > **Peer Dependencies**
49
+ >
50
+ > * `"react": ">=17"`
51
+ > * `"react-dom": ">=17"`
52
+ > * `"@tanstack/react-query": ">=5"`
53
+
54
+ ## Quick Start
55
+
56
+ First, wrap your app with both **React Query** and **BailayaProvider**:
57
+
58
+ ```tsx
59
+ // App.tsx
60
+ import React from "react";
61
+ import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
62
+ import { BailayaProvider } from "@bailaya/react";
63
+
64
+ const queryClient = new QueryClient();
65
+
66
+ export default function App() {
67
+ return (
68
+ <QueryClientProvider client={queryClient}>
69
+ <BailayaProvider config={{ studioId: "YOUR_STUDIO_ID" }}>
70
+ {/* ...your app */}
71
+ </BailayaProvider>
72
+ </QueryClientProvider>
73
+ );
74
+ }
75
+ ```
76
+
77
+ ---
78
+
79
+ ### Using a Hook
80
+
81
+ ```tsx
82
+ import React from "react";
83
+ import { useInstructors } from "@bailaya/react";
84
+
85
+ export function TeamSection() {
86
+ const { data: instructors, isLoading, error } = useInstructors();
87
+
88
+ if (isLoading) return <p>Loading...</p>;
89
+ if (error) return <p>Error: {error.message}</p>;
90
+
91
+ return (
92
+ <ul>
93
+ {instructors.map((i) => (
94
+ <li key={i.id}>{i.name} {i.lastname}</li>
95
+ ))}
96
+ </ul>
97
+ );
98
+ }
99
+ ```
100
+
101
+ ---
102
+
103
+ ### Using a Component
104
+
105
+ ```tsx
106
+ import React from "react";
107
+ import { StudioProfileCard } from "@bailaya/react";
108
+
109
+ export function Dashboard() {
110
+ return (
111
+ <div className="max-w-md mx-auto">
112
+ <StudioProfileCard
113
+ locale="en"
114
+ className="bg-white rounded-lg shadow p-6"
115
+ />
116
+ </div>
117
+ );
118
+ }
119
+ ```
120
+
121
+ ---
122
+
123
+ ## API Reference
124
+
125
+ ### `<BailayaProvider config>`
126
+
127
+ Provides `useBailayaClient()` context.
128
+
129
+ * `config.baseUrl?: string` – override default API URL
130
+ * `config.studioId?: string` – default studio ID
131
+
132
+ ### Hooks
133
+
134
+ | Hook | Description |
135
+ |--------------------------------------------------| -------------------------------------------------------------------- |
136
+ | `useStudioProfile(overrideId?)` | Fetch & parse a studio’s profile. |
137
+ | `useUserProfile(userId)` | Fetch & parse a user’s profile / bio. |
138
+ | `useInstructors(overrideId?)` | Fetch & parse list of active instructors (owner, admin, instructor). |
139
+ | `useClasses(from?, overrideId?)` | Fetch & parse next 7 days of classes (all types). |
140
+ | `useClassesByType(typeName, from?, overrideId?)` | Fetch & parse next 7 days of classes filtered by `typeName`. |
141
+
142
+ Each returns a **`UseQueryResult<..., Error>`**.
143
+
144
+ ### Components
145
+
146
+ All components share:
147
+
148
+ * **Override props** for every styling slot
149
+ * **`locale`** (where relevant)
150
+ * **`labels`** object for custom text (e.g. instructor or business-hours labels)
151
+ * **`renderItem`** for full JSX override
152
+
153
+ | Component | Props |
154
+ | ------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
155
+ | `<StudioProfileCard />` | `overrideId?`, `locale?`, `labels?`, `className?`, `nameClassName?`, `descriptionClassName?`, `labelClassName?`, `renderProfile?` |
156
+ | `<UserProfileCard />` | `userId`, `locale?`, `labels?`, `className?`, `nameClassName?`, `bioClassName?`, `renderProfile?` |
157
+ | `<InstructorList />` | `overrideId?`, `renderItem?`, plus styling slots: `className?`, `itemClassName?`, `imageWrapperClassName?`, etc. |
158
+ | `<ClassSchedule />` | `from?`, `overrideId?`, `locale?`, `labels?`, `renderItem?`, plus slots: `className?`, `itemClassName?`, etc. |
159
+ | `<ClassScheduleByType />` | `typeName`, `from?`, `overrideId?`, `locale?`, `labels?`, `renderItem?`, plus same styling slots as `<ClassSchedule />`. |
160
+
161
+ ## License
162
+
163
+ ISC
package/package.json CHANGED
@@ -1,35 +1,35 @@
1
- {
2
- "name": "@bailaya/react",
3
- "version": "1.0.3",
4
- "description": "A React component library for the BailaYa public API",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
7
- "files": [
8
- "dist"
9
- ],
10
- "scripts": {
11
- "build": "tsc --build",
12
- "test": "jest"
13
- },
14
- "peerDependencies": {
15
- "react": ">=17.0.0 <20.0.0",
16
- "react-dom": ">=17.0.0 <20.0.0",
17
- "@tanstack/react-query": ">=5"
18
- },
19
- "devDependencies": {
20
- "@tanstack/react-query": "^5.84.1",
21
- "@types/jest": "^30.0.0",
22
- "@types/react": "^18.0.0",
23
- "@types/react-dom": "^18.0.0",
24
- "jest": "^30.0.5",
25
- "react": "^18.2.0",
26
- "react-dom": "^18.2.0",
27
- "ts-jest": "^29.4.0",
28
- "typescript": "^5.8.3"
29
- },
30
- "dependencies": {
31
- "@bailaya/core": "^1.0.3",
32
- "lucide-react": "^0.536.0"
33
- },
34
- "license": "ISC"
35
- }
1
+ {
2
+ "name": "@bailaya/react",
3
+ "version": "1.0.4",
4
+ "description": "A React component library for the BailaYa public API",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "files": [
8
+ "dist"
9
+ ],
10
+ "scripts": {
11
+ "build": "tsc --build",
12
+ "test": "jest"
13
+ },
14
+ "peerDependencies": {
15
+ "react": ">=17.0.0 <20.0.0",
16
+ "react-dom": ">=17.0.0 <20.0.0",
17
+ "@tanstack/react-query": ">=5"
18
+ },
19
+ "devDependencies": {
20
+ "@tanstack/react-query": "^5.84.1",
21
+ "@types/jest": "^30.0.0",
22
+ "@types/react": "^18.0.0",
23
+ "@types/react-dom": "^18.0.0",
24
+ "jest": "^30.0.5",
25
+ "react": "^18.2.0",
26
+ "react-dom": "^18.2.0",
27
+ "ts-jest": "^29.4.0",
28
+ "typescript": "^5.8.3"
29
+ },
30
+ "dependencies": {
31
+ "@bailaya/core": "^1.0.4",
32
+ "lucide-react": "^0.536.0"
33
+ },
34
+ "license": "ISC"
35
+ }
@@ -1,40 +0,0 @@
1
- import React from 'react';
2
- import type { StudioClass } from '@bailaya/core';
3
- export interface ClassScheduleProps {
4
- /** Optional start date for the 7-day window; defaults to today */
5
- from?: Date;
6
- /** Optional studio ID to override the default configured ID */
7
- overrideId?: string;
8
- /** Locale code for date formatting (e.g. "en", "es"); falls back to browser default */
9
- locale?: string;
10
- /** Custom labels (e.g. for "Instructor:" text) */
11
- labels?: {
12
- /** Label text for the instructor line; defaults to "Instructor:" */
13
- instructor?: string;
14
- };
15
- /** Root container wrapper */
16
- className?: string;
17
- /** Each class "card" wrapper */
18
- itemClassName?: string;
19
- /** Class name element */
20
- nameClassName?: string;
21
- /** Details (date/time) element */
22
- detailsClassName?: string;
23
- /** Instructor line element */
24
- instructorClassName?: string;
25
- /**
26
- * Completely override the default renderItem
27
- */
28
- renderItem?: (cls: StudioClass) => React.ReactNode;
29
- }
30
- /**
31
- * Displays an upcoming-class schedule for a studio:
32
- * • name + level
33
- * • weekday, MM-DD, time
34
- * • optional instructor
35
- *
36
- * Uses sensible Tailwind defaults, but you can override
37
- * every slot via props or replace the layout entirely.
38
- */
39
- export declare const ClassSchedule: React.FC<ClassScheduleProps>;
40
- //# sourceMappingURL=ClassSchedule.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ClassSchedule.d.ts","sourceRoot":"","sources":["../../src/components/ClassSchedule.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAGjD,MAAM,WAAW,kBAAkB;IACjC,kEAAkE;IAClE,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,uFAAuF;IACvF,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,kDAAkD;IAClD,MAAM,CAAC,EAAE;QACP,oEAAoE;QACpE,UAAU,CAAC,EAAE,MAAM,CAAA;KACpB,CAAA;IACD,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gCAAgC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,8BAA8B;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAA;CACnD;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA4DtD,CAAA"}
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ClassSchedule = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const useClasses_1 = require("../hooks/useClasses");
6
- const LoadingIcon_1 = require("./ui/LoadingIcon");
7
- /**
8
- * Displays an upcoming-class schedule for a studio:
9
- * • name + level
10
- * • weekday, MM-DD, time
11
- * • optional instructor
12
- *
13
- * Uses sensible Tailwind defaults, but you can override
14
- * every slot via props or replace the layout entirely.
15
- */
16
- const ClassSchedule = ({ from, overrideId, locale, labels = {}, className = 'mt-6 md:mt-12 space-y-4', itemClassName = 'p-4 bg-white rounded-lg shadow', nameClassName = 'font-semibold text-lg', detailsClassName = 'text-sm text-gray-600', instructorClassName = 'text-sm text-gray-800 mt-1', renderItem, }) => {
17
- var _a;
18
- const { data: classes, isLoading, error } = (0, useClasses_1.useClasses)(from, overrideId);
19
- const weekdayFmt = new Intl.DateTimeFormat(locale !== null && locale !== void 0 ? locale : 'en', { weekday: 'long' });
20
- const dateFmt = new Intl.DateTimeFormat(locale !== null && locale !== void 0 ? locale : 'en', { month: 'short', day: 'numeric' });
21
- const instructorLabel = (_a = labels === null || labels === void 0 ? void 0 : labels.instructor) !== null && _a !== void 0 ? _a : 'Instructor:';
22
- if (isLoading) {
23
- return (0, jsx_runtime_1.jsx)("div", { className: className, children: (0, jsx_runtime_1.jsx)(LoadingIcon_1.LoadingIcon, {}) });
24
- }
25
- if (error) {
26
- return (0, jsx_runtime_1.jsx)("div", { className: className, children: error.message });
27
- }
28
- return ((0, jsx_runtime_1.jsx)("ul", { className: className, children: classes === null || classes === void 0 ? void 0 : classes.map((cls) => {
29
- const dateObj = cls.date;
30
- const dayName = weekdayFmt.format(dateObj);
31
- const shortDate = dateFmt.format(dateObj);
32
- if (renderItem) {
33
- return (0, jsx_runtime_1.jsx)("li", { children: renderItem(cls) }, cls.id);
34
- }
35
- return ((0, jsx_runtime_1.jsx)("li", { className: itemClassName, children: (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsxs)("div", { className: nameClassName, children: [cls.name, ' ', (0, jsx_runtime_1.jsxs)("span", { className: "text-sm text-gray-500", children: ["(", cls.level, ")"] })] }), (0, jsx_runtime_1.jsxs)("div", { className: detailsClassName, children: [dayName, ", ", shortDate, " \u2014 ", cls.startTime, "\u2013", cls.endTime] }), cls.instructor && ((0, jsx_runtime_1.jsxs)("div", { className: instructorClassName, children: [instructorLabel, ' ', (0, jsx_runtime_1.jsxs)("strong", { children: [cls.instructor.name, cls.instructor.lastname ? ` ${cls.instructor.lastname}` : ''] })] }))] }) }, cls.id));
36
- }) }));
37
- };
38
- exports.ClassSchedule = ClassSchedule;
@@ -1,42 +0,0 @@
1
- import React from 'react';
2
- import type { StudioClass } from '@bailaya/core';
3
- export interface ClassScheduleByTypeProps {
4
- /** The dance type to filter classes by (e.g., "salsa") */
5
- typeName: string;
6
- /** Optional start date for the 7-day window; defaults to today */
7
- from?: Date;
8
- /** Optional studio ID to override the default configured ID */
9
- overrideId?: string;
10
- /** Locale code for date formatting (e.g. "en", "es"); falls back to browser default */
11
- locale?: string;
12
- /** Custom labels (e.g. for "Instructor:" text) */
13
- labels?: {
14
- /** Label text for the instructor line; defaults to "Instructor:" */
15
- instructor?: string;
16
- };
17
- /** Root container wrapper */
18
- className?: string;
19
- /** Each class "card" wrapper */
20
- itemClassName?: string;
21
- /** Class name element */
22
- nameClassName?: string;
23
- /** Details (date/time) element */
24
- detailsClassName?: string;
25
- /** Instructor line element */
26
- instructorClassName?: string;
27
- /**
28
- * Completely override the default render for each item
29
- */
30
- renderItem?: (cls: StudioClass) => React.ReactNode;
31
- }
32
- /**
33
- * Displays a schedule of upcoming classes of a specific dance type:
34
- * • name + level
35
- * • weekday, MM-DD, time
36
- * • optional instructor
37
- *
38
- * Uses sensible Tailwind defaults but you can override
39
- * every slot via props or bypass with renderItem.
40
- */
41
- export declare const ClassScheduleByType: React.FC<ClassScheduleByTypeProps>;
42
- //# sourceMappingURL=ClassScheduleByType.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ClassScheduleByType.d.ts","sourceRoot":"","sources":["../../src/components/ClassScheduleByType.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,MAAM,WAAW,wBAAwB;IACvC,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAA;IAEhB,kEAAkE;IAClE,IAAI,CAAC,EAAE,IAAI,CAAA;IAEX,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB,uFAAuF;IACvF,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,kDAAkD;IAClD,MAAM,CAAC,EAAE;QACP,oEAAoE;QACpE,UAAU,CAAC,EAAE,MAAM,CAAA;KACpB,CAAA;IAED,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gCAAgC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,8BAA8B;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAE5B;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAA;CACnD;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAkElE,CAAA"}
@@ -1,37 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ClassScheduleByType = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const useClassesByType_1 = require("../hooks/useClassesByType");
6
- /**
7
- * Displays a schedule of upcoming classes of a specific dance type:
8
- * • name + level
9
- * • weekday, MM-DD, time
10
- * • optional instructor
11
- *
12
- * Uses sensible Tailwind defaults but you can override
13
- * every slot via props or bypass with renderItem.
14
- */
15
- const ClassScheduleByType = ({ typeName, from, overrideId, locale, labels = {}, className = 'mt-6 md:mt-12 space-y-4', itemClassName = 'p-4 bg-white rounded-lg shadow', nameClassName = 'font-semibold text-lg', detailsClassName = 'text-sm text-gray-600', instructorClassName = 'text-sm text-gray-800 mt-1', renderItem, }) => {
16
- var _a;
17
- const { data: classes, isLoading, error } = (0, useClassesByType_1.useClassesByType)(typeName, from, overrideId);
18
- const weekdayFmt = new Intl.DateTimeFormat(locale !== null && locale !== void 0 ? locale : 'en', { weekday: 'long' });
19
- const dateFmt = new Intl.DateTimeFormat(locale !== null && locale !== void 0 ? locale : 'en', { month: 'short', day: 'numeric' });
20
- const instructorLabel = (_a = labels === null || labels === void 0 ? void 0 : labels.instructor) !== null && _a !== void 0 ? _a : 'Instructor:';
21
- if (isLoading) {
22
- return (0, jsx_runtime_1.jsxs)("div", { className: className, children: ["Loading ", typeName, " classes..."] });
23
- }
24
- if (error) {
25
- return (0, jsx_runtime_1.jsxs)("div", { className: className, children: ["Error: ", error.message] });
26
- }
27
- return ((0, jsx_runtime_1.jsx)("ul", { className: className, children: classes === null || classes === void 0 ? void 0 : classes.map((cls) => {
28
- const dateObj = cls.date;
29
- const weekday = weekdayFmt.format(dateObj);
30
- const dateStr = dateFmt.format(dateObj);
31
- if (renderItem) {
32
- return (0, jsx_runtime_1.jsx)("li", { children: renderItem(cls) }, cls.id);
33
- }
34
- return ((0, jsx_runtime_1.jsx)("li", { className: itemClassName, children: (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsxs)("div", { className: nameClassName, children: [cls.name, ' ', (0, jsx_runtime_1.jsxs)("span", { className: "text-sm text-gray-500", children: ["(", cls.level, ")"] })] }), (0, jsx_runtime_1.jsxs)("div", { className: detailsClassName, children: [weekday, ", ", dateStr, " \u2014 ", cls.startTime, "\u2013", cls.endTime] }), cls.instructor && ((0, jsx_runtime_1.jsxs)("div", { className: instructorClassName, children: [instructorLabel, ' ', (0, jsx_runtime_1.jsxs)("strong", { children: [cls.instructor.name, cls.instructor.lastname ? ` ${cls.instructor.lastname}` : ''] })] }))] }) }, cls.id));
35
- }) }));
36
- };
37
- exports.ClassScheduleByType = ClassScheduleByType;
@@ -1,34 +0,0 @@
1
- import React from 'react';
2
- import type { Instructor } from '@bailaya/core';
3
- export interface InstructorListProps {
4
- /** Optional studio ID to override the default configured ID */
5
- overrideId?: string;
6
- /** Root container wrapper */
7
- className?: string;
8
- /** Each instructor "card" wrapper */
9
- itemClassName?: string;
10
- /** Wrapper around the image */
11
- imageWrapperClassName?: string;
12
- /** The `<img>` element itself */
13
- imageClassName?: string;
14
- /** Container for the name + bio */
15
- bodyClassName?: string;
16
- /** Instructor name heading */
17
- nameClassName?: string;
18
- /** Instructor bio paragraph */
19
- bioClassName?: string;
20
- /**
21
- * Optional custom render function for each instructor.
22
- * If provided, will be used instead of the default layout.
23
- */
24
- renderItem?: (instr: Instructor) => React.ReactNode;
25
- }
26
- /**
27
- * Component to display a list of instructors for a studio.
28
- *
29
- * Fetches instructors via `useInstructors` and renders a list of
30
- * "cards." You can override any part of the styling via props
31
- * or completely replace the layout with `renderItem`.
32
- */
33
- export declare const InstructorList: React.FC<InstructorListProps>;
34
- //# sourceMappingURL=InstructorList.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InstructorList.d.ts","sourceRoot":"","sources":["../../src/components/InstructorList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGhD,MAAM,WAAW,mBAAmB;IAClC,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,qCAAqC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,+BAA+B;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,mCAAmC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,8BAA8B;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,+BAA+B;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,KAAK,CAAC,SAAS,CAAC;CACrD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAqDxD,CAAC"}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InstructorList = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const useInstructors_1 = require("../hooks/useInstructors");
6
- const LoadingIcon_1 = require("./ui/LoadingIcon");
7
- /**
8
- * Component to display a list of instructors for a studio.
9
- *
10
- * Fetches instructors via `useInstructors` and renders a list of
11
- * "cards." You can override any part of the styling via props
12
- * or completely replace the layout with `renderItem`.
13
- */
14
- const InstructorList = ({ overrideId, className = 'mt-6 md:mt-12 flex flex-col space-y-8', itemClassName = 'flex flex-col md:flex-row items-center rounded-lg border border-[#DCDCDC] shadow-lg overflow-hidden', imageWrapperClassName = 'w-full p-4 pb-0 md:pb-4 md:w-1/3 aspect-square', imageClassName = 'w-full h-full rounded-xl object-cover', bodyClassName = 'p-6 flex-1 text-left', nameClassName = 'text-xl md:text-3xl font-geologica font-semibold text-[#2A2343]', bioClassName = 'mt-2 text-xs md:text-xl font-sourcesans font-semibold text-[#464646]', renderItem, }) => {
15
- const { data: instructors, isLoading, error } = (0, useInstructors_1.useInstructors)(overrideId);
16
- if (isLoading) {
17
- return (0, jsx_runtime_1.jsx)("div", { className: className, children: (0, jsx_runtime_1.jsx)(LoadingIcon_1.LoadingIcon, {}) });
18
- }
19
- if (error) {
20
- return (0, jsx_runtime_1.jsx)("div", { className: className, children: error.message });
21
- }
22
- return ((0, jsx_runtime_1.jsx)("div", { className: className, children: instructors === null || instructors === void 0 ? void 0 : instructors.map((instr) => {
23
- var _a;
24
- return renderItem ? (renderItem(instr)) : ((0, jsx_runtime_1.jsxs)("div", { className: itemClassName, children: [instr.image && ((0, jsx_runtime_1.jsx)("div", { className: imageWrapperClassName, children: (0, jsx_runtime_1.jsx)("img", { src: instr.image, alt: `${instr.name} ${(_a = instr.lastname) !== null && _a !== void 0 ? _a : ''}`.trim(), className: imageClassName }) })), (0, jsx_runtime_1.jsxs)("div", { className: bodyClassName, children: [(0, jsx_runtime_1.jsxs)("h3", { className: nameClassName, children: [instr.name, instr.lastname ? ` ${instr.lastname}` : ''] }), instr.bio && ((0, jsx_runtime_1.jsx)("p", { className: bioClassName, children: Object.values(instr.bio)[0] }))] })] }, instr.id));
25
- }) }));
26
- };
27
- exports.InstructorList = InstructorList;
@@ -1,47 +0,0 @@
1
- import React from 'react';
2
- import type { StudioProfile } from '@bailaya/core';
3
- export interface StudioProfileCardProps {
4
- /** Optional studio ID to override the default configured ID */
5
- overrideId?: string;
6
- /** Locale code (e.g., "en", "es") for picking the description */
7
- locale?: string;
8
- /** Root container wrapper */
9
- className?: string;
10
- /** Wrapper for the entire "card" */
11
- itemClassName?: string;
12
- /** Optional image `<img>` wrapper */
13
- imageWrapperClassName?: string;
14
- /** The `<img>` element itself */
15
- imageClassName?: string;
16
- /** Container for the body (name, desc, labels) */
17
- bodyClassName?: string;
18
- /** Heading for the studio name */
19
- nameClassName?: string;
20
- /** Paragraph for the description */
21
- descriptionClassName?: string;
22
- /** Paragraph for labels (address, hours) */
23
- labelClassName?: string;
24
- /**
25
- * Completely override the default render
26
- */
27
- renderProfile?: (profile: StudioProfile) => React.ReactNode;
28
- /**
29
- * Custom text labels (for localization):
30
- * - addressLabel
31
- * - businessHoursLabel
32
- */
33
- labels?: {
34
- addressLabel?: string;
35
- businessHoursLabel?: string;
36
- };
37
- }
38
- /**
39
- * Displays a "card" summary of a studio:
40
- * - logo
41
- * - name
42
- * - localized description
43
- * - address/unit
44
- * - business hours
45
- */
46
- export declare const StudioProfileCard: React.FC<StudioProfileCardProps>;
47
- //# sourceMappingURL=StudioProfileCard.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"StudioProfileCard.d.ts","sourceRoot":"","sources":["../../src/components/StudioProfileCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,MAAM,WAAW,sBAAsB;IACrC,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qCAAqC;IACrC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kDAAkD;IAClD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oCAAoC;IACpC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,4CAA4C;IAC5C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,KAAK,CAAC,SAAS,CAAC;IAC5D;;;;OAIG;IACH,MAAM,CAAC,EAAE;QACP,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;CACH;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CA4E9D,CAAC"}
@@ -1,40 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StudioProfileCard = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const useStudioProfile_1 = require("../hooks/useStudioProfile");
6
- const LoadingIcon_1 = require("./ui/LoadingIcon");
7
- /**
8
- * Displays a "card" summary of a studio:
9
- * - logo
10
- * - name
11
- * - localized description
12
- * - address/unit
13
- * - business hours
14
- */
15
- const StudioProfileCard = ({ overrideId, locale, className = 'mt-6 md:mt-12 space-y-8', itemClassName = 'flex flex-col md:flex-row items-center rounded-lg border border-[#DCDCDC] shadow-lg overflow-hidden', imageWrapperClassName = 'w-full p-4 pb-0 md:pb-4 md:w-1/3 aspect-square', imageClassName = 'w-full h-full rounded-xl object-cover', bodyClassName = 'p-6 flex-1 text-left', nameClassName = 'text-xl md:text-3xl font-geologica font-semibold text-[#2A2343]', descriptionClassName = 'mt-2 text-xs md:text-lg font-sourcesans text-[#464646]', labelClassName = 'mt-1 text-sm text-gray-600', renderProfile, labels = {}, }) => {
16
- var _a, _b;
17
- const { data: profile, isLoading, error } = (0, useStudioProfile_1.useStudioProfile)(overrideId);
18
- if (isLoading) {
19
- return (0, jsx_runtime_1.jsx)("div", { className: className, children: (0, jsx_runtime_1.jsx)(LoadingIcon_1.LoadingIcon, {}) });
20
- }
21
- if (error) {
22
- return (0, jsx_runtime_1.jsx)("div", { className: className, children: error.message });
23
- }
24
- if (!profile) {
25
- return null;
26
- }
27
- // pick the right description by locale, fallback to first
28
- const descMap = profile.description || {};
29
- const locales = Object.keys(descMap);
30
- const desc = (locale && descMap[locale]) ||
31
- descMap[locales[0]] ||
32
- '';
33
- if (renderProfile) {
34
- return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: renderProfile(profile) });
35
- }
36
- const addrLabel = (_a = labels === null || labels === void 0 ? void 0 : labels.addressLabel) !== null && _a !== void 0 ? _a : '';
37
- const bizLabel = (_b = labels === null || labels === void 0 ? void 0 : labels.businessHoursLabel) !== null && _b !== void 0 ? _b : (locale === 'es' ? 'Horario Comercial' : 'Business Hours');
38
- return ((0, jsx_runtime_1.jsx)("div", { className: className, children: (0, jsx_runtime_1.jsxs)("div", { className: itemClassName, children: [profile.logo && ((0, jsx_runtime_1.jsx)("div", { className: imageWrapperClassName, children: (0, jsx_runtime_1.jsx)("img", { src: profile.logo, alt: `${profile.name} logo`, className: imageClassName }) })), (0, jsx_runtime_1.jsxs)("div", { className: bodyClassName, children: [(0, jsx_runtime_1.jsx)("h2", { className: nameClassName, children: profile.name }), desc && ((0, jsx_runtime_1.jsx)("p", { className: descriptionClassName, children: desc })), profile.address && ((0, jsx_runtime_1.jsxs)("p", { className: labelClassName, children: [addrLabel && `${addrLabel}: `, profile.address, profile.unit ? `, ${profile.unit}` : ''] })), profile.businessHours && ((0, jsx_runtime_1.jsxs)("p", { className: labelClassName, children: [bizLabel, ": ", profile.businessHours] }))] })] }) }));
39
- };
40
- exports.StudioProfileCard = StudioProfileCard;
@@ -1,47 +0,0 @@
1
- import React from 'react';
2
- import type { UserProfile } from '@bailaya/core';
3
- export interface UserProfileCardProps {
4
- /** The user ID to fetch */
5
- userId: string;
6
- /** Locale code (e.g. "en", "es") for picking the bio */
7
- locale?: string;
8
- /** Root container wrapper */
9
- className?: string;
10
- /** Wrapper for the entire "card" */
11
- itemClassName?: string;
12
- /** Wrapper around the profile image */
13
- imageWrapperClassName?: string;
14
- /** The `<img>` element itself */
15
- imageClassName?: string;
16
- /** Container for the name + bio + labels */
17
- bodyClassName?: string;
18
- /** Heading for the user’s name */
19
- nameClassName?: string;
20
- /** Paragraph for the bio */
21
- bioClassName?: string;
22
- /** Label/value lines (occupation, experience) */
23
- labelClassName?: string;
24
- /**
25
- * If provided, completely overrides the default card render.
26
- */
27
- renderProfile?: (profile: UserProfile) => React.ReactNode;
28
- /**
29
- * Custom text labels (useful for localization):
30
- * - occupationLabel
31
- * - experienceLabel
32
- */
33
- labels?: {
34
- occupationLabel?: string;
35
- experienceLabel?: string;
36
- };
37
- }
38
- /**
39
- * Displays a single user's profile as a "card":
40
- * - photo
41
- * - full name
42
- * - localized bio
43
- * - occupation
44
- * - years of experience
45
- */
46
- export declare const UserProfileCard: React.FC<UserProfileCardProps>;
47
- //# sourceMappingURL=UserProfileCard.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UserProfileCard.d.ts","sourceRoot":"","sources":["../../src/components/UserProfileCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAGjD,MAAM,WAAW,oBAAoB;IACnC,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAC;IAEf,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,oCAAoC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,uCAAuC;IACvC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,4BAA4B;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,iDAAiD;IACjD,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAC;IAE1D;;;;OAIG;IACH,MAAM,CAAC,EAAE;QACP,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA8E1D,CAAC"}
@@ -1,40 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UserProfileCard = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const useUserProfile_1 = require("../hooks/useUserProfile");
6
- const LoadingIcon_1 = require("./ui/LoadingIcon");
7
- /**
8
- * Displays a single user's profile as a "card":
9
- * - photo
10
- * - full name
11
- * - localized bio
12
- * - occupation
13
- * - years of experience
14
- */
15
- const UserProfileCard = ({ userId, locale, className = 'mt-6 md:mt-12 space-y-8', itemClassName = 'flex flex-col md:flex-row items-center rounded-lg border border-[#DCDCDC] shadow-lg overflow-hidden', imageWrapperClassName = 'w-full p-4 pb-0 md:pb-4 md:w-1/3 aspect-square', imageClassName = 'w-full h-full rounded-xl object-cover', bodyClassName = 'p-6 flex-1 text-left', nameClassName = 'text-xl md:text-3xl font-geologica font-semibold text-[#2A2343]', bioClassName = 'mt-2 text-xs md:text-xl font-sourcesans font-semibold text-[#464646]', labelClassName = 'mt-1 text-sm text-gray-600', renderProfile, labels = {}, }) => {
16
- var _a, _b;
17
- const { data: profile, isLoading, error } = (0, useUserProfile_1.useUserProfile)(userId);
18
- if (isLoading) {
19
- return (0, jsx_runtime_1.jsx)("div", { className: className, children: (0, jsx_runtime_1.jsx)(LoadingIcon_1.LoadingIcon, {}) });
20
- }
21
- if (error) {
22
- return (0, jsx_runtime_1.jsx)("div", { className: className, children: error.message });
23
- }
24
- if (!profile) {
25
- return null;
26
- }
27
- // pick bio by locale, fallback to first
28
- const bioMap = profile.bio || {};
29
- const locales = Object.keys(bioMap);
30
- const selectedBio = (locale && bioMap[locale]) ||
31
- bioMap[locales[0]] ||
32
- '';
33
- if (renderProfile) {
34
- return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: renderProfile(profile) });
35
- }
36
- const occLabel = (_a = labels === null || labels === void 0 ? void 0 : labels.occupationLabel) !== null && _a !== void 0 ? _a : (locale === 'es' ? 'Ocupación' : 'Occupation');
37
- const expLabel = (_b = labels === null || labels === void 0 ? void 0 : labels.experienceLabel) !== null && _b !== void 0 ? _b : (locale === 'es' ? 'Años de experiencia' : 'Years of experience');
38
- return ((0, jsx_runtime_1.jsx)("div", { className: className, children: (0, jsx_runtime_1.jsxs)("div", { className: itemClassName, children: [profile.image && ((0, jsx_runtime_1.jsx)("div", { className: imageWrapperClassName, children: (0, jsx_runtime_1.jsx)("img", { src: profile.image, alt: `${profile.name}${profile.lastname ? ' ' + profile.lastname : ''}`, className: imageClassName }) })), (0, jsx_runtime_1.jsxs)("div", { className: bodyClassName, children: [(0, jsx_runtime_1.jsxs)("h3", { className: nameClassName, children: [profile.name, profile.lastname ? ` ${profile.lastname}` : ''] }), selectedBio && ((0, jsx_runtime_1.jsx)("p", { className: bioClassName, children: selectedBio })), profile.occupation && ((0, jsx_runtime_1.jsxs)("p", { className: labelClassName, children: [occLabel, ": ", profile.occupation] })), profile.yearsOfExperience != null && ((0, jsx_runtime_1.jsxs)("p", { className: labelClassName, children: [expLabel, ": ", profile.yearsOfExperience] }))] })] }) }));
39
- };
40
- exports.UserProfileCard = UserProfileCard;
@@ -1,2 +0,0 @@
1
- export declare const LoadingIcon: () => import("react/jsx-runtime").JSX.Element;
2
- //# sourceMappingURL=LoadingIcon.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LoadingIcon.d.ts","sourceRoot":"","sources":["../../../src/components/ui/LoadingIcon.tsx"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,+CAMvB,CAAC"}
@@ -1,9 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LoadingIcon = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const lucide_react_1 = require("lucide-react");
6
- const LoadingIcon = () => {
7
- return ((0, jsx_runtime_1.jsx)("div", { className: "flex items-center justify-center h-screen", children: (0, jsx_runtime_1.jsx)(lucide_react_1.Loader, { className: "animate-spin w-12 h-12 text-blue-500" }) }));
8
- };
9
- exports.LoadingIcon = LoadingIcon;
@@ -1,8 +0,0 @@
1
- import React from 'react';
2
- import { BailayaClient, BailayaClientOptions } from '@bailaya/core';
3
- export declare const BailayaProvider: React.FC<{
4
- children: React.ReactNode;
5
- config: BailayaClientOptions;
6
- }>;
7
- export declare const useBailayaClient: () => BailayaClient;
8
- //# sourceMappingURL=BailayaProvider.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BailayaProvider.d.ts","sourceRoot":"","sources":["../../src/context/BailayaProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAoC,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAIpE,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC;IACrC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,EAAE,oBAAoB,CAAC;CAC9B,CAOA,CAAC;AAEF,eAAO,MAAM,gBAAgB,qBAI5B,CAAC"}
@@ -1,20 +0,0 @@
1
- "use strict";
2
- "use client";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.useBailayaClient = exports.BailayaProvider = void 0;
5
- const jsx_runtime_1 = require("react/jsx-runtime");
6
- const react_1 = require("react");
7
- const core_1 = require("@bailaya/core");
8
- const BailayaContext = (0, react_1.createContext)(null);
9
- const BailayaProvider = ({ children, config }) => {
10
- const client = new core_1.BailayaClient(config);
11
- return ((0, jsx_runtime_1.jsx)(BailayaContext.Provider, { value: client, children: children }));
12
- };
13
- exports.BailayaProvider = BailayaProvider;
14
- const useBailayaClient = () => {
15
- const ctx = (0, react_1.useContext)(BailayaContext);
16
- if (!ctx)
17
- throw new Error('useBailayaClient must be used inside a BailayaProvider');
18
- return ctx;
19
- };
20
- exports.useBailayaClient = useBailayaClient;
@@ -1,15 +0,0 @@
1
- import { UseQueryResult } from '@tanstack/react-query';
2
- import type { StudioClass } from '@bailaya/core';
3
- /**
4
- * Hook to fetch upcoming classes for a studio within a 7-day window.
5
- *
6
- * Utilizes the Bailaya API client from context and caches results with React Query.
7
- *
8
- * @param from - Optional Date object to start the 7-day window; defaults to today.
9
- * @param overrideId - Optional studio ID to override the default configured ID.
10
- * @returns A React Query result with an array of `StudioClass` objects,
11
- * or an error if the fetch fails.
12
- * @throws If used outside of a `BailayaProvider`.
13
- */
14
- export declare function useClasses(from?: Date, overrideId?: string): UseQueryResult<StudioClass[], Error>;
15
- //# sourceMappingURL=useClasses.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useClasses.d.ts","sourceRoot":"","sources":["../../src/hooks/useClasses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CACxB,IAAI,CAAC,EAAE,IAAI,EACX,UAAU,CAAC,EAAE,MAAM,GAClB,cAAc,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAUtC"}
@@ -1,25 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useClasses = useClasses;
4
- const react_query_1 = require("@tanstack/react-query");
5
- const BailayaProvider_1 = require("../context/BailayaProvider");
6
- /**
7
- * Hook to fetch upcoming classes for a studio within a 7-day window.
8
- *
9
- * Utilizes the Bailaya API client from context and caches results with React Query.
10
- *
11
- * @param from - Optional Date object to start the 7-day window; defaults to today.
12
- * @param overrideId - Optional studio ID to override the default configured ID.
13
- * @returns A React Query result with an array of `StudioClass` objects,
14
- * or an error if the fetch fails.
15
- * @throws If used outside of a `BailayaProvider`.
16
- */
17
- function useClasses(from, overrideId) {
18
- const client = (0, BailayaProvider_1.useBailayaClient)();
19
- // Convert `from` to YYYY-MM-DD for the query key
20
- const fromKey = from ? from.toISOString().split('T')[0] : 'today';
21
- return (0, react_query_1.useQuery)({
22
- queryKey: ['classes', fromKey],
23
- queryFn: () => client.getClasses(from),
24
- });
25
- }
@@ -1,16 +0,0 @@
1
- import { UseQueryResult } from '@tanstack/react-query';
2
- import type { StudioClass } from '@bailaya/core';
3
- /**
4
- * Hook to fetch upcoming classes of a specific dance type for a studio within a 7-day window.
5
- *
6
- * Utilizes the Bailaya API client from context and caches results with React Query.
7
- *
8
- * @param typeName - Name of the dance type to filter by (e.g., "Salsa").
9
- * @param from - Optional start `Date` for the 7-day window; defaults to today.
10
- * @param overrideId - Optional studio ID to override the default configured ID.
11
- * @returns A React Query result with an array of `StudioClass` objects,
12
- * or an error if the fetch fails.
13
- * @throws If used outside of a `BailayaProvider` or if `typeName` is missing.
14
- */
15
- export declare function useClassesByType(typeName: string, from?: Date, overrideId?: string): UseQueryResult<StudioClass[], Error>;
16
- //# sourceMappingURL=useClassesByType.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useClassesByType.d.ts","sourceRoot":"","sources":["../../src/hooks/useClassesByType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,IAAI,EACX,UAAU,CAAC,EAAE,MAAM,GAClB,cAAc,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAatC"}
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useClassesByType = useClassesByType;
4
- const react_query_1 = require("@tanstack/react-query");
5
- const BailayaProvider_1 = require("../context/BailayaProvider");
6
- /**
7
- * Hook to fetch upcoming classes of a specific dance type for a studio within a 7-day window.
8
- *
9
- * Utilizes the Bailaya API client from context and caches results with React Query.
10
- *
11
- * @param typeName - Name of the dance type to filter by (e.g., "Salsa").
12
- * @param from - Optional start `Date` for the 7-day window; defaults to today.
13
- * @param overrideId - Optional studio ID to override the default configured ID.
14
- * @returns A React Query result with an array of `StudioClass` objects,
15
- * or an error if the fetch fails.
16
- * @throws If used outside of a `BailayaProvider` or if `typeName` is missing.
17
- */
18
- function useClassesByType(typeName, from, overrideId) {
19
- const client = (0, BailayaProvider_1.useBailayaClient)();
20
- if (!typeName) {
21
- throw new Error('useClassesByType requires a typeName argument');
22
- }
23
- const fromKey = from ? from.toISOString().split('T')[0] : 'today';
24
- return (0, react_query_1.useQuery)({
25
- queryKey: ['classesByType', typeName, overrideId !== null && overrideId !== void 0 ? overrideId : 'default', fromKey],
26
- queryFn: () => client.getClasses(from),
27
- });
28
- }
@@ -1,15 +0,0 @@
1
- import { UseQueryResult } from '@tanstack/react-query';
2
- import type { Instructor } from '@bailaya/core';
3
- /**
4
- * Hook to fetch the list of instructors for a studio.
5
- *
6
- * Utilizes the Bailaya API client from context to retrieve instructor data
7
- * and caches results using React Query.
8
- *
9
- * @param overrideId - Optional studio ID to override the default configured ID.
10
- * @returns A React Query result containing an array of `Instructor` objects,
11
- * or an error if the fetch fails.
12
- * @throws If used outside of a `BailayaProvider`.
13
- */
14
- export declare function useInstructors(overrideId?: string): UseQueryResult<Instructor[], Error>;
15
- //# sourceMappingURL=useInstructors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useInstructors.d.ts","sourceRoot":"","sources":["../../src/hooks/useInstructors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAC5B,UAAU,CAAC,EAAE,MAAM,GAClB,cAAc,CAAC,UAAU,EAAE,EAAE,KAAK,CAAC,CAOrC"}
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useInstructors = useInstructors;
4
- const react_query_1 = require("@tanstack/react-query");
5
- const BailayaProvider_1 = require("../context/BailayaProvider");
6
- /**
7
- * Hook to fetch the list of instructors for a studio.
8
- *
9
- * Utilizes the Bailaya API client from context to retrieve instructor data
10
- * and caches results using React Query.
11
- *
12
- * @param overrideId - Optional studio ID to override the default configured ID.
13
- * @returns A React Query result containing an array of `Instructor` objects,
14
- * or an error if the fetch fails.
15
- * @throws If used outside of a `BailayaProvider`.
16
- */
17
- function useInstructors(overrideId) {
18
- const client = (0, BailayaProvider_1.useBailayaClient)();
19
- return (0, react_query_1.useQuery)({
20
- queryKey: ['instructors', overrideId !== null && overrideId !== void 0 ? overrideId : 'default'],
21
- queryFn: () => client.getInstructors(overrideId),
22
- });
23
- }
@@ -1,10 +0,0 @@
1
- import { UseQueryResult } from '@tanstack/react-query';
2
- import type { StudioProfile } from '@bailaya/core';
3
- /**
4
- * Hook to fetch the studio profile.
5
- *
6
- * @param overrideId - Optional studio ID to override the default configured ID.
7
- * @returns A React Query result with the `StudioProfile` object.
8
- */
9
- export declare function useStudioProfile(overrideId?: string): UseQueryResult<StudioProfile, Error>;
10
- //# sourceMappingURL=useStudioProfile.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useStudioProfile.d.ts","sourceRoot":"","sources":["../../src/hooks/useStudioProfile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,CAAC,EAAE,MAAM,GAClB,cAAc,CAAC,aAAa,EAAE,KAAK,CAAC,CAOtC"}
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useStudioProfile = useStudioProfile;
4
- const react_query_1 = require("@tanstack/react-query");
5
- const BailayaProvider_1 = require("../context/BailayaProvider");
6
- /**
7
- * Hook to fetch the studio profile.
8
- *
9
- * @param overrideId - Optional studio ID to override the default configured ID.
10
- * @returns A React Query result with the `StudioProfile` object.
11
- */
12
- function useStudioProfile(overrideId) {
13
- const client = (0, BailayaProvider_1.useBailayaClient)();
14
- return (0, react_query_1.useQuery)({
15
- queryKey: ['instructors', overrideId !== null && overrideId !== void 0 ? overrideId : 'default'],
16
- queryFn: () => client.getStudioProfile(overrideId),
17
- });
18
- }
@@ -1,12 +0,0 @@
1
- import { UseQueryResult } from '@tanstack/react-query';
2
- import type { UserProfile } from '@bailaya/core';
3
- /**
4
- * Hook to fetch a user’s profile by their ID.
5
- *
6
- * Wraps the BailayaClient.getUserProfile call in React Query.
7
- *
8
- * @param userId - The ID of the user to fetch.
9
- * @returns A React Query result containing a `UserProfile` or an error.
10
- */
11
- export declare function useUserProfile(userId: string): UseQueryResult<UserProfile, Error>;
12
- //# sourceMappingURL=useUserProfile.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useUserProfile.d.ts","sourceRoot":"","sources":["../../src/hooks/useUserProfile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,GACb,cAAc,CAAC,WAAW,EAAE,KAAK,CAAC,CAOpC"}
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useUserProfile = useUserProfile;
4
- const react_query_1 = require("@tanstack/react-query");
5
- const BailayaProvider_1 = require("../context/BailayaProvider");
6
- /**
7
- * Hook to fetch a user’s profile by their ID.
8
- *
9
- * Wraps the BailayaClient.getUserProfile call in React Query.
10
- *
11
- * @param userId - The ID of the user to fetch.
12
- * @returns A React Query result containing a `UserProfile` or an error.
13
- */
14
- function useUserProfile(userId) {
15
- const client = (0, BailayaProvider_1.useBailayaClient)();
16
- return (0, react_query_1.useQuery)({
17
- queryKey: ['userProfile', userId],
18
- queryFn: () => client.getUserProfile(userId),
19
- });
20
- }
package/dist/index.d.ts DELETED
@@ -1,29 +0,0 @@
1
- /**
2
- * Exports all components and hooks for interacting with the Bailaya API.
3
- *
4
- * @packageDocumentation
5
- */
6
- /**
7
- * Re-exported context and hooks for easy import
8
- */
9
- export { BailayaProvider, useBailayaClient } from './context/BailayaProvider';
10
- /**
11
- * Data hooks
12
- */
13
- export { useStudioProfile } from './hooks/useStudioProfile';
14
- export { useInstructors } from './hooks/useInstructors';
15
- export { useClasses } from './hooks/useClasses';
16
- export { useClassesByType } from './hooks/useClassesByType';
17
- /**
18
- * React components
19
- */
20
- export { ClassSchedule, ClassScheduleProps } from './components/ClassSchedule';
21
- export { ClassScheduleByType, ClassScheduleByTypeProps } from './components/ClassScheduleByType';
22
- export { InstructorList, InstructorListProps } from './components/InstructorList';
23
- export { StudioProfileCard, StudioProfileCardProps } from './components/StudioProfileCard';
24
- export { UserProfileCard, UserProfileCardProps } from './components/UserProfileCard';
25
- /**
26
- * Types re-exported for consumer convenience
27
- */
28
- export * from './types';
29
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE9E;;GAEG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D;;GAEG;AACH,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAErF;;GAEG;AACH,cAAc,SAAS,CAAC"}
package/dist/index.js DELETED
@@ -1,56 +0,0 @@
1
- "use strict";
2
- /**
3
- * Exports all components and hooks for interacting with the Bailaya API.
4
- *
5
- * @packageDocumentation
6
- */
7
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
- if (k2 === undefined) k2 = k;
9
- var desc = Object.getOwnPropertyDescriptor(m, k);
10
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
- desc = { enumerable: true, get: function() { return m[k]; } };
12
- }
13
- Object.defineProperty(o, k2, desc);
14
- }) : (function(o, m, k, k2) {
15
- if (k2 === undefined) k2 = k;
16
- o[k2] = m[k];
17
- }));
18
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
19
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
20
- };
21
- Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.UserProfileCard = exports.StudioProfileCard = exports.InstructorList = exports.ClassScheduleByType = exports.ClassSchedule = exports.useClassesByType = exports.useClasses = exports.useInstructors = exports.useStudioProfile = exports.useBailayaClient = exports.BailayaProvider = void 0;
23
- /**
24
- * Re-exported context and hooks for easy import
25
- */
26
- var BailayaProvider_1 = require("./context/BailayaProvider");
27
- Object.defineProperty(exports, "BailayaProvider", { enumerable: true, get: function () { return BailayaProvider_1.BailayaProvider; } });
28
- Object.defineProperty(exports, "useBailayaClient", { enumerable: true, get: function () { return BailayaProvider_1.useBailayaClient; } });
29
- /**
30
- * Data hooks
31
- */
32
- var useStudioProfile_1 = require("./hooks/useStudioProfile");
33
- Object.defineProperty(exports, "useStudioProfile", { enumerable: true, get: function () { return useStudioProfile_1.useStudioProfile; } });
34
- var useInstructors_1 = require("./hooks/useInstructors");
35
- Object.defineProperty(exports, "useInstructors", { enumerable: true, get: function () { return useInstructors_1.useInstructors; } });
36
- var useClasses_1 = require("./hooks/useClasses");
37
- Object.defineProperty(exports, "useClasses", { enumerable: true, get: function () { return useClasses_1.useClasses; } });
38
- var useClassesByType_1 = require("./hooks/useClassesByType");
39
- Object.defineProperty(exports, "useClassesByType", { enumerable: true, get: function () { return useClassesByType_1.useClassesByType; } });
40
- /**
41
- * React components
42
- */
43
- var ClassSchedule_1 = require("./components/ClassSchedule");
44
- Object.defineProperty(exports, "ClassSchedule", { enumerable: true, get: function () { return ClassSchedule_1.ClassSchedule; } });
45
- var ClassScheduleByType_1 = require("./components/ClassScheduleByType");
46
- Object.defineProperty(exports, "ClassScheduleByType", { enumerable: true, get: function () { return ClassScheduleByType_1.ClassScheduleByType; } });
47
- var InstructorList_1 = require("./components/InstructorList");
48
- Object.defineProperty(exports, "InstructorList", { enumerable: true, get: function () { return InstructorList_1.InstructorList; } });
49
- var StudioProfileCard_1 = require("./components/StudioProfileCard");
50
- Object.defineProperty(exports, "StudioProfileCard", { enumerable: true, get: function () { return StudioProfileCard_1.StudioProfileCard; } });
51
- var UserProfileCard_1 = require("./components/UserProfileCard");
52
- Object.defineProperty(exports, "UserProfileCard", { enumerable: true, get: function () { return UserProfileCard_1.UserProfileCard; } });
53
- /**
54
- * Types re-exported for consumer convenience
55
- */
56
- __exportStar(require("./types"), exports);
package/dist/types.d.ts DELETED
@@ -1,9 +0,0 @@
1
- /**
2
- * Core API data structures re-exported from @bailaya/core for convenience.
3
- */
4
- export type { RawStudioProfile, StudioProfile, RawStudioType, StudioType, RawUserProfile, UserProfile, RawInstructor, Instructor, RawStudioClass, StudioClass, } from '@bailaya/core';
5
- /**
6
- * React Query result types for library hooks.
7
- */
8
- export type { UseQueryResult, } from '@tanstack/react-query';
9
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,UAAU,EACV,cAAc,EACd,WAAW,EACX,aAAa,EACb,UAAU,EACV,cAAc,EACd,WAAW,GACZ,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,YAAY,EACV,cAAc,GACf,MAAM,uBAAuB,CAAC"}
package/dist/types.js DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });