podverse-orm 5.1.0-alpha.1 → 5.1.0-alpha.10

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.
@@ -5,6 +5,7 @@ export declare class Clip {
5
5
  id: number;
6
6
  id_text: string;
7
7
  account: Account;
8
+ item_id: string;
8
9
  item: Item;
9
10
  start_time: string;
10
11
  end_time?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"clip.d.ts","sourceRoot":"","sources":["../../src/entities/clip.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE1E,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAK/C,qBACa,IAAI;IAEf,EAAE,EAAG,MAAM,CAAC;IAGZ,OAAO,EAAG,MAAM,CAAC;IAIjB,OAAO,EAAG,OAAO,CAAC;IAIlB,IAAI,EAAG,IAAI,CAAC;IAGZ,UAAU,EAAG,MAAM,CAAC;IAGpB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGzB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI5B,eAAe,EAAG,kBAAkB,CAAC;IAGrC,cAAc;CAGf"}
1
+ {"version":3,"file":"clip.d.ts","sourceRoot":"","sources":["../../src/entities/clip.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE1E,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAK/C,qBACa,IAAI;IAEf,EAAE,EAAG,MAAM,CAAC;IAGZ,OAAO,EAAG,MAAM,CAAC;IAIjB,OAAO,EAAG,OAAO,CAAC;IAGlB,OAAO,EAAG,MAAM,CAAC;IAIjB,IAAI,EAAG,IAAI,CAAC;IAGZ,UAAU,EAAG,MAAM,CAAC;IAGpB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGzB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI5B,eAAe,EAAG,kBAAkB,CAAC;IAGrC,cAAc;CAGf"}
@@ -35,6 +35,10 @@ __decorate([
35
35
  (0, typeorm_1.JoinColumn)({ name: 'account_id' }),
36
36
  __metadata("design:type", account_1.Account)
37
37
  ], Clip.prototype, "account", void 0);
38
+ __decorate([
39
+ (0, typeorm_1.Column)(),
40
+ __metadata("design:type", String)
41
+ ], Clip.prototype, "item_id", void 0);
38
42
  __decorate([
39
43
  (0, typeorm_1.ManyToOne)(() => item_1.Item, item => item.id, { onDelete: 'CASCADE' }),
40
44
  (0, typeorm_1.JoinColumn)({ name: 'item_id' }),
package/dist/index.d.ts CHANGED
@@ -126,6 +126,7 @@ export * from './services/channel/channelTxt';
126
126
  export * from './services/channel/channelValue';
127
127
  export * from './services/channel/channelValueRecipient';
128
128
  export * from './services/clip';
129
+ export * from './services/deduplicator';
129
130
  export * from './services/feed/feed';
130
131
  export * from './services/feed/feedFlagStatus';
131
132
  export * from './services/feed/feedLog';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,uBAAuB,CAAC;AAE/B,cAAc,UAAU,CAAC;AAEzB,cAAc,MAAM,CAAC;AAErB,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sCAAsC,CAAC;AACrD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,uCAAuC,CAAC;AACtD,cAAc,mDAAmD,CAAC;AAClE,cAAc,qCAAqC,CAAC;AACpD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,oDAAoD,CAAC;AACnE,cAAc,4CAA4C,CAAC;AAC3D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,sCAAsC,CAAC;AACrD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,uCAAuC,CAAC;AACtD,cAAc,mCAAmC,CAAC;AAClD,cAAc,yCAAyC,CAAC;AACxD,cAAc,oCAAoC,CAAC;AACnD,cAAc,wCAAwC,CAAC;AAEvD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,oCAAoC,CAAC;AACnD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uCAAuC,CAAC;AACtD,cAAc,mCAAmC,CAAC;AAClD,cAAc,iCAAiC,CAAC;AAChD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,sCAAsC,CAAC;AACrD,cAAc,mCAAmC,CAAC;AAClD,cAAc,oCAAoC,CAAC;AACnD,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,qCAAqC,CAAC;AACpD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,sCAAsC,CAAC;AACrD,cAAc,kCAAkC,CAAC;AACjD,cAAc,0CAA0C,CAAC;AACzD,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,0CAA0C,CAAC;AAEzD,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AAExC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qCAAqC,CAAC;AACpD,cAAc,kCAAkC,CAAC;AACjD,cAAc,qCAAqC,CAAC;AACpD,cAAc,0BAA0B,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wCAAwC,CAAC;AACvD,cAAc,qCAAqC,CAAC;AACpD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uCAAuC,CAAC;AACtD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mCAAmC,CAAC;AAClD,cAAc,oCAAoC,CAAC;AACnD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oCAAoC,CAAC;AACnD,cAAc,oCAAoC,CAAC;AACnD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8CAA8C,CAAC;AAE7D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC;AAEnD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sCAAsC,CAAC;AAErD,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAE/C,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iCAAiC,CAAC;AAChD,cAAc,2BAA2B,CAAC;AAE1C,cAAc,oBAAoB,CAAC;AAEnC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uCAAuC,CAAC;AACtD,cAAc,mDAAmD,CAAC;AAClE,cAAc,qCAAqC,CAAC;AACpD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,oDAAoD,CAAC;AACnE,cAAc,4CAA4C,CAAC;AAC3D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,sCAAsC,CAAC;AACrD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,uCAAuC,CAAC;AACtD,cAAc,mCAAmC,CAAC;AAClD,cAAc,yCAAyC,CAAC;AACxD,cAAc,wCAAwC,CAAC;AAEvD,cAAc,qBAAqB,CAAC;AAEpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oCAAoC,CAAC;AACnD,cAAc,uCAAuC,CAAC;AACtD,cAAc,mCAAmC,CAAC;AAClD,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,oCAAoC,CAAC;AACnD,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,qCAAqC,CAAC;AACpD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,sCAAsC,CAAC;AACrD,cAAc,kCAAkC,CAAC;AACjD,cAAc,0CAA0C,CAAC;AACzD,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,0CAA0C,CAAC;AAEzD,cAAc,iBAAiB,CAAC;AAEhC,cAAc,yBAAyB,CAAC;AAExC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AAExC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,qCAAqC,CAAC;AACpD,cAAc,0BAA0B,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wCAAwC,CAAC;AACvD,cAAc,qCAAqC,CAAC;AACpD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mCAAmC,CAAC;AAClD,cAAc,oCAAoC,CAAC;AACnD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oCAAoC,CAAC;AACnD,cAAc,oCAAoC,CAAC;AACnD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8CAA8C,CAAC;AAE7D,cAAc,8BAA8B,CAAC;AAE7C,cAAc,mBAAmB,CAAC;AAElC,cAAc,iCAAiC,CAAC;AAEhD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sCAAsC,CAAC;AAErD,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAE/C,cAAc,yCAAyC,CAAC;AACxD,cAAc,yCAAyC,CAAC;AACxD,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,0CAA0C,CAAC;AACzD,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,yCAAyC,CAAC;AACxD,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,0CAA0C,CAAC"}
package/dist/index.js CHANGED
@@ -142,6 +142,7 @@ __exportStar(require("./services/channel/channelTxt"), exports);
142
142
  __exportStar(require("./services/channel/channelValue"), exports);
143
143
  __exportStar(require("./services/channel/channelValueRecipient"), exports);
144
144
  __exportStar(require("./services/clip"), exports);
145
+ __exportStar(require("./services/deduplicator"), exports);
145
146
  __exportStar(require("./services/feed/feed"), exports);
146
147
  __exportStar(require("./services/feed/feedFlagStatus"), exports);
147
148
  __exportStar(require("./services/feed/feedLog"), exports);
@@ -12,6 +12,8 @@ export declare class ArchiverService {
12
12
  private processItems;
13
13
  processPendingArchiveFeeds(): Promise<void>;
14
14
  processPendingArchiveItems(): Promise<void>;
15
+ getFeedsWithTakedownStatus(): Promise<Feed[]>;
16
+ removeAllItemsForTakedownFeeds(): Promise<void>;
15
17
  archiveAll(): Promise<void>;
16
18
  }
17
19
  //# sourceMappingURL=archiver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/services/archiver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAE/C,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAK/C,qBAAa,eAAe;IAC1B,OAAO,CAAC,kBAAkB,CAAyC;IACnE,OAAO,CAAC,uBAAuB,CAA8C;IAC7E,OAAO,CAAC,kBAAkB,CAAyC;IACnE,OAAO,CAAC,uBAAuB,CAA8C;IAC7E,OAAO,CAAC,0BAA0B,CAAqD;IACvF,OAAO,CAAC,cAAc,CAAyC;IAEzD,sBAAsB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAsBzC,sBAAsB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YAWjC,YAAY;IAmBpB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC;IAkC3C,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC;IAY3C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAIlC"}
1
+ {"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/services/archiver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAE/C,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAK/C,qBAAa,eAAe;IAC1B,OAAO,CAAC,kBAAkB,CAAyC;IACnE,OAAO,CAAC,uBAAuB,CAA8C;IAC7E,OAAO,CAAC,kBAAkB,CAAyC;IACnE,OAAO,CAAC,uBAAuB,CAA8C;IAC7E,OAAO,CAAC,0BAA0B,CAAqD;IACvF,OAAO,CAAC,cAAc,CAAyC;IAMzD,sBAAsB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAsBzC,sBAAsB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YAWjC,YAAY;IAmBpB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC;IAqC3C,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC;IAY3C,0BAA0B,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAW7C,8BAA8B,IAAI,OAAO,CAAC,IAAI,CAAC;IAc/C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAKlC"}
@@ -27,6 +27,8 @@ class ArchiverService {
27
27
  this.playlistResourceRepository = db_1.AppDataSourceRead.getRepository(playlistResource_1.PlaylistResource);
28
28
  this.clipRepository = db_1.AppDataSourceRead.getRepository(clip_1.Clip);
29
29
  }
30
+ // TODO: check if archived items no longer have clip or playlist resource relationships
31
+ // TODO: handle spam items
30
32
  getItemsPendingArchive() {
31
33
  return __awaiter(this, void 0, void 0, function* () {
32
34
  return this.itemRepositoryRead.find({
@@ -65,12 +67,12 @@ class ArchiverService {
65
67
  processItems(items, archivedStatus) {
66
68
  return __awaiter(this, void 0, void 0, function* () {
67
69
  for (const item of items) {
68
- const hasPlaylistResource = yield this.playlistResourceRepository.findOne({
70
+ const hasPlaylistResource = !!(yield this.playlistResourceRepository.findOne({
69
71
  where: { item: { id: item.id } },
70
- });
71
- const hasClip = yield this.clipRepository.findOne({
72
+ }));
73
+ const hasClip = !!(yield this.clipRepository.findOne({
72
74
  where: { item: { id: item.id } },
73
- });
75
+ }));
74
76
  if (hasPlaylistResource || hasClip) {
75
77
  item.item_flag_status = archivedStatus;
76
78
  yield this.itemRepositoryReadWrite.save(item);
@@ -100,13 +102,14 @@ class ArchiverService {
100
102
  },
101
103
  relations: ['item_flag_status']
102
104
  });
103
- if (items.length === 0) {
104
- yield this.feedRepositoryReadWrite.delete(feed.id);
105
- }
106
- else {
107
- const activeOrPendingItems = items.filter(item => [itemFlagStatus_1.ItemFlagStatusStatusEnum.Active, itemFlagStatus_1.ItemFlagStatusStatusEnum.PendingArchive].includes(item.item_flag_status.id));
105
+ if (items.length > 0) {
106
+ const activeOrPendingItems = items.filter(item => [itemFlagStatus_1.ItemFlagStatusStatusEnum.Active, itemFlagStatus_1.ItemFlagStatusStatusEnum.PendingArchive]
107
+ .includes(item.item_flag_status.id));
108
108
  yield this.processItems(activeOrPendingItems, archivedStatus);
109
109
  }
110
+ feed.feed_flag_status = Object.assign(Object.assign({}, feed.feed_flag_status), { id: feedFlagStatus_1.FeedFlagStatusStatusEnum.Archived });
111
+ feed.last_parsed_file_hash = null;
112
+ yield this.feedRepositoryReadWrite.save(feed);
110
113
  }
111
114
  });
112
115
  }
@@ -121,10 +124,38 @@ class ArchiverService {
121
124
  yield this.processItems(items, archivedStatus);
122
125
  });
123
126
  }
127
+ getFeedsWithTakedownStatus() {
128
+ return __awaiter(this, void 0, void 0, function* () {
129
+ return this.feedRepositoryRead.find({
130
+ where: {
131
+ feed_flag_status: {
132
+ id: feedFlagStatus_1.FeedFlagStatusStatusEnum.Takedown,
133
+ },
134
+ },
135
+ relations: ['channel', 'channel.items', 'feed_flag_status'],
136
+ });
137
+ });
138
+ }
139
+ removeAllItemsForTakedownFeeds() {
140
+ return __awaiter(this, void 0, void 0, function* () {
141
+ const feeds = yield this.getFeedsWithTakedownStatus();
142
+ for (const feed of feeds) {
143
+ const channel = feed.channel;
144
+ if (!channel || !channel.items || channel.items.length === 0) {
145
+ continue;
146
+ }
147
+ const itemIds = channel.items.map(item => item.id);
148
+ if (itemIds.length > 0) {
149
+ yield this.itemRepositoryReadWrite.delete(itemIds);
150
+ }
151
+ }
152
+ });
153
+ }
124
154
  archiveAll() {
125
155
  return __awaiter(this, void 0, void 0, function* () {
126
156
  yield this.processPendingArchiveFeeds();
127
157
  yield this.processPendingArchiveItems();
158
+ yield this.removeAllItemsForTakedownFeeds();
128
159
  });
129
160
  }
130
161
  }
@@ -25,10 +25,11 @@ export declare class ChannelService {
25
25
  get(id: number, relations?: FindOptionsRelations<Channel>): Promise<Channel | null>;
26
26
  getByIdText(id_text: string, relations?: FindOptionsRelations<Channel>): Promise<Channel | null>;
27
27
  getByIdOrIdText(idOrIdText: string, relations?: FindOptionsRelations<Channel>): Promise<Channel | null>;
28
- getByPodcastIndexId(podcast_index_id: number): Promise<Channel | null>;
28
+ getByPodcastIndexId(podcast_index_id: number, relations?: FindOptionsRelations<Channel>): Promise<Channel | null>;
29
29
  getMany(config: FindManyOptions<Channel>): Promise<Channel[]>;
30
30
  getOrCreateByPodcastIndexId(dto: ChannelInitializeDto): Promise<Channel>;
31
31
  update(id: number, dto: ChannelDto): Promise<Channel>;
32
+ updatePodcastIndexId(id: number, podcast_index_id: number): Promise<Channel>;
32
33
  }
33
34
  export {};
34
35
  //# sourceMappingURL=channel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../../src/services/channel/channel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,EAAM,UAAU,EAAE,MAAM,SAAS,CAAC;AAClG,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAgB/C,KAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE,IAAI,CAAC;IACX,gBAAgB,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,KAAK,UAAU,GAAG;IAChB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;IAC1B,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAED,eAAO,MAAM,uBAAuB,UAUnC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,oBAAoB,CAAC,OAAO,CAmBhE,CAAC;AAiBF,qBAAa,cAAc;IACzB,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC9C,SAAS,CAAC,mBAAmB,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;;IAO7C,uBAAuB,CAC3B,KAAK,EAAE,gBAAgB,CAAC,OAAO,CAAC,EAChC,SAAS,EAAE,oBAAoB,CAAC,OAAO,CAAC,GACvC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAsFpB,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,GAAE,oBAAoB,CAAC,OAAO,CAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAOvF,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,GAAE,oBAAoB,CAAC,OAAO,CAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAOpG,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,GAAE,oBAAoB,CAAC,OAAO,CAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAa3G,mBAAmB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAItE,OAAO,CAAC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAW7D,2BAA2B,CAAC,GAAG,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IAaxE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;CAW5D"}
1
+ {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../../src/services/channel/channel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,EAAM,UAAU,EAAE,MAAM,SAAS,CAAC;AAClG,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAgB/C,KAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE,IAAI,CAAC;IACX,gBAAgB,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,KAAK,UAAU,GAAG;IAChB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;IAC1B,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAED,eAAO,MAAM,uBAAuB,UAUnC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,oBAAoB,CAAC,OAAO,CAmBhE,CAAC;AAiBF,qBAAa,cAAc;IACzB,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC9C,SAAS,CAAC,mBAAmB,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;;IAO7C,uBAAuB,CAC3B,KAAK,EAAE,gBAAgB,CAAC,OAAO,CAAC,EAChC,SAAS,EAAE,oBAAoB,CAAC,OAAO,CAAC,GACvC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAsFpB,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,GAAE,oBAAoB,CAAC,OAAO,CAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAOvF,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,GAAE,oBAAoB,CAAC,OAAO,CAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAOpG,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,GAAE,oBAAoB,CAAC,OAAO,CAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAa3G,mBAAmB,CAAC,gBAAgB,EAAE,MAAM,EAAE,SAAS,GAAE,oBAAoB,CAAC,OAAO,CAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAIrH,OAAO,CAAC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAW7D,2BAA2B,CAAC,GAAG,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IAaxE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAYrD,oBAAoB,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAWnF"}
@@ -169,16 +169,16 @@ class ChannelService {
169
169
  return channel;
170
170
  });
171
171
  }
172
- getByPodcastIndexId(podcast_index_id) {
173
- return __awaiter(this, void 0, void 0, function* () {
174
- return this.repositoryRead.findOne({ where: { podcast_index_id } });
172
+ getByPodcastIndexId(podcast_index_id_1) {
173
+ return __awaiter(this, arguments, void 0, function* (podcast_index_id, relations = {}) {
174
+ return this.repositoryRead.findOne({ where: { podcast_index_id }, relations });
175
175
  });
176
176
  }
177
177
  getMany(config) {
178
178
  return __awaiter(this, void 0, void 0, function* () {
179
179
  return this.repositoryRead.find(Object.assign({ where: {
180
180
  feed: {
181
- id: (0, typeorm_1.In)([feedFlagStatus_1.FeedFlagStatusStatusEnum.Active, feedFlagStatus_1.FeedFlagStatusStatusEnum.AlwaysParse])
181
+ feed_flag_status: (0, typeorm_1.In)([feedFlagStatus_1.FeedFlagStatusStatusEnum.Active, feedFlagStatus_1.FeedFlagStatusStatusEnum.AlwaysParse])
182
182
  }
183
183
  } }, config));
184
184
  });
@@ -205,5 +205,15 @@ class ChannelService {
205
205
  return this.repositoryReadWrite.save(channel);
206
206
  });
207
207
  }
208
+ updatePodcastIndexId(id, podcast_index_id) {
209
+ return __awaiter(this, void 0, void 0, function* () {
210
+ let channel = yield this.get(id);
211
+ if (!channel) {
212
+ channel = new channel_1.Channel();
213
+ }
214
+ channel = (0, applyProperties_1.applyProperties)(channel, { podcast_index_id });
215
+ return this.repositoryReadWrite.save(channel);
216
+ });
217
+ }
208
218
  }
209
219
  exports.ChannelService = ChannelService;
@@ -0,0 +1,17 @@
1
+ import { EntityManager } from 'typeorm';
2
+ import { Item } from '@orm/entities/item/item';
3
+ export declare class DeduplicatorService {
4
+ protected readWriteEntityManager: EntityManager;
5
+ constructor();
6
+ mergeChannels(id_to_archive: number, duplicate_id_to_keep: number): Promise<void>;
7
+ private updateAccountFollowingChannel;
8
+ private buildItemMaps;
9
+ private findDuplicateItem;
10
+ private updateClipAndPlaylistResource;
11
+ getChannelItems(channel_id: number): Promise<Item[]>;
12
+ getItemsForBothChannels(id_to_archive: number, duplicate_id_to_keep: number): Promise<{
13
+ itemsToArchive: Item[];
14
+ duplicateItemsToKeep: Item[];
15
+ }>;
16
+ }
17
+ //# sourceMappingURL=deduplicator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deduplicator.d.ts","sourceRoot":"","sources":["../../src/services/deduplicator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAIxC,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAG/C,qBAAa,mBAAmB;IAC9B,SAAS,CAAC,sBAAsB,EAAE,aAAa,CAAC;;IAM1C,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAczE,6BAA6B;IAS3C,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,iBAAiB;YAcX,6BAA6B;IAgBrC,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAOpD,uBAAuB,CAAC,aAAa,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,cAAc,EAAE,IAAI,EAAE,CAAC;QAAC,oBAAoB,EAAE,IAAI,EAAE,CAAA;KAAE,CAAC;CAKtJ"}
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.DeduplicatorService = void 0;
13
+ const db_1 = require("@orm/db");
14
+ const accountFollowingChannel_1 = require("@orm/entities/account/accountFollowingChannel");
15
+ const clip_1 = require("@orm/entities/clip");
16
+ const item_1 = require("@orm/entities/item/item");
17
+ const playlistResource_1 = require("@orm/entities/playlist/playlistResource");
18
+ class DeduplicatorService {
19
+ constructor() {
20
+ this.readWriteEntityManager = db_1.AppDataSourceReadWrite.manager;
21
+ }
22
+ mergeChannels(id_to_archive, duplicate_id_to_keep) {
23
+ return __awaiter(this, void 0, void 0, function* () {
24
+ yield this.updateAccountFollowingChannel(id_to_archive, duplicate_id_to_keep);
25
+ const { itemsToArchive, duplicateItemsToKeep } = yield this.getItemsForBothChannels(id_to_archive, duplicate_id_to_keep);
26
+ const { guidMap, guidEnclosureUrlMap } = this.buildItemMaps(duplicateItemsToKeep);
27
+ for (const itemToArchive of itemsToArchive) {
28
+ const duplicateItemToKeep = this.findDuplicateItem(itemToArchive, guidMap, guidEnclosureUrlMap);
29
+ if (duplicateItemToKeep) {
30
+ yield this.updateClipAndPlaylistResource(itemToArchive.id, duplicateItemToKeep.id);
31
+ }
32
+ }
33
+ });
34
+ }
35
+ updateAccountFollowingChannel(id_to_archive, duplicate_id_to_keep) {
36
+ return __awaiter(this, void 0, void 0, function* () {
37
+ yield this.readWriteEntityManager
38
+ .createQueryBuilder()
39
+ .update(accountFollowingChannel_1.AccountFollowingChannel)
40
+ .set({ channel_id: duplicate_id_to_keep })
41
+ .where("channel_id = :id_to_archive", { id_to_archive })
42
+ .execute();
43
+ });
44
+ }
45
+ buildItemMaps(items) {
46
+ const guidMap = new Map();
47
+ const guidEnclosureUrlMap = new Map();
48
+ for (const item of items) {
49
+ if (item.guid)
50
+ guidMap.set(item.guid, item);
51
+ if (item.guid_enclosure_url)
52
+ guidEnclosureUrlMap.set(item.guid_enclosure_url, item);
53
+ }
54
+ return { guidMap, guidEnclosureUrlMap };
55
+ }
56
+ findDuplicateItem(itemToArchive, guidMap, guidEnclosureUrlMap) {
57
+ if (itemToArchive.guid && guidMap.has(itemToArchive.guid)) {
58
+ return guidMap.get(itemToArchive.guid);
59
+ }
60
+ if (itemToArchive.guid_enclosure_url && guidEnclosureUrlMap.has(itemToArchive.guid_enclosure_url)) {
61
+ return guidEnclosureUrlMap.get(itemToArchive.guid_enclosure_url);
62
+ }
63
+ return undefined;
64
+ }
65
+ updateClipAndPlaylistResource(itemToArchiveId, duplicateItemToKeepId) {
66
+ return __awaiter(this, void 0, void 0, function* () {
67
+ yield this.readWriteEntityManager
68
+ .createQueryBuilder()
69
+ .update(clip_1.Clip)
70
+ .set({ item_id: duplicateItemToKeepId })
71
+ .where("item_id = :itemToArchiveId", { itemToArchiveId })
72
+ .execute();
73
+ yield this.readWriteEntityManager
74
+ .createQueryBuilder()
75
+ .update(playlistResource_1.PlaylistResource)
76
+ .set({ item_id: duplicateItemToKeepId })
77
+ .where("item_id = :itemToArchiveId", { itemToArchiveId })
78
+ .execute();
79
+ });
80
+ }
81
+ getChannelItems(channel_id) {
82
+ return __awaiter(this, void 0, void 0, function* () {
83
+ const items = yield this.readWriteEntityManager
84
+ .getRepository(item_1.Item)
85
+ .find({ where: { channel: { id: channel_id } } });
86
+ return items;
87
+ });
88
+ }
89
+ getItemsForBothChannels(id_to_archive, duplicate_id_to_keep) {
90
+ return __awaiter(this, void 0, void 0, function* () {
91
+ const itemsToArchive = yield this.getChannelItems(id_to_archive);
92
+ const duplicateItemsToKeep = yield this.getChannelItems(duplicate_id_to_keep);
93
+ return { itemsToArchive, duplicateItemsToKeep };
94
+ });
95
+ }
96
+ }
97
+ exports.DeduplicatorService = DeduplicatorService;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "podverse-orm",
3
- "version": "5.1.0-alpha.1",
3
+ "version": "5.1.0-alpha.10",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -18,7 +18,7 @@
18
18
  "dependencies": {
19
19
  "module-alias": "^2.2.3",
20
20
  "pg": "^8.12.0",
21
- "podverse-helpers": "^5.1.2-alpha.2",
21
+ "podverse-helpers": "^5.1.2-alpha.6",
22
22
  "shortid": "^2.2.16",
23
23
  "typeorm": "^0.3.20",
24
24
  "typeorm-naming-strategies": "^4.1.0"
@@ -27,7 +27,7 @@
27
27
  "@eslint/config-array": "^0.18.0",
28
28
  "@eslint/eslintrc": "^3.1.0",
29
29
  "@eslint/js": "^9.8.0",
30
- "@types/node": "^22.1.0",
30
+ "@types/node": "^22.0.0",
31
31
  "eslint": "^9.9.0",
32
32
  "nodemon": "^3.1.4",
33
33
  "ts-node": "^10.9.2",