@dxos/plugin-youtube 0.8.3
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/LICENSE +21 -0
- package/dist/lib/browser/ChannelArticle-CDQR4BBY.mjs +90 -0
- package/dist/lib/browser/ChannelArticle-CDQR4BBY.mjs.map +7 -0
- package/dist/lib/browser/ChannelSettings-ZYUNW3VS.mjs +28 -0
- package/dist/lib/browser/ChannelSettings-ZYUNW3VS.mjs.map +7 -0
- package/dist/lib/browser/VideoArticle-FC4A6E7B.mjs +76 -0
- package/dist/lib/browser/VideoArticle-FC4A6E7B.mjs.map +7 -0
- package/dist/lib/browser/VideoCard-CCPXDCB7.mjs +64 -0
- package/dist/lib/browser/VideoCard-CCPXDCB7.mjs.map +7 -0
- package/dist/lib/browser/app-graph-builder-MJY6A6SN.mjs +195 -0
- package/dist/lib/browser/app-graph-builder-MJY6A6SN.mjs.map +7 -0
- package/dist/lib/browser/blueprint-definition-FRYUYJ22.mjs +22 -0
- package/dist/lib/browser/blueprint-definition-FRYUYJ22.mjs.map +7 -0
- package/dist/lib/browser/blueprints/index.mjs +13 -0
- package/dist/lib/browser/blueprints/index.mjs.map +7 -0
- package/dist/lib/browser/chunk-C26XKDK2.mjs +355 -0
- package/dist/lib/browser/chunk-C26XKDK2.mjs.map +7 -0
- package/dist/lib/browser/chunk-DFRSBBSO.mjs +21 -0
- package/dist/lib/browser/chunk-DFRSBBSO.mjs.map +7 -0
- package/dist/lib/browser/chunk-GFRR4TTX.mjs +72 -0
- package/dist/lib/browser/chunk-GFRR4TTX.mjs.map +7 -0
- package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
- package/dist/lib/browser/chunk-J5LGTIGS.mjs.map +7 -0
- package/dist/lib/browser/chunk-MUE22YUM.mjs +57 -0
- package/dist/lib/browser/chunk-MUE22YUM.mjs.map +7 -0
- package/dist/lib/browser/chunk-P67QEKBQ.mjs +72 -0
- package/dist/lib/browser/chunk-P67QEKBQ.mjs.map +7 -0
- package/dist/lib/browser/chunk-YMDT37TA.mjs +62 -0
- package/dist/lib/browser/chunk-YMDT37TA.mjs.map +7 -0
- package/dist/lib/browser/chunk-Z3DGTMKC.mjs +8 -0
- package/dist/lib/browser/chunk-Z3DGTMKC.mjs.map +7 -0
- package/dist/lib/browser/clear-synced-videos-EVMJIZPD.mjs +66 -0
- package/dist/lib/browser/clear-synced-videos-EVMJIZPD.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +153 -0
- package/dist/lib/browser/index.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -0
- package/dist/lib/browser/react-surface-EDA5VYDC.mjs +77 -0
- package/dist/lib/browser/react-surface-EDA5VYDC.mjs.map +7 -0
- package/dist/lib/browser/sync-423Q4BDD.mjs +360 -0
- package/dist/lib/browser/sync-423Q4BDD.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +14 -0
- package/dist/lib/browser/types/index.mjs.map +7 -0
- package/dist/lib/node-esm/ChannelArticle-GQ64BO7V.mjs +91 -0
- package/dist/lib/node-esm/ChannelArticle-GQ64BO7V.mjs.map +7 -0
- package/dist/lib/node-esm/ChannelSettings-DM2HWNKO.mjs +29 -0
- package/dist/lib/node-esm/ChannelSettings-DM2HWNKO.mjs.map +7 -0
- package/dist/lib/node-esm/VideoArticle-WLTWZO3K.mjs +77 -0
- package/dist/lib/node-esm/VideoArticle-WLTWZO3K.mjs.map +7 -0
- package/dist/lib/node-esm/VideoCard-FOWQZK75.mjs +65 -0
- package/dist/lib/node-esm/VideoCard-FOWQZK75.mjs.map +7 -0
- package/dist/lib/node-esm/app-graph-builder-IU5TBAXN.mjs +196 -0
- package/dist/lib/node-esm/app-graph-builder-IU5TBAXN.mjs.map +7 -0
- package/dist/lib/node-esm/blueprint-definition-W264MZ3D.mjs +23 -0
- package/dist/lib/node-esm/blueprint-definition-W264MZ3D.mjs.map +7 -0
- package/dist/lib/node-esm/blueprints/index.mjs +14 -0
- package/dist/lib/node-esm/blueprints/index.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-5KNC2JMP.mjs +58 -0
- package/dist/lib/node-esm/chunk-5KNC2JMP.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-6BUJ2DQX.mjs +73 -0
- package/dist/lib/node-esm/chunk-6BUJ2DQX.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-CX6MV3QM.mjs +23 -0
- package/dist/lib/node-esm/chunk-CX6MV3QM.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-CZSLL3XQ.mjs +63 -0
- package/dist/lib/node-esm/chunk-CZSLL3XQ.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
- package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-JM5SBBP5.mjs +356 -0
- package/dist/lib/node-esm/chunk-JM5SBBP5.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-JSGRZMG3.mjs +73 -0
- package/dist/lib/node-esm/chunk-JSGRZMG3.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-M4S6BE47.mjs +10 -0
- package/dist/lib/node-esm/chunk-M4S6BE47.mjs.map +7 -0
- package/dist/lib/node-esm/clear-synced-videos-5UCH6XHL.mjs +67 -0
- package/dist/lib/node-esm/clear-synced-videos-5UCH6XHL.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +154 -0
- package/dist/lib/node-esm/index.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -0
- package/dist/lib/node-esm/react-surface-5DJAQPHJ.mjs +78 -0
- package/dist/lib/node-esm/react-surface-5DJAQPHJ.mjs.map +7 -0
- package/dist/lib/node-esm/sync-CEF5DX2J.mjs +361 -0
- package/dist/lib/node-esm/sync-CEF5DX2J.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +15 -0
- package/dist/lib/node-esm/types/index.mjs.map +7 -0
- package/dist/types/src/YouTubePlugin.d.ts +3 -0
- package/dist/types/src/YouTubePlugin.d.ts.map +1 -0
- package/dist/types/src/blueprints/index.d.ts +3 -0
- package/dist/types/src/blueprints/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/youtube.d.ts +4 -0
- package/dist/types/src/blueprints/youtube.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +6 -0
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts +3 -0
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +6 -0
- package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +1 -0
- package/dist/types/src/capabilities/blueprint-definition/index.d.ts +3 -0
- package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +4 -0
- package/dist/types/src/capabilities/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface/index.d.ts +3 -0
- package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts +5 -0
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
- package/dist/types/src/containers/ChannelArticle/ChannelArticle.d.ts +8 -0
- package/dist/types/src/containers/ChannelArticle/ChannelArticle.d.ts.map +1 -0
- package/dist/types/src/containers/ChannelArticle/index.d.ts +3 -0
- package/dist/types/src/containers/ChannelArticle/index.d.ts.map +1 -0
- package/dist/types/src/containers/ChannelSettings/ChannelSettings.d.ts +7 -0
- package/dist/types/src/containers/ChannelSettings/ChannelSettings.d.ts.map +1 -0
- package/dist/types/src/containers/ChannelSettings/index.d.ts +3 -0
- package/dist/types/src/containers/ChannelSettings/index.d.ts.map +1 -0
- package/dist/types/src/containers/VideoArticle/VideoArticle.d.ts +11 -0
- package/dist/types/src/containers/VideoArticle/VideoArticle.d.ts.map +1 -0
- package/dist/types/src/containers/VideoArticle/index.d.ts +3 -0
- package/dist/types/src/containers/VideoArticle/index.d.ts.map +1 -0
- package/dist/types/src/containers/VideoCard/VideoCard.d.ts +9 -0
- package/dist/types/src/containers/VideoCard/VideoCard.d.ts.map +1 -0
- package/dist/types/src/containers/VideoCard/index.d.ts +3 -0
- package/dist/types/src/containers/VideoCard/index.d.ts.map +1 -0
- package/dist/types/src/containers/index.d.ts +11 -0
- package/dist/types/src/containers/index.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +4 -0
- package/dist/types/src/index.d.ts.map +1 -0
- package/dist/types/src/meta.d.ts +3 -0
- package/dist/types/src/meta.d.ts.map +1 -0
- package/dist/types/src/operations/apis/index.d.ts +2 -0
- package/dist/types/src/operations/apis/index.d.ts.map +1 -0
- package/dist/types/src/operations/apis/youtube/api.d.ts +251 -0
- package/dist/types/src/operations/apis/youtube/api.d.ts.map +1 -0
- package/dist/types/src/operations/apis/youtube/index.d.ts +3 -0
- package/dist/types/src/operations/apis/youtube/index.d.ts.map +1 -0
- package/dist/types/src/operations/apis/youtube/types.d.ts +493 -0
- package/dist/types/src/operations/apis/youtube/types.d.ts.map +1 -0
- package/dist/types/src/operations/clear-synced-videos.d.ts +5 -0
- package/dist/types/src/operations/clear-synced-videos.d.ts.map +1 -0
- package/dist/types/src/operations/definitions.d.ts +45 -0
- package/dist/types/src/operations/definitions.d.ts.map +1 -0
- package/dist/types/src/operations/index.d.ts +5 -0
- package/dist/types/src/operations/index.d.ts.map +1 -0
- package/dist/types/src/operations/services/google-credentials.d.ts +35 -0
- package/dist/types/src/operations/services/google-credentials.d.ts.map +1 -0
- package/dist/types/src/operations/services/index.d.ts +2 -0
- package/dist/types/src/operations/services/index.d.ts.map +1 -0
- package/dist/types/src/operations/sync.d.ts +5 -0
- package/dist/types/src/operations/sync.d.ts.map +1 -0
- package/dist/types/src/operations/sync.test.d.ts +2 -0
- package/dist/types/src/operations/sync.test.d.ts.map +1 -0
- package/dist/types/src/operations/transcript.d.ts +12 -0
- package/dist/types/src/operations/transcript.d.ts.map +1 -0
- package/dist/types/src/translations.d.ts +49 -0
- package/dist/types/src/translations.d.ts.map +1 -0
- package/dist/types/src/types/Channel.d.ts +54 -0
- package/dist/types/src/types/Channel.d.ts.map +1 -0
- package/dist/types/src/types/Video.d.ts +41 -0
- package/dist/types/src/types/Video.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +4 -0
- package/dist/types/src/types/index.d.ts.map +1 -0
- package/dist/types/src/types/types.d.ts +5 -0
- package/dist/types/src/types/types.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -0
- package/package.json +113 -0
- package/src/YouTubePlugin.tsx +66 -0
- package/src/blueprints/index.ts +7 -0
- package/src/blueprints/youtube.ts +52 -0
- package/src/capabilities/app-graph-builder/app-graph-builder.ts +148 -0
- package/src/capabilities/app-graph-builder/index.ts +7 -0
- package/src/capabilities/blueprint-definition/blueprint-definition.ts +17 -0
- package/src/capabilities/blueprint-definition/index.ts +7 -0
- package/src/capabilities/index.ts +7 -0
- package/src/capabilities/react-surface/index.ts +7 -0
- package/src/capabilities/react-surface/react-surface.tsx +54 -0
- package/src/containers/ChannelArticle/ChannelArticle.tsx +115 -0
- package/src/containers/ChannelArticle/index.ts +7 -0
- package/src/containers/ChannelSettings/ChannelSettings.tsx +34 -0
- package/src/containers/ChannelSettings/index.ts +7 -0
- package/src/containers/VideoArticle/VideoArticle.tsx +109 -0
- package/src/containers/VideoArticle/index.ts +7 -0
- package/src/containers/VideoCard/VideoCard.tsx +86 -0
- package/src/containers/VideoCard/index.ts +7 -0
- package/src/containers/index.ts +24 -0
- package/src/index.ts +8 -0
- package/src/meta.ts +19 -0
- package/src/operations/apis/index.ts +5 -0
- package/src/operations/apis/youtube/api.ts +149 -0
- package/src/operations/apis/youtube/index.ts +6 -0
- package/src/operations/apis/youtube/types.ts +254 -0
- package/src/operations/clear-synced-videos.ts +50 -0
- package/src/operations/definitions.ts +62 -0
- package/src/operations/index.ts +13 -0
- package/src/operations/services/google-credentials.ts +81 -0
- package/src/operations/services/index.ts +5 -0
- package/src/operations/sync.test.ts +114 -0
- package/src/operations/sync.ts +309 -0
- package/src/operations/transcript.ts +47 -0
- package/src/translations.ts +59 -0
- package/src/types/Channel.ts +80 -0
- package/src/types/Video.ts +67 -0
- package/src/types/index.ts +8 -0
- package/src/types/types.ts +10 -0
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
Channel_exports
|
|
4
|
+
} from "./chunk-6BUJ2DQX.mjs";
|
|
5
|
+
import {
|
|
6
|
+
Video_exports
|
|
7
|
+
} from "./chunk-CZSLL3XQ.mjs";
|
|
8
|
+
|
|
9
|
+
// src/operations/definitions.ts
|
|
10
|
+
import { Operation } from "@dxos/operation";
|
|
11
|
+
import * as Schema from "effect/Schema";
|
|
12
|
+
import { Database, Feed, Ref } from "@dxos/echo";
|
|
13
|
+
import { CredentialsService } from "@dxos/functions";
|
|
14
|
+
var Sync = Operation.make({
|
|
15
|
+
meta: {
|
|
16
|
+
key: "dxos.org/function/youtube/sync",
|
|
17
|
+
name: "Sync YouTube Channel",
|
|
18
|
+
description: "Sync videos from a YouTube channel to the feed."
|
|
19
|
+
},
|
|
20
|
+
input: Schema.Struct({
|
|
21
|
+
channel: Ref.Ref(Channel_exports.YouTubeChannel).annotations({
|
|
22
|
+
description: "Reference to the YouTube channel to sync videos from."
|
|
23
|
+
}),
|
|
24
|
+
restrictedMode: Schema.Boolean.pipe(Schema.annotations({
|
|
25
|
+
description: "Use restricted mode to limit to max 20 videos. Reduces API calls. Useful for testing or quick syncs."
|
|
26
|
+
}), Schema.optional),
|
|
27
|
+
includeTranscripts: Schema.Boolean.pipe(Schema.annotations({
|
|
28
|
+
description: "Whether to fetch transcripts: Data API when your account can manage the video, otherwise watch-page captions (browser uses a public CORS proxy for YouTube fetches)."
|
|
29
|
+
}), Schema.optional)
|
|
30
|
+
}),
|
|
31
|
+
output: Schema.Struct({
|
|
32
|
+
newVideos: Schema.Number,
|
|
33
|
+
channelTitle: Schema.String.pipe(Schema.optional)
|
|
34
|
+
}),
|
|
35
|
+
types: [
|
|
36
|
+
Channel_exports.YouTubeChannel,
|
|
37
|
+
Video_exports.YouTubeVideo
|
|
38
|
+
],
|
|
39
|
+
services: [
|
|
40
|
+
Database.Service,
|
|
41
|
+
Feed.Service,
|
|
42
|
+
CredentialsService
|
|
43
|
+
]
|
|
44
|
+
});
|
|
45
|
+
var ClearSyncedVideos = Operation.make({
|
|
46
|
+
meta: {
|
|
47
|
+
key: "dxos.org/function/youtube/clear-synced-videos",
|
|
48
|
+
name: "Clear Synced YouTube Videos",
|
|
49
|
+
description: "Remove all synced videos from the channel by replacing its feed with a new empty feed."
|
|
50
|
+
},
|
|
51
|
+
input: Schema.Struct({
|
|
52
|
+
channel: Ref.Ref(Channel_exports.YouTubeChannel).annotations({
|
|
53
|
+
description: "Reference to the YouTube channel whose synced videos should be cleared."
|
|
54
|
+
})
|
|
55
|
+
}),
|
|
56
|
+
output: Schema.Struct({
|
|
57
|
+
removedVideos: Schema.Number
|
|
58
|
+
}),
|
|
59
|
+
types: [
|
|
60
|
+
Channel_exports.YouTubeChannel,
|
|
61
|
+
Video_exports.YouTubeVideo
|
|
62
|
+
],
|
|
63
|
+
services: [
|
|
64
|
+
Database.Service,
|
|
65
|
+
Feed.Service
|
|
66
|
+
]
|
|
67
|
+
});
|
|
68
|
+
|
|
69
|
+
export {
|
|
70
|
+
Sync,
|
|
71
|
+
ClearSyncedVideos
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=chunk-JSGRZMG3.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/operations/definitions.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Operation } from '@dxos/operation';\nimport * as Schema from 'effect/Schema';\n\nimport { Database, Feed, Ref } from '@dxos/echo';\nimport { CredentialsService } from '@dxos/functions';\n\nimport { Channel, Video } from '../types';\n\nexport const Sync = Operation.make({\n meta: {\n key: 'dxos.org/function/youtube/sync',\n name: 'Sync YouTube Channel',\n description: 'Sync videos from a YouTube channel to the feed.',\n },\n input: Schema.Struct({\n channel: Ref.Ref(Channel.YouTubeChannel).annotations({\n description: 'Reference to the YouTube channel to sync videos from.',\n }),\n restrictedMode: Schema.Boolean.pipe(\n Schema.annotations({\n description:\n 'Use restricted mode to limit to max 20 videos. Reduces API calls. Useful for testing or quick syncs.',\n }),\n Schema.optional,\n ),\n includeTranscripts: Schema.Boolean.pipe(\n Schema.annotations({\n description:\n 'Whether to fetch transcripts: Data API when your account can manage the video, otherwise watch-page captions (browser uses a public CORS proxy for YouTube fetches).',\n }),\n Schema.optional,\n ),\n }),\n output: Schema.Struct({\n newVideos: Schema.Number,\n channelTitle: Schema.String.pipe(Schema.optional),\n }),\n types: [Channel.YouTubeChannel, Video.YouTubeVideo],\n services: [Database.Service, Feed.Service, CredentialsService],\n});\n\nexport const ClearSyncedVideos = Operation.make({\n meta: {\n key: 'dxos.org/function/youtube/clear-synced-videos',\n name: 'Clear Synced YouTube Videos',\n description: 'Remove all synced videos from the channel by replacing its feed with a new empty feed.',\n },\n input: Schema.Struct({\n channel: Ref.Ref(Channel.YouTubeChannel).annotations({\n description: 'Reference to the YouTube channel whose synced videos should be cleared.',\n }),\n }),\n output: Schema.Struct({\n removedVideos: Schema.Number,\n }),\n types: [Channel.YouTubeChannel, Video.YouTubeVideo],\n services: [Database.Service, Feed.Service],\n});\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;AAIA,SAASA,iBAAiB;AAC1B,YAAYC,YAAY;AAExB,SAASC,UAAUC,MAAMC,WAAW;AACpC,SAASC,0BAA0B;AAI5B,IAAMC,OAAOC,UAAUC,KAAK;EACjCC,MAAM;IACJC,KAAK;IACLC,MAAM;IACNC,aAAa;EACf;EACAC,OAAcC,cAAO;IACnBC,SAASC,IAAIA,IAAIC,gBAAQC,cAAc,EAAEC,YAAY;MACnDP,aAAa;IACf,CAAA;IACAQ,gBAAuBC,eAAQC,KACtBH,mBAAY;MACjBP,aACE;IACJ,CAAA,GACOW,eAAQ;IAEjBC,oBAA2BH,eAAQC,KAC1BH,mBAAY;MACjBP,aACE;IACJ,CAAA,GACOW,eAAQ;EAEnB,CAAA;EACAE,QAAeX,cAAO;IACpBY,WAAkBC;IAClBC,cAAqBC,cAAOP,KAAYC,eAAQ;EAClD,CAAA;EACAO,OAAO;IAACb,gBAAQC;IAAgBa,cAAMC;;EACtCC,UAAU;IAACC,SAASC;IAASC,KAAKD;IAASE;;AAC7C,CAAA;AAEO,IAAMC,oBAAoB/B,UAAUC,KAAK;EAC9CC,MAAM;IACJC,KAAK;IACLC,MAAM;IACNC,aAAa;EACf;EACAC,OAAcC,cAAO;IACnBC,SAASC,IAAIA,IAAIC,gBAAQC,cAAc,EAAEC,YAAY;MACnDP,aAAa;IACf,CAAA;EACF,CAAA;EACAa,QAAeX,cAAO;IACpByB,eAAsBZ;EACxB,CAAA;EACAG,OAAO;IAACb,gBAAQC;IAAgBa,cAAMC;;EACtCC,UAAU;IAACC,SAASC;IAASC,KAAKD;;AACpC,CAAA;",
|
|
6
|
+
"names": ["Operation", "Schema", "Database", "Feed", "Ref", "CredentialsService", "Sync", "Operation", "make", "meta", "key", "name", "description", "input", "Struct", "channel", "Ref", "Channel", "YouTubeChannel", "annotations", "restrictedMode", "Boolean", "pipe", "optional", "includeTranscripts", "output", "newVideos", "Number", "channelTitle", "String", "types", "Video", "YouTubeVideo", "services", "Database", "Service", "Feed", "CredentialsService", "ClearSyncedVideos", "removedVideos"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
|
|
3
|
+
// src/operations/index.ts
|
|
4
|
+
import { OperationHandlerSet } from "@dxos/operation";
|
|
5
|
+
var YouTubeHandlers = OperationHandlerSet.lazy(() => import("./clear-synced-videos-5UCH6XHL.mjs"), () => import("./sync-CEF5DX2J.mjs"));
|
|
6
|
+
|
|
7
|
+
export {
|
|
8
|
+
YouTubeHandlers
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=chunk-M4S6BE47.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/operations/index.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { OperationHandlerSet } from '@dxos/operation';\n\nexport { YouTube } from './apis';\nexport * from './definitions';\n\nexport const YouTubeHandlers = OperationHandlerSet.lazy(\n () => import('./clear-synced-videos'),\n () => import('./sync'),\n);\n"],
|
|
5
|
+
"mappings": ";;;AAIA,SAASA,2BAA2B;AAK7B,IAAMC,kBAAkBC,oBAAoBC,KACjD,MAAM,OAAO,oCAAA,GACb,MAAM,OAAO,qBAAA,CAAA;",
|
|
6
|
+
"names": ["OperationHandlerSet", "YouTubeHandlers", "OperationHandlerSet", "lazy"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
ClearSyncedVideos
|
|
4
|
+
} from "./chunk-JSGRZMG3.mjs";
|
|
5
|
+
import "./chunk-6BUJ2DQX.mjs";
|
|
6
|
+
import {
|
|
7
|
+
Video_exports
|
|
8
|
+
} from "./chunk-CZSLL3XQ.mjs";
|
|
9
|
+
import "./chunk-HSLMI22Q.mjs";
|
|
10
|
+
|
|
11
|
+
// src/operations/clear-synced-videos.ts
|
|
12
|
+
import * as Effect from "effect/Effect";
|
|
13
|
+
import { Database, Feed, Filter, Obj, Ref } from "@dxos/echo";
|
|
14
|
+
import { log } from "@dxos/log";
|
|
15
|
+
import { Operation } from "@dxos/operation";
|
|
16
|
+
var __dxlog_file = "/Users/mykola/dev/dxos/packages/plugins/plugin-youtube/src/operations/clear-synced-videos.ts";
|
|
17
|
+
var handler = ClearSyncedVideos.pipe(Operation.withHandler(({ channel: channelRef }) => Effect.gen(function* () {
|
|
18
|
+
log("clearing youtube channel synced videos", {
|
|
19
|
+
channel: channelRef.dxn.toString()
|
|
20
|
+
}, {
|
|
21
|
+
F: __dxlog_file,
|
|
22
|
+
L: 18,
|
|
23
|
+
S: this,
|
|
24
|
+
C: (f, a) => f(...a)
|
|
25
|
+
});
|
|
26
|
+
const channel = yield* Database.load(channelRef);
|
|
27
|
+
const oldFeed = yield* Database.load(channel.feed);
|
|
28
|
+
const videos = yield* Feed.runQuery(oldFeed, Filter.type(Video_exports.YouTubeVideo));
|
|
29
|
+
log("removing synced videos", {
|
|
30
|
+
count: videos.length
|
|
31
|
+
}, {
|
|
32
|
+
F: __dxlog_file,
|
|
33
|
+
L: 23,
|
|
34
|
+
S: this,
|
|
35
|
+
C: (f, a) => f(...a)
|
|
36
|
+
});
|
|
37
|
+
const newFeed = Feed.make();
|
|
38
|
+
yield* Database.add(newFeed);
|
|
39
|
+
Obj.setParent(newFeed, channel);
|
|
40
|
+
Obj.change(channel, (mutable) => {
|
|
41
|
+
mutable.feed = Ref.make(newFeed);
|
|
42
|
+
delete mutable.lastSyncedAt;
|
|
43
|
+
});
|
|
44
|
+
if (videos.length > 0) {
|
|
45
|
+
yield* Feed.remove(oldFeed, videos);
|
|
46
|
+
}
|
|
47
|
+
for (const video of videos) {
|
|
48
|
+
yield* Database.remove(video);
|
|
49
|
+
}
|
|
50
|
+
yield* Database.remove(oldFeed);
|
|
51
|
+
log("replaced youtube channel feed", {
|
|
52
|
+
removedVideos: videos.length
|
|
53
|
+
}, {
|
|
54
|
+
F: __dxlog_file,
|
|
55
|
+
L: 44,
|
|
56
|
+
S: this,
|
|
57
|
+
C: (f, a) => f(...a)
|
|
58
|
+
});
|
|
59
|
+
return {
|
|
60
|
+
removedVideos: videos.length
|
|
61
|
+
};
|
|
62
|
+
})));
|
|
63
|
+
var clear_synced_videos_default = handler;
|
|
64
|
+
export {
|
|
65
|
+
clear_synced_videos_default as default
|
|
66
|
+
};
|
|
67
|
+
//# sourceMappingURL=clear-synced-videos-5UCH6XHL.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/operations/clear-synced-videos.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Database, Feed, Filter, Obj, Ref } from '@dxos/echo';\nimport { log } from '@dxos/log';\nimport { Operation } from '@dxos/operation';\n\nimport { Channel, Video } from '../types';\n\nimport { ClearSyncedVideos } from './definitions';\n\nconst handler: Operation.WithHandler<typeof ClearSyncedVideos> = ClearSyncedVideos.pipe(\n Operation.withHandler(({ channel: channelRef }) =>\n Effect.gen(function* () {\n log('clearing youtube channel synced videos', { channel: channelRef.dxn.toString() });\n const channel = (yield* Database.load(channelRef)) as Channel.YouTubeChannel;\n const oldFeed = yield* Database.load(channel.feed as Ref.Ref<Feed.Feed>);\n\n const videos = yield* Feed.runQuery(oldFeed, Filter.type(Video.YouTubeVideo));\n log('removing synced videos', { count: videos.length });\n\n const newFeed = Feed.make();\n yield* Database.add(newFeed);\n Obj.setParent(newFeed, channel);\n\n Obj.change(channel, (mutable) => {\n mutable.feed = Ref.make(newFeed);\n delete mutable.lastSyncedAt;\n });\n\n if (videos.length > 0) {\n yield* Feed.remove(oldFeed, videos);\n }\n\n for (const video of videos) {\n yield* Database.remove(video);\n }\n\n yield* Database.remove(oldFeed);\n\n log('replaced youtube channel feed', { removedVideos: videos.length });\n return { removedVideos: videos.length };\n }),\n ),\n);\n\nexport default handler;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,UAAUC,MAAMC,QAAQC,KAAKC,WAAW;AACjD,SAASC,WAAW;AACpB,SAASC,iBAAiB;;AAM1B,IAAMC,UAA2DC,kBAAkBC,KACjFC,UAAUC,YAAY,CAAC,EAAEC,SAASC,WAAU,MACnCC,WAAI,aAAA;AACTC,MAAI,0CAA0C;IAAEH,SAASC,WAAWG,IAAIC,SAAQ;EAAG,GAAA;;;;;;AACnF,QAAML,UAAW,OAAOM,SAASC,KAAKN,UAAAA;AACtC,QAAMO,UAAU,OAAOF,SAASC,KAAKP,QAAQS,IAAI;AAEjD,QAAMC,SAAS,OAAOC,KAAKC,SAASJ,SAASK,OAAOC,KAAKC,cAAMC,YAAY,CAAA;AAC3Eb,MAAI,0BAA0B;IAAEc,OAAOP,OAAOQ;EAAO,GAAA;;;;;;AAErD,QAAMC,UAAUR,KAAKS,KAAI;AACzB,SAAOd,SAASe,IAAIF,OAAAA;AACpBG,MAAIC,UAAUJ,SAASnB,OAAAA;AAEvBsB,MAAIE,OAAOxB,SAAS,CAACyB,YAAAA;AACnBA,YAAQhB,OAAOiB,IAAIN,KAAKD,OAAAA;AACxB,WAAOM,QAAQE;EACjB,CAAA;AAEA,MAAIjB,OAAOQ,SAAS,GAAG;AACrB,WAAOP,KAAKiB,OAAOpB,SAASE,MAAAA;EAC9B;AAEA,aAAWmB,SAASnB,QAAQ;AAC1B,WAAOJ,SAASsB,OAAOC,KAAAA;EACzB;AAEA,SAAOvB,SAASsB,OAAOpB,OAAAA;AAEvBL,MAAI,iCAAiC;IAAE2B,eAAepB,OAAOQ;EAAO,GAAA;;;;;;AACpE,SAAO;IAAEY,eAAepB,OAAOQ;EAAO;AACxC,CAAA,CAAA,CAAA;AAIJ,IAAA,8BAAevB;",
|
|
6
|
+
"names": ["Effect", "Database", "Feed", "Filter", "Obj", "Ref", "log", "Operation", "handler", "ClearSyncedVideos", "pipe", "Operation", "withHandler", "channel", "channelRef", "gen", "log", "dxn", "toString", "Database", "load", "oldFeed", "feed", "videos", "Feed", "runQuery", "Filter", "type", "Video", "YouTubeVideo", "count", "length", "newFeed", "make", "add", "Obj", "setParent", "change", "mutable", "Ref", "lastSyncedAt", "remove", "video", "removedVideos"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
meta
|
|
4
|
+
} from "./chunk-CX6MV3QM.mjs";
|
|
5
|
+
import {
|
|
6
|
+
youtube_default
|
|
7
|
+
} from "./chunk-5KNC2JMP.mjs";
|
|
8
|
+
import {
|
|
9
|
+
YouTubeHandlers
|
|
10
|
+
} from "./chunk-M4S6BE47.mjs";
|
|
11
|
+
import {
|
|
12
|
+
youtube_exports
|
|
13
|
+
} from "./chunk-JM5SBBP5.mjs";
|
|
14
|
+
import {
|
|
15
|
+
ClearSyncedVideos,
|
|
16
|
+
Sync
|
|
17
|
+
} from "./chunk-JSGRZMG3.mjs";
|
|
18
|
+
import {
|
|
19
|
+
Channel_exports
|
|
20
|
+
} from "./chunk-6BUJ2DQX.mjs";
|
|
21
|
+
import {
|
|
22
|
+
Video_exports
|
|
23
|
+
} from "./chunk-CZSLL3XQ.mjs";
|
|
24
|
+
import "./chunk-HSLMI22Q.mjs";
|
|
25
|
+
|
|
26
|
+
// src/YouTubePlugin.tsx
|
|
27
|
+
import * as Effect from "effect/Effect";
|
|
28
|
+
import * as Option from "effect/Option";
|
|
29
|
+
import { ActivationEvent, Plugin } from "@dxos/app-framework";
|
|
30
|
+
import { AppActivationEvents, AppPlugin } from "@dxos/app-toolkit";
|
|
31
|
+
import { Annotation } from "@dxos/echo";
|
|
32
|
+
import { Operation } from "@dxos/operation";
|
|
33
|
+
import { AttentionEvents } from "@dxos/plugin-attention";
|
|
34
|
+
import { SpaceOperation } from "@dxos/plugin-space/operations";
|
|
35
|
+
|
|
36
|
+
// src/capabilities/app-graph-builder/index.ts
|
|
37
|
+
import { Capability } from "@dxos/app-framework";
|
|
38
|
+
var AppGraphBuilder = Capability.lazy("AppGraphBuilder", () => import("./app-graph-builder-IU5TBAXN.mjs"));
|
|
39
|
+
|
|
40
|
+
// src/capabilities/blueprint-definition/index.ts
|
|
41
|
+
import { Capability as Capability2 } from "@dxos/app-framework";
|
|
42
|
+
var BlueprintDefinition = Capability2.lazy("BlueprintDefinition", () => import("./blueprint-definition-W264MZ3D.mjs"));
|
|
43
|
+
|
|
44
|
+
// src/capabilities/react-surface/index.ts
|
|
45
|
+
import { Capability as Capability3 } from "@dxos/app-framework";
|
|
46
|
+
var ReactSurface = Capability3.lazy("ReactSurface", () => import("./react-surface-5DJAQPHJ.mjs"));
|
|
47
|
+
|
|
48
|
+
// src/translations.ts
|
|
49
|
+
var translations = [
|
|
50
|
+
{
|
|
51
|
+
"en-US": {
|
|
52
|
+
[Channel_exports.YouTubeChannel.typename]: {
|
|
53
|
+
"typename label": "YouTube Channel",
|
|
54
|
+
"typename label_zero": "YouTube Channels",
|
|
55
|
+
"typename label_one": "YouTube Channel",
|
|
56
|
+
"typename label_other": "YouTube Channels",
|
|
57
|
+
"object name placeholder": "New YouTube channel",
|
|
58
|
+
"add object label": "Add YouTube channel",
|
|
59
|
+
"rename object label": "Rename YouTube channel",
|
|
60
|
+
"delete object label": "Delete YouTube channel",
|
|
61
|
+
"object deleted label": "YouTube channel deleted"
|
|
62
|
+
},
|
|
63
|
+
[Video_exports.YouTubeVideo.typename]: {
|
|
64
|
+
"typename label": "Video",
|
|
65
|
+
"typename label_zero": "Videos",
|
|
66
|
+
"typename label_one": "Video",
|
|
67
|
+
"typename label_other": "Videos",
|
|
68
|
+
"object name placeholder": "New video",
|
|
69
|
+
"add object label": "Add video",
|
|
70
|
+
"rename object label": "Rename video",
|
|
71
|
+
"delete object label": "Delete video",
|
|
72
|
+
"object deleted label": "Video deleted"
|
|
73
|
+
},
|
|
74
|
+
[meta.id]: {
|
|
75
|
+
"plugin name": "YouTube",
|
|
76
|
+
"channel label": "YouTube Channel",
|
|
77
|
+
"video label": "Video",
|
|
78
|
+
"sync channel label": "Sync channel",
|
|
79
|
+
"sync channel error title": "Failed to sync channel",
|
|
80
|
+
"clear synced videos label": "Clear synced videos",
|
|
81
|
+
"clear synced videos error title": "Failed to clear synced videos",
|
|
82
|
+
"close label": "Close",
|
|
83
|
+
"new channel label": "New YouTube Channel",
|
|
84
|
+
"empty channel message": "No videos synced yet",
|
|
85
|
+
"no video message": "Select a video to view it",
|
|
86
|
+
"channel account label": "Account",
|
|
87
|
+
"channel account placeholder": "Select account...",
|
|
88
|
+
"channel sync label": "Channel Sync",
|
|
89
|
+
"enable background sync label": "Enable background sync",
|
|
90
|
+
"enabling background sync label": "Enabling...",
|
|
91
|
+
"disable background sync label": "Disable background sync",
|
|
92
|
+
"view trigger label": "View trigger"
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
];
|
|
97
|
+
|
|
98
|
+
// src/YouTubePlugin.tsx
|
|
99
|
+
var YouTubePlugin = Plugin.define(meta).pipe(AppPlugin.addAppGraphModule({
|
|
100
|
+
activatesOn: ActivationEvent.allOf(AppActivationEvents.SetupAppGraph, AttentionEvents.AttentionReady),
|
|
101
|
+
activate: AppGraphBuilder
|
|
102
|
+
}), AppPlugin.addBlueprintDefinitionModule({
|
|
103
|
+
activate: BlueprintDefinition
|
|
104
|
+
}), AppPlugin.addMetadataModule({
|
|
105
|
+
metadata: [
|
|
106
|
+
{
|
|
107
|
+
id: Channel_exports.YouTubeChannel.typename,
|
|
108
|
+
metadata: {
|
|
109
|
+
label: (object) => object.name ?? object.channelUrl ?? object.channelId ?? "YouTube",
|
|
110
|
+
icon: Annotation.IconAnnotation.get(Channel_exports.YouTubeChannel).pipe(Option.getOrThrow).icon,
|
|
111
|
+
iconHue: Annotation.IconAnnotation.get(Channel_exports.YouTubeChannel).pipe(Option.getOrThrow).hue ?? "white",
|
|
112
|
+
blueprints: [
|
|
113
|
+
youtube_default.key
|
|
114
|
+
],
|
|
115
|
+
inputSchema: Channel_exports.CreateYouTubeChannelSchema,
|
|
116
|
+
createObject: (props, options) => Effect.gen(function* () {
|
|
117
|
+
const object = Channel_exports.make(props);
|
|
118
|
+
return yield* Operation.invoke(SpaceOperation.AddObject, {
|
|
119
|
+
object,
|
|
120
|
+
target: options.target,
|
|
121
|
+
hidden: true,
|
|
122
|
+
targetNodeId: options.targetNodeId
|
|
123
|
+
});
|
|
124
|
+
})
|
|
125
|
+
}
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
id: Video_exports.YouTubeVideo.typename,
|
|
129
|
+
metadata: {
|
|
130
|
+
label: (object) => object.title,
|
|
131
|
+
icon: Annotation.IconAnnotation.get(Video_exports.YouTubeVideo).pipe(Option.getOrThrow).icon,
|
|
132
|
+
iconHue: Annotation.IconAnnotation.get(Video_exports.YouTubeVideo).pipe(Option.getOrThrow).hue ?? "white"
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
]
|
|
136
|
+
}), AppPlugin.addSchemaModule({
|
|
137
|
+
schema: [
|
|
138
|
+
Channel_exports.YouTubeChannel,
|
|
139
|
+
Video_exports.YouTubeVideo
|
|
140
|
+
]
|
|
141
|
+
}), AppPlugin.addSurfaceModule({
|
|
142
|
+
activate: ReactSurface
|
|
143
|
+
}), AppPlugin.addTranslationsModule({
|
|
144
|
+
translations
|
|
145
|
+
}), Plugin.make);
|
|
146
|
+
export {
|
|
147
|
+
ClearSyncedVideos,
|
|
148
|
+
Sync,
|
|
149
|
+
youtube_exports as YouTube,
|
|
150
|
+
YouTubeHandlers,
|
|
151
|
+
YouTubePlugin,
|
|
152
|
+
meta
|
|
153
|
+
};
|
|
154
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/YouTubePlugin.tsx", "../../../src/capabilities/app-graph-builder/index.ts", "../../../src/capabilities/blueprint-definition/index.ts", "../../../src/capabilities/react-surface/index.ts", "../../../src/translations.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Option from 'effect/Option';\n\nimport { ActivationEvent, Plugin } from '@dxos/app-framework';\nimport { AppActivationEvents, AppPlugin } from '@dxos/app-toolkit';\nimport { Annotation } from '@dxos/echo';\nimport { Operation } from '@dxos/operation';\nimport { AttentionEvents } from '@dxos/plugin-attention';\nimport { type CreateObject } from '@dxos/plugin-space/types';\nimport { SpaceOperation } from '@dxos/plugin-space/operations';\n\nimport { YouTubeBlueprint } from './blueprints';\nimport { AppGraphBuilder, BlueprintDefinition, ReactSurface } from './capabilities';\nimport { meta } from './meta';\nimport { translations } from './translations';\nimport { Channel, Video } from './types';\n\nexport const YouTubePlugin = Plugin.define(meta).pipe(\n AppPlugin.addAppGraphModule({\n activatesOn: ActivationEvent.allOf(AppActivationEvents.SetupAppGraph, AttentionEvents.AttentionReady),\n activate: AppGraphBuilder,\n }),\n AppPlugin.addBlueprintDefinitionModule({ activate: BlueprintDefinition }),\n AppPlugin.addMetadataModule({\n metadata: [\n {\n id: Channel.YouTubeChannel.typename,\n metadata: {\n label: (object: Channel.YouTubeChannel) => object.name ?? object.channelUrl ?? object.channelId ?? 'YouTube',\n icon: Annotation.IconAnnotation.get(Channel.YouTubeChannel).pipe(Option.getOrThrow).icon,\n iconHue: Annotation.IconAnnotation.get(Channel.YouTubeChannel).pipe(Option.getOrThrow).hue ?? 'white',\n blueprints: [YouTubeBlueprint.key],\n inputSchema: Channel.CreateYouTubeChannelSchema,\n createObject: ((props, options) =>\n Effect.gen(function* () {\n const object = Channel.make(props);\n return yield* Operation.invoke(SpaceOperation.AddObject, {\n object,\n target: options.target,\n hidden: true,\n targetNodeId: options.targetNodeId,\n });\n })) satisfies CreateObject,\n },\n },\n {\n id: Video.YouTubeVideo.typename,\n metadata: {\n label: (object: Video.YouTubeVideo) => object.title,\n icon: Annotation.IconAnnotation.get(Video.YouTubeVideo).pipe(Option.getOrThrow).icon,\n iconHue: Annotation.IconAnnotation.get(Video.YouTubeVideo).pipe(Option.getOrThrow).hue ?? 'white',\n },\n },\n ],\n }),\n AppPlugin.addSchemaModule({\n schema: [Channel.YouTubeChannel, Video.YouTubeVideo],\n }),\n AppPlugin.addSurfaceModule({ activate: ReactSurface }),\n AppPlugin.addTranslationsModule({ translations }),\n Plugin.make,\n);\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\n\nexport const AppGraphBuilder = Capability.lazy('AppGraphBuilder', () => import('./app-graph-builder'));\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\n\nexport const BlueprintDefinition = Capability.lazy('BlueprintDefinition', () => import('./blueprint-definition'));\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\n\nexport const ReactSurface = Capability.lazy('ReactSurface', () => import('./react-surface'));\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { type Resource } from '@dxos/react-ui';\n\nimport { meta } from './meta';\nimport { Channel, Video } from './types';\n\nexport const translations = [\n {\n 'en-US': {\n [Channel.YouTubeChannel.typename]: {\n 'typename label': 'YouTube Channel',\n 'typename label_zero': 'YouTube Channels',\n 'typename label_one': 'YouTube Channel',\n 'typename label_other': 'YouTube Channels',\n 'object name placeholder': 'New YouTube channel',\n 'add object label': 'Add YouTube channel',\n 'rename object label': 'Rename YouTube channel',\n 'delete object label': 'Delete YouTube channel',\n 'object deleted label': 'YouTube channel deleted',\n },\n [Video.YouTubeVideo.typename]: {\n 'typename label': 'Video',\n 'typename label_zero': 'Videos',\n 'typename label_one': 'Video',\n 'typename label_other': 'Videos',\n 'object name placeholder': 'New video',\n 'add object label': 'Add video',\n 'rename object label': 'Rename video',\n 'delete object label': 'Delete video',\n 'object deleted label': 'Video deleted',\n },\n [meta.id]: {\n 'plugin name': 'YouTube',\n 'channel label': 'YouTube Channel',\n 'video label': 'Video',\n 'sync channel label': 'Sync channel',\n 'sync channel error title': 'Failed to sync channel',\n 'clear synced videos label': 'Clear synced videos',\n 'clear synced videos error title': 'Failed to clear synced videos',\n 'close label': 'Close',\n 'new channel label': 'New YouTube Channel',\n 'empty channel message': 'No videos synced yet',\n 'no video message': 'Select a video to view it',\n\n 'channel account label': 'Account',\n 'channel account placeholder': 'Select account...',\n 'channel sync label': 'Channel Sync',\n\n 'enable background sync label': 'Enable background sync',\n 'enabling background sync label': 'Enabling...',\n 'disable background sync label': 'Disable background sync',\n 'view trigger label': 'View trigger',\n },\n },\n },\n] as const satisfies Resource[];\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,YAAYA,YAAY;AACxB,YAAYC,YAAY;AAExB,SAASC,iBAAiBC,cAAc;AACxC,SAASC,qBAAqBC,iBAAiB;AAC/C,SAASC,kBAAkB;AAC3B,SAASC,iBAAiB;AAC1B,SAASC,uBAAuB;AAEhC,SAASC,sBAAsB;;;ACT/B,SAASC,kBAAkB;AAEpB,IAAMC,kBAAkBC,WAAWC,KAAK,mBAAmB,MAAM,OAAO,kCAAA,CAAA;;;ACF/E,SAASC,cAAAA,mBAAkB;AAEpB,IAAMC,sBAAsBC,YAAWC,KAAK,uBAAuB,MAAM,OAAO,qCAAA,CAAA;;;ACFvF,SAASC,cAAAA,mBAAkB;AAEpB,IAAMC,eAAeC,YAAWC,KAAK,gBAAgB,MAAM,OAAO,8BAAA,CAAA;;;ACGlE,IAAMC,eAAe;EAC1B;IACE,SAAS;MACP,CAACC,gBAAQC,eAAeC,QAAQ,GAAG;QACjC,kBAAkB;QAClB,uBAAuB;QACvB,sBAAsB;QACtB,wBAAwB;QACxB,2BAA2B;QAC3B,oBAAoB;QACpB,uBAAuB;QACvB,uBAAuB;QACvB,wBAAwB;MAC1B;MACA,CAACC,cAAMC,aAAaF,QAAQ,GAAG;QAC7B,kBAAkB;QAClB,uBAAuB;QACvB,sBAAsB;QACtB,wBAAwB;QACxB,2BAA2B;QAC3B,oBAAoB;QACpB,uBAAuB;QACvB,uBAAuB;QACvB,wBAAwB;MAC1B;MACA,CAACG,KAAKC,EAAE,GAAG;QACT,eAAe;QACf,iBAAiB;QACjB,eAAe;QACf,sBAAsB;QACtB,4BAA4B;QAC5B,6BAA6B;QAC7B,mCAAmC;QACnC,eAAe;QACf,qBAAqB;QACrB,yBAAyB;QACzB,oBAAoB;QAEpB,yBAAyB;QACzB,+BAA+B;QAC/B,sBAAsB;QAEtB,gCAAgC;QAChC,kCAAkC;QAClC,iCAAiC;QACjC,sBAAsB;MACxB;IACF;EACF;;;;AJpCK,IAAMC,gBAAgBC,OAAOC,OAAOC,IAAAA,EAAMC,KAC/CC,UAAUC,kBAAkB;EAC1BC,aAAaC,gBAAgBC,MAAMC,oBAAoBC,eAAeC,gBAAgBC,cAAc;EACpGC,UAAUC;AACZ,CAAA,GACAV,UAAUW,6BAA6B;EAAEF,UAAUG;AAAoB,CAAA,GACvEZ,UAAUa,kBAAkB;EAC1BC,UAAU;IACR;MACEC,IAAIC,gBAAQC,eAAeC;MAC3BJ,UAAU;QACRK,OAAO,CAACC,WAAmCA,OAAOC,QAAQD,OAAOE,cAAcF,OAAOG,aAAa;QACnGC,MAAMC,WAAWC,eAAeC,IAAIX,gBAAQC,cAAc,EAAElB,KAAY6B,iBAAU,EAAEJ;QACpFK,SAASJ,WAAWC,eAAeC,IAAIX,gBAAQC,cAAc,EAAElB,KAAY6B,iBAAU,EAAEE,OAAO;QAC9FC,YAAY;UAACC,gBAAiBC;;QAC9BC,aAAalB,gBAAQmB;QACrBC,cAAe,CAACC,OAAOC,YACdC,WAAI,aAAA;AACT,gBAAMnB,SAASJ,gBAAQwB,KAAKH,KAAAA;AAC5B,iBAAO,OAAOI,UAAUC,OAAOC,eAAeC,WAAW;YACvDxB;YACAyB,QAAQP,QAAQO;YAChBC,QAAQ;YACRC,cAAcT,QAAQS;UACxB,CAAA;QACF,CAAA;MACJ;IACF;IACA;MACEhC,IAAIiC,cAAMC,aAAa/B;MACvBJ,UAAU;QACRK,OAAO,CAACC,WAA+BA,OAAO8B;QAC9C1B,MAAMC,WAAWC,eAAeC,IAAIqB,cAAMC,YAAY,EAAElD,KAAY6B,iBAAU,EAAEJ;QAChFK,SAASJ,WAAWC,eAAeC,IAAIqB,cAAMC,YAAY,EAAElD,KAAY6B,iBAAU,EAAEE,OAAO;MAC5F;IACF;;AAEJ,CAAA,GACA9B,UAAUmD,gBAAgB;EACxBC,QAAQ;IAACpC,gBAAQC;IAAgB+B,cAAMC;;AACzC,CAAA,GACAjD,UAAUqD,iBAAiB;EAAE5C,UAAU6C;AAAa,CAAA,GACpDtD,UAAUuD,sBAAsB;EAAEC;AAAa,CAAA,GAC/C5D,OAAO4C,IAAI;",
|
|
6
|
+
"names": ["Effect", "Option", "ActivationEvent", "Plugin", "AppActivationEvents", "AppPlugin", "Annotation", "Operation", "AttentionEvents", "SpaceOperation", "Capability", "AppGraphBuilder", "Capability", "lazy", "Capability", "BlueprintDefinition", "Capability", "lazy", "Capability", "ReactSurface", "Capability", "lazy", "translations", "Channel", "YouTubeChannel", "typename", "Video", "YouTubeVideo", "meta", "id", "YouTubePlugin", "Plugin", "define", "meta", "pipe", "AppPlugin", "addAppGraphModule", "activatesOn", "ActivationEvent", "allOf", "AppActivationEvents", "SetupAppGraph", "AttentionEvents", "AttentionReady", "activate", "AppGraphBuilder", "addBlueprintDefinitionModule", "BlueprintDefinition", "addMetadataModule", "metadata", "id", "Channel", "YouTubeChannel", "typename", "label", "object", "name", "channelUrl", "channelId", "icon", "Annotation", "IconAnnotation", "get", "getOrThrow", "iconHue", "hue", "blueprints", "YouTubeBlueprint", "key", "inputSchema", "CreateYouTubeChannelSchema", "createObject", "props", "options", "gen", "make", "Operation", "invoke", "SpaceOperation", "AddObject", "target", "hidden", "targetNodeId", "Video", "YouTubeVideo", "title", "addSchemaModule", "schema", "addSurfaceModule", "ReactSurface", "addTranslationsModule", "translations"]
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"inputs":{"src/meta.ts":{"bytes":1822,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/operations/services/google-credentials.ts":{"bytes":8745,"imports":[{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/operations/apis/youtube/types.ts":{"bytes":23707,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true}],"format":"esm"},"src/operations/apis/youtube/api.ts":{"bytes":17186,"imports":[{"path":"@effect/platform/HttpClient","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClientRequest","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schedule","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/operations/services/google-credentials.ts","kind":"import-statement","original":"../../services/google-credentials"},{"path":"src/operations/apis/youtube/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/operations/apis/youtube/index.ts":{"bytes":562,"imports":[{"path":"src/operations/apis/youtube/api.ts","kind":"import-statement","original":"./api"},{"path":"src/operations/apis/youtube/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/operations/apis/index.ts":{"bytes":540,"imports":[{"path":"src/operations/apis/youtube/index.ts","kind":"import-statement","original":"./youtube"}],"format":"esm"},"src/types/types.ts":{"bytes":814,"imports":[],"format":"esm"},"src/types/Channel.ts":{"bytes":8955,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/types","kind":"import-statement","external":true}],"format":"esm"},"src/types/Video.ts":{"bytes":7281,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true}],"format":"esm"},"src/types/index.ts":{"bytes":749,"imports":[{"path":"src/types/types.ts","kind":"import-statement","original":"./types"},{"path":"src/types/Channel.ts","kind":"import-statement","original":"./Channel"},{"path":"src/types/Video.ts","kind":"import-statement","original":"./Video"}],"format":"esm"},"src/operations/definitions.ts":{"bytes":7475,"imports":[{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"src/operations/clear-synced-videos.ts":{"bytes":6185,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"src/types/index.ts","kind":"import-statement","original":"../types"},{"path":"src/operations/definitions.ts","kind":"import-statement","original":"./definitions"}],"format":"esm"},"src/operations/transcript.ts":{"bytes":5127,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"youtube-caption-extractor","kind":"dynamic-import","external":true}],"format":"esm"},"src/operations/sync.ts":{"bytes":38146,"imports":[{"path":"@effect/platform/FetchHttpClient","kind":"import-statement","external":true},{"path":"effect/Chunk","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Function","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"effect/Predicate","kind":"import-statement","external":true},{"path":"effect/Stream","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"src/types/index.ts","kind":"import-statement","original":"../types"},{"path":"src/operations/apis/index.ts","kind":"import-statement","original":"./apis"},{"path":"src/operations/definitions.ts","kind":"import-statement","original":"./definitions"},{"path":"src/operations/services/google-credentials.ts","kind":"import-statement","original":"./services/google-credentials"},{"path":"src/operations/transcript.ts","kind":"import-statement","original":"./transcript"}],"format":"esm"},"src/operations/index.ts":{"bytes":1261,"imports":[{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"src/operations/apis/index.ts","kind":"import-statement","original":"./apis"},{"path":"src/operations/definitions.ts","kind":"import-statement","original":"./definitions"},{"path":"src/operations/clear-synced-videos.ts","kind":"dynamic-import","original":"./clear-synced-videos"},{"path":"src/operations/sync.ts","kind":"dynamic-import","original":"./sync"}],"format":"esm"},"src/blueprints/youtube.ts":{"bytes":5249,"imports":[{"path":"@dxos/blueprints","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/operations/index.ts","kind":"import-statement","original":"../operations"}],"format":"esm"},"src/blueprints/index.ts":{"bytes":648,"imports":[{"path":"src/blueprints/youtube.ts","kind":"import-statement","original":"./youtube"}],"format":"esm"},"src/capabilities/app-graph-builder/app-graph-builder.ts":{"bytes":23196,"imports":[{"path":"@effect-atom/atom-react","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-atom","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention","kind":"import-statement","external":true},{"path":"@dxos/plugin-automation","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"src/operations/index.ts","kind":"import-statement","original":"../../operations"},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/types/index.ts","kind":"import-statement","original":"../../types"}],"format":"esm"},"src/capabilities/app-graph-builder/index.ts":{"bytes":953,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/app-graph-builder/app-graph-builder.ts","kind":"dynamic-import","original":"./app-graph-builder"}],"format":"esm"},"src/capabilities/blueprint-definition/blueprint-definition.ts":{"bytes":1998,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"src/blueprints/index.ts","kind":"import-statement","original":"../../blueprints"}],"format":"esm"},"src/capabilities/blueprint-definition/index.ts":{"bytes":987,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/blueprint-definition/blueprint-definition.ts","kind":"dynamic-import","original":"./blueprint-definition"}],"format":"esm"},"src/containers/ChannelArticle/ChannelArticle.tsx":{"bytes":14202,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"src/types/Video.ts","kind":"import-statement","original":"../../types/Video"}],"format":"esm"},"src/containers/ChannelArticle/index.ts":{"bytes":686,"imports":[{"path":"src/containers/ChannelArticle/ChannelArticle.tsx","kind":"import-statement","original":"./ChannelArticle"}],"format":"esm"},"src/containers/ChannelSettings/ChannelSettings.tsx":{"bytes":4207,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"src/containers/ChannelSettings/index.ts":{"bytes":698,"imports":[{"path":"src/containers/ChannelSettings/ChannelSettings.tsx","kind":"import-statement","original":"./ChannelSettings"}],"format":"esm"},"src/containers/VideoArticle/VideoArticle.tsx":{"bytes":12805,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"format":"esm"},"src/containers/VideoArticle/index.ts":{"bytes":666,"imports":[{"path":"src/containers/VideoArticle/VideoArticle.tsx","kind":"import-statement","original":"./VideoArticle"}],"format":"esm"},"src/containers/VideoCard/VideoCard.tsx":{"bytes":10588,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"format":"esm"},"src/containers/VideoCard/index.ts":{"bytes":634,"imports":[{"path":"src/containers/VideoCard/VideoCard.tsx","kind":"import-statement","original":"./VideoCard"}],"format":"esm"},"src/containers/index.ts":{"bytes":2391,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"src/containers/ChannelArticle/index.ts","kind":"dynamic-import","original":"./ChannelArticle"},{"path":"src/containers/ChannelSettings/index.ts","kind":"dynamic-import","original":"./ChannelSettings"},{"path":"src/containers/VideoArticle/index.ts","kind":"dynamic-import","original":"./VideoArticle"},{"path":"src/containers/VideoCard/index.ts","kind":"dynamic-import","original":"./VideoCard"}],"format":"esm"},"src/capabilities/react-surface/react-surface.tsx":{"bytes":7794,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"src/containers/index.ts","kind":"import-statement","original":"../../containers"},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/types/index.ts","kind":"import-statement","original":"../../types"}],"format":"esm"},"src/capabilities/react-surface/index.ts":{"bytes":919,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/react-surface/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"src/capabilities/index.ts":{"bytes":725,"imports":[{"path":"src/capabilities/app-graph-builder/index.ts","kind":"import-statement","original":"./app-graph-builder"},{"path":"src/capabilities/blueprint-definition/index.ts","kind":"import-statement","original":"./blueprint-definition"},{"path":"src/capabilities/react-surface/index.ts","kind":"import-statement","original":"./react-surface"}],"format":"esm"},"src/translations.ts":{"bytes":6863,"imports":[{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/YouTubePlugin.tsx":{"bytes":10192,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/operations","kind":"import-statement","external":true},{"path":"src/blueprints/index.ts","kind":"import-statement","original":"./blueprints"},{"path":"src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/index.ts":{"bytes":657,"imports":[{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/operations/index.ts","kind":"import-statement","original":"./operations"},{"path":"src/YouTubePlugin.tsx","kind":"import-statement","original":"./YouTubePlugin"}],"format":"esm"}},"outputs":{"dist/lib/node-esm/ChannelSettings-DM2HWNKO.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2398},"dist/lib/node-esm/ChannelSettings-DM2HWNKO.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/containers/ChannelSettings/index.ts","inputs":{"src/containers/ChannelSettings/ChannelSettings.tsx":{"bytesInOutput":1382},"src/containers/ChannelSettings/index.ts":{"bytesInOutput":47}},"bytes":1754},"dist/lib/node-esm/VideoArticle-WLTWZO3K.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6963},"dist/lib/node-esm/VideoArticle-WLTWZO3K.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/containers/VideoArticle/index.ts","inputs":{"src/containers/VideoArticle/VideoArticle.tsx":{"bytesInOutput":4050},"src/containers/VideoArticle/index.ts":{"bytesInOutput":41}},"bytes":4401},"dist/lib/node-esm/VideoCard-FOWQZK75.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5662},"dist/lib/node-esm/VideoCard-FOWQZK75.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/containers/VideoCard/index.ts","inputs":{"src/containers/VideoCard/VideoCard.tsx":{"bytesInOutput":3323},"src/containers/VideoCard/index.ts":{"bytesInOutput":35}},"bytes":3653},"dist/lib/node-esm/react-surface-5DJAQPHJ.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5119},"dist/lib/node-esm/react-surface-5DJAQPHJ.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-CX6MV3QM.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-6BUJ2DQX.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-CZSLL3XQ.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"dist/lib/node-esm/ChannelArticle-GQ64BO7V.mjs","kind":"dynamic-import"},{"path":"dist/lib/node-esm/ChannelSettings-DM2HWNKO.mjs","kind":"dynamic-import"},{"path":"dist/lib/node-esm/VideoArticle-WLTWZO3K.mjs","kind":"dynamic-import"},{"path":"dist/lib/node-esm/VideoCard-FOWQZK75.mjs","kind":"dynamic-import"}],"exports":["default"],"entryPoint":"src/capabilities/react-surface/react-surface.tsx","inputs":{"src/capabilities/react-surface/react-surface.tsx":{"bytesInOutput":1709},"src/containers/index.ts":{"bytesInOutput":314}},"bytes":2540},"dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":9378},"dist/lib/node-esm/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-CX6MV3QM.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-5KNC2JMP.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-M4S6BE47.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-JM5SBBP5.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-JSGRZMG3.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-6BUJ2DQX.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-CZSLL3XQ.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/operations","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/node-esm/app-graph-builder-IU5TBAXN.mjs","kind":"dynamic-import"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/node-esm/blueprint-definition-W264MZ3D.mjs","kind":"dynamic-import"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/node-esm/react-surface-5DJAQPHJ.mjs","kind":"dynamic-import"}],"exports":["ClearSyncedVideos","Sync","YouTube","YouTubeHandlers","YouTubePlugin","meta"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/YouTubePlugin.tsx":{"bytesInOutput":2226},"src/capabilities/app-graph-builder/index.ts":{"bytesInOutput":158},"src/capabilities/index.ts":{"bytesInOutput":0},"src/capabilities/blueprint-definition/index.ts":{"bytesInOutput":185},"src/capabilities/react-surface/index.ts":{"bytesInOutput":164},"src/translations.ts":{"bytesInOutput":2000}},"bytes":5627},"dist/lib/node-esm/blueprints/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/node-esm/blueprints/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-5KNC2JMP.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-M4S6BE47.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-JM5SBBP5.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-JSGRZMG3.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-6BUJ2DQX.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-CZSLL3XQ.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"}],"exports":["YouTubeBlueprint"],"entryPoint":"src/blueprints/index.ts","inputs":{},"bytes":428},"dist/lib/node-esm/types/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/node-esm/types/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-6BUJ2DQX.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-CZSLL3XQ.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"}],"exports":["Channel","Video","YouTubeOperation"],"entryPoint":"src/types/index.ts","inputs":{},"bytes":382},"dist/lib/node-esm/clear-synced-videos-5UCH6XHL.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3108},"dist/lib/node-esm/clear-synced-videos-5UCH6XHL.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-JSGRZMG3.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-6BUJ2DQX.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-CZSLL3XQ.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/operations/clear-synced-videos.ts","inputs":{"src/operations/clear-synced-videos.ts":{"bytesInOutput":1565}},"bytes":1988},"dist/lib/node-esm/sync-CEF5DX2J.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":21314},"dist/lib/node-esm/sync-CEF5DX2J.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-JM5SBBP5.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-JSGRZMG3.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-6BUJ2DQX.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-CZSLL3XQ.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"@effect/platform/FetchHttpClient","kind":"import-statement","external":true},{"path":"effect/Chunk","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Function","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"effect/Predicate","kind":"import-statement","external":true},{"path":"effect/Stream","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"youtube-caption-extractor","kind":"dynamic-import","external":true}],"exports":["default"],"entryPoint":"src/operations/sync.ts","inputs":{"src/operations/sync.ts":{"bytesInOutput":9926},"src/operations/transcript.ts":{"bytesInOutput":1130}},"bytes":11560},"dist/lib/node-esm/app-graph-builder-IU5TBAXN.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":10621},"dist/lib/node-esm/app-graph-builder-IU5TBAXN.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-CX6MV3QM.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-M4S6BE47.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-JM5SBBP5.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-JSGRZMG3.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-6BUJ2DQX.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-CZSLL3XQ.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"@effect-atom/atom-react","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-atom","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention","kind":"import-statement","external":true},{"path":"@dxos/plugin-automation","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/app-graph-builder/app-graph-builder.ts","inputs":{"src/capabilities/app-graph-builder/app-graph-builder.ts":{"bytesInOutput":6262}},"bytes":6818},"dist/lib/node-esm/chunk-CX6MV3QM.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":874},"dist/lib/node-esm/chunk-CX6MV3QM.mjs":{"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["meta"],"inputs":{"src/meta.ts":{"bytesInOutput":420}},"bytes":592},"dist/lib/node-esm/blueprint-definition-W264MZ3D.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1046},"dist/lib/node-esm/blueprint-definition-W264MZ3D.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-5KNC2JMP.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-M4S6BE47.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-JM5SBBP5.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-JSGRZMG3.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-6BUJ2DQX.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-CZSLL3XQ.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/blueprint-definition/blueprint-definition.ts","inputs":{"src/capabilities/blueprint-definition/blueprint-definition.ts":{"bytesInOutput":355}},"bytes":870},"dist/lib/node-esm/chunk-5KNC2JMP.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2486},"dist/lib/node-esm/chunk-5KNC2JMP.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-JSGRZMG3.mjs","kind":"import-statement"},{"path":"@dxos/blueprints","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["youtube_default"],"inputs":{"src/blueprints/youtube.ts":{"bytesInOutput":1568},"src/blueprints/index.ts":{"bytesInOutput":0}},"bytes":1833},"dist/lib/node-esm/chunk-M4S6BE47.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":593},"dist/lib/node-esm/chunk-M4S6BE47.mjs":{"imports":[{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"dist/lib/node-esm/clear-synced-videos-5UCH6XHL.mjs","kind":"dynamic-import"},{"path":"dist/lib/node-esm/sync-CEF5DX2J.mjs","kind":"dynamic-import"}],"exports":["YouTubeHandlers"],"inputs":{"src/operations/index.ts":{"bytesInOutput":192}},"bytes":387},"dist/lib/node-esm/chunk-JM5SBBP5.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":24538},"dist/lib/node-esm/chunk-JM5SBBP5.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClient","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClientRequest","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schedule","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true}],"exports":["GoogleCredentials","youtube_exports"],"inputs":{"src/operations/services/google-credentials.ts":{"bytesInOutput":2085},"src/operations/apis/youtube/index.ts":{"bytesInOutput":911},"src/operations/apis/youtube/api.ts":{"bytesInOutput":3652},"src/operations/apis/youtube/types.ts":{"bytesInOutput":5083},"src/operations/apis/index.ts":{"bytesInOutput":0}},"bytes":12180},"dist/lib/node-esm/chunk-JSGRZMG3.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3628},"dist/lib/node-esm/chunk-JSGRZMG3.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-6BUJ2DQX.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-CZSLL3XQ.mjs","kind":"import-statement"},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true}],"exports":["ClearSyncedVideos","Sync"],"inputs":{"src/operations/definitions.ts":{"bytesInOutput":1995}},"bytes":2320},"dist/lib/node-esm/chunk-6BUJ2DQX.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4898},"dist/lib/node-esm/chunk-6BUJ2DQX.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/types","kind":"import-statement","external":true}],"exports":["Channel_exports","YouTubeOperation"],"inputs":{"src/types/types.ts":{"bytesInOutput":27},"src/types/index.ts":{"bytesInOutput":0},"src/types/Channel.ts":{"bytesInOutput":2204}},"bytes":2517},"dist/lib/node-esm/ChannelArticle-GQ64BO7V.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7696},"dist/lib/node-esm/ChannelArticle-GQ64BO7V.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-CZSLL3XQ.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/containers/ChannelArticle/index.ts","inputs":{"src/containers/ChannelArticle/ChannelArticle.tsx":{"bytesInOutput":4038},"src/containers/ChannelArticle/index.ts":{"bytesInOutput":45}},"bytes":4458},"dist/lib/node-esm/chunk-CZSLL3XQ.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3452},"dist/lib/node-esm/chunk-CZSLL3XQ.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true}],"exports":["Video_exports","YouTubeVideo"],"inputs":{"src/types/Video.ts":{"bytesInOutput":1792}},"bytes":2047},"dist/lib/node-esm/chunk-HSLMI22Q.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/node-esm/chunk-HSLMI22Q.mjs":{"imports":[],"exports":["__export"],"inputs":{},"bytes":327}}}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
meta
|
|
4
|
+
} from "./chunk-CX6MV3QM.mjs";
|
|
5
|
+
import {
|
|
6
|
+
Channel_exports
|
|
7
|
+
} from "./chunk-6BUJ2DQX.mjs";
|
|
8
|
+
import {
|
|
9
|
+
Video_exports
|
|
10
|
+
} from "./chunk-CZSLL3XQ.mjs";
|
|
11
|
+
import "./chunk-HSLMI22Q.mjs";
|
|
12
|
+
|
|
13
|
+
// src/capabilities/react-surface/react-surface.tsx
|
|
14
|
+
import * as Effect from "effect/Effect";
|
|
15
|
+
import React from "react";
|
|
16
|
+
import { Capabilities, Capability } from "@dxos/app-framework";
|
|
17
|
+
import { Surface } from "@dxos/app-framework/ui";
|
|
18
|
+
|
|
19
|
+
// src/containers/index.ts
|
|
20
|
+
import { lazy } from "react";
|
|
21
|
+
var ChannelArticle = lazy(() => import("./ChannelArticle-GQ64BO7V.mjs"));
|
|
22
|
+
var ChannelSettings = lazy(() => import("./ChannelSettings-DM2HWNKO.mjs"));
|
|
23
|
+
var VideoArticle = lazy(() => import("./VideoArticle-WLTWZO3K.mjs"));
|
|
24
|
+
var VideoCard = lazy(() => import("./VideoCard-FOWQZK75.mjs"));
|
|
25
|
+
|
|
26
|
+
// src/capabilities/react-surface/react-surface.tsx
|
|
27
|
+
var react_surface_default = Capability.makeModule(() => Effect.succeed(Capability.contributes(Capabilities.ReactSurface, [
|
|
28
|
+
Surface.create({
|
|
29
|
+
id: `${meta.id}.channel`,
|
|
30
|
+
role: [
|
|
31
|
+
"article"
|
|
32
|
+
],
|
|
33
|
+
filter: (data) => Channel_exports.instanceOf(data.subject),
|
|
34
|
+
component: ({ data }) => {
|
|
35
|
+
return /* @__PURE__ */ React.createElement(ChannelArticle, {
|
|
36
|
+
subject: data.subject,
|
|
37
|
+
attendableId: data.attendableId
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
}),
|
|
41
|
+
Surface.create({
|
|
42
|
+
id: `${meta.id}.video`,
|
|
43
|
+
role: [
|
|
44
|
+
"article",
|
|
45
|
+
"section"
|
|
46
|
+
],
|
|
47
|
+
filter: (data) => typeof data.attendableId === "string" && Video_exports.instanceOf(data.subject) && Channel_exports.instanceOf(data.companionTo),
|
|
48
|
+
component: ({ data: { attendableId, companionTo, subject }, role }) => {
|
|
49
|
+
return /* @__PURE__ */ React.createElement(VideoArticle, {
|
|
50
|
+
role,
|
|
51
|
+
subject,
|
|
52
|
+
channel: companionTo,
|
|
53
|
+
attendableId
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
}),
|
|
57
|
+
Surface.create({
|
|
58
|
+
id: `${meta.id}.video-card`,
|
|
59
|
+
role: "card--content",
|
|
60
|
+
filter: (data) => Video_exports.instanceOf(data?.subject),
|
|
61
|
+
component: ({ data: { subject }, role }) => /* @__PURE__ */ React.createElement(VideoCard, {
|
|
62
|
+
subject,
|
|
63
|
+
role
|
|
64
|
+
})
|
|
65
|
+
}),
|
|
66
|
+
Surface.create({
|
|
67
|
+
id: `${meta.id}.channel.companion.settings`,
|
|
68
|
+
role: "object-settings",
|
|
69
|
+
filter: (data) => Channel_exports.instanceOf(data.subject),
|
|
70
|
+
component: ({ data }) => /* @__PURE__ */ React.createElement(ChannelSettings, {
|
|
71
|
+
subject: data.subject
|
|
72
|
+
})
|
|
73
|
+
})
|
|
74
|
+
])));
|
|
75
|
+
export {
|
|
76
|
+
react_surface_default as default
|
|
77
|
+
};
|
|
78
|
+
//# sourceMappingURL=react-surface-5DJAQPHJ.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/react-surface/react-surface.tsx", "../../../src/containers/index.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React from 'react';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { Surface } from '@dxos/app-framework/ui';\n\nimport { ChannelArticle, ChannelSettings, VideoArticle, VideoCard } from '../../containers';\nimport { meta } from '../../meta';\nimport { Channel, Video } from '../../types';\n\nexport default Capability.makeModule(() =>\n Effect.succeed(\n Capability.contributes(Capabilities.ReactSurface, [\n Surface.create({\n id: `${meta.id}.channel`,\n role: ['article'],\n filter: (data): data is { attendableId?: string; subject: Channel.YouTubeChannel } =>\n Channel.instanceOf(data.subject),\n component: ({ data }) => {\n return <ChannelArticle subject={data.subject} attendableId={data.attendableId} />;\n },\n }),\n Surface.create({\n id: `${meta.id}.video`,\n role: ['article', 'section'],\n filter: (\n data,\n ): data is { attendableId: string; subject: Video.YouTubeVideo; companionTo: Channel.YouTubeChannel } =>\n typeof data.attendableId === 'string' &&\n Video.instanceOf(data.subject) &&\n Channel.instanceOf(data.companionTo),\n component: ({ data: { attendableId, companionTo, subject }, role }) => {\n return <VideoArticle role={role} subject={subject} channel={companionTo} attendableId={attendableId} />;\n },\n }),\n Surface.create({\n id: `${meta.id}.video-card`,\n role: 'card--content',\n filter: (data): data is { subject: Video.YouTubeVideo } => Video.instanceOf(data?.subject),\n component: ({ data: { subject }, role }) => <VideoCard subject={subject} role={role} />,\n }),\n Surface.create({\n id: `${meta.id}.channel.companion.settings`,\n role: 'object-settings',\n filter: (data): data is { subject: Channel.YouTubeChannel } => Channel.instanceOf(data.subject),\n component: ({ data }) => <ChannelSettings subject={data.subject} />,\n }),\n ]),\n ),\n);\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { type ComponentType, lazy, type LazyExoticComponent } from 'react';\n\nimport type { ChannelArticleProps } from './ChannelArticle/ChannelArticle';\nimport type { ChannelSettingsProps } from './ChannelSettings/ChannelSettings';\nimport type { VideoArticleProps } from './VideoArticle/VideoArticle';\nimport type { VideoCardProps } from './VideoCard/VideoCard';\n\nexport type { ChannelArticleProps, ChannelSettingsProps, VideoArticleProps, VideoCardProps };\n\nexport const ChannelArticle: LazyExoticComponent<ComponentType<ChannelArticleProps>> = lazy(\n () => import('./ChannelArticle'),\n);\n\nexport const ChannelSettings: LazyExoticComponent<ComponentType<ChannelSettingsProps>> = lazy(\n () => import('./ChannelSettings'),\n);\n\nexport const VideoArticle: LazyExoticComponent<ComponentType<VideoArticleProps>> = lazy(() => import('./VideoArticle'));\n\nexport const VideoCard: LazyExoticComponent<ComponentType<VideoCardProps>> = lazy(() => import('./VideoCard'));\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;AAIA,YAAYA,YAAY;AACxB,OAAOC,WAAW;AAElB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,eAAe;;;ACJxB,SAA6BC,YAAsC;AAS5D,IAAMC,iBAA0EC,KACrF,MAAM,OAAO,+BAAA,CAAA;AAGR,IAAMC,kBAA4ED,KACvF,MAAM,OAAO,gCAAA,CAAA;AAGR,IAAME,eAAsEF,KAAK,MAAM,OAAO,6BAAA,CAAA;AAE9F,IAAMG,YAAgEH,KAAK,MAAM,OAAO,0BAAA,CAAA;;;ADT/F,IAAA,wBAAeI,WAAWC,WAAW,MAC5BC,eACLF,WAAWG,YAAYC,aAAaC,cAAc;EAChDC,QAAQC,OAAO;IACbC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;MAAC;;IACPC,QAAQ,CAACC,SACPC,gBAAQC,WAAWF,KAAKG,OAAO;IACjCC,WAAW,CAAC,EAAEJ,KAAI,MAAE;AAClB,aAAO,sBAAA,cAACK,gBAAAA;QAAeF,SAASH,KAAKG;QAASG,cAAcN,KAAKM;;IACnE;EACF,CAAA;EACAZ,QAAQC,OAAO;IACbC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;MAAC;MAAW;;IAClBC,QAAQ,CACNC,SAEA,OAAOA,KAAKM,iBAAiB,YAC7BC,cAAML,WAAWF,KAAKG,OAAO,KAC7BF,gBAAQC,WAAWF,KAAKQ,WAAW;IACrCJ,WAAW,CAAC,EAAEJ,MAAM,EAAEM,cAAcE,aAAaL,QAAO,GAAIL,KAAI,MAAE;AAChE,aAAO,sBAAA,cAACW,cAAAA;QAAaX;QAAYK;QAAkBO,SAASF;QAAaF;;IAC3E;EACF,CAAA;EACAZ,QAAQC,OAAO;IACbC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNC,QAAQ,CAACC,SAAkDO,cAAML,WAAWF,MAAMG,OAAAA;IAClFC,WAAW,CAAC,EAAEJ,MAAM,EAAEG,QAAO,GAAIL,KAAI,MAAO,sBAAA,cAACa,WAAAA;MAAUR;MAAkBL;;EAC3E,CAAA;EACAJ,QAAQC,OAAO;IACbC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNC,QAAQ,CAACC,SAAsDC,gBAAQC,WAAWF,KAAKG,OAAO;IAC9FC,WAAW,CAAC,EAAEJ,KAAI,MAAO,sBAAA,cAACY,iBAAAA;MAAgBT,SAASH,KAAKG;;EAC1D,CAAA;CACD,CAAA,CAAA;",
|
|
6
|
+
"names": ["Effect", "React", "Capabilities", "Capability", "Surface", "lazy", "ChannelArticle", "lazy", "ChannelSettings", "VideoArticle", "VideoCard", "Capability", "makeModule", "succeed", "contributes", "Capabilities", "ReactSurface", "Surface", "create", "id", "meta", "role", "filter", "data", "Channel", "instanceOf", "subject", "component", "ChannelArticle", "attendableId", "Video", "companionTo", "VideoArticle", "channel", "VideoCard", "ChannelSettings"]
|
|
7
|
+
}
|