asana 1.0.2 → 2.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 (1041) hide show
  1. package/.babelrc +33 -0
  2. package/.github/workflows/publish.yaml +72 -0
  3. package/.swagger-codegen/VERSION +1 -0
  4. package/.swagger-codegen-ignore +21 -1
  5. package/README.md +885 -296
  6. package/codegen/swagger/README.md +74 -0
  7. package/codegen/swagger/pom.xml +129 -0
  8. package/codegen/swagger/src/main/java/com/asana/codegen/ExampleUtility.java +27 -0
  9. package/codegen/swagger/src/main/java/com/asana/codegen/JavascriptClientCodegenGenerator.java +79 -0
  10. package/codegen/swagger/src/main/java/com/asana/codegen/ReadMe.java +164 -0
  11. package/codegen/swagger/src/main/resources/META-INF/services/io.swagger.codegen.v3.CodegenConfig +1 -0
  12. package/codegen/templates/ApiClient.mustache +618 -0
  13. package/codegen/templates/README.mustache +439 -0
  14. package/codegen/templates/api_doc.mustache +51 -0
  15. package/codegen/templates/code_sample.mustache +47 -0
  16. package/codegen/templates/code_samples.mustache +11 -0
  17. package/dist/ApiClient.js +607 -0
  18. package/dist/api/AttachmentsApi.js +217 -0
  19. package/dist/api/AuditLogAPIApi.js +105 -0
  20. package/dist/api/BatchAPIApi.js +90 -0
  21. package/dist/api/CustomFieldSettingsApi.js +139 -0
  22. package/dist/api/CustomFieldsApi.js +376 -0
  23. package/dist/api/EventsApi.js +93 -0
  24. package/dist/api/GoalRelationshipsApi.js +271 -0
  25. package/dist/api/GoalsApi.js +486 -0
  26. package/dist/api/JobsApi.js +91 -0
  27. package/dist/api/MembershipsApi.js +161 -0
  28. package/dist/api/OrganizationExportsApi.js +130 -0
  29. package/dist/api/PortfolioMembershipsApi.js +181 -0
  30. package/dist/api/PortfoliosApi.js +560 -0
  31. package/dist/api/ProjectBriefsApi.js +219 -0
  32. package/dist/api/ProjectMembershipsApi.js +138 -0
  33. package/dist/api/ProjectStatusesApi.js +218 -0
  34. package/dist/api/ProjectTemplatesApi.js +256 -0
  35. package/dist/api/ProjectsApi.js +881 -0
  36. package/dist/api/RulesApi.js +92 -0
  37. package/dist/api/SectionsApi.js +334 -0
  38. package/dist/api/StatusUpdatesApi.js +216 -0
  39. package/dist/api/StoriesApi.js +264 -0
  40. package/dist/api/TagsApi.js +380 -0
  41. package/dist/api/TasksApi.js +1277 -0
  42. package/dist/api/TeamMembershipsApi.js +229 -0
  43. package/dist/api/TeamsApi.js +360 -0
  44. package/dist/api/TimePeriodsApi.js +139 -0
  45. package/dist/api/TimeTrackingEntriesApi.js +264 -0
  46. package/dist/api/TypeaheadApi.js +103 -0
  47. package/dist/api/UserTaskListsApi.js +137 -0
  48. package/dist/api/UsersApi.js +274 -0
  49. package/dist/api/WebhooksApi.js +258 -0
  50. package/dist/api/WorkspaceMembershipsApi.js +182 -0
  51. package/dist/api/WorkspacesApi.js +264 -0
  52. package/dist/index.js +3141 -0
  53. package/dist/model/AddCustomFieldSettingRequest.js +89 -0
  54. package/dist/model/AddFollowersRequest.js +68 -0
  55. package/dist/model/AddMembersRequest.js +68 -0
  56. package/dist/model/AllOfProjectResponseOwner.js +61 -0
  57. package/dist/model/AllOfProjectTemplateBaseOwner.js +61 -0
  58. package/dist/model/AllOfProjectTemplateResponseOwner.js +61 -0
  59. package/dist/model/AllOfStoryResponseNewDateValue.js +60 -0
  60. package/dist/model/AllOfStoryResponseOldDateValue.js +60 -0
  61. package/dist/model/AllOfUserTaskListBaseOwner.js +61 -0
  62. package/dist/model/AllOfUserTaskListBaseWorkspace.js +61 -0
  63. package/dist/model/AllOfUserTaskListCompactOwner.js +61 -0
  64. package/dist/model/AllOfUserTaskListCompactWorkspace.js +61 -0
  65. package/dist/model/AllOfUserTaskListRequestOwner.js +61 -0
  66. package/dist/model/AllOfUserTaskListRequestWorkspace.js +61 -0
  67. package/dist/model/AllOfUserTaskListResponseOwner.js +61 -0
  68. package/dist/model/AllOfUserTaskListResponseWorkspace.js +61 -0
  69. package/dist/model/AllOfWorkspaceMembershipResponseUserTaskListOwner.js +61 -0
  70. package/dist/model/AllOfWorkspaceMembershipResponseUserTaskListWorkspace.js +61 -0
  71. package/dist/model/AsanaNamedResource.js +81 -0
  72. package/dist/model/AsanaNamedResourceArray.js +75 -0
  73. package/dist/model/AsanaResource.js +74 -0
  74. package/dist/model/AttachmentBase.js +88 -0
  75. package/dist/model/AttachmentCompact.js +88 -0
  76. package/dist/model/AttachmentRequest.js +145 -0
  77. package/dist/model/AttachmentResponse.js +143 -0
  78. package/dist/model/AttachmentResponseArray.js +75 -0
  79. package/dist/model/AttachmentResponseData.js +68 -0
  80. package/dist/model/AttachmentResponseParent.js +88 -0
  81. package/dist/model/AuditLogEvent.js +116 -0
  82. package/dist/model/AuditLogEventActor.js +120 -0
  83. package/dist/model/AuditLogEventArray.js +75 -0
  84. package/dist/model/AuditLogEventContext.js +164 -0
  85. package/dist/model/AuditLogEventDetails.js +61 -0
  86. package/dist/model/AuditLogEventResource.js +95 -0
  87. package/dist/model/BatchBody.js +66 -0
  88. package/dist/model/BatchRequest.js +67 -0
  89. package/dist/model/BatchRequestAction.js +129 -0
  90. package/dist/model/BatchRequestActions.js +129 -0
  91. package/dist/model/BatchRequestOptions.js +81 -0
  92. package/dist/model/BatchResponse.js +81 -0
  93. package/dist/model/BatchResponseArray.js +75 -0
  94. package/dist/model/CreateMembershipRequest.js +80 -0
  95. package/dist/model/CreateTimeTrackingEntryRequest.js +73 -0
  96. package/dist/model/CustomFieldBase.js +1047 -0
  97. package/dist/model/CustomFieldBaseDateValue.js +74 -0
  98. package/dist/model/CustomFieldBaseEnumOptions.js +95 -0
  99. package/dist/model/CustomFieldBaseEnumValue.js +95 -0
  100. package/dist/model/CustomFieldCompact.js +233 -0
  101. package/dist/model/CustomFieldGidEnumOptionsBody.js +66 -0
  102. package/dist/model/CustomFieldRequest.js +1070 -0
  103. package/dist/model/CustomFieldResponse.js +1069 -0
  104. package/dist/model/CustomFieldResponseArray.js +75 -0
  105. package/dist/model/CustomFieldResponseCreatedBy.js +81 -0
  106. package/dist/model/CustomFieldResponseData.js +68 -0
  107. package/dist/model/CustomFieldResponsePeopleValue.js +81 -0
  108. package/dist/model/CustomFieldSettingBase.js +74 -0
  109. package/dist/model/CustomFieldSettingCompact.js +74 -0
  110. package/dist/model/CustomFieldSettingResponse.js +102 -0
  111. package/dist/model/CustomFieldSettingResponseArray.js +75 -0
  112. package/dist/model/CustomFieldSettingResponseCustomField.js +1069 -0
  113. package/dist/model/CustomFieldSettingResponseData.js +68 -0
  114. package/dist/model/CustomFieldSettingResponseParent.js +81 -0
  115. package/dist/model/CustomFieldSettingResponseProject.js +81 -0
  116. package/dist/model/CustomFieldsBody.js +66 -0
  117. package/dist/model/CustomFieldsCustomFieldGidBody.js +66 -0
  118. package/dist/model/DateVariableCompact.js +80 -0
  119. package/dist/model/DateVariableRequest.js +73 -0
  120. package/dist/model/EmptyResponse.js +61 -0
  121. package/dist/model/EmptyResponseData.js +68 -0
  122. package/dist/model/EnumOption.js +95 -0
  123. package/dist/model/EnumOptionBase.js +95 -0
  124. package/dist/model/EnumOptionData.js +68 -0
  125. package/dist/model/EnumOptionInsertRequest.js +82 -0
  126. package/dist/model/EnumOptionRequest.js +109 -0
  127. package/dist/model/EnumOptionsEnumOptionGidBody.js +66 -0
  128. package/dist/model/EnumOptionsInsertBody.js +66 -0
  129. package/dist/model/Error.js +80 -0
  130. package/dist/model/ErrorResponse.js +67 -0
  131. package/dist/model/ErrorResponseErrors.js +80 -0
  132. package/dist/model/EventResponse.js +109 -0
  133. package/dist/model/EventResponseArray.js +75 -0
  134. package/dist/model/EventResponseChange.js +95 -0
  135. package/dist/model/EventResponseParent.js +81 -0
  136. package/dist/model/EventResponseResource.js +81 -0
  137. package/dist/model/EventResponseUser.js +81 -0
  138. package/dist/model/GoalAddSubgoalRequest.js +82 -0
  139. package/dist/model/GoalAddSupportingRelationshipRequest.js +89 -0
  140. package/dist/model/GoalAddSupportingWorkRequest.js +68 -0
  141. package/dist/model/GoalBase.js +123 -0
  142. package/dist/model/GoalCompact.js +88 -0
  143. package/dist/model/GoalGidAddFollowersBody.js +66 -0
  144. package/dist/model/GoalGidAddSupportingRelationshipBody.js +66 -0
  145. package/dist/model/GoalGidRemoveFollowersBody.js +66 -0
  146. package/dist/model/GoalGidRemoveSupportingRelationshipBody.js +66 -0
  147. package/dist/model/GoalGidSetMetricBody.js +66 -0
  148. package/dist/model/GoalGidSetMetricCurrentValueBody.js +66 -0
  149. package/dist/model/GoalMembershipBase.js +102 -0
  150. package/dist/model/GoalMembershipBaseGoal.js +88 -0
  151. package/dist/model/GoalMembershipCompact.js +102 -0
  152. package/dist/model/GoalMembershipResponse.js +102 -0
  153. package/dist/model/GoalMetricBase.js +203 -0
  154. package/dist/model/GoalMetricCurrentValueRequest.js +81 -0
  155. package/dist/model/GoalMetricRequest.js +203 -0
  156. package/dist/model/GoalRelationshipBase.js +119 -0
  157. package/dist/model/GoalRelationshipBaseSupportedGoal.js +88 -0
  158. package/dist/model/GoalRelationshipBaseSupportingResource.js +81 -0
  159. package/dist/model/GoalRelationshipCompact.js +112 -0
  160. package/dist/model/GoalRelationshipRequest.js +119 -0
  161. package/dist/model/GoalRelationshipResponse.js +119 -0
  162. package/dist/model/GoalRelationshipResponseArray.js +75 -0
  163. package/dist/model/GoalRelationshipResponseData.js +68 -0
  164. package/dist/model/GoalRelationshipsGoalRelationshipGidBody.js +66 -0
  165. package/dist/model/GoalRemoveSubgoalRequest.js +68 -0
  166. package/dist/model/GoalRemoveSupportingRelationshipRequest.js +68 -0
  167. package/dist/model/GoalRequest.js +157 -0
  168. package/dist/model/GoalRequestBase.js +151 -0
  169. package/dist/model/GoalResponse.js +195 -0
  170. package/dist/model/GoalResponseArray.js +75 -0
  171. package/dist/model/GoalResponseCurrentStatusUpdate.js +110 -0
  172. package/dist/model/GoalResponseData.js +68 -0
  173. package/dist/model/GoalResponseLikes.js +74 -0
  174. package/dist/model/GoalResponseMetric.js +210 -0
  175. package/dist/model/GoalResponseTeam.js +81 -0
  176. package/dist/model/GoalResponseTimePeriod.js +144 -0
  177. package/dist/model/GoalResponseWorkspace.js +81 -0
  178. package/dist/model/GoalUpdateRequest.js +158 -0
  179. package/dist/model/GoalsBody.js +66 -0
  180. package/dist/model/GoalsGoalGidBody.js +66 -0
  181. package/dist/model/InlineResponse412.js +73 -0
  182. package/dist/model/InlineResponse412Errors.js +66 -0
  183. package/dist/model/JobBase.js +136 -0
  184. package/dist/model/JobBaseNewProject.js +81 -0
  185. package/dist/model/JobBaseNewProjectTemplate.js +81 -0
  186. package/dist/model/JobBaseNewTask.js +115 -0
  187. package/dist/model/JobCompact.js +136 -0
  188. package/dist/model/JobResponse.js +136 -0
  189. package/dist/model/JobResponseData.js +68 -0
  190. package/dist/model/Like.js +74 -0
  191. package/dist/model/MemberCompact.js +81 -0
  192. package/dist/model/MembershipRequest.js +66 -0
  193. package/dist/model/MembershipResponse.js +60 -0
  194. package/dist/model/MembershipResponseArray.js +75 -0
  195. package/dist/model/MembershipResponseData.js +68 -0
  196. package/dist/model/MembershipsBody.js +66 -0
  197. package/dist/model/ModifyDependenciesRequest.js +66 -0
  198. package/dist/model/ModifyDependentsRequest.js +67 -0
  199. package/dist/model/NextPage.js +81 -0
  200. package/dist/model/OrganizationExportBase.js +129 -0
  201. package/dist/model/OrganizationExportCompact.js +129 -0
  202. package/dist/model/OrganizationExportRequest.js +67 -0
  203. package/dist/model/OrganizationExportResponse.js +129 -0
  204. package/dist/model/OrganizationExportResponseData.js +68 -0
  205. package/dist/model/OrganizationExportsBody.js +66 -0
  206. package/dist/model/PortfolioAddItemRequest.js +82 -0
  207. package/dist/model/PortfolioBase.js +185 -0
  208. package/dist/model/PortfolioCompact.js +81 -0
  209. package/dist/model/PortfolioGidAddCustomFieldSettingBody.js +66 -0
  210. package/dist/model/PortfolioGidAddItemBody.js +66 -0
  211. package/dist/model/PortfolioGidAddMembersBody.js +66 -0
  212. package/dist/model/PortfolioGidRemoveCustomFieldSettingBody.js +66 -0
  213. package/dist/model/PortfolioGidRemoveItemBody.js +66 -0
  214. package/dist/model/PortfolioGidRemoveMembersBody.js +66 -0
  215. package/dist/model/PortfolioMembershipBase.js +88 -0
  216. package/dist/model/PortfolioMembershipBasePortfolio.js +81 -0
  217. package/dist/model/PortfolioMembershipCompact.js +88 -0
  218. package/dist/model/PortfolioMembershipResponse.js +88 -0
  219. package/dist/model/PortfolioMembershipResponseArray.js +75 -0
  220. package/dist/model/PortfolioMembershipResponseData.js +68 -0
  221. package/dist/model/PortfolioRemoveItemRequest.js +68 -0
  222. package/dist/model/PortfolioRequest.js +206 -0
  223. package/dist/model/PortfolioResponse.js +277 -0
  224. package/dist/model/PortfolioResponseArray.js +75 -0
  225. package/dist/model/PortfolioResponseCurrentStatusUpdate.js +110 -0
  226. package/dist/model/PortfolioResponseCustomFieldSettings.js +102 -0
  227. package/dist/model/PortfolioResponseCustomFields.js +233 -0
  228. package/dist/model/PortfolioResponseData.js +68 -0
  229. package/dist/model/PortfolioResponseWorkspace.js +81 -0
  230. package/dist/model/PortfoliosBody.js +66 -0
  231. package/dist/model/PortfoliosPortfolioGidBody.js +66 -0
  232. package/dist/model/Preview.js +116 -0
  233. package/dist/model/ProjectBase.js +329 -0
  234. package/dist/model/ProjectBaseCurrentStatus.js +160 -0
  235. package/dist/model/ProjectBaseCurrentStatusUpdate.js +110 -0
  236. package/dist/model/ProjectBaseWorkspace.js +81 -0
  237. package/dist/model/ProjectBriefBase.js +88 -0
  238. package/dist/model/ProjectBriefCompact.js +74 -0
  239. package/dist/model/ProjectBriefRequest.js +95 -0
  240. package/dist/model/ProjectBriefResponse.js +109 -0
  241. package/dist/model/ProjectBriefResponseData.js +68 -0
  242. package/dist/model/ProjectBriefResponseProject.js +81 -0
  243. package/dist/model/ProjectBriefsProjectBriefGidBody.js +66 -0
  244. package/dist/model/ProjectCompact.js +81 -0
  245. package/dist/model/ProjectDuplicateRequest.js +89 -0
  246. package/dist/model/ProjectDuplicateRequestScheduleDates.js +83 -0
  247. package/dist/model/ProjectGidAddCustomFieldSettingBody.js +66 -0
  248. package/dist/model/ProjectGidAddFollowersBody.js +66 -0
  249. package/dist/model/ProjectGidAddMembersBody.js +66 -0
  250. package/dist/model/ProjectGidDuplicateBody.js +66 -0
  251. package/dist/model/ProjectGidProjectBriefsBody.js +66 -0
  252. package/dist/model/ProjectGidProjectStatusesBody.js +66 -0
  253. package/dist/model/ProjectGidRemoveCustomFieldSettingBody.js +66 -0
  254. package/dist/model/ProjectGidRemoveFollowersBody.js +66 -0
  255. package/dist/model/ProjectGidRemoveMembersBody.js +66 -0
  256. package/dist/model/ProjectGidSaveAsTemplateBody.js +66 -0
  257. package/dist/model/ProjectGidSectionsBody.js +66 -0
  258. package/dist/model/ProjectMembershipBase.js +81 -0
  259. package/dist/model/ProjectMembershipCompact.js +81 -0
  260. package/dist/model/ProjectMembershipResponse.js +153 -0
  261. package/dist/model/ProjectMembershipResponseArray.js +75 -0
  262. package/dist/model/ProjectMembershipResponseData.js +68 -0
  263. package/dist/model/ProjectMembershipResponseMember.js +81 -0
  264. package/dist/model/ProjectRequest.js +359 -0
  265. package/dist/model/ProjectResponse.js +574 -0
  266. package/dist/model/ProjectResponseArray.js +75 -0
  267. package/dist/model/ProjectResponseCompletedBy.js +81 -0
  268. package/dist/model/ProjectResponseCreatedFromTemplate.js +81 -0
  269. package/dist/model/ProjectResponseData.js +68 -0
  270. package/dist/model/ProjectResponseProjectBrief.js +74 -0
  271. package/dist/model/ProjectResponseTeam.js +81 -0
  272. package/dist/model/ProjectSaveAsTemplateRequest.js +91 -0
  273. package/dist/model/ProjectSectionInsertRequest.js +82 -0
  274. package/dist/model/ProjectStatusBase.js +133 -0
  275. package/dist/model/ProjectStatusCompact.js +81 -0
  276. package/dist/model/ProjectStatusRequest.js +133 -0
  277. package/dist/model/ProjectStatusResponse.js +160 -0
  278. package/dist/model/ProjectStatusResponseArray.js +75 -0
  279. package/dist/model/ProjectStatusResponseData.js +68 -0
  280. package/dist/model/ProjectTemplateBase.js +241 -0
  281. package/dist/model/ProjectTemplateBaseRequestedDates.js +80 -0
  282. package/dist/model/ProjectTemplateBaseRequestedRoles.js +81 -0
  283. package/dist/model/ProjectTemplateBaseTeam.js +81 -0
  284. package/dist/model/ProjectTemplateCompact.js +81 -0
  285. package/dist/model/ProjectTemplateGidInstantiateProjectBody.js +66 -0
  286. package/dist/model/ProjectTemplateInstantiateProjectRequest.js +105 -0
  287. package/dist/model/ProjectTemplateInstantiateProjectRequestRequestedDates.js +73 -0
  288. package/dist/model/ProjectTemplateInstantiateProjectRequestRequestedRoles.js +73 -0
  289. package/dist/model/ProjectTemplateResponse.js +241 -0
  290. package/dist/model/ProjectTemplateResponseArray.js +75 -0
  291. package/dist/model/ProjectTemplateResponseData.js +68 -0
  292. package/dist/model/ProjectsBody.js +66 -0
  293. package/dist/model/ProjectsProjectGidBody.js +66 -0
  294. package/dist/model/RemoveCustomFieldSettingRequest.js +68 -0
  295. package/dist/model/RemoveFollowersRequest.js +68 -0
  296. package/dist/model/RemoveMembersRequest.js +68 -0
  297. package/dist/model/RequestedRoleRequest.js +73 -0
  298. package/dist/model/RuleTriggerGidRunBody.js +66 -0
  299. package/dist/model/RuleTriggerRequest.js +79 -0
  300. package/dist/model/RuleTriggerResponse.js +66 -0
  301. package/dist/model/RuleTriggerResponseData.js +68 -0
  302. package/dist/model/SectionBase.js +81 -0
  303. package/dist/model/SectionCompact.js +81 -0
  304. package/dist/model/SectionGidAddTaskBody.js +66 -0
  305. package/dist/model/SectionRequest.js +82 -0
  306. package/dist/model/SectionResponse.js +102 -0
  307. package/dist/model/SectionResponseArray.js +75 -0
  308. package/dist/model/SectionResponseData.js +68 -0
  309. package/dist/model/SectionTaskInsertRequest.js +82 -0
  310. package/dist/model/SectionsInsertBody.js +66 -0
  311. package/dist/model/SectionsSectionGidBody.js +66 -0
  312. package/dist/model/StatusUpdateBase.js +187 -0
  313. package/dist/model/StatusUpdateCompact.js +110 -0
  314. package/dist/model/StatusUpdateRequest.js +196 -0
  315. package/dist/model/StatusUpdateResponse.js +264 -0
  316. package/dist/model/StatusUpdateResponseArray.js +75 -0
  317. package/dist/model/StatusUpdateResponseData.js +68 -0
  318. package/dist/model/StatusUpdateResponseParent.js +81 -0
  319. package/dist/model/StatusUpdatesBody.js +66 -0
  320. package/dist/model/StoriesStoryGidBody.js +66 -0
  321. package/dist/model/StoryBase.js +183 -0
  322. package/dist/model/StoryCompact.js +102 -0
  323. package/dist/model/StoryRequest.js +183 -0
  324. package/dist/model/StoryResponse.js +540 -0
  325. package/dist/model/StoryResponseArray.js +75 -0
  326. package/dist/model/StoryResponseAssignee.js +81 -0
  327. package/dist/model/StoryResponseCustomField.js +233 -0
  328. package/dist/model/StoryResponseData.js +68 -0
  329. package/dist/model/StoryResponseDates.js +81 -0
  330. package/dist/model/StoryResponseOldDates.js +81 -0
  331. package/dist/model/StoryResponseOldEnumValue.js +95 -0
  332. package/dist/model/StoryResponseOldSection.js +81 -0
  333. package/dist/model/StoryResponsePreviews.js +116 -0
  334. package/dist/model/StoryResponseProject.js +81 -0
  335. package/dist/model/StoryResponseStory.js +102 -0
  336. package/dist/model/StoryResponseTag.js +81 -0
  337. package/dist/model/StoryResponseTarget.js +115 -0
  338. package/dist/model/StoryResponseTask.js +115 -0
  339. package/dist/model/TagBase.js +197 -0
  340. package/dist/model/TagCompact.js +81 -0
  341. package/dist/model/TagRequest.js +211 -0
  342. package/dist/model/TagResponse.js +226 -0
  343. package/dist/model/TagResponseArray.js +75 -0
  344. package/dist/model/TagResponseData.js +68 -0
  345. package/dist/model/TagsBody.js +66 -0
  346. package/dist/model/TaskAddFollowersRequest.js +68 -0
  347. package/dist/model/TaskAddProjectRequest.js +89 -0
  348. package/dist/model/TaskAddTagRequest.js +68 -0
  349. package/dist/model/TaskBase.js +359 -0
  350. package/dist/model/TaskBaseCompletedBy.js +81 -0
  351. package/dist/model/TaskBaseDependencies.js +74 -0
  352. package/dist/model/TaskBaseExternal.js +72 -0
  353. package/dist/model/TaskBaseMemberships.js +73 -0
  354. package/dist/model/TaskBaseSection.js +81 -0
  355. package/dist/model/TaskCompact.js +115 -0
  356. package/dist/model/TaskCountResponse.js +102 -0
  357. package/dist/model/TaskCountResponseData.js +68 -0
  358. package/dist/model/TaskDuplicateRequest.js +73 -0
  359. package/dist/model/TaskGidAddDependenciesBody.js +66 -0
  360. package/dist/model/TaskGidAddDependentsBody.js +66 -0
  361. package/dist/model/TaskGidAddFollowersBody.js +66 -0
  362. package/dist/model/TaskGidAddProjectBody.js +66 -0
  363. package/dist/model/TaskGidAddTagBody.js +66 -0
  364. package/dist/model/TaskGidDuplicateBody.js +66 -0
  365. package/dist/model/TaskGidRemoveDependenciesBody.js +66 -0
  366. package/dist/model/TaskGidRemoveDependentsBody.js +66 -0
  367. package/dist/model/TaskGidRemoveFollowersBody.js +66 -0
  368. package/dist/model/TaskGidRemoveProjectBody.js +66 -0
  369. package/dist/model/TaskGidRemoveTagBody.js +66 -0
  370. package/dist/model/TaskGidSetParentBody.js +66 -0
  371. package/dist/model/TaskGidStoriesBody.js +66 -0
  372. package/dist/model/TaskGidSubtasksBody.js +66 -0
  373. package/dist/model/TaskGidTimeTrackingEntriesBody.js +66 -0
  374. package/dist/model/TaskRemoveFollowersRequest.js +68 -0
  375. package/dist/model/TaskRemoveProjectRequest.js +68 -0
  376. package/dist/model/TaskRemoveTagRequest.js +68 -0
  377. package/dist/model/TaskRequest.js +417 -0
  378. package/dist/model/TaskResponse.js +426 -0
  379. package/dist/model/TaskResponseArray.js +75 -0
  380. package/dist/model/TaskResponseAssigneeSection.js +81 -0
  381. package/dist/model/TaskResponseCustomFields.js +1069 -0
  382. package/dist/model/TaskResponseData.js +68 -0
  383. package/dist/model/TaskResponseParent.js +115 -0
  384. package/dist/model/TaskResponseTags.js +81 -0
  385. package/dist/model/TaskResponseWorkspace.js +81 -0
  386. package/dist/model/TaskSetParentRequest.js +82 -0
  387. package/dist/model/TasksBody.js +66 -0
  388. package/dist/model/TasksTaskGidBody.js +66 -0
  389. package/dist/model/TeamAddUserRequest.js +67 -0
  390. package/dist/model/TeamBase.js +81 -0
  391. package/dist/model/TeamCompact.js +81 -0
  392. package/dist/model/TeamGidAddUserBody.js +66 -0
  393. package/dist/model/TeamGidProjectsBody.js +66 -0
  394. package/dist/model/TeamGidRemoveUserBody.js +66 -0
  395. package/dist/model/TeamMembershipBase.js +109 -0
  396. package/dist/model/TeamMembershipCompact.js +109 -0
  397. package/dist/model/TeamMembershipResponse.js +109 -0
  398. package/dist/model/TeamMembershipResponseArray.js +75 -0
  399. package/dist/model/TeamMembershipResponseData.js +68 -0
  400. package/dist/model/TeamRemoveUserRequest.js +67 -0
  401. package/dist/model/TeamRequest.js +275 -0
  402. package/dist/model/TeamResponse.js +282 -0
  403. package/dist/model/TeamResponseArray.js +75 -0
  404. package/dist/model/TeamResponseData.js +68 -0
  405. package/dist/model/TeamResponseOrganization.js +81 -0
  406. package/dist/model/TeamsBody.js +66 -0
  407. package/dist/model/TeamsTeamGidBody.js +66 -0
  408. package/dist/model/TemplateRole.js +81 -0
  409. package/dist/model/TimePeriodBase.js +151 -0
  410. package/dist/model/TimePeriodCompact.js +144 -0
  411. package/dist/model/TimePeriodResponse.js +151 -0
  412. package/dist/model/TimePeriodResponseArray.js +75 -0
  413. package/dist/model/TimePeriodResponseData.js +68 -0
  414. package/dist/model/TimeTrackingEntriesTimeTrackingEntryGidBody.js +66 -0
  415. package/dist/model/TimeTrackingEntryBase.js +109 -0
  416. package/dist/model/TimeTrackingEntryBaseData.js +68 -0
  417. package/dist/model/TimeTrackingEntryCompact.js +95 -0
  418. package/dist/model/TimeTrackingEntryCompactArray.js +75 -0
  419. package/dist/model/UpdateTimeTrackingEntryRequest.js +73 -0
  420. package/dist/model/UserBase.js +81 -0
  421. package/dist/model/UserBaseResponse.js +95 -0
  422. package/dist/model/UserBaseResponseData.js +68 -0
  423. package/dist/model/UserBaseResponsePhoto.js +96 -0
  424. package/dist/model/UserCompact.js +81 -0
  425. package/dist/model/UserRequest.js +81 -0
  426. package/dist/model/UserResponse.js +103 -0
  427. package/dist/model/UserResponseArray.js +75 -0
  428. package/dist/model/UserResponseData.js +68 -0
  429. package/dist/model/UserTaskListBase.js +95 -0
  430. package/dist/model/UserTaskListCompact.js +95 -0
  431. package/dist/model/UserTaskListRequest.js +95 -0
  432. package/dist/model/UserTaskListResponse.js +95 -0
  433. package/dist/model/UserTaskListResponseData.js +68 -0
  434. package/dist/model/WebhookCompact.js +95 -0
  435. package/dist/model/WebhookCompactResource.js +81 -0
  436. package/dist/model/WebhookFilter.js +88 -0
  437. package/dist/model/WebhookRequest.js +85 -0
  438. package/dist/model/WebhookRequestFilters.js +88 -0
  439. package/dist/model/WebhookResponse.js +131 -0
  440. package/dist/model/WebhookResponseArray.js +75 -0
  441. package/dist/model/WebhookResponseData.js +68 -0
  442. package/dist/model/WebhookUpdateRequest.js +67 -0
  443. package/dist/model/WebhooksBody.js +66 -0
  444. package/dist/model/WebhooksWebhookGidBody.js +66 -0
  445. package/dist/model/WorkspaceAddUserRequest.js +67 -0
  446. package/dist/model/WorkspaceBase.js +81 -0
  447. package/dist/model/WorkspaceCompact.js +81 -0
  448. package/dist/model/WorkspaceGidAddUserBody.js +66 -0
  449. package/dist/model/WorkspaceGidProjectsBody.js +66 -0
  450. package/dist/model/WorkspaceGidRemoveUserBody.js +66 -0
  451. package/dist/model/WorkspaceGidTagsBody.js +66 -0
  452. package/dist/model/WorkspaceMembershipBase.js +88 -0
  453. package/dist/model/WorkspaceMembershipCompact.js +88 -0
  454. package/dist/model/WorkspaceMembershipRequest.js +88 -0
  455. package/dist/model/WorkspaceMembershipResponse.js +130 -0
  456. package/dist/model/WorkspaceMembershipResponseArray.js +75 -0
  457. package/dist/model/WorkspaceMembershipResponseData.js +68 -0
  458. package/dist/model/WorkspaceMembershipResponseUserTaskList.js +95 -0
  459. package/dist/model/WorkspaceMembershipResponseVacationDates.js +74 -0
  460. package/dist/model/WorkspaceRemoveUserRequest.js +67 -0
  461. package/dist/model/WorkspaceRequest.js +81 -0
  462. package/dist/model/WorkspaceResponse.js +95 -0
  463. package/dist/model/WorkspaceResponseArray.js +75 -0
  464. package/dist/model/WorkspaceResponseData.js +68 -0
  465. package/dist/model/WorkspacesWorkspaceGidBody.js +66 -0
  466. package/mocha.opts +1 -0
  467. package/package.json +33 -44
  468. package/src/ApiClient.js +600 -0
  469. package/src/api/AttachmentsApi.js +238 -0
  470. package/src/api/AuditLogAPIApi.js +95 -0
  471. package/src/api/BatchAPIApi.js +89 -0
  472. package/src/api/CustomFieldSettingsApi.js +141 -0
  473. package/src/api/CustomFieldsApi.js +439 -0
  474. package/src/api/EventsApi.js +90 -0
  475. package/src/api/GoalRelationshipsApi.js +305 -0
  476. package/src/api/GoalsApi.js +563 -0
  477. package/src/api/JobsApi.js +88 -0
  478. package/src/api/MembershipsApi.js +181 -0
  479. package/src/api/OrganizationExportsApi.js +138 -0
  480. package/src/api/PortfolioMembershipsApi.js +190 -0
  481. package/src/api/PortfoliosApi.js +669 -0
  482. package/src/api/ProjectBriefsApi.js +246 -0
  483. package/src/api/ProjectMembershipsApi.js +141 -0
  484. package/src/api/ProjectStatusesApi.js +243 -0
  485. package/src/api/ProjectTemplatesApi.js +288 -0
  486. package/src/api/ProjectsApi.js +1040 -0
  487. package/src/api/RulesApi.js +92 -0
  488. package/src/api/SectionsApi.js +390 -0
  489. package/src/api/StatusUpdatesApi.js +241 -0
  490. package/src/api/StoriesApi.js +298 -0
  491. package/src/api/TagsApi.js +440 -0
  492. package/src/api/TasksApi.js +1454 -0
  493. package/src/api/TeamMembershipsApi.js +245 -0
  494. package/src/api/TeamsApi.js +411 -0
  495. package/src/api/TimePeriodsApi.js +142 -0
  496. package/src/api/TimeTrackingEntriesApi.js +298 -0
  497. package/src/api/TypeaheadApi.js +96 -0
  498. package/src/api/UserTaskListsApi.js +142 -0
  499. package/src/api/UsersApi.js +299 -0
  500. package/src/api/WebhooksApi.js +294 -0
  501. package/src/api/WorkspaceMembershipsApi.js +192 -0
  502. package/src/api/WorkspacesApi.js +300 -0
  503. package/src/index.js +3183 -0
  504. package/src/model/AddCustomFieldSettingRequest.js +79 -0
  505. package/src/model/AddFollowersRequest.js +55 -0
  506. package/src/model/AddMembersRequest.js +55 -0
  507. package/src/model/AllOfProjectResponseOwner.js +45 -0
  508. package/src/model/AllOfProjectTemplateBaseOwner.js +45 -0
  509. package/src/model/AllOfProjectTemplateResponseOwner.js +45 -0
  510. package/src/model/AllOfStoryResponseNewDateValue.js +44 -0
  511. package/src/model/AllOfStoryResponseOldDateValue.js +44 -0
  512. package/src/model/AllOfUserTaskListBaseOwner.js +45 -0
  513. package/src/model/AllOfUserTaskListBaseWorkspace.js +45 -0
  514. package/src/model/AllOfUserTaskListCompactOwner.js +45 -0
  515. package/src/model/AllOfUserTaskListCompactWorkspace.js +45 -0
  516. package/src/model/AllOfUserTaskListRequestOwner.js +45 -0
  517. package/src/model/AllOfUserTaskListRequestWorkspace.js +45 -0
  518. package/src/model/AllOfUserTaskListResponseOwner.js +45 -0
  519. package/src/model/AllOfUserTaskListResponseWorkspace.js +45 -0
  520. package/src/model/AllOfWorkspaceMembershipResponseUserTaskListOwner.js +45 -0
  521. package/src/model/AllOfWorkspaceMembershipResponseUserTaskListWorkspace.js +45 -0
  522. package/src/model/AsanaNamedResource.js +70 -0
  523. package/src/model/AsanaNamedResourceArray.js +63 -0
  524. package/src/model/AsanaResource.js +62 -0
  525. package/src/model/AttachmentBase.js +78 -0
  526. package/src/model/AttachmentCompact.js +78 -0
  527. package/src/model/AttachmentRequest.js +143 -0
  528. package/src/model/AttachmentResponse.js +141 -0
  529. package/src/model/AttachmentResponseArray.js +63 -0
  530. package/src/model/AttachmentResponseData.js +55 -0
  531. package/src/model/AttachmentResponseParent.js +78 -0
  532. package/src/model/AuditLogEvent.js +110 -0
  533. package/src/model/AuditLogEventActor.js +114 -0
  534. package/src/model/AuditLogEventArray.js +63 -0
  535. package/src/model/AuditLogEventContext.js +164 -0
  536. package/src/model/AuditLogEventDetails.js +45 -0
  537. package/src/model/AuditLogEventResource.js +86 -0
  538. package/src/model/BatchBody.js +53 -0
  539. package/src/model/BatchRequest.js +54 -0
  540. package/src/model/BatchRequestAction.js +124 -0
  541. package/src/model/BatchRequestActions.js +124 -0
  542. package/src/model/BatchRequestOptions.js +70 -0
  543. package/src/model/BatchResponse.js +70 -0
  544. package/src/model/BatchResponseArray.js +63 -0
  545. package/src/model/CreateMembershipRequest.js +69 -0
  546. package/src/model/CreateTimeTrackingEntryRequest.js +61 -0
  547. package/src/model/CustomFieldBase.js +1209 -0
  548. package/src/model/CustomFieldBaseDateValue.js +62 -0
  549. package/src/model/CustomFieldBaseEnumOptions.js +86 -0
  550. package/src/model/CustomFieldBaseEnumValue.js +86 -0
  551. package/src/model/CustomFieldCompact.js +243 -0
  552. package/src/model/CustomFieldGidEnumOptionsBody.js +53 -0
  553. package/src/model/CustomFieldRequest.js +1235 -0
  554. package/src/model/CustomFieldResponse.js +1234 -0
  555. package/src/model/CustomFieldResponseArray.js +63 -0
  556. package/src/model/CustomFieldResponseCreatedBy.js +70 -0
  557. package/src/model/CustomFieldResponseData.js +55 -0
  558. package/src/model/CustomFieldResponsePeopleValue.js +70 -0
  559. package/src/model/CustomFieldSettingBase.js +62 -0
  560. package/src/model/CustomFieldSettingCompact.js +62 -0
  561. package/src/model/CustomFieldSettingResponse.js +94 -0
  562. package/src/model/CustomFieldSettingResponseArray.js +63 -0
  563. package/src/model/CustomFieldSettingResponseCustomField.js +1234 -0
  564. package/src/model/CustomFieldSettingResponseData.js +55 -0
  565. package/src/model/CustomFieldSettingResponseParent.js +70 -0
  566. package/src/model/CustomFieldSettingResponseProject.js +70 -0
  567. package/src/model/CustomFieldsBody.js +53 -0
  568. package/src/model/CustomFieldsCustomFieldGidBody.js +53 -0
  569. package/src/model/DateVariableCompact.js +69 -0
  570. package/src/model/DateVariableRequest.js +61 -0
  571. package/src/model/EmptyResponse.js +45 -0
  572. package/src/model/EmptyResponseData.js +55 -0
  573. package/src/model/EnumOption.js +86 -0
  574. package/src/model/EnumOptionBase.js +86 -0
  575. package/src/model/EnumOptionData.js +55 -0
  576. package/src/model/EnumOptionInsertRequest.js +71 -0
  577. package/src/model/EnumOptionRequest.js +102 -0
  578. package/src/model/EnumOptionsEnumOptionGidBody.js +53 -0
  579. package/src/model/EnumOptionsInsertBody.js +53 -0
  580. package/src/model/Error.js +69 -0
  581. package/src/model/ErrorResponse.js +54 -0
  582. package/src/model/ErrorResponseErrors.js +69 -0
  583. package/src/model/EventResponse.js +102 -0
  584. package/src/model/EventResponseArray.js +63 -0
  585. package/src/model/EventResponseChange.js +86 -0
  586. package/src/model/EventResponseParent.js +70 -0
  587. package/src/model/EventResponseResource.js +70 -0
  588. package/src/model/EventResponseUser.js +70 -0
  589. package/src/model/GoalAddSubgoalRequest.js +71 -0
  590. package/src/model/GoalAddSupportingRelationshipRequest.js +79 -0
  591. package/src/model/GoalAddSupportingWorkRequest.js +55 -0
  592. package/src/model/GoalBase.js +118 -0
  593. package/src/model/GoalCompact.js +78 -0
  594. package/src/model/GoalGidAddFollowersBody.js +53 -0
  595. package/src/model/GoalGidAddSupportingRelationshipBody.js +53 -0
  596. package/src/model/GoalGidRemoveFollowersBody.js +53 -0
  597. package/src/model/GoalGidRemoveSupportingRelationshipBody.js +53 -0
  598. package/src/model/GoalGidSetMetricBody.js +53 -0
  599. package/src/model/GoalGidSetMetricCurrentValueBody.js +53 -0
  600. package/src/model/GoalMembershipBase.js +94 -0
  601. package/src/model/GoalMembershipBaseGoal.js +78 -0
  602. package/src/model/GoalMembershipCompact.js +94 -0
  603. package/src/model/GoalMembershipResponse.js +94 -0
  604. package/src/model/GoalMetricBase.js +206 -0
  605. package/src/model/GoalMetricCurrentValueRequest.js +70 -0
  606. package/src/model/GoalMetricRequest.js +206 -0
  607. package/src/model/GoalRelationshipBase.js +112 -0
  608. package/src/model/GoalRelationshipBaseSupportedGoal.js +78 -0
  609. package/src/model/GoalRelationshipBaseSupportingResource.js +70 -0
  610. package/src/model/GoalRelationshipCompact.js +104 -0
  611. package/src/model/GoalRelationshipRequest.js +112 -0
  612. package/src/model/GoalRelationshipResponse.js +112 -0
  613. package/src/model/GoalRelationshipResponseArray.js +63 -0
  614. package/src/model/GoalRelationshipResponseData.js +55 -0
  615. package/src/model/GoalRelationshipsGoalRelationshipGidBody.js +53 -0
  616. package/src/model/GoalRemoveSubgoalRequest.js +55 -0
  617. package/src/model/GoalRemoveSupportingRelationshipRequest.js +55 -0
  618. package/src/model/GoalRequest.js +157 -0
  619. package/src/model/GoalRequestBase.js +150 -0
  620. package/src/model/GoalResponse.js +200 -0
  621. package/src/model/GoalResponseArray.js +63 -0
  622. package/src/model/GoalResponseCurrentStatusUpdate.js +102 -0
  623. package/src/model/GoalResponseData.js +55 -0
  624. package/src/model/GoalResponseLikes.js +62 -0
  625. package/src/model/GoalResponseMetric.js +214 -0
  626. package/src/model/GoalResponseTeam.js +70 -0
  627. package/src/model/GoalResponseTimePeriod.js +142 -0
  628. package/src/model/GoalResponseWorkspace.js +70 -0
  629. package/src/model/GoalUpdateRequest.js +158 -0
  630. package/src/model/GoalsBody.js +53 -0
  631. package/src/model/GoalsGoalGidBody.js +53 -0
  632. package/src/model/InlineResponse412.js +61 -0
  633. package/src/model/InlineResponse412Errors.js +53 -0
  634. package/src/model/JobBase.js +132 -0
  635. package/src/model/JobBaseNewProject.js +70 -0
  636. package/src/model/JobBaseNewProjectTemplate.js +70 -0
  637. package/src/model/JobBaseNewTask.js +108 -0
  638. package/src/model/JobCompact.js +132 -0
  639. package/src/model/JobResponse.js +132 -0
  640. package/src/model/JobResponseData.js +55 -0
  641. package/src/model/Like.js +62 -0
  642. package/src/model/MemberCompact.js +70 -0
  643. package/src/model/MembershipRequest.js +53 -0
  644. package/src/model/MembershipResponse.js +44 -0
  645. package/src/model/MembershipResponseArray.js +63 -0
  646. package/src/model/MembershipResponseData.js +55 -0
  647. package/src/model/MembershipsBody.js +53 -0
  648. package/src/model/ModifyDependenciesRequest.js +53 -0
  649. package/src/model/ModifyDependentsRequest.js +54 -0
  650. package/src/model/NextPage.js +70 -0
  651. package/src/model/OrganizationExportBase.js +124 -0
  652. package/src/model/OrganizationExportCompact.js +124 -0
  653. package/src/model/OrganizationExportRequest.js +54 -0
  654. package/src/model/OrganizationExportResponse.js +124 -0
  655. package/src/model/OrganizationExportResponseData.js +55 -0
  656. package/src/model/OrganizationExportsBody.js +53 -0
  657. package/src/model/PortfolioAddItemRequest.js +71 -0
  658. package/src/model/PortfolioBase.js +192 -0
  659. package/src/model/PortfolioCompact.js +70 -0
  660. package/src/model/PortfolioGidAddCustomFieldSettingBody.js +53 -0
  661. package/src/model/PortfolioGidAddItemBody.js +53 -0
  662. package/src/model/PortfolioGidAddMembersBody.js +53 -0
  663. package/src/model/PortfolioGidRemoveCustomFieldSettingBody.js +53 -0
  664. package/src/model/PortfolioGidRemoveItemBody.js +53 -0
  665. package/src/model/PortfolioGidRemoveMembersBody.js +53 -0
  666. package/src/model/PortfolioMembershipBase.js +78 -0
  667. package/src/model/PortfolioMembershipBasePortfolio.js +70 -0
  668. package/src/model/PortfolioMembershipCompact.js +78 -0
  669. package/src/model/PortfolioMembershipResponse.js +78 -0
  670. package/src/model/PortfolioMembershipResponseArray.js +63 -0
  671. package/src/model/PortfolioMembershipResponseData.js +55 -0
  672. package/src/model/PortfolioRemoveItemRequest.js +55 -0
  673. package/src/model/PortfolioRequest.js +216 -0
  674. package/src/model/PortfolioResponse.js +297 -0
  675. package/src/model/PortfolioResponseArray.js +63 -0
  676. package/src/model/PortfolioResponseCurrentStatusUpdate.js +102 -0
  677. package/src/model/PortfolioResponseCustomFieldSettings.js +94 -0
  678. package/src/model/PortfolioResponseCustomFields.js +243 -0
  679. package/src/model/PortfolioResponseData.js +55 -0
  680. package/src/model/PortfolioResponseWorkspace.js +70 -0
  681. package/src/model/PortfoliosBody.js +53 -0
  682. package/src/model/PortfoliosPortfolioGidBody.js +53 -0
  683. package/src/model/Preview.js +110 -0
  684. package/src/model/ProjectBase.js +356 -0
  685. package/src/model/ProjectBaseCurrentStatus.js +159 -0
  686. package/src/model/ProjectBaseCurrentStatusUpdate.js +102 -0
  687. package/src/model/ProjectBaseWorkspace.js +70 -0
  688. package/src/model/ProjectBriefBase.js +78 -0
  689. package/src/model/ProjectBriefCompact.js +62 -0
  690. package/src/model/ProjectBriefRequest.js +86 -0
  691. package/src/model/ProjectBriefResponse.js +102 -0
  692. package/src/model/ProjectBriefResponseData.js +55 -0
  693. package/src/model/ProjectBriefResponseProject.js +70 -0
  694. package/src/model/ProjectBriefsProjectBriefGidBody.js +53 -0
  695. package/src/model/ProjectCompact.js +70 -0
  696. package/src/model/ProjectDuplicateRequest.js +79 -0
  697. package/src/model/ProjectDuplicateRequestScheduleDates.js +72 -0
  698. package/src/model/ProjectGidAddCustomFieldSettingBody.js +53 -0
  699. package/src/model/ProjectGidAddFollowersBody.js +53 -0
  700. package/src/model/ProjectGidAddMembersBody.js +53 -0
  701. package/src/model/ProjectGidDuplicateBody.js +53 -0
  702. package/src/model/ProjectGidProjectBriefsBody.js +53 -0
  703. package/src/model/ProjectGidProjectStatusesBody.js +53 -0
  704. package/src/model/ProjectGidRemoveCustomFieldSettingBody.js +53 -0
  705. package/src/model/ProjectGidRemoveFollowersBody.js +53 -0
  706. package/src/model/ProjectGidRemoveMembersBody.js +53 -0
  707. package/src/model/ProjectGidSaveAsTemplateBody.js +53 -0
  708. package/src/model/ProjectGidSectionsBody.js +53 -0
  709. package/src/model/ProjectMembershipBase.js +70 -0
  710. package/src/model/ProjectMembershipCompact.js +70 -0
  711. package/src/model/ProjectMembershipResponse.js +150 -0
  712. package/src/model/ProjectMembershipResponseArray.js +63 -0
  713. package/src/model/ProjectMembershipResponseData.js +55 -0
  714. package/src/model/ProjectMembershipResponseMember.js +70 -0
  715. package/src/model/ProjectRequest.js +388 -0
  716. package/src/model/ProjectResponse.js +643 -0
  717. package/src/model/ProjectResponseArray.js +63 -0
  718. package/src/model/ProjectResponseCompletedBy.js +70 -0
  719. package/src/model/ProjectResponseCreatedFromTemplate.js +70 -0
  720. package/src/model/ProjectResponseData.js +55 -0
  721. package/src/model/ProjectResponseProjectBrief.js +62 -0
  722. package/src/model/ProjectResponseTeam.js +70 -0
  723. package/src/model/ProjectSaveAsTemplateRequest.js +81 -0
  724. package/src/model/ProjectSectionInsertRequest.js +71 -0
  725. package/src/model/ProjectStatusBase.js +128 -0
  726. package/src/model/ProjectStatusCompact.js +70 -0
  727. package/src/model/ProjectStatusRequest.js +128 -0
  728. package/src/model/ProjectStatusResponse.js +159 -0
  729. package/src/model/ProjectStatusResponseArray.js +63 -0
  730. package/src/model/ProjectStatusResponseData.js +55 -0
  731. package/src/model/ProjectTemplateBase.js +256 -0
  732. package/src/model/ProjectTemplateBaseRequestedDates.js +69 -0
  733. package/src/model/ProjectTemplateBaseRequestedRoles.js +70 -0
  734. package/src/model/ProjectTemplateBaseTeam.js +70 -0
  735. package/src/model/ProjectTemplateCompact.js +70 -0
  736. package/src/model/ProjectTemplateGidInstantiateProjectBody.js +53 -0
  737. package/src/model/ProjectTemplateInstantiateProjectRequest.js +97 -0
  738. package/src/model/ProjectTemplateInstantiateProjectRequestRequestedDates.js +61 -0
  739. package/src/model/ProjectTemplateInstantiateProjectRequestRequestedRoles.js +61 -0
  740. package/src/model/ProjectTemplateResponse.js +256 -0
  741. package/src/model/ProjectTemplateResponseArray.js +63 -0
  742. package/src/model/ProjectTemplateResponseData.js +55 -0
  743. package/src/model/ProjectsBody.js +53 -0
  744. package/src/model/ProjectsProjectGidBody.js +53 -0
  745. package/src/model/RemoveCustomFieldSettingRequest.js +55 -0
  746. package/src/model/RemoveFollowersRequest.js +55 -0
  747. package/src/model/RemoveMembersRequest.js +55 -0
  748. package/src/model/RequestedRoleRequest.js +61 -0
  749. package/src/model/RuleTriggerGidRunBody.js +53 -0
  750. package/src/model/RuleTriggerRequest.js +65 -0
  751. package/src/model/RuleTriggerResponse.js +53 -0
  752. package/src/model/RuleTriggerResponseData.js +55 -0
  753. package/src/model/SectionBase.js +70 -0
  754. package/src/model/SectionCompact.js +70 -0
  755. package/src/model/SectionGidAddTaskBody.js +53 -0
  756. package/src/model/SectionRequest.js +71 -0
  757. package/src/model/SectionResponse.js +94 -0
  758. package/src/model/SectionResponseArray.js +63 -0
  759. package/src/model/SectionResponseData.js +55 -0
  760. package/src/model/SectionTaskInsertRequest.js +71 -0
  761. package/src/model/SectionsInsertBody.js +53 -0
  762. package/src/model/SectionsSectionGidBody.js +53 -0
  763. package/src/model/StatusUpdateBase.js +190 -0
  764. package/src/model/StatusUpdateCompact.js +102 -0
  765. package/src/model/StatusUpdateRequest.js +200 -0
  766. package/src/model/StatusUpdateResponse.js +278 -0
  767. package/src/model/StatusUpdateResponseArray.js +63 -0
  768. package/src/model/StatusUpdateResponseData.js +55 -0
  769. package/src/model/StatusUpdateResponseParent.js +70 -0
  770. package/src/model/StatusUpdatesBody.js +53 -0
  771. package/src/model/StoriesStoryGidBody.js +53 -0
  772. package/src/model/StoryBase.js +188 -0
  773. package/src/model/StoryCompact.js +94 -0
  774. package/src/model/StoryRequest.js +188 -0
  775. package/src/model/StoryResponse.js +595 -0
  776. package/src/model/StoryResponseArray.js +63 -0
  777. package/src/model/StoryResponseAssignee.js +70 -0
  778. package/src/model/StoryResponseCustomField.js +243 -0
  779. package/src/model/StoryResponseData.js +55 -0
  780. package/src/model/StoryResponseDates.js +70 -0
  781. package/src/model/StoryResponseOldDates.js +70 -0
  782. package/src/model/StoryResponseOldEnumValue.js +86 -0
  783. package/src/model/StoryResponseOldSection.js +70 -0
  784. package/src/model/StoryResponsePreviews.js +110 -0
  785. package/src/model/StoryResponseProject.js +70 -0
  786. package/src/model/StoryResponseStory.js +94 -0
  787. package/src/model/StoryResponseTag.js +70 -0
  788. package/src/model/StoryResponseTarget.js +108 -0
  789. package/src/model/StoryResponseTask.js +108 -0
  790. package/src/model/TagBase.js +206 -0
  791. package/src/model/TagCompact.js +70 -0
  792. package/src/model/TagRequest.js +222 -0
  793. package/src/model/TagResponse.js +239 -0
  794. package/src/model/TagResponseArray.js +63 -0
  795. package/src/model/TagResponseData.js +55 -0
  796. package/src/model/TagsBody.js +53 -0
  797. package/src/model/TaskAddFollowersRequest.js +55 -0
  798. package/src/model/TaskAddProjectRequest.js +79 -0
  799. package/src/model/TaskAddTagRequest.js +55 -0
  800. package/src/model/TaskBase.js +385 -0
  801. package/src/model/TaskBaseCompletedBy.js +70 -0
  802. package/src/model/TaskBaseDependencies.js +62 -0
  803. package/src/model/TaskBaseExternal.js +60 -0
  804. package/src/model/TaskBaseMemberships.js +61 -0
  805. package/src/model/TaskBaseSection.js +70 -0
  806. package/src/model/TaskCompact.js +108 -0
  807. package/src/model/TaskCountResponse.js +94 -0
  808. package/src/model/TaskCountResponseData.js +55 -0
  809. package/src/model/TaskDuplicateRequest.js +61 -0
  810. package/src/model/TaskGidAddDependenciesBody.js +53 -0
  811. package/src/model/TaskGidAddDependentsBody.js +53 -0
  812. package/src/model/TaskGidAddFollowersBody.js +53 -0
  813. package/src/model/TaskGidAddProjectBody.js +53 -0
  814. package/src/model/TaskGidAddTagBody.js +53 -0
  815. package/src/model/TaskGidDuplicateBody.js +53 -0
  816. package/src/model/TaskGidRemoveDependenciesBody.js +53 -0
  817. package/src/model/TaskGidRemoveDependentsBody.js +53 -0
  818. package/src/model/TaskGidRemoveFollowersBody.js +53 -0
  819. package/src/model/TaskGidRemoveProjectBody.js +53 -0
  820. package/src/model/TaskGidRemoveTagBody.js +53 -0
  821. package/src/model/TaskGidSetParentBody.js +53 -0
  822. package/src/model/TaskGidStoriesBody.js +53 -0
  823. package/src/model/TaskGidSubtasksBody.js +53 -0
  824. package/src/model/TaskGidTimeTrackingEntriesBody.js +53 -0
  825. package/src/model/TaskRemoveFollowersRequest.js +55 -0
  826. package/src/model/TaskRemoveProjectRequest.js +55 -0
  827. package/src/model/TaskRemoveTagRequest.js +55 -0
  828. package/src/model/TaskRequest.js +449 -0
  829. package/src/model/TaskResponse.js +461 -0
  830. package/src/model/TaskResponseArray.js +63 -0
  831. package/src/model/TaskResponseAssigneeSection.js +70 -0
  832. package/src/model/TaskResponseCustomFields.js +1234 -0
  833. package/src/model/TaskResponseData.js +55 -0
  834. package/src/model/TaskResponseParent.js +108 -0
  835. package/src/model/TaskResponseTags.js +70 -0
  836. package/src/model/TaskResponseWorkspace.js +70 -0
  837. package/src/model/TaskSetParentRequest.js +71 -0
  838. package/src/model/TasksBody.js +53 -0
  839. package/src/model/TasksTaskGidBody.js +53 -0
  840. package/src/model/TeamAddUserRequest.js +54 -0
  841. package/src/model/TeamBase.js +70 -0
  842. package/src/model/TeamCompact.js +70 -0
  843. package/src/model/TeamGidAddUserBody.js +53 -0
  844. package/src/model/TeamGidProjectsBody.js +53 -0
  845. package/src/model/TeamGidRemoveUserBody.js +53 -0
  846. package/src/model/TeamMembershipBase.js +102 -0
  847. package/src/model/TeamMembershipCompact.js +102 -0
  848. package/src/model/TeamMembershipResponse.js +102 -0
  849. package/src/model/TeamMembershipResponseArray.js +63 -0
  850. package/src/model/TeamMembershipResponseData.js +55 -0
  851. package/src/model/TeamRemoveUserRequest.js +54 -0
  852. package/src/model/TeamRequest.js +282 -0
  853. package/src/model/TeamResponse.js +290 -0
  854. package/src/model/TeamResponseArray.js +63 -0
  855. package/src/model/TeamResponseData.js +55 -0
  856. package/src/model/TeamResponseOrganization.js +70 -0
  857. package/src/model/TeamsBody.js +53 -0
  858. package/src/model/TeamsTeamGidBody.js +53 -0
  859. package/src/model/TemplateRole.js +70 -0
  860. package/src/model/TimePeriodBase.js +150 -0
  861. package/src/model/TimePeriodCompact.js +142 -0
  862. package/src/model/TimePeriodResponse.js +150 -0
  863. package/src/model/TimePeriodResponseArray.js +63 -0
  864. package/src/model/TimePeriodResponseData.js +55 -0
  865. package/src/model/TimeTrackingEntriesTimeTrackingEntryGidBody.js +53 -0
  866. package/src/model/TimeTrackingEntryBase.js +102 -0
  867. package/src/model/TimeTrackingEntryBaseData.js +55 -0
  868. package/src/model/TimeTrackingEntryCompact.js +86 -0
  869. package/src/model/TimeTrackingEntryCompactArray.js +63 -0
  870. package/src/model/UpdateTimeTrackingEntryRequest.js +61 -0
  871. package/src/model/UserBase.js +70 -0
  872. package/src/model/UserBaseResponse.js +86 -0
  873. package/src/model/UserBaseResponseData.js +55 -0
  874. package/src/model/UserBaseResponsePhoto.js +88 -0
  875. package/src/model/UserCompact.js +70 -0
  876. package/src/model/UserRequest.js +70 -0
  877. package/src/model/UserResponse.js +95 -0
  878. package/src/model/UserResponseArray.js +63 -0
  879. package/src/model/UserResponseData.js +55 -0
  880. package/src/model/UserTaskListBase.js +86 -0
  881. package/src/model/UserTaskListCompact.js +86 -0
  882. package/src/model/UserTaskListRequest.js +86 -0
  883. package/src/model/UserTaskListResponse.js +86 -0
  884. package/src/model/UserTaskListResponseData.js +55 -0
  885. package/src/model/WebhookCompact.js +86 -0
  886. package/src/model/WebhookCompactResource.js +70 -0
  887. package/src/model/WebhookFilter.js +78 -0
  888. package/src/model/WebhookRequest.js +74 -0
  889. package/src/model/WebhookRequestFilters.js +78 -0
  890. package/src/model/WebhookResponse.js +127 -0
  891. package/src/model/WebhookResponseArray.js +63 -0
  892. package/src/model/WebhookResponseData.js +55 -0
  893. package/src/model/WebhookUpdateRequest.js +54 -0
  894. package/src/model/WebhooksBody.js +53 -0
  895. package/src/model/WebhooksWebhookGidBody.js +53 -0
  896. package/src/model/WorkspaceAddUserRequest.js +54 -0
  897. package/src/model/WorkspaceBase.js +70 -0
  898. package/src/model/WorkspaceCompact.js +70 -0
  899. package/src/model/WorkspaceGidAddUserBody.js +53 -0
  900. package/src/model/WorkspaceGidProjectsBody.js +53 -0
  901. package/src/model/WorkspaceGidRemoveUserBody.js +53 -0
  902. package/src/model/WorkspaceGidTagsBody.js +53 -0
  903. package/src/model/WorkspaceMembershipBase.js +78 -0
  904. package/src/model/WorkspaceMembershipCompact.js +78 -0
  905. package/src/model/WorkspaceMembershipRequest.js +78 -0
  906. package/src/model/WorkspaceMembershipResponse.js +126 -0
  907. package/src/model/WorkspaceMembershipResponseArray.js +63 -0
  908. package/src/model/WorkspaceMembershipResponseData.js +55 -0
  909. package/src/model/WorkspaceMembershipResponseUserTaskList.js +86 -0
  910. package/src/model/WorkspaceMembershipResponseVacationDates.js +62 -0
  911. package/src/model/WorkspaceRemoveUserRequest.js +54 -0
  912. package/src/model/WorkspaceRequest.js +70 -0
  913. package/src/model/WorkspaceResponse.js +86 -0
  914. package/src/model/WorkspaceResponseArray.js +63 -0
  915. package/src/model/WorkspaceResponseData.js +55 -0
  916. package/src/model/WorkspacesWorkspaceGidBody.js +53 -0
  917. package/.github/workflows/build.yml +0 -27
  918. package/.github/workflows/publish-to-github-releases.yml +0 -26
  919. package/.github/workflows/publish-to-npmjs.yml +0 -21
  920. package/VERSION +0 -1
  921. package/bower.json +0 -29
  922. package/gulpfile.js +0 -205
  923. package/index.js +0 -7
  924. package/lib/auth/app.js +0 -136
  925. package/lib/auth/authenticator.js +0 -41
  926. package/lib/auth/auto_detect.js +0 -36
  927. package/lib/auth/base_browser_flow.js +0 -97
  928. package/lib/auth/basic_authenticator.js +0 -33
  929. package/lib/auth/chrome_extension_flow.js +0 -94
  930. package/lib/auth/index.js +0 -9
  931. package/lib/auth/native_flow.js +0 -106
  932. package/lib/auth/oauth_authenticator.js +0 -125
  933. package/lib/auth/oauth_error.js +0 -24
  934. package/lib/auth/oauth_util.js +0 -52
  935. package/lib/auth/popup_flow.js +0 -135
  936. package/lib/auth/redirect_flow.js +0 -54
  937. package/lib/client.js +0 -250
  938. package/lib/default_environment.js +0 -21
  939. package/lib/dispatcher.js +0 -438
  940. package/lib/errors/error.js +0 -12
  941. package/lib/errors/forbidden.js +0 -12
  942. package/lib/errors/index.js +0 -7
  943. package/lib/errors/invalid_request.js +0 -12
  944. package/lib/errors/no_authorization.js +0 -12
  945. package/lib/errors/not_found.js +0 -12
  946. package/lib/errors/premium_only.js +0 -12
  947. package/lib/errors/rate_limit_enforced.js +0 -17
  948. package/lib/errors/server_error.js +0 -12
  949. package/lib/resources/attachments.js +0 -43
  950. package/lib/resources/audit_log_api.js +0 -6
  951. package/lib/resources/batch_api.js +0 -3
  952. package/lib/resources/custom_field_settings.js +0 -41
  953. package/lib/resources/custom_fields.js +0 -195
  954. package/lib/resources/events.js +0 -41
  955. package/lib/resources/gen/attachments.js +0 -78
  956. package/lib/resources/gen/audit_log_api.js +0 -45
  957. package/lib/resources/gen/batch_api.js +0 -35
  958. package/lib/resources/gen/custom_field_settings.js +0 -63
  959. package/lib/resources/gen/custom_fields.js +0 -167
  960. package/lib/resources/gen/events.js +0 -39
  961. package/lib/resources/gen/goals.js +0 -321
  962. package/lib/resources/gen/jobs.js +0 -39
  963. package/lib/resources/gen/organization_exports.js +0 -55
  964. package/lib/resources/gen/portfolio_memberships.js +0 -85
  965. package/lib/resources/gen/portfolios.js +0 -243
  966. package/lib/resources/gen/project_briefs.js +0 -93
  967. package/lib/resources/gen/project_memberships.js +0 -62
  968. package/lib/resources/gen/project_statuses.js +0 -97
  969. package/lib/resources/gen/project_templates.js +0 -101
  970. package/lib/resources/gen/projects.js +0 -384
  971. package/lib/resources/gen/sections.js +0 -151
  972. package/lib/resources/gen/status_updates.js +0 -95
  973. package/lib/resources/gen/stories.js +0 -117
  974. package/lib/resources/gen/tags.js +0 -176
  975. package/lib/resources/gen/tasks.js +0 -579
  976. package/lib/resources/gen/team_memberships.js +0 -107
  977. package/lib/resources/gen/teams.js +0 -138
  978. package/lib/resources/gen/time_periods.js +0 -62
  979. package/lib/resources/gen/typeahead.js +0 -43
  980. package/lib/resources/gen/user_task_lists.js +0 -60
  981. package/lib/resources/gen/users.js +0 -125
  982. package/lib/resources/gen/webhooks.js +0 -113
  983. package/lib/resources/gen/workspace_memberships.js +0 -84
  984. package/lib/resources/gen/workspaces.js +0 -113
  985. package/lib/resources/index.js +0 -26
  986. package/lib/resources/jobs.js +0 -23
  987. package/lib/resources/organization_exports.js +0 -41
  988. package/lib/resources/portfolio_memberships.js +0 -61
  989. package/lib/resources/portfolios.js +0 -263
  990. package/lib/resources/project_memberships.js +0 -51
  991. package/lib/resources/project_statuses.js +0 -83
  992. package/lib/resources/projects.js +0 -359
  993. package/lib/resources/resource.js +0 -118
  994. package/lib/resources/sections.js +0 -158
  995. package/lib/resources/stories.js +0 -99
  996. package/lib/resources/tags.js +0 -167
  997. package/lib/resources/tasks.js +0 -702
  998. package/lib/resources/teams.js +0 -122
  999. package/lib/resources/typeahead.js +0 -3
  1000. package/lib/resources/user_task_lists.js +0 -78
  1001. package/lib/resources/users.js +0 -98
  1002. package/lib/resources/webhooks.js +0 -100
  1003. package/lib/resources/workspace_memberships.js +0 -3
  1004. package/lib/resources/workspaces.js +0 -135
  1005. package/lib/util/buffered_readable.js +0 -59
  1006. package/lib/util/collection.js +0 -133
  1007. package/lib/util/event_stream.js +0 -71
  1008. package/lib/util/resource_stream.js +0 -80
  1009. package/samples/attachments_sample.yaml +0 -45
  1010. package/samples/audit_log_api_sample.yaml +0 -12
  1011. package/samples/batch_api_sample.yaml +0 -12
  1012. package/samples/custom_field_settings_sample.yaml +0 -23
  1013. package/samples/custom_fields_sample.yaml +0 -89
  1014. package/samples/events_sample.yaml +0 -12
  1015. package/samples/goals_sample.yaml +0 -177
  1016. package/samples/jobs_sample.yaml +0 -12
  1017. package/samples/organization_exports_sample.yaml +0 -23
  1018. package/samples/portfolio_memberships_sample.yaml +0 -34
  1019. package/samples/portfolios_sample.yaml +0 -133
  1020. package/samples/project_briefs_sample.yaml +0 -45
  1021. package/samples/project_memberships_sample.yaml +0 -23
  1022. package/samples/project_statuses_sample.yaml +0 -45
  1023. package/samples/project_templates_sample.yaml +0 -45
  1024. package/samples/projects_sample.yaml +0 -210
  1025. package/samples/sections_sample.yaml +0 -78
  1026. package/samples/status_updates_sample.yaml +0 -45
  1027. package/samples/stories_sample.yaml +0 -56
  1028. package/samples/tags_sample.yaml +0 -89
  1029. package/samples/tasks_sample.yaml +0 -287
  1030. package/samples/team_memberships_sample.yaml +0 -45
  1031. package/samples/teams_sample.yaml +0 -67
  1032. package/samples/time_periods_sample.yaml +0 -23
  1033. package/samples/typeahead_sample.yaml +0 -12
  1034. package/samples/user_task_lists_sample.yaml +0 -23
  1035. package/samples/users_sample.yaml +0 -56
  1036. package/samples/webhooks_sample.yaml +0 -56
  1037. package/samples/workspace_memberships_sample.yaml +0 -34
  1038. package/samples/workspaces_sample.yaml +0 -56
  1039. package/swagger_templates/api.mustache +0 -60
  1040. package/swagger_templates/api_doc.mustache +0 -13
  1041. package/swagger_templates/node-config.json +0 -7
package/bower.json DELETED
@@ -1,29 +0,0 @@
1
- {
2
- "name": "asana",
3
- "main": "dist/asana.js",
4
- "version": "1.0.2",
5
- "homepage": "https://github.com/Asana/node-asana",
6
- "authors": [
7
- "Greg Slovacek <greg@asana.com>",
8
- "Phips Peter <pspeter333@gmail.com>"
9
- ],
10
- "description": "A JavaScript client for the 1.0 version of the Asana API",
11
- "moduleType": [
12
- "amd",
13
- "globals",
14
- "node"
15
- ],
16
- "keywords": [
17
- "asana",
18
- "api",
19
- "oauth"
20
- ],
21
- "license": "MIT",
22
- "ignore": [
23
- "**/.*",
24
- "node_modules",
25
- "bower_components",
26
- "test",
27
- "tests"
28
- ]
29
- }
package/gulpfile.js DELETED
@@ -1,205 +0,0 @@
1
- var browserify = require('browserify');
2
- var fs = require('fs');
3
- var bump = require('gulp-bump');
4
- var filter = require('gulp-filter');
5
- var git = require('gulp-git');
6
- var gulp = require('gulp');
7
- var istanbul = require('gulp-istanbul');
8
- var jshint = require('gulp-jshint');
9
- var mocha = require('gulp-mocha');
10
- var tagVersion = require('gulp-tag-version');
11
- var uglify = require('gulp-uglify');
12
- var vinylBuffer = require('vinyl-buffer');
13
- var vinylSourceStream = require('vinyl-source-stream');
14
-
15
- /**
16
- * Paths
17
- */
18
- var index = './index.js';
19
- var lib = 'lib/**/*.js';
20
- var root = '*.js';
21
- var test = 'test/**/*.js';
22
-
23
- /**
24
- * Bundles the code, full version to `asana.js` and minified to `asana-min.js`
25
- */
26
- function browserTask(minify) {
27
- return function(done) {
28
- var task = browserify(
29
- {
30
- entries: [index],
31
- standalone: 'Asana'
32
- })
33
- .bundle()
34
- .pipe(vinylSourceStream('asana' + (minify ? '-min' : '') + '.js'));
35
- if (minify) {
36
- task = task
37
- .pipe(vinylBuffer())
38
- .pipe(uglify().on('error', function(err) {
39
- console.log(err.toString());
40
- this.emit('end');
41
- }));
42
- }
43
- task.pipe(gulp.dest('dist'));
44
-
45
- done();
46
- };
47
- }
48
-
49
- /**
50
- * Ensure that the git working directory is clean.
51
- */
52
- function ensureGitClean(done) {
53
- git.status(function(err, out) {
54
- if (err) { throw err; }
55
- if (!/nothing to commit/.exec(out)) {
56
- throw new Error(
57
- 'Git working directory not clean, will not bump version'
58
- );
59
- }
60
- });
61
-
62
- done();
63
- }
64
- gulp.task('ensure-git-clean', ensureGitClean);
65
-
66
- /**
67
- * Bumping version number and tagging the repository with it.
68
- * Please read http://semver.org/
69
- *
70
- * You can use the commands
71
- *
72
- * gulp bump-patch # makes v0.1.0 → v0.1.1
73
- * gulp bump-minor # makes v0.1.1 → v0.2.0
74
- * gulp bump-major # makes v0.2.1 → v1.0.0
75
- *
76
- * To bump the version numbers accordingly after you did a patch,
77
- * introduced a feature or made a backwards-incompatible release.
78
- */
79
- function bumpVersion(importance) {
80
- // Update VERSION file
81
- function updateVersionFile(cb) {
82
- fs.readFile('VERSION', 'utf-8', function (err, data) {
83
- if (err) {
84
- console.log(err);
85
- }
86
-
87
- var versionArray = data.split('.');
88
- var major = versionArray[0];
89
- var minor = versionArray[1];
90
- var patch = versionArray[2];
91
-
92
- if (importance === 'major') {
93
- major = (parseInt(major) + 1).toString();
94
- }
95
- if (importance === 'minor') {
96
- minor = (parseInt(minor) + 1).toString();
97
- }
98
- if (importance === 'patch') {
99
- patch = (parseInt(patch) + 1).toString();
100
- }
101
-
102
- var updatedVersion = [major, minor, patch].join('.');
103
-
104
- fs.writeFile('VERSION', updatedVersion, function (err) {
105
- if (err) {
106
- console.log(err);
107
- }
108
- });
109
- });
110
- cb();
111
- }
112
-
113
- // Bump version in package.json and bower.json
114
- function updateVersion() {
115
- return gulp
116
- .src(['./package.json', './bower.json'])
117
- .pipe(bump({ type: importance }))
118
- .pipe(gulp.dest('./'));
119
- }
120
-
121
- // Add, commit version files and tag commit with new version
122
- function addCommitTagPush(cb) {
123
- gulp
124
- .src(['./package.json', './bower.json', './VERSION'])
125
- .pipe(git.add())
126
- .pipe(git.commit('Bump package version'))
127
- .pipe(filter('package.json'))
128
- .pipe(tagVersion());
129
- cb();
130
- }
131
-
132
- // Update the version files in parallel and then commit the changes
133
- return gulp.series(
134
- gulp.parallel(updateVersionFile, updateVersion),
135
- addCommitTagPush
136
- )();
137
- }
138
- function bumpPatch(cb) {
139
- bumpVersion('patch');
140
- cb();
141
- }
142
- gulp.task('bump-patch', gulp.series('ensure-git-clean', bumpPatch));
143
- function bumpMinor(cb) {
144
- bumpVersion('minor');
145
- cb();
146
- }
147
- gulp.task('bump-minor', gulp.series('ensure-git-clean', bumpMinor));
148
- function bumpMajor(cb) {
149
- bumpVersion('major');
150
- cb();
151
- }
152
- gulp.task('bump-major', gulp.series('ensure-git-clean', bumpMajor));
153
-
154
- /**
155
- * Lints all of the JavaScript files and fails if the tasks do not pass
156
- */
157
- function lint() {
158
- return gulp.src([root, lib, test])
159
- .pipe(jshint())
160
- .pipe(jshint.reporter('jshint-stylish'))
161
- .pipe(jshint.reporter('fail'));
162
- }
163
- gulp.task('lint', lint);
164
-
165
- /**
166
- * Tests the code with mocha and ensures 100% code coverage
167
- */
168
- function spec(callback) {
169
- gulp.src(lib)
170
- .pipe(istanbul({
171
- includeUntested: true
172
- }))
173
- .pipe(istanbul.hookRequire())
174
- .on('finish', function() {
175
- gulp.src(test)
176
- .pipe(mocha({
177
- reporter: 'nyan'
178
- }))
179
- .pipe(istanbul.writeReports({
180
- reporters: ['text', 'text-summary']
181
- }))
182
- .on('end', function() {
183
- var errOrNull = null;
184
- var coverage = istanbul.summarizeCoverage();
185
- var incomplete = Object.keys(coverage).filter(function(key) {
186
- return coverage[key].pct < 49; // TODO: Get this to 100%
187
- });
188
- if (incomplete.length > 0) {
189
- console.log('Incomplete coverage for ' + incomplete.join(', '));
190
- }
191
- callback(errOrNull);
192
- });
193
- });
194
- }
195
-
196
- gulp.task('spec', gulp.series('lint', spec));
197
-
198
- gulp.task('browser', browserTask(false));
199
- gulp.task('browser-min', browserTask(true));
200
-
201
- /**
202
- * High Level Tasks
203
- */
204
- gulp.task('bundle', gulp.series('browser', 'browser-min'));
205
- gulp.task('test', gulp.series('bundle', 'spec'));
package/index.js DELETED
@@ -1,7 +0,0 @@
1
- exports.Client = require('./lib/client');
2
- exports.Dispatcher = require('./lib/dispatcher');
3
- exports.auth = require('./lib/auth');
4
- exports.errors = require('./lib/errors');
5
- exports.resources = require('./lib/resources');
6
-
7
- exports.VERSION = require('./package.json').version;
package/lib/auth/app.js DELETED
@@ -1,136 +0,0 @@
1
- var url = require('url');
2
- var request = require('request');
3
- var Bluebird = require('bluebird');
4
- var OauthError = require('./oauth_error');
5
-
6
- /**
7
- * @params {Object} params Parameters for the `request` call.
8
- * @return {Promise} Promise representing the request, will resolve to the
9
- * `Object` returned or an `OauthError`.
10
- */
11
- var doRequest = function(params) {
12
- return new Bluebird(function(resolve, reject) {
13
- request(params, function(err, res, payload) {
14
- if (err) {
15
- return reject(err);
16
- }
17
- if (res.statusCode !== 200) {
18
- return reject(payload);
19
- }
20
- var result = JSON.parse(payload);
21
- if (result.error) {
22
- return reject(new OauthError(result));
23
- } else {
24
- return resolve(result);
25
- }
26
- });
27
- });
28
- };
29
-
30
- /**
31
- * An abstraction around an App used with Asana.
32
- *
33
- * @options {Object} Options to construct the app
34
- * @option {String} clientId The ID of the app
35
- * @option {String} [clientSecret] The secret key, if available here
36
- * @option {String} [redirectUri] The default redirect URI
37
- * @option {String} [scope] Scope to use, supports `default` and `scim`
38
- * @option {String} [asanaBaseUrl] Base URL to use for Asana, for debugging
39
- * @constructor
40
- */
41
- function App(options) {
42
- this.clientId = options.clientId;
43
- this.clientSecret = options.clientSecret || null;
44
- this.redirectUri = options.redirectUri || null;
45
- this.scope = options.scope || 'default';
46
- this.asanaBaseUrl = options.asanaBaseUrl || 'https://app.asana.com/';
47
- this.tokenExchangeEndpoint = options.tokenExchangeEndpoint || null;
48
- }
49
-
50
-
51
- /**
52
- * @param {Object} options Overrides to the app's defaults
53
- * @option {String} asanaBaseUrl
54
- * @option {String} redirectUri
55
- * @returns {String} The URL used to authorize a user for the app.
56
- */
57
- App.prototype.asanaAuthorizeUrl = function(options) {
58
- options = options || {};
59
- return url.resolve(
60
- options.asanaBaseUrl || this.asanaBaseUrl,
61
- url.format({
62
- pathname: '/-/oauth_authorize',
63
- query: {
64
- 'client_id': this.clientId,
65
- 'response_type': 'code',
66
- 'redirect_uri': options.redirectUri || this.redirectUri,
67
- 'scope': this.scope
68
- }
69
- }));
70
- };
71
-
72
-
73
- /**
74
- * @param {Object} options Overrides to the app's defaults
75
- * @option {String} asanaBaseUrl
76
- * @option {String} redirectUri
77
- * @returns {String} The URL used to acquire an access token.
78
- */
79
- App.prototype.asanaTokenUrl = function(options) {
80
- options = options || {};
81
- return this.tokenExchangeEndpoint || url.resolve(
82
- options.asanaBaseUrl || this.asanaBaseUrl,
83
- '/-/oauth_token');
84
- };
85
-
86
- /**
87
- * @param {String} code An authorization code obtained via `asanaAuthorizeUrl`.
88
- * @param {Object} options Overrides to the app's defaults
89
- * @option {String} asanaBaseUrl
90
- * @option {String} redirectUri
91
- * @return {Promise<Object>} The token, which will include the `access_token`
92
- * used for API access, as well as a `refresh_token` which can be stored
93
- * to get a new access token without going through the flow again.
94
- */
95
- App.prototype.accessTokenFromCode = function(code, options) {
96
- options = options || {};
97
- var params = {
98
- method: 'POST',
99
- url: this.asanaTokenUrl(options),
100
- form: {
101
- 'grant_type': 'authorization_code',
102
- 'client_id': this.clientId,
103
- 'client_secret': this.clientSecret,
104
- 'redirect_uri': options.redirectUri || this.redirectUri,
105
- 'code': code
106
- }
107
- };
108
- return doRequest(params);
109
- };
110
-
111
- /**
112
- * @param {String} refreshToken A refresh token obtained via Oauth.
113
- * @param {Object} options Overrides to the app's defaults
114
- * @option {String} asanaBaseUrl
115
- * @option {String} redirectUri
116
- * @return {Promise<Object>} The token, which will include the `access_token`
117
- * used for API access.
118
- */
119
- App.prototype.accessTokenFromRefreshToken = function(refreshToken, options) {
120
- options = options || {};
121
- var params = {
122
- method: 'POST',
123
- url: this.asanaTokenUrl(options),
124
- form: {
125
- 'grant_type': 'refresh_token',
126
- 'client_id': this.clientId,
127
- 'client_secret': this.clientSecret,
128
- 'redirect_uri': options.redirectUri || this.redirectUri,
129
- 'refresh_token': refreshToken
130
- }
131
- };
132
- return doRequest(params);
133
- };
134
-
135
-
136
- module.exports = App;
@@ -1,41 +0,0 @@
1
- /**
2
- * A layer to abstract the differences between using different types of
3
- * authentication (Oauth vs. Basic). The Authenticator is responsible for
4
- * establishing credentials and applying them to outgoing requests.
5
- * @constructor
6
- */
7
- function Authenticator() {
8
- }
9
-
10
- /**
11
- * @param {Object} request The request to modify, for the `request` library.
12
- * @return {Object} The `request` parameter, modified to include authentication
13
- * information using the stored credentials.
14
- */
15
- Authenticator.prototype.authenticateRequest = function(request) {
16
- throw new Error('not implemented', request);
17
- };
18
-
19
- /**
20
- * Establishes credentials.
21
- *
22
- * @return {Promise} Resolves when initial credentials have been
23
- * completed and `authenticateRequest` calls can expect to succeed.
24
- */
25
- Authenticator.prototype.establishCredentials = function() {
26
- throw new Error('not implemented');
27
- };
28
-
29
- /**
30
- * Attempts to refresh credentials, if possible, given the current credentials.
31
- *
32
- * @return {Promise} Resolves to `true` if credentials have been successfully
33
- * established and `authenticateRequests` can expect to succeed, else
34
- * resolves to `false`.
35
- */
36
- Authenticator.prototype.refreshCredentials = function() {
37
- throw new Error('not implemented');
38
- };
39
-
40
-
41
- module.exports = Authenticator;
@@ -1,36 +0,0 @@
1
- /* jshint browser: true */
2
- var NativeFlow = require('./native_flow');
3
- var RedirectFlow = require('./redirect_flow');
4
- var ChromeExtensionFlow = require('./chrome_extension_flow');
5
- var defaultEnvironment = require('../default_environment');
6
-
7
- /**
8
- * Auto-detects the type of Oauth flow to use that's appropriate to the
9
- * environment.
10
- *
11
- * @returns {Function|null} The type of Oauth flow to use, or null if no
12
- * appropriate type could be determined.
13
- */
14
- function autoDetect(env) {
15
- env = env || defaultEnvironment();
16
- if (typeof(env.chrome) !== 'undefined' &&
17
- env.chrome.runtime && env.chrome.runtime.id) {
18
- if (env.chrome.tabs && env.chrome.tabs.create) {
19
- return ChromeExtensionFlow;
20
- } else {
21
- // Chrome packaged app, not supported yet.
22
- return null;
23
- }
24
- }
25
- if (typeof(env.window) !== 'undefined' && env.window.navigator) {
26
- // Browser
27
- return RedirectFlow;
28
- }
29
- if (typeof(env.process) !== 'undefined' && env.process.env) {
30
- // NodeJS script
31
- return NativeFlow;
32
- }
33
- return null;
34
- }
35
-
36
- module.exports = autoDetect;
@@ -1,97 +0,0 @@
1
- /* jshint browser:true */
2
- var url = require('url');
3
- var oauthUtil = require('./oauth_util');
4
-
5
- // TODO: options.storage, for an interface to load/save/delete credentials
6
- // e.g. in cookies or in localStorage maybe
7
- // TODO: options.remember, to store in storage (true by default?)
8
- // TODO: testing across browsers
9
- // TODO: standardize logging with option (add logger? 3rd party something?)
10
- // TODO: tests
11
-
12
- /**
13
- * A base class for any flow that runs in the browser. All subclasses use the
14
- * "implicit grant" flow to authenticate via the browser.
15
- * @param {Object} options
16
- * @option {App} app The app this flow is for
17
- * @option {String} [redirectUri] The URL that Asana should redirect to once
18
- * user authorization is complete. Defaults to the URL configured in
19
- * the app, and if none then the current page URL.
20
- * @constructor
21
- */
22
- function BaseBrowserFlow(options) {
23
- this.options = options;
24
- }
25
-
26
- /**
27
- * @param {String} authUrl The URL the user should be navigated to in order
28
- * to authorize the app.
29
- * @param {String} state The unique state generated for this auth request.
30
- * @return {Promise} Resolved when authorization has successfully started,
31
- * i.e. the user has been navigated to a page requesting authorization.
32
- */
33
- BaseBrowserFlow.prototype.startAuthorization = function(authUrl, state) {
34
- throw new Error('Not implemented', authUrl, state);
35
- };
36
-
37
- /**
38
- * @return {Promise<Object>} Credentials returned from Oauth.
39
- */
40
- BaseBrowserFlow.prototype.finishAuthorization = function(state) {
41
- throw new Error('Not implemented', state);
42
- };
43
-
44
- /**
45
- * @return {String} The URL to redirect to that will receive the
46
- */
47
- BaseBrowserFlow.prototype.receiverUrl = function() {
48
- var relativeUrl =
49
- this.options.redirectUri || this.options.app.redirectUri || '';
50
- return url.resolve(window.location.href, relativeUrl);
51
- };
52
-
53
- /**
54
- * @return {String} The URL to redirect to that will receive the
55
- */
56
- BaseBrowserFlow.prototype.asanaBaseUrl = function() {
57
- return this.options.app.asanaBaseUrl;
58
- };
59
-
60
- /**
61
- * @returns {String} Generate a new unique state parameter for a request.
62
- */
63
- BaseBrowserFlow.prototype.getStateParam = function() {
64
- return oauthUtil.randomState();
65
- };
66
-
67
- /**
68
- * @returns {String} The URL used to authorize the user for the app.
69
- */
70
- BaseBrowserFlow.prototype.authorizeUrl = function() {
71
- // All browser flows should use the implicit grant (`token`) flow.
72
- return url.resolve(this.asanaBaseUrl(), url.format({
73
- pathname: '/-/oauth_authorize',
74
- query: {
75
- 'client_id': this.options.app.clientId,
76
- 'response_type': 'token',
77
- 'redirect_uri': this.receiverUrl(),
78
- 'scope': this.options.app.scope,
79
- 'state': this.state
80
- }
81
- }));
82
- };
83
-
84
- /**
85
- * Run the appropriate parts of the Oauth flow, attempting to establish user
86
- * authorization.
87
- * @returns {Promise<Object>} A promise that resolves to the Oauth credentials.
88
- */
89
- BaseBrowserFlow.prototype.run = function() {
90
- var me = this;
91
- me.state = me.getStateParam(me.options);
92
- return me.startAuthorization(me.authorizeUrl(), me.state).then(function() {
93
- return me.finishAuthorization(me.state);
94
- });
95
- };
96
-
97
- module.exports = BaseBrowserFlow;
@@ -1,33 +0,0 @@
1
- var util = require('util');
2
- var Bluebird = require('bluebird');
3
- var Authenticator = require('./authenticator');
4
-
5
- /**
6
- * @param {String} apiKey The key to use to access the API.
7
- * @constructor
8
- */
9
- function BasicAuthenticator(apiKey) {
10
- this.apiKey = apiKey;
11
- }
12
-
13
- util.inherits(BasicAuthenticator, Authenticator);
14
-
15
- BasicAuthenticator.prototype.authenticateRequest = function(request) {
16
- request.auth = {
17
- username: this.apiKey,
18
- password: ''
19
- };
20
- return request;
21
- };
22
-
23
- BasicAuthenticator.prototype.establishCredentials = function() {
24
- // Credentials are already built-in.
25
- return Bluebird.resolve();
26
- };
27
-
28
- BasicAuthenticator.prototype.refreshCredentials = function() {
29
- // We have no way of refreshing credentials.
30
- return Bluebird.resolve(false);
31
- };
32
-
33
- module.exports = BasicAuthenticator;
@@ -1,94 +0,0 @@
1
- /* jshint browser: true */
2
- /* global chrome */
3
- var util = require('util');
4
- var oauthUtil = require('./oauth_util');
5
- var BaseBrowserFlow = require('./base_browser_flow');
6
- var OauthError = require('./oauth_error');
7
- var Bluebird = require('bluebird');
8
-
9
- /**
10
- * An Oauth flow that runs in a Chrome browser extension and requests user
11
- * authorization by opening a temporary tab to prompt the user.
12
- * @param {Object} options See `BaseBrowserFlow` for options, plus the below:
13
- * @options {String} [receiverPath] Full path and filename from the base
14
- * directory of the extension to the receiver page. This is an HTML file
15
- * that has been made web-accessible, and that calls the receiver method
16
- * `Asana.auth.ChromeExtensionFlow.runReceiver();`.
17
- * @constructor
18
- */
19
- function ChromeExtensionFlow(options) {
20
- BaseBrowserFlow.call(this, options);
21
- this._authorizationPromise = null;
22
- this._receiverUrl = chrome.runtime.getURL(
23
- options.receiverPath || 'asana_oauth_receiver.html');
24
- }
25
-
26
- util.inherits(ChromeExtensionFlow, BaseBrowserFlow);
27
-
28
- ChromeExtensionFlow.prototype.receiverUrl = function() {
29
- return this._receiverUrl;
30
- };
31
-
32
- ChromeExtensionFlow.prototype.startAuthorization = function(authUrl, state) {
33
- var me = this;
34
- var receiverTabId = null;
35
- me._authorizationPromise = new Bluebird(function(resolve, reject) {
36
- var listener = function(message, sender) {
37
- // The message must come from our receiver window, which would have a URL
38
- // that is our receiver URL, plus a hash with some oauth results in it.
39
- if (!sender || !sender.tab || sender.tab.id !== receiverTabId ||
40
- sender.tab.url.substring(0, me._receiverUrl.length) !==
41
- me._receiverUrl) {
42
- return;
43
- }
44
- var receivedUrl = message.receivedUrl;
45
- if (receivedUrl) {
46
- // Every request should have a unique `state` parameter.
47
- // We can key off of that to determine whether this request was
48
- // intended for this window.
49
- var params = oauthUtil.parseOauthResultFromUrl(receivedUrl);
50
- if (params.state === state) {
51
- state = null; // don't ever respond to again
52
- var dummyError;
53
- chrome.tabs.remove(receiverTabId, function() {
54
- // Calling the `lastError` getter will silence a warning we get
55
- // in case the tab has already closed.
56
- dummyError = chrome.runtime.lastError;
57
- });
58
- chrome.runtime.onMessage.removeListener(listener);
59
- if (params.error) {
60
- reject(new OauthError(params));
61
- } else {
62
- resolve(params);
63
- }
64
- }
65
- }
66
- };
67
- chrome.runtime.onMessage.addListener(listener);
68
- chrome.tabs.create({
69
- url: authUrl,
70
- active: true
71
- }, function(tab) {
72
- receiverTabId = tab.id;
73
- });
74
- });
75
- return Bluebird.resolve();
76
- };
77
-
78
- ChromeExtensionFlow.prototype.finishAuthorization = function() {
79
- return this._authorizationPromise;
80
- };
81
-
82
- /**
83
- * Runs the receiver code to send the Oauth result to the requesting tab.
84
- */
85
- ChromeExtensionFlow.runReceiver = function() {
86
- window.addEventListener('load', function() {
87
- var currentUrl = window.location.href;
88
- oauthUtil.removeOauthResultFromCurrentUrl();
89
- chrome.runtime.sendMessage({ receivedUrl: currentUrl });
90
- window.close();
91
- }, false);
92
- };
93
-
94
- module.exports = ChromeExtensionFlow;
package/lib/auth/index.js DELETED
@@ -1,9 +0,0 @@
1
- exports.BaseBrowserFlow = require('./base_browser_flow');
2
- exports.ChromeExtensionFlow = require('./chrome_extension_flow');
3
- exports.NativeFlow = require('./native_flow');
4
- exports.PopupFlow = require('./popup_flow');
5
- exports.RedirectFlow = require('./redirect_flow');
6
-
7
- exports.autoDetect = require('./auto_detect');
8
- exports.OauthError = require('./oauth_error');
9
- exports.App = require('./app');