@peertube/feed 5.0.1 → 5.1.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.
package/lib/atom1.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"atom1.js","sourceRoot":"","sources":["../src/atom1.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"atom1.js","sourceRoot":"","sources":["../src/atom1.ts"],"names":[],"mappings":"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"}
package/lib/feed.d.ts CHANGED
@@ -1,17 +1,22 @@
1
- import { Author, Extension, FeedOptions, Item } from "./typings";
2
- export { Author, Extension, FeedOptions, Item };
1
+ import { Author, Extension, FeedOptions, Item, PodcastItem, PodcastLiveItem } from "./typings";
2
+ export { Author, Extension, FeedOptions, Item, PodcastItem, PodcastLiveItem };
3
3
  export declare class Feed {
4
4
  options: FeedOptions;
5
5
  items: Item[];
6
+ podcastItems: PodcastItem[];
7
+ podcastLiveItems: PodcastLiveItem[];
6
8
  categories: string[];
7
9
  contributors: Author[];
8
10
  extensions: Extension[];
9
11
  constructor(options: FeedOptions);
10
12
  addItem: (item: Item) => number;
13
+ addPodcastItem: (podcastItem: PodcastItem) => number;
14
+ addPodcastLiveItem: (podcastLiveItem: PodcastLiveItem) => number;
11
15
  addCategory: (category: string) => number;
12
16
  addContributor: (contributor: Author) => number;
13
17
  addExtension: (extension: Extension) => number;
14
18
  atom1: () => string;
15
19
  rss2: () => string;
20
+ podcast: () => string;
16
21
  json1: () => string;
17
22
  }
package/lib/feed.js CHANGED
@@ -3,20 +3,26 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Feed = void 0;
4
4
  var atom1_1 = require("./atom1");
5
5
  var json_1 = require("./json");
6
+ var podcast_1 = require("./podcast");
6
7
  var rss2_1 = require("./rss2");
7
8
  var Feed = (function () {
8
9
  function Feed(options) {
9
10
  var _this = this;
10
11
  this.items = [];
12
+ this.podcastItems = [];
13
+ this.podcastLiveItems = [];
11
14
  this.categories = [];
12
15
  this.contributors = [];
13
16
  this.extensions = [];
14
17
  this.addItem = function (item) { return _this.items.push(item); };
18
+ this.addPodcastItem = function (podcastItem) { return _this.podcastItems.push(podcastItem); };
19
+ this.addPodcastLiveItem = function (podcastLiveItem) { return _this.podcastLiveItems.push(podcastLiveItem); };
15
20
  this.addCategory = function (category) { return _this.categories.push(category); };
16
21
  this.addContributor = function (contributor) { return _this.contributors.push(contributor); };
17
22
  this.addExtension = function (extension) { return _this.extensions.push(extension); };
18
23
  this.atom1 = function () { return (0, atom1_1.default)(_this); };
19
24
  this.rss2 = function () { return (0, rss2_1.default)(_this); };
25
+ this.podcast = function () { return (0, podcast_1.default)(_this); };
20
26
  this.json1 = function () { return (0, json_1.default)(_this); };
21
27
  this.options = options;
22
28
  }
package/lib/feed.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"feed.js","sourceRoot":"","sources":["../src/feed.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,+BAAgC;AAChC,+BAA+B;AAQ/B;IAOE,cAAY,OAAoB;QAAhC,iBAEC;QAPD,UAAK,GAAW,EAAE,CAAC;QACnB,eAAU,GAAa,EAAE,CAAC;QAC1B,iBAAY,GAAa,EAAE,CAAC;QAC5B,eAAU,GAAgB,EAAE,CAAC;QAUtB,YAAO,GAAG,UAAC,IAAU,IAAK,OAAA,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAArB,CAAqB,CAAC;QAMhD,gBAAW,GAAG,UAAC,QAAgB,IAAK,OAAA,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAA9B,CAA8B,CAAC;QAMnE,mBAAc,GAAG,UAAC,WAAmB,IAAK,OAAA,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,EAAnC,CAAmC,CAAC;QAM9E,iBAAY,GAAG,UAAC,SAAoB,IAAK,OAAA,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAA/B,CAA+B,CAAC;QAKzE,UAAK,GAAG,cAAc,OAAA,IAAA,eAAU,EAAC,KAAI,CAAC,EAAhB,CAAgB,CAAC;QAKvC,SAAI,GAAG,cAAc,OAAA,IAAA,cAAS,EAAC,KAAI,CAAC,EAAf,CAAe,CAAC;QAKrC,UAAK,GAAG,cAAc,OAAA,IAAA,cAAU,EAAC,KAAI,CAAC,EAAhB,CAAgB,CAAC;QAxC5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAwCH,WAAC;AAAD,CAAC,AAjDD,IAiDC;AAjDY,oBAAI"}
1
+ {"version":3,"file":"feed.js","sourceRoot":"","sources":["../src/feed.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,+BAAgC;AAChC,qCAAyC;AACzC,+BAA+B;AAQ/B;IASE,cAAY,OAAoB;QAAhC,iBAEC;QATD,UAAK,GAAW,EAAE,CAAC;QACnB,iBAAY,GAAkB,EAAE,CAAC;QACjC,qBAAgB,GAAsB,EAAE,CAAC;QACzC,eAAU,GAAa,EAAE,CAAC;QAC1B,iBAAY,GAAa,EAAE,CAAC;QAC5B,eAAU,GAAgB,EAAE,CAAC;QAUtB,YAAO,GAAG,UAAC,IAAU,IAAK,OAAA,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAArB,CAAqB,CAAC;QAMhD,mBAAc,GAAG,UAAC,WAAwB,IAAK,OAAA,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,EAAnC,CAAmC,CAAC;QAMnF,uBAAkB,GAAG,UAAC,eAAgC,IAAK,OAAA,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,EAA3C,CAA2C,CAAC;QAMvG,gBAAW,GAAG,UAAC,QAAgB,IAAK,OAAA,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAA9B,CAA8B,CAAC;QAMnE,mBAAc,GAAG,UAAC,WAAmB,IAAK,OAAA,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,EAAnC,CAAmC,CAAC;QAM9E,iBAAY,GAAG,UAAC,SAAoB,IAAK,OAAA,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAA/B,CAA+B,CAAC;QAKzE,UAAK,GAAG,cAAc,OAAA,IAAA,eAAU,EAAC,KAAI,CAAC,EAAhB,CAAgB,CAAC;QAKvC,SAAI,GAAG,cAAc,OAAA,IAAA,cAAS,EAAC,KAAI,CAAC,EAAf,CAAe,CAAC;QAMrC,YAAO,GAAG,cAAc,OAAA,IAAA,iBAAgB,EAAC,KAAI,CAAC,EAAtB,CAAsB,CAAC;QAK/C,UAAK,GAAG,cAAc,OAAA,IAAA,cAAU,EAAC,KAAI,CAAC,EAAhB,CAAgB,CAAC;QA1D5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IA0DH,WAAC;AAAD,CAAC,AArED,IAqEC;AArEY,oBAAI"}
@@ -0,0 +1,3 @@
1
+ import { Feed } from './feed';
2
+ declare const _default: (ins: Feed) => string;
3
+ export default _default;
package/lib/podcast.js ADDED
@@ -0,0 +1,334 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ var convert = require("xml-js");
15
+ var config_1 = require("./config");
16
+ var utils_1 = require("./utils");
17
+ exports.default = (function (ins) {
18
+ var options = ins.options;
19
+ var isAtom = false;
20
+ var base = {
21
+ _declaration: { _attributes: { version: "1.0", encoding: "utf-8" } },
22
+ rss: {
23
+ _attributes: {
24
+ version: "2.0",
25
+ "xmlns:podcast": "https://github.com/Podcastindex-org/podcast-namespace/blob/main/docs/1.0.md",
26
+ "xmlns:itunes": "http://www.itunes.com/dtds/podcast-1.0.dtd",
27
+ "xmlns:dc": "http://purl.org/dc/elements/1.1/",
28
+ "xmlns:content": "http://purl.org/rss/1.0/modules/content/",
29
+ },
30
+ channel: {
31
+ title: { _text: options.title },
32
+ lastBuildDate: { _text: options.updated ? options.updated.toUTCString() : new Date().toUTCString() },
33
+ docs: { _text: options.docs ? options.docs : "https://validator.w3.org/feed/docs/rss2.html" },
34
+ generator: { _text: options.generator || config_1.generator },
35
+ "podcast:medium": { _text: options.medium || "podcast" },
36
+ },
37
+ },
38
+ };
39
+ if (options.customXMLNS) {
40
+ Object.assign(base.rss._attributes, options.customXMLNS.reduce(function (acc, c) {
41
+ var xmlnsName = "xmlns:".concat(c.name);
42
+ if (xmlnsName in acc)
43
+ return acc;
44
+ acc[xmlnsName] = c.value;
45
+ return acc;
46
+ }, {}));
47
+ }
48
+ if (options.link) {
49
+ base.rss.channel.link = { _text: (0, utils_1.sanitize)(options.link) };
50
+ }
51
+ if (options.link) {
52
+ base.rss.channel.description = { _text: options.description };
53
+ }
54
+ if (options.language) {
55
+ base.rss.channel.language = { _text: options.language };
56
+ }
57
+ if (options.ttl) {
58
+ base.rss.channel.ttl = { _text: options.ttl };
59
+ }
60
+ if (options.guid) {
61
+ base.rss.channel["podcast:guid"] = { _text: options.guid };
62
+ }
63
+ if (options.author && options.author.name) {
64
+ if (options.author.link) {
65
+ base.rss.channel["podcast:person"] = {
66
+ _attributes: { href: (0, utils_1.sanitize)(options.author.link) },
67
+ _text: options.author.name
68
+ };
69
+ }
70
+ else {
71
+ base.rss.channel["podcast:person"] = { _text: options.author.name };
72
+ }
73
+ }
74
+ if (options.person) {
75
+ var personTags = options.person.map(function (_a) {
76
+ var role = _a.role, group = _a.group, href = _a.href, img = _a.img, name = _a.name;
77
+ return ({
78
+ _attributes: { role: role, group: group, href: (0, utils_1.sanitize)(href), img: (0, utils_1.sanitize)(img) },
79
+ _text: name
80
+ });
81
+ });
82
+ if (base.rss.channel["podcast:person"]) {
83
+ personTags.unshift(base.rss.channel["podcast:person"]);
84
+ }
85
+ base.rss.channel["podcast:person"] = personTags;
86
+ }
87
+ if (options.managingEditor && options.managingEditor.name && options.managingEditor.email) {
88
+ base.rss.channel["managingEditor"] = { _text: "".concat(options.managingEditor.email, " (").concat(options.managingEditor.name, ")") };
89
+ }
90
+ if (options.webMaster && options.webMaster.name && options.webMaster.email) {
91
+ base.rss.channel["webMaster"] = { _text: "".concat(options.webMaster.email, " (").concat(options.webMaster.name, ")") };
92
+ }
93
+ if (options.locked) {
94
+ base.rss.channel["podcast:locked"] = {
95
+ _attributes: { "owner": options.locked.email },
96
+ _text: options.locked.isLocked ? "yes" : "no"
97
+ };
98
+ }
99
+ base.rss.channel["itunes:explicit"] = { _text: options.nsfw ? "yes" : "no" };
100
+ if (options.image) {
101
+ base.rss.channel.image = {
102
+ title: { _text: options.title },
103
+ url: { _text: options.image },
104
+ link: { _text: (0, utils_1.sanitize)(options.link) }
105
+ };
106
+ }
107
+ if (options.copyright) {
108
+ base.rss.channel.copyright = { _text: options.copyright };
109
+ }
110
+ ins.categories.forEach(function (category) {
111
+ if (!base.rss.channel.category) {
112
+ base.rss.channel.category = [];
113
+ }
114
+ base.rss.channel.category.push({ _text: category });
115
+ });
116
+ var atomLink = options.feed || (options.feedLinks && options.feedLinks.rss);
117
+ if (atomLink) {
118
+ isAtom = true;
119
+ base.rss.channel["atom:link"] = [
120
+ {
121
+ _attributes: {
122
+ href: (0, utils_1.sanitize)(atomLink),
123
+ rel: "self",
124
+ type: "application/rss+xml",
125
+ },
126
+ },
127
+ ];
128
+ }
129
+ if (options.hub) {
130
+ isAtom = true;
131
+ base.rss.channel["atom:link"] = {
132
+ _attributes: {
133
+ href: (0, utils_1.sanitize)(options.hub),
134
+ rel: "hub"
135
+ }
136
+ };
137
+ }
138
+ if (options.stunServers) {
139
+ base.rss.channel["podcast:stun"] = options.stunServers.map(function (stunServer) { return ({
140
+ _text: stunServer
141
+ }); });
142
+ }
143
+ if (options.trackers) {
144
+ base.rss.channel["podcast:tracker"] = options.trackers.map(function (tracker) { return ({
145
+ _text: tracker
146
+ }); });
147
+ }
148
+ if (options.customTags) {
149
+ addCustomTagsToObject(base.rss.channel, options.customTags);
150
+ }
151
+ base.rss.channel["podcast:liveItem"] = ins.podcastLiveItems.map(makePodcastLiveItemJSON);
152
+ base.rss.channel.item = ins.podcastItems.map(makePodcastItemJSON);
153
+ if (isAtom) {
154
+ base.rss._attributes["xmlns:atom"] = "http://www.w3.org/2005/Atom";
155
+ }
156
+ return convert.js2xml(base, { compact: true, ignoreComment: true, spaces: 4 });
157
+ });
158
+ var formatCategory = function (category) {
159
+ var name = category.name, domain = category.domain;
160
+ return {
161
+ _text: name,
162
+ _attributes: {
163
+ domain: domain,
164
+ },
165
+ };
166
+ };
167
+ var addCustomTagsToObject = function (o, customTags) {
168
+ var tagsByName = customTags.reduce(function (tags, d) {
169
+ if (d.name in tags)
170
+ return tags;
171
+ tags[d.name] = customTags.filter(function (g) { return g.name === d.name; });
172
+ return tags;
173
+ }, {});
174
+ Object.keys(tagsByName).forEach(function (tagName) {
175
+ if (tagName in o)
176
+ return;
177
+ o[tagName] = tagsByName[tagName].map(function (tag) {
178
+ var sanitizedAttributes = {};
179
+ if (tag.attributes) {
180
+ sanitizedAttributes = Object.keys(tag.attributes).reduce(function (cur, key) {
181
+ var _a;
182
+ if (tag.attributes) {
183
+ cur[key] = (_a = (0, utils_1.sanitize)(tag.attributes[key])) !== null && _a !== void 0 ? _a : "";
184
+ }
185
+ return cur;
186
+ }, sanitizedAttributes);
187
+ }
188
+ var tagObject = __assign({}, (sanitizedAttributes && { _attributes: sanitizedAttributes }));
189
+ if (typeof tag.value === "string") {
190
+ return __assign(__assign(__assign({}, tagObject), (tag.cdata && tag.value && { _cdata: tag.value })), (!tag.cdata && tag.value && { _text: tag.value }));
191
+ }
192
+ else if (tag.value) {
193
+ addCustomTagsToObject(tagObject, tag.value);
194
+ return tagObject;
195
+ }
196
+ else {
197
+ return tagObject;
198
+ }
199
+ }).filter(function (tagObject) { return !!tagObject; });
200
+ });
201
+ };
202
+ var makePodcastItemJSON = function (entry) {
203
+ var item = {};
204
+ if (entry.title) {
205
+ item.title = { _cdata: entry.title };
206
+ }
207
+ if (entry.link) {
208
+ item.link = { _text: (0, utils_1.sanitize)(entry.link) };
209
+ }
210
+ if (entry.guid) {
211
+ item.guid = { _attributes: { isPermaLink: entry.guid.startsWith("http") }, _text: entry.guid };
212
+ }
213
+ else if (entry.link) {
214
+ item.guid = { _attributes: { isPermaLink: true }, _text: (0, utils_1.sanitize)(entry.link) };
215
+ }
216
+ else if (entry.media[0].sources[0].uri) {
217
+ item.guid = { _attributes: { isPermaLink: true }, _text: (0, utils_1.sanitize)(entry.media[0].sources[0].uri) };
218
+ }
219
+ if (entry.date) {
220
+ item.pubDate = { _text: entry.date.toUTCString() };
221
+ }
222
+ if (entry.published) {
223
+ item.pubDate = { _text: entry.published.toUTCString() };
224
+ }
225
+ if (entry.description) {
226
+ item.description = { _cdata: entry.description };
227
+ }
228
+ if (entry.content) {
229
+ item["content:encoded"] = { _cdata: entry.content };
230
+ }
231
+ if (Array.isArray(entry.author)) {
232
+ item.author = [];
233
+ entry.author.forEach(function (author) {
234
+ if (author.email && author.name) {
235
+ item.author.push({ _text: author.email + " (" + author.name + ")" });
236
+ }
237
+ else if (author.name) {
238
+ item["dc:creator"] = {
239
+ _text: author.name
240
+ };
241
+ }
242
+ });
243
+ }
244
+ if (entry.person) {
245
+ item["podcast:person"] = entry.person.map(function (_a) {
246
+ var role = _a.role, group = _a.group, href = _a.href, img = _a.img, name = _a.name;
247
+ return ({
248
+ _attributes: { role: role, group: group, href: (0, utils_1.sanitize)(href), img: (0, utils_1.sanitize)(img) },
249
+ _text: name
250
+ });
251
+ });
252
+ }
253
+ if (Array.isArray(entry.category)) {
254
+ item.category = entry.category.map(formatCategory);
255
+ }
256
+ if (entry.stunServers) {
257
+ item["podcast:stun"] = entry.stunServers.map(function (stunServer) { return ({
258
+ _text: stunServer
259
+ }); });
260
+ }
261
+ if (entry.trackers) {
262
+ item["podcast:tracker"] = entry.trackers.map(function (tracker) { return ({
263
+ _text: tracker
264
+ }); });
265
+ }
266
+ if (entry.socialInteract) {
267
+ item["podcast:socialInteract"] = entry.socialInteract.map(function (_a) {
268
+ var uri = _a.uri, protocol = _a.protocol, accountId = _a.accountId, accountUrl = _a.accountUrl, priority = _a.priority;
269
+ return ({
270
+ _attributes: { uri: (0, utils_1.sanitize)(uri), protocol: protocol, accountId: accountId, accountUrl: (0, utils_1.sanitize)(accountUrl), priority: priority }
271
+ });
272
+ });
273
+ }
274
+ if (entry.subTitle) {
275
+ item["podcast:transcript"] = entry.subTitle.map(function (_a) {
276
+ var url = _a.url, type = _a.type, language = _a.language, rel = _a.rel;
277
+ return ({
278
+ _attributes: { url: (0, utils_1.sanitize)(url), type: type, language: language, rel: rel }
279
+ });
280
+ });
281
+ }
282
+ var defaultEnclosure = entry.media[0];
283
+ item.enclosure = {
284
+ _attributes: {
285
+ url: (0, utils_1.sanitize)(defaultEnclosure.sources[0].uri),
286
+ length: defaultEnclosure.length,
287
+ type: defaultEnclosure.type
288
+ }
289
+ };
290
+ item["podcast:alternateEnclosure"] = entry.media.map(function (_a, index) {
291
+ var type = _a.type, codecs = _a.codecs, length = _a.length, bitrate = _a.bitrate, height = _a.height, language = _a.language, rel = _a.rel, title = _a.title, sources = _a.sources, integrity = _a.integrity;
292
+ return (__assign({ _attributes: { type: type, codecs: codecs, length: length, bitrate: bitrate, height: height, lang: language, rel: rel, title: title, default: index === 0 ? "true" : "false" }, "podcast:source": sources.map(function (_a) {
293
+ var uri = _a.uri, contentType = _a.contentType;
294
+ return ({ _attributes: { uri: (0, utils_1.sanitize)(uri), contentType: contentType } });
295
+ }) }, (integrity && { "podcast:integrity": integrity === null || integrity === void 0 ? void 0 : integrity.map(function (_a) {
296
+ var type = _a.type, value = _a.value;
297
+ return ({ _attributes: { type: type, value: value } });
298
+ }) })));
299
+ });
300
+ if (entry.thumbnails) {
301
+ var defaultImage = entry.thumbnails[0];
302
+ item["itunes:image"] = {
303
+ _attributes: { href: (0, utils_1.sanitize)(defaultImage.url) }
304
+ };
305
+ var thumbnailsWithWidth = entry.thumbnails
306
+ .filter(function (_a) {
307
+ var width = _a.width;
308
+ return width !== undefined;
309
+ });
310
+ if (thumbnailsWithWidth.length > 0) {
311
+ item["podcast:images"] = {
312
+ _attributes: {
313
+ srcset: thumbnailsWithWidth
314
+ .map(function (_a) {
315
+ var url = _a.url, width = _a.width;
316
+ return ("".concat((0, utils_1.sanitize)(url), " ").concat(width, "w"));
317
+ })
318
+ .join(", ")
319
+ }
320
+ };
321
+ }
322
+ }
323
+ item["itunes:explicit"] = { _text: entry.nsfw ? "yes" : "no" };
324
+ if (entry.customTags) {
325
+ addCustomTagsToObject(item, entry.customTags);
326
+ }
327
+ return item;
328
+ };
329
+ var makePodcastLiveItemJSON = function (entry) {
330
+ var item = makePodcastItemJSON(entry);
331
+ item._attributes = __assign(__assign({ status: entry.status }, (entry.start && { start: entry.start })), (entry.end && { end: entry.end }));
332
+ return item;
333
+ };
334
+ //# sourceMappingURL=podcast.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"podcast.js","sourceRoot":"","sources":["../src/podcast.ts"],"names":[],"mappings":"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"}
@@ -59,6 +59,46 @@ export interface Item {
59
59
  }[];
60
60
  nsfw?: boolean;
61
61
  }
62
+ export interface PodcastItem {
63
+ title: string;
64
+ id?: string;
65
+ link: string;
66
+ date: Date;
67
+ description?: string;
68
+ content?: string;
69
+ category?: Category[];
70
+ guid?: string;
71
+ media: Media[];
72
+ author?: Author[];
73
+ person?: Person[];
74
+ published?: Date;
75
+ copyright?: string;
76
+ subTitle?: {
77
+ url: string;
78
+ type: string;
79
+ language?: string;
80
+ rel?: string;
81
+ }[];
82
+ thumbnails?: {
83
+ url: string;
84
+ width?: number;
85
+ }[];
86
+ stunServers?: string[];
87
+ trackers?: string[];
88
+ socialInteract?: SocialInteract[];
89
+ nsfw?: boolean;
90
+ customTags?: CustomTag[];
91
+ }
92
+ export interface PodcastLiveItem extends PodcastItem {
93
+ status: LiveItemStatus;
94
+ start?: string;
95
+ end?: string;
96
+ }
97
+ export declare enum LiveItemStatus {
98
+ pending = "pending",
99
+ live = "live",
100
+ ended = "ended"
101
+ }
62
102
  export interface Enclosure {
63
103
  url: string;
64
104
  type?: string;
@@ -66,11 +106,49 @@ export interface Enclosure {
66
106
  title?: string;
67
107
  duration?: number;
68
108
  }
109
+ export interface Media {
110
+ type: string;
111
+ codecs?: string;
112
+ length?: number;
113
+ bitrate?: number;
114
+ height?: number;
115
+ title?: string;
116
+ rel?: string;
117
+ language?: string;
118
+ sources: Source[];
119
+ integrity?: SourceIntegrity[];
120
+ }
121
+ export interface Source {
122
+ uri: string;
123
+ contentType?: string;
124
+ }
125
+ export interface SourceIntegrity {
126
+ type: IntegrityType;
127
+ value: string;
128
+ }
129
+ export declare enum IntegrityType {
130
+ sri = "sri",
131
+ pgpSignature = "pgp-signature"
132
+ }
133
+ export interface SocialInteract {
134
+ uri: string;
135
+ protocol: string;
136
+ accountId?: string;
137
+ accountUrl?: string;
138
+ priority?: number;
139
+ }
69
140
  export interface Author {
70
141
  name?: string;
71
142
  email?: string;
72
143
  link?: string;
73
144
  }
145
+ export interface Person {
146
+ name: string;
147
+ href?: string;
148
+ img?: string;
149
+ role?: string;
150
+ group?: string;
151
+ }
74
152
  export interface Category {
75
153
  name?: string;
76
154
  domain?: string;
@@ -78,7 +156,8 @@ export interface Category {
78
156
  term?: string;
79
157
  }
80
158
  export interface FeedOptions {
81
- id: string;
159
+ id?: string;
160
+ guid?: string;
82
161
  title: string;
83
162
  updated?: Date;
84
163
  generator?: string;
@@ -88,14 +167,39 @@ export interface FeedOptions {
88
167
  feedLinks?: any;
89
168
  hub?: string;
90
169
  docs?: string;
170
+ medium?: string;
91
171
  author?: Author;
172
+ managingEditor?: Author;
173
+ webMaster?: Author;
174
+ person?: Person[];
175
+ locked?: {
176
+ isLocked: boolean;
177
+ email: string;
178
+ };
92
179
  link?: string;
93
180
  description?: string;
94
181
  image?: string;
95
182
  favicon?: string;
96
183
  copyright: string;
184
+ nsfw?: boolean;
185
+ stunServers?: string[];
186
+ trackers?: string[];
187
+ customXMLNS?: CustomXMLNS[];
188
+ customTags?: CustomTag[];
97
189
  }
98
190
  export interface Extension {
99
191
  name: string;
100
192
  objects: any;
101
193
  }
194
+ export interface CustomXMLNS {
195
+ name: string;
196
+ value: string;
197
+ }
198
+ export interface CustomTag {
199
+ name: string;
200
+ attributes?: {
201
+ [key: string]: string;
202
+ };
203
+ value?: string | CustomTag[];
204
+ cdata?: boolean;
205
+ }
@@ -1,3 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IntegrityType = exports.LiveItemStatus = void 0;
4
+ var LiveItemStatus;
5
+ (function (LiveItemStatus) {
6
+ LiveItemStatus["pending"] = "pending";
7
+ LiveItemStatus["live"] = "live";
8
+ LiveItemStatus["ended"] = "ended";
9
+ })(LiveItemStatus = exports.LiveItemStatus || (exports.LiveItemStatus = {}));
10
+ var IntegrityType;
11
+ (function (IntegrityType) {
12
+ IntegrityType["sri"] = "sri";
13
+ IntegrityType["pgpSignature"] = "pgp-signature";
14
+ })(IntegrityType = exports.IntegrityType || (exports.IntegrityType = {}));
3
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/typings/index.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/typings/index.ts"],"names":[],"mappings":";;;AA8HA,IAAY,cAIX;AAJD,WAAY,cAAc;IACxB,qCAAmB,CAAA;IACnB,+BAAa,CAAA;IACb,iCAAe,CAAA;AACjB,CAAC,EAJW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAIzB;AAmCD,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,4BAAW,CAAA;IACX,+CAA8B,CAAA;AAChC,CAAC,EAHW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAGxB"}
package/lib/utils.d.ts CHANGED
@@ -1 +1 @@
1
- export declare function sanitize(url: string | undefined): string | undefined;
1
+ export declare function sanitize(url: string | undefined | null): string | undefined | null;
package/lib/utils.js CHANGED
@@ -2,10 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.sanitize = void 0;
4
4
  function sanitize(url) {
5
- if (typeof (url) === 'undefined') {
6
- return;
5
+ if (typeof url === 'string') {
6
+ return url.replace(/&/g, '&amp;')
7
+ .replace(/</g, '&lt;')
8
+ .replace(/>/g, '&gt;')
9
+ .replace(/"/g, '&quot;')
10
+ .replace(/'/g, '&apos;');
7
11
  }
8
- return url.replace(/&/g, '&amp;');
12
+ return url;
9
13
  }
10
14
  exports.sanitize = sanitize;
11
15
  //# sourceMappingURL=utils.js.map
package/lib/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAAA,SAAgB,QAAQ,CAAC,GAAuB;IAC9C,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,WAAW,EAAE;QAChC,OAAO;KACR;IACD,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC;AALD,4BAKC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAAA,SAAgB,QAAQ,CAAC,GAA8B;IACrD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;aAC9B,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;aACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;aACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;aACvB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;KAC3B;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AATD,4BASC"}