@bryntum/scheduler-vue-3-thin 7.1.1 → 7.1.2
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 +249 -24
- package/lib/chunks/{Dn-AUaFP.js → Cz79kyyi.js} +3 -3
- package/lib/chunks/{Dn-AUaFP.js.map → Cz79kyyi.js.map} +1 -1
- package/lib/chunks/{TLD_h-7S.js → DDnFIp_o.js} +3 -3
- package/lib/chunks/DDnFIp_o.js.map +1 -0
- package/lib/chunks/{C3RoJ41H.js → dnU2pCDo.js} +3 -3
- package/lib/chunks/{C3RoJ41H.js.map → dnU2pCDo.js.map} +1 -1
- package/lib/components/BryntumScheduler.js +1 -1
- package/lib/components/BryntumSchedulerBase.js +1 -1
- package/lib/components/BryntumTimelineHistogram.js +1 -1
- package/lib/index.js +3 -3
- package/package.json +1 -1
- package/src/components/BryntumScheduler.vue +10 -6
- package/src/components/BryntumSchedulerBase.vue +10 -6
- package/src/components/BryntumTimelineHistogram.vue +5 -5
- package/lib/chunks/TLD_h-7S.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,53 +1,278 @@
|
|
|
1
|
-
|
|
1
|
+
<div style="display: flex; justify-content: space-between; align-items: center; margin: 0 50px;">
|
|
2
|
+
<a href="https://bryntum.com/" rel="noopener" target="_blank">
|
|
3
|
+
<img width="350" src="https://bryntum.com/resources/bryntum_logo_blue.svg" alt="Bryntum logo">
|
|
4
|
+
</a>
|
|
5
|
+
<img src="https://bryntum.com/products/grid/docs/data/Core/images/logo/vue.svg" alt="Vue" width="100">
|
|
6
|
+
</div>
|
|
2
7
|
|
|
3
|
-
|
|
4
|
-
configuration options, properties, features, and events.
|
|
8
|
+
# Vue 3 wrapper for Bryntum Scheduler Thin packages
|
|
5
9
|
|
|
6
|
-
|
|
10
|
+
This package provides a wrapper that turns Bryntum Scheduler into a Vue 3 component, exposing configuration options,
|
|
11
|
+
properties, features, and events.
|
|
7
12
|
|
|
8
|
-
This
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
process.
|
|
13
|
+
> **Thin Package:** This is a thin wrapper package designed for applications that use multiple Bryntum products.
|
|
14
|
+
> Thin packages exclude bundled dependencies to avoid duplication. For details, see
|
|
15
|
+
> [Vue Multiple Products](https://bryntum.com/products/scheduler/docs/guide/Scheduler/integration/vue/multiple-products).
|
|
12
16
|
|
|
13
|
-
|
|
17
|
+
## Version Requirement
|
|
14
18
|
|
|
15
|
-
|
|
16
|
-
|
|
19
|
+
* Vue: `3.2` or higher
|
|
20
|
+
* TypeScript: `4.2` or higher
|
|
21
|
+
* Vite `5` or higher
|
|
17
22
|
|
|
18
|
-
|
|
23
|
+
## Package Contents
|
|
19
24
|
|
|
20
|
-
|
|
25
|
+
| Path | Description |
|
|
26
|
+
|--------------|------------------------------------------------|
|
|
27
|
+
| `lib/` | Vue 3 wrapper components (BryntumScheduler etc.) |
|
|
28
|
+
| `src/` | Original Vue source files |
|
|
29
|
+
| `src/*.d.ts` | TypeScript type definitions |
|
|
21
30
|
|
|
22
|
-
|
|
23
|
-
|
|
31
|
+
## Installation
|
|
32
|
+
|
|
33
|
+
### Vue 3 Wrapper
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
npm install @bryntum/scheduler-vue-3-thin@latest
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### Component Package (Required)
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
npm install @bryntum/scheduler-thin@latest
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Try Bryntum Online Demos
|
|
46
|
+
|
|
47
|
+
* [View Online Vue Demos](https://bryntum.com/products/scheduler/examples/?framework=vue)
|
|
48
|
+
|
|
49
|
+
## Quick Start
|
|
50
|
+
|
|
51
|
+
Edit the `src/App.vue` file and replace the content with the following:
|
|
52
|
+
|
|
53
|
+
```typescript
|
|
54
|
+
<script setup>
|
|
55
|
+
import { createApp, ref } from 'vue';
|
|
56
|
+
|
|
57
|
+
import { BryntumScheduler } from '@bryntum/scheduler-vue-3-thin';
|
|
58
|
+
import { schedulerProps } from './AppConfig';
|
|
59
|
+
|
|
60
|
+
import './App.scss';
|
|
61
|
+
|
|
62
|
+
createApp({
|
|
63
|
+
});
|
|
64
|
+
</script>
|
|
65
|
+
|
|
66
|
+
<template>
|
|
67
|
+
<bryntum-scheduler
|
|
68
|
+
v-bind=schedulerProps
|
|
69
|
+
/>
|
|
70
|
+
</template>
|
|
71
|
+
|
|
72
|
+
<style lang="scss">
|
|
73
|
+
</style>
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Create a `SchedulerConfig.ts` file in the `src/` directory with the following content:
|
|
77
|
+
|
|
78
|
+
```typescript
|
|
79
|
+
import { type BryntumSchedulerProps } from '@bryntum/scheduler-vue-3';
|
|
80
|
+
|
|
81
|
+
export const schedulerConfig : BryntumSchedulerProps = {
|
|
82
|
+
startDate : new Date(2026, 0, 1),
|
|
83
|
+
endDate : new Date(2026, 1, 10),
|
|
84
|
+
viewPreset : 'hourAndDay',
|
|
85
|
+
rowHeight : 50,
|
|
86
|
+
barMargin : 5,
|
|
87
|
+
multiEventSelect : true,
|
|
88
|
+
// Uncomment the following if you have images in public/users/
|
|
89
|
+
// resourceImagePath : 'users/',
|
|
90
|
+
columns : [{ text : 'Name', field : 'name', width : 130 }],
|
|
91
|
+
// CrudManager arranges loading and syncing of data in JSON form from/to a web service
|
|
92
|
+
crudManager : {
|
|
93
|
+
loadUrl : 'data/data.json',
|
|
94
|
+
autoLoad : true
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
<details>
|
|
100
|
+
<summary>Create sample data (click to expand)</summary>
|
|
101
|
+
|
|
102
|
+
Create a `public/data/data.json` file for example data and add the following JSON data to it:
|
|
103
|
+
|
|
104
|
+
```json
|
|
105
|
+
{
|
|
106
|
+
"success": true,
|
|
107
|
+
"resources": {
|
|
108
|
+
"rows": [
|
|
109
|
+
{ "id": 1, "name": "Dan Stevenson" },
|
|
110
|
+
{ "id": 2, "name": "Talisha Babin" },
|
|
111
|
+
{ "id": 3, "name": "Ravi Kumar" },
|
|
112
|
+
{ "id": 4, "name": "Aisha Khan" },
|
|
113
|
+
{ "id": 5, "name": "Michael Chen" },
|
|
114
|
+
{ "id": 6, "name": "Sofia Lopez" },
|
|
115
|
+
{ "id": 7, "name": "James Anderson" },
|
|
116
|
+
{ "id": 8, "name": "Eddie Johnson" },
|
|
117
|
+
{ "id": 9, "name": "Ethan Wright" },
|
|
118
|
+
{ "id": 10, "name": "Liu Wei" }
|
|
119
|
+
]
|
|
120
|
+
},
|
|
121
|
+
"events": {
|
|
122
|
+
"rows": [
|
|
123
|
+
{ "resourceId": 1, "startDate": "2026-01-01", "endDate": "2026-01-05", "name": "Kickoff Meeting" },
|
|
124
|
+
{ "resourceId": 1, "startDate": "2026-01-06", "endDate": "2026-01-10", "name": "Scope Definition" },
|
|
125
|
+
{ "resourceId": 1, "startDate": "2026-01-12", "endDate": "2026-01-29", "name": "Project Plan Review" },
|
|
126
|
+
{ "resourceId": 2, "startDate": "2026-01-02", "endDate": "2026-01-06", "name": "Requirement Gathering" },
|
|
127
|
+
{ "resourceId": 2, "startDate": "2026-01-07", "endDate": "2026-01-21", "name": "Stakeholder Interviews" },
|
|
128
|
+
{ "resourceId": 2, "startDate": "2026-01-22", "endDate": "2026-01-27", "name": "Requirement Signoff" },
|
|
129
|
+
{ "resourceId": 3, "startDate": "2026-01-05", "endDate": "2026-01-14", "name": "System Design" },
|
|
130
|
+
{ "resourceId": 3, "startDate": "2026-01-10", "endDate": "2026-01-20", "name": "Database Modeling" },
|
|
131
|
+
{ "resourceId": 3, "startDate": "2026-01-23", "endDate": "2026-01-28", "name": "API Design" },
|
|
132
|
+
{ "resourceId": 4, "startDate": "2026-01-08", "endDate": "2026-01-15", "name": "Backend Setup" },
|
|
133
|
+
{ "resourceId": 4, "startDate": "2026-01-15", "endDate": "2026-01-22", "name": "Authentication Module" },
|
|
134
|
+
{ "resourceId": 4, "startDate": "2026-01-21", "endDate": "2026-01-27", "name": "Data Services" },
|
|
135
|
+
{ "resourceId": 5, "startDate": "2026-01-02", "endDate": "2026-01-14", "name": "UI Wireframes" },
|
|
136
|
+
{ "resourceId": 5, "startDate": "2026-01-15", "endDate": "2026-01-19", "name": "Frontend Components" },
|
|
137
|
+
{ "resourceId": 5, "startDate": "2026-01-20", "endDate": "2026-01-27", "name": "Styling & Theme" },
|
|
138
|
+
{ "resourceId": 6, "startDate": "2026-01-12", "endDate": "2026-01-16", "name": "API Integration" },
|
|
139
|
+
{ "resourceId": 6, "startDate": "2026-01-17", "endDate": "2026-01-21", "name": "GraphQL Setup" },
|
|
140
|
+
{ "resourceId": 6, "startDate": "2026-01-22", "endDate": "2026-01-25", "name": "Integration Testing" },
|
|
141
|
+
{ "resourceId": 7, "startDate": "2026-01-05", "endDate": "2026-01-10", "name": "Unit Testing" },
|
|
142
|
+
{ "resourceId": 7, "startDate": "2026-01-12", "endDate": "2026-01-19", "name": "Automation Scripts" },
|
|
143
|
+
{ "resourceId": 7, "startDate": "2026-01-18", "endDate": "2026-01-27", "name": "Performance Testing" },
|
|
144
|
+
{ "resourceId": 8, "startDate": "2026-01-10", "endDate": "2026-01-22", "name": "Bug Fix Round 1" },
|
|
145
|
+
{ "resourceId": 8, "startDate": "2026-01-23", "endDate": "2026-01-26", "name": "UI Fixes" },
|
|
146
|
+
{ "resourceId": 8, "startDate": "2026-01-27", "endDate": "2026-01-30", "name": "Regression Testing" },
|
|
147
|
+
{ "resourceId": 9, "startDate": "2026-01-03", "endDate": "2026-01-14", "name": "Client Demo Prep" },
|
|
148
|
+
{ "resourceId": 9, "startDate": "2026-01-15", "endDate": "2026-01-19", "name": "Client Review" },
|
|
149
|
+
{ "resourceId": 9, "startDate": "2026-01-20", "endDate": "2026-01-24", "name": "Feedback Implementation" },
|
|
150
|
+
{ "resourceId": 10, "startDate": "2026-01-02", "endDate": "2026-01-16", "name": "Deployment Setup" },
|
|
151
|
+
{ "resourceId": 10, "startDate": "2026-01-19", "endDate": "2026-01-22", "name": "Go-Live" },
|
|
152
|
+
{ "resourceId": 10, "startDate": "2026-01-23", "endDate": "2026-01-27", "name": "Post-Deployment Support" }
|
|
153
|
+
]
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
This is the data the Bryntum Scheduler will use.
|
|
159
|
+
|
|
160
|
+
</details>
|
|
161
|
+
|
|
162
|
+
## Project Structure
|
|
163
|
+
|
|
164
|
+
### Product Dependencies
|
|
165
|
+
|
|
166
|
+
API packages:
|
|
167
|
+
|
|
168
|
+
```json
|
|
169
|
+
{
|
|
170
|
+
"dependencies": {
|
|
171
|
+
"@bryntum/core-thin": "7.1.2",
|
|
172
|
+
"@bryntum/engine-thin": "7.1.2",
|
|
173
|
+
"@bryntum/grid-thin": "7.1.2",
|
|
174
|
+
"@bryntum/scheduler-thin": "7.1.2"
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
Framework wrapper packages:
|
|
180
|
+
|
|
181
|
+
```json
|
|
182
|
+
{
|
|
183
|
+
"dependencies": {
|
|
184
|
+
"@bryntum/core-vue-3-thin": "7.1.2",
|
|
185
|
+
"@bryntum/scheduler-vue-3-thin": "7.1.2"
|
|
186
|
+
}
|
|
187
|
+
}
|
|
24
188
|
```
|
|
25
189
|
|
|
26
|
-
|
|
190
|
+
### Product Configuration
|
|
27
191
|
|
|
28
|
-
```
|
|
29
|
-
|
|
192
|
+
```typescript
|
|
193
|
+
import { BryntumSchedulerProps } from '@bryntum/scheduler-vue-3-thin';
|
|
194
|
+
|
|
195
|
+
const schedulerProps : BryntumSchedulerProps = {
|
|
196
|
+
// Scheduler configuration
|
|
197
|
+
};
|
|
30
198
|
```
|
|
31
199
|
|
|
32
|
-
|
|
200
|
+
### Product Styling
|
|
201
|
+
|
|
202
|
+
**SCSS/CSS:**
|
|
203
|
+
|
|
204
|
+
```css
|
|
205
|
+
/* FontAwesome is used for icons */
|
|
206
|
+
@import '@bryntum/core-thin/fontawesome/css/fontawesome.css';
|
|
207
|
+
@import "@bryntum/core-thin/fontawesome/css/solid.css";
|
|
208
|
+
/* Structural CSS */
|
|
209
|
+
@import '@bryntum/core-thin/core.css';
|
|
210
|
+
@import '@bryntum/grid-thin/grid.css';
|
|
211
|
+
@import '@bryntum/scheduler-thin/scheduler.css';
|
|
212
|
+
/* Theme */
|
|
213
|
+
@import '@bryntum/core-thin/svalbard-light.css';
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
### Product Localization
|
|
217
|
+
|
|
218
|
+
```javascript
|
|
219
|
+
import '@bryntum/scheduler-thin/lib/localization/De.js'
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
## Integration Guide
|
|
33
223
|
|
|
34
224
|
For details on installing and using this package, see the
|
|
35
225
|
[Vue Integration Guide](https://bryntum.com/products/scheduler/docs/guide/Scheduler/integration/vue/guide).
|
|
36
226
|
|
|
37
|
-
|
|
227
|
+
## Wrappers
|
|
228
|
+
|
|
229
|
+
Vue wrappers encapsulate Bryntum components as native Vue components, exposing all configuration options,
|
|
230
|
+
properties, features, and events through Vue-familiar patterns like props, events, and slots.
|
|
231
|
+
|
|
232
|
+
Visit [Wrappers documentation](https://bryntum.com/products/scheduler/docs/guide/Scheduler/integration/vue/guide#wrappers) for the complete list of available
|
|
233
|
+
wrapper components.
|
|
234
|
+
|
|
235
|
+
## Features
|
|
236
|
+
|
|
237
|
+
Features are optional modules that extend Bryntum Scheduler functionality. Each feature is suffixed with `Feature` and
|
|
238
|
+
can be enabled and configured through standard Vue props.
|
|
239
|
+
|
|
240
|
+
Visit [Features documentation](https://bryntum.com/products/scheduler/docs/guide/Scheduler/integration/vue/guide#features) for the complete list of available
|
|
241
|
+
features and their configuration options.
|
|
242
|
+
|
|
243
|
+
## Explore All Bryntum Products
|
|
244
|
+
|
|
245
|
+
* [Bryntum Grid](https://bryntum.com/products/grid/) - High-performance data grid
|
|
246
|
+
* [Bryntum Scheduler](https://bryntum.com/products/scheduler/) - Resource scheduling component
|
|
247
|
+
* [Bryntum Scheduler Pro](https://bryntum.com/products/schedulerpro/) - Advanced scheduling with dependencies
|
|
248
|
+
* [Bryntum Gantt](https://bryntum.com/products/gantt/) - Project planning and management
|
|
249
|
+
* [Bryntum Calendar](https://bryntum.com/products/calendar/) - Full-featured calendar component
|
|
250
|
+
* [Bryntum TaskBoard](https://bryntum.com/products/taskboard/) - Kanban-style task management
|
|
251
|
+
|
|
252
|
+
Explore our comprehensive collection of demos:
|
|
253
|
+
|
|
254
|
+
| Product | <img src="https://bryntum.com/products/grid/docs/data/Core/images/logo/js.svg" alt="JavaScript" width="30"><br>JavaScript | <img src="https://bryntum.com/products/grid/docs/data/Core/images/logo/react.svg" alt="React" width="30"><br>React | <img src="https://bryntum.com/products/grid/docs/data/Core/images/logo/vue.svg" alt="Vue" width="30"><br>Vue | <img src="https://bryntum.com/products/grid/docs/data/Core/images/logo/angular.svg" alt="Angular" width="30"><br>Angular |
|
|
255
|
+
|-------------------|:------------------------------------------------------------------------------------:|:--------------------------------------------------------------------------:|:----------------------------------------------------------------------:|:------------------------------------------------------------------------------:|
|
|
256
|
+
| **Grid** | [Grid JavaScript demos](https://bryntum.com/products/grid/examples/?framework=javascript) | [Grid React demos](https://bryntum.com/products/grid/examples/?framework=react) | [Grid Vue demos](https://bryntum.com/products/grid/examples/?framework=vue) | [Grid Angular demos](https://bryntum.com/products/grid/examples/?framework=angular) |
|
|
257
|
+
| **Scheduler** | [Scheduler JavaScript demos](https://bryntum.com/products/scheduler/examples/?framework=javascript) | [Scheduler React demos](https://bryntum.com/products/scheduler/examples/?framework=react) | [Scheduler Vue demos](https://bryntum.com/products/scheduler/examples/?framework=vue) | [Scheduler Angular demos](https://bryntum.com/products/scheduler/examples/?framework=angular) |
|
|
258
|
+
| **Scheduler Pro** | [Scheduler Pro JavaScript demos](https://bryntum.com/products/schedulerpro/examples/?framework=javascript) | [Scheduler Pro React demos](https://bryntum.com/products/schedulerpro/examples/?framework=react) | [Scheduler Pro Vue demos](https://bryntum.com/products/schedulerpro/examples/?framework=vue) | [Scheduler Pro Angular demos](https://bryntum.com/products/schedulerpro/examples/?framework=angular) |
|
|
259
|
+
| **Gantt** | [Gantt JavaScript demos](https://bryntum.com/products/gantt/examples/?framework=javascript) | [Gantt React demos](https://bryntum.com/products/gantt/examples/?framework=react) | [Gantt Vue demos](https://bryntum.com/products/gantt/examples/?framework=vue) | [Gantt Angular demos](https://bryntum.com/products/gantt/examples/?framework=angular) |
|
|
260
|
+
| **Calendar** | [Calendar JavaScript demos](https://bryntum.com/products/calendar/examples/?framework=javascript) | [Calendar React demos](https://bryntum.com/products/calendar/examples/?framework=react) | [Calendar Vue demos](https://bryntum.com/products/calendar/examples/?framework=vue) | [Calendar Angular demos](https://bryntum.com/products/calendar/examples/?framework=angular) |
|
|
261
|
+
| **TaskBoard** | [TaskBoard JavaScript demos](https://bryntum.com/products/taskboard/examples/?framework=javascript) | [TaskBoard React demos](https://bryntum.com/products/taskboard/examples/?framework=react) | [TaskBoard Vue demos](https://bryntum.com/products/taskboard/examples/?framework=vue) | [TaskBoard Angular demos](https://bryntum.com/products/taskboard/examples/?framework=angular) |
|
|
262
|
+
|
|
263
|
+
## Online references
|
|
38
264
|
|
|
39
|
-
* [Bryntum Vue Quick Start Guide](https://bryntum.com/products/scheduler/docs/guide/Scheduler/quick-start/vue-3)
|
|
40
|
-
* [Bryntum Vue Integration Guide](https://bryntum.com/products/scheduler/docs/guide/Scheduler/integration/vue/guide)
|
|
41
|
-
* [Bryntum npm repository guide](https://bryntum.com/products/scheduler/docs/guide/Scheduler/npm-repository)
|
|
42
265
|
* [Bryntum Scheduler documentation](https://bryntum.com/products/scheduler/docs/)
|
|
43
266
|
* [Bryntum Scheduler examples](https://bryntum.com/products/scheduler/examples/)
|
|
267
|
+
|
|
44
268
|
* [Bryntum Support Forum](https://forum.bryntum.com/)
|
|
45
269
|
* [Contact us](https://bryntum.com/contact/)
|
|
46
270
|
|
|
47
|
-
|
|
271
|
+
## License and copyright
|
|
48
272
|
|
|
49
273
|
This wrapper depends on Bryntum Scheduler, which is commercial software and requires a paid license.
|
|
50
274
|
Please visit the [Bryntum Scheduler End User License](https://bryntum.com/products/scheduler/license/) for the full text of the license.
|
|
51
275
|
|
|
52
276
|
Copyright © 2009-2026, Bryntum
|
|
53
277
|
All rights reserved.
|
|
278
|
+
|
|
@@ -487,9 +487,7 @@ const B = {
|
|
|
487
487
|
"managedEventSizing",
|
|
488
488
|
"maskDefaults",
|
|
489
489
|
"masked",
|
|
490
|
-
"maxDate",
|
|
491
490
|
"maxTimeAxisUnit",
|
|
492
|
-
"minDate",
|
|
493
491
|
"mode",
|
|
494
492
|
"monitorResize",
|
|
495
493
|
"multiEventSelect",
|
|
@@ -608,6 +606,7 @@ const B = {
|
|
|
608
606
|
"lazyLoadingIndicator",
|
|
609
607
|
"longPressTime",
|
|
610
608
|
"margin",
|
|
609
|
+
"maxDate",
|
|
611
610
|
"maxHeight",
|
|
612
611
|
"maxWidth",
|
|
613
612
|
"maxZoomLevel",
|
|
@@ -615,6 +614,7 @@ const B = {
|
|
|
615
614
|
"milestoneCharWidth",
|
|
616
615
|
"milestoneLayoutMode",
|
|
617
616
|
"milestoneTextPosition",
|
|
617
|
+
"minDate",
|
|
618
618
|
"minHeight",
|
|
619
619
|
"minPackSize",
|
|
620
620
|
"minWidth",
|
|
@@ -1238,4 +1238,4 @@ const B = {
|
|
|
1238
1238
|
export {
|
|
1239
1239
|
I as _
|
|
1240
1240
|
};
|
|
1241
|
-
//# sourceMappingURL=
|
|
1241
|
+
//# sourceMappingURL=Cz79kyyi.js.map
|