tsarr 2.9.1 → 2.11.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 (104) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +120 -233
  3. package/dist/cli/commands/doctor.d.ts.map +1 -1
  4. package/dist/cli/commands/manual-import.d.ts +30 -0
  5. package/dist/cli/commands/manual-import.d.ts.map +1 -0
  6. package/dist/cli/commands/radarr.d.ts.map +1 -1
  7. package/dist/cli/commands/sonarr.d.ts.map +1 -1
  8. package/dist/cli/index.js +5230 -4783
  9. package/dist/cli/index.js.map +133 -0
  10. package/dist/clients/base.d.ts +8 -3
  11. package/dist/clients/base.d.ts.map +1 -1
  12. package/dist/clients/bazarr.d.ts +125 -124
  13. package/dist/clients/bazarr.d.ts.map +1 -1
  14. package/dist/clients/bazarr.js +183 -100
  15. package/dist/clients/bazarr.js.map +22 -0
  16. package/dist/clients/lidarr.d.ts +148 -147
  17. package/dist/clients/lidarr.d.ts.map +1 -1
  18. package/dist/clients/lidarr.js +190 -102
  19. package/dist/clients/lidarr.js.map +23 -0
  20. package/dist/clients/prowlarr.d.ts +30 -29
  21. package/dist/clients/prowlarr.d.ts.map +1 -1
  22. package/dist/clients/prowlarr.js +190 -102
  23. package/dist/clients/prowlarr.js.map +23 -0
  24. package/dist/clients/qbittorrent.d.ts +3 -1
  25. package/dist/clients/qbittorrent.d.ts.map +1 -1
  26. package/dist/clients/qbittorrent.js +213 -107
  27. package/dist/clients/qbittorrent.js.map +21 -0
  28. package/dist/clients/radarr.d.ts +195 -150
  29. package/dist/clients/radarr.d.ts.map +1 -1
  30. package/dist/clients/radarr.js +230 -102
  31. package/dist/clients/radarr.js.map +23 -0
  32. package/dist/clients/readarr.d.ts +150 -149
  33. package/dist/clients/readarr.d.ts.map +1 -1
  34. package/dist/clients/readarr.js +190 -102
  35. package/dist/clients/readarr.js.map +23 -0
  36. package/dist/clients/seerr-types.d.ts +1 -1
  37. package/dist/clients/seerr-types.d.ts.map +1 -1
  38. package/dist/clients/seerr.d.ts +17 -16
  39. package/dist/clients/seerr.d.ts.map +1 -1
  40. package/dist/clients/seerr.js +183 -100
  41. package/dist/clients/seerr.js.map +22 -0
  42. package/dist/clients/sonarr.d.ts +203 -168
  43. package/dist/clients/sonarr.d.ts.map +1 -1
  44. package/dist/clients/sonarr.js +206 -112
  45. package/dist/clients/sonarr.js.map +23 -0
  46. package/dist/core/client.d.ts +2 -0
  47. package/dist/core/client.d.ts.map +1 -1
  48. package/dist/core/fetch.d.ts +23 -0
  49. package/dist/core/fetch.d.ts.map +1 -0
  50. package/dist/core/index.d.ts +1 -0
  51. package/dist/core/index.d.ts.map +1 -1
  52. package/dist/core/types.d.ts +7 -0
  53. package/dist/core/types.d.ts.map +1 -1
  54. package/dist/generated/bazarr/client/client.gen.d.ts.map +1 -1
  55. package/dist/generated/bazarr/client/types.gen.d.ts +5 -2
  56. package/dist/generated/bazarr/client/types.gen.d.ts.map +1 -1
  57. package/dist/generated/bazarr/client/utils.gen.d.ts +5 -1
  58. package/dist/generated/bazarr/client/utils.gen.d.ts.map +1 -1
  59. package/dist/generated/lidarr/client/client.gen.d.ts.map +1 -1
  60. package/dist/generated/lidarr/client/types.gen.d.ts +5 -2
  61. package/dist/generated/lidarr/client/types.gen.d.ts.map +1 -1
  62. package/dist/generated/lidarr/client/utils.gen.d.ts +5 -1
  63. package/dist/generated/lidarr/client/utils.gen.d.ts.map +1 -1
  64. package/dist/generated/prowlarr/client/client.gen.d.ts.map +1 -1
  65. package/dist/generated/prowlarr/client/types.gen.d.ts +5 -2
  66. package/dist/generated/prowlarr/client/types.gen.d.ts.map +1 -1
  67. package/dist/generated/prowlarr/client/utils.gen.d.ts +5 -1
  68. package/dist/generated/prowlarr/client/utils.gen.d.ts.map +1 -1
  69. package/dist/generated/qbittorrent/client/client.gen.d.ts.map +1 -1
  70. package/dist/generated/qbittorrent/client/types.gen.d.ts +5 -2
  71. package/dist/generated/qbittorrent/client/types.gen.d.ts.map +1 -1
  72. package/dist/generated/qbittorrent/client/utils.gen.d.ts +5 -1
  73. package/dist/generated/qbittorrent/client/utils.gen.d.ts.map +1 -1
  74. package/dist/generated/radarr/client/client.gen.d.ts.map +1 -1
  75. package/dist/generated/radarr/client/types.gen.d.ts +5 -2
  76. package/dist/generated/radarr/client/types.gen.d.ts.map +1 -1
  77. package/dist/generated/radarr/client/utils.gen.d.ts +5 -1
  78. package/dist/generated/radarr/client/utils.gen.d.ts.map +1 -1
  79. package/dist/generated/readarr/client/client.gen.d.ts.map +1 -1
  80. package/dist/generated/readarr/client/types.gen.d.ts +5 -2
  81. package/dist/generated/readarr/client/types.gen.d.ts.map +1 -1
  82. package/dist/generated/readarr/client/utils.gen.d.ts +5 -1
  83. package/dist/generated/readarr/client/utils.gen.d.ts.map +1 -1
  84. package/dist/generated/seerr/client/client.gen.d.ts.map +1 -1
  85. package/dist/generated/seerr/client/types.gen.d.ts +5 -2
  86. package/dist/generated/seerr/client/types.gen.d.ts.map +1 -1
  87. package/dist/generated/seerr/client/utils.gen.d.ts +5 -1
  88. package/dist/generated/seerr/client/utils.gen.d.ts.map +1 -1
  89. package/dist/generated/seerr/index.d.ts +2 -2
  90. package/dist/generated/seerr/index.d.ts.map +1 -1
  91. package/dist/generated/seerr/sdk.gen.d.ts +13 -1
  92. package/dist/generated/seerr/sdk.gen.d.ts.map +1 -1
  93. package/dist/generated/seerr/types.gen.d.ts +78 -7
  94. package/dist/generated/seerr/types.gen.d.ts.map +1 -1
  95. package/dist/generated/sonarr/client/client.gen.d.ts.map +1 -1
  96. package/dist/generated/sonarr/client/types.gen.d.ts +5 -2
  97. package/dist/generated/sonarr/client/types.gen.d.ts.map +1 -1
  98. package/dist/generated/sonarr/client/utils.gen.d.ts +5 -1
  99. package/dist/generated/sonarr/client/utils.gen.d.ts.map +1 -1
  100. package/dist/index.js +4 -1
  101. package/dist/index.js.map +12 -0
  102. package/dist/tsarr-2.11.0.tgz +0 -0
  103. package/package.json +18 -9
  104. package/dist/tsarr-2.9.1.tgz +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"sonarr.d.ts","sourceRoot":"","sources":["../../src/clients/sonarr.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sonarr.d.ts","sourceRoot":"","sources":["../../src/clients/sonarr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEzD,OAAO,KAAK,SAAS,MAAM,2BAA2B,CAAC;AACvD,OAAO,KAAK,EACV,wBAAwB,EACxB,oBAAoB,EACpB,0BAA0B,EAC1B,uBAAuB,EACvB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,qCAAqC,EACrC,6BAA6B,EAC7B,oBAAoB,EACpB,sBAAsB,EACtB,cAAc,EACf,MAAM,+BAA+B,CAAC;AAEvC,MAAM,MAAM,6BAA6B,GAAG;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,qBAAa,YAAa,SAAQ,iBAAiB;IACjD,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,UAAU,CAmEhC;gBAEU,MAAM,EAAE,mBAAmB;IAKjC,eAAe;;;;;;;;;;IAQf,SAAS;;;;;;;;;;IAST,MAAM;;;;;;;;;;IAMZ;;OAEG;IACG,SAAS;;;;;;;;;;IAIf;;OAEG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAI9B;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE,cAAc;;;;;;;;;;IAItC;;OAEG;IACG,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc;;;;;;;;;;IAIrD;;OAEG;IACG,YAAY,CAChB,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,sBAAsB,CAAC,EAAE,OAAO,CAAA;KAAE;;;;;;;;;;IAQvE;;OAEG;IACG,eAAe,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAMhC;;OAEG;IACG,YAAY,CAAC,IAAI,EAAE,MAAM;;;;;;;;;;IAM/B;;OAEG;IACG,cAAc;;;;;;;;;;IAIpB;;OAEG;IACG,aAAa,CAAC,IAAI,EAAE,MAAM;;;;;;;;;;IAMhC;;OAEG;IACG,gBAAgB,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAMjC;;OAEG;IACG,OAAO,CACX,IAAI,CAAC,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,MAAM,EACtB,KAAK,CAAC,EAAE,MAAM;;;;;;;;;;IAchB;;OAEG;IACG,UAAU;;;;;;;;;;IAIhB;;OAEG;IACG,iBAAiB;;;;;;;;;;IAIvB;;OAEG;IACG,gBAAgB;;;;;;;;;;IAMtB;;OAEG;IACG,eAAe;;;;;;;;;;IAIrB;;OAEG;IACG,mBAAmB,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAIpC;;OAEG;IACG,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB;;;;;;;;;;IAIjE;;OAEG;IACG,uBAAuB;;;;;;;;;;IAI7B;;OAEG;IACG,wBAAwB;;;;;;;;;;IAI9B;;OAEG;IACG,4BAA4B,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAI7C;;OAEG;IACG,2BAA2B,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,6BAA6B;;;;;;;;;;IAInF;;OAEG;IACG,YAAY;;;;;;;;;;IAMlB;;OAEG;IACG,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE;;;;;;;;;;IAQ1D;;OAEG;IACG,UAAU,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAI3B;;OAEG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe;;;;;;;;;;IAMxD;;OAEG;IACG,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE;;;;;;;;;;IAQlE;;OAEG;IACG,cAAc,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAI/B;;OAEG;IACG,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,mBAAmB;;;;;;;;;;IAIpE;;OAEG;IACG,iBAAiB,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAIlC;;OAEG;IACG,wBAAwB,CAAC,eAAe,EAAE,uBAAuB;;;;;;;;;;IAIvE;;OAEG;IACG,sBAAsB,CAAC,eAAe,EAAE,uBAAuB;;;;;;;;;;IAIrE;;OAEG;IACG,sBAAsB,CAAC,YAAY,EAAE,mBAAmB,EAAE;;;;;;;;;;IAMhE;;OAEG;IACG,kBAAkB;;;;;;;;;;IAIxB;;OAEG;IACG,iBAAiB,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAIlC;;OAEG;IACG,iBAAiB,CAAC,OAAO,EAAE,sBAAsB;;;;;;;;;;IAIvD;;OAEG;IACG,oBAAoB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,sBAAsB;;;;;;;;;;IAItE;;OAEG;IACG,oBAAoB,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAIrC;;OAEG;IACG,uBAAuB;;;;;;;;;;IAM7B;;OAEG;IACG,gBAAgB;;;;;;;;;;IAItB;;OAEG;IACG,eAAe,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAIhC;;OAEG;IACG,eAAe,CAAC,MAAM,EAAE,oBAAoB;;;;;;;;;;IAIlD;;OAEG;IACG,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB;;;;;;;;;;IAIjE;;OAEG;IACG,kBAAkB,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAInC;;OAEG;IACG,uBAAuB,CAAC,OAAO,EAAE,wBAAwB;;;;;;;;;;IAI/D;;OAEG;IACG,uBAAuB,CAAC,GAAG,EAAE,MAAM,EAAE;;;;;;;;;;IAI3C;;OAEG;IACG,qBAAqB;;;;;;;;;;IAM3B;;OAEG;IACG,yBAAyB,CAAC,OAAO,EAAE,0BAA0B;;;;;;;;;;IAInE;;OAEG;IACG,yBAAyB,CAAC,GAAG,EAAE,MAAM,EAAE;;;;;;;;;;IAM7C;;OAEG;IACG,cAAc;;;;;;;;;;IAIpB;;OAEG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAI9B;;OAEG;IACG,aAAa,CAAC,UAAU,EAAE,kBAAkB;;;;;;;;;;IAIlD;;OAEG;IACG,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB;;;;;;;;;;IAIjE;;OAEG;IACG,gBAAgB,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAIjC;;OAEG;IACG,mBAAmB;;;;;;;;;;IAIzB;;OAEG;IACG,cAAc,CAAC,UAAU,EAAE,kBAAkB;;;;;;;;;;IAInD;;OAEG;IACG,kBAAkB;;;;;;;;;;IAMxB;;OAEG;IACG,UAAU,CACd,IAAI,CAAC,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,MAAM,EACtB,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM;;;;;;;;;;IAarB;;OAEG;IACG,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;;;;;;;;;;IAOrD;;OAEG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,GAAG;;;;;;;;;;IAQ/E;;OAEG;IACG,qBAAqB,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAMtC;;OAEG;IACG,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,OAAO;;;;;;;;;;IAU7E;;OAEG;IACG,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;;;;;;;;;;IAW3E;;OAEG;IACG,QAAQ,CACZ,IAAI,CAAC,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,MAAM,EACtB,yBAAyB,CAAC,EAAE,OAAO,EACnC,QAAQ,CAAC,EAAE,MAAM;;;;;;;;;;IAcnB;;OAEG;IACG,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,OAAO;;;;;;;;;;IAWjF;;OAEG;IACG,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,gBAAgB,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,OAAO;;;;;;;;;;IAWzF;;OAEG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAI9B;;OAEG;IACG,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE;;;;;;;;;;IAItC;;OAEG;IACG,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,yBAAyB,CAAC,EAAE,OAAO;;;;;;;;;;IAS5E;;OAEG;IACG,cAAc;;;;;;;;;;IAMpB;;OAEG;IACG,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM;;;;;;;;;;IAU7F;;OAEG;IACG,mBAAmB,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAIpC;;OAEG;IACG,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE;;;;;;;;;;IAM5C;;OAEG;IACG,gBAAgB,CACpB,IAAI,CAAC,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,MAAM;;;;;;;;;;IAWxB;;OAEG;IACG,eAAe,CACnB,IAAI,CAAC,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,MAAM;;;;;;;;;;IAaxB;;OAEG;IACG,gBAAgB,CAAC,KAAK,EAAE,MAAM;;;;;;;;;;IAMpC;;OAEG;IACG,eAAe,CACnB,OAAO,GAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,mBAAmB,CAAC,EAAE,OAAO,CAAC;KAC1B;;;;;;;;;;IAYR;;;OAGG;IACG,qBAAqB,CAAC,KAAK,EAAE,qCAAqC,EAAE;;;;;;;;;;IAI1E;;;OAGG;IACG,mBAAmB,CAAC,KAAK,EAAE,qCAAqC,EAAE;;;;;;;;;;IAIxE;;OAEG;IACG,iBAAiB,CACrB,KAAK,EAAE,6BAA6B,EAAE,EACtC,UAAU,GAAE,MAAM,GAAG,MAAM,GAAG,MAAe;IAK/C;;OAEG;IACG,UAAU,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;CAG5B;AAGD,cAAc,mBAAmB,CAAC"}
@@ -26,6 +26,93 @@ class ConnectionError extends TsarrError {
26
26
  }
27
27
  }
28
28
 
29
+ // src/core/fetch.ts
30
+ var DEFAULT_TIMEOUT = 30000;
31
+ var DEFAULT_MAX_RETRIES = 3;
32
+ var DEFAULT_INITIAL_DELAY = 1000;
33
+ var DEFAULT_MAX_DELAY = 1e4;
34
+ var RETRYABLE_STATUS_CODES = new Set([408, 429, 502, 503, 504]);
35
+ function isRetryable(error) {
36
+ if (error instanceof DOMException && error.name === "AbortError") {
37
+ return false;
38
+ }
39
+ if (error instanceof TypeError) {
40
+ return true;
41
+ }
42
+ return false;
43
+ }
44
+ function getRetryDelay(attempt, initialDelayMs, maxDelayMs) {
45
+ const delay = initialDelayMs * 2 ** attempt;
46
+ const jitter = delay * 0.2 * Math.random();
47
+ return Math.min(delay + jitter, maxDelayMs);
48
+ }
49
+ function createResilientFetch(options = {}) {
50
+ const timeout = options.timeout ?? DEFAULT_TIMEOUT;
51
+ const maxRetries = options.retry ? options.retry.maxRetries ?? DEFAULT_MAX_RETRIES : 0;
52
+ const initialDelayMs = options.retry?.initialDelayMs ?? DEFAULT_INITIAL_DELAY;
53
+ const maxDelayMs = options.retry?.maxDelayMs ?? DEFAULT_MAX_DELAY;
54
+ const resilientFetch = async (input, init) => {
55
+ let lastError;
56
+ const template = createRequestTemplate(input, init);
57
+ for (let attempt = 0;attempt <= maxRetries; attempt++) {
58
+ const controller = new AbortController;
59
+ const timeoutId = setTimeout(() => controller.abort(), timeout);
60
+ const callerSignal = init?.signal;
61
+ if (callerSignal?.aborted) {
62
+ clearTimeout(timeoutId);
63
+ throw callerSignal.reason ?? new DOMException("The operation was aborted.", "AbortError");
64
+ }
65
+ const onCallerAbort = () => controller.abort(callerSignal.reason);
66
+ callerSignal?.addEventListener("abort", onCallerAbort, { once: true });
67
+ try {
68
+ const response = await globalThis.fetch(new Request(template.clone(), { signal: controller.signal }));
69
+ clearTimeout(timeoutId);
70
+ callerSignal?.removeEventListener("abort", onCallerAbort);
71
+ if (RETRYABLE_STATUS_CODES.has(response.status) && attempt < maxRetries) {
72
+ lastError = new ConnectionError(`Request failed with status ${response.status}`);
73
+ const delay = getRetryDelay(attempt, initialDelayMs, maxDelayMs);
74
+ await new Promise((resolve) => setTimeout(resolve, delay));
75
+ continue;
76
+ }
77
+ return response;
78
+ } catch (error) {
79
+ clearTimeout(timeoutId);
80
+ callerSignal?.removeEventListener("abort", onCallerAbort);
81
+ if (callerSignal?.aborted) {
82
+ throw callerSignal.reason ?? new DOMException("The operation was aborted.", "AbortError");
83
+ }
84
+ if (error instanceof DOMException && error.name === "AbortError") {
85
+ lastError = new ConnectionError(`Request timed out after ${timeout}ms`);
86
+ if (attempt < maxRetries) {
87
+ const delay = getRetryDelay(attempt, initialDelayMs, maxDelayMs);
88
+ await new Promise((resolve) => setTimeout(resolve, delay));
89
+ continue;
90
+ }
91
+ throw lastError;
92
+ }
93
+ if (isRetryable(error) && attempt < maxRetries) {
94
+ lastError = error;
95
+ const delay = getRetryDelay(attempt, initialDelayMs, maxDelayMs);
96
+ await new Promise((resolve) => setTimeout(resolve, delay));
97
+ continue;
98
+ }
99
+ throw error;
100
+ }
101
+ }
102
+ throw lastError;
103
+ };
104
+ return Object.assign(resilientFetch, {
105
+ preconnect: globalThis.fetch.preconnect?.bind(globalThis.fetch)
106
+ });
107
+ }
108
+ function createRequestTemplate(input, init) {
109
+ const { signal: _signal, ...requestInit } = init ?? {};
110
+ if (input instanceof Request) {
111
+ return init ? new Request(input.clone(), requestInit) : input.clone();
112
+ }
113
+ return new Request(input, requestInit);
114
+ }
115
+
29
116
  // src/core/client.ts
30
117
  var DEFAULT_TIMEOUT_MS = 30000;
31
118
  function createServarrClient(config) {
@@ -40,6 +127,10 @@ function createServarrClient(config) {
40
127
  baseUrl: config.baseUrl.replace(/\/$/, "")
41
128
  };
42
129
  const timeoutMs = validatedConfig.timeout ?? DEFAULT_TIMEOUT_MS;
130
+ const resilientFetch = createResilientFetch({
131
+ timeout: timeoutMs,
132
+ retry: validatedConfig.retry
133
+ });
43
134
  return {
44
135
  config: validatedConfig,
45
136
  getHeaders: () => ({
@@ -48,22 +139,28 @@ function createServarrClient(config) {
48
139
  ...validatedConfig.headers
49
140
  }),
50
141
  getBaseUrl: () => validatedConfig.baseUrl,
51
- getTimeout: () => timeoutMs
142
+ getTimeout: () => timeoutMs,
143
+ getFetch: () => resilientFetch
52
144
  };
53
145
  }
54
146
 
55
147
  // src/clients/base.ts
56
148
  class ServarrBaseClient {
57
149
  clientConfig;
58
- constructor(config) {
150
+ rawClient;
151
+ constructor(config, rawClient) {
152
+ this.rawClient = rawClient;
59
153
  this.clientConfig = createServarrClient(config);
60
154
  this.configureRawClient();
61
155
  }
156
+ configureRawClient() {
157
+ this.rawClient.setConfig(this.getClientConfig());
158
+ }
62
159
  getClientConfig() {
63
160
  return {
64
161
  baseUrl: this.clientConfig.getBaseUrl(),
65
162
  headers: this.clientConfig.getHeaders(),
66
- signal: AbortSignal.timeout(this.clientConfig.getTimeout())
163
+ fetch: this.clientConfig.getFetch()
67
164
  };
68
165
  }
69
166
  async getSystemStatus() {
@@ -838,126 +935,115 @@ var createClient = (config = {}) => {
838
935
  return { opts: resolvedOpts, url };
839
936
  };
840
937
  const request = async (options) => {
841
- const { opts, url } = await beforeRequest(options);
842
- const requestInit = {
843
- redirect: "follow",
844
- ...opts,
845
- body: getValidRequestBody(opts)
846
- };
847
- let request2 = new Request(url, requestInit);
848
- for (const fn of interceptors.request.fns) {
849
- if (fn) {
850
- request2 = await fn(request2, opts);
851
- }
852
- }
853
- const _fetch = opts.fetch;
938
+ const throwOnError = options.throwOnError ?? _config.throwOnError;
939
+ const responseStyle = options.responseStyle ?? _config.responseStyle;
940
+ let request2;
854
941
  let response;
855
942
  try {
856
- response = await _fetch(request2);
857
- } catch (error2) {
858
- let finalError2 = error2;
859
- for (const fn of interceptors.error.fns) {
943
+ const { opts, url } = await beforeRequest(options);
944
+ const requestInit = {
945
+ redirect: "follow",
946
+ ...opts,
947
+ body: getValidRequestBody(opts)
948
+ };
949
+ request2 = new Request(url, requestInit);
950
+ for (const fn of interceptors.request.fns) {
860
951
  if (fn) {
861
- finalError2 = await fn(error2, undefined, request2, opts);
952
+ request2 = await fn(request2, opts);
862
953
  }
863
954
  }
864
- finalError2 = finalError2 || {};
865
- if (opts.throwOnError) {
866
- throw finalError2;
955
+ const _fetch = opts.fetch;
956
+ response = await _fetch(request2);
957
+ for (const fn of interceptors.response.fns) {
958
+ if (fn) {
959
+ response = await fn(response, request2, opts);
960
+ }
867
961
  }
868
- return opts.responseStyle === "data" ? undefined : {
869
- error: finalError2,
962
+ const result = {
870
963
  request: request2,
871
- response: undefined
964
+ response
872
965
  };
873
- }
874
- for (const fn of interceptors.response.fns) {
875
- if (fn) {
876
- response = await fn(response, request2, opts);
877
- }
878
- }
879
- const result = {
880
- request: request2,
881
- response
882
- };
883
- if (response.ok) {
884
- const parseAs = (opts.parseAs === "auto" ? getParseAs(response.headers.get("Content-Type")) : opts.parseAs) ?? "json";
885
- if (response.status === 204 || response.headers.get("Content-Length") === "0") {
886
- let emptyData;
966
+ if (response.ok) {
967
+ const parseAs = (opts.parseAs === "auto" ? getParseAs(response.headers.get("Content-Type")) : opts.parseAs) ?? "json";
968
+ if (response.status === 204 || response.headers.get("Content-Length") === "0") {
969
+ let emptyData;
970
+ switch (parseAs) {
971
+ case "arrayBuffer":
972
+ case "blob":
973
+ case "text":
974
+ emptyData = await response[parseAs]();
975
+ break;
976
+ case "formData":
977
+ emptyData = new FormData;
978
+ break;
979
+ case "stream":
980
+ emptyData = response.body;
981
+ break;
982
+ case "json":
983
+ default:
984
+ emptyData = {};
985
+ break;
986
+ }
987
+ return opts.responseStyle === "data" ? emptyData : {
988
+ data: emptyData,
989
+ ...result
990
+ };
991
+ }
992
+ let data;
887
993
  switch (parseAs) {
888
994
  case "arrayBuffer":
889
995
  case "blob":
996
+ case "formData":
890
997
  case "text":
891
- emptyData = await response[parseAs]();
998
+ data = await response[parseAs]();
892
999
  break;
893
- case "formData":
894
- emptyData = new FormData;
1000
+ case "json": {
1001
+ const text = await response.text();
1002
+ data = text ? JSON.parse(text) : {};
895
1003
  break;
1004
+ }
896
1005
  case "stream":
897
- emptyData = response.body;
898
- break;
899
- case "json":
900
- default:
901
- emptyData = {};
902
- break;
1006
+ return opts.responseStyle === "data" ? response.body : {
1007
+ data: response.body,
1008
+ ...result
1009
+ };
1010
+ }
1011
+ if (parseAs === "json") {
1012
+ if (opts.responseValidator) {
1013
+ await opts.responseValidator(data);
1014
+ }
1015
+ if (opts.responseTransformer) {
1016
+ data = await opts.responseTransformer(data);
1017
+ }
903
1018
  }
904
- return opts.responseStyle === "data" ? emptyData : {
905
- data: emptyData,
1019
+ return opts.responseStyle === "data" ? data : {
1020
+ data,
906
1021
  ...result
907
1022
  };
908
1023
  }
909
- let data;
910
- switch (parseAs) {
911
- case "arrayBuffer":
912
- case "blob":
913
- case "formData":
914
- case "text":
915
- data = await response[parseAs]();
916
- break;
917
- case "json": {
918
- const text = await response.text();
919
- data = text ? JSON.parse(text) : {};
920
- break;
1024
+ const textError = await response.text();
1025
+ let jsonError;
1026
+ try {
1027
+ jsonError = JSON.parse(textError);
1028
+ } catch {}
1029
+ throw jsonError ?? textError;
1030
+ } catch (error) {
1031
+ let finalError = error;
1032
+ for (const fn of interceptors.error.fns) {
1033
+ if (fn) {
1034
+ finalError = await fn(finalError, response, request2, options);
921
1035
  }
922
- case "stream":
923
- return opts.responseStyle === "data" ? response.body : {
924
- data: response.body,
925
- ...result
926
- };
927
1036
  }
928
- if (parseAs === "json") {
929
- if (opts.responseValidator) {
930
- await opts.responseValidator(data);
931
- }
932
- if (opts.responseTransformer) {
933
- data = await opts.responseTransformer(data);
934
- }
1037
+ finalError = finalError || {};
1038
+ if (throwOnError) {
1039
+ throw finalError;
935
1040
  }
936
- return opts.responseStyle === "data" ? data : {
937
- data,
938
- ...result
1041
+ return responseStyle === "data" ? undefined : {
1042
+ error: finalError,
1043
+ request: request2,
1044
+ response
939
1045
  };
940
1046
  }
941
- const textError = await response.text();
942
- let jsonError;
943
- try {
944
- jsonError = JSON.parse(textError);
945
- } catch {}
946
- const error = jsonError ?? textError;
947
- let finalError = error;
948
- for (const fn of interceptors.error.fns) {
949
- if (fn) {
950
- finalError = await fn(error, response, request2, opts);
951
- }
952
- }
953
- finalError = finalError || {};
954
- if (opts.throwOnError) {
955
- throw finalError;
956
- }
957
- return opts.responseStyle === "data" ? undefined : {
958
- error: finalError,
959
- ...result
960
- };
961
1047
  };
962
1048
  const makeMethodFn = (method) => (options) => request({ ...options, method });
963
1049
  const makeSseFn = (method) => async (options) => {
@@ -965,7 +1051,6 @@ var createClient = (config = {}) => {
965
1051
  return createSseClient({
966
1052
  ...opts,
967
1053
  body: opts.body,
968
- headers: opts.headers,
969
1054
  method,
970
1055
  onRequest: async (url2, init) => {
971
1056
  let request2 = new Request(url2, init);
@@ -2338,8 +2423,8 @@ class SonarrClient extends ServarrBaseClient {
2338
2423
  getUiConfigById: getApiV3ConfigUiById,
2339
2424
  updateUiConfig: putApiV3ConfigUiById
2340
2425
  };
2341
- configureRawClient() {
2342
- client.setConfig(this.getClientConfig());
2426
+ constructor(config) {
2427
+ super(config, client);
2343
2428
  }
2344
2429
  async getSystemStatus() {
2345
2430
  return client.get({
@@ -2706,21 +2791,27 @@ class SonarrClient extends ServarrBaseClient {
2706
2791
  async parseEpisodeInfo(title) {
2707
2792
  return getApiV3Parse({ query: { title } });
2708
2793
  }
2709
- async getManualImport(folder, downloadId, seriesId, filterExistingFiles) {
2794
+ async getManualImport(options = {}) {
2710
2795
  const query = {};
2711
- if (folder)
2712
- query.folder = folder;
2713
- if (downloadId)
2714
- query.downloadId = downloadId;
2715
- if (seriesId !== undefined)
2716
- query.seriesId = seriesId;
2717
- if (filterExistingFiles !== undefined)
2718
- query.filterExistingFiles = filterExistingFiles;
2796
+ if (options.folder)
2797
+ query.folder = options.folder;
2798
+ if (options.downloadId)
2799
+ query.downloadId = options.downloadId;
2800
+ if (options.seriesId !== undefined)
2801
+ query.seriesId = options.seriesId;
2802
+ if (options.filterExistingFiles !== undefined)
2803
+ query.filterExistingFiles = options.filterExistingFiles;
2719
2804
  return getApiV3Manualimport(Object.keys(query).length > 0 ? { query } : {});
2720
2805
  }
2721
- async processManualImport(files) {
2806
+ async reprocessManualImport(files) {
2722
2807
  return postApiV3Manualimport({ body: files });
2723
2808
  }
2809
+ async processManualImport(files) {
2810
+ return this.reprocessManualImport(files);
2811
+ }
2812
+ async applyManualImport(files, importMode = "auto") {
2813
+ return this.runCommand({ name: "ManualImport", files, importMode });
2814
+ }
2724
2815
  async getCommand(id) {
2725
2816
  return getApiV3CommandById({ path: { id } });
2726
2817
  }
@@ -2728,3 +2819,6 @@ class SonarrClient extends ServarrBaseClient {
2728
2819
  export {
2729
2820
  SonarrClient
2730
2821
  };
2822
+
2823
+ //# debugId=551B818510C05A4B64756E2164756E21
2824
+ //# sourceMappingURL=sonarr.js.map