@bryntum/scheduler-react-thin 7.1.1

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 (56) hide show
  1. package/README.md +52 -0
  2. package/lib/BryntumEventColorField.d.ts +232 -0
  3. package/lib/BryntumEventColorField.js +169 -0
  4. package/lib/BryntumEventColorField.js.map +1 -0
  5. package/lib/BryntumProjectCombo.d.ts +268 -0
  6. package/lib/BryntumProjectCombo.js +203 -0
  7. package/lib/BryntumProjectCombo.js.map +1 -0
  8. package/lib/BryntumResourceCombo.d.ts +268 -0
  9. package/lib/BryntumResourceCombo.js +203 -0
  10. package/lib/BryntumResourceCombo.js.map +1 -0
  11. package/lib/BryntumResourceFilter.d.ts +215 -0
  12. package/lib/BryntumResourceFilter.js +154 -0
  13. package/lib/BryntumResourceFilter.js.map +1 -0
  14. package/lib/BryntumScheduler.d.ts +2039 -0
  15. package/lib/BryntumScheduler.js +642 -0
  16. package/lib/BryntumScheduler.js.map +1 -0
  17. package/lib/BryntumSchedulerBase.d.ts +2038 -0
  18. package/lib/BryntumSchedulerBase.js +641 -0
  19. package/lib/BryntumSchedulerBase.js.map +1 -0
  20. package/lib/BryntumSchedulerDatePicker.d.ts +314 -0
  21. package/lib/BryntumSchedulerDatePicker.js +216 -0
  22. package/lib/BryntumSchedulerDatePicker.js.map +1 -0
  23. package/lib/BryntumSchedulerProjectModel.d.ts +91 -0
  24. package/lib/BryntumSchedulerProjectModel.js +98 -0
  25. package/lib/BryntumSchedulerProjectModel.js.map +1 -0
  26. package/lib/BryntumTimelineHistogram.d.ts +1185 -0
  27. package/lib/BryntumTimelineHistogram.js +448 -0
  28. package/lib/BryntumTimelineHistogram.js.map +1 -0
  29. package/lib/BryntumUndoRedo.d.ts +190 -0
  30. package/lib/BryntumUndoRedo.js +152 -0
  31. package/lib/BryntumUndoRedo.js.map +1 -0
  32. package/lib/BryntumViewPresetCombo.d.ts +216 -0
  33. package/lib/BryntumViewPresetCombo.js +158 -0
  34. package/lib/BryntumViewPresetCombo.js.map +1 -0
  35. package/lib/WrapperHelper.d.ts +26 -0
  36. package/lib/WrapperHelper.js +569 -0
  37. package/lib/WrapperHelper.js.map +1 -0
  38. package/lib/index.d.ts +11 -0
  39. package/lib/index.js +12 -0
  40. package/lib/index.js.map +1 -0
  41. package/license.pdf +0 -0
  42. package/licenses.md +310 -0
  43. package/package.json +25 -0
  44. package/src/BryntumEventColorField.tsx +996 -0
  45. package/src/BryntumProjectCombo.tsx +1233 -0
  46. package/src/BryntumResourceCombo.tsx +1236 -0
  47. package/src/BryntumResourceFilter.tsx +931 -0
  48. package/src/BryntumScheduler.tsx +5184 -0
  49. package/src/BryntumSchedulerBase.tsx +5182 -0
  50. package/src/BryntumSchedulerDatePicker.tsx +1365 -0
  51. package/src/BryntumSchedulerProjectModel.tsx +424 -0
  52. package/src/BryntumTimelineHistogram.tsx +3427 -0
  53. package/src/BryntumUndoRedo.tsx +886 -0
  54. package/src/BryntumViewPresetCombo.tsx +915 -0
  55. package/src/WrapperHelper.tsx +1125 -0
  56. package/src/index.ts +15 -0
package/README.md ADDED
@@ -0,0 +1,52 @@
1
+ # React wrapper for Bryntum Scheduler
2
+
3
+ This package contains a wrapper that encapsulates Bryntum Scheduler and turns it into a React component, exposing
4
+ configuration options, properties, features, and events.
5
+
6
+ # Bryntum repository access setup
7
+
8
+ This npm package requires access to Bryntum private NPM repository. You must be logged-in to this repository as a
9
+ licensed or trial user to access it.
10
+
11
+ Please check [Online npm repository guide](https://bryntum.com/docs/pkgOnlineName/guide/Scheduler/npm-repository) for
12
+ detailed information on the sign-up/login process.
13
+
14
+ # Installation
15
+
16
+ The installation is performed by issuing the installation command in the root of the application folder. The specific
17
+ command depends on the package manager used by the application.
18
+
19
+ The following are most frequently used:
20
+
21
+ Install using `npm`:
22
+ ```
23
+
24
+ npm install @bryntum/scheduler-react@7.1.1
25
+ ```
26
+
27
+ Install using `yarn`:
28
+ ```
29
+
30
+ yarn add @bryntum/scheduler-react@7.1.1
31
+ ```
32
+
33
+ # Integration guide
34
+
35
+ To get more information on the package installation and use, use
36
+ [React Integration Guide](https://bryntum.com/docs/pkgOnlineName/guide/Scheduler/integration/react/guide)
37
+
38
+ # Online References
39
+
40
+ * [Bryntum npm repository guide](https://bryntum.com/products/scheduler/docs/guide/Scheduler/npm-repository)
41
+ * [Bryntum Scheduler documentation](https://bryntum.com/products/scheduler/docs/)
42
+ * [Bryntum Scheduler examples](https://bryntum.com/products/scheduler/examples/)
43
+ * [Bryntum support Forum](https://forum.bryntum.com/)
44
+ * [Contacts us](https://bryntum.com/contact/)
45
+
46
+ # License and Copyright
47
+
48
+ This wrapper depends on Bryntum Scheduler, which is commercial software and requires a paid license.
49
+ Please visit the [Bryntum Scheduler End User License](https://bryntum.com/products/scheduler/license/) for the full text of the license.
50
+
51
+ Copyright © 2009-2026, Bryntum
52
+ All rights reserved.
@@ -0,0 +1,232 @@
1
+ import React from 'react';
2
+ import { AlignSpec, Base, ColorDescriptor, Field, FieldContainer, FieldContainerConfig, FieldTriggerConfig, KeyMapConfig, MaskConfig, Model, Rectangle, TabConfig, TooltipConfig, Widget } from '@bryntum/core-thin';
3
+ import { SchedulerContainerItemConfig, EventColorField, EventColorFieldListeners } from '@bryntum/scheduler-thin';
4
+ import { processWidgetContent } from './WrapperHelper.js';
5
+ export declare type BryntumEventColorFieldProps = {
6
+ addNoColorItem?: boolean;
7
+ adopt?: HTMLElement | string;
8
+ align?: AlignSpec | string;
9
+ alignSelf?: string;
10
+ anchor?: boolean;
11
+ appendTo?: HTMLElement | string;
12
+ ariaDescription?: string;
13
+ ariaLabel?: string;
14
+ autoComplete?: string;
15
+ autoExpand?: boolean;
16
+ autoSelect?: boolean;
17
+ badge?: string;
18
+ bubbleEvents?: object;
19
+ callOnFunctions?: boolean;
20
+ catchEventHandlerExceptions?: boolean;
21
+ centered?: boolean;
22
+ clearable?: boolean | FieldTriggerConfig;
23
+ cls?: string | object;
24
+ colors?: (string | ColorDescriptor)[];
25
+ column?: number;
26
+ config?: object;
27
+ constrainTo?: HTMLElement | Widget | Rectangle;
28
+ container?: Record<string, SchedulerContainerItemConfig> | SchedulerContainerItemConfig[] | FieldContainerConfig | FieldContainer;
29
+ containValues?: boolean | string | ((field: Field) => boolean);
30
+ contentElementCls?: string | object;
31
+ dataField?: string;
32
+ dataset?: Record<string, string>;
33
+ defaultBindProperty?: string;
34
+ detectCSSCompatibilityIssues?: boolean;
35
+ disabled?: boolean | 'inert';
36
+ dock?: 'top' | 'bottom' | 'left' | 'right' | 'start' | 'end' | 'header' | 'pre-header' | object;
37
+ draggable?: boolean | {
38
+ handleSelector?: string;
39
+ };
40
+ elementAttributes?: Record<string, string | null>;
41
+ extraData?: any;
42
+ flex?: number | string;
43
+ floating?: boolean;
44
+ height?: string | number;
45
+ hidden?: boolean;
46
+ hideAnimation?: boolean | object;
47
+ highlightExternalChange?: boolean;
48
+ hint?: string | ((data: {
49
+ source: Field;
50
+ value: any;
51
+ }) => string);
52
+ hintHtml?: string | ((data: {
53
+ source: Field;
54
+ value: any;
55
+ }) => string);
56
+ id?: string;
57
+ ignoreParentReadOnly?: boolean;
58
+ inline?: boolean;
59
+ inputAlign?: string;
60
+ inputAttributes?: Record<string, string>;
61
+ inputTag?: string;
62
+ inputType?: string;
63
+ inputWidth?: string | number;
64
+ insertBefore?: HTMLElement | string;
65
+ insertFirst?: HTMLElement | string;
66
+ keyMap?: Record<string, KeyMapConfig>;
67
+ keyStrokeChangeDelay?: number;
68
+ label?: string;
69
+ labelCls?: string | object;
70
+ labelPosition?: 'before' | 'above' | null;
71
+ labels?: object[];
72
+ labelWidth?: string | number;
73
+ listeners?: EventColorFieldListeners;
74
+ localeClass?: typeof Base;
75
+ localizable?: boolean;
76
+ localizableProperties?: string[];
77
+ margin?: number | string;
78
+ maskDefaults?: MaskConfig;
79
+ masked?: boolean | string | MaskConfig;
80
+ maxHeight?: string | number;
81
+ maximizeOnMobile?: number | string;
82
+ maxLength?: number;
83
+ maxWidth?: string | number;
84
+ minHeight?: string | number;
85
+ minLength?: number;
86
+ minWidth?: string | number;
87
+ monitorResize?: boolean | {
88
+ immediate?: boolean;
89
+ };
90
+ name?: string;
91
+ owner?: Widget | any;
92
+ pickerAlignElement?: string;
93
+ placeholder?: string;
94
+ positioned?: boolean;
95
+ preventTooltipOnTouch?: boolean;
96
+ readOnly?: boolean;
97
+ relayStoreEvents?: boolean;
98
+ rendition?: 'outlined' | 'filled' | string;
99
+ required?: boolean;
100
+ revertOnEscape?: boolean;
101
+ ripple?: boolean | {
102
+ delegate?: string;
103
+ color?: string;
104
+ radius?: number;
105
+ clip?: string;
106
+ };
107
+ rootElement?: ShadowRoot | HTMLElement;
108
+ rtl?: boolean;
109
+ scrollAction?: 'hide' | 'realign' | null;
110
+ showAnimation?: boolean | object;
111
+ showRequiredIndicator?: string;
112
+ showTooltipWhenDisabled?: boolean;
113
+ skipValidation?: boolean;
114
+ span?: number;
115
+ spellCheck?: boolean;
116
+ tab?: boolean | TabConfig;
117
+ tabIndex?: number;
118
+ textAlign?: 'left' | 'center' | 'right' | 'start' | 'end';
119
+ title?: string;
120
+ tooltip?: string | TooltipConfig | null;
121
+ triggers?: Record<string, FieldTriggerConfig> | Record<string, Widget>;
122
+ type?: 'eventcolorfield';
123
+ ui?: string | object;
124
+ validateOnInput?: boolean;
125
+ value?: string;
126
+ weight?: number;
127
+ width?: string | number;
128
+ x?: number;
129
+ y?: number;
130
+ onAction?: ((event: {
131
+ source: Field | any;
132
+ value: string | number | boolean | any;
133
+ oldValue: string | number | boolean | any;
134
+ valid: boolean;
135
+ event: Event;
136
+ record: Model;
137
+ records: Model[];
138
+ userAction: boolean;
139
+ checked: boolean;
140
+ }) => void) | string;
141
+ onBeforeDestroy?: ((event: {
142
+ source: Base;
143
+ }) => void) | string;
144
+ onBeforeHide?: ((event: {
145
+ source: Widget;
146
+ }) => Promise<boolean> | boolean | void) | string;
147
+ onBeforeShow?: ((event: {
148
+ source: Widget | any;
149
+ }) => Promise<boolean> | boolean | void) | string;
150
+ onCatchAll?: ((event: {
151
+ [key: string]: any;
152
+ type: string;
153
+ }) => void) | string;
154
+ onChange?: ((event: {
155
+ source: Field | any;
156
+ value: string | number | boolean | any;
157
+ oldValue: string | number | boolean | any;
158
+ valid: boolean;
159
+ event: Event;
160
+ userAction: boolean;
161
+ checked: boolean;
162
+ }) => void) | string;
163
+ onClear?: ((event: {
164
+ source: Field | any;
165
+ }) => void) | string;
166
+ onDestroy?: ((event: {
167
+ source: Base;
168
+ }) => void) | string;
169
+ onElementCreated?: ((event: {
170
+ element: HTMLElement;
171
+ }) => void) | string;
172
+ onFocusIn?: ((event: {
173
+ source: Widget;
174
+ fromElement: HTMLElement;
175
+ toElement: HTMLElement;
176
+ fromWidget: Widget;
177
+ toWidget: Widget;
178
+ backwards: boolean;
179
+ }) => void) | string;
180
+ onFocusOut?: ((event: {
181
+ source: Widget;
182
+ fromElement: HTMLElement;
183
+ toElement: HTMLElement;
184
+ fromWidget: Widget;
185
+ toWidget: Widget;
186
+ backwards: boolean;
187
+ }) => void) | string;
188
+ onHide?: ((event: {
189
+ source: Widget;
190
+ }) => void) | string;
191
+ onInput?: ((event: {
192
+ source: Field | any;
193
+ value: string | number | boolean | any;
194
+ event: Event;
195
+ }) => void) | string;
196
+ onPaint?: ((event: {
197
+ source: Widget;
198
+ firstPaint: boolean;
199
+ }) => void) | string;
200
+ onReadOnly?: ((event: {
201
+ readOnly: boolean;
202
+ }) => void) | string;
203
+ onRecompose?: (() => void) | string;
204
+ onResize?: ((event: {
205
+ source: Widget;
206
+ width: number;
207
+ height: number;
208
+ oldWidth: number;
209
+ oldHeight: number;
210
+ }) => void) | string;
211
+ onShow?: ((event: {
212
+ source: Widget;
213
+ }) => void) | string;
214
+ onTrigger?: ((event: {
215
+ source: Field | any;
216
+ trigger: Widget;
217
+ }) => void) | string;
218
+ };
219
+ export declare class BryntumEventColorField extends React.Component<BryntumEventColorFieldProps> {
220
+ static instanceClass: typeof EventColorField;
221
+ static instanceName: string;
222
+ processWidgetContent: typeof processWidgetContent;
223
+ static configNames: string[];
224
+ static propertyConfigNames: string[];
225
+ static propertyNames: string[];
226
+ instance: EventColorField;
227
+ element: HTMLElement;
228
+ componentDidMount(): void;
229
+ componentWillUnmount(): void;
230
+ shouldComponentUpdate(nextProps: Readonly<BryntumEventColorFieldProps>, nextState: Readonly<{}>): boolean;
231
+ render(): React.ReactNode;
232
+ }
@@ -0,0 +1,169 @@
1
+ import React from 'react';
2
+ import { EventColorField } from '@bryntum/scheduler-thin';
3
+ import { createWidget, shouldComponentUpdate, processWidgetContent } from './WrapperHelper.js';
4
+ export class BryntumEventColorField extends React.Component {
5
+ constructor() {
6
+ super(...arguments);
7
+ this.processWidgetContent = processWidgetContent;
8
+ }
9
+ componentDidMount() {
10
+ this.instance = createWidget(this);
11
+ }
12
+ componentWillUnmount() {
13
+ var _a, _b;
14
+ (_b = (_a = this.instance) === null || _a === void 0 ? void 0 : _a.destroy) === null || _b === void 0 ? void 0 : _b.call(_a);
15
+ }
16
+ shouldComponentUpdate(nextProps, nextState) {
17
+ return shouldComponentUpdate(this, nextProps, nextState);
18
+ }
19
+ render() {
20
+ const className = `b-react-event-color-field-container`;
21
+ return (React.createElement("div", { className: className, ref: (element) => (this.element = element) }));
22
+ }
23
+ }
24
+ BryntumEventColorField.instanceClass = EventColorField;
25
+ BryntumEventColorField.instanceName = 'EventColorField';
26
+ BryntumEventColorField.configNames = [
27
+ 'adopt',
28
+ 'align',
29
+ 'anchor',
30
+ 'ariaDescription',
31
+ 'ariaLabel',
32
+ 'autoComplete',
33
+ 'autoExpand',
34
+ 'autoSelect',
35
+ 'bubbleEvents',
36
+ 'centered',
37
+ 'clearable',
38
+ 'config',
39
+ 'constrainTo',
40
+ 'container',
41
+ 'containValues',
42
+ 'contentElementCls',
43
+ 'dataField',
44
+ 'defaultBindProperty',
45
+ 'detectCSSCompatibilityIssues',
46
+ 'dock',
47
+ 'draggable',
48
+ 'elementAttributes',
49
+ 'floating',
50
+ 'hideAnimation',
51
+ 'highlightExternalChange',
52
+ 'hint',
53
+ 'hintHtml',
54
+ 'ignoreParentReadOnly',
55
+ 'inline',
56
+ 'inputAlign',
57
+ 'inputAttributes',
58
+ 'inputTag',
59
+ 'inputType',
60
+ 'inputWidth',
61
+ 'keyStrokeChangeDelay',
62
+ 'labelCls',
63
+ 'labelPosition',
64
+ 'labels',
65
+ 'labelWidth',
66
+ 'listeners',
67
+ 'localeClass',
68
+ 'localizable',
69
+ 'localizableProperties',
70
+ 'maskDefaults',
71
+ 'masked',
72
+ 'maxLength',
73
+ 'minLength',
74
+ 'monitorResize',
75
+ 'name',
76
+ 'owner',
77
+ 'pickerAlignElement',
78
+ 'positioned',
79
+ 'preventTooltipOnTouch',
80
+ 'relayStoreEvents',
81
+ 'revertOnEscape',
82
+ 'ripple',
83
+ 'rootElement',
84
+ 'scrollAction',
85
+ 'showAnimation',
86
+ 'showTooltipWhenDisabled',
87
+ 'skipValidation',
88
+ 'spellCheck',
89
+ 'tab',
90
+ 'tabIndex',
91
+ 'textAlign',
92
+ 'title',
93
+ 'type',
94
+ 'ui',
95
+ 'validateOnInput',
96
+ 'weight'
97
+ ];
98
+ BryntumEventColorField.propertyConfigNames = [
99
+ 'addNoColorItem',
100
+ 'alignSelf',
101
+ 'appendTo',
102
+ 'badge',
103
+ 'callOnFunctions',
104
+ 'catchEventHandlerExceptions',
105
+ 'cls',
106
+ 'colors',
107
+ 'column',
108
+ 'dataset',
109
+ 'disabled',
110
+ 'extraData',
111
+ 'flex',
112
+ 'height',
113
+ 'hidden',
114
+ 'id',
115
+ 'insertBefore',
116
+ 'insertFirst',
117
+ 'keyMap',
118
+ 'label',
119
+ 'margin',
120
+ 'maxHeight',
121
+ 'maximizeOnMobile',
122
+ 'maxWidth',
123
+ 'minHeight',
124
+ 'minWidth',
125
+ 'onAction',
126
+ 'onBeforeDestroy',
127
+ 'onBeforeHide',
128
+ 'onBeforeShow',
129
+ 'onCatchAll',
130
+ 'onChange',
131
+ 'onClear',
132
+ 'onDestroy',
133
+ 'onElementCreated',
134
+ 'onFocusIn',
135
+ 'onFocusOut',
136
+ 'onHide',
137
+ 'onInput',
138
+ 'onPaint',
139
+ 'onReadOnly',
140
+ 'onRecompose',
141
+ 'onResize',
142
+ 'onShow',
143
+ 'onTrigger',
144
+ 'placeholder',
145
+ 'readOnly',
146
+ 'rendition',
147
+ 'required',
148
+ 'rtl',
149
+ 'showRequiredIndicator',
150
+ 'span',
151
+ 'tooltip',
152
+ 'triggers',
153
+ 'value',
154
+ 'width',
155
+ 'x',
156
+ 'y'
157
+ ];
158
+ BryntumEventColorField.propertyNames = [
159
+ 'anchorSize',
160
+ 'content',
161
+ 'editable',
162
+ 'focusVisible',
163
+ 'formula',
164
+ 'html',
165
+ 'input',
166
+ 'parent',
167
+ 'scrollable'
168
+ ];
169
+ //# sourceMappingURL=BryntumEventColorField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BryntumEventColorField.js","sourceRoot":"","sources":["../src/BryntumEventColorField.tsx"],"names":[],"mappings":"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"}