sunsama-api 0.6.0 → 0.7.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 (206) hide show
  1. package/README.md +18 -0
  2. package/dist/cjs/{src/client → client}/index.js +46 -0
  3. package/dist/cjs/client/index.js.map +1 -0
  4. package/dist/cjs/errors/index.js.map +1 -0
  5. package/dist/cjs/index.js.map +1 -0
  6. package/dist/cjs/queries/fragments/index.js.map +1 -0
  7. package/dist/cjs/queries/fragments/stream.js.map +1 -0
  8. package/dist/cjs/queries/fragments/task.js.map +1 -0
  9. package/dist/cjs/queries/index.js.map +1 -0
  10. package/dist/cjs/queries/mutations/createTask.js.map +1 -0
  11. package/dist/cjs/{src/queries → queries}/mutations/index.js +1 -0
  12. package/dist/cjs/queries/mutations/index.js.map +1 -0
  13. package/dist/cjs/queries/mutations/updateTaskComplete.js.map +1 -0
  14. package/dist/cjs/queries/mutations/updateTaskDelete.js.map +1 -0
  15. package/dist/cjs/{src/queries → queries}/mutations/updateTaskNotes.js.map +1 -1
  16. package/dist/cjs/queries/mutations/updateTaskPlannedTime.js +26 -0
  17. package/dist/cjs/queries/mutations/updateTaskPlannedTime.js.map +1 -0
  18. package/dist/cjs/queries/mutations/updateTaskSnoozeDate.js.map +1 -0
  19. package/dist/cjs/queries/streams.js.map +1 -0
  20. package/dist/cjs/queries/tasks.js.map +1 -0
  21. package/dist/cjs/{src/queries → queries}/user.js.map +1 -1
  22. package/dist/{esm/src → cjs}/types/api.js.map +1 -1
  23. package/dist/cjs/types/client.js.map +1 -0
  24. package/dist/cjs/types/common.js.map +1 -0
  25. package/dist/cjs/types/index.js.map +1 -0
  26. package/dist/cjs/utils/index.js.map +1 -0
  27. package/dist/cjs/utils/validation.js.map +1 -0
  28. package/dist/esm/{src/client → client}/index.js +47 -1
  29. package/dist/esm/client/index.js.map +1 -0
  30. package/dist/esm/errors/index.js.map +1 -0
  31. package/dist/esm/index.js.map +1 -0
  32. package/dist/esm/queries/fragments/index.js.map +1 -0
  33. package/dist/esm/queries/fragments/stream.js.map +1 -0
  34. package/dist/esm/queries/fragments/task.js.map +1 -0
  35. package/dist/esm/queries/index.js.map +1 -0
  36. package/dist/esm/queries/mutations/createTask.js.map +1 -0
  37. package/dist/esm/{src/queries → queries}/mutations/index.js +1 -0
  38. package/dist/esm/queries/mutations/index.js.map +1 -0
  39. package/dist/esm/queries/mutations/updateTaskComplete.js.map +1 -0
  40. package/dist/esm/queries/mutations/updateTaskDelete.js.map +1 -0
  41. package/dist/esm/{src/queries → queries}/mutations/updateTaskNotes.js.map +1 -1
  42. package/dist/esm/queries/mutations/updateTaskPlannedTime.js +23 -0
  43. package/dist/esm/queries/mutations/updateTaskPlannedTime.js.map +1 -0
  44. package/dist/esm/queries/mutations/updateTaskSnoozeDate.js.map +1 -0
  45. package/dist/esm/queries/streams.js.map +1 -0
  46. package/dist/esm/queries/tasks.js.map +1 -0
  47. package/dist/esm/{src/queries → queries}/user.js.map +1 -1
  48. package/dist/{cjs/src → esm}/types/api.js.map +1 -1
  49. package/dist/esm/types/client.js.map +1 -0
  50. package/dist/esm/types/common.js.map +1 -0
  51. package/dist/esm/types/index.js.map +1 -0
  52. package/dist/esm/utils/index.js.map +1 -0
  53. package/dist/esm/utils/validation.js.map +1 -0
  54. package/dist/types/{src/client → client}/index.d.ts +25 -0
  55. package/dist/types/client/index.d.ts.map +1 -0
  56. package/dist/types/errors/index.d.ts.map +1 -0
  57. package/dist/types/index.d.ts.map +1 -0
  58. package/dist/types/queries/fragments/index.d.ts.map +1 -0
  59. package/dist/types/queries/fragments/stream.d.ts.map +1 -0
  60. package/dist/types/queries/fragments/task.d.ts.map +1 -0
  61. package/dist/types/queries/index.d.ts.map +1 -0
  62. package/dist/types/queries/mutations/createTask.d.ts.map +1 -0
  63. package/dist/types/{src/queries → queries}/mutations/index.d.ts +1 -0
  64. package/dist/types/queries/mutations/index.d.ts.map +1 -0
  65. package/dist/types/queries/mutations/updateTaskComplete.d.ts.map +1 -0
  66. package/dist/types/queries/mutations/updateTaskDelete.d.ts.map +1 -0
  67. package/dist/types/queries/mutations/updateTaskNotes.d.ts.map +1 -0
  68. package/dist/types/queries/mutations/updateTaskPlannedTime.d.ts +13 -0
  69. package/dist/types/queries/mutations/updateTaskPlannedTime.d.ts.map +1 -0
  70. package/dist/types/queries/mutations/updateTaskSnoozeDate.d.ts.map +1 -0
  71. package/dist/types/queries/streams.d.ts.map +1 -0
  72. package/dist/types/queries/tasks.d.ts.map +1 -0
  73. package/dist/types/queries/user.d.ts.map +1 -0
  74. package/dist/types/{src/types → types}/api.d.ts +11 -0
  75. package/dist/types/types/api.d.ts.map +1 -0
  76. package/dist/types/types/client.d.ts.map +1 -0
  77. package/dist/types/types/common.d.ts.map +1 -0
  78. package/dist/types/types/index.d.ts.map +1 -0
  79. package/dist/types/utils/index.d.ts.map +1 -0
  80. package/dist/types/utils/validation.d.ts.map +1 -0
  81. package/package.json +1 -1
  82. package/dist/cjs/scripts/test-real-auth.js +0 -400
  83. package/dist/cjs/scripts/test-real-auth.js.map +0 -1
  84. package/dist/cjs/src/client/index.js.map +0 -1
  85. package/dist/cjs/src/errors/index.js.map +0 -1
  86. package/dist/cjs/src/index.js.map +0 -1
  87. package/dist/cjs/src/queries/fragments/index.js.map +0 -1
  88. package/dist/cjs/src/queries/fragments/stream.js.map +0 -1
  89. package/dist/cjs/src/queries/fragments/task.js.map +0 -1
  90. package/dist/cjs/src/queries/index.js.map +0 -1
  91. package/dist/cjs/src/queries/mutations/createTask.js.map +0 -1
  92. package/dist/cjs/src/queries/mutations/index.js.map +0 -1
  93. package/dist/cjs/src/queries/mutations/updateTaskComplete.js.map +0 -1
  94. package/dist/cjs/src/queries/mutations/updateTaskDelete.js.map +0 -1
  95. package/dist/cjs/src/queries/mutations/updateTaskSnoozeDate.js.map +0 -1
  96. package/dist/cjs/src/queries/streams.js.map +0 -1
  97. package/dist/cjs/src/queries/tasks.js.map +0 -1
  98. package/dist/cjs/src/types/client.js.map +0 -1
  99. package/dist/cjs/src/types/common.js.map +0 -1
  100. package/dist/cjs/src/types/index.js.map +0 -1
  101. package/dist/cjs/src/utils/index.js.map +0 -1
  102. package/dist/cjs/src/utils/validation.js.map +0 -1
  103. package/dist/esm/scripts/test-real-auth.js +0 -398
  104. package/dist/esm/scripts/test-real-auth.js.map +0 -1
  105. package/dist/esm/src/client/index.js.map +0 -1
  106. package/dist/esm/src/errors/index.js.map +0 -1
  107. package/dist/esm/src/index.js.map +0 -1
  108. package/dist/esm/src/queries/fragments/index.js.map +0 -1
  109. package/dist/esm/src/queries/fragments/stream.js.map +0 -1
  110. package/dist/esm/src/queries/fragments/task.js.map +0 -1
  111. package/dist/esm/src/queries/index.js.map +0 -1
  112. package/dist/esm/src/queries/mutations/createTask.js.map +0 -1
  113. package/dist/esm/src/queries/mutations/index.js.map +0 -1
  114. package/dist/esm/src/queries/mutations/updateTaskComplete.js.map +0 -1
  115. package/dist/esm/src/queries/mutations/updateTaskDelete.js.map +0 -1
  116. package/dist/esm/src/queries/mutations/updateTaskSnoozeDate.js.map +0 -1
  117. package/dist/esm/src/queries/streams.js.map +0 -1
  118. package/dist/esm/src/queries/tasks.js.map +0 -1
  119. package/dist/esm/src/types/client.js.map +0 -1
  120. package/dist/esm/src/types/common.js.map +0 -1
  121. package/dist/esm/src/types/index.js.map +0 -1
  122. package/dist/esm/src/utils/index.js.map +0 -1
  123. package/dist/esm/src/utils/validation.js.map +0 -1
  124. package/dist/types/scripts/test-real-auth.d.ts +0 -10
  125. package/dist/types/scripts/test-real-auth.d.ts.map +0 -1
  126. package/dist/types/src/client/index.d.ts.map +0 -1
  127. package/dist/types/src/errors/index.d.ts.map +0 -1
  128. package/dist/types/src/index.d.ts.map +0 -1
  129. package/dist/types/src/queries/fragments/index.d.ts.map +0 -1
  130. package/dist/types/src/queries/fragments/stream.d.ts.map +0 -1
  131. package/dist/types/src/queries/fragments/task.d.ts.map +0 -1
  132. package/dist/types/src/queries/index.d.ts.map +0 -1
  133. package/dist/types/src/queries/mutations/createTask.d.ts.map +0 -1
  134. package/dist/types/src/queries/mutations/index.d.ts.map +0 -1
  135. package/dist/types/src/queries/mutations/updateTaskComplete.d.ts.map +0 -1
  136. package/dist/types/src/queries/mutations/updateTaskDelete.d.ts.map +0 -1
  137. package/dist/types/src/queries/mutations/updateTaskNotes.d.ts.map +0 -1
  138. package/dist/types/src/queries/mutations/updateTaskSnoozeDate.d.ts.map +0 -1
  139. package/dist/types/src/queries/streams.d.ts.map +0 -1
  140. package/dist/types/src/queries/tasks.d.ts.map +0 -1
  141. package/dist/types/src/queries/user.d.ts.map +0 -1
  142. package/dist/types/src/types/api.d.ts.map +0 -1
  143. package/dist/types/src/types/client.d.ts.map +0 -1
  144. package/dist/types/src/types/common.d.ts.map +0 -1
  145. package/dist/types/src/types/index.d.ts.map +0 -1
  146. package/dist/types/src/utils/index.d.ts.map +0 -1
  147. package/dist/types/src/utils/validation.d.ts.map +0 -1
  148. /package/dist/cjs/{src/errors → errors}/index.js +0 -0
  149. /package/dist/cjs/{src/index.js → index.js} +0 -0
  150. /package/dist/cjs/{src/queries → queries}/fragments/index.js +0 -0
  151. /package/dist/cjs/{src/queries → queries}/fragments/stream.js +0 -0
  152. /package/dist/cjs/{src/queries → queries}/fragments/task.js +0 -0
  153. /package/dist/cjs/{src/queries → queries}/index.js +0 -0
  154. /package/dist/cjs/{src/queries → queries}/mutations/createTask.js +0 -0
  155. /package/dist/cjs/{src/queries → queries}/mutations/updateTaskComplete.js +0 -0
  156. /package/dist/cjs/{src/queries → queries}/mutations/updateTaskDelete.js +0 -0
  157. /package/dist/cjs/{src/queries → queries}/mutations/updateTaskNotes.js +0 -0
  158. /package/dist/cjs/{src/queries → queries}/mutations/updateTaskSnoozeDate.js +0 -0
  159. /package/dist/cjs/{src/queries → queries}/streams.js +0 -0
  160. /package/dist/cjs/{src/queries → queries}/tasks.js +0 -0
  161. /package/dist/cjs/{src/queries → queries}/user.js +0 -0
  162. /package/dist/cjs/{src/types → types}/api.js +0 -0
  163. /package/dist/cjs/{src/types → types}/client.js +0 -0
  164. /package/dist/cjs/{src/types → types}/common.js +0 -0
  165. /package/dist/cjs/{src/types → types}/index.js +0 -0
  166. /package/dist/cjs/{src/utils → utils}/index.js +0 -0
  167. /package/dist/cjs/{src/utils → utils}/validation.js +0 -0
  168. /package/dist/esm/{src/errors → errors}/index.js +0 -0
  169. /package/dist/esm/{src/index.js → index.js} +0 -0
  170. /package/dist/esm/{src/queries → queries}/fragments/index.js +0 -0
  171. /package/dist/esm/{src/queries → queries}/fragments/stream.js +0 -0
  172. /package/dist/esm/{src/queries → queries}/fragments/task.js +0 -0
  173. /package/dist/esm/{src/queries → queries}/index.js +0 -0
  174. /package/dist/esm/{src/queries → queries}/mutations/createTask.js +0 -0
  175. /package/dist/esm/{src/queries → queries}/mutations/updateTaskComplete.js +0 -0
  176. /package/dist/esm/{src/queries → queries}/mutations/updateTaskDelete.js +0 -0
  177. /package/dist/esm/{src/queries → queries}/mutations/updateTaskNotes.js +0 -0
  178. /package/dist/esm/{src/queries → queries}/mutations/updateTaskSnoozeDate.js +0 -0
  179. /package/dist/esm/{src/queries → queries}/streams.js +0 -0
  180. /package/dist/esm/{src/queries → queries}/tasks.js +0 -0
  181. /package/dist/esm/{src/queries → queries}/user.js +0 -0
  182. /package/dist/esm/{src/types → types}/api.js +0 -0
  183. /package/dist/esm/{src/types → types}/client.js +0 -0
  184. /package/dist/esm/{src/types → types}/common.js +0 -0
  185. /package/dist/esm/{src/types → types}/index.js +0 -0
  186. /package/dist/esm/{src/utils → utils}/index.js +0 -0
  187. /package/dist/esm/{src/utils → utils}/validation.js +0 -0
  188. /package/dist/types/{src/errors → errors}/index.d.ts +0 -0
  189. /package/dist/types/{src/index.d.ts → index.d.ts} +0 -0
  190. /package/dist/types/{src/queries → queries}/fragments/index.d.ts +0 -0
  191. /package/dist/types/{src/queries → queries}/fragments/stream.d.ts +0 -0
  192. /package/dist/types/{src/queries → queries}/fragments/task.d.ts +0 -0
  193. /package/dist/types/{src/queries → queries}/index.d.ts +0 -0
  194. /package/dist/types/{src/queries → queries}/mutations/createTask.d.ts +0 -0
  195. /package/dist/types/{src/queries → queries}/mutations/updateTaskComplete.d.ts +0 -0
  196. /package/dist/types/{src/queries → queries}/mutations/updateTaskDelete.d.ts +0 -0
  197. /package/dist/types/{src/queries → queries}/mutations/updateTaskNotes.d.ts +0 -0
  198. /package/dist/types/{src/queries → queries}/mutations/updateTaskSnoozeDate.d.ts +0 -0
  199. /package/dist/types/{src/queries → queries}/streams.d.ts +0 -0
  200. /package/dist/types/{src/queries → queries}/tasks.d.ts +0 -0
  201. /package/dist/types/{src/queries → queries}/user.d.ts +0 -0
  202. /package/dist/types/{src/types → types}/client.d.ts +0 -0
  203. /package/dist/types/{src/types → types}/common.d.ts +0 -0
  204. /package/dist/types/{src/types → types}/index.d.ts +0 -0
  205. /package/dist/types/{src/utils → utils}/index.d.ts +0 -0
  206. /package/dist/types/{src/utils → utils}/validation.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTask.d.ts","sourceRoot":"","sources":["../../../../src/queries/mutations/createTask.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,gCAehC,CAAC"}
@@ -6,4 +6,5 @@ export * from './updateTaskDelete.js';
6
6
  export * from './createTask.js';
7
7
  export * from './updateTaskSnoozeDate.js';
8
8
  export * from './updateTaskNotes.js';
9
+ export * from './updateTaskPlannedTime.js';
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/queries/mutations/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateTaskComplete.d.ts","sourceRoot":"","sources":["../../../../src/queries/mutations/updateTaskComplete.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH;;;GAGG;AACH,eAAO,MAAM,qBAAqB,gCAuCjC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,4BAA4B,gCAgBxC,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,6BAA6B,gCAQzC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateTaskDelete.d.ts","sourceRoot":"","sources":["../../../../src/queries/mutations/updateTaskDelete.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,gCAQvC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateTaskNotes.d.ts","sourceRoot":"","sources":["../../../../src/queries/mutations/updateTaskNotes.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,eAAO,MAAM,0BAA0B,gCAiiBtC,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * GraphQL mutation for updating a task's planned time
3
+ */
4
+ /**
5
+ * Mutation for updating a task's planned time (time estimate)
6
+ *
7
+ * Variables:
8
+ * - input.taskId: The ID of the task to update
9
+ * - input.timeInSeconds: The planned time in seconds (timeEstimate * 60)
10
+ * - input.limitResponsePayload: Flag to limit response size (optional)
11
+ */
12
+ export declare const UPDATE_TASK_PLANNED_TIME_MUTATION: import("graphql").DocumentNode;
13
+ //# sourceMappingURL=updateTaskPlannedTime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateTaskPlannedTime.d.ts","sourceRoot":"","sources":["../../../../src/queries/mutations/updateTaskPlannedTime.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH;;;;;;;GAOG;AACH,eAAO,MAAM,iCAAiC,gCAQ7C,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateTaskSnoozeDate.d.ts","sourceRoot":"","sources":["../../../../src/queries/mutations/updateTaskSnoozeDate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,eAAO,MAAM,gCAAgC,gCAU5C,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streams.d.ts","sourceRoot":"","sources":["../../../src/queries/streams.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,eAAO,MAAM,6BAA6B,gCASzC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tasks.d.ts","sourceRoot":"","sources":["../../../src/queries/tasks.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,eAAO,MAAM,sBAAsB,gCAelC,CAAC;AAEF,eAAO,MAAM,uBAAuB,gCAenC,CAAC;AAEF,eAAO,MAAM,wBAAwB,gCAepC,CAAC;AAEF,eAAO,MAAM,oBAAoB,gCAehC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../src/queries/user.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,eAAO,MAAM,cAAc,gCA+c1B,CAAC"}
@@ -1127,4 +1127,15 @@ export interface UpdateTaskNotesInput {
1127
1127
  /** Flag to limit response payload (returns null for updatedTask and updatedFields when true) */
1128
1128
  limitResponsePayload?: boolean;
1129
1129
  }
1130
+ /**
1131
+ * Input for updateTaskPlannedTime mutation
1132
+ */
1133
+ export interface UpdateTaskPlannedTimeInput {
1134
+ /** The ID of the task to update */
1135
+ taskId: string;
1136
+ /** The planned time in seconds (timeEstimate in minutes * 60) */
1137
+ timeInSeconds: number;
1138
+ /** Flag to limit response payload (returns null for updatedTask and updatedFields when true) */
1139
+ limitResponsePayload?: boolean;
1140
+ }
1130
1141
  //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/types/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/types/client.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,kDAAkD;IAClD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;AAErE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,kBAAkB;IAClB,MAAM,EAAE,UAAU,CAAC;IAEnB,sBAAsB;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC,mBAAmB;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;IAEnD,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/types/common.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAE/E;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAExE;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AAEnC;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,MAAM,CAAC;AAE1B;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,MAAM,CAAA;CAAE,CAAC;AAE1E;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,MAAM,CAAA;CAAE,CAAC;AAE1E;;GAEG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;AAE/C;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;IAC5B,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,wBAAwB;IACxB,EAAE,EAAE,IAAI,CAAC;IAET,yBAAyB;IACzB,SAAS,EAAE,aAAa,CAAC;IAEzB,4BAA4B;IAC5B,SAAS,EAAE,aAAa,CAAC;CAC1B"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,mBAAmB,aAAa,CAAC;AAGjC,mBAAmB,UAAU,CAAC;AAG9B,mBAAmB,aAAa,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,iBAAiB,CAAC;AAEhC;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAI7E;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAI7E;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GACjD,MAAM,CAYR;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAO9E"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/utils/validation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAQ3B;;GAEG;AACH,eAAO,MAAM,cAAc,aAKoE,CAAC;AAEhG;;GAEG;AACH,eAAO,MAAM,aAAa,aAkBvB,CAAC;AAEJ;;GAEG;AACH,eAAO,MAAM,kBAAkB,4DAkB7B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,4BAA4B;;;;iBAaxC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAElF;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAAC,IAAI,EAAE;IACnD,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IAC3B,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC,GAAG,sBAAsB,CAUzB;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAUxD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sunsama-api",
3
- "version": "0.6.0",
3
+ "version": "0.7.0",
4
4
  "description": "TypeScript wrapper for the Sunsama API - Daily planning and task management",
5
5
  "keywords": [
6
6
  "sunsama",
@@ -1,400 +0,0 @@
1
- #!/usr/bin/env tsx
2
- "use strict";
3
- /**
4
- * Test script for real Sunsama authentication and API methods
5
- *
6
- * This script tests the authentication and various API methods with real credentials
7
- * from environment variables. It creates a single task, marks it complete, and deletes it
8
- * to test the full CRUD workflow.
9
- */
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- require("dotenv/config");
12
- const client_1 = require("../src/client");
13
- async function testRealAuth() {
14
- console.log('🧪 Testing Sunsama API with Real Credentials (Full CRUD Workflow)\n');
15
- // Get credentials from environment
16
- const email = process.env['SUNSAMA_EMAIL'];
17
- const password = process.env['SUNSAMA_PASSWORD'];
18
- if (!email || !password) {
19
- console.error('❌ Missing credentials in .env file');
20
- console.error(' Please set SUNSAMA_EMAIL and SUNSAMA_PASSWORD');
21
- process.exit(1);
22
- }
23
- try {
24
- // Create client
25
- console.log('📝 Creating Sunsama client...');
26
- const client = new client_1.SunsamaClient();
27
- // Test authentication state before login
28
- console.log('🔍 Checking initial authentication state...');
29
- const initialAuth = await client.isAuthenticated();
30
- console.log(` Initially authenticated: ${initialAuth}`);
31
- // Attempt login
32
- console.log('\n🔐 Attempting login...');
33
- console.log(` Email: ${email}`);
34
- console.log(` Password: ${'*'.repeat(password.length)}`);
35
- await client.login(email, password);
36
- console.log('✅ Login successful!');
37
- // Test authentication state after login
38
- console.log('\n🔍 Checking authentication state after login...');
39
- const postLoginAuth = await client.isAuthenticated();
40
- console.log(` Now authenticated: ${postLoginAuth}`);
41
- // Test getUser method
42
- console.log('\n👤 Testing getUser method...');
43
- const user = await client.getUser();
44
- console.log('✅ getUser successful!');
45
- console.log('\n📊 User Information:');
46
- console.log(` ID: ${user._id}`);
47
- console.log(` Username: ${user.username || 'N/A'}`);
48
- console.log(` Name: ${user.profile.firstname || 'N/A'} ${user.profile.lastname || 'N/A'}`);
49
- console.log(` Email: ${user.emails[0]?.address || 'N/A'}`);
50
- console.log(` Timezone: ${user.profile.timezone || 'N/A'}`);
51
- console.log(` Created: ${user.createdAt || 'N/A'}`);
52
- console.log(` Days Planned: ${user.daysPlanned || 0}`);
53
- console.log(` Admin: ${user.admin || false}`);
54
- // Test getTasksByDay method
55
- console.log('\n📋 Testing getTasksByDay method...');
56
- const today = new Date().toISOString().split('T')[0]; // Get today in YYYY-MM-DD format
57
- console.log(` Testing with date: ${today}`);
58
- const tasks = await client.getTasksByDay(today);
59
- // Also test with a specific date that we know has tasks
60
- console.log('\n📋 Testing getTasksByDay with known date (2025-06-10)...');
61
- const testDate = '2025-06-10';
62
- const testTasks = await client.getTasksByDay(testDate);
63
- console.log('✅ getTasksByDay successful!');
64
- console.log('\n📊 Tasks Information:');
65
- console.log(` Tasks for ${today}: ${tasks.length}`);
66
- console.log(` Tasks for ${testDate}: ${testTasks.length}`);
67
- // Display sample tasks from either date
68
- const allTasks = [...tasks, ...testTasks];
69
- if (allTasks.length > 0) {
70
- console.log('\n📝 Sample tasks:');
71
- allTasks.slice(0, 3).forEach((task, index) => {
72
- console.log(` ${index + 1}. ${task.text}`);
73
- console.log(` ID: ${task._id}`);
74
- console.log(` Completed: ${task.completed}`);
75
- console.log(` Time Estimate: ${task.timeEstimate || 'N/A'} minutes`);
76
- console.log(` Subtasks: ${task.subtasks.length}`);
77
- if (task.integration) {
78
- console.log(` Integration: ${task.integration.service}`);
79
- }
80
- console.log('');
81
- });
82
- }
83
- else {
84
- console.log(' No tasks found for either date');
85
- }
86
- // Test getTasksBacklog method
87
- console.log('\n📋 Testing getTasksBacklog method...');
88
- const backlogTasks = await client.getTasksBacklog();
89
- console.log('✅ getTasksBacklog successful!');
90
- console.log(`\n📊 Backlog Information: ${backlogTasks.length} tasks`);
91
- if (backlogTasks.length > 0) {
92
- console.log('\n📝 Sample backlog tasks:');
93
- backlogTasks.slice(0, 3).forEach((task, index) => {
94
- console.log(` ${index + 1}. ${task.text}`);
95
- console.log(` ID: ${task._id}`);
96
- console.log(` Completed: ${task.completed}`);
97
- console.log(` Time Estimate: ${task.timeEstimate || 'N/A'} minutes`);
98
- console.log(` Subtasks: ${task.subtasks.length}`);
99
- if (task.integration) {
100
- console.log(` Integration: ${task.integration.service}`);
101
- }
102
- console.log('');
103
- });
104
- }
105
- else {
106
- console.log(' No tasks found in backlog');
107
- }
108
- // Test getArchivedTasks method
109
- console.log('\n📋 Testing getArchivedTasks method...');
110
- const archivedTasks = await client.getArchivedTasks();
111
- console.log('✅ getArchivedTasks successful!');
112
- console.log(`\n📊 Archived Tasks Information: ${archivedTasks.length} tasks`);
113
- if (archivedTasks.length > 0) {
114
- console.log('\n📝 Sample archived tasks:');
115
- archivedTasks.slice(0, 3).forEach((task, index) => {
116
- console.log(` ${index + 1}. ${task.text}`);
117
- console.log(` ID: ${task._id}`);
118
- console.log(` Completed: ${task.completed}`);
119
- console.log(` Archived At: ${task.archivedAt || 'N/A'}`);
120
- console.log(` Time Estimate: ${task.timeEstimate || 'N/A'} minutes`);
121
- console.log(` Subtasks: ${task.subtasks.length}`);
122
- if (task.integration) {
123
- console.log(` Integration: ${task.integration.service}`);
124
- }
125
- console.log('');
126
- });
127
- // Test pagination with getArchivedTasks
128
- if (archivedTasks.length >= 10) {
129
- console.log('\n📋 Testing getArchivedTasks pagination...');
130
- const paginatedTasks = await client.getArchivedTasks(5, 3); // offset 5, limit 3
131
- console.log(` Paginated tasks (offset 5, limit 3): ${paginatedTasks.length} tasks`);
132
- if (paginatedTasks.length > 0) {
133
- console.log(' Sample paginated tasks:');
134
- paginatedTasks.forEach((task, index) => {
135
- console.log(` ${index + 1}. ${task.text} (${task._id})`);
136
- });
137
- }
138
- }
139
- }
140
- else {
141
- console.log(' No archived tasks found');
142
- }
143
- // Test getStreamsByGroupId method
144
- console.log('\n🌊 Testing getStreamsByGroupId method...');
145
- const streams = await client.getStreamsByGroupId();
146
- console.log('✅ getStreamsByGroupId successful!');
147
- console.log(`\n📊 Streams Information: ${streams.length} streams`);
148
- if (streams.length > 0) {
149
- console.log('\n📝 Sample streams:');
150
- streams.slice(0, 5).forEach((stream, index) => {
151
- console.log(` ${index + 1}. ${stream.streamName}`);
152
- console.log(` ID: ${stream._id}`);
153
- console.log(` Status: ${stream.status}`);
154
- console.log(` Color: ${stream.color}`);
155
- console.log(` Private: ${stream.private}`);
156
- console.log(` Members: ${stream.memberIds.length}`);
157
- console.log(` Integrations: ${stream.projectIntegrations.length}`);
158
- if (stream.description) {
159
- console.log(` Description: ${stream.description}`);
160
- }
161
- console.log('');
162
- });
163
- }
164
- else {
165
- console.log(' No streams found for group');
166
- }
167
- // Test getTaskById method with existing tasks
168
- console.log('\n🔍 Testing getTaskById method...');
169
- let testTaskId;
170
- // Try to get an existing task ID from our task lists
171
- if (allTasks.length > 0) {
172
- testTaskId = allTasks[0]._id;
173
- console.log(` Testing with existing task ID: ${testTaskId}`);
174
- const existingTask = await client.getTaskById(testTaskId);
175
- if (existingTask) {
176
- console.log('✅ getTaskById successful!');
177
- console.log('\n📊 Retrieved Task Information:');
178
- console.log(` Task ID: ${existingTask._id}`);
179
- console.log(` Text: ${existingTask.text}`);
180
- console.log(` Completed: ${existingTask.completed}`);
181
- console.log(` Created: ${existingTask.createdAt}`);
182
- console.log(` Last Modified: ${existingTask.lastModified}`);
183
- console.log(` Time Estimate: ${existingTask.timeEstimate || 'N/A'} minutes`);
184
- console.log(` Subtasks: ${existingTask.subtasks.length}`);
185
- console.log(` Comments: ${existingTask.comments.length}`);
186
- if (existingTask.integration) {
187
- console.log(` Integration: ${existingTask.integration.service}`);
188
- }
189
- if (existingTask.snooze) {
190
- console.log(` Snooze until: ${existingTask.snooze.until}`);
191
- }
192
- console.log(` Stream IDs: ${existingTask.streamIds.join(', ') || 'None'}`);
193
- }
194
- else {
195
- console.log('⚠️ Task not found (returned null)');
196
- }
197
- }
198
- else {
199
- console.log(' No existing tasks found to test with');
200
- }
201
- // Test with a non-existent task ID
202
- console.log('\n Testing with non-existent task ID...');
203
- const nonExistentTaskId = '507f1f77bcf86cd799439999';
204
- const nonExistentTask = await client.getTaskById(nonExistentTaskId);
205
- if (nonExistentTask === null) {
206
- console.log('✅ getTaskById correctly returned null for non-existent task');
207
- }
208
- else {
209
- console.log('⚠️ Unexpected: getTaskById returned a task for non-existent ID');
210
- }
211
- // Test createTask method with custom ID (for tracking through completion and deletion)
212
- console.log('\n✨ Testing createTask method...');
213
- const timestamp = new Date().toISOString().replace(/[:.]/g, '-');
214
- const taskText = `Test Task Created by API - ${timestamp}`;
215
- // Generate a unique task ID for tracking
216
- const taskId = client_1.SunsamaClient.generateTaskId();
217
- const createdTask = await client.createTask(taskText, {
218
- taskId: taskId,
219
- notes: 'This task was created by the test-real-auth script to verify the full CRUD workflow (create, complete, delete).',
220
- timeEstimate: 25,
221
- streamIds: streams.length > 0 ? [streams[0]._id] : [],
222
- });
223
- console.log('✅ createTask successful!');
224
- console.log('\n📊 Created Task Information:');
225
- console.log(` Success: ${createdTask.success}`);
226
- console.log(` Error: ${createdTask.error || 'None'}`);
227
- console.log(` Task ID: ${taskId}`);
228
- if (createdTask.updatedFields) {
229
- console.log(` Recommended Stream: ${createdTask.updatedFields.recommendedStreamId || 'None'}`);
230
- console.log(` Stream IDs: ${createdTask.updatedFields.streamIds?.join(', ') || 'None'}`);
231
- console.log(` Time Estimate: ${createdTask.updatedFields.recommendedTimeEstimate || 'None'} minutes`);
232
- }
233
- // Test getTaskById with the newly created task
234
- console.log('\n🔍 Testing getTaskById with newly created task...');
235
- console.log(` Retrieving task: ${taskId}`);
236
- const retrievedTask = await client.getTaskById(taskId);
237
- if (retrievedTask) {
238
- console.log('✅ getTaskById successful for created task!');
239
- console.log('\n📊 Retrieved Created Task Information:');
240
- console.log(` Task ID: ${retrievedTask._id}`);
241
- console.log(` Text: ${retrievedTask.text}`);
242
- console.log(` Notes: ${retrievedTask.notes || 'None'}`);
243
- console.log(` Completed: ${retrievedTask.completed}`);
244
- console.log(` Time Estimate: ${retrievedTask.timeEstimate || 'N/A'} minutes`);
245
- console.log(` Stream IDs: ${retrievedTask.streamIds.join(', ') || 'None'}`);
246
- console.log(` Created: ${retrievedTask.createdAt}`);
247
- // Verify the task matches what we created
248
- if (retrievedTask.text === taskText) {
249
- console.log('✅ Task text matches what we created');
250
- }
251
- else {
252
- console.log('⚠️ Task text does not match what we created');
253
- }
254
- }
255
- else {
256
- console.log('❌ Failed to retrieve newly created task');
257
- }
258
- // Test updateTaskSnoozeDate method (unified scheduling operations)
259
- console.log('\n📅 Testing updateTaskSnoozeDate method...');
260
- // First, schedule the task to tomorrow
261
- const tomorrow = new Date();
262
- tomorrow.setDate(tomorrow.getDate() + 1);
263
- const tomorrowStr = tomorrow.toISOString().split('T')[0];
264
- console.log(` Scheduling task to tomorrow (${tomorrowStr}): ${taskId}`);
265
- const scheduleResult = await client.updateTaskSnoozeDate(taskId, tomorrowStr);
266
- console.log('✅ updateTaskSnoozeDate (schedule) successful!');
267
- console.log('📊 Schedule Task Information:');
268
- console.log(` Success: ${scheduleResult.success}`);
269
- if (scheduleResult.updatedFields) {
270
- console.log(` Task ID: ${scheduleResult.updatedFields._id}`);
271
- console.log(` New snooze date: ${scheduleResult.updatedFields.snooze?.until || 'None'}`);
272
- }
273
- else {
274
- console.log(' updatedFields: null (limitResponsePayload=true)');
275
- }
276
- // Then move to backlog
277
- console.log(`\n Moving task to backlog: ${taskId}`);
278
- const backlogResult = await client.updateTaskSnoozeDate(taskId, null);
279
- console.log('✅ updateTaskSnoozeDate (backlog) successful!');
280
- console.log('📊 Move to Backlog Information:');
281
- console.log(` Success: ${backlogResult.success}`);
282
- if (backlogResult.updatedFields) {
283
- console.log(` Task ID: ${backlogResult.updatedFields._id}`);
284
- console.log(` Snooze status: ${backlogResult.updatedFields.snooze ? 'Snoozed' : 'In backlog'}`);
285
- }
286
- else {
287
- console.log(' updatedFields: null (limitResponsePayload=true)');
288
- }
289
- // Finally, schedule it back to today
290
- console.log(`\n Scheduling backlog task to today (${today}): ${taskId}`);
291
- const rescheduleResult = await client.updateTaskSnoozeDate(taskId, today);
292
- console.log('✅ updateTaskSnoozeDate (reschedule) successful!');
293
- console.log('📊 Reschedule Task Information:');
294
- console.log(` Success: ${rescheduleResult.success}`);
295
- if (rescheduleResult.updatedFields) {
296
- console.log(` Task ID: ${rescheduleResult.updatedFields._id}`);
297
- console.log(` New snooze date: ${rescheduleResult.updatedFields.snooze?.until || 'None'}`);
298
- }
299
- else {
300
- console.log(' updatedFields: null (limitResponsePayload=true)');
301
- }
302
- // Test updateTaskNotes method
303
- console.log('\n📝 Testing updateTaskNotes method...');
304
- const notesTimestamp = new Date().toISOString().replace(/[:.]/g, '-');
305
- const htmlNotes = `<p>These are updated notes for the test task - ${notesTimestamp}</p><p>This includes <strong>bold text</strong> and multiple paragraphs.</p>`;
306
- const markdownNotes = `These are updated notes for the test task - ${notesTimestamp}\n\nThis includes **bold text** and multiple paragraphs.`;
307
- console.log(` Updating notes for task: ${taskId}`);
308
- console.log(` HTML notes preview: ${htmlNotes.substring(0, 50)}...`);
309
- const notesResult = await client.updateTaskNotes(taskId, htmlNotes, markdownNotes);
310
- console.log('✅ updateTaskNotes successful!');
311
- console.log('\n📊 Task Notes Update Information:');
312
- console.log(` Success: ${notesResult.success}`);
313
- console.log(` Skipped: ${notesResult.skipped || false}`);
314
- if (notesResult.updatedFields) {
315
- console.log(` Task ID: ${notesResult.updatedFields._id}`);
316
- console.log(` Stream IDs: ${notesResult.updatedFields.streamIds?.join(', ') || 'None'}`);
317
- }
318
- else {
319
- console.log(' updatedFields: null (limitResponsePayload=true)');
320
- }
321
- // Test updateTaskNotes with explicit collabSnapshot option
322
- console.log('\n📝 Testing updateTaskNotes with explicit collabSnapshot...');
323
- // First get the task to extract its collaborative snapshot
324
- const taskForSnapshot = await client.getTaskById(taskId);
325
- if (taskForSnapshot?.collabSnapshot) {
326
- const explicitNotes = `<p>Explicit snapshot notes update - ${notesTimestamp}</p>`;
327
- const explicitMarkdown = `Explicit snapshot notes update - ${notesTimestamp}`;
328
- const explicitResult = await client.updateTaskNotes(taskId, explicitNotes, explicitMarkdown, {
329
- collabSnapshot: taskForSnapshot.collabSnapshot,
330
- limitResponsePayload: false,
331
- });
332
- console.log('✅ updateTaskNotes with explicit collabSnapshot successful!');
333
- console.log(` Success: ${explicitResult.success}`);
334
- console.log(` Used explicit snapshot: true`);
335
- if (explicitResult.updatedFields) {
336
- console.log(` Task ID: ${explicitResult.updatedFields._id}`);
337
- }
338
- }
339
- else {
340
- console.log('⚠️ Task does not have a collaborative snapshot, skipping explicit snapshot test');
341
- }
342
- // Verify the notes were updated by retrieving the task
343
- console.log('\n🔍 Verifying notes update by retrieving task...');
344
- const updatedTask = await client.getTaskById(taskId);
345
- if (updatedTask) {
346
- console.log('✅ Task retrieved successfully after notes update');
347
- console.log(` Updated notes preview: ${updatedTask.notes?.substring(0, 100) || 'None'}...`);
348
- console.log(` Notes markdown preview: ${updatedTask.notesMarkdown?.substring(0, 100) || 'None'}...`);
349
- // Check if notes were actually updated
350
- if (updatedTask.notes && updatedTask.notes.includes(notesTimestamp)) {
351
- console.log('✅ Notes were successfully updated with timestamp');
352
- }
353
- else {
354
- console.log('⚠️ Notes may not have been updated or timestamp not found');
355
- }
356
- }
357
- else {
358
- console.log('❌ Failed to retrieve task after notes update');
359
- }
360
- // Test updateTaskComplete method
361
- console.log('\n✅ Testing updateTaskComplete method...');
362
- console.log(` Marking task as complete: ${taskId}`);
363
- const completeResult = await client.updateTaskComplete(taskId);
364
- console.log('✅ updateTaskComplete successful!');
365
- console.log('\n📊 Task Completion Information:');
366
- console.log(` Success: ${completeResult.success}`);
367
- console.log(` Skipped: ${completeResult.skipped || false}`);
368
- if (completeResult.updatedFields) {
369
- console.log(` Task ID: ${completeResult.updatedFields._id}`);
370
- console.log(` Subtasks: ${completeResult.updatedFields.subtasks?.length || 0}`);
371
- }
372
- // Test deleteTask method
373
- console.log('\n🗑️ Testing deleteTask method...');
374
- console.log(` Deleting task: ${taskId}`);
375
- const deleteResult = await client.deleteTask(taskId);
376
- console.log('✅ deleteTask successful!');
377
- console.log('\n📊 Task Deletion Information:');
378
- console.log(` Success: ${deleteResult.success}`);
379
- console.log(` Skipped: ${deleteResult.skipped || false}`);
380
- // Test logout
381
- console.log('\n🚪 Testing logout...');
382
- client.logout();
383
- const postLogoutAuth = await client.isAuthenticated();
384
- console.log(` Authenticated after logout: ${postLogoutAuth}`);
385
- console.log('\n🎉 All tests passed!');
386
- }
387
- catch (error) {
388
- console.error('\n❌ Test failed:');
389
- if (error instanceof Error) {
390
- console.error(` Error: ${error.message}`);
391
- }
392
- else {
393
- console.error(` Unknown error: ${error}`);
394
- }
395
- process.exit(1);
396
- }
397
- }
398
- // Run the test
399
- testRealAuth().catch(console.error);
400
- //# sourceMappingURL=test-real-auth.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-real-auth.js","sourceRoot":"","sources":["../../../scripts/test-real-auth.ts"],"names":[],"mappings":";;AAEA;;;;;;GAMG;;AAEH,yBAAuB;AACvB,0CAA8C;AAE9C,KAAK,UAAU,YAAY;IACzB,OAAO,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC;IAEnF,mCAAmC;IACnC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IAEjD,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;QACxB,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACpD,OAAO,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;QAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,gBAAgB;QAChB,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,sBAAa,EAAE,CAAC;QAEnC,yCAAyC;QACzC,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;QAC3D,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,eAAe,EAAE,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,+BAA+B,WAAW,EAAE,CAAC,CAAC;QAE1D,gBAAgB;QAChB,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,EAAE,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE3D,MAAM,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QAEnC,wCAAwC;QACxC,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;QACjE,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,eAAe,EAAE,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,yBAAyB,aAAa,EAAE,CAAC,CAAC;QAEtD,sBAAsB;QACtB,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QAEpC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,CAAC,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC;QAC7F,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,SAAS,IAAI,KAAK,EAAE,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,KAAK,IAAI,KAAK,EAAE,CAAC,CAAC;QAEhD,4BAA4B;QAC5B,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,iCAAiC;QACxF,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAEhD,wDAAwD;QACxD,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAG,YAAY,CAAC;QAC9B,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAEvD,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,gBAAgB,QAAQ,KAAK,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;QAE7D,wCAAwC;QACxC,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,EAAE,GAAG,SAAS,CAAC,CAAC;QAC1C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;YAClC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBAC3C,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;gBACrC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,YAAY,IAAI,KAAK,UAAU,CAAC,CAAC;gBAC1E,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;gBACvD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;gBAChE,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACnD,CAAC;QAED,8BAA8B;QAC9B,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACtD,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,eAAe,EAAE,CAAC;QAEpD,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,6BAA6B,YAAY,CAAC,MAAM,QAAQ,CAAC,CAAC;QAEtE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;YAC1C,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBAC/C,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;gBACrC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,YAAY,IAAI,KAAK,UAAU,CAAC,CAAC;gBAC1E,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;gBACvD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;gBAChE,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC9C,CAAC;QAED,+BAA+B;QAC/B,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;QACvD,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAEtD,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,oCAAoC,aAAa,CAAC,MAAM,QAAQ,CAAC,CAAC;QAE9E,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;YAC3C,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBAChD,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;gBACrC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,CAAC,UAAU,IAAI,KAAK,EAAE,CAAC,CAAC;gBAC9D,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,YAAY,IAAI,KAAK,UAAU,CAAC,CAAC;gBAC1E,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;gBACvD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;gBAChE,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;YAEH,wCAAwC;YACxC,IAAI,aAAa,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;gBAC3D,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,oBAAoB;gBAChF,OAAO,CAAC,GAAG,CAAC,2CAA2C,cAAc,CAAC,MAAM,QAAQ,CAAC,CAAC;gBAEtF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9B,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;oBAC1C,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;wBACrC,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;oBAC/D,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QAC5C,CAAC;QAED,kCAAkC;QAClC,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;QAC1D,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,mBAAmB,EAAE,CAAC;QAEnD,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,6BAA6B,OAAO,CAAC,MAAM,UAAU,CAAC,CAAC;QAEnE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;YACpC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBAC5C,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,KAAK,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;gBACrD,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;gBACvC,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC9C,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC5C,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;gBAChD,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC;gBACxE,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;oBACvB,OAAO,CAAC,GAAG,CAAC,sBAAsB,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC1D,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC/C,CAAC;QAED,8CAA8C;QAC9C,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAElD,IAAI,UAA8B,CAAC;QAEnC,qDAAqD;QACrD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,qCAAqC,UAAU,EAAE,CAAC,CAAC;YAE/D,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAE1D,IAAI,YAAY,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;gBACzC,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;gBAChD,OAAO,CAAC,GAAG,CAAC,eAAe,YAAY,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC/C,OAAO,CAAC,GAAG,CAAC,YAAY,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,iBAAiB,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC;gBACvD,OAAO,CAAC,GAAG,CAAC,eAAe,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC;gBACrD,OAAO,CAAC,GAAG,CAAC,qBAAqB,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC;gBAC9D,OAAO,CAAC,GAAG,CAAC,qBAAqB,YAAY,CAAC,YAAY,IAAI,KAAK,UAAU,CAAC,CAAC;gBAC/E,OAAO,CAAC,GAAG,CAAC,gBAAgB,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC5D,OAAO,CAAC,GAAG,CAAC,gBAAgB,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC5D,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;oBAC7B,OAAO,CAAC,GAAG,CAAC,mBAAmB,YAAY,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;gBACrE,CAAC;gBACD,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;oBACxB,OAAO,CAAC,GAAG,CAAC,oBAAoB,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC/D,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,kBAAkB,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;YAC/E,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;QACzD,CAAC;QAED,mCAAmC;QACnC,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;QACzD,MAAM,iBAAiB,GAAG,0BAA0B,CAAC;QACrD,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;QAEpE,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;QAC7E,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC;QAChF,CAAC;QAED,uFAAuF;QACvF,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACjE,MAAM,QAAQ,GAAG,8BAA8B,SAAS,EAAE,CAAC;QAE3D,yCAAyC;QACzC,MAAM,MAAM,GAAG,sBAAa,CAAC,cAAc,EAAE,CAAC;QAE9C,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE;YACpD,MAAM,EAAE,MAAM;YACd,KAAK,EACH,iHAAiH;YACnH,YAAY,EAAE,EAAE;YAChB,SAAS,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;SACvD,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,eAAe,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,aAAa,WAAW,CAAC,KAAK,IAAI,MAAM,EAAE,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,EAAE,CAAC,CAAC;QACrC,IAAI,WAAW,CAAC,aAAa,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CACT,0BAA0B,WAAW,CAAC,aAAa,CAAC,mBAAmB,IAAI,MAAM,EAAE,CACpF,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,kBAAkB,WAAW,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;YAC3F,OAAO,CAAC,GAAG,CACT,qBAAqB,WAAW,CAAC,aAAa,CAAC,uBAAuB,IAAI,MAAM,UAAU,CAC3F,CAAC;QACJ,CAAC;QAED,+CAA+C;QAC/C,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;QACnE,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,EAAE,CAAC,CAAC;QAC7C,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAEvD,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;YAC1D,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,eAAe,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,YAAY,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,aAAa,aAAa,CAAC,KAAK,IAAI,MAAM,EAAE,CAAC,CAAC;YAC1D,OAAO,CAAC,GAAG,CAAC,iBAAiB,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,qBAAqB,aAAa,CAAC,YAAY,IAAI,KAAK,UAAU,CAAC,CAAC;YAChF,OAAO,CAAC,GAAG,CAAC,kBAAkB,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;YAC9E,OAAO,CAAC,GAAG,CAAC,eAAe,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC;YAEtD,0CAA0C;YAC1C,IAAI,aAAa,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACpC,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;QACzD,CAAC;QAED,mEAAmE;QACnE,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;QAE3D,uCAAuC;QACvC,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;QAC5B,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;QAE1D,OAAO,CAAC,GAAG,CAAC,mCAAmC,WAAW,MAAM,MAAM,EAAE,CAAC,CAAC;QAC1E,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAE9E,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,eAAe,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC;QACrD,IAAI,cAAc,CAAC,aAAa,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,eAAe,cAAc,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,uBAAuB,cAAc,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,IAAI,MAAM,EAAE,CAAC,CAAC;QAC7F,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QACpE,CAAC;QAED,uBAAuB;QACvB,OAAO,CAAC,GAAG,CAAC,gCAAgC,MAAM,EAAE,CAAC,CAAC;QACtD,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAEtE,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,eAAe,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QACpD,IAAI,aAAa,CAAC,aAAa,EAAE,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,eAAe,aAAa,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;YAC9D,OAAO,CAAC,GAAG,CACT,qBAAqB,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,EAAE,CACrF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QACpE,CAAC;QAED,qCAAqC;QACrC,OAAO,CAAC,GAAG,CAAC,0CAA0C,KAAK,MAAM,MAAM,EAAE,CAAC,CAAC;QAC3E,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAE1E,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,eAAe,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC;QACvD,IAAI,gBAAgB,CAAC,aAAa,EAAE,CAAC;YACnC,OAAO,CAAC,GAAG,CAAC,eAAe,gBAAgB,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;YACjE,OAAO,CAAC,GAAG,CAAC,uBAAuB,gBAAgB,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,IAAI,MAAM,EAAE,CAAC,CAAC;QAC/F,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QACpE,CAAC;QAED,8BAA8B;QAC9B,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACtD,MAAM,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACtE,MAAM,SAAS,GAAG,kDAAkD,cAAc,8EAA8E,CAAC;QACjK,MAAM,aAAa,GAAG,+CAA+C,cAAc,0DAA0D,CAAC;QAE9I,OAAO,CAAC,GAAG,CAAC,+BAA+B,MAAM,EAAE,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,0BAA0B,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;QAEvE,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QAEnF,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,eAAe,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,eAAe,WAAW,CAAC,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC;QAC3D,IAAI,WAAW,CAAC,aAAa,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,eAAe,WAAW,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;YAC5D,OAAO,CAAC,GAAG,CAAC,kBAAkB,WAAW,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;QAC7F,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QACpE,CAAC;QAED,2DAA2D;QAC3D,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;QAE5E,2DAA2D;QAC3D,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACzD,IAAI,eAAe,EAAE,cAAc,EAAE,CAAC;YACpC,MAAM,aAAa,GAAG,uCAAuC,cAAc,MAAM,CAAC;YAClF,MAAM,gBAAgB,GAAG,oCAAoC,cAAc,EAAE,CAAC;YAE9E,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE;gBAC3F,cAAc,EAAE,eAAe,CAAC,cAAc;gBAC9C,oBAAoB,EAAE,KAAK;aAC5B,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;YAC1E,OAAO,CAAC,GAAG,CAAC,eAAe,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC;YACrD,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;YAC/C,IAAI,cAAc,CAAC,aAAa,EAAE,CAAC;gBACjC,OAAO,CAAC,GAAG,CAAC,eAAe,cAAc,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CACT,iFAAiF,CAClF,CAAC;QACJ,CAAC;QAED,uDAAuD;QACvD,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;QACjE,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;YAChE,OAAO,CAAC,GAAG,CAAC,6BAA6B,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,KAAK,CAAC,CAAC;YAC9F,OAAO,CAAC,GAAG,CACT,8BAA8B,WAAW,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,KAAK,CAC1F,CAAC;YAEF,uCAAuC;YACvC,IAAI,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gBACpE,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;YAClE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC;YAC3E,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;QAC9D,CAAC;QAED,iCAAiC;QACjC,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,gCAAgC,MAAM,EAAE,CAAC,CAAC;QAEtD,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAE/D,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,eAAe,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,eAAe,cAAc,CAAC,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC;QAC9D,IAAI,cAAc,CAAC,aAAa,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,eAAe,cAAc,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,gBAAgB,cAAc,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC,CAAC;QACpF,CAAC;QAED,yBAAyB;QACzB,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,qBAAqB,MAAM,EAAE,CAAC,CAAC;QAE3C,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAErD,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,eAAe,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,eAAe,YAAY,CAAC,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC;QAE5D,cAAc;QACd,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACtC,MAAM,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,eAAe,EAAE,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,kCAAkC,cAAc,EAAE,CAAC,CAAC;QAEhE,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAClC,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,aAAa,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,qBAAqB,KAAK,EAAE,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,eAAe;AACf,YAAY,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}