feedscout 1.1.0 → 1.2.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 (80) hide show
  1. package/README.md +8 -6
  2. package/dist/blogrolls/index.cjs +8 -3
  3. package/dist/blogrolls/index.d.cts +1 -1
  4. package/dist/blogrolls/index.d.ts +1 -1
  5. package/dist/blogrolls/index.js +8 -3
  6. package/dist/common/discover/utils.cjs +14 -0
  7. package/dist/common/discover/utils.js +14 -1
  8. package/dist/common/types.d.cts +4 -4
  9. package/dist/common/types.d.ts +4 -4
  10. package/dist/common/uris/headers/index.cjs +6 -3
  11. package/dist/common/uris/headers/index.js +6 -3
  12. package/dist/common/utils.cjs +1 -0
  13. package/dist/common/utils.d.cts +9 -0
  14. package/dist/common/utils.d.ts +9 -0
  15. package/dist/common/utils.js +1 -1
  16. package/dist/feeds/defaults.cjs +18 -0
  17. package/dist/feeds/defaults.js +18 -0
  18. package/dist/feeds/index.cjs +9 -3
  19. package/dist/feeds/index.d.cts +1 -1
  20. package/dist/feeds/index.d.ts +1 -1
  21. package/dist/feeds/index.js +9 -3
  22. package/dist/feeds/platform/handlers/behance.cjs +45 -0
  23. package/dist/feeds/platform/handlers/behance.js +45 -0
  24. package/dist/feeds/platform/handlers/blogspot.cjs +13 -4
  25. package/dist/feeds/platform/handlers/blogspot.js +13 -5
  26. package/dist/feeds/platform/handlers/dailymotion.cjs +66 -0
  27. package/dist/feeds/platform/handlers/dailymotion.js +66 -0
  28. package/dist/feeds/platform/handlers/deviantart.cjs +50 -0
  29. package/dist/feeds/platform/handlers/deviantart.js +50 -0
  30. package/dist/feeds/platform/handlers/devto.cjs +44 -0
  31. package/dist/feeds/platform/handlers/devto.js +44 -0
  32. package/dist/feeds/platform/handlers/github.cjs +9 -3
  33. package/dist/feeds/platform/handlers/github.js +9 -3
  34. package/dist/feeds/platform/handlers/githubGist.cjs +42 -0
  35. package/dist/feeds/platform/handlers/githubGist.js +42 -0
  36. package/dist/feeds/platform/handlers/gitlab.cjs +36 -2
  37. package/dist/feeds/platform/handlers/gitlab.js +37 -3
  38. package/dist/feeds/platform/handlers/kickstarter.cjs +4 -7
  39. package/dist/feeds/platform/handlers/kickstarter.js +4 -7
  40. package/dist/feeds/platform/handlers/lobsters.cjs +34 -0
  41. package/dist/feeds/platform/handlers/lobsters.js +34 -0
  42. package/dist/feeds/platform/handlers/medium.cjs +47 -0
  43. package/dist/feeds/platform/handlers/medium.js +47 -0
  44. package/dist/feeds/platform/handlers/pinterest.cjs +48 -0
  45. package/dist/feeds/platform/handlers/pinterest.js +48 -0
  46. package/dist/feeds/platform/handlers/producthunt.cjs +22 -0
  47. package/dist/feeds/platform/handlers/producthunt.js +22 -0
  48. package/dist/feeds/platform/handlers/reddit.cjs +3 -0
  49. package/dist/feeds/platform/handlers/reddit.js +3 -0
  50. package/dist/feeds/platform/handlers/soundcloud.cjs +1 -1
  51. package/dist/feeds/platform/handlers/soundcloud.js +2 -2
  52. package/dist/feeds/platform/handlers/tumblr.cjs +4 -1
  53. package/dist/feeds/platform/handlers/tumblr.js +4 -1
  54. package/dist/feeds/platform/handlers/wordpress.cjs +17 -6
  55. package/dist/feeds/platform/handlers/wordpress.js +17 -6
  56. package/dist/feeds/platform/handlers/youtube.cjs +16 -4
  57. package/dist/feeds/platform/handlers/youtube.js +16 -4
  58. package/dist/hubs/discover/index.cjs +7 -6
  59. package/dist/hubs/discover/index.js +5 -4
  60. package/dist/hubs/discover/types.d.cts +2 -1
  61. package/dist/hubs/discover/types.d.ts +2 -1
  62. package/dist/hubs/headers/index.cjs +3 -3
  63. package/dist/hubs/headers/index.js +3 -3
  64. package/dist/hubs/html/index.cjs +3 -3
  65. package/dist/hubs/html/index.js +3 -3
  66. package/dist/index.d.cts +2 -2
  67. package/dist/index.d.ts +2 -2
  68. package/dist/utils.cjs +8 -0
  69. package/dist/utils.d.cts +2 -0
  70. package/dist/utils.d.ts +2 -0
  71. package/dist/utils.js +3 -0
  72. package/package.json +18 -19
  73. package/dist/adapters.cjs +0 -6
  74. package/dist/adapters.d.cts +0 -2
  75. package/dist/adapters.d.ts +0 -2
  76. package/dist/adapters.js +0 -3
  77. package/dist/common/discover/adapters.cjs +0 -76
  78. package/dist/common/discover/adapters.d.cts +0 -10
  79. package/dist/common/discover/adapters.d.ts +0 -10
  80. package/dist/common/discover/adapters.js +0 -72
package/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- import { DiscoverExtractFn, DiscoverFetchFn, DiscoverFetchFnOptions, DiscoverFetchFnResponse, DiscoverInput, DiscoverInputObject, DiscoverMethodsConfig, DiscoverNormalizeUrlFn, DiscoverOptions, DiscoverProgress, DiscoverProgressFn, DiscoverResult } from "./common/types.cjs";
1
+ import { DiscoverExtractFn, DiscoverFetchFn, DiscoverFetchFnOptions, DiscoverFetchFnResponse, DiscoverInput, DiscoverInputObject, DiscoverMethodsConfig, DiscoverNormalizeUrlFn, DiscoverOnProgressFn, DiscoverOptions, DiscoverProgress, DiscoverResult } from "./common/types.cjs";
2
2
  import { discoverBlogrolls } from "./blogrolls/index.cjs";
3
3
  import { discoverFeeds } from "./feeds/index.cjs";
4
4
  import { discoverHubs } from "./hubs/discover/index.cjs";
5
- export { type DiscoverExtractFn, type DiscoverFetchFn, type DiscoverFetchFnOptions, type DiscoverFetchFnResponse, type DiscoverInput, type DiscoverInputObject, type DiscoverMethodsConfig, type DiscoverNormalizeUrlFn, type DiscoverOptions, type DiscoverProgress, type DiscoverProgressFn, type DiscoverResult, discoverBlogrolls, discoverFeeds, discoverHubs };
5
+ export { type DiscoverExtractFn, type DiscoverFetchFn, type DiscoverFetchFnOptions, type DiscoverFetchFnResponse, type DiscoverInput, type DiscoverInputObject, type DiscoverMethodsConfig, type DiscoverNormalizeUrlFn, type DiscoverOnProgressFn, type DiscoverOptions, type DiscoverProgress, type DiscoverResult, discoverBlogrolls, discoverFeeds, discoverHubs };
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { DiscoverExtractFn, DiscoverFetchFn, DiscoverFetchFnOptions, DiscoverFetchFnResponse, DiscoverInput, DiscoverInputObject, DiscoverMethodsConfig, DiscoverNormalizeUrlFn, DiscoverOptions, DiscoverProgress, DiscoverProgressFn, DiscoverResult } from "./common/types.js";
1
+ import { DiscoverExtractFn, DiscoverFetchFn, DiscoverFetchFnOptions, DiscoverFetchFnResponse, DiscoverInput, DiscoverInputObject, DiscoverMethodsConfig, DiscoverNormalizeUrlFn, DiscoverOnProgressFn, DiscoverOptions, DiscoverProgress, DiscoverResult } from "./common/types.js";
2
2
  import { discoverBlogrolls } from "./blogrolls/index.js";
3
3
  import { discoverFeeds } from "./feeds/index.js";
4
4
  import { discoverHubs } from "./hubs/discover/index.js";
5
- export { type DiscoverExtractFn, type DiscoverFetchFn, type DiscoverFetchFnOptions, type DiscoverFetchFnResponse, type DiscoverInput, type DiscoverInputObject, type DiscoverMethodsConfig, type DiscoverNormalizeUrlFn, type DiscoverOptions, type DiscoverProgress, type DiscoverProgressFn, type DiscoverResult, discoverBlogrolls, discoverFeeds, discoverHubs };
5
+ export { type DiscoverExtractFn, type DiscoverFetchFn, type DiscoverFetchFnOptions, type DiscoverFetchFnResponse, type DiscoverInput, type DiscoverInputObject, type DiscoverMethodsConfig, type DiscoverNormalizeUrlFn, type DiscoverOnProgressFn, type DiscoverOptions, type DiscoverProgress, type DiscoverResult, discoverBlogrolls, discoverFeeds, discoverHubs };
package/dist/utils.cjs ADDED
@@ -0,0 +1,8 @@
1
+ const require_utils = require('./common/utils.cjs');
2
+
3
+ exports.anyWordMatchesAnyOf = require_utils.anyWordMatchesAnyOf;
4
+ exports.endsWithAnyOf = require_utils.endsWithAnyOf;
5
+ exports.includesAnyOf = require_utils.includesAnyOf;
6
+ exports.isAnyOf = require_utils.isAnyOf;
7
+ exports.isHostOf = require_utils.isHostOf;
8
+ exports.isSubdomainOf = require_utils.isSubdomainOf;
@@ -0,0 +1,2 @@
1
+ import { anyWordMatchesAnyOf, endsWithAnyOf, includesAnyOf, isAnyOf, isHostOf, isSubdomainOf } from "./common/utils.cjs";
2
+ export { anyWordMatchesAnyOf, endsWithAnyOf, includesAnyOf, isAnyOf, isHostOf, isSubdomainOf };
@@ -0,0 +1,2 @@
1
+ import { anyWordMatchesAnyOf, endsWithAnyOf, includesAnyOf, isAnyOf, isHostOf, isSubdomainOf } from "./common/utils.js";
2
+ export { anyWordMatchesAnyOf, endsWithAnyOf, includesAnyOf, isAnyOf, isHostOf, isSubdomainOf };
package/dist/utils.js ADDED
@@ -0,0 +1,3 @@
1
+ import { anyWordMatchesAnyOf, endsWithAnyOf, includesAnyOf, isAnyOf, isHostOf, isSubdomainOf } from "./common/utils.js";
2
+
3
+ export { anyWordMatchesAnyOf, endsWithAnyOf, includesAnyOf, isAnyOf, isHostOf, isSubdomainOf };
package/package.json CHANGED
@@ -65,16 +65,6 @@
65
65
  "default": "./dist/hubs.cjs"
66
66
  }
67
67
  },
68
- "./adapters": {
69
- "import": {
70
- "types": "./dist/adapters.d.ts",
71
- "default": "./dist/adapters.js"
72
- },
73
- "require": {
74
- "types": "./dist/adapters.d.cts",
75
- "default": "./dist/adapters.cjs"
76
- }
77
- },
78
68
  "./methods": {
79
69
  "import": {
80
70
  "types": "./dist/methods.d.ts",
@@ -85,6 +75,16 @@
85
75
  "default": "./dist/methods.cjs"
86
76
  }
87
77
  },
78
+ "./utils": {
79
+ "import": {
80
+ "types": "./dist/utils.d.ts",
81
+ "default": "./dist/utils.js"
82
+ },
83
+ "require": {
84
+ "types": "./dist/utils.d.cts",
85
+ "default": "./dist/utils.cjs"
86
+ }
87
+ },
88
88
  "./package.json": "./package.json"
89
89
  },
90
90
  "files": [
@@ -92,20 +92,19 @@
92
92
  ],
93
93
  "scripts": {
94
94
  "prepare": "lefthook install",
95
- "build": "tsdown src/exports/index.ts src/exports/feeds.ts src/exports/blogrolls.ts src/exports/hubs.ts src/exports/adapters.ts src/exports/methods.ts --format cjs,esm --dts --clean --unbundle --no-fixed-extension",
95
+ "build": "tsdown src/exports/index.ts src/exports/feeds.ts src/exports/blogrolls.ts src/exports/hubs.ts src/exports/methods.ts src/exports/utils.ts --format cjs,esm --dts --clean --unbundle --no-fixed-extension",
96
96
  "docs:dev": "vitepress dev docs",
97
- "docs:build": "vitepress build docs",
98
- "docs:preview": "vitepress preview docs"
97
+ "docs:build": "vitepress build docs"
99
98
  },
100
99
  "dependencies": {
101
- "feedsmith": "^2.7.0",
102
- "htmlparser2": "^10.0.0"
100
+ "feedsmith": "^2.9.0",
101
+ "htmlparser2": "^10.1.0"
103
102
  },
104
103
  "devDependencies": {
105
- "@types/bun": "^1.3.4",
106
- "kvalita": "1.8.0",
107
- "tsdown": "^0.17.2",
104
+ "@types/bun": "^1.3.6",
105
+ "kvalita": "1.9.0",
106
+ "tsdown": "^0.20.1",
108
107
  "vitepress": "^1.6.4"
109
108
  },
110
- "version": "1.1.0"
109
+ "version": "1.2.0"
111
110
  }
package/dist/adapters.cjs DELETED
@@ -1,6 +0,0 @@
1
- const require_adapters = require('./common/discover/adapters.cjs');
2
-
3
- exports.createAxiosAdapter = require_adapters.createAxiosAdapter;
4
- exports.createGotAdapter = require_adapters.createGotAdapter;
5
- exports.createKyAdapter = require_adapters.createKyAdapter;
6
- exports.createNativeFetchAdapter = require_adapters.createNativeFetchAdapter;
@@ -1,2 +0,0 @@
1
- import { createAxiosAdapter, createGotAdapter, createKyAdapter, createNativeFetchAdapter } from "./common/discover/adapters.cjs";
2
- export { createAxiosAdapter, createGotAdapter, createKyAdapter, createNativeFetchAdapter };
@@ -1,2 +0,0 @@
1
- import { createAxiosAdapter, createGotAdapter, createKyAdapter, createNativeFetchAdapter } from "./common/discover/adapters.js";
2
- export { createAxiosAdapter, createGotAdapter, createKyAdapter, createNativeFetchAdapter };
package/dist/adapters.js DELETED
@@ -1,3 +0,0 @@
1
- import { createAxiosAdapter, createGotAdapter, createKyAdapter, createNativeFetchAdapter } from "./common/discover/adapters.js";
2
-
3
- export { createAxiosAdapter, createGotAdapter, createKyAdapter, createNativeFetchAdapter };
@@ -1,76 +0,0 @@
1
-
2
- //#region src/common/discover/adapters.ts
3
- const createNativeFetchAdapter = (baseOptions) => {
4
- return async (url, options) => {
5
- const response = await fetch(url, {
6
- ...baseOptions,
7
- method: options?.method || "GET",
8
- headers: {
9
- ...baseOptions?.headers,
10
- ...options?.headers
11
- }
12
- });
13
- return {
14
- headers: response.headers,
15
- body: await response.text(),
16
- url: response.url,
17
- status: response.status,
18
- statusText: response.statusText
19
- };
20
- };
21
- };
22
- const createGotAdapter = (gotInstance) => {
23
- return async (url, options) => {
24
- const response = await gotInstance(url, {
25
- method: options?.method || "GET",
26
- headers: options?.headers,
27
- throwHttpErrors: false
28
- });
29
- return {
30
- headers: new Headers(response.headers),
31
- body: response.body,
32
- url: response.url,
33
- status: response.statusCode,
34
- statusText: response.statusMessage
35
- };
36
- };
37
- };
38
- const createAxiosAdapter = (axiosInstance) => {
39
- return async (url, options) => {
40
- const response = await axiosInstance({
41
- url,
42
- method: options?.method || "GET",
43
- headers: options?.headers,
44
- validateStatus: () => true
45
- });
46
- return {
47
- headers: new Headers(response.headers),
48
- body: response.data,
49
- url: response.request?.res?.responseUrl || url,
50
- status: response.status,
51
- statusText: response.statusText
52
- };
53
- };
54
- };
55
- const createKyAdapter = (kyInstance) => {
56
- return async (url, options) => {
57
- const response = await kyInstance(url, {
58
- method: options?.method || "GET",
59
- headers: options?.headers,
60
- throwHttpErrors: false
61
- });
62
- return {
63
- headers: response.headers,
64
- body: await response.text(),
65
- url: response.url,
66
- status: response.status,
67
- statusText: response.statusText
68
- };
69
- };
70
- };
71
-
72
- //#endregion
73
- exports.createAxiosAdapter = createAxiosAdapter;
74
- exports.createGotAdapter = createGotAdapter;
75
- exports.createKyAdapter = createKyAdapter;
76
- exports.createNativeFetchAdapter = createNativeFetchAdapter;
@@ -1,10 +0,0 @@
1
- import { DiscoverFetchFn } from "../types.cjs";
2
-
3
- //#region src/common/discover/adapters.d.ts
4
- type AnyInstance = any;
5
- declare const createNativeFetchAdapter: (baseOptions?: RequestInit) => DiscoverFetchFn;
6
- declare const createGotAdapter: (gotInstance: AnyInstance) => DiscoverFetchFn;
7
- declare const createAxiosAdapter: (axiosInstance: AnyInstance) => DiscoverFetchFn;
8
- declare const createKyAdapter: (kyInstance: AnyInstance) => DiscoverFetchFn;
9
- //#endregion
10
- export { createAxiosAdapter, createGotAdapter, createKyAdapter, createNativeFetchAdapter };
@@ -1,10 +0,0 @@
1
- import { DiscoverFetchFn } from "../types.js";
2
-
3
- //#region src/common/discover/adapters.d.ts
4
- type AnyInstance = any;
5
- declare const createNativeFetchAdapter: (baseOptions?: RequestInit) => DiscoverFetchFn;
6
- declare const createGotAdapter: (gotInstance: AnyInstance) => DiscoverFetchFn;
7
- declare const createAxiosAdapter: (axiosInstance: AnyInstance) => DiscoverFetchFn;
8
- declare const createKyAdapter: (kyInstance: AnyInstance) => DiscoverFetchFn;
9
- //#endregion
10
- export { createAxiosAdapter, createGotAdapter, createKyAdapter, createNativeFetchAdapter };
@@ -1,72 +0,0 @@
1
- //#region src/common/discover/adapters.ts
2
- const createNativeFetchAdapter = (baseOptions) => {
3
- return async (url, options) => {
4
- const response = await fetch(url, {
5
- ...baseOptions,
6
- method: options?.method || "GET",
7
- headers: {
8
- ...baseOptions?.headers,
9
- ...options?.headers
10
- }
11
- });
12
- return {
13
- headers: response.headers,
14
- body: await response.text(),
15
- url: response.url,
16
- status: response.status,
17
- statusText: response.statusText
18
- };
19
- };
20
- };
21
- const createGotAdapter = (gotInstance) => {
22
- return async (url, options) => {
23
- const response = await gotInstance(url, {
24
- method: options?.method || "GET",
25
- headers: options?.headers,
26
- throwHttpErrors: false
27
- });
28
- return {
29
- headers: new Headers(response.headers),
30
- body: response.body,
31
- url: response.url,
32
- status: response.statusCode,
33
- statusText: response.statusMessage
34
- };
35
- };
36
- };
37
- const createAxiosAdapter = (axiosInstance) => {
38
- return async (url, options) => {
39
- const response = await axiosInstance({
40
- url,
41
- method: options?.method || "GET",
42
- headers: options?.headers,
43
- validateStatus: () => true
44
- });
45
- return {
46
- headers: new Headers(response.headers),
47
- body: response.data,
48
- url: response.request?.res?.responseUrl || url,
49
- status: response.status,
50
- statusText: response.statusText
51
- };
52
- };
53
- };
54
- const createKyAdapter = (kyInstance) => {
55
- return async (url, options) => {
56
- const response = await kyInstance(url, {
57
- method: options?.method || "GET",
58
- headers: options?.headers,
59
- throwHttpErrors: false
60
- });
61
- return {
62
- headers: response.headers,
63
- body: await response.text(),
64
- url: response.url,
65
- status: response.status,
66
- statusText: response.statusText
67
- };
68
- };
69
- };
70
-
71
- //#endregion
72
- export { createAxiosAdapter, createGotAdapter, createKyAdapter, createNativeFetchAdapter };