@silexlabs/silex 3.0.0-alpha.47 → 3.0.0-alpha.48
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/.env.default +1 -1
- package/dist/client/client/api.d.ts +1 -1
- package/dist/client/client/grapesjs/website-info.d.ts +2 -0
- package/dist/client/js/main.js +12 -12
- package/dist/client/types.d.ts +1 -1
- package/dist/plugins/client/types.d.ts +1 -1
- package/dist/plugins/server/plugins/server/GitlabConnector.d.ts +11 -0
- package/dist/plugins/server/plugins/server/GitlabConnector.js +140 -30
- package/dist/plugins/server/plugins/server/GitlabConnector.js.map +1 -1
- package/dist/plugins/server/types.d.ts +1 -1
- package/package.json +1 -1
- package/src/ts/client/api.ts +2 -2
- package/src/ts/client/grapesjs/index.ts +2 -0
- package/src/ts/client/grapesjs/website-info.ts +39 -0
- package/src/ts/plugins/server/GitlabConnector.ts +151 -31
- package/src/ts/types.ts +1 -1
package/dist/client/types.d.ts
CHANGED
|
@@ -67,7 +67,7 @@ export type ApiWebsiteMetaReadQuery = {
|
|
|
67
67
|
websiteId: WebsiteId;
|
|
68
68
|
connectorId?: ConnectorId;
|
|
69
69
|
};
|
|
70
|
-
export type ApiWebsiteMetaReadResponse =
|
|
70
|
+
export type ApiWebsiteMetaReadResponse = WebsiteMeta;
|
|
71
71
|
export type ApiWebsiteMetaWriteQuery = {
|
|
72
72
|
websiteId: WebsiteId;
|
|
73
73
|
connectorId?: ConnectorId;
|
|
@@ -67,7 +67,7 @@ export type ApiWebsiteMetaReadQuery = {
|
|
|
67
67
|
websiteId: WebsiteId;
|
|
68
68
|
connectorId?: ConnectorId;
|
|
69
69
|
};
|
|
70
|
-
export type ApiWebsiteMetaReadResponse =
|
|
70
|
+
export type ApiWebsiteMetaReadResponse = WebsiteMeta;
|
|
71
71
|
export type ApiWebsiteMetaWriteQuery = {
|
|
72
72
|
websiteId: WebsiteId;
|
|
73
73
|
connectorId?: ConnectorId;
|
|
@@ -11,6 +11,8 @@ export interface GitlabOptions {
|
|
|
11
11
|
clientSecret: string;
|
|
12
12
|
branch: string;
|
|
13
13
|
assetsFolder: string;
|
|
14
|
+
metaRepo: string;
|
|
15
|
+
metaRepoFile: string;
|
|
14
16
|
}
|
|
15
17
|
interface GitlabToken {
|
|
16
18
|
state: string;
|
|
@@ -26,6 +28,7 @@ interface GitlabToken {
|
|
|
26
28
|
scope: string;
|
|
27
29
|
};
|
|
28
30
|
userId?: number;
|
|
31
|
+
username?: string;
|
|
29
32
|
}
|
|
30
33
|
interface GitlabSession {
|
|
31
34
|
gitlab?: GitlabToken;
|
|
@@ -44,6 +47,14 @@ export default class GitlabConnector implements StorageConnector {
|
|
|
44
47
|
private getAssetPath;
|
|
45
48
|
private createFile;
|
|
46
49
|
private updateFile;
|
|
50
|
+
private getMetaRepoPath;
|
|
51
|
+
/**
|
|
52
|
+
* Initialize the storage with a meta repo
|
|
53
|
+
*/
|
|
54
|
+
private initStorage;
|
|
55
|
+
/**
|
|
56
|
+
* Call the Gitlab API with the user's token and handle errors
|
|
57
|
+
*/
|
|
47
58
|
private callApi;
|
|
48
59
|
private generateCodeVerifier;
|
|
49
60
|
private generateCodeChallenge;
|
|
@@ -65,6 +65,8 @@ class GitlabConnector {
|
|
|
65
65
|
this.options = {
|
|
66
66
|
branch: 'main',
|
|
67
67
|
assetsFolder: '',
|
|
68
|
+
metaRepo: 'silex-meta',
|
|
69
|
+
metaRepoFile: 'websites.json',
|
|
68
70
|
...opts,
|
|
69
71
|
};
|
|
70
72
|
if (!this.options.clientId)
|
|
@@ -99,6 +101,36 @@ class GitlabConnector {
|
|
|
99
101
|
encoding: isBase64 ? 'base64' : undefined,
|
|
100
102
|
});
|
|
101
103
|
}
|
|
104
|
+
/*
|
|
105
|
+
* Get the meta repo path for the current user
|
|
106
|
+
* The meta repo contains a JSON file which contains the list of websites
|
|
107
|
+
*/
|
|
108
|
+
getMetaRepoPath(session) {
|
|
109
|
+
if (!session.gitlab?.username)
|
|
110
|
+
throw new types_1.ApiError('Missing Gitlab user ID. User not logged in?', 401);
|
|
111
|
+
return encodeURIComponent(`${session.gitlab.username}/${this.options.metaRepo}`);
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Initialize the storage with a meta repo
|
|
115
|
+
*/
|
|
116
|
+
async initStorage(session) {
|
|
117
|
+
// Create the meta repo
|
|
118
|
+
try {
|
|
119
|
+
const project = await this.callApi(session, 'api/v4/projects/', 'POST', {
|
|
120
|
+
name: this.options.metaRepo,
|
|
121
|
+
});
|
|
122
|
+
return this.createFile(session, this.getMetaRepoPath(session), this.options.metaRepoFile, JSON.stringify({
|
|
123
|
+
websites: {}
|
|
124
|
+
}));
|
|
125
|
+
}
|
|
126
|
+
catch (e) {
|
|
127
|
+
console.error('Could not init storage', e.statusCode, e.httpStatusCode, e);
|
|
128
|
+
throw e;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Call the Gitlab API with the user's token and handle errors
|
|
133
|
+
*/
|
|
102
134
|
async callApi(session, path, method = 'GET', body = null, params = {}) {
|
|
103
135
|
const token = session?.gitlab?.token;
|
|
104
136
|
const tokenParam = token ? `access_token=${token.access_token}&` : '';
|
|
@@ -124,7 +156,7 @@ class GitlabConnector {
|
|
|
124
156
|
}
|
|
125
157
|
else {
|
|
126
158
|
// Useless error linked to the fact that the response is not JSON
|
|
127
|
-
|
|
159
|
+
console.error('Gitlab API error (3) - could not parse response', response.status, response.statusText, { url, method, body, params, text });
|
|
128
160
|
return text;
|
|
129
161
|
}
|
|
130
162
|
}
|
|
@@ -154,13 +186,15 @@ class GitlabConnector {
|
|
|
154
186
|
return await this.callApi(session, path, method, body, params);
|
|
155
187
|
}
|
|
156
188
|
else {
|
|
157
|
-
|
|
158
|
-
|
|
189
|
+
const message = typeof refreshJson?.message === 'object' ? Object.entries(refreshJson.message).map(entry => entry.join(' ')).join(' ') : refreshJson?.message ?? refreshJson?.error ?? response.statusText;
|
|
190
|
+
console.error('Gitlab API error (2) - could not refresh token', response.status, response.statusText, { message });
|
|
191
|
+
throw new types_1.ApiError(`Gitlab API error (2): ${message}`, response.status);
|
|
159
192
|
}
|
|
160
193
|
}
|
|
161
194
|
else {
|
|
162
|
-
|
|
163
|
-
|
|
195
|
+
const message = typeof json?.message === 'object' ? Object.entries(json.message).map(entry => entry.join(' ')).join(' ') : json?.message ?? json?.error ?? response.statusText;
|
|
196
|
+
console.error('Gitlab API error (1)', response.status, response.statusText, { message });
|
|
197
|
+
throw new types_1.ApiError(`Gitlab API error (1): ${message}`, response.status);
|
|
164
198
|
}
|
|
165
199
|
}
|
|
166
200
|
return json;
|
|
@@ -229,7 +263,7 @@ class GitlabConnector {
|
|
|
229
263
|
throw new types_1.ApiError('Missing code verifier', 401);
|
|
230
264
|
if (!session.gitlab?.codeChallenge)
|
|
231
265
|
throw new types_1.ApiError('Missing code challenge', 401);
|
|
232
|
-
const
|
|
266
|
+
const response = await (0, node_fetch_1.default)('https://gitlab.com/oauth/token', {
|
|
233
267
|
method: 'POST',
|
|
234
268
|
headers: {
|
|
235
269
|
'Content-Type': 'application/json',
|
|
@@ -242,12 +276,14 @@ class GitlabConnector {
|
|
|
242
276
|
redirect_uri: this.getRedirect(),
|
|
243
277
|
code_verifier: session.gitlab.codeVerifier,
|
|
244
278
|
}),
|
|
245
|
-
})
|
|
246
|
-
|
|
279
|
+
});
|
|
280
|
+
const token = await response.json();
|
|
281
|
+
// Store the token in the session
|
|
247
282
|
session.gitlab = { token, state: session.gitlab.state, codeVerifier: session.gitlab.codeVerifier, codeChallenge: session.gitlab.codeChallenge };
|
|
248
283
|
// We need to get the user ID for listWebsites
|
|
249
284
|
const user = await this.callApi(session, 'api/v4/user');
|
|
250
285
|
session.gitlab.userId = user.id;
|
|
286
|
+
session.gitlab.username = user.username;
|
|
251
287
|
}
|
|
252
288
|
async logout(session) {
|
|
253
289
|
delete session.gitlab;
|
|
@@ -257,18 +293,44 @@ class GitlabConnector {
|
|
|
257
293
|
return {
|
|
258
294
|
name: user.name,
|
|
259
295
|
email: user.email,
|
|
296
|
+
picture: user.avatar_url,
|
|
260
297
|
storage: await (0, connectors_1.toConnectorData)(session, this),
|
|
261
298
|
};
|
|
262
299
|
}
|
|
263
300
|
async listWebsites(session) {
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
301
|
+
try {
|
|
302
|
+
const result = await this.callApi(session, `api/v4/projects/${this.getMetaRepoPath(session)}/repository/files/${this.options.metaRepoFile}`, 'GET', null, {
|
|
303
|
+
ref: this.options.branch,
|
|
304
|
+
});
|
|
305
|
+
const { content } = result;
|
|
306
|
+
const contentDecoded = Buffer.from(content, 'base64').toString('utf8');
|
|
307
|
+
const websites = JSON.parse(contentDecoded).websites;
|
|
308
|
+
console.log('listWebsites', { websites, contentDecoded, content, result });
|
|
309
|
+
return Object.entries(websites).map(([websiteId, { meta, createdAt, updatedAt }]) => ({
|
|
310
|
+
websiteId,
|
|
311
|
+
createdAt: new Date(createdAt),
|
|
312
|
+
updatedAt: new Date(updatedAt),
|
|
313
|
+
...meta,
|
|
314
|
+
}));
|
|
315
|
+
}
|
|
316
|
+
catch (e) {
|
|
317
|
+
console.error('Could not list websites', e.statusCode, e.httpStatusCode, e.code);
|
|
318
|
+
if (e.statusCode === 404 || e.httpStatusCode === 404) {
|
|
319
|
+
await this.initStorage(session);
|
|
320
|
+
return [];
|
|
321
|
+
}
|
|
322
|
+
else {
|
|
323
|
+
throw e;
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
//const projects = await this.callApi(session, `api/v4/users/${session.gitlab?.user?.id}/projects`) as any[]
|
|
327
|
+
//return projects.map(p => ({
|
|
328
|
+
// websiteId: p.id,
|
|
329
|
+
// name: p.name,
|
|
330
|
+
// createdAt: p.created_at,
|
|
331
|
+
// updatedAt: p.last_activity_at,
|
|
332
|
+
// connectorUserSettings: {},
|
|
333
|
+
//}))
|
|
272
334
|
}
|
|
273
335
|
async readWebsite(session, websiteId) {
|
|
274
336
|
const result = await this.callApi(session, `api/v4/projects/${websiteId}/repository/files/${constants_1.WEBSITE_DATA_FILE}`, 'GET', null, {
|
|
@@ -284,9 +346,9 @@ class GitlabConnector {
|
|
|
284
346
|
name: websiteMeta.name,
|
|
285
347
|
});
|
|
286
348
|
await this.createFile(session, project.id, constants_1.WEBSITE_DATA_FILE, JSON.stringify({}));
|
|
287
|
-
await this.createFile(session, project.id,
|
|
349
|
+
//await this.createFile(session, project.id, WEBSITE_META_DATA_FILE, JSON.stringify(websiteMeta))
|
|
288
350
|
//await this.updateWebsite(session, project.id, {} as WebsiteData)
|
|
289
|
-
|
|
351
|
+
await this.setWebsiteMeta(session, project.id, websiteMeta);
|
|
290
352
|
return project.id;
|
|
291
353
|
}
|
|
292
354
|
async updateWebsite(session, websiteId, websiteData) {
|
|
@@ -299,26 +361,74 @@ class GitlabConnector {
|
|
|
299
361
|
});
|
|
300
362
|
}
|
|
301
363
|
async deleteWebsite(session, websiteId) {
|
|
364
|
+
// Delete repo
|
|
302
365
|
await this.callApi(session, `api/v4/projects/${websiteId}`, 'DELETE');
|
|
366
|
+
// Load the meta repo data
|
|
367
|
+
const file = await this.callApi(session, `api/v4/projects/${this.getMetaRepoPath(session)}/repository/files/${this.options.metaRepoFile}`, 'GET', null, {
|
|
368
|
+
ref: this.options.branch,
|
|
369
|
+
});
|
|
370
|
+
const metaRepo = JSON.parse(Buffer.from(file.content, 'base64').toString('utf8'));
|
|
371
|
+
const data = metaRepo.websites[websiteId];
|
|
372
|
+
if (!data)
|
|
373
|
+
throw new types_1.ApiError(`Website ${websiteId} not found`, 404);
|
|
374
|
+
// Update or create the website meta data
|
|
375
|
+
delete metaRepo.websites[websiteId];
|
|
376
|
+
// Save the meta repo data
|
|
377
|
+
const project = await this.callApi(session, `api/v4/projects/${this.getMetaRepoPath(session)}/repository/files/${this.options.metaRepoFile}`, 'PUT', {
|
|
378
|
+
branch: this.options.branch,
|
|
379
|
+
commit_message: `Delete meta data of ${data.meta.name} (${websiteId}) from Silex`,
|
|
380
|
+
content: JSON.stringify(metaRepo),
|
|
381
|
+
file_path: this.options.metaRepoFile,
|
|
382
|
+
});
|
|
303
383
|
}
|
|
304
384
|
async getWebsiteMeta(session, websiteId) {
|
|
305
|
-
const
|
|
385
|
+
const file = await this.callApi(session, `api/v4/projects/${this.getMetaRepoPath(session)}/repository/files/${this.options.metaRepoFile}`, 'GET', null, {
|
|
386
|
+
ref: this.options.branch,
|
|
387
|
+
});
|
|
388
|
+
const metaRepo = JSON.parse(Buffer.from(file.content, 'base64').toString('utf8'));
|
|
389
|
+
if (!metaRepo.websites[websiteId])
|
|
390
|
+
throw new types_1.ApiError(`Website ${websiteId} not found`, 404);
|
|
306
391
|
return {
|
|
307
|
-
websiteId
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
connectorUserSettings: {},
|
|
392
|
+
websiteId,
|
|
393
|
+
createdAt: new Date(metaRepo.websites[websiteId].createdAt),
|
|
394
|
+
updatedAt: new Date(metaRepo.websites[websiteId].updatedAt),
|
|
395
|
+
...metaRepo.websites[websiteId].meta,
|
|
312
396
|
};
|
|
397
|
+
//const project = await this.callApi(session, `api/v4/projects/${websiteId}/repository/files/${WEBSITE_META_DATA_FILE}`) as any
|
|
398
|
+
//return {
|
|
399
|
+
// websiteId: project.id,
|
|
400
|
+
// name: project.name,
|
|
401
|
+
// createdAt: project.created_at,
|
|
402
|
+
// updatedAt: project.last_activity_at,
|
|
403
|
+
// connectorUserSettings: {},
|
|
404
|
+
//}
|
|
313
405
|
}
|
|
314
406
|
async setWebsiteMeta(session, websiteId, websiteMeta) {
|
|
315
|
-
|
|
407
|
+
// Load the meta repo data
|
|
408
|
+
const file = await this.callApi(session, `api/v4/projects/${this.getMetaRepoPath(session)}/repository/files/${this.options.metaRepoFile}`, 'GET', null, {
|
|
409
|
+
ref: this.options.branch,
|
|
410
|
+
});
|
|
411
|
+
const metaRepo = JSON.parse(Buffer.from(file.content, 'base64').toString('utf8'));
|
|
412
|
+
// Update or create the website meta data
|
|
413
|
+
metaRepo.websites[websiteId] = {
|
|
414
|
+
updatedAt: new Date().toISOString(),
|
|
415
|
+
createdAt: metaRepo.websites[websiteId]?.createdAt ?? new Date().toISOString(),
|
|
416
|
+
meta: websiteMeta,
|
|
417
|
+
};
|
|
418
|
+
// Save the meta repo data
|
|
419
|
+
const project = await this.callApi(session, `api/v4/projects/${this.getMetaRepoPath(session)}/repository/files/${this.options.metaRepoFile}`, 'PUT', {
|
|
316
420
|
branch: this.options.branch,
|
|
317
|
-
commit_message:
|
|
318
|
-
content: JSON.stringify(
|
|
319
|
-
file_path:
|
|
320
|
-
id: websiteId,
|
|
421
|
+
commit_message: `Update website meta data of ${websiteMeta.name} (${websiteId}) from Silex`,
|
|
422
|
+
content: JSON.stringify(metaRepo),
|
|
423
|
+
file_path: this.options.metaRepoFile,
|
|
321
424
|
});
|
|
425
|
+
//const project = await this.callApi(session, `api/v4/projects/${websiteId}/repository/files/${WEBSITE_META_DATA_FILE}`, 'PUT', {
|
|
426
|
+
// branch: this.options.branch,
|
|
427
|
+
// commit_message: 'Update website meta data from Silex',
|
|
428
|
+
// content: JSON.stringify(websiteMeta),
|
|
429
|
+
// file_path: WEBSITE_META_DATA_FILE,
|
|
430
|
+
// id: websiteId,
|
|
431
|
+
//})
|
|
322
432
|
}
|
|
323
433
|
async writeAssets(session, websiteId, files, status) {
|
|
324
434
|
// For each file
|
|
@@ -330,7 +440,7 @@ class GitlabConnector {
|
|
|
330
440
|
}
|
|
331
441
|
catch (e) {
|
|
332
442
|
// If the file does not exist, create it
|
|
333
|
-
if (e.statusCode === 404 || e.message.endsWith('A file with this name doesn\'t exist')) {
|
|
443
|
+
if (e.statusCode === 404 || e.httpStatusCode === 404 || e.message.endsWith('A file with this name doesn\'t exist')) {
|
|
334
444
|
await this.createFile(session, websiteId, file.path, content, true);
|
|
335
445
|
}
|
|
336
446
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GitlabConnector.js","sourceRoot":"","sources":["../../../../../src/ts/plugins/server/GitlabConnector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"GitlabConnector.js","sourceRoot":"","sources":["../../../../../src/ts/plugins/server/GitlabConnector.ts"],"names":[],"mappings":"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"}
|
|
@@ -67,7 +67,7 @@ export type ApiWebsiteMetaReadQuery = {
|
|
|
67
67
|
websiteId: WebsiteId;
|
|
68
68
|
connectorId?: ConnectorId;
|
|
69
69
|
};
|
|
70
|
-
export type ApiWebsiteMetaReadResponse =
|
|
70
|
+
export type ApiWebsiteMetaReadResponse = WebsiteMeta;
|
|
71
71
|
export type ApiWebsiteMetaWriteQuery = {
|
|
72
72
|
websiteId: WebsiteId;
|
|
73
73
|
connectorId?: ConnectorId;
|
package/package.json
CHANGED
package/src/ts/client/api.ts
CHANGED
|
@@ -95,8 +95,8 @@ export async function websiteMetaWrite({websiteId, data, connectorId}: {websiteI
|
|
|
95
95
|
await api<ApiWebsiteMetaWriteQuery, ApiWebsiteMetaWriteBody, ApiWebsiteMetaWriteResponse>(ApiRoute.WEBSITE_META_WRITE, 'POST', { websiteId, connectorId: connectorId }, data)
|
|
96
96
|
}
|
|
97
97
|
|
|
98
|
-
export async function websiteMetaRead({websiteId, connectorId}: {websiteId: WebsiteId, connectorId?: ConnectorId}): Promise<
|
|
99
|
-
|
|
98
|
+
export async function websiteMetaRead({websiteId, connectorId}: {websiteId: WebsiteId, connectorId?: ConnectorId}): Promise<WebsiteMeta> {
|
|
99
|
+
return api<ApiWebsiteMetaReadQuery, null, ApiWebsiteMetaReadResponse>(ApiRoute.WEBSITE_META_WRITE, 'PUT', { websiteId, connectorId: connectorId })
|
|
100
100
|
}
|
|
101
101
|
|
|
102
102
|
export async function websiteAssetsLoad({path, websiteId, connectorId}: {path: string, websiteId: WebsiteId, connectorId: ConnectorId}): Promise<string> {
|
|
@@ -45,6 +45,7 @@ import { blocksPlugin } from './blocks'
|
|
|
45
45
|
import { semanticPlugin } from './semantic'
|
|
46
46
|
import { richTextPlugin } from './rich-text'
|
|
47
47
|
import { internalLinksPlugin } from './internal-links'
|
|
48
|
+
import wiebsiteInfoPlugin from './website-info'
|
|
48
49
|
import publicationManagerPlugin, { PublicationManagerOptions } from './PublicationManager'
|
|
49
50
|
import { storagePlugin } from './storage'
|
|
50
51
|
import { ConnectorId, WebsiteId } from '../../types'
|
|
@@ -64,6 +65,7 @@ const plugins = [
|
|
|
64
65
|
{name: 'grapesjs-plugin-forms', value: formPlugin},
|
|
65
66
|
{name: 'grapesjs-custom-code', value: codePlugin},
|
|
66
67
|
{name: './internal-links', value: internalLinksPlugin},
|
|
68
|
+
{name: './website-info', value: wiebsiteInfoPlugin},
|
|
67
69
|
{name: '@silexlabs/grapesjs-ui-suggest-classes', value: uiSuggestClasses},
|
|
68
70
|
{name: './symbolDialogs', value: symbolDialogsPlugin},
|
|
69
71
|
{name: '@silexlabs/grapesjs-symbols', value: symbolsPlugin},
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { ClientEvent } from '../events'
|
|
2
|
+
import { websiteMetaRead } from '../api'
|
|
3
|
+
import { WebsiteMeta, WebsiteMetaFileContent } from '../../types'
|
|
4
|
+
|
|
5
|
+
export default (config, opts: any = {}) => {
|
|
6
|
+
config.on(ClientEvent.STARTUP_END, async ({ editor }) => {
|
|
7
|
+
console.log('websiteMetaPlugin STARTUP')
|
|
8
|
+
console.log('websiteMetaPlugin storage:end:load')
|
|
9
|
+
// Get website meta data
|
|
10
|
+
const websiteMeta = await websiteMetaRead({websiteId: config.websiteId, connectorId: config.connectorId})
|
|
11
|
+
// Display in the editor
|
|
12
|
+
displayWebsiteMeta(editor, websiteMeta)
|
|
13
|
+
editor.on('storage:end:load', async () => {
|
|
14
|
+
})
|
|
15
|
+
})
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
function displayWebsiteMeta(editor, websiteMeta: WebsiteMeta) {
|
|
19
|
+
// Check if the container exists in the UI
|
|
20
|
+
let container = document.querySelector('.gjs-website-meta')
|
|
21
|
+
if(!container) {
|
|
22
|
+
// Create the container
|
|
23
|
+
container = document.createElement('div')
|
|
24
|
+
container.classList.add('gjs-website-meta')
|
|
25
|
+
// Add the container to the UI
|
|
26
|
+
editor.Panels.add('gjs-website-meta', {
|
|
27
|
+
id: 'gjs-website-meta',
|
|
28
|
+
el: container,
|
|
29
|
+
visible: true,
|
|
30
|
+
})
|
|
31
|
+
}
|
|
32
|
+
// Display the website meta data
|
|
33
|
+
container.innerHTML = `
|
|
34
|
+
<div class="gjs-website-meta-title">Website</div>
|
|
35
|
+
<div class="gjs-website-meta-name">${websiteMeta.name}</div>
|
|
36
|
+
<div class="gjs-website-meta-image" style="background: ${websiteMeta.imageUrl}"></div>
|
|
37
|
+
`
|
|
38
|
+
console.log('displayWebsiteMeta', websiteMeta, container)
|
|
39
|
+
}
|