@bryntum/taskboard-angular 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.
Files changed (76) hide show
  1. package/README.md +230 -15
  2. package/package.json +1 -1
  3. package/src/lib/bryntum-button-group.component.ts +1213 -0
  4. package/src/lib/bryntum-button.component.ts +1190 -0
  5. package/src/lib/bryntum-chat-panel.component.ts +1435 -0
  6. package/src/lib/bryntum-checkbox-group.component.ts +1478 -0
  7. package/src/lib/bryntum-checkbox.component.ts +1333 -0
  8. package/src/lib/bryntum-chip-view.component.ts +1225 -0
  9. package/src/lib/bryntum-code-editor.component.ts +1419 -0
  10. package/src/lib/bryntum-color-field.component.ts +1334 -0
  11. package/src/lib/bryntum-column-combo.component.ts +1645 -0
  12. package/src/lib/bryntum-column-filter-field.component.ts +1360 -0
  13. package/src/lib/bryntum-column-picker-button.component.ts +1200 -0
  14. package/src/lib/bryntum-column-scroll-button.component.ts +1200 -0
  15. package/src/lib/bryntum-combo.component.ts +1634 -0
  16. package/src/lib/bryntum-container.component.ts +1166 -0
  17. package/src/lib/bryntum-date-field.component.ts +1413 -0
  18. package/src/lib/bryntum-date-picker.component.ts +1756 -0
  19. package/src/lib/bryntum-date-range-field.component.ts +1417 -0
  20. package/src/lib/bryntum-date-time-field.component.ts +1261 -0
  21. package/src/lib/bryntum-demo-code-editor.component.ts +1441 -0
  22. package/src/lib/bryntum-demo-header.component.ts +141 -0
  23. package/src/lib/bryntum-display-field.component.ts +1308 -0
  24. package/src/lib/bryntum-duration-field.component.ts +1390 -0
  25. package/src/lib/bryntum-editor.component.ts +1343 -0
  26. package/src/lib/bryntum-field-filter-picker-group.component.ts +1308 -0
  27. package/src/lib/bryntum-field-filter-picker.component.ts +1272 -0
  28. package/src/lib/bryntum-field-set.component.ts +1408 -0
  29. package/src/lib/bryntum-file-field.component.ts +1313 -0
  30. package/src/lib/bryntum-file-picker.component.ts +1199 -0
  31. package/src/lib/bryntum-filter-field.component.ts +1367 -0
  32. package/src/lib/bryntum-fullscreen-button.component.ts +53 -0
  33. package/src/lib/bryntum-hint.component.ts +1506 -0
  34. package/src/lib/bryntum-label.component.ts +989 -0
  35. package/src/lib/bryntum-list.component.ts +1196 -0
  36. package/src/lib/bryntum-menu.component.ts +1520 -0
  37. package/src/lib/bryntum-month-picker.component.ts +1400 -0
  38. package/src/lib/bryntum-number-field.component.ts +1368 -0
  39. package/src/lib/bryntum-paging-toolbar.component.ts +1243 -0
  40. package/src/lib/bryntum-panel.component.ts +1377 -0
  41. package/src/lib/bryntum-password-field.component.ts +1296 -0
  42. package/src/lib/bryntum-project-combo.component.ts +1648 -0
  43. package/src/lib/bryntum-radio-group.component.ts +1446 -0
  44. package/src/lib/bryntum-radio.component.ts +1333 -0
  45. package/src/lib/bryntum-resources-combo.component.ts +1644 -0
  46. package/src/lib/bryntum-scheduler-project-combo.component.ts +1638 -0
  47. package/src/lib/bryntum-slide-toggle.component.ts +1333 -0
  48. package/src/lib/bryntum-slider.component.ts +1112 -0
  49. package/src/lib/bryntum-splitter.component.ts +1025 -0
  50. package/src/lib/bryntum-swimlane-combo.component.ts +1644 -0
  51. package/src/lib/bryntum-swimlane-filter-field.component.ts +1377 -0
  52. package/src/lib/bryntum-swimlane-picker-button.component.ts +1200 -0
  53. package/src/lib/bryntum-swimlane-scroll-button.component.ts +1200 -0
  54. package/src/lib/bryntum-tab-panel.component.ts +1441 -0
  55. package/src/lib/bryntum-tag-combo.component.ts +1651 -0
  56. package/src/lib/bryntum-task-board-base.component.ts +2388 -0
  57. package/src/lib/bryntum-task-board-field-filter-picker-group.component.ts +1316 -0
  58. package/src/lib/bryntum-task-board-field-filter-picker.component.ts +1254 -0
  59. package/src/lib/bryntum-task-board-project-model.component.ts +1026 -0
  60. package/src/lib/bryntum-task-board.component.ts +2392 -0
  61. package/src/lib/bryntum-task-color-combo.component.ts +1334 -0
  62. package/src/lib/bryntum-task-filter-field.component.ts +1377 -0
  63. package/src/lib/bryntum-text-area-field.component.ts +1312 -0
  64. package/src/lib/bryntum-text-area-picker-field.component.ts +1343 -0
  65. package/src/lib/bryntum-text-field.component.ts +1321 -0
  66. package/src/lib/bryntum-time-field.component.ts +1388 -0
  67. package/src/lib/bryntum-time-picker.component.ts +1207 -0
  68. package/src/lib/bryntum-todo-list-field.component.ts +1318 -0
  69. package/src/lib/bryntum-toolbar.component.ts +1234 -0
  70. package/src/lib/bryntum-undo-redo.component.ts +1179 -0
  71. package/src/lib/bryntum-widget.component.ts +982 -0
  72. package/src/lib/bryntum-year-picker.component.ts +1423 -0
  73. package/src/lib/bryntum-zoom-slider.component.ts +1122 -0
  74. package/src/lib/taskboard.module.ts +232 -0
  75. package/src/lib/wrapper.helper.ts +89 -0
  76. package/src/public-api.ts +77 -0
package/README.md CHANGED
@@ -1,37 +1,251 @@
1
- # Angular Ivy wrapper for Bryntum TaskBoard
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/angular.svg" alt="Angular" width="100">
6
+ </div>
2
7
 
3
- This package contains a wrapper that encapsulates Bryntum TaskBoard and turns it into an Angular component, exposing
4
- configuration options, properties, features, and events. Compiled for the Angular Ivy engine.
8
+ # Angular wrapper for Bryntum TaskBoard
9
+
10
+ This package provides a wrapper that turns Bryntum TaskBoard into an Angular component, exposing configuration options,
11
+ properties, features, and events.
12
+
13
+ ## Version Requirement
14
+
15
+ Wrapper is compiled for the **Angular Ivy** rendering engine (Angular 12+).
16
+
17
+ * Angular: `12` with Ivy support or higher
18
+ * TypeScript: `4.2` or higher
19
+ * Vite `5` or higher (starting with Angular `17`)
20
+
21
+ ## Package Contents
22
+
23
+ | Path | Description |
24
+ |------------|----------------------------------|
25
+ | `bundles/` | UMD bundles with source maps |
26
+ | `lib/` | Component type definitions |
27
+ | `src/` | Original TypeScript source files |
5
28
 
6
29
  ## Installation
7
30
 
8
- The installation is performed by issuing the installation command in the root of the application folder.
9
- The specific command depends on the package manager used by the application.
31
+ ### Angular Wrapper
32
+
33
+ ```bash
34
+ npm install @bryntum/taskboard-angular@latest
35
+ ```
36
+
37
+ ### Component Package (Required)
38
+
39
+ ```bash
40
+ npm install @bryntum/taskboard@latest
41
+ ```
42
+
43
+ ## Try Bryntum Online Demos
44
+
45
+ * [View Online Angular Demos](https://bryntum.com/products/taskboard/examples/?framework=angular)
46
+
47
+ ## Quick Start
48
+
49
+ Edit the `src/app/app-module.ts` file and add the following import:
50
+
51
+ ```typescript
52
+ import { BryntumTaskBoardModule } from '@bryntum/taskboard-angular';
53
+ ```
54
+
55
+ Next, add `BryntumTaskBoardModule` to `imports[]` :
56
+
57
+ ```typescript
58
+ @NgModule({
59
+ imports : [
60
+ BryntumTaskBoardModule
61
+ ]
62
+ })
63
+ ```
64
+
65
+ Create `src/app/app.config.ts` file with the following content:
66
+
67
+ ```typescript
68
+ import { BryntumTaskBoardProps, BryntumTaskBoardProjectModelProps } from '@bryntum/taskboard-angular';
69
+
70
+ export const projectProps: BryntumTaskBoardProjectModelProps = {
71
+ loadUrl : 'data/data.json',
72
+ autoLoad : true
73
+ };
74
+
75
+ export const taskBoardProps: BryntumTaskBoardProps = {
76
+ columns : [
77
+ { id : 'todo', text : 'Todo', color : 'deep-orange' },
78
+ { id : 'doing', text : 'Doing', color : 'orange' },
79
+ { id : 'done', text : 'Done', color : 'light-green' }
80
+ ],
81
+ columnField : 'status'
82
+ };
83
+ ```
84
+
85
+ Update the `src/app/app.ts` file with the following content:
86
+
87
+ ```typescript
88
+ import { Component, ViewChild } from '@angular/core';
89
+ import { BryntumTaskBoardComponent, BryntumTaskBoardProjectModelComponent } from '@bryntum/taskboard-angular';
90
+ import { taskBoardProps, projectProps } from './app.config';
91
+
92
+ @Component({
93
+ selector : 'app-root',
94
+ standalone : false,
95
+ templateUrl : './app.html',
96
+ styleUrl : './app.css'
97
+ })
98
+ export class App {
99
+
100
+ taskBoardProps = taskBoardProps;
101
+ projectProps = projectProps;
102
+
103
+ @ViewChild('taskboard') taskBoardComponent!: BryntumTaskBoardComponent;
104
+ @ViewChild('project') projectComponent!: BryntumTaskBoardProjectModelComponent;
105
+ }
106
+ ```
107
+
108
+ Edit the `src/app/app.html` file and replace the content with the following:
109
+
110
+ ```html
111
+ <bryntum-task-board-project-model
112
+ #project
113
+ [loadUrl] = "projectProps.loadUrl!"
114
+ [autoLoad] = "projectProps.autoLoad!"
115
+ ></bryntum-task-board-project-model>
10
116
 
11
- The following are most frequently used:
117
+ <bryntum-task-board
118
+ #taskboard
119
+ [project] = "project"
120
+ [columns] = "taskBoardProps.columns!"
121
+ [columnField] = "taskBoardProps.columnField!"
122
+ ></bryntum-task-board>
123
+ ```
12
124
 
13
- Install using `npm`:
125
+ <details>
126
+ <summary>Create sample data (click to expand)</summary>
14
127
 
15
- ```shell
16
- npm install @bryntum/taskboard-angular@7.1.1
128
+ Create a `public/data/data.json` file for example data and add the following JSON data to it:
129
+ ```javascript
130
+ {
131
+ "success": true,
132
+ "tasks": {
133
+ "rows": [
134
+ { "id": 1, "name": "Design landing page", "status": "doing", "description": "Creating layout for the new landing page" },
135
+ { "id": 2, "name": "Set up database schema", "status": "todo", "description": "Define tables and relationships for user data" },
136
+ { "id": 3, "name": "Write API documentation", "status": "done", "description": "Document the REST endpoints for the project" },
137
+ { "id": 4, "name": "Create login screen", "status": "doing", "description": "Implement authentication UI with validation" },
138
+ { "id": 5, "name": "Integrate payment gateway", "status": "todo", "description": "Connect Stripe API to the backend" },
139
+ { "id": 6, "name": "Fix navigation bugs", "status": "done", "description": "Resolve reported issues with navbar links" },
140
+ { "id": 7, "name": "Build notification system", "status": "doing", "description": "Real-time push notifications for events" },
141
+ { "id": 8, "name": "Add unit tests", "status": "todo", "description": "Write tests for services and components" },
142
+ { "id": 9, "name": "Optimize image loading", "status": "done", "description": "Implement lazy loading for large images" },
143
+ { "id": 10, "name": "Deploy staging server", "status": "doing", "description": "Set up CI/CD pipeline for staging environment" },
144
+ { "id": 11, "name": "Create user profile page", "status": "todo", "description": "Design and implement profile management UI" },
145
+ { "id": 12, "name": "Implement role-based access control", "status": "todo", "description": "Restrict features based on user roles" },
146
+ { "id": 13, "name": "Set up error logging", "status": "todo", "description": "Integrate centralized error monitoring tool" },
147
+ { "id": 14, "name": "Improve form validation", "status": "todo", "description": "Enhance validation rules for all forms" },
148
+ { "id": 15, "name": "Add search functionality", "status": "todo", "description": "Implement search bar with filtering options" }
149
+ ]
150
+ },
151
+ "resources": {
152
+ "rows": [
153
+ { "id": 1, "name": "Angelo" },
154
+ { "id": 2, "name": "Celia" },
155
+ { "id": 3, "name": "Dave" },
156
+ { "id": 4, "name": "Emilia" },
157
+ { "id": 5, "name": "Gloria" },
158
+ { "id": 6, "name": "Henrik" },
159
+ { "id": 7, "name": "Kate" }
160
+ ]
161
+ },
162
+ "assignments": {
163
+ "rows": [
164
+ { "id": 1, "event": 1, "resource": 1 },
165
+ { "id": 2, "event": 2, "resource": 2 },
166
+ { "id": 3, "event": 3, "resource": 3 },
167
+ { "id": 4, "event": 4, "resource": 4 },
168
+ { "id": 5, "event": 5, "resource": 5 },
169
+ { "id": 6, "event": 6, "resource": 6 },
170
+ { "id": 7, "event": 7, "resource": 7 },
171
+ { "id": 8, "event": 8, "resource": 1 },
172
+ { "id": 9, "event": 9, "resource": 2 },
173
+ { "id": 10, "event": 10, "resource": 3 },
174
+ { "id": 11, "event": 11, "resource": 4 },
175
+ { "id": 12, "event": 12, "resource": 5 },
176
+ { "id": 13, "event": 1, "resource": 5 },
177
+ { "id": 14, "event": 2, "resource": 5 },
178
+ { "id": 15, "event": 3, "resource": 5 },
179
+ { "id": 16, "event": 4, "resource": 5 },
180
+ { "id": 17, "event": 6, "resource": 5 },
181
+ { "id": 18, "event": 7, "resource": 5 }
182
+ ]
183
+ }
184
+ }
17
185
  ```
18
186
 
19
- Install using `yarn`:
187
+ This is the data the Bryntum TaskBoard will use.
188
+
189
+ </details>
190
+
191
+ Lastly, add some styling to your `styles.css` :
20
192
 
21
- ```shell
22
- yarn add @bryntum/taskboard-angular@7.1.1
193
+ ```css
194
+ /* FontAwesome is used for icons */
195
+ @import '@bryntum/taskboard/fontawesome/css/fontawesome.css';
196
+ @import '@bryntum/taskboard/fontawesome/css/solid.css';
197
+ /* Structural CSS */
198
+ @import "@bryntum/taskboard/taskboard.css";
199
+ /* Bryntum theme of your choice */
200
+ @import "@bryntum/taskboard/material3-light.css";
23
201
  ```
24
202
 
25
- ## Integration guide
203
+ ## Integration Guide
26
204
 
27
205
  For details on installing and using this package, see the
28
206
  [Angular Integration Guide](https://bryntum.com/products/taskboard/docs/guide/TaskBoard/integration/angular/guide).
29
207
 
30
- # Online references
208
+ ## Wrappers
209
+
210
+ Angular wrappers encapsulate Bryntum components as native Angular components, exposing all configuration options,
211
+ properties, features, and events through Angular-familiar patterns like inputs, outputs, and templates.
212
+
213
+ Visit [Wrappers documentation](https://bryntum.com/products/taskboard/docs/guide/TaskBoard/integration/angular/guide#wrappers) for the complete list of available
214
+ wrapper components.
215
+
216
+ ## Features
217
+
218
+ Features are optional modules that extend Bryntum TaskBoard functionality. Each feature is suffixed with `Feature` and
219
+ can be enabled and configured through standard Angular inputs.
220
+
221
+ Visit [Features documentation](https://bryntum.com/products/taskboard/docs/guide/TaskBoard/integration/angular/guide#features) for the complete list of available
222
+ features and their configuration options.
223
+
224
+ ## Explore All Bryntum Products
225
+
226
+ * [Bryntum Grid](https://bryntum.com/products/grid/) - High-performance data grid
227
+ * [Bryntum Scheduler](https://bryntum.com/products/scheduler/) - Resource scheduling component
228
+ * [Bryntum Scheduler Pro](https://bryntum.com/products/schedulerpro/) - Advanced scheduling with dependencies
229
+ * [Bryntum Gantt](https://bryntum.com/products/gantt/) - Project planning and management
230
+ * [Bryntum Calendar](https://bryntum.com/products/calendar/) - Full-featured calendar component
231
+ * [Bryntum TaskBoard](https://bryntum.com/products/taskboard/) - Kanban-style task management
232
+
233
+ Explore our comprehensive collection of demos:
234
+
235
+ | 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 |
236
+ |-------------------|:------------------------------------------------------------------------------------:|:--------------------------------------------------------------------------:|:----------------------------------------------------------------------:|:------------------------------------------------------------------------------:|
237
+ | **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) |
238
+ | **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) |
239
+ | **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) |
240
+ | **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) |
241
+ | **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) |
242
+ | **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) |
243
+
244
+ ## Online references
31
245
 
32
- * [Bryntum npm repository guide](https://bryntum.com/products/taskboard/docs/guide/TaskBoard/npm-repository)
33
246
  * [Bryntum TaskBoard documentation](https://bryntum.com/products/taskboard/docs/)
34
247
  * [Bryntum TaskBoard examples](https://bryntum.com/products/taskboard/examples/)
248
+
35
249
  * [Bryntum Support Forum](https://forum.bryntum.com/)
36
250
  * [Contact us](https://bryntum.com/contact/)
37
251
 
@@ -42,3 +256,4 @@ Please visit the [Bryntum TaskBoard End User License](https://bryntum.com/produc
42
256
 
43
257
  Copyright © 2009-2026, Bryntum
44
258
  All rights reserved.
259
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bryntum/taskboard-angular",
3
- "version": "7.1.1",
3
+ "version": "7.1.2",
4
4
  "description": "Angular IVY wrappers for Bryntum TaskBoard JavaScript component",
5
5
  "keywords": [
6
6
  "bryntum",