@segha/watchmode 0.0.1

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 (46) hide show
  1. package/IdMapping.ts +15 -0
  2. package/README.md +178 -0
  3. package/index.ts +4 -0
  4. package/json-schemas/API/APIEndpoints.json +23 -0
  5. package/json-schemas/API/BaseUrl.json +6 -0
  6. package/json-schemas/API/ConfigurationSchema.json +13 -0
  7. package/json-schemas/API/DatasetsBaseUrl.json +6 -0
  8. package/json-schemas/API/DatasetsEndpoints.json +10 -0
  9. package/json-schemas/API/EndpointsSchema.json +50 -0
  10. package/json-schemas/API/IDMappingDatasetEndpoint.json +6 -0
  11. package/json-schemas/API/ListSourcesEndpoint.json +6 -0
  12. package/json-schemas/API/MethodsSchema.json +528 -0
  13. package/json-schemas/API/SourcesEndpoints.json +10 -0
  14. package/json-schemas/API/SpecSchema.json +554 -0
  15. package/json-schemas/API/TitleSourcesEndpoint.json +6 -0
  16. package/json-schemas/API/TitlesEndpoints.json +10 -0
  17. package/json-schemas/API/Version.json +6 -0
  18. package/json-schemas/API/index.json +1241 -0
  19. package/json-schemas/FreeServiceType.json +6 -0
  20. package/json-schemas/IdMappingEntrySchema.json +38 -0
  21. package/json-schemas/IdMappingSchema.json +41 -0
  22. package/json-schemas/PurchaseServiceType.json +6 -0
  23. package/json-schemas/Sources/FreeServiceType.json +6 -0
  24. package/json-schemas/Sources/PurchaseServiceType.json +6 -0
  25. package/json-schemas/Sources/StreamingSourceSchema.json +129 -0
  26. package/json-schemas/Sources/StreamingSourceTypeSchema.json +26 -0
  27. package/json-schemas/Sources/StreamingSourcesParametersSchema.json +18 -0
  28. package/json-schemas/Sources/StreamingSourcesSchema.json +132 -0
  29. package/json-schemas/Sources/SubscriptionServiceType.json +6 -0
  30. package/json-schemas/Sources/TVEServiceType.json +6 -0
  31. package/json-schemas/Sources/index.json +336 -0
  32. package/json-schemas/StreamingSourceSchema.json +129 -0
  33. package/json-schemas/StreamingSourceTypeSchema.json +26 -0
  34. package/json-schemas/StreamingSourcesParametersSchema.json +18 -0
  35. package/json-schemas/StreamingSourcesSchema.json +132 -0
  36. package/json-schemas/SubscriptionServiceType.json +6 -0
  37. package/json-schemas/TVEServiceType.json +6 -0
  38. package/json-schemas/TitleStreamingSourceSchema.json +169 -0
  39. package/json-schemas/TitleStreamingSourcesParametersSchema.json +13 -0
  40. package/json-schemas/TitleStreamingSourcesSchema.json +172 -0
  41. package/json-schemas/Titles/TitleStreamingSourceSchema.json +169 -0
  42. package/json-schemas/Titles/TitleStreamingSourcesParametersSchema.json +13 -0
  43. package/json-schemas/Titles/TitleStreamingSourcesSchema.json +172 -0
  44. package/json-schemas/Titles/index.json +361 -0
  45. package/json-schemas/index.json +769 -0
  46. package/package.json +51 -0
@@ -0,0 +1,6 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "string",
4
+ "const": "free",
5
+ "description": "Free ad-supported services (Tubi, Pluto TV, etc.)"
6
+ }
@@ -0,0 +1,38 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "Watchmode ID": {
6
+ "type": "string",
7
+ "description": "Watchmode ID"
8
+ },
9
+ "IMDB ID": {
10
+ "type": "string",
11
+ "description": "IMDB ID"
12
+ },
13
+ "TMDB ID": {
14
+ "type": "string",
15
+ "description": "TMDB ID"
16
+ },
17
+ "TMDB Type": {
18
+ "type": "string",
19
+ "description": "TMDB Type"
20
+ },
21
+ "Title": {
22
+ "type": "string",
23
+ "description": "Title"
24
+ },
25
+ "Year": {
26
+ "type": "string",
27
+ "description": "Year"
28
+ }
29
+ },
30
+ "required": [
31
+ "Watchmode ID",
32
+ "IMDB ID",
33
+ "TMDB ID",
34
+ "TMDB Type",
35
+ "Title",
36
+ "Year"
37
+ ]
38
+ }
@@ -0,0 +1,41 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "array",
4
+ "items": {
5
+ "type": "object",
6
+ "properties": {
7
+ "Watchmode ID": {
8
+ "type": "string",
9
+ "description": "Watchmode ID"
10
+ },
11
+ "IMDB ID": {
12
+ "type": "string",
13
+ "description": "IMDB ID"
14
+ },
15
+ "TMDB ID": {
16
+ "type": "string",
17
+ "description": "TMDB ID"
18
+ },
19
+ "TMDB Type": {
20
+ "type": "string",
21
+ "description": "TMDB Type"
22
+ },
23
+ "Title": {
24
+ "type": "string",
25
+ "description": "Title"
26
+ },
27
+ "Year": {
28
+ "type": "string",
29
+ "description": "Year"
30
+ }
31
+ },
32
+ "required": [
33
+ "Watchmode ID",
34
+ "IMDB ID",
35
+ "TMDB ID",
36
+ "TMDB Type",
37
+ "Title",
38
+ "Year"
39
+ ]
40
+ }
41
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "string",
4
+ "const": "purchase",
5
+ "description": "Rental/purchase services (iTunes, Vudu, etc.)"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "string",
4
+ "const": "free",
5
+ "description": "Free ad-supported services (Tubi, Pluto TV, etc.)"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "string",
4
+ "const": "purchase",
5
+ "description": "Rental/purchase services (iTunes, Vudu, etc.)"
6
+ }
@@ -0,0 +1,129 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "id": {
6
+ "type": "number",
7
+ "description": "ID"
8
+ },
9
+ "name": {
10
+ "type": "string",
11
+ "description": "Name"
12
+ },
13
+ "type": {
14
+ "anyOf": [
15
+ {
16
+ "type": "string",
17
+ "const": "sub",
18
+ "description": "Subscription services (Netflix, Hulu, etc.)"
19
+ },
20
+ {
21
+ "type": "string",
22
+ "const": "purchase",
23
+ "description": "Rental/purchase services (iTunes, Vudu, etc.)"
24
+ },
25
+ {
26
+ "type": "string",
27
+ "const": "free",
28
+ "description": "Free ad-supported services (Tubi, Pluto TV, etc.)"
29
+ },
30
+ {
31
+ "type": "string",
32
+ "const": "tve",
33
+ "description": "TV Channel App (cable login required)"
34
+ }
35
+ ],
36
+ "description": "Streaming source type"
37
+ },
38
+ "logo_100px": {
39
+ "type": "string",
40
+ "description": "Logo 100px"
41
+ },
42
+ "ios_appstore_url": {
43
+ "anyOf": [
44
+ {
45
+ "type": "string"
46
+ },
47
+ {
48
+ "type": "null"
49
+ }
50
+ ],
51
+ "description": "iOS App Store URL"
52
+ },
53
+ "android_playstore_url": {
54
+ "anyOf": [
55
+ {
56
+ "type": "string"
57
+ },
58
+ {
59
+ "type": "null"
60
+ }
61
+ ],
62
+ "description": "Android Play Store URL"
63
+ },
64
+ "android_tv_url": {
65
+ "anyOf": [
66
+ {
67
+ "type": "string"
68
+ },
69
+ {
70
+ "type": "null"
71
+ }
72
+ ],
73
+ "description": "Android TV URL"
74
+ },
75
+ "fire_tv_url": {
76
+ "anyOf": [
77
+ {
78
+ "type": "string"
79
+ },
80
+ {
81
+ "type": "null"
82
+ }
83
+ ],
84
+ "description": "Fire TV URL"
85
+ },
86
+ "roku_url": {
87
+ "anyOf": [
88
+ {
89
+ "type": "string"
90
+ },
91
+ {
92
+ "type": "null"
93
+ }
94
+ ],
95
+ "description": "Roku URL"
96
+ },
97
+ "tvos_url": {
98
+ "anyOf": [
99
+ {
100
+ "type": "string"
101
+ },
102
+ {
103
+ "type": "null"
104
+ }
105
+ ],
106
+ "description": "tvOS URL"
107
+ },
108
+ "regions": {
109
+ "type": "array",
110
+ "items": {
111
+ "type": "string"
112
+ },
113
+ "description": "Regions"
114
+ }
115
+ },
116
+ "required": [
117
+ "id",
118
+ "name",
119
+ "type",
120
+ "logo_100px",
121
+ "ios_appstore_url",
122
+ "android_playstore_url",
123
+ "android_tv_url",
124
+ "fire_tv_url",
125
+ "roku_url",
126
+ "tvos_url",
127
+ "regions"
128
+ ]
129
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "anyOf": [
4
+ {
5
+ "type": "string",
6
+ "const": "sub",
7
+ "description": "Subscription services (Netflix, Hulu, etc.)"
8
+ },
9
+ {
10
+ "type": "string",
11
+ "const": "purchase",
12
+ "description": "Rental/purchase services (iTunes, Vudu, etc.)"
13
+ },
14
+ {
15
+ "type": "string",
16
+ "const": "free",
17
+ "description": "Free ad-supported services (Tubi, Pluto TV, etc.)"
18
+ },
19
+ {
20
+ "type": "string",
21
+ "const": "tve",
22
+ "description": "TV Channel App (cable login required)"
23
+ }
24
+ ],
25
+ "description": "Streaming source type"
26
+ }
@@ -0,0 +1,18 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "regions": {
6
+ "type": "string",
7
+ "description": "Filter sources by region. Pass one or multiple 2-letter country codes comma-separated (e.g., US,GB,CA)."
8
+ },
9
+ "types": {
10
+ "type": "string",
11
+ "description": "Filter sources by type. Pass one or multiple types comma-separated."
12
+ }
13
+ },
14
+ "required": [
15
+ "regions",
16
+ "types"
17
+ ]
18
+ }
@@ -0,0 +1,132 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "array",
4
+ "items": {
5
+ "type": "object",
6
+ "properties": {
7
+ "id": {
8
+ "type": "number",
9
+ "description": "ID"
10
+ },
11
+ "name": {
12
+ "type": "string",
13
+ "description": "Name"
14
+ },
15
+ "type": {
16
+ "anyOf": [
17
+ {
18
+ "type": "string",
19
+ "const": "sub",
20
+ "description": "Subscription services (Netflix, Hulu, etc.)"
21
+ },
22
+ {
23
+ "type": "string",
24
+ "const": "purchase",
25
+ "description": "Rental/purchase services (iTunes, Vudu, etc.)"
26
+ },
27
+ {
28
+ "type": "string",
29
+ "const": "free",
30
+ "description": "Free ad-supported services (Tubi, Pluto TV, etc.)"
31
+ },
32
+ {
33
+ "type": "string",
34
+ "const": "tve",
35
+ "description": "TV Channel App (cable login required)"
36
+ }
37
+ ],
38
+ "description": "Streaming source type"
39
+ },
40
+ "logo_100px": {
41
+ "type": "string",
42
+ "description": "Logo 100px"
43
+ },
44
+ "ios_appstore_url": {
45
+ "anyOf": [
46
+ {
47
+ "type": "string"
48
+ },
49
+ {
50
+ "type": "null"
51
+ }
52
+ ],
53
+ "description": "iOS App Store URL"
54
+ },
55
+ "android_playstore_url": {
56
+ "anyOf": [
57
+ {
58
+ "type": "string"
59
+ },
60
+ {
61
+ "type": "null"
62
+ }
63
+ ],
64
+ "description": "Android Play Store URL"
65
+ },
66
+ "android_tv_url": {
67
+ "anyOf": [
68
+ {
69
+ "type": "string"
70
+ },
71
+ {
72
+ "type": "null"
73
+ }
74
+ ],
75
+ "description": "Android TV URL"
76
+ },
77
+ "fire_tv_url": {
78
+ "anyOf": [
79
+ {
80
+ "type": "string"
81
+ },
82
+ {
83
+ "type": "null"
84
+ }
85
+ ],
86
+ "description": "Fire TV URL"
87
+ },
88
+ "roku_url": {
89
+ "anyOf": [
90
+ {
91
+ "type": "string"
92
+ },
93
+ {
94
+ "type": "null"
95
+ }
96
+ ],
97
+ "description": "Roku URL"
98
+ },
99
+ "tvos_url": {
100
+ "anyOf": [
101
+ {
102
+ "type": "string"
103
+ },
104
+ {
105
+ "type": "null"
106
+ }
107
+ ],
108
+ "description": "tvOS URL"
109
+ },
110
+ "regions": {
111
+ "type": "array",
112
+ "items": {
113
+ "type": "string"
114
+ },
115
+ "description": "Regions"
116
+ }
117
+ },
118
+ "required": [
119
+ "id",
120
+ "name",
121
+ "type",
122
+ "logo_100px",
123
+ "ios_appstore_url",
124
+ "android_playstore_url",
125
+ "android_tv_url",
126
+ "fire_tv_url",
127
+ "roku_url",
128
+ "tvos_url",
129
+ "regions"
130
+ ]
131
+ }
132
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "string",
4
+ "const": "sub",
5
+ "description": "Subscription services (Netflix, Hulu, etc.)"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "string",
4
+ "const": "tve",
5
+ "description": "TV Channel App (cable login required)"
6
+ }