tm1npm 1.0.0

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 (451) hide show
  1. package/.env.example +16 -0
  2. package/.eslintrc.js +28 -0
  3. package/.github/ISSUE_TEMPLATE/bug_report.md +36 -0
  4. package/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  5. package/.github/ISSUE_TEMPLATE/question.md +24 -0
  6. package/.github/workflows/publish-npm.yml +53 -0
  7. package/.github/workflows/test-on-tag.yml +172 -0
  8. package/DEVELOPMENT_GUIDE.md +587 -0
  9. package/LICENSE +21 -0
  10. package/README.md +580 -0
  11. package/jest.ci.config.js +83 -0
  12. package/jest.config.js +68 -0
  13. package/lib/exceptions/TM1Exception.d.ts +17 -0
  14. package/lib/exceptions/TM1Exception.d.ts.map +1 -0
  15. package/lib/exceptions/TM1Exception.js +36 -0
  16. package/lib/exceptions/TM1RestException.d.ts +10 -0
  17. package/lib/exceptions/TM1RestException.d.ts.map +1 -0
  18. package/lib/exceptions/TM1RestException.js +17 -0
  19. package/lib/exceptions/TM1TimeoutException.d.ts +9 -0
  20. package/lib/exceptions/TM1TimeoutException.d.ts.map +1 -0
  21. package/lib/exceptions/TM1TimeoutException.js +16 -0
  22. package/lib/index.d.ts +41 -0
  23. package/lib/index.d.ts.map +1 -0
  24. package/lib/index.js +132 -0
  25. package/lib/objects/Annotation.d.ts +36 -0
  26. package/lib/objects/Annotation.d.ts.map +1 -0
  27. package/lib/objects/Annotation.js +134 -0
  28. package/lib/objects/Application.d.ts +67 -0
  29. package/lib/objects/Application.d.ts.map +1 -0
  30. package/lib/objects/Application.js +125 -0
  31. package/lib/objects/Axis.d.ts +36 -0
  32. package/lib/objects/Axis.d.ts.map +1 -0
  33. package/lib/objects/Axis.js +103 -0
  34. package/lib/objects/Chore.d.ts +43 -0
  35. package/lib/objects/Chore.d.ts.map +1 -0
  36. package/lib/objects/Chore.js +129 -0
  37. package/lib/objects/ChoreFrequency.d.ts +23 -0
  38. package/lib/objects/ChoreFrequency.d.ts.map +1 -0
  39. package/lib/objects/ChoreFrequency.js +61 -0
  40. package/lib/objects/ChoreStartTime.d.ts +15 -0
  41. package/lib/objects/ChoreStartTime.d.ts.map +1 -0
  42. package/lib/objects/ChoreStartTime.js +85 -0
  43. package/lib/objects/ChoreTask.d.ts +28 -0
  44. package/lib/objects/ChoreTask.d.ts.map +1 -0
  45. package/lib/objects/ChoreTask.js +66 -0
  46. package/lib/objects/Cube.d.ts +26 -0
  47. package/lib/objects/Cube.d.ts.map +1 -0
  48. package/lib/objects/Cube.js +109 -0
  49. package/lib/objects/Dimension.d.ts +26 -0
  50. package/lib/objects/Dimension.d.ts.map +1 -0
  51. package/lib/objects/Dimension.js +86 -0
  52. package/lib/objects/Element.d.ts +35 -0
  53. package/lib/objects/Element.d.ts.map +1 -0
  54. package/lib/objects/Element.js +115 -0
  55. package/lib/objects/ElementAttribute.d.ts +28 -0
  56. package/lib/objects/ElementAttribute.d.ts.map +1 -0
  57. package/lib/objects/ElementAttribute.js +97 -0
  58. package/lib/objects/Git.d.ts +21 -0
  59. package/lib/objects/Git.d.ts.map +1 -0
  60. package/lib/objects/Git.js +49 -0
  61. package/lib/objects/GitCommit.d.ts +12 -0
  62. package/lib/objects/GitCommit.d.ts.map +1 -0
  63. package/lib/objects/GitCommit.js +26 -0
  64. package/lib/objects/GitPlan.d.ts +35 -0
  65. package/lib/objects/GitPlan.d.ts.map +1 -0
  66. package/lib/objects/GitPlan.js +78 -0
  67. package/lib/objects/GitRemote.d.ts +12 -0
  68. package/lib/objects/GitRemote.d.ts.map +1 -0
  69. package/lib/objects/GitRemote.js +26 -0
  70. package/lib/objects/Hierarchy.d.ts +47 -0
  71. package/lib/objects/Hierarchy.d.ts.map +1 -0
  72. package/lib/objects/Hierarchy.js +165 -0
  73. package/lib/objects/MDXView.d.ts +19 -0
  74. package/lib/objects/MDXView.d.ts.map +1 -0
  75. package/lib/objects/MDXView.js +67 -0
  76. package/lib/objects/NativeView.d.ts +39 -0
  77. package/lib/objects/NativeView.d.ts.map +1 -0
  78. package/lib/objects/NativeView.js +209 -0
  79. package/lib/objects/Process.d.ts +70 -0
  80. package/lib/objects/Process.d.ts.map +1 -0
  81. package/lib/objects/Process.js +210 -0
  82. package/lib/objects/ProcessDebugBreakpoint.d.ts +60 -0
  83. package/lib/objects/ProcessDebugBreakpoint.d.ts.map +1 -0
  84. package/lib/objects/ProcessDebugBreakpoint.js +168 -0
  85. package/lib/objects/ProcessParameter.d.ts +23 -0
  86. package/lib/objects/ProcessParameter.d.ts.map +1 -0
  87. package/lib/objects/ProcessParameter.js +55 -0
  88. package/lib/objects/ProcessVariable.d.ts +26 -0
  89. package/lib/objects/ProcessVariable.d.ts.map +1 -0
  90. package/lib/objects/ProcessVariable.js +63 -0
  91. package/lib/objects/Rules.d.ts +30 -0
  92. package/lib/objects/Rules.d.ts.map +1 -0
  93. package/lib/objects/Rules.js +103 -0
  94. package/lib/objects/Sandbox.d.ts +21 -0
  95. package/lib/objects/Sandbox.d.ts.map +1 -0
  96. package/lib/objects/Sandbox.js +64 -0
  97. package/lib/objects/Server.d.ts +27 -0
  98. package/lib/objects/Server.d.ts.map +1 -0
  99. package/lib/objects/Server.js +26 -0
  100. package/lib/objects/Subset.d.ts +44 -0
  101. package/lib/objects/Subset.d.ts.map +1 -0
  102. package/lib/objects/Subset.js +222 -0
  103. package/lib/objects/TM1Object.d.ts +8 -0
  104. package/lib/objects/TM1Object.d.ts.map +1 -0
  105. package/lib/objects/TM1Object.js +17 -0
  106. package/lib/objects/TM1Project.d.ts +74 -0
  107. package/lib/objects/TM1Project.d.ts.map +1 -0
  108. package/lib/objects/TM1Project.js +409 -0
  109. package/lib/objects/User.d.ts +42 -0
  110. package/lib/objects/User.d.ts.map +1 -0
  111. package/lib/objects/User.js +157 -0
  112. package/lib/objects/View.d.ts +19 -0
  113. package/lib/objects/View.d.ts.map +1 -0
  114. package/lib/objects/View.js +33 -0
  115. package/lib/objects/index.d.ts +30 -0
  116. package/lib/objects/index.d.ts.map +1 -0
  117. package/lib/objects/index.js +68 -0
  118. package/lib/services/AnnotationService.d.ts +17 -0
  119. package/lib/services/AnnotationService.d.ts.map +1 -0
  120. package/lib/services/AnnotationService.js +91 -0
  121. package/lib/services/ApplicationService.d.ts +21 -0
  122. package/lib/services/ApplicationService.d.ts.map +1 -0
  123. package/lib/services/ApplicationService.js +227 -0
  124. package/lib/services/AuditLogService.d.ts +15 -0
  125. package/lib/services/AuditLogService.d.ts.map +1 -0
  126. package/lib/services/AuditLogService.js +153 -0
  127. package/lib/services/CellService.d.ts +191 -0
  128. package/lib/services/CellService.d.ts.map +1 -0
  129. package/lib/services/CellService.js +597 -0
  130. package/lib/services/ChoreService.d.ts +24 -0
  131. package/lib/services/ChoreService.d.ts.map +1 -0
  132. package/lib/services/ChoreService.js +219 -0
  133. package/lib/services/ConfigurationService.d.ts +18 -0
  134. package/lib/services/ConfigurationService.d.ts.map +1 -0
  135. package/lib/services/ConfigurationService.js +60 -0
  136. package/lib/services/CubeService.d.ts +43 -0
  137. package/lib/services/CubeService.d.ts.map +1 -0
  138. package/lib/services/CubeService.js +296 -0
  139. package/lib/services/DimensionService.d.ts +21 -0
  140. package/lib/services/DimensionService.d.ts.map +1 -0
  141. package/lib/services/DimensionService.js +146 -0
  142. package/lib/services/ElementService.d.ts +132 -0
  143. package/lib/services/ElementService.d.ts.map +1 -0
  144. package/lib/services/ElementService.js +579 -0
  145. package/lib/services/FileService.d.ts +14 -0
  146. package/lib/services/FileService.d.ts.map +1 -0
  147. package/lib/services/FileService.js +65 -0
  148. package/lib/services/GitService.d.ts +23 -0
  149. package/lib/services/GitService.d.ts.map +1 -0
  150. package/lib/services/GitService.js +225 -0
  151. package/lib/services/HierarchyService.d.ts +32 -0
  152. package/lib/services/HierarchyService.d.ts.map +1 -0
  153. package/lib/services/HierarchyService.js +235 -0
  154. package/lib/services/JobService.d.ts +13 -0
  155. package/lib/services/JobService.d.ts.map +1 -0
  156. package/lib/services/JobService.js +83 -0
  157. package/lib/services/LoggerService.d.ts +16 -0
  158. package/lib/services/LoggerService.d.ts.map +1 -0
  159. package/lib/services/LoggerService.js +101 -0
  160. package/lib/services/ManageService.d.ts +47 -0
  161. package/lib/services/ManageService.d.ts.map +1 -0
  162. package/lib/services/ManageService.js +221 -0
  163. package/lib/services/MessageLogService.d.ts +13 -0
  164. package/lib/services/MessageLogService.d.ts.map +1 -0
  165. package/lib/services/MessageLogService.js +175 -0
  166. package/lib/services/MonitoringService.d.ts +29 -0
  167. package/lib/services/MonitoringService.d.ts.map +1 -0
  168. package/lib/services/MonitoringService.js +86 -0
  169. package/lib/services/ObjectService.d.ts +8 -0
  170. package/lib/services/ObjectService.d.ts.map +1 -0
  171. package/lib/services/ObjectService.js +20 -0
  172. package/lib/services/PowerBiService.d.ts +13 -0
  173. package/lib/services/PowerBiService.d.ts.map +1 -0
  174. package/lib/services/PowerBiService.js +52 -0
  175. package/lib/services/ProcessService.d.ts +57 -0
  176. package/lib/services/ProcessService.d.ts.map +1 -0
  177. package/lib/services/ProcessService.js +499 -0
  178. package/lib/services/RestService.d.ts +68 -0
  179. package/lib/services/RestService.d.ts.map +1 -0
  180. package/lib/services/RestService.js +166 -0
  181. package/lib/services/SandboxService.d.ts +28 -0
  182. package/lib/services/SandboxService.d.ts.map +1 -0
  183. package/lib/services/SandboxService.js +197 -0
  184. package/lib/services/SecurityService.d.ts +33 -0
  185. package/lib/services/SecurityService.d.ts.map +1 -0
  186. package/lib/services/SecurityService.js +249 -0
  187. package/lib/services/ServerService.d.ts +55 -0
  188. package/lib/services/ServerService.d.ts.map +1 -0
  189. package/lib/services/ServerService.js +247 -0
  190. package/lib/services/SessionService.d.ts +15 -0
  191. package/lib/services/SessionService.d.ts.map +1 -0
  192. package/lib/services/SessionService.js +68 -0
  193. package/lib/services/SubsetService.d.ts +13 -0
  194. package/lib/services/SubsetService.d.ts.map +1 -0
  195. package/lib/services/SubsetService.js +46 -0
  196. package/lib/services/TM1Service.d.ts +39 -0
  197. package/lib/services/TM1Service.d.ts.map +1 -0
  198. package/lib/services/TM1Service.js +94 -0
  199. package/lib/services/ThreadService.d.ts +15 -0
  200. package/lib/services/ThreadService.d.ts.map +1 -0
  201. package/lib/services/ThreadService.js +104 -0
  202. package/lib/services/TransactionLogService.d.ts +11 -0
  203. package/lib/services/TransactionLogService.d.ts.map +1 -0
  204. package/lib/services/TransactionLogService.js +124 -0
  205. package/lib/services/UserService.d.ts +14 -0
  206. package/lib/services/UserService.d.ts.map +1 -0
  207. package/lib/services/UserService.js +103 -0
  208. package/lib/services/ViewService.d.ts +30 -0
  209. package/lib/services/ViewService.d.ts.map +1 -0
  210. package/lib/services/ViewService.js +331 -0
  211. package/lib/services/index.d.ts +26 -0
  212. package/lib/services/index.d.ts.map +1 -0
  213. package/lib/services/index.js +56 -0
  214. package/lib/tests/100PercentParityCheck.test.d.ts +6 -0
  215. package/lib/tests/100PercentParityCheck.test.d.ts.map +1 -0
  216. package/lib/tests/100PercentParityCheck.test.js +143 -0
  217. package/lib/tests/basic.test.d.ts +6 -0
  218. package/lib/tests/basic.test.d.ts.map +1 -0
  219. package/lib/tests/basic.test.js +52 -0
  220. package/lib/tests/cellService.test.d.ts +6 -0
  221. package/lib/tests/cellService.test.d.ts.map +1 -0
  222. package/lib/tests/cellService.test.js +311 -0
  223. package/lib/tests/ciSetup.d.ts +6 -0
  224. package/lib/tests/ciSetup.d.ts.map +1 -0
  225. package/lib/tests/ciSetup.js +23 -0
  226. package/lib/tests/comprehensive.service.test.d.ts +6 -0
  227. package/lib/tests/comprehensive.service.test.d.ts.map +1 -0
  228. package/lib/tests/comprehensive.service.test.js +507 -0
  229. package/lib/tests/connection.test.d.ts +6 -0
  230. package/lib/tests/connection.test.d.ts.map +1 -0
  231. package/lib/tests/connection.test.js +89 -0
  232. package/lib/tests/cubeService.test.d.ts +6 -0
  233. package/lib/tests/cubeService.test.d.ts.map +1 -0
  234. package/lib/tests/cubeService.test.js +368 -0
  235. package/lib/tests/dimensionService.comprehensive.test.d.ts +7 -0
  236. package/lib/tests/dimensionService.comprehensive.test.d.ts.map +1 -0
  237. package/lib/tests/dimensionService.comprehensive.test.js +614 -0
  238. package/lib/tests/dimensionService.test.d.ts +6 -0
  239. package/lib/tests/dimensionService.test.d.ts.map +1 -0
  240. package/lib/tests/dimensionService.test.js +293 -0
  241. package/lib/tests/edgeCases.test.d.ts +6 -0
  242. package/lib/tests/edgeCases.test.d.ts.map +1 -0
  243. package/lib/tests/edgeCases.test.js +301 -0
  244. package/lib/tests/elementService.comprehensive.test.d.ts +7 -0
  245. package/lib/tests/elementService.comprehensive.test.d.ts.map +1 -0
  246. package/lib/tests/elementService.comprehensive.test.js +846 -0
  247. package/lib/tests/elementService.test.d.ts +6 -0
  248. package/lib/tests/elementService.test.d.ts.map +1 -0
  249. package/lib/tests/elementService.test.js +350 -0
  250. package/lib/tests/enhancedCellService.test.d.ts +2 -0
  251. package/lib/tests/enhancedCellService.test.d.ts.map +1 -0
  252. package/lib/tests/enhancedCellService.test.js +152 -0
  253. package/lib/tests/enhancedCubeService.test.d.ts +2 -0
  254. package/lib/tests/enhancedCubeService.test.d.ts.map +1 -0
  255. package/lib/tests/enhancedCubeService.test.js +246 -0
  256. package/lib/tests/enhancedElementService.test.d.ts +2 -0
  257. package/lib/tests/enhancedElementService.test.d.ts.map +1 -0
  258. package/lib/tests/enhancedElementService.test.js +199 -0
  259. package/lib/tests/enhancedViewService.test.d.ts +2 -0
  260. package/lib/tests/enhancedViewService.test.d.ts.map +1 -0
  261. package/lib/tests/enhancedViewService.test.js +260 -0
  262. package/lib/tests/errorHandling.test.d.ts +6 -0
  263. package/lib/tests/errorHandling.test.d.ts.map +1 -0
  264. package/lib/tests/errorHandling.test.js +227 -0
  265. package/lib/tests/exceptions.test.d.ts +7 -0
  266. package/lib/tests/exceptions.test.d.ts.map +1 -0
  267. package/lib/tests/exceptions.test.js +257 -0
  268. package/lib/tests/hierarchyService.test.d.ts +6 -0
  269. package/lib/tests/hierarchyService.test.d.ts.map +1 -0
  270. package/lib/tests/hierarchyService.test.js +294 -0
  271. package/lib/tests/index.test.d.ts +6 -0
  272. package/lib/tests/index.test.d.ts.map +1 -0
  273. package/lib/tests/index.test.js +346 -0
  274. package/lib/tests/integration.test.d.ts +6 -0
  275. package/lib/tests/integration.test.d.ts.map +1 -0
  276. package/lib/tests/integration.test.js +302 -0
  277. package/lib/tests/integrationTests.test.d.ts +2 -0
  278. package/lib/tests/integrationTests.test.d.ts.map +1 -0
  279. package/lib/tests/integrationTests.test.js +252 -0
  280. package/lib/tests/mdx.advanced.test.d.ts +6 -0
  281. package/lib/tests/mdx.advanced.test.d.ts.map +1 -0
  282. package/lib/tests/mdx.advanced.test.js +437 -0
  283. package/lib/tests/objects.improved.test.d.ts +7 -0
  284. package/lib/tests/objects.improved.test.d.ts.map +1 -0
  285. package/lib/tests/objects.improved.test.js +302 -0
  286. package/lib/tests/performance.test.d.ts +6 -0
  287. package/lib/tests/performance.test.d.ts.map +1 -0
  288. package/lib/tests/performance.test.js +264 -0
  289. package/lib/tests/processService.comprehensive.test.d.ts +7 -0
  290. package/lib/tests/processService.comprehensive.test.d.ts.map +1 -0
  291. package/lib/tests/processService.comprehensive.test.js +656 -0
  292. package/lib/tests/processService.test.d.ts +6 -0
  293. package/lib/tests/processService.test.d.ts.map +1 -0
  294. package/lib/tests/processService.test.js +322 -0
  295. package/lib/tests/restService.test.d.ts +6 -0
  296. package/lib/tests/restService.test.d.ts.map +1 -0
  297. package/lib/tests/restService.test.js +177 -0
  298. package/lib/tests/security.advanced.test.d.ts +6 -0
  299. package/lib/tests/security.advanced.test.d.ts.map +1 -0
  300. package/lib/tests/security.advanced.test.js +407 -0
  301. package/lib/tests/security.test.d.ts +6 -0
  302. package/lib/tests/security.test.d.ts.map +1 -0
  303. package/lib/tests/security.test.js +204 -0
  304. package/lib/tests/securityService.comprehensive.test.d.ts +7 -0
  305. package/lib/tests/securityService.comprehensive.test.d.ts.map +1 -0
  306. package/lib/tests/securityService.comprehensive.test.js +457 -0
  307. package/lib/tests/setup.d.ts +4 -0
  308. package/lib/tests/setup.d.ts.map +1 -0
  309. package/lib/tests/setup.js +40 -0
  310. package/lib/tests/simpleCoverage.test.d.ts +6 -0
  311. package/lib/tests/simpleCoverage.test.d.ts.map +1 -0
  312. package/lib/tests/simpleCoverage.test.js +236 -0
  313. package/lib/tests/stress.performance.test.d.ts +6 -0
  314. package/lib/tests/stress.performance.test.d.ts.map +1 -0
  315. package/lib/tests/stress.performance.test.js +423 -0
  316. package/lib/tests/subsetService.test.d.ts +6 -0
  317. package/lib/tests/subsetService.test.d.ts.map +1 -0
  318. package/lib/tests/subsetService.test.js +271 -0
  319. package/lib/tests/testConfig.d.ts +18 -0
  320. package/lib/tests/testConfig.d.ts.map +1 -0
  321. package/lib/tests/testConfig.js +38 -0
  322. package/lib/tests/testUtils.d.ts +9 -0
  323. package/lib/tests/testUtils.d.ts.map +1 -0
  324. package/lib/tests/testUtils.js +100 -0
  325. package/lib/tests/tm1Service.test.d.ts +7 -0
  326. package/lib/tests/tm1Service.test.d.ts.map +1 -0
  327. package/lib/tests/tm1Service.test.js +290 -0
  328. package/lib/tests/viewService.test.d.ts +6 -0
  329. package/lib/tests/viewService.test.d.ts.map +1 -0
  330. package/lib/tests/viewService.test.js +240 -0
  331. package/lib/utils/Utils.d.ts +90 -0
  332. package/lib/utils/Utils.d.ts.map +1 -0
  333. package/lib/utils/Utils.js +379 -0
  334. package/package.json +81 -0
  335. package/run-all-tests.js +296 -0
  336. package/src/exceptions/TM1Exception.ts +38 -0
  337. package/src/exceptions/TM1RestException.ts +17 -0
  338. package/src/exceptions/TM1TimeoutException.ts +15 -0
  339. package/src/index.ts +94 -0
  340. package/src/objects/Annotation.ts +194 -0
  341. package/src/objects/Application.ts +146 -0
  342. package/src/objects/Axis.ts +149 -0
  343. package/src/objects/Chore.ts +174 -0
  344. package/src/objects/ChoreFrequency.ts +83 -0
  345. package/src/objects/ChoreStartTime.ts +111 -0
  346. package/src/objects/ChoreTask.ts +92 -0
  347. package/src/objects/Cube.ts +125 -0
  348. package/src/objects/Dimension.ts +107 -0
  349. package/src/objects/Element.ts +153 -0
  350. package/src/objects/ElementAttribute.ts +115 -0
  351. package/src/objects/Git.ts +86 -0
  352. package/src/objects/GitCommit.ts +31 -0
  353. package/src/objects/GitPlan.ts +121 -0
  354. package/src/objects/GitRemote.ts +31 -0
  355. package/src/objects/Hierarchy.ts +229 -0
  356. package/src/objects/MDXView.ts +91 -0
  357. package/src/objects/NativeView.ts +268 -0
  358. package/src/objects/Process.ts +320 -0
  359. package/src/objects/ProcessDebugBreakpoint.ts +239 -0
  360. package/src/objects/ProcessParameter.ts +76 -0
  361. package/src/objects/ProcessVariable.ts +89 -0
  362. package/src/objects/Rules.ts +117 -0
  363. package/src/objects/Sandbox.ts +90 -0
  364. package/src/objects/Server.ts +45 -0
  365. package/src/objects/Subset.ts +323 -0
  366. package/src/objects/TM1Object.ts +17 -0
  367. package/src/objects/TM1Project.ts +587 -0
  368. package/src/objects/User.ts +198 -0
  369. package/src/objects/View.ts +43 -0
  370. package/src/objects/index.ts +36 -0
  371. package/src/services/AnnotationService.ts +107 -0
  372. package/src/services/ApplicationService.ts +279 -0
  373. package/src/services/AuditLogService.ts +172 -0
  374. package/src/services/CellService.ts +814 -0
  375. package/src/services/ChoreService.ts +219 -0
  376. package/src/services/ConfigurationService.ts +69 -0
  377. package/src/services/CubeService.ts +338 -0
  378. package/src/services/DimensionService.ts +168 -0
  379. package/src/services/ElementService.ts +966 -0
  380. package/src/services/FileService.ts +67 -0
  381. package/src/services/GitService.ts +324 -0
  382. package/src/services/HierarchyService.ts +284 -0
  383. package/src/services/JobService.ts +59 -0
  384. package/src/services/LoggerService.ts +118 -0
  385. package/src/services/ManageService.ts +322 -0
  386. package/src/services/MessageLogService.ts +211 -0
  387. package/src/services/MonitoringService.ts +105 -0
  388. package/src/services/ObjectService.ts +21 -0
  389. package/src/services/PowerBiService.ts +85 -0
  390. package/src/services/ProcessService.ts +589 -0
  391. package/src/services/RestService.ts +224 -0
  392. package/src/services/SandboxService.ts +217 -0
  393. package/src/services/SecurityService.ts +284 -0
  394. package/src/services/ServerService.ts +313 -0
  395. package/src/services/SessionService.ts +81 -0
  396. package/src/services/SubsetService.ts +52 -0
  397. package/src/services/TM1Service.ts +133 -0
  398. package/src/services/ThreadService.ts +83 -0
  399. package/src/services/TransactionLogService.ts +148 -0
  400. package/src/services/UserService.ts +77 -0
  401. package/src/services/ViewService.ts +398 -0
  402. package/src/services/index.ts +28 -0
  403. package/src/tests/100PercentParityCheck.test.ts +166 -0
  404. package/src/tests/basic.test.ts +59 -0
  405. package/src/tests/cellService.test.ts +405 -0
  406. package/src/tests/ciSetup.ts +26 -0
  407. package/src/tests/comprehensive.service.test.ts +653 -0
  408. package/src/tests/config.ini.template +23 -0
  409. package/src/tests/connection.test.ts +90 -0
  410. package/src/tests/cubeService.test.ts +458 -0
  411. package/src/tests/dimensionService.comprehensive.test.ts +786 -0
  412. package/src/tests/dimensionService.test.ts +373 -0
  413. package/src/tests/edgeCases.test.ts +358 -0
  414. package/src/tests/elementService.comprehensive.test.ts +1190 -0
  415. package/src/tests/elementService.test.ts +472 -0
  416. package/src/tests/enhancedCellService.test.ts +237 -0
  417. package/src/tests/enhancedCubeService.test.ts +384 -0
  418. package/src/tests/enhancedElementService.test.ts +301 -0
  419. package/src/tests/enhancedViewService.test.ts +373 -0
  420. package/src/tests/errorHandling.test.ts +264 -0
  421. package/src/tests/exceptions.test.ts +313 -0
  422. package/src/tests/hierarchyService.test.ts +386 -0
  423. package/src/tests/index.test.ts +376 -0
  424. package/src/tests/integration.test.ts +333 -0
  425. package/src/tests/integrationTests.test.ts +302 -0
  426. package/src/tests/mdx.advanced.test.ts +513 -0
  427. package/src/tests/objects.improved.test.ts +385 -0
  428. package/src/tests/performance.test.ts +314 -0
  429. package/src/tests/processService.comprehensive.test.ts +933 -0
  430. package/src/tests/processService.test.ts +409 -0
  431. package/src/tests/restService.test.ts +218 -0
  432. package/src/tests/security.advanced.test.ts +464 -0
  433. package/src/tests/security.test.ts +233 -0
  434. package/src/tests/securityService.comprehensive.test.ts +582 -0
  435. package/src/tests/setup.ts +42 -0
  436. package/src/tests/simpleCoverage.test.ts +287 -0
  437. package/src/tests/stress.performance.test.ts +531 -0
  438. package/src/tests/subsetService.test.ts +350 -0
  439. package/src/tests/testConfig.ts +53 -0
  440. package/src/tests/testUtils.ts +94 -0
  441. package/src/tests/tm1Service.test.ts +361 -0
  442. package/src/tests/viewService.test.ts +324 -0
  443. package/src/utils/Utils.ts +395 -0
  444. package/tests/README.md +57 -0
  445. package/tests/connection/test-connection.ts +86 -0
  446. package/tests/edge-cases/edge-cases-test.ts +244 -0
  447. package/tests/integration/working-test.ts +193 -0
  448. package/tests/performance/performance-test.ts +133 -0
  449. package/tests/run-all-tests.sh +106 -0
  450. package/tests/security/security-test.ts +103 -0
  451. package/tsconfig.json +20 -0
@@ -0,0 +1,125 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LinkApplication = exports.FolderApplication = exports.DocumentApplication = exports.SubsetApplication = exports.ViewApplication = exports.ChoreApplication = exports.ProcessApplication = exports.DimensionApplication = exports.CubeApplication = exports.Application = exports.ApplicationTypeAliases = exports.ApplicationTypes = void 0;
4
+ const TM1Object_1 = require("./TM1Object");
5
+ var ApplicationTypes;
6
+ (function (ApplicationTypes) {
7
+ ApplicationTypes["CUBE"] = "tm1.cube";
8
+ ApplicationTypes["DIMENSION"] = "tm1.dimension";
9
+ ApplicationTypes["PROCESS"] = "tm1.process";
10
+ ApplicationTypes["CHORE"] = "tm1.chore";
11
+ ApplicationTypes["VIEW"] = "tm1.view";
12
+ ApplicationTypes["SUBSET"] = "tm1.subset";
13
+ ApplicationTypes["DOCUMENT"] = "tm1.document";
14
+ ApplicationTypes["FOLDER"] = "tm1.folder";
15
+ ApplicationTypes["LINK"] = "tm1.link";
16
+ })(ApplicationTypes || (exports.ApplicationTypes = ApplicationTypes = {}));
17
+ // Compatibility aliases
18
+ exports.ApplicationTypeAliases = {
19
+ Cube: ApplicationTypes.CUBE,
20
+ Dimension: ApplicationTypes.DIMENSION,
21
+ Process: ApplicationTypes.PROCESS,
22
+ Chore: ApplicationTypes.CHORE,
23
+ View: ApplicationTypes.VIEW,
24
+ Subset: ApplicationTypes.SUBSET,
25
+ Document: ApplicationTypes.DOCUMENT,
26
+ Folder: ApplicationTypes.FOLDER,
27
+ Link: ApplicationTypes.LINK
28
+ };
29
+ class Application extends TM1Object_1.TM1Object {
30
+ constructor(name, path = '', documented = false, type = 'Application') {
31
+ super();
32
+ this._name = name;
33
+ this._path = path;
34
+ this._documented = documented;
35
+ this._type = type;
36
+ }
37
+ get name() {
38
+ return this._name;
39
+ }
40
+ set name(name) {
41
+ this._name = name;
42
+ }
43
+ get path() {
44
+ return this._path;
45
+ }
46
+ set path(path) {
47
+ this._path = path;
48
+ }
49
+ get documented() {
50
+ return this._documented;
51
+ }
52
+ set documented(documented) {
53
+ this._documented = documented;
54
+ }
55
+ get type() {
56
+ return this._type;
57
+ }
58
+ get body() {
59
+ return JSON.stringify({
60
+ Name: this._name,
61
+ Path: this._path,
62
+ Documented: this._documented,
63
+ Type: this._type
64
+ });
65
+ }
66
+ static fromDict(applicationAsDict) {
67
+ return new Application(applicationAsDict.Name, applicationAsDict.Path || '', applicationAsDict.Documented || false, applicationAsDict.Type || 'Application');
68
+ }
69
+ }
70
+ exports.Application = Application;
71
+ class CubeApplication extends Application {
72
+ constructor(name, path = '') {
73
+ super(name, path, false, ApplicationTypes.CUBE);
74
+ }
75
+ }
76
+ exports.CubeApplication = CubeApplication;
77
+ class DimensionApplication extends Application {
78
+ constructor(name, path = '') {
79
+ super(name, path, false, ApplicationTypes.DIMENSION);
80
+ }
81
+ }
82
+ exports.DimensionApplication = DimensionApplication;
83
+ class ProcessApplication extends Application {
84
+ constructor(name, path = '') {
85
+ super(name, path, false, ApplicationTypes.PROCESS);
86
+ }
87
+ }
88
+ exports.ProcessApplication = ProcessApplication;
89
+ class ChoreApplication extends Application {
90
+ constructor(name, path = '') {
91
+ super(name, path, false, ApplicationTypes.CHORE);
92
+ }
93
+ }
94
+ exports.ChoreApplication = ChoreApplication;
95
+ class ViewApplication extends Application {
96
+ constructor(name, path = '') {
97
+ super(name, path, false, ApplicationTypes.VIEW);
98
+ }
99
+ }
100
+ exports.ViewApplication = ViewApplication;
101
+ class SubsetApplication extends Application {
102
+ constructor(name, path = '') {
103
+ super(name, path, false, ApplicationTypes.SUBSET);
104
+ }
105
+ }
106
+ exports.SubsetApplication = SubsetApplication;
107
+ class DocumentApplication extends Application {
108
+ constructor(name, path = '') {
109
+ super(name, path, true, ApplicationTypes.DOCUMENT);
110
+ }
111
+ }
112
+ exports.DocumentApplication = DocumentApplication;
113
+ class FolderApplication extends Application {
114
+ constructor(name, path = '') {
115
+ super(name, path, false, ApplicationTypes.FOLDER);
116
+ }
117
+ }
118
+ exports.FolderApplication = FolderApplication;
119
+ class LinkApplication extends Application {
120
+ constructor(name, path = '') {
121
+ super(name, path, false, ApplicationTypes.LINK);
122
+ }
123
+ }
124
+ exports.LinkApplication = LinkApplication;
125
+ //# sourceMappingURL=Application.js.map
@@ -0,0 +1,36 @@
1
+ import { TM1Object } from './TM1Object';
2
+ import { Subset, AnonymousSubset } from './Subset';
3
+ export declare class ViewAxisSelection extends TM1Object {
4
+ /** Describes what is selected in a dimension on an axis. Can be a Registered Subset or an Anonymous Subset
5
+ */
6
+ private _subset;
7
+ private _dimensionName;
8
+ private _hierarchyName;
9
+ constructor(dimensionName: string, subset: Subset | AnonymousSubset);
10
+ get subset(): Subset | AnonymousSubset;
11
+ get dimensionName(): string;
12
+ get hierarchyName(): string;
13
+ get body(): string;
14
+ get bodyAsDict(): Record<string, any>;
15
+ static fromDict(data: Record<string, any>): ViewAxisSelection;
16
+ private constructBody;
17
+ }
18
+ export declare class ViewTitleSelection {
19
+ /** Describes what is selected in a dimension on the view title.
20
+ * Can be a Registered Subset or an Anonymous Subset
21
+ */
22
+ private _dimensionName;
23
+ private _hierarchyName;
24
+ private _subset;
25
+ private _selected;
26
+ constructor(dimensionName: string, subset: AnonymousSubset | Subset, selected: string);
27
+ get subset(): Subset | AnonymousSubset;
28
+ get dimensionName(): string;
29
+ get hierarchyName(): string;
30
+ get selected(): string;
31
+ get body(): string;
32
+ get bodyAsDict(): Record<string, any>;
33
+ static fromDict(data: Record<string, any>): ViewTitleSelection;
34
+ private constructBody;
35
+ }
36
+ //# sourceMappingURL=Axis.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Axis.d.ts","sourceRoot":"","sources":["../../src/objects/Axis.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGnD,qBAAa,iBAAkB,SAAQ,SAAS;IAC5C;OACG;IAEH,OAAO,CAAC,OAAO,CAA2B;IAC1C,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,cAAc,CAAS;gBAEnB,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,eAAe;IAYnE,IAAW,MAAM,IAAI,MAAM,GAAG,eAAe,CAE5C;IAED,IAAW,aAAa,IAAI,MAAM,CAEjC;IAED,IAAW,aAAa,IAAI,MAAM,CAEjC;IAED,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAE3C;WAEa,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,iBAAiB;IAKpE,OAAO,CAAC,aAAa;CAqBxB;AAGD,qBAAa,kBAAkB;IAC3B;;OAEG;IAEH,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,OAAO,CAA2B;IAC1C,OAAO,CAAC,SAAS,CAAS;gBAEd,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM;IAOrF,IAAW,MAAM,IAAI,MAAM,GAAG,eAAe,CAE5C;IAED,IAAW,aAAa,IAAI,MAAM,CAEjC;IAED,IAAW,aAAa,IAAI,MAAM,CAEjC;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAE3C;WAEa,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,kBAAkB;IAKrE,OAAO,CAAC,aAAa;CA6BxB"}
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ViewTitleSelection = exports.ViewAxisSelection = void 0;
4
+ const TM1Object_1 = require("./TM1Object");
5
+ const Subset_1 = require("./Subset");
6
+ const Utils_1 = require("../utils/Utils");
7
+ class ViewAxisSelection extends TM1Object_1.TM1Object {
8
+ constructor(dimensionName, subset) {
9
+ /**
10
+ * :Parameters:
11
+ * `dimension_name` : String
12
+ * `subset` : Subset or AnonymousSubset
13
+ */
14
+ super();
15
+ this._subset = subset;
16
+ this._dimensionName = dimensionName;
17
+ this._hierarchyName = dimensionName;
18
+ }
19
+ get subset() {
20
+ return this._subset;
21
+ }
22
+ get dimensionName() {
23
+ return this._dimensionName;
24
+ }
25
+ get hierarchyName() {
26
+ return this._hierarchyName;
27
+ }
28
+ get body() {
29
+ return JSON.stringify(this.constructBody());
30
+ }
31
+ get bodyAsDict() {
32
+ return this.constructBody();
33
+ }
34
+ static fromDict(data) {
35
+ // Basic implementation - would need actual data structure
36
+ return new ViewAxisSelection('', new Subset_1.AnonymousSubset('', ''));
37
+ }
38
+ constructBody() {
39
+ /** construct the ODATA conform JSON represenation for the ViewAxisSelection entity.
40
+ *
41
+ * :return: dictionary
42
+ */
43
+ const bodyAsDict = {};
44
+ if (this._subset instanceof Subset_1.AnonymousSubset) {
45
+ bodyAsDict['Subset'] = JSON.parse(this._subset.body);
46
+ }
47
+ else if (this._subset instanceof Subset_1.Subset) {
48
+ const subsetPath = (0, Utils_1.formatUrl)("Dimensions('{}')/Hierarchies('{}')/Subsets('{}')", this._dimensionName, this._hierarchyName, this._subset.name);
49
+ bodyAsDict['Subset@odata.bind'] = subsetPath;
50
+ }
51
+ return bodyAsDict;
52
+ }
53
+ }
54
+ exports.ViewAxisSelection = ViewAxisSelection;
55
+ class ViewTitleSelection {
56
+ constructor(dimensionName, subset, selected) {
57
+ this._dimensionName = dimensionName;
58
+ this._hierarchyName = dimensionName;
59
+ this._subset = subset;
60
+ this._selected = selected;
61
+ }
62
+ get subset() {
63
+ return this._subset;
64
+ }
65
+ get dimensionName() {
66
+ return this._dimensionName;
67
+ }
68
+ get hierarchyName() {
69
+ return this._hierarchyName;
70
+ }
71
+ get selected() {
72
+ return this._selected;
73
+ }
74
+ get body() {
75
+ return JSON.stringify(this.constructBody());
76
+ }
77
+ get bodyAsDict() {
78
+ return this.constructBody();
79
+ }
80
+ static fromDict(data) {
81
+ // Basic implementation - would need actual data structure
82
+ return new ViewTitleSelection('', new Subset_1.AnonymousSubset('', ''), '');
83
+ }
84
+ constructBody() {
85
+ /** construct the ODATA conform JSON represenation for the ViewTitleSelection entity.
86
+ *
87
+ * :return: string, the valid JSON
88
+ */
89
+ const bodyAsDict = {};
90
+ if (this._subset instanceof Subset_1.AnonymousSubset) {
91
+ bodyAsDict['Subset'] = JSON.parse(this._subset.body);
92
+ }
93
+ else if (this._subset instanceof Subset_1.Subset) {
94
+ const subsetPath = (0, Utils_1.formatUrl)("Dimensions('{}')/Hierarchies('{}')/Subsets('{}')", this._dimensionName, this._hierarchyName, this._subset.name);
95
+ bodyAsDict['Subset@odata.bind'] = subsetPath;
96
+ }
97
+ const elementPath = (0, Utils_1.formatUrl)("Dimensions('{}')/Hierarchies('{}')/Elements('{}')", this._dimensionName, this._hierarchyName, this._selected);
98
+ bodyAsDict['Selected@odata.bind'] = elementPath;
99
+ return bodyAsDict;
100
+ }
101
+ }
102
+ exports.ViewTitleSelection = ViewTitleSelection;
103
+ //# sourceMappingURL=Axis.js.map
@@ -0,0 +1,43 @@
1
+ import { TM1Object } from './TM1Object';
2
+ import { ChoreFrequency } from './ChoreFrequency';
3
+ import { ChoreStartTime } from './ChoreStartTime';
4
+ import { ChoreTask } from './ChoreTask';
5
+ export declare class Chore extends TM1Object {
6
+ /** Abstraction of TM1 Chore
7
+ *
8
+ */
9
+ static readonly SINGLE_COMMIT = "SingleCommit";
10
+ static readonly MULTIPLE_COMMIT = "MultipleCommit";
11
+ private _name;
12
+ private _startTime;
13
+ private _dstSensitivity;
14
+ private _active;
15
+ private _executionMode;
16
+ private _frequency;
17
+ private _tasks;
18
+ constructor(name: string, startTime: ChoreStartTime, dstSensitivity: boolean, active: boolean, executionMode: string, frequency: ChoreFrequency, tasks: Iterable<ChoreTask>);
19
+ static fromJSON(choreAsJson: string): Chore;
20
+ static fromDict(choreAsDict: any): Chore;
21
+ get name(): string;
22
+ set name(name: string);
23
+ get startTime(): ChoreStartTime;
24
+ set startTime(startTime: ChoreStartTime);
25
+ get dstSensitivity(): boolean;
26
+ set dstSensitivity(dstSensitivity: boolean);
27
+ get active(): boolean;
28
+ get executionMode(): string;
29
+ set executionMode(executionMode: string);
30
+ get frequency(): ChoreFrequency;
31
+ set frequency(frequency: ChoreFrequency);
32
+ get tasks(): ChoreTask[];
33
+ set tasks(tasks: ChoreTask[]);
34
+ addTask(task: ChoreTask): void;
35
+ removeTask(step: number): ChoreTask | undefined;
36
+ get body(): string;
37
+ get bodyAsDict(): any;
38
+ private constructBody;
39
+ reschedule(frequency: ChoreFrequency, startTime?: ChoreStartTime): void;
40
+ activate(): void;
41
+ deactivate(): void;
42
+ }
43
+ //# sourceMappingURL=Chore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chore.d.ts","sourceRoot":"","sources":["../../src/objects/Chore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,qBAAa,KAAM,SAAQ,SAAS;IAChC;;OAEG;IACH,gBAAuB,aAAa,kBAAkB;IACtD,gBAAuB,eAAe,oBAAoB;IAE1D,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,UAAU,CAAiB;IACnC,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,UAAU,CAAiB;IACnC,OAAO,CAAC,MAAM,CAAc;gBAGxB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,cAAc,EACzB,cAAc,EAAE,OAAO,EACvB,MAAM,EAAE,OAAO,EACf,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,cAAc,EACzB,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC;WAYhB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,KAAK;WAUpC,QAAQ,CAAC,WAAW,EAAE,GAAG,GAAG,KAAK;IAkB/C,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,IAAI,CAAC,IAAI,EAAE,MAAM,EAE3B;IAED,IAAW,SAAS,IAAI,cAAc,CAErC;IAED,IAAW,SAAS,CAAC,SAAS,EAAE,cAAc,EAE7C;IAED,IAAW,cAAc,IAAI,OAAO,CAEnC;IAED,IAAW,cAAc,CAAC,cAAc,EAAE,OAAO,EAEhD;IAED,IAAW,MAAM,IAAI,OAAO,CAE3B;IAED,IAAW,aAAa,IAAI,MAAM,CAEjC;IAED,IAAW,aAAa,CAAC,aAAa,EAAE,MAAM,EAE7C;IAED,IAAW,SAAS,IAAI,cAAc,CAErC;IAED,IAAW,SAAS,CAAC,SAAS,EAAE,cAAc,EAE7C;IAED,IAAW,KAAK,IAAI,SAAS,EAAE,CAE9B;IAED,IAAW,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,EAElC;IAEM,OAAO,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAI9B,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAOtD,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,UAAU,IAAI,GAAG,CAE3B;IAED,OAAO,CAAC,aAAa;IAYd,UAAU,CAAC,SAAS,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,cAAc,GAAG,IAAI;IAYvE,QAAQ,IAAI,IAAI;IAMhB,UAAU,IAAI,IAAI;CAK5B"}
@@ -0,0 +1,129 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Chore = void 0;
4
+ const TM1Object_1 = require("./TM1Object");
5
+ const ChoreFrequency_1 = require("./ChoreFrequency");
6
+ const ChoreStartTime_1 = require("./ChoreStartTime");
7
+ const ChoreTask_1 = require("./ChoreTask");
8
+ class Chore extends TM1Object_1.TM1Object {
9
+ constructor(name, startTime, dstSensitivity, active, executionMode, frequency, tasks) {
10
+ super();
11
+ this._name = name;
12
+ this._startTime = startTime;
13
+ this._dstSensitivity = dstSensitivity;
14
+ this._active = active;
15
+ this._executionMode = executionMode;
16
+ this._frequency = frequency;
17
+ this._tasks = Array.from(tasks);
18
+ }
19
+ static fromJSON(choreAsJson) {
20
+ /** Alternative constructor
21
+ *
22
+ * :param chore_as_json: string, JSON. Response of /Chores('x')/Tasks?$expand=*
23
+ * :return: Chore, an instance of this class
24
+ */
25
+ const choreAsDict = JSON.parse(choreAsJson);
26
+ return Chore.fromDict(choreAsDict);
27
+ }
28
+ static fromDict(choreAsDict) {
29
+ /** Alternative constructor
30
+ *
31
+ * :param chore_as_dict: Chore as dict
32
+ * :return: Chore, an instance of this class
33
+ */
34
+ return new Chore(choreAsDict.Name, ChoreStartTime_1.ChoreStartTime.fromString(choreAsDict.StartTime), choreAsDict.DSTSensitive, choreAsDict.Active, choreAsDict.ExecutionMode, ChoreFrequency_1.ChoreFrequency.fromString(choreAsDict.Frequency), choreAsDict.Tasks.map((task, step) => ChoreTask_1.ChoreTask.fromDict(task, step)));
35
+ }
36
+ get name() {
37
+ return this._name;
38
+ }
39
+ set name(name) {
40
+ this._name = name;
41
+ }
42
+ get startTime() {
43
+ return this._startTime;
44
+ }
45
+ set startTime(startTime) {
46
+ this._startTime = startTime;
47
+ }
48
+ get dstSensitivity() {
49
+ return this._dstSensitivity;
50
+ }
51
+ set dstSensitivity(dstSensitivity) {
52
+ this._dstSensitivity = dstSensitivity;
53
+ }
54
+ get active() {
55
+ return this._active;
56
+ }
57
+ get executionMode() {
58
+ return this._executionMode;
59
+ }
60
+ set executionMode(executionMode) {
61
+ this._executionMode = executionMode;
62
+ }
63
+ get frequency() {
64
+ return this._frequency;
65
+ }
66
+ set frequency(frequency) {
67
+ this._frequency = frequency;
68
+ }
69
+ get tasks() {
70
+ return this._tasks;
71
+ }
72
+ set tasks(tasks) {
73
+ this._tasks = tasks;
74
+ }
75
+ addTask(task) {
76
+ this._tasks.push(task);
77
+ }
78
+ removeTask(step) {
79
+ if (step >= 0 && step < this._tasks.length) {
80
+ return this._tasks.splice(step, 1)[0];
81
+ }
82
+ return undefined;
83
+ }
84
+ get body() {
85
+ return JSON.stringify(this.constructBody());
86
+ }
87
+ get bodyAsDict() {
88
+ return this.constructBody();
89
+ }
90
+ constructBody() {
91
+ const body = {};
92
+ body.Name = this._name;
93
+ body.StartTime = this._startTime.toString();
94
+ body.DSTSensitive = this._dstSensitivity;
95
+ body.Active = this._active;
96
+ body.ExecutionMode = this._executionMode;
97
+ body.Frequency = this._frequency.toString();
98
+ body.Tasks = this._tasks.map(task => task.bodyAsDict);
99
+ return body;
100
+ }
101
+ reschedule(frequency, startTime) {
102
+ /** Reschedule the chore
103
+ *
104
+ * :param frequency: new ChoreFrequency
105
+ * :param start_time: new ChoreStartTime (optional)
106
+ */
107
+ this._frequency = frequency;
108
+ if (startTime) {
109
+ this._startTime = startTime;
110
+ }
111
+ }
112
+ activate() {
113
+ /** Activate the chore
114
+ */
115
+ this._active = true;
116
+ }
117
+ deactivate() {
118
+ /** Deactivate the chore
119
+ */
120
+ this._active = false;
121
+ }
122
+ }
123
+ exports.Chore = Chore;
124
+ /** Abstraction of TM1 Chore
125
+ *
126
+ */
127
+ Chore.SINGLE_COMMIT = 'SingleCommit';
128
+ Chore.MULTIPLE_COMMIT = 'MultipleCommit';
129
+ //# sourceMappingURL=Chore.js.map
@@ -0,0 +1,23 @@
1
+ import { TM1Object } from './TM1Object';
2
+ export declare class ChoreFrequency extends TM1Object {
3
+ /** Utility class to handle time representation fore Chore Frequency
4
+ */
5
+ private _days;
6
+ private _hours;
7
+ private _minutes;
8
+ private _seconds;
9
+ constructor(days: string | number, hours: string | number, minutes: string | number, seconds: string | number);
10
+ get days(): string;
11
+ get hours(): string;
12
+ get minutes(): string;
13
+ get seconds(): string;
14
+ set days(value: string | number);
15
+ set hours(value: string | number);
16
+ set minutes(value: string | number);
17
+ set seconds(value: string | number);
18
+ static fromString(frequencyString: string): ChoreFrequency;
19
+ get frequencyString(): string;
20
+ get body(): string;
21
+ toString(): string;
22
+ }
23
+ //# sourceMappingURL=ChoreFrequency.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChoreFrequency.d.ts","sourceRoot":"","sources":["../../src/objects/ChoreFrequency.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,qBAAa,cAAe,SAAQ,SAAS;IACzC;OACG;IAEH,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAS;gBAEb,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAQ7G,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED,IAAW,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAErC;IAED,IAAW,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAEtC;IAED,IAAW,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAExC;IAED,IAAW,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAExC;WAEa,UAAU,CAAC,eAAe,EAAE,MAAM,GAAG,cAAc;IAcjE,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED,IAAW,IAAI,IAAI,MAAM,CAQxB;IAEM,QAAQ,IAAI,MAAM;CAG5B"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ChoreFrequency = void 0;
4
+ const TM1Object_1 = require("./TM1Object");
5
+ class ChoreFrequency extends TM1Object_1.TM1Object {
6
+ constructor(days, hours, minutes, seconds) {
7
+ super();
8
+ this._days = String(days).padStart(2, '0');
9
+ this._hours = String(hours).padStart(2, '0');
10
+ this._minutes = String(minutes).padStart(2, '0');
11
+ this._seconds = String(seconds).padStart(2, '0');
12
+ }
13
+ get days() {
14
+ return this._days;
15
+ }
16
+ get hours() {
17
+ return this._hours;
18
+ }
19
+ get minutes() {
20
+ return this._minutes;
21
+ }
22
+ get seconds() {
23
+ return this._seconds;
24
+ }
25
+ set days(value) {
26
+ this._days = String(value).padStart(2, '0');
27
+ }
28
+ set hours(value) {
29
+ this._hours = String(value).padStart(2, '0');
30
+ }
31
+ set minutes(value) {
32
+ this._minutes = String(value).padStart(2, '0');
33
+ }
34
+ set seconds(value) {
35
+ this._seconds = String(value).padStart(2, '0');
36
+ }
37
+ static fromString(frequencyString) {
38
+ const posDt = frequencyString.indexOf('DT', 1);
39
+ const posH = frequencyString.indexOf('H', posDt);
40
+ const posM = frequencyString.indexOf('M', posH);
41
+ const posS = frequencyString.length - 1;
42
+ return new ChoreFrequency(frequencyString.substring(1, posDt), frequencyString.substring(posDt + 2, posH), frequencyString.substring(posH + 1, posM), frequencyString.substring(posM + 1, posS));
43
+ }
44
+ get frequencyString() {
45
+ return `P${this._days}DT${this._hours}H${this._minutes}M${this._seconds}S`;
46
+ }
47
+ get body() {
48
+ return JSON.stringify({
49
+ Days: this._days,
50
+ Hours: this._hours,
51
+ Minutes: this._minutes,
52
+ Seconds: this._seconds,
53
+ FrequencyString: this.frequencyString
54
+ });
55
+ }
56
+ toString() {
57
+ return this.frequencyString;
58
+ }
59
+ }
60
+ exports.ChoreFrequency = ChoreFrequency;
61
+ //# sourceMappingURL=ChoreFrequency.js.map
@@ -0,0 +1,15 @@
1
+ export declare class ChoreStartTime {
2
+ /** Utility class to handle time representation for Chore Start Time
3
+ */
4
+ private _datetime;
5
+ tz?: string;
6
+ constructor(year: number, month: number, day: number, hour: number, minute: number, second: number, tz?: string);
7
+ static fromString(startTimeString: string): ChoreStartTime;
8
+ get startTimeString(): string;
9
+ get datetime(): Date;
10
+ toString(): string;
11
+ setTime(year?: number, month?: number, day?: number, hour?: number, minute?: number, second?: number): void;
12
+ add(days?: number, hours?: number, minutes?: number, seconds?: number): void;
13
+ subtract(days?: number, hours?: number, minutes?: number, seconds?: number): void;
14
+ }
15
+ //# sourceMappingURL=ChoreStartTime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChoreStartTime.d.ts","sourceRoot":"","sources":["../../src/objects/ChoreStartTime.ts"],"names":[],"mappings":"AAAA,qBAAa,cAAc;IACvB;OACG;IAEH,OAAO,CAAC,SAAS,CAAO;IACjB,EAAE,CAAC,EAAE,MAAM,CAAC;gBAEP,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM;WAajG,UAAU,CAAC,eAAe,EAAE,MAAM,GAAG,cAAc;IA6BjE,IAAW,eAAe,IAAI,MAAM,CAkBnC;IAED,IAAW,QAAQ,IAAI,IAAI,CAE1B;IAEM,QAAQ,IAAI,MAAM;IAIlB,OAAO,CACV,IAAI,CAAC,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM,EACd,GAAG,CAAC,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,MAAM,GAChB,IAAI;IAWA,GAAG,CAAC,IAAI,GAAE,MAAU,EAAE,KAAK,GAAE,MAAU,EAAE,OAAO,GAAE,MAAU,EAAE,OAAO,GAAE,MAAU,GAAG,IAAI;IAQxF,QAAQ,CAAC,IAAI,GAAE,MAAU,EAAE,KAAK,GAAE,MAAU,EAAE,OAAO,GAAE,MAAU,EAAE,OAAO,GAAE,MAAU,GAAG,IAAI;CAOvG"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ChoreStartTime = void 0;
4
+ class ChoreStartTime {
5
+ constructor(year, month, day, hour, minute, second, tz) {
6
+ /**
7
+ * :param year: year
8
+ * :param month: month
9
+ * :param day: day
10
+ * :param hour: hour or None
11
+ * :param minute: minute or None
12
+ * :param second: second or None
13
+ */
14
+ this._datetime = new Date(year, month - 1, day, hour, minute, second); // month is 0-indexed in JS
15
+ this.tz = tz;
16
+ }
17
+ static fromString(startTimeString) {
18
+ // extract optional tz info (e.g., +01:00) from string end
19
+ let tz;
20
+ if (startTimeString.includes('+')) {
21
+ // case "2020-11-05T08:00:01+01:00",
22
+ tz = "+" + startTimeString.split('+')[1];
23
+ }
24
+ else if (startTimeString.split('-').length === 4) {
25
+ // case: "2020-11-05T08:00:01-01:00",
26
+ const parts = startTimeString.split('-');
27
+ tz = "-" + parts[parts.length - 1];
28
+ }
29
+ else {
30
+ tz = undefined;
31
+ }
32
+ // f to handle strange timestamp 2016-09-25T20:25Z instead of common 2016-09-25T20:25:00Z
33
+ // second is defaulted to 0 if not specified in the chore schedule
34
+ const f = (x) => x ? parseInt(x) : 0;
35
+ return new ChoreStartTime(f(startTimeString.substring(0, 4)), f(startTimeString.substring(5, 7)), f(startTimeString.substring(8, 10)), f(startTimeString.substring(11, 13)), f(startTimeString.substring(14, 16)), startTimeString[16] !== ":" ? 0 : f(startTimeString.substring(17, 19)), tz);
36
+ }
37
+ get startTimeString() {
38
+ // produce timestamp 2016-09-25T20:25:00Z instead of common 2016-09-25T20:25Z where no seconds are specified
39
+ const year = this._datetime.getFullYear().toString().padStart(4, '0');
40
+ const month = (this._datetime.getMonth() + 1).toString().padStart(2, '0');
41
+ const day = this._datetime.getDate().toString().padStart(2, '0');
42
+ const hour = this._datetime.getHours().toString().padStart(2, '0');
43
+ const minute = this._datetime.getMinutes().toString().padStart(2, '0');
44
+ const second = this._datetime.getSeconds().toString().padStart(2, '0');
45
+ let startTime = `${year}-${month}-${day}T${hour}:${minute}:${second}`;
46
+ if (this.tz) {
47
+ startTime += this.tz;
48
+ }
49
+ else {
50
+ startTime += "Z";
51
+ }
52
+ return startTime;
53
+ }
54
+ get datetime() {
55
+ return this._datetime;
56
+ }
57
+ toString() {
58
+ return this.startTimeString;
59
+ }
60
+ setTime(year, month, day, hour, minute, second) {
61
+ const _year = year !== undefined ? year : this._datetime.getFullYear();
62
+ const _month = month !== undefined ? month - 1 : this._datetime.getMonth(); // month is 0-indexed
63
+ const _day = day !== undefined ? day : this._datetime.getDate();
64
+ const _hour = hour !== undefined ? hour : this._datetime.getHours();
65
+ const _minute = minute !== undefined ? minute : this._datetime.getMinutes();
66
+ const _second = second !== undefined ? second : this._datetime.getSeconds();
67
+ this._datetime = new Date(_year, _month, _day, _hour, _minute, _second);
68
+ }
69
+ add(days = 0, hours = 0, minutes = 0, seconds = 0) {
70
+ const totalMs = days * 24 * 60 * 60 * 1000 +
71
+ hours * 60 * 60 * 1000 +
72
+ minutes * 60 * 1000 +
73
+ seconds * 1000;
74
+ this._datetime = new Date(this._datetime.getTime() + totalMs);
75
+ }
76
+ subtract(days = 0, hours = 0, minutes = 0, seconds = 0) {
77
+ const totalMs = days * 24 * 60 * 60 * 1000 +
78
+ hours * 60 * 60 * 1000 +
79
+ minutes * 60 * 1000 +
80
+ seconds * 1000;
81
+ this._datetime = new Date(this._datetime.getTime() - totalMs);
82
+ }
83
+ }
84
+ exports.ChoreStartTime = ChoreStartTime;
85
+ //# sourceMappingURL=ChoreStartTime.js.map
@@ -0,0 +1,28 @@
1
+ import { TM1Object } from './TM1Object';
2
+ export interface ChoreTaskParameter {
3
+ Name: string;
4
+ Value: string;
5
+ }
6
+ export declare class ChoreTask extends TM1Object {
7
+ /** Abstraction of a Chore Task
8
+ *
9
+ * A Chore task always conistst of
10
+ * - The step integer ID: it's order in the execution plan.
11
+ * 1 to n, where n is the last Process in the Chore
12
+ * - The name of the process to execute
13
+ * - The parameters for the process
14
+ */
15
+ private _step;
16
+ private _processName;
17
+ private _parameters;
18
+ constructor(step: number, processName: string, parameters: ChoreTaskParameter[]);
19
+ static fromDict(choreTaskAsDict: Record<string, any>, step?: number): ChoreTask;
20
+ get bodyAsDict(): Record<string, any>;
21
+ get step(): number;
22
+ get processName(): string;
23
+ get parameters(): ChoreTaskParameter[];
24
+ get body(): string;
25
+ equals(other: ChoreTask): boolean;
26
+ notEquals(other: ChoreTask): boolean;
27
+ }
28
+ //# sourceMappingURL=ChoreTask.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChoreTask.d.ts","sourceRoot":"","sources":["../../src/objects/ChoreTask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,SAAU,SAAQ,SAAS;IACpC;;;;;;;OAOG;IAEH,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,WAAW,CAAuB;gBAE9B,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE;WAkBjE,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS;IAmBtF,IAAW,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAK3C;IAED,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED,IAAW,UAAU,IAAI,kBAAkB,EAAE,CAE5C;IAED,IAAW,IAAI,IAAI,MAAM,CAExB;IAEM,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO;IAKjC,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO;CAI9C"}