connectwise-rest 0.23.3 → 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 (288) hide show
  1. package/.eslintrc +19 -52
  2. package/.gitattributes +1 -0
  3. package/.github/workflows/codeql-analysis.yml +70 -0
  4. package/.github/workflows/node.js.yml +42 -0
  5. package/.mocharc.json +5 -0
  6. package/.prettierrc +7 -0
  7. package/.travis.yml +4 -2
  8. package/README.md +243 -230
  9. package/api-extractor.json +364 -0
  10. package/dist/Automate/AVTemplatePoliciesAPI.d.ts +27 -0
  11. package/dist/Automate/AVTemplatePoliciesAPI.d.ts.map +1 -0
  12. package/dist/Automate/AVTemplatePoliciesAPI.js +87 -0
  13. package/dist/Automate/AVTemplatePoliciesAPI.js.map +1 -0
  14. package/dist/Automate/ClientsAPI.d.ts +34 -0
  15. package/dist/Automate/ClientsAPI.d.ts.map +1 -0
  16. package/dist/Automate/ClientsAPI.js +114 -0
  17. package/dist/Automate/ClientsAPI.js.map +1 -0
  18. package/dist/Automate/CommandsAPI.d.ts +15 -0
  19. package/dist/Automate/CommandsAPI.d.ts.map +1 -0
  20. package/dist/Automate/CommandsAPI.js +31 -0
  21. package/dist/Automate/CommandsAPI.js.map +1 -0
  22. package/dist/Automate/ComputersAPI.d.ts +94 -0
  23. package/dist/Automate/ComputersAPI.d.ts.map +1 -0
  24. package/dist/Automate/ComputersAPI.js +353 -0
  25. package/dist/Automate/ComputersAPI.js.map +1 -0
  26. package/dist/Automate/ContactsAPI.d.ts +18 -0
  27. package/dist/Automate/ContactsAPI.d.ts.map +1 -0
  28. package/dist/Automate/ContactsAPI.js +45 -0
  29. package/dist/Automate/ContactsAPI.js.map +1 -0
  30. package/dist/Automate/DataViewsAPI.d.ts +16 -0
  31. package/dist/Automate/DataViewsAPI.d.ts.map +1 -0
  32. package/dist/Automate/DataViewsAPI.js +31 -0
  33. package/dist/Automate/DataViewsAPI.js.map +1 -0
  34. package/dist/Automate/DrivesAPI.d.ts +19 -0
  35. package/dist/Automate/DrivesAPI.d.ts.map +1 -0
  36. package/dist/Automate/DrivesAPI.js +52 -0
  37. package/dist/Automate/DrivesAPI.js.map +1 -0
  38. package/dist/Automate/EventLogsAPI.d.ts +14 -0
  39. package/dist/Automate/EventLogsAPI.d.ts.map +1 -0
  40. package/dist/Automate/EventLogsAPI.js +24 -0
  41. package/dist/Automate/EventLogsAPI.js.map +1 -0
  42. package/dist/Automate/LocationsAPI.d.ts +42 -0
  43. package/dist/Automate/LocationsAPI.d.ts.map +1 -0
  44. package/dist/Automate/LocationsAPI.js +133 -0
  45. package/dist/Automate/LocationsAPI.js.map +1 -0
  46. package/dist/Automate/MaintenanceWindowDefinitionsAPI.d.ts +14 -0
  47. package/dist/Automate/MaintenanceWindowDefinitionsAPI.d.ts.map +1 -0
  48. package/dist/Automate/MaintenanceWindowDefinitionsAPI.js +24 -0
  49. package/dist/Automate/MaintenanceWindowDefinitionsAPI.js.map +1 -0
  50. package/dist/Automate/MonitorsAPI.d.ts +23 -0
  51. package/dist/Automate/MonitorsAPI.d.ts.map +1 -0
  52. package/dist/Automate/MonitorsAPI.js +80 -0
  53. package/dist/Automate/MonitorsAPI.js.map +1 -0
  54. package/dist/Automate/NetworkDevicesAPI.d.ts +17 -0
  55. package/dist/Automate/NetworkDevicesAPI.d.ts.map +1 -0
  56. package/dist/Automate/NetworkDevicesAPI.js +38 -0
  57. package/dist/Automate/NetworkDevicesAPI.js.map +1 -0
  58. package/dist/Automate/PatchingAPI.d.ts +27 -0
  59. package/dist/Automate/PatchingAPI.d.ts.map +1 -0
  60. package/dist/Automate/PatchingAPI.js +94 -0
  61. package/dist/Automate/PatchingAPI.js.map +1 -0
  62. package/dist/Automate/RemoteAgentAPI.d.ts +18 -0
  63. package/dist/Automate/RemoteAgentAPI.d.ts.map +1 -0
  64. package/dist/Automate/RemoteAgentAPI.js +45 -0
  65. package/dist/Automate/RemoteAgentAPI.js.map +1 -0
  66. package/dist/Automate/ScriptingAPI.d.ts +32 -0
  67. package/dist/Automate/ScriptingAPI.d.ts.map +1 -0
  68. package/dist/Automate/ScriptingAPI.js +104 -0
  69. package/dist/Automate/ScriptingAPI.js.map +1 -0
  70. package/dist/Automate/SearchesAPI.d.ts +17 -0
  71. package/dist/Automate/SearchesAPI.d.ts.map +1 -0
  72. package/dist/Automate/SearchesAPI.js +38 -0
  73. package/dist/Automate/SearchesAPI.js.map +1 -0
  74. package/dist/Automate/SystemAPI.d.ts +72 -0
  75. package/dist/Automate/SystemAPI.d.ts.map +1 -0
  76. package/dist/Automate/SystemAPI.js +268 -0
  77. package/dist/Automate/SystemAPI.js.map +1 -0
  78. package/dist/Automate/TicketsAPI.d.ts +10 -0
  79. package/dist/Automate/TicketsAPI.d.ts.map +1 -0
  80. package/dist/Automate/TicketsAPI.js +24 -0
  81. package/dist/Automate/TicketsAPI.js.map +1 -0
  82. package/dist/Automate/UserProfilesAPI.d.ts +14 -0
  83. package/dist/Automate/UserProfilesAPI.d.ts.map +1 -0
  84. package/dist/Automate/UserProfilesAPI.js +23 -0
  85. package/dist/Automate/UserProfilesAPI.js.map +1 -0
  86. package/dist/Automate.d.ts +48 -0
  87. package/dist/Automate.d.ts.map +1 -0
  88. package/dist/Automate.js +167 -0
  89. package/dist/Automate.js.map +1 -0
  90. package/dist/AutomateAPI.d.ts +96 -0
  91. package/dist/AutomateAPI.d.ts.map +1 -0
  92. package/dist/AutomateAPI.js +168 -0
  93. package/dist/AutomateAPI.js.map +1 -0
  94. package/dist/AutomateTypes.d.ts +10437 -0
  95. package/dist/AutomateTypes.d.ts.map +1 -0
  96. package/dist/AutomateTypes.js +3 -0
  97. package/dist/AutomateTypes.js.map +1 -0
  98. package/dist/BaseAPI.d.ts +13 -0
  99. package/dist/BaseAPI.d.ts.map +1 -0
  100. package/dist/BaseAPI.js +53 -0
  101. package/dist/BaseAPI.js.map +1 -0
  102. package/dist/Manage/CompanyAPI.d.ts +573 -0
  103. package/dist/Manage/CompanyAPI.d.ts.map +1 -0
  104. package/dist/Manage/CompanyAPI.js +3294 -0
  105. package/dist/Manage/CompanyAPI.js.map +1 -0
  106. package/dist/Manage/ConfigurationsAPI.d.ts +24 -0
  107. package/dist/Manage/ConfigurationsAPI.d.ts.map +1 -0
  108. package/dist/Manage/ConfigurationsAPI.js +73 -0
  109. package/dist/Manage/ConfigurationsAPI.js.map +1 -0
  110. package/dist/Manage/ExpenseAPI.d.ts +68 -0
  111. package/dist/Manage/ExpenseAPI.d.ts.map +1 -0
  112. package/dist/Manage/ExpenseAPI.js +306 -0
  113. package/dist/Manage/ExpenseAPI.js.map +1 -0
  114. package/dist/Manage/FinanceAPI.d.ts +460 -0
  115. package/dist/Manage/FinanceAPI.d.ts.map +1 -0
  116. package/dist/Manage/FinanceAPI.js +2587 -0
  117. package/dist/Manage/FinanceAPI.js.map +1 -0
  118. package/dist/Manage/MarketingAPI.d.ts +120 -0
  119. package/dist/Manage/MarketingAPI.d.ts.map +1 -0
  120. package/dist/Manage/MarketingAPI.js +629 -0
  121. package/dist/Manage/MarketingAPI.js.map +1 -0
  122. package/dist/Manage/ProcurementAPI.d.ts +373 -0
  123. package/dist/Manage/ProcurementAPI.d.ts.map +1 -0
  124. package/dist/Manage/ProcurementAPI.js +2098 -0
  125. package/dist/Manage/ProcurementAPI.js.map +1 -0
  126. package/dist/Manage/ProjectAPI.d.ts +179 -0
  127. package/dist/Manage/ProjectAPI.d.ts.map +1 -0
  128. package/dist/Manage/ProjectAPI.js +940 -0
  129. package/dist/Manage/ProjectAPI.js.map +1 -0
  130. package/dist/Manage/SalesAPI.d.ts +254 -0
  131. package/dist/Manage/SalesAPI.d.ts.map +1 -0
  132. package/dist/Manage/SalesAPI.js +1392 -0
  133. package/dist/Manage/SalesAPI.js.map +1 -0
  134. package/dist/Manage/ScheduleAPI.d.ts +111 -0
  135. package/dist/Manage/ScheduleAPI.d.ts.map +1 -0
  136. package/dist/Manage/ScheduleAPI.js +575 -0
  137. package/dist/Manage/ScheduleAPI.js.map +1 -0
  138. package/dist/Manage/ServiceAPI.d.ts +419 -0
  139. package/dist/Manage/ServiceAPI.d.ts.map +1 -0
  140. package/dist/Manage/ServiceAPI.js +2334 -0
  141. package/dist/Manage/ServiceAPI.js.map +1 -0
  142. package/dist/Manage/SystemAPI.d.ts +809 -0
  143. package/dist/Manage/SystemAPI.d.ts.map +1 -0
  144. package/dist/Manage/SystemAPI.js +4531 -0
  145. package/dist/Manage/SystemAPI.js.map +1 -0
  146. package/dist/Manage/TimeAPI.d.ts +157 -0
  147. package/dist/Manage/TimeAPI.d.ts.map +1 -0
  148. package/dist/Manage/TimeAPI.js +835 -0
  149. package/dist/Manage/TimeAPI.js.map +1 -0
  150. package/dist/Manage.d.ts +34 -0
  151. package/dist/Manage.d.ts.map +1 -0
  152. package/dist/Manage.js +127 -0
  153. package/dist/Manage.js.map +1 -0
  154. package/dist/ManageAPI.d.ts +99 -0
  155. package/dist/ManageAPI.d.ts.map +1 -0
  156. package/dist/ManageAPI.js +112 -0
  157. package/dist/ManageAPI.js.map +1 -0
  158. package/dist/ManageTypes.d.ts +91320 -0
  159. package/dist/ManageTypes.d.ts.map +1 -0
  160. package/dist/ManageTypes.js +7 -0
  161. package/dist/ManageTypes.js.map +1 -0
  162. package/dist/index.d.ts +9 -0
  163. package/dist/index.d.ts.map +1 -0
  164. package/dist/index.js +38 -0
  165. package/dist/index.js.map +1 -0
  166. package/dist/types.d.ts +46 -0
  167. package/dist/types.d.ts.map +1 -0
  168. package/dist/types.js +21 -0
  169. package/dist/types.js.map +1 -0
  170. package/dist/utils/Callback.d.ts +67 -0
  171. package/dist/utils/Callback.d.ts.map +1 -0
  172. package/dist/utils/Callback.js +109 -0
  173. package/dist/utils/Callback.js.map +1 -0
  174. package/dist/utils/Series.d.ts +36 -0
  175. package/dist/utils/Series.d.ts.map +1 -0
  176. package/dist/utils/Series.js +64 -0
  177. package/dist/utils/Series.js.map +1 -0
  178. package/dist/utils/index.d.ts +7 -0
  179. package/dist/utils/index.d.ts.map +1 -0
  180. package/dist/utils/index.js +11 -0
  181. package/dist/utils/index.js.map +1 -0
  182. package/generator/automate-generator.js +75 -0
  183. package/generator/automate-json.js +61 -0
  184. package/generator/automate-types.js +15 -0
  185. package/generator/generator.d.ts +67 -0
  186. package/generator/generator.js +255 -0
  187. package/generator/manage-generator.js +71 -0
  188. package/generator/manage-types.js +14 -0
  189. package/package.json +48 -21
  190. package/src/Automate/AVTemplatePoliciesAPI.ts +114 -0
  191. package/src/Automate/ClientsAPI.ts +161 -0
  192. package/src/Automate/CommandsAPI.ts +33 -0
  193. package/src/Automate/ComputersAPI.ts +550 -0
  194. package/src/Automate/ContactsAPI.ts +56 -0
  195. package/src/Automate/DataViewsAPI.ts +36 -0
  196. package/src/Automate/DrivesAPI.ts +74 -0
  197. package/src/Automate/EventLogsAPI.ts +25 -0
  198. package/src/Automate/LocationsAPI.ts +206 -0
  199. package/src/Automate/MaintenanceWindowDefinitionsAPI.ts +28 -0
  200. package/src/Automate/MonitorsAPI.ts +94 -0
  201. package/src/Automate/NetworkDevicesAPI.ts +44 -0
  202. package/src/Automate/PatchingAPI.ts +109 -0
  203. package/src/Automate/RemoteAgentAPI.ts +58 -0
  204. package/src/Automate/ScriptingAPI.ts +137 -0
  205. package/src/Automate/SearchesAPI.ts +42 -0
  206. package/src/Automate/SystemAPI.ts +386 -0
  207. package/src/Automate/TicketsAPI.ts +24 -0
  208. package/src/Automate/UserProfilesAPI.ts +25 -0
  209. package/src/Automate.ts +216 -0
  210. package/src/AutomateAPI.ts +144 -0
  211. package/src/AutomateTypes.ts +10492 -0
  212. package/src/BaseAPI.ts +83 -0
  213. package/src/Manage/CompanyAPI.ts +4851 -0
  214. package/src/Manage/ConfigurationsAPI.ts +107 -0
  215. package/src/Manage/ExpenseAPI.ts +395 -0
  216. package/src/Manage/FinanceAPI.ts +3851 -0
  217. package/src/Manage/MarketingAPI.ts +935 -0
  218. package/src/Manage/ProcurementAPI.ts +3044 -0
  219. package/src/Manage/ProjectAPI.ts +1400 -0
  220. package/src/Manage/SalesAPI.ts +1922 -0
  221. package/src/Manage/ScheduleAPI.ts +751 -0
  222. package/src/Manage/ServiceAPI.ts +3401 -0
  223. package/src/Manage/SystemAPI.ts +6269 -0
  224. package/src/Manage/TimeAPI.ts +1121 -0
  225. package/src/Manage.ts +152 -0
  226. package/src/ManageAPI.ts +133 -0
  227. package/src/ManageTypes.ts +91318 -0
  228. package/src/index.ts +18 -0
  229. package/src/types.ts +66 -0
  230. package/src/utils/Callback.ts +145 -0
  231. package/src/utils/Series.ts +83 -0
  232. package/src/utils/index.ts +7 -0
  233. package/swagger-errors.md +30 -0
  234. package/test/.env.example +12 -4
  235. package/test/test-utils.ts +27 -0
  236. package/test/test.ts +320 -0
  237. package/tsconfig.json +29 -0
  238. package/doc.md +0 -5984
  239. package/docs/jsdoc.json +0 -15
  240. package/index.js +0 -10
  241. package/src/CompanyAPI/Companies.js +0 -149
  242. package/src/CompanyAPI/CompanyCompanyTypeAssociations.js +0 -111
  243. package/src/CompanyAPI/CompanySites.js +0 -70
  244. package/src/CompanyAPI/CompanyTeams.js +0 -108
  245. package/src/CompanyAPI/CompanyTypeInfos.js +0 -58
  246. package/src/CompanyAPI/CompanyTypes.js +0 -52
  247. package/src/CompanyAPI/Configurations.js +0 -152
  248. package/src/CompanyAPI/ContactContactTypeAssociations.js +0 -55
  249. package/src/CompanyAPI/ContactRelationships.js +0 -36
  250. package/src/CompanyAPI/Contacts.js +0 -199
  251. package/src/CompanyAPI/index.js +0 -53
  252. package/src/ConnectWise.js +0 -339
  253. package/src/ConnectWiseRest.js +0 -512
  254. package/src/FinanceAPI/Additions.js +0 -127
  255. package/src/FinanceAPI/Adjustments.js +0 -109
  256. package/src/FinanceAPI/AgreementSites.js +0 -108
  257. package/src/FinanceAPI/Agreements.js +0 -220
  258. package/src/FinanceAPI/BoardDefaults.js +0 -109
  259. package/src/FinanceAPI/WorkRoles.js +0 -113
  260. package/src/FinanceAPI/WorkTypeExclusions.js +0 -78
  261. package/src/FinanceAPI/WorkTypes.js +0 -124
  262. package/src/FinanceAPI/index.js +0 -50
  263. package/src/ProjectAPI/Projects.js +0 -142
  264. package/src/ProjectAPI/index.js +0 -28
  265. package/src/SalesAPI/Activities.js +0 -149
  266. package/src/SalesAPI/index.js +0 -14
  267. package/src/ScheduleAPI/ScheduleEntries.js +0 -109
  268. package/src/ScheduleAPI/ScheduleTypes.js +0 -101
  269. package/src/ScheduleAPI/index.js +0 -30
  270. package/src/ServiceDeskAPI/BoardItems.js +0 -134
  271. package/src/ServiceDeskAPI/BoardSubTypes.js +0 -112
  272. package/src/ServiceDeskAPI/BoardTeams.js +0 -108
  273. package/src/ServiceDeskAPI/BoardTypes.js +0 -139
  274. package/src/ServiceDeskAPI/Boards.js +0 -100
  275. package/src/ServiceDeskAPI/Priorities.js +0 -47
  276. package/src/ServiceDeskAPI/ServiceNotes.js +0 -172
  277. package/src/ServiceDeskAPI/Statuses.js +0 -116
  278. package/src/ServiceDeskAPI/Tickets.js +0 -588
  279. package/src/ServiceDeskAPI/index.js +0 -53
  280. package/src/SystemAPI/Members.js +0 -139
  281. package/src/SystemAPI/Reports.js +0 -116
  282. package/src/SystemAPI/index.js +0 -32
  283. package/src/TimeAPI/TimeEntries.js +0 -121
  284. package/src/TimeAPI/index.js +0 -27
  285. package/src/utils/Callback.js +0 -125
  286. package/src/utils/Series.js +0 -64
  287. package/src/utils/index.js +0 -21
  288. package/test/test.js +0 -114
@@ -1,78 +0,0 @@
1
- /**
2
- * Created by kgrube on 1/22/2016.
3
- */
4
-
5
- /**
6
- * @private
7
- */
8
- const inherits = require('util').inherits;
9
- const ConnectWise = require('../ConnectWise.js');
10
-
11
- /**
12
- * @typedef {object} WorkTypeExclusion
13
- * @property {number} id
14
- * @property {WorkTypeHref} workType
15
- * @property {number} agreementId
16
- * @property {object} _info
17
- * @property {string} _info.lastUpdated
18
- * @property {string} _info.updatedBy
19
- */
20
-
21
- /**
22
- *
23
- * @param {CWOptions} options
24
- * @inherits {ConnectWise}
25
- * @constructor
26
- */
27
- function WorkTypeExclusions(options) {
28
- ConnectWise.apply(this, Array.prototype.slice.call(arguments));
29
- }
30
- inherits(WorkTypeExclusions, ConnectWise);
31
-
32
- /**
33
- * GET
34
- * @param agreementId
35
- * @param {Params} params
36
- * @returns {Promise<WorkTypeExclusion[]>}
37
- */
38
- WorkTypeExclusions.prototype.getWorkTypeExclusions = function (agreementId, params) {
39
- return this.api(`/finance/agreements/${agreementId}/workTypeExclusions`, 'GET', params);
40
- };
41
-
42
- /**
43
- * POST
44
- * @param agreementId
45
- * @param {WorkTypeExclusion} workTypeExclusion
46
- * @returns {Promise<WorkTypeExclusion>}
47
- */
48
- WorkTypeExclusions.prototype.createWorkTypeExclusion = function (agreementId, workTypeExclusion) {
49
- return this.api(`/finance/agreements/${agreementId}/workTypeExclusions`, 'POST', workTypeExclusion);
50
- };
51
-
52
- /**
53
- * GET
54
- * @param agreementId
55
- * @param {ParamsConditions} params
56
- * @returns {Promise<Count>}
57
- */
58
- WorkTypeExclusions.prototype.getWorkTypeExclusionsCount = function (agreementId, params) {
59
- return this.api(`/finance/agreements/${agreementId}/workTypeExclusions/count`, 'GET', params);
60
- };
61
-
62
- /**
63
- * DELETE
64
- * @param agreementId
65
- * @param workTypeExclusionId
66
- * @returns {Promise<DeleteResponse>}
67
- */
68
- WorkTypeExclusions.prototype.deleteWorkTypeExclusionById = function (agreementId, workTypeExclusionId) {
69
- return this.api(`/finance/agreements/${agreementId}/workTypeExclusions/${workTypeExclusionId}`, 'DELETE');
70
- };
71
-
72
-
73
- /**
74
- *
75
- * @type {WorkTypeExclusions}
76
- */
77
- module.exports = WorkTypeExclusions;
78
-
@@ -1,124 +0,0 @@
1
- /**
2
- * Created by kgrube on 1/22/2016.
3
- */
4
-
5
- /**
6
- * @private
7
- */
8
- const inherits = require('util').inherits;
9
- const ConnectWise = require('../ConnectWise.js');
10
-
11
- /**
12
- * @typedef {object} WorkType
13
- * @property {number} id
14
- * @property {WorkTypeHref} workType
15
- * @property {number} locationId
16
- * @property {string} rateType ['AdjAmount', 'Custom', 'Multiplier']
17
- * @property {string} billTime ['Billable', 'DoNotBill', 'NoCharge', 'NoDefault']
18
- * @property {number} rate
19
- * @property {number} hoursMax
20
- * @property {number} hoursMin
21
- * @property {number} roundBillHours
22
- * @property {number} overageRate
23
- * @property {string} overageRateType ['AdjAmount', 'Custom', 'Multiplier']
24
- * @property {number} agreementLimit
25
- * @property {SiteHref} site
26
- * @property {string} effectiveDate
27
- * @property {string} endingDate
28
- * @property {number} agreementId
29
- * @property {CompanyHref} company
30
- * @property {object} _info
31
- * @property {string} _info.lastUpdated
32
- * @property {string} _info.updatedBy
33
- */
34
-
35
- /**
36
- *
37
- * @param {CWOptions} options
38
- * @inherits {ConnectWise}
39
- * @constructor
40
- */
41
- function WorkTypes(options) {
42
- ConnectWise.apply(this, Array.prototype.slice.call(arguments));
43
- }
44
-
45
- inherits(WorkTypes, ConnectWise);
46
-
47
- /**
48
- * GET
49
- * @param agreementId
50
- * @param {Params} params
51
- * @returns {Promise<WorkType[]>}
52
- */
53
- WorkTypes.prototype.getWorkTypes = function (agreementId, params) {
54
- return this.api(`/finance/agreements/${agreementId}/workTypes`, 'GET', params);
55
- };
56
-
57
- /**
58
- * POST
59
- * @param agreementId
60
- * @param {WorkType} workType
61
- * @returns {Promise<WorkType>}
62
- */
63
- WorkTypes.prototype.createWorkType = function (agreementId, workType) {
64
- return this.api(`/finance/agreements/${agreementId}/workTypes`, 'POST', workType);
65
- };
66
-
67
- /**
68
- * GET
69
- * @param agreementId
70
- * @param {ParamsConditions} params
71
- * @returns {Promise<Count>}
72
- */
73
- WorkTypes.prototype.getWorkTypesCount = function (agreementId, params) {
74
- return this.api(`/finance/agreements/${agreementId}/workTypes/count`, 'GET', params);
75
- };
76
-
77
- /**
78
- * DELETE
79
- * @param agreementId
80
- * @param workTypeId
81
- * @returns {Promise<DeleteResponse>}
82
- */
83
- WorkTypes.prototype.deleteWorkTypeById = function (agreementId, workTypeId) {
84
- return this.api(`/finance/agreements/${agreementId}/workTypes/${workTypeId}`, 'DELETE');
85
- };
86
-
87
- /**
88
- * GET
89
- * @param agreementId
90
- * @param workTypeId
91
- * @returns {Promise<WorkType>}
92
- */
93
- WorkTypes.prototype.getWorkTypeById = function (agreementId, workTypeId) {
94
- return this.api(`/finance/agreements/${agreementId}/workTypes/${workTypeId}`, 'GET');
95
- };
96
-
97
- /**
98
- * PATCH
99
- * @param agreementId
100
- * @param workTypeId
101
- * @param {Operations[]} operations
102
- * @returns {Promise<WorkType>}
103
- */
104
- WorkTypes.prototype.updateWorkType = function (agreementId, workTypeId, operations) {
105
- return this.api(`/finance/agreements/${agreementId}/workTypes/${workTypeId}`, 'PATCH', operations);
106
- };
107
-
108
- /**
109
- * PUT
110
- * @param agreementId
111
- * @param workTypeId
112
- * @param {WorkType} workType
113
- * @returns {Promise<WorkType>}
114
- */
115
- WorkTypes.prototype.replaceWorkType = function (agreementId, workTypeId, workType) {
116
- return this.api(`/finance/agreements/${agreementId}/workTypes/${workTypeId}`, 'PUT', workType);
117
- };
118
-
119
- /**
120
- *
121
- * @type {WorkTypes}
122
- */
123
- module.exports = WorkTypes;
124
-
@@ -1,50 +0,0 @@
1
- /**
2
- * Created by kgrube on 1/22/2015.
3
- * @author kgrube
4
- */
5
-
6
- /**
7
- * @typedef {object} FinanceAPI
8
- * @property {Additions} Additions
9
- * @property {Adjustments} Adjustments
10
- * @property {Agreements} Agreements
11
- * @property {AgreementSites} AgreementSites
12
- * @property {BoardDefaults} BoardDefaults
13
- * @property {WorkRoles} WorkRoles
14
- * @property {WorkTypeExclusions} WorkTypeExclusions
15
- * @property {WorkTypes} WorkTypes
16
- */
17
-
18
- /**
19
- *
20
- * @param options
21
- * @returns {FinanceAPI}
22
- * @constructor
23
- */
24
- function FinanceAPI(options) {
25
- const _Additions = require('./Additions');
26
- const _Adjustments = require('./Adjustments');
27
- const _Agreements = require('./Agreements');
28
- const _AgreementSites = require('./AgreementSites');
29
- const _BoardDefaults = require('./BoardDefaults');
30
- const _WorkRoles = require('./WorkRoles');
31
- const _WorkTypeExclusions = require('./WorkTypeExclusions');
32
- const _WorkTypes = require('./WorkTypes');
33
-
34
- return {
35
- Additions: new _Additions(options),
36
- Adjustments: new _Adjustments(options),
37
- Agreements: new _Agreements(options),
38
- AgreementSites: new _AgreementSites(options),
39
- BoardDefaults: new _BoardDefaults(options),
40
- WorkRoles: new _WorkRoles(options),
41
- WorkTypeExclusions: new _WorkTypeExclusions(options),
42
- WorkTypes: new _WorkTypes(options)
43
- }
44
- }
45
-
46
- /**
47
- *
48
- * @type {FinanceAPI}
49
- */
50
- module.exports = FinanceAPI;
@@ -1,142 +0,0 @@
1
- /**
2
- * Created by kgrube on 3/10/2016.
3
- */
4
-
5
-
6
- /**
7
- * @private
8
- */
9
- const inherits = require('util').inherits;
10
- const ConnectWise = require('../ConnectWise.js');
11
-
12
- /**
13
- * @typedef {object} Project
14
- * @property {string} actualEnd
15
- * @property {number} actualHours
16
- * @property {string} actualStart
17
- * @property {AgreementHref} agreement
18
- * @property {string} billExpenses ['Billable', 'DoNotBill', 'NoCharge', 'NoDefault']
19
- * @property {string} billProducts ['Billable', 'DoNotBill', 'NoCharge', 'NoDefault']
20
- * @property {boolean} billProjectAfterClosedFlag
21
- * @property {string} billTime ['Billable', 'DoNotBill', 'NoCharge', 'NoDefault']
22
- * @property {boolean} billUnapprovedTimeAndExpense
23
- * @property {number} billingAmount
24
- * @property {string} billingAttention
25
- * @property {string} billingMethod ['ActualRates', 'FixedFee', 'NotToExceed', 'OverrideRate']
26
- * @property {string} billingRateType ['WorkRole', 'StaffMember']
27
- * @property {BoardHref} board
28
- * @property {string} budgetAnalysis ['ActualHours', 'BillableHours']
29
- * @property {boolean} budgetFlag
30
- * @property {number} budgetHours
31
- * @property {CompanyHref} company
32
- * @property {ContactHref} contact
33
- * @property {string} customerPO
34
- * @property {string} description
35
- * @property {number} downpayment note: as of CW2016.1, this is typo'd as 'downpayment' and not 'downPayment'
36
- * @property {string} estimatedEnd
37
- * @property {number} estimatedExpenseRevenue
38
- * @property {number} estimatedHours
39
- * @property {number} estimatedProductRevenue
40
- * @property {string} estimatedStart
41
- * @property {number} estimatedTimeRevenue
42
- * @property {MemberHref} expenseApprover
43
- * @property {number} id projectId
44
- * @property {MemberHref} manager
45
- * @property {string} name projectName
46
- * @property {OpportunityHref} opportunity
47
- * @property {number} projectTemplateId
48
- * @property {boolean} restrictDownPaymentFlag
49
- * @property {string} scheduledEnd
50
- * @property {number} scheduledHours
51
- * @property {string} scheduledStart
52
- * @property {SiteHref} site
53
- * @property {ProjectStatusHref} status
54
- * @property {MemberHref} timeApprover
55
- * @property {ProjectTypeHref} type
56
- * @property {object} _info
57
- * @property {string} _info.lastUpdated
58
- * @property {string} _info.updatedBy
59
- *
60
- */
61
-
62
- /**
63
- *
64
- * @param {CWOptions} options
65
- * @inherits {ConnectWise}
66
- * @constructor
67
- */
68
- function Projects(options) {
69
- ConnectWise.apply(this, Array.prototype.slice.call(arguments));
70
- }
71
-
72
- inherits(Projects, ConnectWise);
73
-
74
- /**
75
- *
76
- * @param {Params} params
77
- * @returns {Promise<Project[]>}
78
- */
79
- Projects.prototype.getProjects = function (params) {
80
- return this.api('/project/projects', 'GET', params);
81
- };
82
-
83
- /**
84
- *
85
- * @param {Project} project
86
- * @returns {Promise<Project>}
87
- */
88
- Projects.prototype.createProject = function (project) {
89
- return this.api('/project/projects', 'POST', project);
90
- };
91
-
92
- /**
93
- *
94
- * @param {ParamsConditions} conditions
95
- * @returns {Promise<Count>}
96
- */
97
- Projects.prototype.getProjectsCount = function (conditions) {
98
- return this.api('/project/projects', 'GET', conditions);
99
- };
100
-
101
- /**
102
- *
103
- * @param {string|number} projectId
104
- * @returns {Promise<DeleteResponse>}
105
- */
106
- Projects.prototype.deleteProjectById = function (projectId) {
107
- return this.api(`/project/projects/${projectId}`, 'DELETE');
108
- };
109
-
110
- /**
111
- *
112
- * @param {string|number} projectId
113
- * @returns {Promise<Project>}
114
- */
115
- Projects.prototype.getProjectById = function (projectId) {
116
- return this.api(`/project/projects/${projectId}`, 'GET');
117
- };
118
-
119
- /**
120
- *
121
- * @param {string|number} projectId
122
- * @param {Operations[]} operations
123
- * @returns {Promise<Project>}
124
- */
125
- Projects.prototype.updateProject = function (projectId, operations) {
126
- return this.api(`/project/projects/${projectId}`, 'PATCH', operations);
127
- };
128
-
129
- /**
130
- *
131
- * @param {string|number} projectId
132
- * @param {Project} project
133
- * @returns {Promise<Project>}
134
- */
135
- Projects.prototype.replaceProject = function (projectId, project) {
136
- return this.api(`/project/projects/${projectId}`, 'PUT', project);
137
- };
138
-
139
- /**
140
- * @type {Projects}
141
- */
142
- module.exports = Projects;
@@ -1,28 +0,0 @@
1
- /**
2
- * Created by kgrube on 12/20/2015.
3
- * @author kgrube
4
- */
5
-
6
- /**
7
- * @typedef {object} ProjectAPI
8
- * @property Projects
9
- */
10
-
11
- /**
12
- *
13
- * @param options
14
- * @returns {ProjectAPI}
15
- * @constructor
16
- */
17
- function ProjectAPI(options) {
18
- const _Projects = require('./Projects');
19
- return {
20
- Projects: new _Projects(options)
21
- }
22
- }
23
-
24
- /**
25
- *
26
- * @type {ProjectAPI}
27
- */
28
- module.exports = ProjectAPI;
@@ -1,149 +0,0 @@
1
- const inherits = require('util').inherits;
2
- const ConnectWise = require('../ConnectWise.js');
3
-
4
- /**
5
- * @typedef {object} Activity
6
- * @property id
7
- * @property name
8
- * @property {object} type
9
- * @property type.id
10
- * @property type.name
11
- * @property {TypeHref} type._info
12
- * @property {object} company
13
- * @property company.id
14
- * @property company.identifier
15
- * @property company.name
16
- * @property {CompanyHref} company._info
17
- * @property {object} contact
18
- * @property contact.id
19
- * @property contact.name
20
- * @property {CompanyHref} company._info
21
- * @property email
22
- * @property {object} status
23
- * @property status.id
24
- * @property status.name
25
- * @property {StatusHref} status._info
26
- * @property {object} opportunity
27
- * @property opportunity.id
28
- * @property opportunity.name
29
- * @property {OpportunityHref} opportunity._info
30
- * @property notes
31
- * @property dateStart
32
- * @property {object} assignedBy
33
- * @property assignedBy.id
34
- * @property assignedBy.identifier
35
- * @property assignedBy.name
36
- * @property {MemberHref} assignedBy._info
37
- * @property {object} assignTo
38
- * @property assignTo.id
39
- * @property assignTo.identifier
40
- * @property assignTo.name
41
- * @property {MemberHref} assignTo._info
42
- * @property notifyFlag
43
- * @property mobileGuid
44
- * @property {object} currency
45
- * @property currency.id
46
- * @property currency.symbol
47
- * @property currency.isoCode
48
- * @property currency.name
49
- * @property {CurrencyHref} currency._info
50
- * @property {InfoHref} _info
51
- */
52
-
53
- /**
54
- * @typedef {object} ActivityType
55
- * @property id
56
- * @property name
57
- * @property points
58
- * @property defaultFlag
59
- * @property inactiveFlag
60
- * @property emailFlag
61
- * @property memoFlag
62
- * @property _info
63
- * @property _info.lastUpdated
64
- * @property _info.updatedBy
65
- */
66
-
67
-
68
- /**
69
- * @property {object} ActivityStatus
70
- * @property id
71
- * @property name
72
- * @property defaultFlag
73
- * @property inactiveFlag
74
- * @property spawnFollowupFlag
75
- * @property closedFlag
76
- * @property _info
77
- * @property _info.lastUpdated
78
- */
79
-
80
- /**
81
- *
82
- * @constructor
83
- */
84
- function Activities(options) {
85
- ConnectWise.apply(this, Array.prototype.slice.call(arguments));
86
- }
87
-
88
- inherits(Activities, ConnectWise);
89
-
90
- Activities.prototype.createActivity = function (activity) {
91
- return this.api('/sales/activities', 'POST', activity);
92
- };
93
-
94
- /**
95
- * GET
96
- * @param {Params} params
97
- * @returns {Promise<Activity[]>}
98
- */
99
- Activities.prototype.getActivities = function (params) {
100
- return this.api('/sales/activities', 'GET', params);
101
- };
102
-
103
- /**
104
- * GET
105
- * @returns {Promise<ActivityType[]>}
106
- */
107
- Activities.prototype.getActivityTypes = function (params) {
108
- return this.api('/sales/activities/types', 'GET', params);
109
- };
110
-
111
- /**
112
- *
113
- * @returns {Promise<ActivityStatus[]>}
114
- */
115
- Activities.prototype.getActivityStatuses = function () {
116
- return this.api('/sales/activities/statuses', 'GET');
117
- };
118
-
119
- /**
120
- *
121
- * @param id
122
- * @returns {Promise<{DeleteResponse}>}
123
- */
124
- Activities.prototype.deleteActivityById = function (id) {
125
- return this.api(`/sales/activities/${id}`, 'DELETE');
126
- };
127
-
128
- /**
129
- *
130
- * @param id
131
- * @param {Operations[]} ops
132
- * @returns {Promise<Activity>}
133
- */
134
- Activities.prototype.updateActivity = function (id, ops) {
135
- return this.api(`/sales/activities/${id}`, 'PATCH', ops);
136
- };
137
-
138
- /**
139
- *
140
- * @param id
141
- * @returns {Promise<Activity>}
142
- */
143
- Activities.prototype.getActivityById = function (id) {
144
- return this.api(`/sales/activities/${id}`, 'GET');
145
- };
146
-
147
- module.exports = Activities;
148
-
149
-
@@ -1,14 +0,0 @@
1
- /**
2
- * @typedef {object} SalesAPI
3
- * @property {Activities} Activities
4
- **/
5
-
6
- function SalesAPI(options) {
7
- const _Activities = require('./Activities');
8
-
9
- return {
10
- Activities: new _Activities(options),
11
- };
12
- }
13
-
14
- module.exports = SalesAPI;
@@ -1,109 +0,0 @@
1
- /**
2
- * Created by kgrube on 1/24/2017.
3
- */
4
-
5
- /**
6
- * @private
7
- */
8
- const inherits = require('util').inherits;
9
- const ConnectWise = require('../ConnectWise.js');
10
-
11
- /**
12
- * @typedef {object} ScheduleEntry
13
- * @property id
14
- * @property objectId
15
- * @property name
16
- * @property {MemberHref} member
17
- * @property {ServiceLocationHref} where
18
- * @property dateStart
19
- * @property dateEnd
20
- * @property {ReminderHref} reminder
21
- * @property {ScheduleStatusHref} status
22
- * @property {ScheduleTypeHref} type
23
- * @property doneFlag
24
- * @property acknowledgedFlag
25
- * @property ownerFlag
26
- * @property allowScheduleConflictsFlag
27
- * @property addMemberToProjectFlag
28
- * @property projectRoleId
29
- * @property mobileGuid
30
- * @property closeDate
31
- * @property hours
32
- * @property {InfoHref} _info
33
- *
34
- */
35
-
36
- /**
37
- *
38
- * @param {CWOptions} options
39
- * @inherits {ConnectWise}
40
- * @constructor
41
- */
42
- function ScheduleEntries(options) {
43
- ConnectWise.apply(this, Array.prototype.slice.call(arguments));
44
- }
45
-
46
- inherits(ScheduleEntries, ConnectWise);
47
-
48
- /**
49
- * @param {Params} params
50
- * @returns {Promise<ScheduleEntry[]>}
51
- */
52
- ScheduleEntries.prototype.getScheduleEntries = function (params) {
53
- return this.api('/schedule/entries', 'GET', params);
54
- };
55
-
56
- /**
57
- * @param {ScheduleEntry} scheduleEntry
58
- * @returns {Promise<ScheduleEntry>}
59
- */
60
- ScheduleEntries.prototype.createSchedule = function (scheduleEntry) {
61
- return this.api('/schedule/entries', 'POST', scheduleEntry);
62
- };
63
-
64
- /**
65
- * @param {Params} params
66
- * @returns {Promise<Count>}
67
- */
68
- ScheduleEntries.prototype.getScheduleEntriesCount = function (params) {
69
- return this.api('/schedule/entries/count', 'GET', params);
70
- };
71
-
72
- /**
73
- * @param id scheduleId
74
- * @returns {Promise<ScheduleEntry[]>}
75
- */
76
- ScheduleEntries.prototype.getScheduleEntryById = function (id) {
77
- return this.api(`/schedule/entries/${id}`, 'GET');
78
- };
79
-
80
- /**
81
- * @param id scheduleId
82
- * @returns {Promise<ScheduleEntry[]>}
83
- */
84
- ScheduleEntries.prototype.deleteById = function (id) {
85
- return this.api(`/schedule/entries/${id}`, 'DELETE');
86
- };
87
-
88
- /**
89
- * @param id scheduleId
90
- * @returns {Promise<ScheduleEntry[]>}
91
- */
92
- ScheduleEntries.prototype.replaceSchedule = function (id) {
93
- return this.api(`/schedule/entries/${id}`, 'PUT');
94
- };
95
-
96
- /**
97
- * @param id scheduleId
98
- * @param {Operations[]} ops
99
- * @returns {Promise<ScheduleEntry[]>}
100
- */
101
- ScheduleEntries.prototype.updateSchedule = function (id, ops) {
102
- return this.api(`/schedule/entries/${id}`, 'PATCH', ops);
103
- };
104
-
105
- /**
106
- *
107
- * @type {ScheduleEntries}
108
- */
109
- module.exports = ScheduleEntries;