@bryntum/schedulerpro-vue-3-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 (144) hide show
  1. package/README.md +53 -0
  2. package/lib/chunks/B12rdbvL.js +380 -0
  3. package/lib/chunks/B12rdbvL.js.map +1 -0
  4. package/lib/chunks/BBN-5eeI.js +380 -0
  5. package/lib/chunks/BBN-5eeI.js.map +1 -0
  6. package/lib/chunks/BaiH7rub.js +591 -0
  7. package/lib/chunks/BaiH7rub.js.map +1 -0
  8. package/lib/chunks/BrUxjEMx.js +380 -0
  9. package/lib/chunks/BrUxjEMx.js.map +1 -0
  10. package/lib/chunks/BtVT0xgl.js +344 -0
  11. package/lib/chunks/BtVT0xgl.js.map +1 -0
  12. package/lib/chunks/C0N8aq7Y.js +340 -0
  13. package/lib/chunks/C0N8aq7Y.js.map +1 -0
  14. package/lib/chunks/C9qY739P.js +380 -0
  15. package/lib/chunks/C9qY739P.js.map +1 -0
  16. package/lib/chunks/CB9cdxRl.js +935 -0
  17. package/lib/chunks/CB9cdxRl.js.map +1 -0
  18. package/lib/chunks/CDbPwyl3.js +326 -0
  19. package/lib/chunks/CDbPwyl3.js.map +1 -0
  20. package/lib/chunks/Ct_m9O9h.js +380 -0
  21. package/lib/chunks/Ct_m9O9h.js.map +1 -0
  22. package/lib/chunks/D45V9XRN.js +308 -0
  23. package/lib/chunks/D45V9XRN.js.map +1 -0
  24. package/lib/chunks/D6AiSClA.js +1139 -0
  25. package/lib/chunks/D6AiSClA.js.map +1 -0
  26. package/lib/chunks/DQYJMaQ_.js +350 -0
  27. package/lib/chunks/DQYJMaQ_.js.map +1 -0
  28. package/lib/chunks/DT6XYs9d.js +1356 -0
  29. package/lib/chunks/DT6XYs9d.js.map +1 -0
  30. package/lib/chunks/DgESZupU.js +380 -0
  31. package/lib/chunks/DgESZupU.js.map +1 -0
  32. package/lib/chunks/DvFm-5Hh.js +382 -0
  33. package/lib/chunks/DvFm-5Hh.js.map +1 -0
  34. package/lib/chunks/DzO9n33e.js +939 -0
  35. package/lib/chunks/DzO9n33e.js.map +1 -0
  36. package/lib/chunks/H51_wkdg.js +1358 -0
  37. package/lib/chunks/H51_wkdg.js.map +1 -0
  38. package/lib/chunks/ggN9GDPJ.js +384 -0
  39. package/lib/chunks/ggN9GDPJ.js.map +1 -0
  40. package/lib/chunks/qKNUUeE0.js +380 -0
  41. package/lib/chunks/qKNUUeE0.js.map +1 -0
  42. package/lib/chunks/xk_S9thL.js +578 -0
  43. package/lib/chunks/xk_S9thL.js.map +1 -0
  44. package/lib/chunks/yCHi3rZC.js +336 -0
  45. package/lib/chunks/yCHi3rZC.js.map +1 -0
  46. package/lib/components/BryntumCalendarEditor.js +5 -0
  47. package/lib/components/BryntumCalendarEditor.js.map +1 -0
  48. package/lib/components/BryntumCalendarField.js +5 -0
  49. package/lib/components/BryntumCalendarField.js.map +1 -0
  50. package/lib/components/BryntumConstraintTypePicker.js +5 -0
  51. package/lib/components/BryntumConstraintTypePicker.js.map +1 -0
  52. package/lib/components/BryntumCostAccrualField.js +5 -0
  53. package/lib/components/BryntumCostAccrualField.js.map +1 -0
  54. package/lib/components/BryntumDependencyTypePicker.js +5 -0
  55. package/lib/components/BryntumDependencyTypePicker.js.map +1 -0
  56. package/lib/components/BryntumEffortField.js +5 -0
  57. package/lib/components/BryntumEffortField.js.map +1 -0
  58. package/lib/components/BryntumEndDateField.js +5 -0
  59. package/lib/components/BryntumEndDateField.js.map +1 -0
  60. package/lib/components/BryntumModelCombo.js +5 -0
  61. package/lib/components/BryntumModelCombo.js.map +1 -0
  62. package/lib/components/BryntumRateTableField.js +5 -0
  63. package/lib/components/BryntumRateTableField.js.map +1 -0
  64. package/lib/components/BryntumResourceEditor.js +5 -0
  65. package/lib/components/BryntumResourceEditor.js.map +1 -0
  66. package/lib/components/BryntumResourceGrid.js +5 -0
  67. package/lib/components/BryntumResourceGrid.js.map +1 -0
  68. package/lib/components/BryntumResourceHistogram.js +5 -0
  69. package/lib/components/BryntumResourceHistogram.js.map +1 -0
  70. package/lib/components/BryntumResourceTypeField.js +5 -0
  71. package/lib/components/BryntumResourceTypeField.js.map +1 -0
  72. package/lib/components/BryntumResourceUtilization.js +5 -0
  73. package/lib/components/BryntumResourceUtilization.js.map +1 -0
  74. package/lib/components/BryntumSchedulerPro.js +5 -0
  75. package/lib/components/BryntumSchedulerPro.js.map +1 -0
  76. package/lib/components/BryntumSchedulerProBase.js +5 -0
  77. package/lib/components/BryntumSchedulerProBase.js.map +1 -0
  78. package/lib/components/BryntumSchedulerProProjectModel.js +5 -0
  79. package/lib/components/BryntumSchedulerProProjectModel.js.map +1 -0
  80. package/lib/components/BryntumSchedulingDirectionPicker.js +5 -0
  81. package/lib/components/BryntumSchedulingDirectionPicker.js.map +1 -0
  82. package/lib/components/BryntumSchedulingModePicker.js +5 -0
  83. package/lib/components/BryntumSchedulingModePicker.js.map +1 -0
  84. package/lib/components/BryntumStartDateField.js +5 -0
  85. package/lib/components/BryntumStartDateField.js.map +1 -0
  86. package/lib/components/BryntumTimeline.js +5 -0
  87. package/lib/components/BryntumTimeline.js.map +1 -0
  88. package/lib/components/BryntumVersionGrid.js +5 -0
  89. package/lib/components/BryntumVersionGrid.js.map +1 -0
  90. package/lib/helper/WrapperHelper.js +291 -0
  91. package/lib/helper/WrapperHelper.js.map +1 -0
  92. package/lib/index.d.ts +5 -0
  93. package/lib/index.js +47 -0
  94. package/lib/index.js.map +1 -0
  95. package/license.pdf +0 -0
  96. package/licenses.md +310 -0
  97. package/package.json +27 -0
  98. package/src/components/BryntumCalendarEditor.vue +1268 -0
  99. package/src/components/BryntumCalendarEditorProps.ts +776 -0
  100. package/src/components/BryntumCalendarField.vue +1350 -0
  101. package/src/components/BryntumCalendarFieldProps.ts +849 -0
  102. package/src/components/BryntumConstraintTypePicker.vue +1337 -0
  103. package/src/components/BryntumConstraintTypePickerProps.ts +838 -0
  104. package/src/components/BryntumCostAccrualField.vue +1337 -0
  105. package/src/components/BryntumCostAccrualFieldProps.ts +838 -0
  106. package/src/components/BryntumDependencyTypePicker.vue +1337 -0
  107. package/src/components/BryntumDependencyTypePickerProps.ts +838 -0
  108. package/src/components/BryntumEffortField.vue +1140 -0
  109. package/src/components/BryntumEffortFieldProps.ts +683 -0
  110. package/src/components/BryntumEndDateField.vue +1167 -0
  111. package/src/components/BryntumEndDateFieldProps.ts +701 -0
  112. package/src/components/BryntumModelCombo.vue +1337 -0
  113. package/src/components/BryntumModelComboProps.ts +838 -0
  114. package/src/components/BryntumRateTableField.vue +1337 -0
  115. package/src/components/BryntumRateTableFieldProps.ts +838 -0
  116. package/src/components/BryntumResourceEditor.vue +1247 -0
  117. package/src/components/BryntumResourceEditorProps.ts +758 -0
  118. package/src/components/BryntumResourceGrid.vue +2924 -0
  119. package/src/components/BryntumResourceGridProps.ts +1040 -0
  120. package/src/components/BryntumResourceHistogram.vue +4495 -0
  121. package/src/components/BryntumResourceHistogramProps.ts +1697 -0
  122. package/src/components/BryntumResourceTypeField.vue +1337 -0
  123. package/src/components/BryntumResourceTypeFieldProps.ts +838 -0
  124. package/src/components/BryntumResourceUtilization.vue +4525 -0
  125. package/src/components/BryntumResourceUtilizationProps.ts +1683 -0
  126. package/src/components/BryntumSchedulerPro.vue +7153 -0
  127. package/src/components/BryntumSchedulerProBase.vue +7151 -0
  128. package/src/components/BryntumSchedulerProBaseProps.ts +2169 -0
  129. package/src/components/BryntumSchedulerProProjectModel.vue +1192 -0
  130. package/src/components/BryntumSchedulerProProjectModelProps.ts +597 -0
  131. package/src/components/BryntumSchedulerProProps.ts +2170 -0
  132. package/src/components/BryntumSchedulingDirectionPicker.vue +1337 -0
  133. package/src/components/BryntumSchedulingDirectionPickerProps.ts +838 -0
  134. package/src/components/BryntumSchedulingModePicker.vue +1345 -0
  135. package/src/components/BryntumSchedulingModePickerProps.ts +845 -0
  136. package/src/components/BryntumStartDateField.vue +1185 -0
  137. package/src/components/BryntumStartDateFieldProps.ts +717 -0
  138. package/src/components/BryntumTimeline.vue +6311 -0
  139. package/src/components/BryntumTimelineProps.ts +2041 -0
  140. package/src/components/BryntumVersionGrid.vue +2970 -0
  141. package/src/components/BryntumVersionGridProps.ts +1053 -0
  142. package/src/helper/WrapperHelper.ts +573 -0
  143. package/src/index.ts +48 -0
  144. package/src/vite-env.d.ts +1 -0
@@ -0,0 +1,1192 @@
1
+ <!-- Vue 3 wrapper for Bryntum ProjectModel -->
2
+
3
+ <template>
4
+ <div ref="refElement">
5
+
6
+ </div>
7
+ </template>
8
+
9
+ <script setup lang="ts">
10
+
11
+ import { getCurrentInstance, onBeforeUnmount, onMounted, provide, ref, watch, toRaw } from 'vue';
12
+
13
+ import type { Base, DurationUnit, Model, ModelConfig, StateTrackingManager as CoreStateTrackingManager, Store, StoreConfig } from '@bryntum/core-thin';
14
+ import type { AbstractCrudManager, CrudManagerRequestResponse, CrudManagerStoreDescriptor, LazyLoadCrudManagerRequestParams, ProjectModel as SchedulerProjectModel, ResourceTimeRangeModel, ResourceTimeRangeModelConfig, ResourceTimeRangeStore, ResourceTimeRangeStoreConfig, TimeRangeStore, TimeSpan, TimeSpanConfig } from '@bryntum/scheduler-thin';
15
+ import type { AssignmentModel, AssignmentModelConfig, AssignmentStore, AssignmentStoreConfig, CalendarManagerStore, CalendarManagerStoreConfig, CalendarModel, CalendarModelConfig, DependencyModel, DependencyModelConfig, DependencyStore, DependencyStoreConfig, EventModel, EventModelConfig, EventStore, EventStoreConfig, ProjectModelListeners, ResourceAllocationInfo, ResourceModel, ResourceModelConfig, ResourceStore, ResourceStoreConfig, StateTrackingManagerConfig } from '@bryntum/schedulerpro-thin';
16
+ import { ProjectModel } from '@bryntum/schedulerpro-thin';
17
+
18
+ import { WrapperHelper } from '../helper/WrapperHelper';
19
+
20
+ defineProps<{
21
+ // Configs
22
+ /**
23
+ * If this flag is set to `true` (default) when a start/end date is set on the event, a corresponding
24
+ * `start-no-earlier/later-than` constraint is added, automatically. This is done in order to
25
+ * keep the event "attached" to this date, according to the user intention.
26
+ * ...
27
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-addConstraintOnDateSet)
28
+ */
29
+ addConstraintOnDateSet ? : Boolean
30
+ /**
31
+ * This config manages DST correction in the scheduling engine. It only has effect when DST transition hour is
32
+ * working time. Usually a DST transition occurs on a Sunday, so with non-working weekends the DST correction logic
33
+ * is not involved.
34
+ * ...
35
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-adjustDurationToDST)
36
+ */
37
+ adjustDurationToDST ? : Boolean
38
+ /**
39
+ * The constructor of the assignment model class, to be used in the project. Will be set as the
40
+ * [modelClass](https://bryntum.com/products/schedulerpro/docs/api/Core/data/Store#config-modelClass) property of the [assignmentStore](#SchedulerPro/model/ProjectModel#property-assignmentStore)
41
+ */
42
+ assignmentModelClass ? : typeof AssignmentModel
43
+ /**
44
+ * Data use to fill the [assignmentStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#property-assignmentStore). Should be an array of
45
+ * [AssignmentModels](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/AssignmentModel) or its configuration objects.
46
+ */
47
+ assignments ? : AssignmentModel[]|AssignmentModelConfig[]
48
+ /**
49
+ * The initial data, to fill the [assignmentStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#property-assignmentStore) with.
50
+ * Should be an array of [AssignmentModels](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/AssignmentModel) or its configuration
51
+ * objects.
52
+ * @deprecated 6.3.0 Use [assignments](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-assignments) instead
53
+ */
54
+ assignmentsData ? : AssignmentModel[]
55
+ /**
56
+ * An [AssignmentStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/data/AssignmentStore) instance or a config object.
57
+ */
58
+ assignmentStore ? : AssignmentStore|AssignmentStoreConfig
59
+ /**
60
+ * The constructor to create an assignment store instance with. Should be a class, subclassing the
61
+ * [AssignmentStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/data/AssignmentStore)
62
+ */
63
+ assignmentStoreClass ? : typeof AssignmentStore|object
64
+ /**
65
+ * `true` to enable automatic [% done](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/EventModel#field-percentDone) calculation for summary
66
+ * tasks, `false` to disable it.
67
+ */
68
+ autoCalculatePercentDoneForParentTasks ? : Boolean
69
+ /**
70
+ * Specify `true` to automatically call [load](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#function-load) method on the next frame after creation.
71
+ * ...
72
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-autoLoad)
73
+ */
74
+ autoLoad ? : Boolean
75
+ /**
76
+ * When `true` (default) adjacent or overlapping event segments get merged automatically.
77
+ */
78
+ autoMergeAdjacentSegments ? : Boolean
79
+ /**
80
+ * `true` to automatically persist store changes after edits are made in any of the stores monitored.
81
+ * Please note that sync request will not be invoked immediately but only after
82
+ * [autoSyncTimeout](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#config-autoSyncTimeout) interval.
83
+ */
84
+ autoSync ? : Boolean
85
+ /**
86
+ * The timeout in milliseconds to wait before persisting changes to the server.
87
+ * Used when [autoSync](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#config-autoSync) is set to `true`.
88
+ */
89
+ autoSyncTimeout ? : number
90
+ /**
91
+ * An object where property names with a truthy value indicate which events should bubble up the ownership
92
+ * hierarchy when triggered.
93
+ * ...
94
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-bubbleEvents)
95
+ */
96
+ bubbleEvents ? : object
97
+ /**
98
+ * The project calendar.
99
+ */
100
+ calendar ? : string|CalendarModelConfig|CalendarModel
101
+ /**
102
+ * A [CalendarManagerStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/data/CalendarManagerStore) instance or a config object.
103
+ */
104
+ calendarManagerStore ? : CalendarManagerStore|CalendarManagerStoreConfig
105
+ /**
106
+ * The constructor to create a calendar store instance with. Should be a class, subclassing the
107
+ * [CalendarManagerStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/data/CalendarManagerStore)
108
+ */
109
+ calendarManagerStoreClass ? : typeof CalendarManagerStore|object
110
+ /**
111
+ * The constructor of the calendar model class, to be used in the project. Will be set as the
112
+ * [modelClass](https://bryntum.com/products/schedulerpro/docs/api/Core/data/Store#config-modelClass) property of the
113
+ * [calendarManagerStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#property-calendarManagerStore)
114
+ */
115
+ calendarModelClass ? : typeof CalendarModel
116
+ /**
117
+ * Data use to fill the [eventStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#property-eventStore). Should be a [CalendarModel](#SchedulerPro/model/CalendarModel)
118
+ * array or its configuration objects.
119
+ */
120
+ calendars ? : CalendarModel[]|CalendarModelConfig[]
121
+ /**
122
+ * The initial data, to fill the [calendarManagerStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#property-calendarManagerStore) with.
123
+ * Should be an array of [CalendarModel](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/CalendarModel) or it's configuration objects.
124
+ */
125
+ calendarsData ? : CalendarModel[]
126
+ /**
127
+ * Set to `true` to call onXXX method names (e.g. `onShow`, `onClick`), as an easy way to listen for events.
128
+ * ...
129
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-callOnFunctions)
130
+ */
131
+ callOnFunctions ? : Boolean
132
+ /**
133
+ * By default, if an event handler throws an exception, the error propagates up the stack and the
134
+ * application state is undefined. Code which follows the event handler will *not* be executed.
135
+ * ...
136
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-catchEventHandlerExceptions)
137
+ */
138
+ catchEventHandlerExceptions ? : Boolean
139
+ /**
140
+ * Child nodes. To allow loading children on demand, specify `children : true` in your data. Omit the field for leaf
141
+ * tasks.
142
+ * ...
143
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-children)
144
+ */
145
+ children ? : Boolean|object[]|Model[]|ModelConfig[]
146
+ /**
147
+ * Sets the list of stores controlled by the CRUD manager.
148
+ * ...
149
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-crudStores)
150
+ */
151
+ crudStores ? : Store[]|string[]|CrudManagerStoreDescriptor[]|StoreConfig[]
152
+ /**
153
+ * The number of days per month.
154
+ * ...
155
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-daysPerMonth)
156
+ */
157
+ daysPerMonth ? : number
158
+ /**
159
+ * The number of days per week.
160
+ * ...
161
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-daysPerWeek)
162
+ */
163
+ daysPerWeek ? : number
164
+ /**
165
+ * Enables early rendering in SchedulerPro, by postponing calculations to after the first refresh.
166
+ * ...
167
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-delayCalculation)
168
+ */
169
+ delayCalculation ? : Boolean
170
+ /**
171
+ * Data use to fill the [dependencyStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#property-dependencyStore). Should be an array of
172
+ * [DependencyModels](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/DependencyModel) or its configuration objects.
173
+ */
174
+ dependencies ? : DependencyModel[]|DependencyModelConfig[]
175
+ /**
176
+ * The source of the calendar for dependencies (the calendar used for taking dependencies lag into account).
177
+ * Possible values are:
178
+ * ...
179
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-dependenciesCalendar)
180
+ */
181
+ dependenciesCalendar ? : 'ToEvent'|'FromEvent'|'Project'
182
+ /**
183
+ * The initial data, to fill the [dependencyStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#property-dependencyStore) with.
184
+ * Should be an array of [DependencyModels](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/DependencyModel) or its configuration
185
+ * objects.
186
+ * @deprecated 6.3.0 Use [dependencies](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-dependencies) instead
187
+ */
188
+ dependenciesData ? : DependencyModel[]
189
+ /**
190
+ * The constructor of the dependency model class, to be used in the project. Will be set as the
191
+ * [modelClass](https://bryntum.com/products/schedulerpro/docs/api/Core/data/Store#config-modelClass) property of the [dependencyStore](#SchedulerPro/model/ProjectModel#property-dependencyStore)
192
+ */
193
+ dependencyModelClass ? : typeof DependencyModel
194
+ /**
195
+ * A [DependencyStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/data/DependencyStore) instance or a config object.
196
+ */
197
+ dependencyStore ? : DependencyStore|DependencyStoreConfig
198
+ /**
199
+ * The constructor to create a dependency store instance with. Should be a class, subclassing the
200
+ * [DependencyStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/data/DependencyStore)
201
+ */
202
+ dependencyStoreClass ? : typeof DependencyStore|object
203
+ /**
204
+ * Set to `true` to enable calculation progress notifications.
205
+ * When enabled the project fires [progress](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#event-progress) event.
206
+ * ...
207
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-enableProgressNotifications)
208
+ */
209
+ enableProgressNotifications ? : Boolean
210
+ /**
211
+ * Configuration of the JSON encoder used by the *Crud Manager*.
212
+ */
213
+ encoder ? : {
214
+ requestData?: object
215
+ }
216
+ /**
217
+ * The constructor of the event model class, to be used in the project. Will be set as the
218
+ * [modelClass](https://bryntum.com/products/schedulerpro/docs/api/Core/data/Store#config-modelClass) property of the [eventStore](#SchedulerPro/model/ProjectModel#property-eventStore)
219
+ */
220
+ eventModelClass ? : typeof EventModel
221
+ /**
222
+ * Data use to fill the [eventStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#property-eventStore). Should be an array of
223
+ * [EventModels](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/EventModel) or its configuration objects.
224
+ */
225
+ events ? : EventModel[]|EventModelConfig[]
226
+ /**
227
+ * The initial data, to fill the [eventStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#property-eventStore) with.
228
+ * Should be an array of [EventModels](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/EventModel) or its configuration objects.
229
+ * @deprecated 6.3.0 Use [events](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-events) instead
230
+ */
231
+ eventsData ? : EventModel[]
232
+ /**
233
+ * An [EventStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/data/EventStore) instance or a config object.
234
+ */
235
+ eventStore ? : EventStore|EventStoreConfig
236
+ /**
237
+ * The constructor to create an event store instance with. Should be a class, subclassing the
238
+ * [EventStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/data/EventStore)
239
+ */
240
+ eventStoreClass ? : typeof EventStore|object
241
+ /**
242
+ * Start expanded or not (only valid for tree data)
243
+ */
244
+ expanded ? : Boolean
245
+ /**
246
+ * Specify as `true` to force sync requests to be sent when calling `sync()`, even if there are no local
247
+ * changes. Useful in a polling scenario, to keep client up to date with the backend.
248
+ */
249
+ forceSync ? : Boolean
250
+ /**
251
+ * The number of hours per day.
252
+ * ...
253
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-hoursPerDay)
254
+ */
255
+ hoursPerDay ? : number
256
+ /**
257
+ * Unique identifier for the record. Might be mapped to another dataSource using idField, but always exposed as
258
+ * record.id. Will get a generated value if none is specified in records data.
259
+ * ...
260
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-id)
261
+ */
262
+ id ? : string|number
263
+ /**
264
+ * Set to `true` to make STM ignore changes coming from the backend. This will allow user to only undo redo
265
+ * local changes.
266
+ */
267
+ ignoreRemoteChangesInSTM ? : Boolean
268
+ /**
269
+ * Set to `false` to only include the id of a removed parent node in the request to the backend (also
270
+ * affects programmatic calls to get [changes](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#property-changes) etc.), and not the ids of its children.
271
+ * ...
272
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-includeChildrenInRemoveRequest)
273
+ */
274
+ includeChildrenInRemoveRequest ? : Boolean
275
+ /**
276
+ * Whether to include legacy data properties in the JSON / inlineData output. The legacy data properties are
277
+ * the `xxData` (`eventsData`, `resourcesData` etc.) properties that are deprecated and will be removed in
278
+ * the future.
279
+ * @deprecated 6.3.0 This config will be removed when the eventsData, resourcesData etc. properties are removed in a future release.
280
+ */
281
+ includeLegacyDataProperties ? : Boolean
282
+ /**
283
+ * This field is added to the class at runtime when the Store is configured with
284
+ * [lazyLoad](https://bryntum.com/products/schedulerpro/docs/api/Core/data/Store#config-lazyLoad). If set on a parent record at load time, that parent will not cause any
285
+ * more child load requests. If omitted, it will be automatically set to `true` when a load request receives fewer
286
+ * child records than requested.
287
+ * ...
288
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-isFullyLoaded)
289
+ */
290
+ isFullyLoaded ? : Boolean
291
+ /**
292
+ * Project data as a JSON string, used to populate its stores.
293
+ * ...
294
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-json)
295
+ */
296
+ json ? : string
297
+ /**
298
+ * If set to `true`, or a config object, this makes the CrudManager load records only when needed. When a record
299
+ * or a date range that is not already loaded is requested, a load request will be made to the specified URL.
300
+ * More more details about lazy loading, see the [guide](https://bryntum.com/products/schedulerpro/docs/api/Grid/guides/data/lazyloading.md)
301
+ * @param {object} lazyLoad Lazy load config
302
+ * @param {number} lazyLoad.chunkSize The number of records to be loaded before and after the requested index (only affects the ResourceStore).
303
+ * @param {DurationUnit} bufferUnit Used together with bufferAmount to calculate the start and end dates of each load request. The value is added to the current visible start or end date. Defaults to the visible time span length (does not affect ResourceStore).
304
+ * @param {number} bufferAmount See `bufferUnit`
305
+ */
306
+ lazyLoad ? : Boolean|{lazyLoad: { chunkSize: number }, bufferUnit: DurationUnit, bufferAmount: number}
307
+ /**
308
+ * The listener set for this object.
309
+ * ...
310
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-listeners)
311
+ */
312
+ listeners ? : ProjectModelListeners
313
+ /**
314
+ * Convenience shortcut to set only the url to load from, when you do not need to supply any other config
315
+ * options in the `load` section of the `transport` config.
316
+ * ...
317
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-loadUrl)
318
+ */
319
+ loadUrl ? : string
320
+ /**
321
+ * Maximum range the project calendars can iterate.
322
+ * The value is defined in milliseconds and by default equals `5 years` roughly.
323
+ * ...
324
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-maxCalendarRange)
325
+ */
326
+ maxCalendarRange ? : number
327
+ /**
328
+ * This is a read-only field provided in server synchronization packets to specify
329
+ * which position the node takes in the parent's ordered children array.
330
+ * This index is set on load and gets updated on reordering nodes in tree. Sorting and filtering
331
+ * have no effect on it.
332
+ */
333
+ orderedParentIndex ? : number
334
+ /**
335
+ * The number of Resource records each page should contain, when using [remotePaging](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/mixin/LazyLoadCrudManager#config-remotePaging)
336
+ */
337
+ pageSize ? : number
338
+ /**
339
+ * This is a read-only field provided in server synchronization packets to specify
340
+ * which record id is the parent of the record.
341
+ */
342
+ parentId ? : string|number|null
343
+ /**
344
+ * This is a read-only field provided in server synchronization packets to specify
345
+ * which position the node takes in the parent's children array.
346
+ * This index is set on load and gets updated automatically after row reordering, sorting, etc.
347
+ * To save the order, need to persist the field on the server and when data is fetched to be loaded,
348
+ * need to sort by this field.
349
+ */
350
+ parentIndex ? : number
351
+ /**
352
+ * Field name to be used to transfer a phantom record identifier.
353
+ */
354
+ phantomIdField ? : string
355
+ /**
356
+ * Field name to be used to transfer a phantom parent record identifier.
357
+ */
358
+ phantomParentIdField ? : string
359
+ /**
360
+ * Flag the record as read-only on the UI level, preventing the end user from manipulating it using editing
361
+ * features such as cell editing and event dragging.
362
+ * ...
363
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-readOnly)
364
+ */
365
+ readOnly ? : Boolean
366
+ /**
367
+ * This field is added to the class at runtime when the Store is configured with
368
+ * [lazyLoad](https://bryntum.com/products/schedulerpro/docs/api/Core/data/Store#config-lazyLoad). The
369
+ * number specified should reflect the <strong>total</strong> amount of children of a parent node, including nested descendants.
370
+ * @deprecated This field has been deprecated. Please read the [guide](https://bryntum.com/products/schedulerpro/docs/api/Grid/guides/data/lazyloading.md) to find out if your app needs to use the new [isFullyLoaded](https://bryntum.com/products/schedulerpro/docs/api/Core/data/mixin/TreeNode#field-isFullyLoaded) field.
371
+ */
372
+ remoteChildCount ? : number
373
+ /**
374
+ * If set to `true`, this makes the CrudManager load pages of data, instead of loading the complete dataset at
375
+ * once. The requests made to the [loadUrl](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#config-loadUrl) will contain
376
+ * params with info about the current dataset being requested:
377
+ * ...
378
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-remotePaging)
379
+ */
380
+ remotePaging ? : Boolean
381
+ /**
382
+ * When the CrudManager/Project is configured with [lazyLoad](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/mixin/LazyLoadCrudManager#config-lazyLoad) set to `true`, you can configure
383
+ * your own data fetching logic by implementing this function. Doing this will override the built-in fetching
384
+ * mechanism using the [loadUrl](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/data/CrudManager#config-loadUrl).
385
+ * ...
386
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-requestData)
387
+ * @param {LazyLoadCrudManagerRequestParams} params Object containing info of what data is requested
388
+ * @returns {CrudManagerRequestResponse}
389
+ */
390
+ requestData ? : (params: LazyLoadCrudManagerRequestParams) => Promise<CrudManagerRequestResponse>
391
+ /**
392
+ * `True` to reset identifiers (defined by `idField` config) of phantom records before submitting them
393
+ * to the server.
394
+ */
395
+ resetIdsBeforeSync ? : Boolean
396
+ /**
397
+ * Set to `true` to reset the undo/redo queues of the internal [StateTrackingManager](https://bryntum.com/products/schedulerpro/docs/api/Core/data/stm/StateTrackingManager)
398
+ * after the Project has loaded. Defaults to `false`
399
+ */
400
+ resetUndoRedoQueuesAfterLoad ? : Boolean
401
+ /**
402
+ * Class implementing resource allocation report used by
403
+ * [resource histogram](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/view/ResourceHistogram) and
404
+ * [resource utilization](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/view/ResourceUtilization) views
405
+ * for collecting resource allocation.
406
+ */
407
+ resourceAllocationInfoClass ? : ResourceAllocationInfo
408
+ /**
409
+ * The constructor of the resource model class, to be used in the project. Will be set as the
410
+ * [modelClass](https://bryntum.com/products/schedulerpro/docs/api/Core/data/Store#config-modelClass) property of the [resourceStore](#SchedulerPro/model/ProjectModel#property-resourceStore)
411
+ */
412
+ resourceModelClass ? : typeof ResourceModel
413
+ /**
414
+ * Data use to fill the [resourceStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#property-resourceStore). Should be an array of
415
+ * [ResourceModels](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ResourceModel) or its configuration objects.
416
+ */
417
+ resources ? : ResourceModel[]|ResourceModelConfig[]
418
+ /**
419
+ * The initial data, to fill the [resourceStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#property-resourceStore) with.
420
+ * Should be an array of [ResourceModels](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ResourceModel) or its configuration objects.
421
+ * @deprecated 6.3.0 Use [resources](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-resources) instead
422
+ */
423
+ resourcesData ? : ResourceModel[]
424
+ /**
425
+ * A [ResourceStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/data/ResourceStore) instance or a config object.
426
+ */
427
+ resourceStore ? : ResourceStore|ResourceStoreConfig
428
+ /**
429
+ * The constructor to create a resource store instance with. Should be a class, subclassing the
430
+ * [ResourceStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/data/ResourceStore)
431
+ */
432
+ resourceStoreClass ? : typeof ResourceStore|object
433
+ /**
434
+ * Data use to fill the [resourceTimeRangeStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#property-resourceTimeRangeStore). Should be an array
435
+ * of [ResourceTimeRangeModels](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/model/ResourceTimeRangeModel) or its configuration objects.
436
+ */
437
+ resourceTimeRanges ? : ResourceTimeRangeModel[]|ResourceTimeRangeModelConfig[]
438
+ /**
439
+ * The initial data, to fill the [resourceTimeRangeStore](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/model/mixin/ProjectModelMixin#property-resourceTimeRangeStore) with.
440
+ * Should be an array of [ResourceTimeRangeModel](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/model/ResourceTimeRangeModel) or it's
441
+ * configuration objects.
442
+ * @deprecated 6.3.0 Use resourceTimeRanges instead
443
+ */
444
+ resourceTimeRangesData ? : ResourceTimeRangeModel[]
445
+ /**
446
+ * A [ResourceTimeRangeStore](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/data/ResourceTimeRangeStore) instance or a config object.
447
+ */
448
+ resourceTimeRangeStore ? : ResourceTimeRangeStore|ResourceTimeRangeStoreConfig
449
+ /**
450
+ * The constructor to create a resource time range store instance with. Should be a class subclassing the
451
+ * [ResourceTimeRangeStore](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/data/ResourceTimeRangeStore)
452
+ */
453
+ resourceTimeRangeStoreClass ? : typeof ResourceTimeRangeStore|object
454
+ /**
455
+ * Experimental hook that lets the app determine if a bound dataset needs syncing with the store or not, and
456
+ * if it does - which records that should be processed. Only called for stores that are configured with
457
+ * `syncDataOnLoad: true` (which is the default in the React, Angular and Vue wrappers).
458
+ * ...
459
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-shouldSyncDataOnLoad)
460
+ * @param {object} options Options passed by the store to this hook
461
+ * @param {Core.data.Store} options.store Store about to be synced
462
+ * @param {Core.data.Model} options.records Records currently in the store
463
+ * @param {object[]} options.data Incoming data
464
+ * @returns {Set<any>,boolean} Return `false` to prevent the store from syncing, or a set of record ids that need further processing (for records that has some kind of change, eg. an update, removal or addition)
465
+ */
466
+ shouldSyncDataOnLoad ? : (options: { store: Store, records: Model, data: object[] }) => Set<any>|Boolean
467
+ /**
468
+ * Silences propagations caused by the project loading.
469
+ * ...
470
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-silenceInitialCommit)
471
+ */
472
+ silenceInitialCommit ? : Boolean
473
+ /**
474
+ * When `true` the project's manually scheduled tasks duration will include only working periods of time.
475
+ * When `false` such tasks will ignore working time calendars and treat all intervals as working.
476
+ * ...
477
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-skipNonWorkingTimeInDurationWhenSchedulingManually)
478
+ */
479
+ skipNonWorkingTimeInDurationWhenSchedulingManually ? : Boolean
480
+ /**
481
+ * When `true` the project's manually scheduled tasks will adjust their proposed start/end dates to skip non-working
482
+ * time.
483
+ * ...
484
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-skipNonWorkingTimeWhenSchedulingManually)
485
+ */
486
+ skipNonWorkingTimeWhenSchedulingManually ? : Boolean
487
+ /**
488
+ * When `true` treats parsed responses without `success` property as successful.
489
+ * In this mode a parsed response is treated as invalid if it has explicitly set `success : false`.
490
+ */
491
+ skipSuccessProperty ? : Boolean
492
+ /**
493
+ * Configuration options to provide to the STM manager
494
+ */
495
+ stm ? : StateTrackingManagerConfig|CoreStateTrackingManager
496
+ /**
497
+ * Name of a store property to retrieve store identifiers from. Make sure you have an instance of a
498
+ * store to use it by id. Store identifier is used as a container name holding corresponding store data
499
+ * while transferring them to/from the server. By default, `id` property is used. And in case a
500
+ * container identifier has to differ this config can be used:
501
+ * ...
502
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-storeIdProperty)
503
+ */
504
+ storeIdProperty ? : string
505
+ /**
506
+ * When `true` the Crud Manager does not require all updated and removed records to be mentioned in the
507
+ * *sync* response. In this case response should include only server side changes.
508
+ * ...
509
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-supportShortSyncResponse)
510
+ */
511
+ supportShortSyncResponse ? : Boolean
512
+ /**
513
+ * An array of store identifiers sets an alternative sync responses apply order.
514
+ * By default, the order in which sync responses are applied to the stores is the same as they
515
+ * registered in. But in case of some tricky dependencies between stores this order can be changed:
516
+ * ...
517
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-syncApplySequence)
518
+ */
519
+ syncApplySequence ? : string[]|CrudManagerStoreDescriptor[]
520
+ /**
521
+ * Convenience shortcut to set only the url to sync to, when you do not need to supply any other config
522
+ * options in the `sync` section of the `transport` config.
523
+ * ...
524
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-syncUrl)
525
+ */
526
+ syncUrl ? : string
527
+ /**
528
+ * An [EventStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/data/EventStore) instance or a config object.
529
+ */
530
+ taskStore ? : EventStore|EventStoreConfig
531
+ /**
532
+ * Data use to fill the [timeRangeStore](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#property-timeRangeStore). Should be an array of
533
+ * [TimeSpans](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/model/TimeSpan) or its configuration objects.
534
+ */
535
+ timeRanges ? : TimeSpan[]|TimeSpanConfig[]
536
+ /**
537
+ * The initial data, to fill the [timeRangeStore](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/model/mixin/ProjectModelMixin#property-timeRangeStore) with.
538
+ * Should be an array of [TimeSpan](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/model/TimeSpan) or its configuration objects.
539
+ * @deprecated 6.3.0 Use timeRanges instead
540
+ */
541
+ timeRangesData ? : TimeSpan[]
542
+ /**
543
+ * A [Store](https://bryntum.com/products/schedulerpro/docs/api/Core/data/Store) instance or a config object.
544
+ */
545
+ timeRangeStore ? : Store|StoreConfig
546
+ /**
547
+ * The constructor to create a time range store instance with. Should be a class subclassing the
548
+ * [TimeRangeStore](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/data/TimeRangeStore)
549
+ */
550
+ timeRangeStoreClass ? : typeof TimeRangeStore|object
551
+ /**
552
+ * Set to a IANA time zone (i.e. `Europe/Stockholm`) or a UTC offset in minutes (i.e. `-120`). This will
553
+ * convert all events, tasks and time ranges to the specified time zone or offset. It will also affect the
554
+ * displayed timeline's headers as well at the start and end date of it.
555
+ * ...
556
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-timeZone)
557
+ */
558
+ timeZone ? : string|number
559
+ /**
560
+ * Specifies the output format of [toJSON](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/model/mixin/ProjectModelCommon#function-toJSON).
561
+ * ...
562
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-toJSONResultFormat)
563
+ */
564
+ toJSONResultFormat ? : 'inlineData'|'model'
565
+ /**
566
+ * If `true`, project [changes](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/data/mixin/ProjectCrudManager#property-changes) API will also report project model changes: start/end date,
567
+ * calendar, effort, duration, etc.
568
+ */
569
+ trackProjectModelChanges ? : Boolean
570
+ /**
571
+ * When `true` forces the CRUD manager to process responses depending on their `type` attribute.
572
+ * So `load` request may be responded with `sync` response for example.
573
+ * Can be used for smart server logic allowing the server to decide when it's better to respond with a
574
+ * complete data set (`load` response) or it's enough to return just a delta (`sync` response).
575
+ */
576
+ trackResponseType ? : Boolean
577
+ /**
578
+ * Configuration of the AJAX requests used by *Crud Manager* to communicate with a server-side.
579
+ * ...
580
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-transport)
581
+ */
582
+ transport ? : {
583
+ load?: object
584
+ sync?: object
585
+ }
586
+ /**
587
+ * By default, the stores of a project use the raw data objects passed to them as the data source for their
588
+ * records if data is loaded remotely (using an `AjaxStore` or a `CrudManager`). For data supplied inline,
589
+ * the data objects are instead by default cloned to avoid the original data object being modified by the
590
+ * store.
591
+ * ...
592
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-useRawData)
593
+ */
594
+ useRawData ? : Boolean
595
+ /**
596
+ * This config validates the response structure for requests made by the Crud Manager.
597
+ * When `true`, the Crud Manager checks every parsed response structure for errors
598
+ * and if the response format is invalid, a warning is logged to the browser console.
599
+ * ...
600
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-validateResponse)
601
+ */
602
+ validateResponse ? : Boolean
603
+ /**
604
+ * `true` to write all fields from the record to the server.
605
+ * If set to `false` it will only send the fields that were modified.
606
+ * Note that any fields that have [persist](https://bryntum.com/products/schedulerpro/docs/api/Core/data/field/DataField#config-persist) set to `false` will
607
+ * still be ignored and fields having [alwaysWrite](https://bryntum.com/products/schedulerpro/docs/api/Core/data/field/DataField#config-alwaysWrite) set to `true`
608
+ * will always be included.
609
+ */
610
+ writeAllFields ? : Boolean
611
+
612
+ }>();
613
+
614
+ const emit = defineEmits<{
615
+ /**
616
+ * Fires before an object is destroyed.
617
+ * @param {string} e Event name
618
+ * @param {object} params Event parameters
619
+ * @param {string} params.e Event name
620
+ * @param {object} params.params Event parameters
621
+ * @param {object} params.params.event Event object
622
+ * @param {Core.Base} params.params.event.source The Object that is being destroyed.
623
+ */
624
+ (e: 'beforeDestroy', params: ((event: { source: Base }) => void)|string): void
625
+ /**
626
+ * Fires before [load request](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#function-load) is sent. Return `false` to cancel load request.
627
+ * @param {string} e Event name
628
+ * @param {object} params Event parameters
629
+ * @param {string} params.e Event name
630
+ * @param {object} params.params Event parameters
631
+ * @param {object} params.params.event Event object
632
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager.
633
+ * @param {object} params.params.event.pack The data package which contains data for all stores managed by the crud manager.
634
+ */
635
+ (e: 'beforeLoad', params: ((event: { source: AbstractCrudManager, pack: object }) => Promise<boolean>|boolean|void)|string): Promise<boolean>|boolean|void
636
+ /**
637
+ * Fires before loaded data get applied to the stores. Return `false` to prevent data applying.
638
+ * This event can be used for server data preprocessing. To achieve it user can modify the `response` object.
639
+ * @param {string} e Event name
640
+ * @param {object} params Event parameters
641
+ * @param {string} params.e Event name
642
+ * @param {object} params.params Event parameters
643
+ * @param {object} params.params.event Event object
644
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager.
645
+ * @param {object} params.params.event.response The decoded server response object.
646
+ * @param {object} params.params.event.options Options provided to the [load](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#function-load) method.
647
+ */
648
+ (e: 'beforeLoadApply', params: ((event: { source: AbstractCrudManager, response: object, options: object }) => Promise<boolean>|boolean|void)|string): Promise<boolean>|boolean|void
649
+ /**
650
+ * Fires before server response gets applied to the stores. Return `false` to prevent data applying.
651
+ * This event can be used for server data preprocessing. To achieve it user can modify the `response` object.
652
+ * @param {string} e Event name
653
+ * @param {object} params Event parameters
654
+ * @param {string} params.e Event name
655
+ * @param {object} params.params Event parameters
656
+ * @param {object} params.params.event Event object
657
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager.
658
+ * @param {'sync','load'} params.params.event.requestType The request type (`sync` or `load`).
659
+ * @param {object} params.params.event.response The decoded server response object.
660
+ */
661
+ (e: 'beforeResponseApply', params: ((event: { source: AbstractCrudManager, requestType: 'sync'|'load', response: object }) => Promise<boolean>|boolean|void)|string): Promise<boolean>|boolean|void
662
+ /**
663
+ * Fires before a request is sent to the server.
664
+ * ...
665
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#event-beforeSend)
666
+ * @param {string} e Event name
667
+ * @param {object} params Event parameters
668
+ * @param {string} params.e Event name
669
+ * @param {object} params.params Event parameters
670
+ * @param {object} params.params.event Event object
671
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.crudManager The CRUD manager.
672
+ * @param {object} params.params.event.params HTTP request params to be passed in the request URL.
673
+ * @param {'sync','load'} params.params.event.requestType CrudManager request type (`load`/`sync`)
674
+ * @param {object} params.params.event.requestConfig Configuration object for Ajax request call
675
+ */
676
+ (e: 'beforeSend', params: ((event: { crudManager: AbstractCrudManager, params: object, requestType: 'sync'|'load', requestConfig: object }) => Promise<void>)|string): Promise<void>
677
+ /**
678
+ * Fires before [sync request](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#function-sync) is sent. Return `false` to cancel sync request.
679
+ * ...
680
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#event-beforeSync)
681
+ * @param {string} e Event name
682
+ * @param {object} params Event parameters
683
+ * @param {string} params.e Event name
684
+ * @param {object} params.params Event parameters
685
+ * @param {object} params.params.event Event object
686
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager.
687
+ * @param {object} params.params.event.pack The data package which contains data for all stores managed by the crud manager.
688
+ */
689
+ (e: 'beforeSync', params: ((event: { source: AbstractCrudManager, pack: object }) => Promise<boolean>|boolean|void)|string): Promise<boolean>|boolean|void
690
+ /**
691
+ * Fires before sync response data get applied to the stores. Return `false` to prevent data applying.
692
+ * This event can be used for server data preprocessing. To achieve it user can modify the `response` object.
693
+ * @param {string} e Event name
694
+ * @param {object} params Event parameters
695
+ * @param {string} params.e Event name
696
+ * @param {object} params.params Event parameters
697
+ * @param {object} params.params.event Event object
698
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager.
699
+ * @param {object} params.params.event.response The decoded server response object.
700
+ */
701
+ (e: 'beforeSyncApply', params: ((event: { source: AbstractCrudManager, response: object }) => Promise<boolean>|boolean|void)|string): Promise<boolean>|boolean|void
702
+ /**
703
+ * Fires when any other event is fired from the object.
704
+ * ...
705
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#event-catchAll)
706
+ * @param {string} e Event name
707
+ * @param {object} params Event parameters
708
+ * @param {string} params.e Event name
709
+ * @param {object} params.params Event parameters
710
+ * @param {object} params.params.event Event object
711
+ * @param {{[key: string]: any, type: string}} params.params.event.event The Object that contains event details
712
+ * @param {string} params.params.event.event.type The type of the event which is caught by the listener
713
+ */
714
+ (e: 'catchAll', params: ((event: {[key: string]: any, type: string}) => void)|string): void
715
+ /**
716
+ * Fired when data in any of the projects stores changes.
717
+ * ...
718
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#event-change)
719
+ * @param {string} e Event name
720
+ * @param {object} params Event parameters
721
+ * @param {string} params.e Event name
722
+ * @param {object} params.params Event parameters
723
+ * @param {object} params.params.event Event object
724
+ * @param {Scheduler.model.SchedulerProjectModel,any} params.params.event.source This project
725
+ * @param {Core.data.Store} params.params.event.store Affected store
726
+ * @param {'remove','removeAll','add','clearchanges','filter','update','dataset','replace'} params.params.event.action Name of action which triggered the change. May be one of: * `'remove'` * `'removeAll'` * `'add'` * `'clearchanges'` * `'filter'` * `'update'` * `'dataset'` * `'replace'`
727
+ * @param {Core.data.Model} params.params.event.record Changed record, for actions that affects exactly one record (`'update'`)
728
+ * @param {Core.data.Model[]} params.params.event.records Changed records, passed for all actions except `'removeAll'`
729
+ * @param {object} params.params.event.changes Passed for the `'update'` action, info on which record fields changed
730
+ */
731
+ (e: 'change', params: ((event: { source: SchedulerProjectModel|any, store: Store, action: 'remove'|'removeAll'|'add'|'clearchanges'|'filter'|'update'|'dataset'|'replace', record: Model, records: Model[], changes: object }) => void)|string): void
732
+ /**
733
+ * Fired when the Engine detects a computation cycle.
734
+ * @param {string} e Event name
735
+ * @param {object} params Event parameters
736
+ * @param {string} params.e Event name
737
+ * @param {object} params.params Event parameters
738
+ * @param {object} params.params.event Event object
739
+ * @param {object} params.params.event.schedulingIssue Scheduling error describing the case:
740
+ * @param {Function} params.params.event.schedulingIssue.getDescription Returns the cycle description
741
+ * @param {object} params.params.event.schedulingIssue.cycle Object providing the cycle info
742
+ * @param {Function} params.params.event.schedulingIssue.getResolutions Returns possible resolutions
743
+ * @param {Function} params.params.event.continueWithResolutionResult Function to call after a resolution is chosen to proceed with the Engine calculations: ```javascript project.on('cycle', ({ continueWithResolutionResult }) => { // cancel changes in case of a cycle continueWithResolutionResult(EffectResolutionResult.Cancel); }) ``` Where `EffectResolutionResult.Cancel` results in cancelling the changes.
744
+ */
745
+ (e: 'cycle', params: ((event: { schedulingIssue: { getDescription: Function, cycle: object, getResolutions: Function }, continueWithResolutionResult: Function }) => void)|string): void
746
+ /**
747
+ * Fired when the engine has finished its calculations and the results has been written back to the records.
748
+ * ...
749
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#event-dataReady)
750
+ * @param {string} e Event name
751
+ * @param {object} params Event parameters
752
+ * @param {string} params.e Event name
753
+ * @param {object} params.params Event parameters
754
+ * @param {object} params.params.event Event object
755
+ * @param {SchedulerPro.model.ProjectModel} params.params.event.source The project
756
+ * @param {boolean} params.params.event.isInitialCommit Flag that shows if this commit is initial
757
+ * @param {Set<any>} params.params.event.records Set of all [Model](https://bryntum.com/products/schedulerpro/docs/api/Core/data/Model)s that were modified in the completed transaction. Use the [modifications](https://bryntum.com/products/schedulerpro/docs/api/Core/data/Model#property-modifications) property of each Model to identify modified fields.
758
+ */
759
+ (e: 'dataReady', params: ((event: { source: ProjectModel, isInitialCommit: boolean, records: Set<any> }) => void)|string): void
760
+ /**
761
+ * Fires when an object is destroyed.
762
+ * @param {string} e Event name
763
+ * @param {object} params Event parameters
764
+ * @param {string} params.e Event name
765
+ * @param {object} params.params Event parameters
766
+ * @param {object} params.params.event Event object
767
+ * @param {Core.Base} params.params.event.source The Object that is being destroyed.
768
+ */
769
+ (e: 'destroy', params: ((event: { source: Base }) => void)|string): void
770
+ /**
771
+ * Fired when the Engine detects a calendar misconfiguration when the calendar does
772
+ * not provide any working periods of time which makes the calendar usage impossible.
773
+ * @param {string} e Event name
774
+ * @param {object} params Event parameters
775
+ * @param {string} params.e Event name
776
+ * @param {object} params.params Event parameters
777
+ * @param {object} params.params.event Event object
778
+ * @param {object} params.params.event.schedulingIssue Scheduling error describing the case:
779
+ * @param {Function} params.params.event.schedulingIssue.getDescription Returns the error description
780
+ * @param {Function} params.params.event.schedulingIssue.getCalendar Returns the calendar that must be fixed
781
+ * @param {Function} params.params.event.schedulingIssue.getResolutions Returns possible resolutions
782
+ * @param {Function} params.params.event.continueWithResolutionResult Function to call after a resolution is chosen to proceed with the Engine calculations: ```javascript project.on('emptyCalendar', ({ schedulingIssue, continueWithResolutionResult }) => { // apply the first resolution and continue schedulingIssue.getResolutions()[0].resolve(); continueWithResolutionResult(EffectResolutionResult.Resume); }) ```
783
+ */
784
+ (e: 'emptyCalendar', params: ((event: { schedulingIssue: { getDescription: Function, getCalendar: Function, getResolutions: Function }, continueWithResolutionResult: Function }) => void)|string): void
785
+ /**
786
+ * Fires when data in any of the registered data stores is changed.
787
+ * ...
788
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#event-hasChanges)
789
+ * @param {string} e Event name
790
+ * @param {object} params Event parameters
791
+ * @param {string} params.e Event name
792
+ * @param {object} params.params Event parameters
793
+ * @param {object} params.params.event Event object
794
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager.
795
+ */
796
+ (e: 'hasChanges', params: ((event: { source: AbstractCrudManager }) => void)|string): void
797
+ /**
798
+ * Fires on successful [load request](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#function-load) completion after data gets loaded to the stores.
799
+ * @param {string} e Event name
800
+ * @param {object} params Event parameters
801
+ * @param {string} params.e Event name
802
+ * @param {object} params.params Event parameters
803
+ * @param {object} params.params.event Event object
804
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager.
805
+ * @param {object} params.params.event.response The decoded server response object.
806
+ * @param {object} params.params.event.responseOptions [DEPRECATED] see `requestOptions`
807
+ * @param {object} params.params.event.requestOptions The request options passed to the request.
808
+ * @param {Response} params.params.event.rawResponse The native Response object
809
+ */
810
+ (e: 'load', params: ((event: { source: AbstractCrudManager, response: object, responseOptions: object, requestOptions: object, rawResponse: any }) => void)|string): void
811
+ /**
812
+ * Fired after [load request](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#function-load) was canceled by some [beforeLoad](#Scheduler/crud/AbstractCrudManagerMixin#event-beforeLoad)
813
+ * listener or due to incomplete prior load request.
814
+ * @param {string} e Event name
815
+ * @param {object} params Event parameters
816
+ * @param {string} params.e Event name
817
+ * @param {object} params.params Event parameters
818
+ * @param {object} params.params.event Event object
819
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager.
820
+ * @param {object} params.params.event.pack The data package which contains data for all stores managed by the crud manager.
821
+ */
822
+ (e: 'loadCanceled', params: ((event: { source: AbstractCrudManager, pack: object }) => void)|string): void
823
+ /**
824
+ * Fires when a [load request](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#function-load) fails.
825
+ * @param {string} e Event name
826
+ * @param {object} params Event parameters
827
+ * @param {string} params.e Event name
828
+ * @param {object} params.params Event parameters
829
+ * @param {object} params.params.event Event object
830
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager instance.
831
+ * @param {object} params.params.event.response The decoded server response object.
832
+ * @param {string} params.params.event.responseText The raw server response text
833
+ * @param {object} params.params.event.responseOptions [DEPRECATED] see `requestOptions`
834
+ * @param {object} params.params.event.requestOptions The request options passed to the request.
835
+ * @param {Response} params.params.event.rawResponse The native Response object
836
+ */
837
+ (e: 'loadFail', params: ((event: { source: AbstractCrudManager, response: object, responseText: string, responseOptions: object, requestOptions: object, rawResponse: any }) => void)|string): void
838
+ /**
839
+ * Fires when registered stores get into state when they don't have any
840
+ * not persisted change. This happens after [load](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#function-load) or [sync](#Scheduler/crud/AbstractCrudManagerMixin#function-sync) request
841
+ * completion. Or this may happen after a record update which turns its fields back to their original state.
842
+ * ...
843
+ * [View online docs...](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#event-noChanges)
844
+ * @param {string} e Event name
845
+ * @param {object} params Event parameters
846
+ * @param {string} params.e Event name
847
+ * @param {object} params.params Event parameters
848
+ * @param {object} params.params.event Event object
849
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager.
850
+ */
851
+ (e: 'noChanges', params: ((event: { source: AbstractCrudManager }) => void)|string): void
852
+ /**
853
+ * Fired during the Engine calculation if [enableProgressNotifications](https://bryntum.com/products/schedulerpro/docs/api/SchedulerPro/model/ProjectModel#config-enableProgressNotifications) config is `true`
854
+ * @param {string} e Event name
855
+ * @param {object} params Event parameters
856
+ * @param {string} params.e Event name
857
+ * @param {object} params.params Event parameters
858
+ * @param {object} params.params.event Event object
859
+ * @param {SchedulerPro.model.ProjectModel} params.params.event.source The owning project
860
+ * @param {number} params.params.event.total The total number of operations
861
+ * @param {number} params.params.event.remaining The number of remaining operations
862
+ * @param {'storePopulation','propagating'} params.params.event.phase The phase of the calculation, either 'storePopulation' when data is getting loaded, or 'propagating' when data is getting calculated
863
+ */
864
+ (e: 'progress', params: ((event: { source: ProjectModel, total: number, remaining: number, phase: 'storePopulation'|'propagating' }) => void)|string): void
865
+ /**
866
+ * Fires on successful request completion after data gets applied to the stores.
867
+ * @param {string} e Event name
868
+ * @param {object} params Event parameters
869
+ * @param {string} params.e Event name
870
+ * @param {object} params.params Event parameters
871
+ * @param {object} params.params.event Event object
872
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager.
873
+ * @param {'sync','load'} params.params.event.requestType The request type (`sync` or `load`).
874
+ * @param {object} params.params.event.response The decoded server response object.
875
+ * @param {object} params.params.event.responseOptions [DEPRECATED] see `requestOptions`
876
+ * @param {object} params.params.event.requestOptions The request options passed to the request.
877
+ * @param {Response} params.params.event.rawResponse The native Response object
878
+ */
879
+ (e: 'requestDone', params: ((event: { source: AbstractCrudManager, requestType: 'sync'|'load', response: object, responseOptions: object, requestOptions: object, rawResponse: any }) => void)|string): void
880
+ /**
881
+ * Fires when a request fails.
882
+ * @param {string} e Event name
883
+ * @param {object} params Event parameters
884
+ * @param {string} params.e Event name
885
+ * @param {object} params.params Event parameters
886
+ * @param {object} params.params.event Event object
887
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager instance.
888
+ * @param {'sync','load'} params.params.event.requestType The request type (`sync` or `load`).
889
+ * @param {object} params.params.event.response The decoded server response object.
890
+ * @param {string} params.params.event.responseText The raw server response text
891
+ * @param {object} params.params.event.responseOptions [DEPRECATED] see `requestOptions`
892
+ * @param {object} params.params.event.requestOptions The request options passed to the request.
893
+ * @param {Response} params.params.event.rawResponse The native Response object
894
+ */
895
+ (e: 'requestFail', params: ((event: { source: AbstractCrudManager, requestType: 'sync'|'load', response: object, responseText: string, responseOptions: object, requestOptions: object, rawResponse: any }) => void)|string): void
896
+ /**
897
+ * This event triggers when a new revision is added to the project. It is used to notify the backend about the
898
+ * new revision.
899
+ * @param {string} e Event name
900
+ * @param {object} params Event parameters
901
+ * @param {string} params.e Event name
902
+ * @param {object} params.params Event parameters
903
+ * @param {object} params.params.event Event object
904
+ * @param {string} params.params.event.localRevisionId ID of the local revision. Backend should send it in the broadcast channel
905
+ * @param {string} params.params.event.conflictResolutionFor ID of the revision with a conflict which was resolved by this revision
906
+ * @param {string} params.params.event.clientId ID of the client instance. Used to distinguish own revisions from the broadcast channel
907
+ * @param {object} params.params.event.changes Object with changes constituting revision
908
+ */
909
+ (e: 'revisionNotification', params: ((event: { localRevisionId: string, conflictResolutionFor?: string, clientId: string, changes: object }) => void)|string): void
910
+ /**
911
+ * Fired when the Engine detects a scheduling conflict.
912
+ * @param {string} e Event name
913
+ * @param {object} params Event parameters
914
+ * @param {string} params.e Event name
915
+ * @param {object} params.params Event parameters
916
+ * @param {object} params.params.event Event object
917
+ * @param {object} params.params.event.schedulingIssue The conflict details:
918
+ * @param {Function} params.params.event.schedulingIssue.getDescription Returns the conflict description
919
+ * @param {object[]} params.params.event.schedulingIssue.intervals Array of conflicting intervals
920
+ * @param {Function} params.params.event.schedulingIssue.getResolutions Function to get possible resolutions
921
+ * @param {Function} params.params.event.continueWithResolutionResult Function to call after a resolution is chosen to proceed with the Engine calculations: ```javascript project.on('schedulingConflict', ({ schedulingIssue, continueWithResolutionResult }) => { // apply the first resolution and continue schedulingIssue.getResolutions()[0].resolve(); continueWithResolutionResult(EffectResolutionResult.Resume); }) ``` Where `EffectResolutionResult.Resume` results in a resolution being applied and current transaction should be continued.
922
+ */
923
+ (e: 'schedulingConflict', params: ((event: { schedulingIssue: { getDescription: Function, intervals: object[], getResolutions: Function }, continueWithResolutionResult: Function }) => void)|string): void
924
+ /**
925
+ * Fires on successful [sync request](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#function-sync) completion.
926
+ * @param {string} e Event name
927
+ * @param {object} params Event parameters
928
+ * @param {string} params.e Event name
929
+ * @param {object} params.params Event parameters
930
+ * @param {object} params.params.event Event object
931
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager.
932
+ * @param {object} params.params.event.response The decoded server response object.
933
+ * @param {object} params.params.event.responseOptions [DEPRECATED] see `requestOptions`
934
+ * @param {object} params.params.event.requestOptions The request options passed to the request.
935
+ * @param {Response} params.params.event.rawResponse The native Response object
936
+ */
937
+ (e: 'sync', params: ((event: { source: AbstractCrudManager, response: object, responseOptions: object, requestOptions: object, rawResponse: any }) => void)|string): void
938
+ /**
939
+ * Fires after [sync request](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#function-sync) was canceled by some [beforeSync](#Scheduler/crud/AbstractCrudManagerMixin#event-beforeSync) listener.
940
+ * @param {string} e Event name
941
+ * @param {object} params Event parameters
942
+ * @param {string} params.e Event name
943
+ * @param {object} params.params Event parameters
944
+ * @param {object} params.params.event Event object
945
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager.
946
+ * @param {object} params.params.event.pack The data package which contains data for all stores managed by the crud manager.
947
+ */
948
+ (e: 'syncCanceled', params: ((event: { source: AbstractCrudManager, pack: object }) => void)|string): void
949
+ /**
950
+ * Fires after [sync request](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#function-sync) was delayed due to incomplete previous one.
951
+ * @param {string} e Event name
952
+ * @param {object} params Event parameters
953
+ * @param {string} params.e Event name
954
+ * @param {object} params.params Event parameters
955
+ * @param {object} params.params.event Event object
956
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager.
957
+ * @param {object} params.params.event.arguments The arguments of [sync](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#function-sync) call.
958
+ */
959
+ (e: 'syncDelayed', params: ((event: { source: AbstractCrudManager, arguments: object }) => void)|string): void
960
+ /**
961
+ * Fires when a [sync request](https://bryntum.com/products/schedulerpro/docs/api/Scheduler/crud/AbstractCrudManagerMixin#function-sync) fails.
962
+ * @param {string} e Event name
963
+ * @param {object} params Event parameters
964
+ * @param {string} params.e Event name
965
+ * @param {object} params.params Event parameters
966
+ * @param {object} params.params.event Event object
967
+ * @param {Scheduler.crud.AbstractCrudManager} params.params.event.source The CRUD manager instance.
968
+ * @param {object} params.params.event.response The decoded server response object.
969
+ * @param {string} params.params.event.responseText The raw server response text
970
+ * @param {object} params.params.event.responseOptions [DEPRECATED] see `requestOptions`
971
+ * @param {object} params.params.event.requestOptions The request options passed to the request.
972
+ * @param {Response} params.params.event.rawResponse The native Response object
973
+ */
974
+ (e: 'syncFail', params: ((event: { source: AbstractCrudManager, response: object, responseText: string, responseOptions: object, requestOptions: object, rawResponse: any }) => void)|string): void
975
+ }>();
976
+
977
+ const widgetData = {
978
+ instanceClass : ProjectModel,
979
+ instanceName : 'ProjectModel',
980
+
981
+ configNames : [
982
+ 'adjustDurationToDST',
983
+ 'assignmentModelClass',
984
+ 'assignmentsData',
985
+ 'assignmentStoreClass',
986
+ 'autoLoad',
987
+ 'autoSync',
988
+ 'autoSyncTimeout',
989
+ 'bubbleEvents',
990
+ 'calendarManagerStoreClass',
991
+ 'calendarModelClass',
992
+ 'calendarsData',
993
+ 'children',
994
+ 'delayCalculation',
995
+ 'dependenciesData',
996
+ 'dependencyModelClass',
997
+ 'dependencyStoreClass',
998
+ 'encoder',
999
+ 'eventModelClass',
1000
+ 'eventsData',
1001
+ 'eventStoreClass',
1002
+ 'expanded',
1003
+ 'includeChildrenInRemoveRequest',
1004
+ 'listeners',
1005
+ 'maxCalendarRange',
1006
+ 'orderedParentIndex',
1007
+ 'pageSize',
1008
+ 'parentIndex',
1009
+ 'phantomIdField',
1010
+ 'phantomParentIdField',
1011
+ 'remotePaging',
1012
+ 'requestData',
1013
+ 'resetIdsBeforeSync',
1014
+ 'resetUndoRedoQueuesAfterLoad',
1015
+ 'resourceAllocationInfoClass',
1016
+ 'resourceModelClass',
1017
+ 'resourcesData',
1018
+ 'resourceStoreClass',
1019
+ 'resourceTimeRangesData',
1020
+ 'resourceTimeRangeStoreClass',
1021
+ 'silenceInitialCommit',
1022
+ 'skipSuccessProperty',
1023
+ 'storeIdProperty',
1024
+ 'supportShortSyncResponse',
1025
+ 'taskStore',
1026
+ 'timeRangesData',
1027
+ 'timeRangeStoreClass',
1028
+ 'toJSONResultFormat',
1029
+ 'trackResponseType',
1030
+ 'transport',
1031
+ 'useRawData',
1032
+ 'validateResponse',
1033
+ 'writeAllFields'
1034
+ ],
1035
+ propertyConfigNames : [
1036
+ 'addConstraintOnDateSet',
1037
+ 'assignments',
1038
+ 'assignmentStore',
1039
+ 'autoCalculatePercentDoneForParentTasks',
1040
+ 'autoMergeAdjacentSegments',
1041
+ 'calendar',
1042
+ 'calendarManagerStore',
1043
+ 'calendars',
1044
+ 'callOnFunctions',
1045
+ 'catchEventHandlerExceptions',
1046
+ 'crudStores',
1047
+ 'daysPerMonth',
1048
+ 'daysPerWeek',
1049
+ 'dependencies',
1050
+ 'dependenciesCalendar',
1051
+ 'dependencyStore',
1052
+ 'enableProgressNotifications',
1053
+ 'events',
1054
+ 'eventStore',
1055
+ 'forceSync',
1056
+ 'hoursPerDay',
1057
+ 'id',
1058
+ 'ignoreRemoteChangesInSTM',
1059
+ 'includeLegacyDataProperties',
1060
+ 'isFullyLoaded',
1061
+ 'json',
1062
+ 'lazyLoad',
1063
+ 'loadUrl',
1064
+ 'onBeforeDestroy',
1065
+ 'onBeforeLoad',
1066
+ 'onBeforeLoadApply',
1067
+ 'onBeforeResponseApply',
1068
+ 'onBeforeSend',
1069
+ 'onBeforeSync',
1070
+ 'onBeforeSyncApply',
1071
+ 'onCatchAll',
1072
+ 'onChange',
1073
+ 'onCycle',
1074
+ 'onDataReady',
1075
+ 'onDestroy',
1076
+ 'onEmptyCalendar',
1077
+ 'onHasChanges',
1078
+ 'onLoad',
1079
+ 'onLoadCanceled',
1080
+ 'onLoadFail',
1081
+ 'onNoChanges',
1082
+ 'onProgress',
1083
+ 'onRequestDone',
1084
+ 'onRequestFail',
1085
+ 'onRevisionNotification',
1086
+ 'onSchedulingConflict',
1087
+ 'onSync',
1088
+ 'onSyncCanceled',
1089
+ 'onSyncDelayed',
1090
+ 'onSyncFail',
1091
+ 'parentId',
1092
+ 'readOnly',
1093
+ 'remoteChildCount',
1094
+ 'resources',
1095
+ 'resourceStore',
1096
+ 'resourceTimeRanges',
1097
+ 'resourceTimeRangeStore',
1098
+ 'shouldSyncDataOnLoad',
1099
+ 'skipNonWorkingTimeInDurationWhenSchedulingManually',
1100
+ 'skipNonWorkingTimeWhenSchedulingManually',
1101
+ 'stm',
1102
+ 'syncApplySequence',
1103
+ 'syncUrl',
1104
+ 'timeRanges',
1105
+ 'timeRangeStore',
1106
+ 'timeZone',
1107
+ 'trackProjectModelChanges'
1108
+ ],
1109
+ propertyNames : [
1110
+ 'allChildren',
1111
+ 'allUnfilteredChildren',
1112
+ 'descendantCount',
1113
+ 'hasGeneratedId',
1114
+ 'inlineData',
1115
+ 'internalId',
1116
+ 'isCommitting',
1117
+ 'isCreating',
1118
+ 'isValid',
1119
+ 'previousSiblingsTotalCount',
1120
+ 'segmentModelClass',
1121
+ 'visibleDescendantCount'
1122
+ ],
1123
+ eventNames : [
1124
+ 'beforeDestroy',
1125
+ 'beforeLoad',
1126
+ 'beforeLoadApply',
1127
+ 'beforeResponseApply',
1128
+ 'beforeSend',
1129
+ 'beforeSync',
1130
+ 'beforeSyncApply',
1131
+ 'catchAll',
1132
+ 'change',
1133
+ 'cycle',
1134
+ 'dataReady',
1135
+ 'destroy',
1136
+ 'emptyCalendar',
1137
+ 'hasChanges',
1138
+ 'load',
1139
+ 'loadCanceled',
1140
+ 'loadFail',
1141
+ 'noChanges',
1142
+ 'progress',
1143
+ 'requestDone',
1144
+ 'requestFail',
1145
+ 'revisionNotification',
1146
+ 'schedulingConflict',
1147
+ 'sync',
1148
+ 'syncCanceled',
1149
+ 'syncDelayed',
1150
+ 'syncFail'
1151
+ ]
1152
+ };
1153
+
1154
+ const instance: {
1155
+ value?: ProjectModel
1156
+ } = {};
1157
+
1158
+ const refElement = ref<HTMLDivElement>()!;
1159
+ // Storage for teleports (in-cell Vue component instances) automatically renderer by template
1160
+ const teleports = ref(new Map());
1161
+
1162
+ // Provide teleports for processCellContent
1163
+ provide('teleports', teleports);
1164
+
1165
+ onMounted(() => {
1166
+
1167
+ const me = getCurrentInstance()!;
1168
+
1169
+ instance.value = WrapperHelper.createWidget<typeof ProjectModel>({
1170
+ me,
1171
+ widgetData,
1172
+ emit,
1173
+ element : refElement.value!,
1174
+ toRaw
1175
+ });
1176
+
1177
+ const watcher = (prop: string, callback: any) => watch(() => me.props[prop], callback);
1178
+ WrapperHelper.watchProps(instance.value, widgetData, watcher);
1179
+ });
1180
+
1181
+ onBeforeUnmount(() => {
1182
+ // @ts-ignore
1183
+ instance.value?.destroy?.();
1184
+ });
1185
+
1186
+ defineExpose({
1187
+ instance,
1188
+ refElement,
1189
+ teleports
1190
+ });
1191
+
1192
+ </script>