@bailaya/react 1.0.37 → 1.0.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +168 -168
- package/dist/components/ClassSchedule.d.ts.map +1 -1
- package/dist/components/ClassSchedule.js +3 -2
- package/dist/components/ClassScheduleByType.d.ts.map +1 -1
- package/dist/components/ClassScheduleByType.js +3 -2
- package/dist/components/EventSchedule.d.ts.map +1 -1
- package/dist/components/EventSchedule.js +2 -1
- package/package.json +39 -39
package/README.md
CHANGED
|
@@ -1,168 +1,168 @@
|
|
|
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 **hooks** for fetching all core data (with `loading`, `error`, `data`, and `refetch`)
|
|
11
|
-
* **Components** with sensible Tailwind defaults (and full styling slots)
|
|
12
|
-
* Full TypeScript support, including localized text & date formatting
|
|
13
|
-
|
|
14
|
-
> Works **with or without Tailwind**. If you don’t use Tailwind, just override the class props (or use the render props) to apply your own styling.
|
|
15
|
-
|
|
16
|
-
## Features
|
|
17
|
-
|
|
18
|
-
* **Context + client** (`BailayaProvider` + `useBailayaClient`)
|
|
19
|
-
* **Hooks** (all return `{ data, error, loading, refetch }`)
|
|
20
|
-
|
|
21
|
-
* `useStudioProfile(overrideId?)`
|
|
22
|
-
* `useUserProfile(userId)`
|
|
23
|
-
* `useInstructors(overrideId?)`
|
|
24
|
-
* `useClasses(from?, overrideId?)`
|
|
25
|
-
* `useClassesByType(typeName, from?, overrideId?)`
|
|
26
|
-
* `useEvents(from?, overrideId?)`
|
|
27
|
-
* **Components** (all props overridable)
|
|
28
|
-
|
|
29
|
-
* `<StudioProfileCard />`
|
|
30
|
-
* `<UserProfileCard />`
|
|
31
|
-
* `<InstructorList />`
|
|
32
|
-
* `<ClassSchedule />`
|
|
33
|
-
* `<ClassScheduleByType />`
|
|
34
|
-
* `<EventSchedule />`
|
|
35
|
-
* `<StudioDescription />`
|
|
36
|
-
|
|
37
|
-
## Installation
|
|
38
|
-
|
|
39
|
-
```bash
|
|
40
|
-
npm install @bailaya/react
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
or with Yarn:
|
|
44
|
-
|
|
45
|
-
```bash
|
|
46
|
-
yarn add @bailaya/react
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
> **Peer Dependencies**
|
|
50
|
-
>
|
|
51
|
-
> * `"react": ">=17"`
|
|
52
|
-
> * `"react-dom": ">=17"`
|
|
53
|
-
|
|
54
|
-
---
|
|
55
|
-
|
|
56
|
-
## Quick Start
|
|
57
|
-
|
|
58
|
-
First, wrap your app with **BailayaProvider**:
|
|
59
|
-
|
|
60
|
-
```tsx
|
|
61
|
-
// App.tsx
|
|
62
|
-
import React from "react";
|
|
63
|
-
import { BailayaProvider } from "@bailaya/react";
|
|
64
|
-
|
|
65
|
-
export default function App() {
|
|
66
|
-
return (
|
|
67
|
-
<BailayaProvider config={{ studioId: "YOUR_STUDIO_ID" }}>
|
|
68
|
-
{/* ...your app */}
|
|
69
|
-
</BailayaProvider>
|
|
70
|
-
);
|
|
71
|
-
}
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
### Using a Hook
|
|
75
|
-
|
|
76
|
-
```tsx
|
|
77
|
-
import React from "react";
|
|
78
|
-
import { useInstructors } from "@bailaya/react";
|
|
79
|
-
|
|
80
|
-
export function TeamSection() {
|
|
81
|
-
const { data: instructors, loading, error, refetch } = useInstructors();
|
|
82
|
-
|
|
83
|
-
if (loading) return <p>Loading...</p>;
|
|
84
|
-
if (error) return <p>Error: {error.message}</p>;
|
|
85
|
-
|
|
86
|
-
return (
|
|
87
|
-
<>
|
|
88
|
-
<button onClick={refetch}>Refresh</button>
|
|
89
|
-
<ul>
|
|
90
|
-
{instructors?.map((i) => (
|
|
91
|
-
<li key={i.id}>{i.name} {i.lastname}</li>
|
|
92
|
-
))}
|
|
93
|
-
</ul>
|
|
94
|
-
</>
|
|
95
|
-
);
|
|
96
|
-
}
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
### Using a Component
|
|
100
|
-
|
|
101
|
-
```tsx
|
|
102
|
-
import React from "react";
|
|
103
|
-
import { StudioProfileCard } from "@bailaya/react";
|
|
104
|
-
|
|
105
|
-
export function Dashboard() {
|
|
106
|
-
return (
|
|
107
|
-
<div className="max-w-md mx-auto">
|
|
108
|
-
<StudioProfileCard locale="en" />
|
|
109
|
-
</div>
|
|
110
|
-
);
|
|
111
|
-
}
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
---
|
|
115
|
-
|
|
116
|
-
## API Reference
|
|
117
|
-
|
|
118
|
-
### `<BailayaProvider config>`
|
|
119
|
-
|
|
120
|
-
Provides `useBailayaClient()` context.
|
|
121
|
-
|
|
122
|
-
* `config.baseUrl?: string` – override default API URL
|
|
123
|
-
* `config.studioId?: string` – default studio ID
|
|
124
|
-
|
|
125
|
-
### Hooks
|
|
126
|
-
|
|
127
|
-
All hooks return:
|
|
128
|
-
|
|
129
|
-
```ts
|
|
130
|
-
{
|
|
131
|
-
data: T | null;
|
|
132
|
-
error: Error | null;
|
|
133
|
-
loading: boolean;
|
|
134
|
-
refetch: () => Promise<void>;
|
|
135
|
-
}
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
| Hook | Description |
|
|
139
|
-
|--------------------------------------------------|--------------------------------------------------------------|
|
|
140
|
-
| `useStudioProfile(overrideId?)` | Fetch a studio’s profile. |
|
|
141
|
-
| `useUserProfile(userId)` | Fetch a user’s profile / bio. |
|
|
142
|
-
| `useInstructors(overrideId?)` | Fetch list of active instructors (owner, admin, instructor). |
|
|
143
|
-
| `useClasses(from?, overrideId?)` | Fetch next 7 days of classes (all types). |
|
|
144
|
-
| `useClassesByType(typeName, from?, overrideId?)` | Fetch next 7 days of classes filtered by `typeName`. |
|
|
145
|
-
| `useEvents(from?, overrideId?)` | Fetch next 7 days of events. |
|
|
146
|
-
|
|
147
|
-
### Components
|
|
148
|
-
|
|
149
|
-
All components share:
|
|
150
|
-
|
|
151
|
-
* **Override props** for every styling slot
|
|
152
|
-
* **`locale`** (where relevant)
|
|
153
|
-
* **`labels`** object for custom text (e.g. instructor or business-hours labels)
|
|
154
|
-
* **`renderItem`** for full JSX override
|
|
155
|
-
|
|
156
|
-
| Component | Props |
|
|
157
|
-
|---------------------------| --------------------------------------------------------------------------------------------------------------------------------- |
|
|
158
|
-
| `<StudioProfileCard />` | `overrideId?`, `locale?`, `labels?`, `className?`, `nameClassName?`, `descriptionClassName?`, `labelClassName?`, `renderProfile?` |
|
|
159
|
-
| `<UserProfileCard />` | `userId`, `locale?`, `labels?`, `className?`, `nameClassName?`, `bioClassName?`, `renderProfile?` |
|
|
160
|
-
| `<InstructorList />` | `overrideId?`, `renderItem?`, plus styling slots: `className?`, `itemClassName?`, `imageWrapperClassName?`, etc. |
|
|
161
|
-
| `<ClassSchedule />` | `from?`, `overrideId?`, `locale?`, `labels?`, `renderItem?`, plus slots: `className?`, `itemClassName?`, etc. |
|
|
162
|
-
| `<ClassScheduleByType />` | `typeName`, `from?`, `overrideId?`, `locale?`, `labels?`, `renderItem?`, plus same styling slots as `<ClassSchedule />`. |
|
|
163
|
-
| `<EventSchedule />` | `from?`, `overrideId?`, `locale?`, `labels?`, `renderItem?`, plus slots: `className?`, `itemClassName?`, etc. |
|
|
164
|
-
| `<StudioDescription />` | `overrideId?`, `locale?`, `render?`, plus styling slots: `className?`, `paragraphClassName?` |
|
|
165
|
-
|
|
166
|
-
## License
|
|
167
|
-
|
|
168
|
-
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 **hooks** for fetching all core data (with `loading`, `error`, `data`, and `refetch`)
|
|
11
|
+
* **Components** with sensible Tailwind defaults (and full styling slots)
|
|
12
|
+
* Full TypeScript support, including localized text & date formatting
|
|
13
|
+
|
|
14
|
+
> Works **with or without Tailwind**. If you don’t use Tailwind, just override the class props (or use the render props) to apply your own styling.
|
|
15
|
+
|
|
16
|
+
## Features
|
|
17
|
+
|
|
18
|
+
* **Context + client** (`BailayaProvider` + `useBailayaClient`)
|
|
19
|
+
* **Hooks** (all return `{ data, error, loading, refetch }`)
|
|
20
|
+
|
|
21
|
+
* `useStudioProfile(overrideId?)`
|
|
22
|
+
* `useUserProfile(userId)`
|
|
23
|
+
* `useInstructors(overrideId?)`
|
|
24
|
+
* `useClasses(from?, overrideId?)`
|
|
25
|
+
* `useClassesByType(typeName, from?, overrideId?)`
|
|
26
|
+
* `useEvents(from?, overrideId?)`
|
|
27
|
+
* **Components** (all props overridable)
|
|
28
|
+
|
|
29
|
+
* `<StudioProfileCard />`
|
|
30
|
+
* `<UserProfileCard />`
|
|
31
|
+
* `<InstructorList />`
|
|
32
|
+
* `<ClassSchedule />`
|
|
33
|
+
* `<ClassScheduleByType />`
|
|
34
|
+
* `<EventSchedule />`
|
|
35
|
+
* `<StudioDescription />`
|
|
36
|
+
|
|
37
|
+
## Installation
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
npm install @bailaya/react
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
or with Yarn:
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
yarn add @bailaya/react
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
> **Peer Dependencies**
|
|
50
|
+
>
|
|
51
|
+
> * `"react": ">=17"`
|
|
52
|
+
> * `"react-dom": ">=17"`
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## Quick Start
|
|
57
|
+
|
|
58
|
+
First, wrap your app with **BailayaProvider**:
|
|
59
|
+
|
|
60
|
+
```tsx
|
|
61
|
+
// App.tsx
|
|
62
|
+
import React from "react";
|
|
63
|
+
import { BailayaProvider } from "@bailaya/react";
|
|
64
|
+
|
|
65
|
+
export default function App() {
|
|
66
|
+
return (
|
|
67
|
+
<BailayaProvider config={{ studioId: "YOUR_STUDIO_ID" }}>
|
|
68
|
+
{/* ...your app */}
|
|
69
|
+
</BailayaProvider>
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### Using a Hook
|
|
75
|
+
|
|
76
|
+
```tsx
|
|
77
|
+
import React from "react";
|
|
78
|
+
import { useInstructors } from "@bailaya/react";
|
|
79
|
+
|
|
80
|
+
export function TeamSection() {
|
|
81
|
+
const { data: instructors, loading, error, refetch } = useInstructors();
|
|
82
|
+
|
|
83
|
+
if (loading) return <p>Loading...</p>;
|
|
84
|
+
if (error) return <p>Error: {error.message}</p>;
|
|
85
|
+
|
|
86
|
+
return (
|
|
87
|
+
<>
|
|
88
|
+
<button onClick={refetch}>Refresh</button>
|
|
89
|
+
<ul>
|
|
90
|
+
{instructors?.map((i) => (
|
|
91
|
+
<li key={i.id}>{i.name} {i.lastname}</li>
|
|
92
|
+
))}
|
|
93
|
+
</ul>
|
|
94
|
+
</>
|
|
95
|
+
);
|
|
96
|
+
}
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### Using a Component
|
|
100
|
+
|
|
101
|
+
```tsx
|
|
102
|
+
import React from "react";
|
|
103
|
+
import { StudioProfileCard } from "@bailaya/react";
|
|
104
|
+
|
|
105
|
+
export function Dashboard() {
|
|
106
|
+
return (
|
|
107
|
+
<div className="max-w-md mx-auto">
|
|
108
|
+
<StudioProfileCard locale="en" />
|
|
109
|
+
</div>
|
|
110
|
+
);
|
|
111
|
+
}
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## API Reference
|
|
117
|
+
|
|
118
|
+
### `<BailayaProvider config>`
|
|
119
|
+
|
|
120
|
+
Provides `useBailayaClient()` context.
|
|
121
|
+
|
|
122
|
+
* `config.baseUrl?: string` – override default API URL
|
|
123
|
+
* `config.studioId?: string` – default studio ID
|
|
124
|
+
|
|
125
|
+
### Hooks
|
|
126
|
+
|
|
127
|
+
All hooks return:
|
|
128
|
+
|
|
129
|
+
```ts
|
|
130
|
+
{
|
|
131
|
+
data: T | null;
|
|
132
|
+
error: Error | null;
|
|
133
|
+
loading: boolean;
|
|
134
|
+
refetch: () => Promise<void>;
|
|
135
|
+
}
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
| Hook | Description |
|
|
139
|
+
|--------------------------------------------------|--------------------------------------------------------------|
|
|
140
|
+
| `useStudioProfile(overrideId?)` | Fetch a studio’s profile. |
|
|
141
|
+
| `useUserProfile(userId)` | Fetch a user’s profile / bio. |
|
|
142
|
+
| `useInstructors(overrideId?)` | Fetch list of active instructors (owner, admin, instructor). |
|
|
143
|
+
| `useClasses(from?, overrideId?)` | Fetch next 7 days of classes (all types). |
|
|
144
|
+
| `useClassesByType(typeName, from?, overrideId?)` | Fetch next 7 days of classes filtered by `typeName`. |
|
|
145
|
+
| `useEvents(from?, overrideId?)` | Fetch next 7 days of events. |
|
|
146
|
+
|
|
147
|
+
### Components
|
|
148
|
+
|
|
149
|
+
All components share:
|
|
150
|
+
|
|
151
|
+
* **Override props** for every styling slot
|
|
152
|
+
* **`locale`** (where relevant)
|
|
153
|
+
* **`labels`** object for custom text (e.g. instructor or business-hours labels)
|
|
154
|
+
* **`renderItem`** for full JSX override
|
|
155
|
+
|
|
156
|
+
| Component | Props |
|
|
157
|
+
|---------------------------| --------------------------------------------------------------------------------------------------------------------------------- |
|
|
158
|
+
| `<StudioProfileCard />` | `overrideId?`, `locale?`, `labels?`, `className?`, `nameClassName?`, `descriptionClassName?`, `labelClassName?`, `renderProfile?` |
|
|
159
|
+
| `<UserProfileCard />` | `userId`, `locale?`, `labels?`, `className?`, `nameClassName?`, `bioClassName?`, `renderProfile?` |
|
|
160
|
+
| `<InstructorList />` | `overrideId?`, `renderItem?`, plus styling slots: `className?`, `itemClassName?`, `imageWrapperClassName?`, etc. |
|
|
161
|
+
| `<ClassSchedule />` | `from?`, `overrideId?`, `locale?`, `labels?`, `renderItem?`, plus slots: `className?`, `itemClassName?`, etc. |
|
|
162
|
+
| `<ClassScheduleByType />` | `typeName`, `from?`, `overrideId?`, `locale?`, `labels?`, `renderItem?`, plus same styling slots as `<ClassSchedule />`. |
|
|
163
|
+
| `<EventSchedule />` | `from?`, `overrideId?`, `locale?`, `labels?`, `renderItem?`, plus slots: `className?`, `itemClassName?`, etc. |
|
|
164
|
+
| `<StudioDescription />` | `overrideId?`, `locale?`, `render?`, plus styling slots: `className?`, `paragraphClassName?` |
|
|
165
|
+
|
|
166
|
+
## License
|
|
167
|
+
|
|
168
|
+
ISC
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClassSchedule.d.ts","sourceRoot":"","sources":["../../src/components/ClassSchedule.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAIjD,MAAM,WAAW,kBAAkB;IAC/B,kEAAkE;IAClE,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,kDAAkD;IAClD,MAAM,CAAC,EAAE;QACL,oEAAoE;QACpE,UAAU,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IAEF,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4BAA4B;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,0CAA0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,8BAA8B;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qBAAqB;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oDAAoD;IACpD,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,oDAAoD;IACpD,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,KAAK,MAAM,CAAC;IAE1D;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;KAC7B,KAAK,KAAK,CAAC,SAAS,CAAC;IAEtB,iDAAiD;IACjD,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAC;CACtD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,
|
|
1
|
+
{"version":3,"file":"ClassSchedule.d.ts","sourceRoot":"","sources":["../../src/components/ClassSchedule.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAIjD,MAAM,WAAW,kBAAkB;IAC/B,kEAAkE;IAClE,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,kDAAkD;IAClD,MAAM,CAAC,EAAE;QACL,oEAAoE;QACpE,UAAU,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IAEF,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4BAA4B;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,0CAA0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,8BAA8B;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qBAAqB;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oDAAoD;IACpD,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,oDAAoD;IACpD,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,KAAK,MAAM,CAAC;IAE1D;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;KAC7B,KAAK,KAAK,CAAC,SAAS,CAAC;IAEtB,iDAAiD;IACjD,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAC;CACtD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAwHtD,CAAC"}
|
|
@@ -37,7 +37,8 @@ const ClassSchedule = ({ from, overrideId, locale, currency, labels = {}, classN
|
|
|
37
37
|
}
|
|
38
38
|
return (react_1.default.createElement("ul", { className: className }, classes === null || classes === void 0 ? void 0 : classes.map((cls) => {
|
|
39
39
|
var _a;
|
|
40
|
-
const dayName = weekdayFmt.format(cls.date)
|
|
40
|
+
const dayName = weekdayFmt.format(cls.date).charAt(0).toUpperCase() +
|
|
41
|
+
weekdayFmt.format(cls.date).slice(1);
|
|
41
42
|
const shortDate = dateFmt.format(cls.date);
|
|
42
43
|
if (renderItem) {
|
|
43
44
|
return react_1.default.createElement("li", { key: cls.id }, renderItem(cls));
|
|
@@ -73,7 +74,7 @@ const ClassSchedule = ({ from, overrideId, locale, currency, labels = {}, classN
|
|
|
73
74
|
cls.instructor.name,
|
|
74
75
|
cls.instructor.lastname ? ` ${cls.instructor.lastname}` : "")))),
|
|
75
76
|
react_1.default.createElement("div", { className: rightClassName },
|
|
76
|
-
Number.isFinite(cls.price) && (react_1.default.createElement("div", { className: priceClassName }, priceText)),
|
|
77
|
+
Number.isFinite(cls.price) && cls.price > 0.0 && (react_1.default.createElement("div", { className: priceClassName }, priceText)),
|
|
77
78
|
!hideBookButton &&
|
|
78
79
|
(renderLink ? (renderLink({
|
|
79
80
|
href,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClassScheduleByType.d.ts","sourceRoot":"","sources":["../../src/components/ClassScheduleByType.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAGjD,MAAM,WAAW,wBAAwB;IACrC,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;IAEjB,kEAAkE;IAClE,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,oBAAoB;IACpB,MAAM,CAAC,EAAE;QACL,oEAAoE;QACpE,UAAU,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IAEF,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4BAA4B;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,0CAA0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,8BAA8B;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qBAAqB;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,oDAAoD;IACpD,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,oDAAoD;IACpD,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,KAAK,MAAM,CAAC;IAE1D;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;KAC7B,KAAK,KAAK,CAAC,SAAS,CAAC;IAEtB;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAC;CACtD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,
|
|
1
|
+
{"version":3,"file":"ClassScheduleByType.d.ts","sourceRoot":"","sources":["../../src/components/ClassScheduleByType.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAGjD,MAAM,WAAW,wBAAwB;IACrC,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;IAEjB,kEAAkE;IAClE,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,oBAAoB;IACpB,MAAM,CAAC,EAAE;QACL,oEAAoE;QACpE,UAAU,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IAEF,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4BAA4B;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,0CAA0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,8BAA8B;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qBAAqB;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,oDAAoD;IACpD,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,oDAAoD;IACpD,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,KAAK,MAAM,CAAC;IAE1D;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;KAC7B,KAAK,KAAK,CAAC,SAAS,CAAC;IAEtB;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAC;CACtD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CA4HlE,CAAC"}
|
|
@@ -44,7 +44,8 @@ const ClassScheduleByType = ({ typeName, from, overrideId, locale, currency, lab
|
|
|
44
44
|
return (react_1.default.createElement("ul", { className: className }, classes === null || classes === void 0 ? void 0 : classes.map((cls) => {
|
|
45
45
|
var _a;
|
|
46
46
|
const dateObj = cls.date;
|
|
47
|
-
const weekday = weekdayFmt.format(dateObj)
|
|
47
|
+
const weekday = weekdayFmt.format(dateObj).charAt(0).toUpperCase() +
|
|
48
|
+
weekdayFmt.format(dateObj).slice(1);
|
|
48
49
|
const dateStr = dateFmt.format(dateObj);
|
|
49
50
|
if (renderItem) {
|
|
50
51
|
return react_1.default.createElement("li", { key: cls.id }, renderItem(cls));
|
|
@@ -82,7 +83,7 @@ const ClassScheduleByType = ({ typeName, from, overrideId, locale, currency, lab
|
|
|
82
83
|
? ` ${cls.instructor.lastname}`
|
|
83
84
|
: "")))),
|
|
84
85
|
react_1.default.createElement("div", { className: rightClassName },
|
|
85
|
-
Number.isFinite(cls.price) && (react_1.default.createElement("div", { className: priceClassName }, priceText)),
|
|
86
|
+
Number.isFinite(cls.price) && cls.price > 0.0 && (react_1.default.createElement("div", { className: priceClassName }, priceText)),
|
|
86
87
|
!hideBookButton &&
|
|
87
88
|
(renderLink ? (renderLink({
|
|
88
89
|
href,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventSchedule.d.ts","sourceRoot":"","sources":["../../src/components/EventSchedule.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAIjD,MAAM,WAAW,kBAAkB;IAC/B,kEAAkE;IAClE,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,4CAA4C;IAC5C,MAAM,CAAC,EAAE;QACL,8DAA8D;QAC9D,IAAI,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4BAA4B;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,0CAA0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wBAAwB;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qBAAqB;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oDAAoD;IACpD,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,oDAAoD;IACpD,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,KAAK,MAAM,CAAC;IAE1D;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;KAC7B,KAAK,KAAK,CAAC,SAAS,CAAC;IAEtB,iDAAiD;IACjD,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAC;CACtD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,
|
|
1
|
+
{"version":3,"file":"EventSchedule.d.ts","sourceRoot":"","sources":["../../src/components/EventSchedule.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAIjD,MAAM,WAAW,kBAAkB;IAC/B,kEAAkE;IAClE,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,4CAA4C;IAC5C,MAAM,CAAC,EAAE;QACL,8DAA8D;QAC9D,IAAI,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4BAA4B;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,0CAA0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wBAAwB;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qBAAqB;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oDAAoD;IACpD,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,oDAAoD;IACpD,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,KAAK,MAAM,CAAC;IAE1D;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;KAC7B,KAAK,KAAK,CAAC,SAAS,CAAC;IAEtB,iDAAiD;IACjD,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAC;CACtD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAyHtD,CAAC"}
|
|
@@ -38,7 +38,8 @@ const EventSchedule = ({ from, overrideId, locale, currency, labels = {}, classN
|
|
|
38
38
|
}
|
|
39
39
|
return (react_1.default.createElement("ul", { className: className }, events === null || events === void 0 ? void 0 : events.map((evt) => {
|
|
40
40
|
var _a;
|
|
41
|
-
const dayName = weekdayFmt.format(evt.date)
|
|
41
|
+
const dayName = weekdayFmt.format(evt.date).charAt(0).toUpperCase() +
|
|
42
|
+
weekdayFmt.format(evt.date).slice(1);
|
|
42
43
|
const shortDate = dateFmt.format(evt.date);
|
|
43
44
|
if (renderItem) {
|
|
44
45
|
return react_1.default.createElement("li", { key: evt.id }, renderItem(evt));
|
package/package.json
CHANGED
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@bailaya/react",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"description": "A React component library for the BailaYa public API",
|
|
5
|
-
"main": "dist/index.js",
|
|
6
|
-
"types": "dist/index.d.ts",
|
|
7
|
-
"exports": {
|
|
8
|
-
".": "./dist/index.js",
|
|
9
|
-
"./styles.css": "./dist/styles.css"
|
|
10
|
-
},
|
|
11
|
-
"files": [
|
|
12
|
-
"dist"
|
|
13
|
-
],
|
|
14
|
-
"scripts": {
|
|
15
|
-
"build": "tsc --build && npm run copy:css",
|
|
16
|
-
"copy:css": "copyfiles -u 1 \"src/**/*.css\" dist",
|
|
17
|
-
"test": "jest"
|
|
18
|
-
},
|
|
19
|
-
"peerDependencies": {
|
|
20
|
-
"react": ">=17.0.0 <20.0.0",
|
|
21
|
-
"react-dom": ">=17.0.0 <20.0.0"
|
|
22
|
-
},
|
|
23
|
-
"devDependencies": {
|
|
24
|
-
"@types/jest": "^30.0.0",
|
|
25
|
-
"@types/react": "^18.0.0",
|
|
26
|
-
"@types/react-dom": "^18.0.0",
|
|
27
|
-
"copyfiles": "^2.4.1",
|
|
28
|
-
"jest": "^30.0.5",
|
|
29
|
-
"react": "^18.2.0",
|
|
30
|
-
"react-dom": "^18.2.0",
|
|
31
|
-
"ts-jest": "^29.4.0",
|
|
32
|
-
"typescript": "^5.8.3"
|
|
33
|
-
},
|
|
34
|
-
"dependencies": {
|
|
35
|
-
"@bailaya/core": "^1.0.9",
|
|
36
|
-
"lucide-react": "^0.536.0"
|
|
37
|
-
},
|
|
38
|
-
"license": "ISC"
|
|
39
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@bailaya/react",
|
|
3
|
+
"version": "1.0.39",
|
|
4
|
+
"description": "A React component library for the BailaYa public API",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": "./dist/index.js",
|
|
9
|
+
"./styles.css": "./dist/styles.css"
|
|
10
|
+
},
|
|
11
|
+
"files": [
|
|
12
|
+
"dist"
|
|
13
|
+
],
|
|
14
|
+
"scripts": {
|
|
15
|
+
"build": "tsc --build && npm run copy:css",
|
|
16
|
+
"copy:css": "copyfiles -u 1 \"src/**/*.css\" dist",
|
|
17
|
+
"test": "jest"
|
|
18
|
+
},
|
|
19
|
+
"peerDependencies": {
|
|
20
|
+
"react": ">=17.0.0 <20.0.0",
|
|
21
|
+
"react-dom": ">=17.0.0 <20.0.0"
|
|
22
|
+
},
|
|
23
|
+
"devDependencies": {
|
|
24
|
+
"@types/jest": "^30.0.0",
|
|
25
|
+
"@types/react": "^18.0.0",
|
|
26
|
+
"@types/react-dom": "^18.0.0",
|
|
27
|
+
"copyfiles": "^2.4.1",
|
|
28
|
+
"jest": "^30.0.5",
|
|
29
|
+
"react": "^18.2.0",
|
|
30
|
+
"react-dom": "^18.2.0",
|
|
31
|
+
"ts-jest": "^29.4.0",
|
|
32
|
+
"typescript": "^5.8.3"
|
|
33
|
+
},
|
|
34
|
+
"dependencies": {
|
|
35
|
+
"@bailaya/core": "^1.0.9",
|
|
36
|
+
"lucide-react": "^0.536.0"
|
|
37
|
+
},
|
|
38
|
+
"license": "ISC"
|
|
39
|
+
}
|