@bryntum/scheduler-react 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 (296) hide show
  1. package/README.md +52 -0
  2. package/lib/BryntumAIFilterField.d.ts +231 -0
  3. package/lib/BryntumAIFilterField.js +168 -0
  4. package/lib/BryntumAIFilterField.js.map +1 -0
  5. package/lib/BryntumButton.d.ts +206 -0
  6. package/lib/BryntumButton.js +148 -0
  7. package/lib/BryntumButton.js.map +1 -0
  8. package/lib/BryntumButtonGroup.d.ts +201 -0
  9. package/lib/BryntumButtonGroup.js +154 -0
  10. package/lib/BryntumButtonGroup.js.map +1 -0
  11. package/lib/BryntumChatPanel.d.ts +246 -0
  12. package/lib/BryntumChatPanel.js +178 -0
  13. package/lib/BryntumChatPanel.js.map +1 -0
  14. package/lib/BryntumCheckbox.d.ts +239 -0
  15. package/lib/BryntumCheckbox.js +168 -0
  16. package/lib/BryntumCheckbox.js.map +1 -0
  17. package/lib/BryntumCheckboxGroup.d.ts +249 -0
  18. package/lib/BryntumCheckboxGroup.js +182 -0
  19. package/lib/BryntumCheckboxGroup.js.map +1 -0
  20. package/lib/BryntumChecklistFilterCombo.d.ts +268 -0
  21. package/lib/BryntumChecklistFilterCombo.js +205 -0
  22. package/lib/BryntumChecklistFilterCombo.js.map +1 -0
  23. package/lib/BryntumChipView.d.ts +208 -0
  24. package/lib/BryntumChipView.js +152 -0
  25. package/lib/BryntumChipView.js.map +1 -0
  26. package/lib/BryntumCodeEditor.d.ts +237 -0
  27. package/lib/BryntumCodeEditor.js +176 -0
  28. package/lib/BryntumCodeEditor.js.map +1 -0
  29. package/lib/BryntumColorField.d.ts +231 -0
  30. package/lib/BryntumColorField.js +169 -0
  31. package/lib/BryntumColorField.js.map +1 -0
  32. package/lib/BryntumCombo.d.ts +266 -0
  33. package/lib/BryntumCombo.js +202 -0
  34. package/lib/BryntumCombo.js.map +1 -0
  35. package/lib/BryntumContainer.d.ts +185 -0
  36. package/lib/BryntumContainer.js +148 -0
  37. package/lib/BryntumContainer.js.map +1 -0
  38. package/lib/BryntumDateField.d.ts +241 -0
  39. package/lib/BryntumDateField.js +178 -0
  40. package/lib/BryntumDateField.js.map +1 -0
  41. package/lib/BryntumDatePicker.d.ts +310 -0
  42. package/lib/BryntumDatePicker.js +213 -0
  43. package/lib/BryntumDatePicker.js.map +1 -0
  44. package/lib/BryntumDateRangeField.d.ts +242 -0
  45. package/lib/BryntumDateRangeField.js +179 -0
  46. package/lib/BryntumDateRangeField.js.map +1 -0
  47. package/lib/BryntumDateTimeField.d.ts +222 -0
  48. package/lib/BryntumDateTimeField.js +158 -0
  49. package/lib/BryntumDateTimeField.js.map +1 -0
  50. package/lib/BryntumDemoCodeEditor.d.ts +240 -0
  51. package/lib/BryntumDemoCodeEditor.js +179 -0
  52. package/lib/BryntumDemoCodeEditor.js.map +1 -0
  53. package/lib/BryntumDemoHeader.d.ts +30 -0
  54. package/lib/BryntumDemoHeader.js +84 -0
  55. package/lib/BryntumDemoHeader.js.map +1 -0
  56. package/lib/BryntumDisplayField.d.ts +227 -0
  57. package/lib/BryntumDisplayField.js +163 -0
  58. package/lib/BryntumDisplayField.js.map +1 -0
  59. package/lib/BryntumDurationField.d.ts +234 -0
  60. package/lib/BryntumDurationField.js +175 -0
  61. package/lib/BryntumDurationField.js.map +1 -0
  62. package/lib/BryntumEditor.d.ts +249 -0
  63. package/lib/BryntumEditor.js +167 -0
  64. package/lib/BryntumEditor.js.map +1 -0
  65. package/lib/BryntumEventColorField.d.ts +231 -0
  66. package/lib/BryntumEventColorField.js +169 -0
  67. package/lib/BryntumEventColorField.js.map +1 -0
  68. package/lib/BryntumFieldFilterPicker.d.ts +202 -0
  69. package/lib/BryntumFieldFilterPicker.js +161 -0
  70. package/lib/BryntumFieldFilterPicker.js.map +1 -0
  71. package/lib/BryntumFieldFilterPickerGroup.d.ts +207 -0
  72. package/lib/BryntumFieldFilterPickerGroup.js +164 -0
  73. package/lib/BryntumFieldFilterPickerGroup.js.map +1 -0
  74. package/lib/BryntumFieldSet.d.ts +235 -0
  75. package/lib/BryntumFieldSet.js +174 -0
  76. package/lib/BryntumFieldSet.js.map +1 -0
  77. package/lib/BryntumFileField.d.ts +228 -0
  78. package/lib/BryntumFileField.js +164 -0
  79. package/lib/BryntumFileField.js.map +1 -0
  80. package/lib/BryntumFilePicker.d.ts +192 -0
  81. package/lib/BryntumFilePicker.js +153 -0
  82. package/lib/BryntumFilePicker.js.map +1 -0
  83. package/lib/BryntumFilterField.d.ts +234 -0
  84. package/lib/BryntumFilterField.js +171 -0
  85. package/lib/BryntumFilterField.js.map +1 -0
  86. package/lib/BryntumFullscreenButton.d.ts +8 -0
  87. package/lib/BryntumFullscreenButton.js +37 -0
  88. package/lib/BryntumFullscreenButton.js.map +1 -0
  89. package/lib/BryntumGrid.d.ts +844 -0
  90. package/lib/BryntumGrid.js +335 -0
  91. package/lib/BryntumGrid.js.map +1 -0
  92. package/lib/BryntumGridBase.d.ts +842 -0
  93. package/lib/BryntumGridBase.js +333 -0
  94. package/lib/BryntumGridBase.js.map +1 -0
  95. package/lib/BryntumGridChartDesigner.d.ts +162 -0
  96. package/lib/BryntumGridChartDesigner.js +127 -0
  97. package/lib/BryntumGridChartDesigner.js.map +1 -0
  98. package/lib/BryntumGridFieldFilterPicker.d.ts +203 -0
  99. package/lib/BryntumGridFieldFilterPicker.js +162 -0
  100. package/lib/BryntumGridFieldFilterPicker.js.map +1 -0
  101. package/lib/BryntumGridFieldFilterPickerGroup.d.ts +206 -0
  102. package/lib/BryntumGridFieldFilterPickerGroup.js +163 -0
  103. package/lib/BryntumGridFieldFilterPickerGroup.js.map +1 -0
  104. package/lib/BryntumGroupBar.d.ts +208 -0
  105. package/lib/BryntumGroupBar.js +152 -0
  106. package/lib/BryntumGroupBar.js.map +1 -0
  107. package/lib/BryntumHint.d.ts +260 -0
  108. package/lib/BryntumHint.js +184 -0
  109. package/lib/BryntumHint.js.map +1 -0
  110. package/lib/BryntumLabel.d.ts +161 -0
  111. package/lib/BryntumLabel.js +126 -0
  112. package/lib/BryntumLabel.js.map +1 -0
  113. package/lib/BryntumList.d.ts +205 -0
  114. package/lib/BryntumList.js +149 -0
  115. package/lib/BryntumList.js.map +1 -0
  116. package/lib/BryntumMenu.d.ts +264 -0
  117. package/lib/BryntumMenu.js +187 -0
  118. package/lib/BryntumMenu.js.map +1 -0
  119. package/lib/BryntumMonthPicker.d.ts +240 -0
  120. package/lib/BryntumMonthPicker.js +173 -0
  121. package/lib/BryntumMonthPicker.js.map +1 -0
  122. package/lib/BryntumNumberField.d.ts +234 -0
  123. package/lib/BryntumNumberField.js +170 -0
  124. package/lib/BryntumNumberField.js.map +1 -0
  125. package/lib/BryntumPagingToolbar.d.ts +210 -0
  126. package/lib/BryntumPagingToolbar.js +156 -0
  127. package/lib/BryntumPagingToolbar.js.map +1 -0
  128. package/lib/BryntumPanel.d.ts +231 -0
  129. package/lib/BryntumPanel.js +170 -0
  130. package/lib/BryntumPanel.js.map +1 -0
  131. package/lib/BryntumPasswordField.d.ts +226 -0
  132. package/lib/BryntumPasswordField.js +162 -0
  133. package/lib/BryntumPasswordField.js.map +1 -0
  134. package/lib/BryntumProjectCombo.d.ts +267 -0
  135. package/lib/BryntumProjectCombo.js +203 -0
  136. package/lib/BryntumProjectCombo.js.map +1 -0
  137. package/lib/BryntumRadio.d.ts +239 -0
  138. package/lib/BryntumRadio.js +168 -0
  139. package/lib/BryntumRadio.js.map +1 -0
  140. package/lib/BryntumRadioGroup.d.ts +239 -0
  141. package/lib/BryntumRadioGroup.js +178 -0
  142. package/lib/BryntumRadioGroup.js.map +1 -0
  143. package/lib/BryntumResourceCombo.d.ts +267 -0
  144. package/lib/BryntumResourceCombo.js +203 -0
  145. package/lib/BryntumResourceCombo.js.map +1 -0
  146. package/lib/BryntumResourceFilter.d.ts +214 -0
  147. package/lib/BryntumResourceFilter.js +154 -0
  148. package/lib/BryntumResourceFilter.js.map +1 -0
  149. package/lib/BryntumScheduler.d.ts +2037 -0
  150. package/lib/BryntumScheduler.js +642 -0
  151. package/lib/BryntumScheduler.js.map +1 -0
  152. package/lib/BryntumSchedulerBase.d.ts +2036 -0
  153. package/lib/BryntumSchedulerBase.js +641 -0
  154. package/lib/BryntumSchedulerBase.js.map +1 -0
  155. package/lib/BryntumSchedulerDatePicker.d.ts +313 -0
  156. package/lib/BryntumSchedulerDatePicker.js +216 -0
  157. package/lib/BryntumSchedulerDatePicker.js.map +1 -0
  158. package/lib/BryntumSchedulerProjectModel.d.ts +90 -0
  159. package/lib/BryntumSchedulerProjectModel.js +98 -0
  160. package/lib/BryntumSchedulerProjectModel.js.map +1 -0
  161. package/lib/BryntumSlideToggle.d.ts +239 -0
  162. package/lib/BryntumSlideToggle.js +168 -0
  163. package/lib/BryntumSlideToggle.js.map +1 -0
  164. package/lib/BryntumSlider.d.ts +184 -0
  165. package/lib/BryntumSlider.js +142 -0
  166. package/lib/BryntumSlider.js.map +1 -0
  167. package/lib/BryntumSplitter.d.ts +174 -0
  168. package/lib/BryntumSplitter.js +130 -0
  169. package/lib/BryntumSplitter.js.map +1 -0
  170. package/lib/BryntumTabPanel.d.ts +249 -0
  171. package/lib/BryntumTabPanel.js +178 -0
  172. package/lib/BryntumTabPanel.js.map +1 -0
  173. package/lib/BryntumTextAreaField.d.ts +228 -0
  174. package/lib/BryntumTextAreaField.js +164 -0
  175. package/lib/BryntumTextAreaField.js.map +1 -0
  176. package/lib/BryntumTextAreaPickerField.d.ts +232 -0
  177. package/lib/BryntumTextAreaPickerField.js +170 -0
  178. package/lib/BryntumTextAreaPickerField.js.map +1 -0
  179. package/lib/BryntumTextField.d.ts +229 -0
  180. package/lib/BryntumTextField.js +166 -0
  181. package/lib/BryntumTextField.js.map +1 -0
  182. package/lib/BryntumThemeCombo.d.ts +17 -0
  183. package/lib/BryntumThemeCombo.js +75 -0
  184. package/lib/BryntumThemeCombo.js.map +1 -0
  185. package/lib/BryntumTimeField.d.ts +238 -0
  186. package/lib/BryntumTimeField.js +175 -0
  187. package/lib/BryntumTimeField.js.map +1 -0
  188. package/lib/BryntumTimePicker.d.ts +192 -0
  189. package/lib/BryntumTimePicker.js +154 -0
  190. package/lib/BryntumTimePicker.js.map +1 -0
  191. package/lib/BryntumTimelineHistogram.d.ts +1183 -0
  192. package/lib/BryntumTimelineHistogram.js +448 -0
  193. package/lib/BryntumTimelineHistogram.js.map +1 -0
  194. package/lib/BryntumToolbar.d.ts +209 -0
  195. package/lib/BryntumToolbar.js +155 -0
  196. package/lib/BryntumToolbar.js.map +1 -0
  197. package/lib/BryntumTreeCombo.d.ts +266 -0
  198. package/lib/BryntumTreeCombo.js +202 -0
  199. package/lib/BryntumTreeCombo.js.map +1 -0
  200. package/lib/BryntumTreeGrid.d.ts +843 -0
  201. package/lib/BryntumTreeGrid.js +334 -0
  202. package/lib/BryntumTreeGrid.js.map +1 -0
  203. package/lib/BryntumUndoRedo.d.ts +189 -0
  204. package/lib/BryntumUndoRedo.js +152 -0
  205. package/lib/BryntumUndoRedo.js.map +1 -0
  206. package/lib/BryntumViewPresetCombo.d.ts +215 -0
  207. package/lib/BryntumViewPresetCombo.js +158 -0
  208. package/lib/BryntumViewPresetCombo.js.map +1 -0
  209. package/lib/BryntumWidget.d.ts +160 -0
  210. package/lib/BryntumWidget.js +125 -0
  211. package/lib/BryntumWidget.js.map +1 -0
  212. package/lib/BryntumYearPicker.d.ts +240 -0
  213. package/lib/BryntumYearPicker.js +177 -0
  214. package/lib/BryntumYearPicker.js.map +1 -0
  215. package/lib/WrapperHelper.d.ts +26 -0
  216. package/lib/WrapperHelper.js +569 -0
  217. package/lib/WrapperHelper.js.map +1 -0
  218. package/lib/index.d.ts +71 -0
  219. package/lib/index.js +72 -0
  220. package/lib/index.js.map +1 -0
  221. package/license.pdf +0 -0
  222. package/licenses.md +310 -0
  223. package/package.json +25 -0
  224. package/src/BryntumAIFilterField.tsx +998 -0
  225. package/src/BryntumButton.tsx +887 -0
  226. package/src/BryntumButtonGroup.tsx +902 -0
  227. package/src/BryntumChatPanel.tsx +1082 -0
  228. package/src/BryntumCheckbox.tsx +1000 -0
  229. package/src/BryntumCheckboxGroup.tsx +1116 -0
  230. package/src/BryntumChecklistFilterCombo.tsx +1241 -0
  231. package/src/BryntumChipView.tsx +914 -0
  232. package/src/BryntumCodeEditor.tsx +1065 -0
  233. package/src/BryntumColorField.tsx +995 -0
  234. package/src/BryntumCombo.tsx +1230 -0
  235. package/src/BryntumContainer.tsx +861 -0
  236. package/src/BryntumDateField.tsx +1055 -0
  237. package/src/BryntumDatePicker.tsx +1340 -0
  238. package/src/BryntumDateRangeField.tsx +1057 -0
  239. package/src/BryntumDateTimeField.tsx +942 -0
  240. package/src/BryntumDemoCodeEditor.tsx +1081 -0
  241. package/src/BryntumDemoHeader.tsx +160 -0
  242. package/src/BryntumDisplayField.tsx +979 -0
  243. package/src/BryntumDurationField.tsx +1038 -0
  244. package/src/BryntumEditor.tsx +1013 -0
  245. package/src/BryntumEventColorField.tsx +995 -0
  246. package/src/BryntumFieldFilterPicker.tsx +943 -0
  247. package/src/BryntumFieldFilterPickerGroup.tsx +976 -0
  248. package/src/BryntumFieldSet.tsx +1058 -0
  249. package/src/BryntumFileField.tsx +982 -0
  250. package/src/BryntumFilePicker.tsx +888 -0
  251. package/src/BryntumFilterField.tsx +1023 -0
  252. package/src/BryntumFullscreenButton.tsx +45 -0
  253. package/src/BryntumGrid.tsx +2402 -0
  254. package/src/BryntumGridBase.tsx +2399 -0
  255. package/src/BryntumGridChartDesigner.tsx +728 -0
  256. package/src/BryntumGridFieldFilterPicker.tsx +956 -0
  257. package/src/BryntumGridFieldFilterPickerGroup.tsx +970 -0
  258. package/src/BryntumGroupBar.tsx +914 -0
  259. package/src/BryntumHint.tsx +1125 -0
  260. package/src/BryntumLabel.tsx +720 -0
  261. package/src/BryntumList.tsx +891 -0
  262. package/src/BryntumMenu.tsx +1143 -0
  263. package/src/BryntumMonthPicker.tsx +1056 -0
  264. package/src/BryntumNumberField.tsx +1025 -0
  265. package/src/BryntumPagingToolbar.tsx +924 -0
  266. package/src/BryntumPanel.tsx +1035 -0
  267. package/src/BryntumPasswordField.tsx +969 -0
  268. package/src/BryntumProjectCombo.tsx +1232 -0
  269. package/src/BryntumRadio.tsx +1000 -0
  270. package/src/BryntumRadioGroup.tsx +1088 -0
  271. package/src/BryntumResourceCombo.tsx +1235 -0
  272. package/src/BryntumResourceFilter.tsx +930 -0
  273. package/src/BryntumScheduler.tsx +5182 -0
  274. package/src/BryntumSchedulerBase.tsx +5180 -0
  275. package/src/BryntumSchedulerDatePicker.tsx +1364 -0
  276. package/src/BryntumSchedulerProjectModel.tsx +423 -0
  277. package/src/BryntumSlideToggle.tsx +1000 -0
  278. package/src/BryntumSlider.tsx +815 -0
  279. package/src/BryntumSplitter.tsx +754 -0
  280. package/src/BryntumTabPanel.tsx +1087 -0
  281. package/src/BryntumTextAreaField.tsx +981 -0
  282. package/src/BryntumTextAreaPickerField.tsx +1002 -0
  283. package/src/BryntumTextField.tsx +987 -0
  284. package/src/BryntumThemeCombo.tsx +101 -0
  285. package/src/BryntumTimeField.tsx +1036 -0
  286. package/src/BryntumTimePicker.tsx +893 -0
  287. package/src/BryntumTimelineHistogram.tsx +3425 -0
  288. package/src/BryntumToolbar.tsx +917 -0
  289. package/src/BryntumTreeCombo.tsx +1230 -0
  290. package/src/BryntumTreeGrid.tsx +2401 -0
  291. package/src/BryntumUndoRedo.tsx +885 -0
  292. package/src/BryntumViewPresetCombo.tsx +914 -0
  293. package/src/BryntumWidget.tsx +715 -0
  294. package/src/BryntumYearPicker.tsx +1070 -0
  295. package/src/WrapperHelper.tsx +1125 -0
  296. package/src/index.ts +76 -0
@@ -0,0 +1,423 @@
1
+ /**
2
+ * React wrapper for Bryntum ProjectModel
3
+ */
4
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
5
+ import React, { RefObject } from 'react';
6
+ import { AssignmentModel, AssignmentModelConfig, AssignmentStore, AssignmentStoreConfig, DependencyModel, DependencyModelConfig, DependencyStore, DependencyStoreConfig, EventModel, EventModelConfig, EventStore, EventStoreConfig, Model, ModelConfig, ProjectModel, ResourceModel, ResourceModelConfig, ResourceStore, ResourceStoreConfig, ResourceTimeRangeModel, ResourceTimeRangeModelConfig, ResourceTimeRangeStore, ResourceTimeRangeStoreConfig, StateTrackingManager, StateTrackingManagerConfig, Store, StoreConfig, TimeRangeModel, TimeRangeModelConfig, TimeRangeStore, TimeSpan } from '@bryntum/scheduler';
7
+
8
+ import { createWidget, shouldComponentUpdate, processWidgetContent } from './WrapperHelper.js';
9
+
10
+ export type BryntumSchedulerProjectModelProps = {
11
+ // Configs
12
+ /**
13
+ * A flag, indicating whether the dates and duration calculations should adjust the result to DST time shift.
14
+ */
15
+ adjustDurationToDST? : boolean
16
+ /**
17
+ * The constructor of the assignment model class, to be used in the project. Will be set as the
18
+ * [modelClass](https://bryntum.com/products/scheduler/docs/api/Core/data/Store#config-modelClass) property of the [assignmentStore](#Scheduler/model/ProjectModel#property-assignmentStore)
19
+ */
20
+ assignmentModelClass? : typeof AssignmentModel
21
+ /**
22
+ * Data use to fill the [assignmentStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#property-assignmentStore). Should be an array of
23
+ * [AssignmentModels](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/AssignmentModel) or its configuration objects.
24
+ */
25
+ assignments? : AssignmentModel[]|AssignmentModelConfig[]
26
+ /**
27
+ * The initial data, to fill the [assignmentStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#property-assignmentStore) with.
28
+ * Should be an array of [AssignmentModels](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/AssignmentModel) or its configuration
29
+ * objects.
30
+ * @deprecated 6.3.0 Use [assignments](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#config-assignments) instead
31
+ */
32
+ assignmentsData? : AssignmentModel[]|AssignmentModelConfig[]
33
+ /**
34
+ * An [AssignmentStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/data/AssignmentStore) instance or a config object.
35
+ */
36
+ assignmentStore? : AssignmentStore|AssignmentStoreConfig
37
+ /**
38
+ * The constructor to create an assignment store instance with. Should be a class, subclassing the
39
+ * [AssignmentStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/data/AssignmentStore)
40
+ */
41
+ assignmentStoreClass? : typeof AssignmentStore|object
42
+ /**
43
+ * Child nodes. To allow loading children on demand, specify `children : true` in your data. Omit the field for leaf
44
+ * tasks.
45
+ * ...
46
+ * [View online docs...](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#config-children)
47
+ */
48
+ children? : boolean|object[]|Model[]|ModelConfig[]
49
+ /**
50
+ * Data use to fill the [dependencyStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#property-dependencyStore). Should be an array of
51
+ * [DependencyModels](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/DependencyModel) or its configuration objects.
52
+ */
53
+ dependencies? : DependencyModel[]|DependencyModelConfig[]
54
+ /**
55
+ * The initial data, to fill the [dependencyStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#property-dependencyStore) with.
56
+ * Should be an array of [DependencyModels](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/DependencyModel) or its configuration
57
+ * objects.
58
+ * @deprecated 6.3.0 Use [dependencies](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#config-dependencies) instead
59
+ */
60
+ dependenciesData? : DependencyModel[]|DependencyModelConfig[]
61
+ /**
62
+ * The constructor of the dependency model class, to be used in the project. Will be set as the
63
+ * [modelClass](https://bryntum.com/products/scheduler/docs/api/Core/data/Store#config-modelClass) property of the [dependencyStore](#Scheduler/model/ProjectModel#property-dependencyStore)
64
+ */
65
+ dependencyModelClass? : typeof DependencyModel
66
+ /**
67
+ * A [DependencyStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/data/DependencyStore) instance or a config object.
68
+ */
69
+ dependencyStore? : DependencyStore|DependencyStoreConfig
70
+ /**
71
+ * The constructor to create a dependency store instance with. Should be a class, subclassing the
72
+ * [DependencyStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/data/DependencyStore)
73
+ */
74
+ dependencyStoreClass? : typeof DependencyStore|object
75
+ /**
76
+ * The constructor of the event model class, to be used in the project. Will be set as the
77
+ * [modelClass](https://bryntum.com/products/scheduler/docs/api/Core/data/Store#config-modelClass) property of the [eventStore](#Scheduler/model/ProjectModel#property-eventStore)
78
+ */
79
+ eventModelClass? : typeof EventModel
80
+ /**
81
+ * Data use to fill the [eventStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#property-eventStore). Should be an array of
82
+ * [EventModels](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/EventModel) or its configuration objects.
83
+ */
84
+ events? : EventModel[]|EventModelConfig[]
85
+ /**
86
+ * The initial data, to fill the [eventStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#property-eventStore) with.
87
+ * Should be an array of [EventModels](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/EventModel) or its configuration objects.
88
+ * @deprecated 6.3.0 Use [events](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#config-events) instead
89
+ */
90
+ eventsData? : EventModel[]|EventModelConfig[]
91
+ /**
92
+ * An [EventStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/data/EventStore) instance or a config object.
93
+ */
94
+ eventStore? : EventStore|EventStoreConfig
95
+ /**
96
+ * The constructor to create an event store instance with. Should be a class, subclassing the
97
+ * [EventStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/data/EventStore)
98
+ */
99
+ eventStoreClass? : typeof EventStore|object
100
+ /**
101
+ * Start expanded or not (only valid for tree data)
102
+ */
103
+ expanded? : boolean
104
+ /**
105
+ * Unique identifier for the record. Might be mapped to another dataSource using idField, but always exposed as
106
+ * record.id. Will get a generated value if none is specified in records data.
107
+ * ...
108
+ * [View online docs...](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#config-id)
109
+ */
110
+ id? : string|number
111
+ /**
112
+ * Whether to include legacy data properties in the JSON / inlineData output. The legacy data properties are
113
+ * the `xxData` (`eventsData`, `resourcesData` etc.) properties that are deprecated and will be removed in
114
+ * the future.
115
+ * @deprecated 6.3.0 This config will be removed when the eventsData, resourcesData etc. properties are removed in a future release.
116
+ */
117
+ includeLegacyDataProperties? : boolean
118
+ /**
119
+ * This field is added to the class at runtime when the Store is configured with
120
+ * [lazyLoad](https://bryntum.com/products/scheduler/docs/api/Core/data/Store#config-lazyLoad). If set on a parent record at load time, that parent will not cause any
121
+ * more child load requests. If omitted, it will be automatically set to `true` when a load request receives fewer
122
+ * child records than requested.
123
+ * ...
124
+ * [View online docs...](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#config-isFullyLoaded)
125
+ */
126
+ isFullyLoaded? : boolean
127
+ /**
128
+ * Project data as a JSON string, used to populate its stores.
129
+ * ...
130
+ * [View online docs...](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#config-json)
131
+ */
132
+ json? : string
133
+ /**
134
+ * This is a read-only field provided in server synchronization packets to specify
135
+ * which position the node takes in the parent's ordered children array.
136
+ * This index is set on load and gets updated on reordering nodes in tree. Sorting and filtering
137
+ * have no effect on it.
138
+ */
139
+ orderedParentIndex? : number
140
+ /**
141
+ * This is a read-only field provided in server synchronization packets to specify
142
+ * which record id is the parent of the record.
143
+ */
144
+ parentId? : string|number|null
145
+ /**
146
+ * This is a read-only field provided in server synchronization packets to specify
147
+ * which position the node takes in the parent's children array.
148
+ * This index is set on load and gets updated automatically after row reordering, sorting, etc.
149
+ * To save the order, need to persist the field on the server and when data is fetched to be loaded,
150
+ * need to sort by this field.
151
+ */
152
+ parentIndex? : number
153
+ /**
154
+ * Flag the record as read-only on the UI level, preventing the end user from manipulating it using editing
155
+ * features such as cell editing and event dragging.
156
+ * ...
157
+ * [View online docs...](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#config-readOnly)
158
+ */
159
+ readOnly? : boolean
160
+ /**
161
+ * This field is added to the class at runtime when the Store is configured with
162
+ * [lazyLoad](https://bryntum.com/products/scheduler/docs/api/Core/data/Store#config-lazyLoad). The
163
+ * number specified should reflect the <strong>total</strong> amount of children of a parent node, including nested descendants.
164
+ * @deprecated This field has been deprecated. Please read the [guide](https://bryntum.com/products/scheduler/docs/api/Grid/guides/data/lazyloading.md) to find out if your app needs to use the new [isFullyLoaded](https://bryntum.com/products/scheduler/docs/api/Core/data/mixin/TreeNode#field-isFullyLoaded) field.
165
+ */
166
+ remoteChildCount? : number
167
+ /**
168
+ * The constructor of the resource model class, to be used in the project. Will be set as the
169
+ * [modelClass](https://bryntum.com/products/scheduler/docs/api/Core/data/Store#config-modelClass) property of the [resourceStore](#Scheduler/model/ProjectModel#property-resourceStore)
170
+ */
171
+ resourceModelClass? : typeof ResourceModel
172
+ /**
173
+ * Data use to fill the [resourceStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#property-resourceStore). Should be an array of
174
+ * [ResourceModels](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ResourceModel) or its configuration objects.
175
+ */
176
+ resources? : ResourceModel[]|ResourceModelConfig[]
177
+ /**
178
+ * The initial data, to fill the [resourceStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#property-resourceStore) with.
179
+ * Should be an array of [ResourceModels](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ResourceModel) or its configuration objects.
180
+ * @deprecated 6.3.0 Use [resources](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#config-resources) instead
181
+ */
182
+ resourcesData? : ResourceModel[]|ResourceModelConfig[]
183
+ /**
184
+ * A [ResourceStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/data/ResourceStore) instance or a config object.
185
+ */
186
+ resourceStore? : ResourceStore|ResourceStoreConfig
187
+ /**
188
+ * The constructor to create a resource store instance with. Should be a class, subclassing the
189
+ * [ResourceStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/data/ResourceStore)
190
+ */
191
+ resourceStoreClass? : typeof ResourceStore|object
192
+ /**
193
+ * Data use to fill the [resourceTimeRangeStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#property-resourceTimeRangeStore). Should be an array
194
+ * of [ResourceTimeRangeModels](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ResourceTimeRangeModel) or its configuration objects.
195
+ */
196
+ resourceTimeRanges? : ResourceTimeRangeModel[]|ResourceTimeRangeModelConfig[]
197
+ /**
198
+ * The initial data, to fill the [resourceTimeRangeStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/mixin/ProjectModelMixin#property-resourceTimeRangeStore) with.
199
+ * Should be an array of [ResourceTimeRangeModel](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ResourceTimeRangeModel) or it's
200
+ * configuration objects.
201
+ * @deprecated 6.3.0 Use resourceTimeRanges instead
202
+ */
203
+ resourceTimeRangesData? : ResourceTimeRangeModel[]
204
+ /**
205
+ * A [ResourceTimeRangeStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/data/ResourceTimeRangeStore) instance or a config object.
206
+ */
207
+ resourceTimeRangeStore? : ResourceTimeRangeStore|ResourceTimeRangeStoreConfig
208
+ /**
209
+ * The constructor to create a resource time range store instance with. Should be a class subclassing the
210
+ * [ResourceTimeRangeStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/data/ResourceTimeRangeStore)
211
+ */
212
+ resourceTimeRangeStoreClass? : typeof ResourceTimeRangeStore|object
213
+ /**
214
+ * Experimental hook that lets the app determine if a bound dataset needs syncing with the store or not, and
215
+ * if it does - which records that should be processed. Only called for stores that are configured with
216
+ * `syncDataOnLoad: true` (which is the default in the React, Angular and Vue wrappers).
217
+ * ...
218
+ * [View online docs...](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#config-shouldSyncDataOnLoad)
219
+ * @param {object} options Options passed by the store to this hook
220
+ * @param {Core.data.Store} options.store Store about to be synced
221
+ * @param {Core.data.Model} options.records Records currently in the store
222
+ * @param {object[]} options.data Incoming data
223
+ * @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)
224
+ */
225
+ shouldSyncDataOnLoad? : (options: { store: Store, records: Model, data: object[] }) => Set<any>|boolean
226
+ /**
227
+ * Silences propagations caused by the project loading.
228
+ * ...
229
+ * [View online docs...](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#config-silenceInitialCommit)
230
+ */
231
+ silenceInitialCommit? : boolean
232
+ /**
233
+ * Configuration options to provide to the STM manager
234
+ */
235
+ stm? : StateTrackingManagerConfig|StateTrackingManager
236
+ /**
237
+ * Data use to fill the [timeRangeStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#property-timeRangeStore). Should be an array of
238
+ * [TimeRangeModels](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/TimeRangeModel) or its configuration objects.
239
+ */
240
+ timeRanges? : TimeRangeModel[]|TimeRangeModelConfig[]
241
+ /**
242
+ * The initial data, to fill the [timeRangeStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/mixin/ProjectModelMixin#property-timeRangeStore) with.
243
+ * Should be an array of [TimeSpan](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/TimeSpan) or its configuration objects.
244
+ * @deprecated 6.3.0 Use timeRanges instead
245
+ */
246
+ timeRangesData? : TimeSpan[]
247
+ /**
248
+ * A [Store](https://bryntum.com/products/scheduler/docs/api/Core/data/Store) instance or a config object.
249
+ */
250
+ timeRangeStore? : Store|StoreConfig
251
+ /**
252
+ * The constructor to create a time range store instance with. Should be a class subclassing the
253
+ * [TimeRangeStore](https://bryntum.com/products/scheduler/docs/api/Scheduler/data/TimeRangeStore)
254
+ */
255
+ timeRangeStoreClass? : typeof TimeRangeStore|object
256
+ /**
257
+ * Set to a IANA time zone (i.e. `Europe/Stockholm`) or a UTC offset in minutes (i.e. `-120`). This will
258
+ * convert all events, tasks and time ranges to the specified time zone or offset. It will also affect the
259
+ * displayed timeline's headers as well at the start and end date of it.
260
+ * ...
261
+ * [View online docs...](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#config-timeZone)
262
+ */
263
+ timeZone? : string|number
264
+ /**
265
+ * Specifies the output format of [toJSON](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/mixin/ProjectModelCommon#function-toJSON).
266
+ * ...
267
+ * [View online docs...](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#config-toJSONResultFormat)
268
+ */
269
+ toJSONResultFormat? : 'inlineData'|'model'
270
+ /**
271
+ * By default, the stores of a project use the raw data objects passed to them as the data source for their
272
+ * records if data is loaded remotely (using an `AjaxStore` or a `CrudManager`). For data supplied inline,
273
+ * the data objects are instead by default cloned to avoid the original data object being modified by the
274
+ * store.
275
+ * ...
276
+ * [View online docs...](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#config-useRawData)
277
+ */
278
+ useRawData? : boolean
279
+
280
+ // Events
281
+ /**
282
+ * Fired when data in any of the projects stores changes.
283
+ * ...
284
+ * [View online docs...](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#event-change)
285
+ * @param {object} event Event object
286
+ * @param {Scheduler.model.ProjectModel,any} event.source This project
287
+ * @param {Core.data.Store} event.store Affected store
288
+ * @param {'remove','removeAll','add','clearchanges','filter','update','dataset','replace'} event.action Name of action which triggered the change. May be one of: * `'remove'` * `'removeAll'` * `'add'` * `'clearchanges'` * `'filter'` * `'update'` * `'dataset'` * `'replace'`
289
+ * @param {Core.data.Model} event.record Changed record, for actions that affects exactly one record (`'update'`)
290
+ * @param {Core.data.Model[]} event.records Changed records, passed for all actions except `'removeAll'`
291
+ * @param {object} event.changes Passed for the `'update'` action, info on which record fields changed
292
+ */
293
+ onChange? : ((event: { source: ProjectModel|any, store: Store, action: 'remove'|'removeAll'|'add'|'clearchanges'|'filter'|'update'|'dataset'|'replace', record: Model, records: Model[], changes: object }) => void)|string
294
+ /**
295
+ * Fired when the engine has finished its calculations and the results has been written back to the records.
296
+ * ...
297
+ * [View online docs...](https://bryntum.com/products/scheduler/docs/api/Scheduler/model/ProjectModel#event-dataReady)
298
+ * @param {object} event Event object
299
+ * @param {Scheduler.model.ProjectModel,any} event.source The project
300
+ * @param {boolean} event.isInitialCommit Flag that shows if this commit is initial
301
+ * @param {Set<any>} event.records Set of all [Model](https://bryntum.com/products/scheduler/docs/api/Core/data/Model)s that were modified in the completed transaction. Use the [modifications](https://bryntum.com/products/scheduler/docs/api/Core/data/Model#property-modifications) property of each Model to identify modified fields.
302
+ */
303
+ onDataReady? : ((event: { source: ProjectModel|any, isInitialCommit: boolean, records: Set<any> }) => void)|string
304
+
305
+ }
306
+
307
+ export class BryntumSchedulerProjectModel extends React.Component<BryntumSchedulerProjectModelProps> {
308
+
309
+ static instanceClass = ProjectModel;
310
+
311
+ static instanceName = 'ProjectModel';
312
+
313
+ processWidgetContent = processWidgetContent;
314
+
315
+ dataStores = {
316
+ 'assignmentStore': 'assignments',
317
+ 'dependencyStore': 'dependencies',
318
+ 'eventStore': 'events',
319
+ 'resourceStore': 'resources',
320
+ 'resourceTimeRangeStore': 'resourceTimeRanges',
321
+ 'timeRangeStore': 'timeRanges'
322
+ };
323
+
324
+ static configNames = [
325
+ 'adjustDurationToDST',
326
+ 'assignmentModelClass',
327
+ 'assignmentsData',
328
+ 'assignmentStoreClass',
329
+ 'children',
330
+ 'dependenciesData',
331
+ 'dependencyModelClass',
332
+ 'dependencyStoreClass',
333
+ 'eventModelClass',
334
+ 'eventsData',
335
+ 'eventStoreClass',
336
+ 'expanded',
337
+ 'orderedParentIndex',
338
+ 'parentIndex',
339
+ 'resourceModelClass',
340
+ 'resourcesData',
341
+ 'resourceStoreClass',
342
+ 'resourceTimeRangesData',
343
+ 'resourceTimeRangeStoreClass',
344
+ 'silenceInitialCommit',
345
+ 'timeRangesData',
346
+ 'timeRangeStoreClass',
347
+ 'toJSONResultFormat',
348
+ 'useRawData'
349
+ ];
350
+
351
+ static propertyConfigNames = [
352
+ 'assignments',
353
+ 'assignmentStore',
354
+ 'dependencies',
355
+ 'dependencyStore',
356
+ 'events',
357
+ 'eventStore',
358
+ 'id',
359
+ 'includeLegacyDataProperties',
360
+ 'isFullyLoaded',
361
+ 'json',
362
+ 'onChange',
363
+ 'onDataReady',
364
+ 'parentId',
365
+ 'readOnly',
366
+ 'remoteChildCount',
367
+ 'resources',
368
+ 'resourceStore',
369
+ 'resourceTimeRanges',
370
+ 'resourceTimeRangeStore',
371
+ 'shouldSyncDataOnLoad',
372
+ 'stm',
373
+ 'timeRanges',
374
+ 'timeRangeStore',
375
+ 'timeZone'
376
+ ];
377
+
378
+ static propertyNames = [
379
+ 'allChildren',
380
+ 'allUnfilteredChildren',
381
+ 'descendantCount',
382
+ 'hasGeneratedId',
383
+ 'inlineData',
384
+ 'internalId',
385
+ 'isCommitting',
386
+ 'isCreating',
387
+ 'isValid',
388
+ 'previousSiblingsTotalCount',
389
+ 'visibleDescendantCount'
390
+ ];
391
+
392
+ // Component instance
393
+ instance!: ProjectModel;
394
+
395
+ // Component element
396
+ element! : HTMLElement;
397
+
398
+ componentDidMount(): void {
399
+ this.instance = createWidget(this);
400
+ }
401
+
402
+ componentWillUnmount(): void {
403
+ // @ts-ignore
404
+ this.instance?.destroy?.();
405
+ }
406
+
407
+ /**
408
+ * Component about to be updated, from changing a prop using state.
409
+ * React to it depending on what changed and prevent react from re-rendering our component.
410
+ * @param nextProps
411
+ * @param nextState
412
+ * @returns {boolean}
413
+ */
414
+ shouldComponentUpdate(nextProps: Readonly<BryntumSchedulerProjectModelProps>, nextState: Readonly<{}>): boolean {
415
+ return shouldComponentUpdate(this, nextProps, nextState);
416
+ }
417
+
418
+ render(): React.ReactNode {
419
+
420
+ return null
421
+
422
+ }
423
+ }