@silexlabs/silex 3.0.6 → 3.0.7

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.
@@ -0,0 +1,2 @@
1
+ import { Editor } from 'grapesjs';
2
+ export default function pluginUploadProgress(editor: Editor): void;
@@ -3,6 +3,7 @@
3
3
  */
4
4
  export declare const WEBSITE_DATA_FILE = "website.json";
5
5
  export declare const WEBSITE_META_DATA_FILE = "meta.json";
6
+ export declare const WEBSITE_PAGES_FOLDER = "src";
6
7
  export declare const DEFAULT_WEBSITE_ID = "default";
7
8
  export declare const DEFAULT_LANGUAGE = "en";
8
9
  export declare const CLIENT_CONFIG_FILE_NAME = "silex.js";
@@ -3,6 +3,7 @@
3
3
  */
4
4
  export declare const WEBSITE_DATA_FILE = "website.json";
5
5
  export declare const WEBSITE_META_DATA_FILE = "meta.json";
6
+ export declare const WEBSITE_PAGES_FOLDER = "src";
6
7
  export declare const DEFAULT_WEBSITE_ID = "default";
7
8
  export declare const DEFAULT_LANGUAGE = "en";
8
9
  export declare const CLIENT_CONFIG_FILE_NAME = "silex.js";
@@ -16,12 +16,13 @@
16
16
  * along with this program. If not, see <https://www.gnu.org/licenses/>.
17
17
  */
18
18
  Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.DEV_MESSAGE = exports.SILEX_VERSION = exports.API_WEBSITE_META_WRITE = exports.API_WEBSITE_META_READ = exports.API_WEBSITE_ASSETS_WRITE = exports.API_WEBSITE_ASSET_READ = exports.API_WEBSITE_LIST = exports.API_WEBSITE_DUPLICATE = exports.API_WEBSITE_DELETE = exports.API_WEBSITE_CREATE = exports.API_WEBSITE_WRITE = exports.API_WEBSITE_READ = exports.API_WEBSITE_PATH = exports.API_PUBLICATION_STATUS = exports.API_PUBLICATION_PUBLISH = exports.API_PUBLICATION_PATH = exports.API_CONNECTOR_LOGIN_CALLBACK = exports.API_CONNECTOR_SETTINGS = exports.API_CONNECTOR_LOGIN = exports.API_CONNECTOR_LOGOUT = exports.API_CONNECTOR_LIST = exports.API_CONNECTOR_USER = exports.API_CONNECTOR_PATH = exports.API_PATH = exports.CLIENT_CONFIG_FILE_NAME = exports.DEFAULT_LANGUAGE = exports.DEFAULT_WEBSITE_ID = exports.WEBSITE_META_DATA_FILE = exports.WEBSITE_DATA_FILE = void 0;
19
+ exports.DEV_MESSAGE = exports.SILEX_VERSION = exports.API_WEBSITE_META_WRITE = exports.API_WEBSITE_META_READ = exports.API_WEBSITE_ASSETS_WRITE = exports.API_WEBSITE_ASSET_READ = exports.API_WEBSITE_LIST = exports.API_WEBSITE_DUPLICATE = exports.API_WEBSITE_DELETE = exports.API_WEBSITE_CREATE = exports.API_WEBSITE_WRITE = exports.API_WEBSITE_READ = exports.API_WEBSITE_PATH = exports.API_PUBLICATION_STATUS = exports.API_PUBLICATION_PUBLISH = exports.API_PUBLICATION_PATH = exports.API_CONNECTOR_LOGIN_CALLBACK = exports.API_CONNECTOR_SETTINGS = exports.API_CONNECTOR_LOGIN = exports.API_CONNECTOR_LOGOUT = exports.API_CONNECTOR_LIST = exports.API_CONNECTOR_USER = exports.API_CONNECTOR_PATH = exports.API_PATH = exports.CLIENT_CONFIG_FILE_NAME = exports.DEFAULT_LANGUAGE = exports.DEFAULT_WEBSITE_ID = exports.WEBSITE_PAGES_FOLDER = exports.WEBSITE_META_DATA_FILE = exports.WEBSITE_DATA_FILE = void 0;
20
20
  /**
21
21
  * @fileoverview define constants for Silex client and server
22
22
  */
23
23
  exports.WEBSITE_DATA_FILE = 'website.json';
24
24
  exports.WEBSITE_META_DATA_FILE = 'meta.json';
25
+ exports.WEBSITE_PAGES_FOLDER = 'src';
25
26
  exports.DEFAULT_WEBSITE_ID = 'default';
26
27
  exports.DEFAULT_LANGUAGE = 'en';
27
28
  exports.CLIENT_CONFIG_FILE_NAME = 'silex.js';
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/ts/constants.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAEH;;GAEG;AAEU,QAAA,iBAAiB,GAAG,cAAc,CAAA;AAClC,QAAA,sBAAsB,GAAG,WAAW,CAAA;AAEpC,QAAA,kBAAkB,GAAG,SAAS,CAAA;AAC9B,QAAA,gBAAgB,GAAG,IAAI,CAAA;AACvB,QAAA,uBAAuB,GAAG,UAAU,CAAA;AAEpC,QAAA,QAAQ,GAAG,MAAM,CAAA;AAEjB,QAAA,kBAAkB,GAAG,YAAY,CAAA;AACjC,QAAA,kBAAkB,GAAG,OAAO,CAAA;AAC5B,QAAA,kBAAkB,GAAG,GAAG,CAAA;AACxB,QAAA,oBAAoB,GAAG,SAAS,CAAA;AAChC,QAAA,mBAAmB,GAAG,QAAQ,CAAA;AAC9B,QAAA,sBAAsB,GAAG,WAAW,CAAA;AACpC,QAAA,4BAA4B,GAAG,iBAAiB,CAAA;AAEhD,QAAA,oBAAoB,GAAG,cAAc,CAAA;AACrC,QAAA,uBAAuB,GAAG,GAAG,CAAA;AAC7B,QAAA,sBAAsB,GAAG,qBAAqB,CAAA;AAE9C,QAAA,gBAAgB,GAAG,UAAU,CAAA;AAC7B,QAAA,gBAAgB,GAAG,GAAG,CAAA;AACtB,QAAA,iBAAiB,GAAG,GAAG,CAAA;AACvB,QAAA,kBAAkB,GAAG,GAAG,CAAA;AACxB,QAAA,kBAAkB,GAAG,GAAG,CAAA;AACxB,QAAA,qBAAqB,GAAG,YAAY,CAAA;AACpC,QAAA,gBAAgB,GAAG,GAAG,CAAA;AACtB,QAAA,sBAAsB,GAAG,SAAS,CAAA;AAClC,QAAA,wBAAwB,GAAG,SAAS,CAAA;AACpC,QAAA,qBAAqB,GAAG,OAAO,CAAA;AAC/B,QAAA,sBAAsB,GAAG,OAAO,CAAA;AAO7C,IAAI,CAAC;IAAC,qBAAa,GAAG,iBAAiB,CAAA;AAAC,CAAC;AAAC,OAAO,CAAC,EAAE,CAAC;IACnD,4BAA4B;IAC5B,qBAAa,GAAG,qBAAa,IAAI,OAAO,CAAA;AAC1C,CAAC;AAEY,QAAA,WAAW,GAAG;;;;;;;;;;2DAUgC,qBAAa,CAAC,KAAK,CAAC,CAAC,CAAC;;;;;;;;CAQhF,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/ts/constants.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAEH;;GAEG;AAEU,QAAA,iBAAiB,GAAG,cAAc,CAAA;AAClC,QAAA,sBAAsB,GAAG,WAAW,CAAA;AACpC,QAAA,oBAAoB,GAAG,KAAK,CAAA;AAE5B,QAAA,kBAAkB,GAAG,SAAS,CAAA;AAC9B,QAAA,gBAAgB,GAAG,IAAI,CAAA;AACvB,QAAA,uBAAuB,GAAG,UAAU,CAAA;AAEpC,QAAA,QAAQ,GAAG,MAAM,CAAA;AAEjB,QAAA,kBAAkB,GAAG,YAAY,CAAA;AACjC,QAAA,kBAAkB,GAAG,OAAO,CAAA;AAC5B,QAAA,kBAAkB,GAAG,GAAG,CAAA;AACxB,QAAA,oBAAoB,GAAG,SAAS,CAAA;AAChC,QAAA,mBAAmB,GAAG,QAAQ,CAAA;AAC9B,QAAA,sBAAsB,GAAG,WAAW,CAAA;AACpC,QAAA,4BAA4B,GAAG,iBAAiB,CAAA;AAEhD,QAAA,oBAAoB,GAAG,cAAc,CAAA;AACrC,QAAA,uBAAuB,GAAG,GAAG,CAAA;AAC7B,QAAA,sBAAsB,GAAG,qBAAqB,CAAA;AAE9C,QAAA,gBAAgB,GAAG,UAAU,CAAA;AAC7B,QAAA,gBAAgB,GAAG,GAAG,CAAA;AACtB,QAAA,iBAAiB,GAAG,GAAG,CAAA;AACvB,QAAA,kBAAkB,GAAG,GAAG,CAAA;AACxB,QAAA,kBAAkB,GAAG,GAAG,CAAA;AACxB,QAAA,qBAAqB,GAAG,YAAY,CAAA;AACpC,QAAA,gBAAgB,GAAG,GAAG,CAAA;AACtB,QAAA,sBAAsB,GAAG,SAAS,CAAA;AAClC,QAAA,wBAAwB,GAAG,SAAS,CAAA;AACpC,QAAA,qBAAqB,GAAG,OAAO,CAAA;AAC/B,QAAA,sBAAsB,GAAG,OAAO,CAAA;AAO7C,IAAI,CAAC;IAAC,qBAAa,GAAG,iBAAiB,CAAA;AAAC,CAAC;AAAC,OAAO,CAAC,EAAE,CAAC;IACnD,4BAA4B;IAC5B,qBAAa,GAAG,qBAAa,IAAI,OAAO,CAAA;AAC1C,CAAC;AAEY,QAAA,WAAW,GAAG;;;;;;;;;;2DAUgC,qBAAa,CAAC,KAAK,CAAC,CAAC,CAAC;;;;;;;;CAQhF,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare function getPageSlug(pageName: any): any;
2
+ export declare function getPageLink(pageName: any): string;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ /*
3
+ * Silex website builder, free/libre no-code tool for makers.
4
+ * Copyright (c) 2023 lexoyo and Silex Labs foundation
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License as published by
8
+ * the Free Software Foundation, either version 3 of the License, or any later version.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
17
+ */
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.getPageSlug = getPageSlug;
20
+ exports.getPageLink = getPageLink;
21
+ // Page related functions
22
+ // This is used on the client and the server
23
+ function getPageSlug(pageName) {
24
+ return (pageName || 'index')
25
+ .toLowerCase()
26
+ .replace(/[^a-z0-9 -]/g, '')
27
+ // Collapse whitespace and replace by -
28
+ .replace(/\s+/g, '-')
29
+ // Collapse dashes
30
+ .replace(/-+/g, '-');
31
+ }
32
+ function getPageLink(pageName) {
33
+ return `./${getPageSlug(pageName)}.html`;
34
+ }
35
+ //# sourceMappingURL=page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page.js","sourceRoot":"","sources":["../../../src/ts/page.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;AAIH,kCAQC;AACD,kCAEC;AAbD,yBAAyB;AACzB,4CAA4C;AAC5C,SAAgB,WAAW,CAAC,QAAQ;IAClC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC;SACzB,WAAW,EAAE;SACb,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;QAC5B,uCAAuC;SACtC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;QACrB,kBAAkB;SACjB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AACxB,CAAC;AACD,SAAgB,WAAW,CAAC,QAAQ;IAClC,OAAO,KAAK,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAA;AAC1C,CAAC"}
@@ -95,6 +95,8 @@ export default class GitlabConnector implements StorageConnector {
95
95
  * Call the Gitlab API with the user's token and handle errors
96
96
  */
97
97
  callApi(session: GitlabSession, path: string, method?: 'POST' | 'GET' | 'PUT' | 'DELETE', body?: GitlabWriteFile | GitlabGetToken | GitlabWebsiteName | GitlabCreateBranch | GitlabGetTags | GitlabCreateTag | GitlabFetchCommits | null, params?: any): Promise<any>;
98
+ private projectPathCache;
99
+ downloadRawFile(session: GitlabSession, projectId: string, filePath: string): Promise<Buffer>;
98
100
  private generateCodeVerifier;
99
101
  private generateCodeChallenge;
100
102
  private getRedirect;
@@ -122,8 +124,21 @@ export default class GitlabConnector implements StorageConnector {
122
124
  logout(session: GitlabSession): Promise<void>;
123
125
  getUser(session: GitlabSession): Promise<ConnectorUser>;
124
126
  listWebsites(session: GitlabSession): Promise<WebsiteMeta[]>;
127
+ /**
128
+ * Read the website data
129
+ * The website data file is named `website.json` and the pages are named `page-{id}.json`
130
+ * The pages are stored in the `src` folder by default
131
+ */
125
132
  readWebsite(session: GitlabSession, websiteId: string): Promise<WebsiteData>;
133
+ /**
134
+ * Create a new website, i.e. a new Gitlab repository with an empty website data file
135
+ */
126
136
  createWebsite(session: GitlabSession, websiteMeta: WebsiteMetaFileContent): Promise<WebsiteId>;
137
+ /**
138
+ * Update the website data
139
+ * Split the website data into 1 file per page + 1 file for the website data itself
140
+ * Use gitlab batch API to create/update the files
141
+ */
127
142
  updateWebsite(session: GitlabSession, websiteId: WebsiteId, websiteData: WebsiteData): Promise<void>;
128
143
  deleteWebsite(session: GitlabSession, websiteId: WebsiteId): Promise<void>;
129
144
  duplicateWebsite(session: GitlabSession, websiteId: string): Promise<void>;
@@ -49,6 +49,16 @@ const node_fetch_1 = __importDefault(require("node-fetch"));
49
49
  const crypto_1 = __importStar(require("crypto"));
50
50
  const path_1 = require("path");
51
51
  const https_1 = require("https");
52
+ const page_1 = require("../../page");
53
+ // interface MetaRepoFileContent {
54
+ // websites: {
55
+ // [websiteId: string]: {
56
+ // meta: WebsiteMetaFileContent,
57
+ // createdAt: string,
58
+ // updatedAt: string,
59
+ // }
60
+ // }
61
+ // }
52
62
  const svg = `<?xml version="1.0" encoding="UTF-8" standalone="no"?>
53
63
  <svg
54
64
  xmlns:svg="http://www.w3.org/2000/svg"
@@ -138,8 +148,11 @@ class GitlabConnector {
138
148
  }
139
149
  // **
140
150
  // Convenience methods for the Gitlab API
141
- getAssetPath(path) {
142
- return encodeURIComponent((0, path_1.join)(this.options.assetsFolder, path));
151
+ getAssetPath(path, encode = true) {
152
+ const resolvedPath = (0, path_1.join)(this.options.assetsFolder, path);
153
+ if (encode)
154
+ return encodeURIComponent(resolvedPath);
155
+ return resolvedPath;
143
156
  }
144
157
  isUsingOfficialInstance() {
145
158
  const gitlabDomainRegexp = /(^|\b)(gitlab\.com)($|\b)/;
@@ -170,49 +183,10 @@ class GitlabConnector {
170
183
  });
171
184
  }
172
185
  async readFile(session, websiteId, fileName) {
186
+ // Remove leading slash
173
187
  const safePath = fileName.replace(/^\//, '');
174
- // Call the API
175
- const url = `${this.options.domain}/api/v4/projects/${websiteId}/repository/files/${safePath}?ref=${this.options.branch}&access_token=${this.getSessionToken(session).token?.access_token}`;
176
- const response = await (0, node_fetch_1.default)(url, {
177
- agent: this.getAgent(),
178
- method: 'GET',
179
- headers: {
180
- 'Content-Type': 'application/json',
181
- },
182
- });
183
- const json = await response.json();
184
- if (!response.ok)
185
- throw new types_1.ApiError(`Error reading file "${fileName}" from Gitlab: ${json?.message ?? json?.error ?? response.statusText}`, response.status);
186
- // From base64 string to buffer
187
- const buf = Buffer.from(json.content, 'base64');
188
- // Return the image bytes
189
- return buf;
190
- }
191
- /*
192
- * Get the meta repo path for the current user
193
- * The meta repo contains a JSON file which contains the list of websites
194
- */
195
- //private getMetaRepoPath(session: GitlabSession): string {
196
- // if(!this.getSessionToken(session).username) throw new ApiError('Missing Gitlab user ID. User not logged in?', 401)
197
- // return encodeURIComponent(`${this.getSessionToken(session).username}/${this.options.metaRepo}`)
198
- //}
199
- ///**
200
- // * Initialize the storage with a meta repo
201
- // */
202
- //private async initStorage(session: GitlabSession): Promise<void> {
203
- // // Create the meta repo
204
- // try {
205
- // const project = await this.callApi(session, 'api/v4/projects/', 'POST', {
206
- // name: this.options.metaRepo,
207
- // }) as any
208
- // return this.createFile(session, this.getMetaRepoPath(session), this.options.metaRepoFile, JSON.stringify({
209
- // websites: {}
210
- // } as MetaRepoFileContent))
211
- // } catch (e) {
212
- // console.error('Could not init storage', e.statusCode, e.httpStatusCode, e)
213
- // throw e
214
- // }
215
- //}
188
+ return this.downloadRawFile(session, websiteId, safePath);
189
+ }
216
190
  /**
217
191
  * Call the Gitlab API with the user's token and handle errors
218
192
  */
@@ -243,11 +217,18 @@ class GitlabConnector {
243
217
  }
244
218
  catch (e) {
245
219
  console.error('Gitlab API error (0)', e);
246
- throw new types_1.ApiError(`Gitlab API error (0): ${e.message} ${e.code} ${e.name} ${e.type}`, 500);
220
+ throw new types_1.ApiError(`Gitlab API error (0): ${e.message} ${e.text} ${e.code} ${e.name} ${e.type}`, 500);
247
221
  }
248
- let json;
249
222
  // Handle the case when the server returns a non-JSON response (e.g. 400 Bad Request)
250
- const text = await response.text();
223
+ const text = await async function () {
224
+ try {
225
+ return await response.text();
226
+ }
227
+ catch (e) {
228
+ console.error('Gitlab API error (6) - could not parse response', response.status, response.statusText, { url, method, body, params }, e);
229
+ throw new types_1.ApiError(`Gitlab API error (6): response body not available. ${e.message}`, 500);
230
+ }
231
+ }();
251
232
  if (!response.ok) {
252
233
  if (text.includes('A file with this name doesn\'t exist')) {
253
234
  throw new types_1.ApiError('Gitlab API error (5): Not Found', 404);
@@ -290,11 +271,12 @@ class GitlabConnector {
290
271
  }
291
272
  }
292
273
  else {
293
- const message = typeof json?.message === 'object' ? Object.entries(json.message).map(entry => entry.join(' ')).join(' ') : json?.message ?? json?.error ?? response.statusText;
294
- console.error('Gitlab API error (1)', response.status, response.statusText, { url, method, body, params, text, message });
295
- throw new types_1.ApiError(`Gitlab API error (1): ${message}`, response.status);
274
+ const message = response.statusText;
275
+ console.error('Gitlab API error (1)', response.status, response.statusText, { url, method, body, params, text: text, message });
276
+ throw new types_1.ApiError(`Gitlab API error (1): ${message} (${text})`, response.status);
296
277
  }
297
278
  }
279
+ let json;
298
280
  try {
299
281
  json = JSON.parse(text);
300
282
  }
@@ -305,12 +287,81 @@ class GitlabConnector {
305
287
  }
306
288
  else {
307
289
  // Useless error linked to the fact that the response is not JSON
308
- console.error('Gitlab API error (3) - could not parse response', response.status, response.statusText, { url, method, body, params, text });
290
+ console.error('Gitlab API error (3) - could not parse response', response.status, response.statusText, { url, method, body, params, text: text });
309
291
  return text;
310
292
  }
311
293
  }
312
294
  return json;
313
295
  }
296
+ // Cache for projects path
297
+ projectPathCache = new Map();
298
+ async downloadRawFile(session, projectId, filePath) {
299
+ const token = this.getSessionToken(session).token?.access_token;
300
+ const domain = this.options.domain;
301
+ const branch = this.options.branch;
302
+ // Get the project path with namespace
303
+ let pathWithNamespace = this.projectPathCache.get(projectId);
304
+ if (!pathWithNamespace) {
305
+ const metaUrl = `${domain}/api/v4/projects/${projectId}`;
306
+ const metaRes = await (0, node_fetch_1.default)(metaUrl, {
307
+ agent: this.getAgent(),
308
+ headers: {
309
+ 'Authorization': `Bearer ${token}`,
310
+ },
311
+ });
312
+ console.log('metaRes', metaRes.status, metaRes.statusText, { metaUrl });
313
+ const metaText = await metaRes.text();
314
+ if (!metaRes.ok) {
315
+ console.error('GitLab raw error (meta)', metaRes.status, metaRes.statusText, { metaUrl, metaText });
316
+ throw new types_1.ApiError(`GitLab raw error (meta): ${metaRes.statusText}`, metaRes.status);
317
+ }
318
+ console.log('metaText', metaText);
319
+ try {
320
+ const meta = JSON.parse(metaText);
321
+ pathWithNamespace = meta.path_with_namespace;
322
+ }
323
+ catch (e) {
324
+ throw new types_1.ApiError('GitLab raw error (meta): could not parse project info', 500);
325
+ }
326
+ console.log('pathWithNamespace', pathWithNamespace);
327
+ // Limit cache size, remove least recently used
328
+ this.projectPathCache.set(projectId, pathWithNamespace);
329
+ if (this.projectPathCache.size > 500) {
330
+ this.projectPathCache.delete(this.projectPathCache.keys().next().value);
331
+ }
332
+ }
333
+ // Construct the raw URL
334
+ // GET /projects/:id/repository/files/:file_path/raw
335
+ const rawUrl = `${domain}/api/v4/projects/${encodeURIComponent(pathWithNamespace)}/repository/files/${encodeURIComponent(filePath)}/raw?ref=${branch}&access_token=${token}`;
336
+ const fileRes = await (0, node_fetch_1.default)(rawUrl, {
337
+ agent: this.getAgent(),
338
+ });
339
+ console.log('fileRes', fileRes.status, fileRes.statusText, { rawUrl, token });
340
+ const contentType = fileRes.headers.get('content-type');
341
+ if (contentType?.includes('text/html')) {
342
+ const html = await fileRes.text();
343
+ throw new types_1.ApiError('GitLab returned HTML instead of file (unauthorized or not found).', 401);
344
+ }
345
+ if (!fileRes.ok) {
346
+ const errText = await fileRes.text();
347
+ if (errText.includes('not found') || fileRes.status === 404) {
348
+ throw new types_1.ApiError('GitLab raw error (5): Not Found', 404);
349
+ }
350
+ console.error('GitLab raw error (1)', fileRes.status, fileRes.statusText, { rawUrl, errText });
351
+ throw new types_1.ApiError(`GitLab raw error (1): ${fileRes.statusText} (${errText})`, fileRes.status);
352
+ }
353
+ console.log('fileRes ok', fileRes.status, fileRes.statusText);
354
+ try {
355
+ console.log('fileRes buffer', fileRes.headers.get('content-type'), fileRes.headers.get('content-length'));
356
+ const buffer = await fileRes.buffer();
357
+ console.log('fileRes buffer', buffer.length);
358
+ return buffer;
359
+ }
360
+ catch (e) {
361
+ console.error('GitLab raw error (3): could not read buffer', e);
362
+ throw new types_1.ApiError('GitLab raw error (3): failed to read binary content', 500);
363
+ }
364
+ }
314
365
  generateCodeVerifier() {
315
366
  return crypto_1.default.randomBytes(64).toString('base64')
316
367
  .replace(/\+/g, '-')
@@ -480,15 +531,41 @@ class GitlabConnector {
480
531
  connectorUserSettings: {},
481
532
  }));
482
533
  }
534
+ /**
535
+ * Read the website data
536
+ * The website data file is named `website.json` and the pages are named `page-{id}.json`
537
+ * The pages are stored in the `src` folder by default
538
+ */
483
539
  async readWebsite(session, websiteId) {
484
- const result = await this.callApi(session, `api/v4/projects/${websiteId}/repository/files/${constants_1.WEBSITE_DATA_FILE}`, 'GET', null, {
485
- ref: this.options.branch,
486
- });
487
- const { content } = result;
488
- const contentDecoded = Buffer.from(content, 'base64').toString('utf8');
489
- const websiteData = JSON.parse(contentDecoded);
490
- return websiteData;
540
+ const websiteDataBuf = await this.downloadRawFile(session, websiteId, constants_1.WEBSITE_DATA_FILE);
541
+ const websiteData = JSON.parse(websiteDataBuf.toString('utf8'));
542
+ // If the website pages are not in the main file, we need to read them
543
+ // This happens when the website was just created
544
+ // Let grapesjs create the pages in the frontend
545
+ if (!websiteData.pages) {
546
+ return websiteData;
547
+ }
548
+ // Load each page in parallel
549
+ const pages = await Promise.all(websiteData.pages.map(async (page) => {
550
+ if (page.isFile) {
551
+ const name = (0, page_1.getPageSlug)(page.name);
552
+ const fileName = (`${((0, page_1.getPageSlug)(page.name))}-${page.id}`);
553
+ const filePath = `${constants_1.WEBSITE_PAGES_FOLDER}/${fileName}.json`;
554
+ const pageContent = await this.downloadRawFile(session, websiteId, filePath);
555
+ const res = JSON.parse(pageContent.toString('utf8'));
556
+ return res;
557
+ }
558
+ return page;
559
+ }));
560
+ // Read each page file if needed
561
+ return {
562
+ ...websiteData,
563
+ pages,
564
+ };
491
565
  }
566
+ /**
567
+ * Create a new website, i.e. a new Gitlab repository with an empty website data file
568
+ */
492
569
  async createWebsite(session, websiteMeta) {
493
570
  const project = await this.callApi(session, 'api/v4/projects/', 'POST', {
494
571
  name: this.options.repoPrefix + websiteMeta.name,
@@ -499,13 +576,70 @@ class GitlabConnector {
499
576
  //await this.setWebsiteMeta(session, project.id, websiteMeta)
500
577
  return project.id;
501
578
  }
579
+ /**
580
+ * Update the website data
581
+ * Split the website data into 1 file per page + 1 file for the website data itself
582
+ * Use gitlab batch API to create/update the files
583
+ */
502
584
  async updateWebsite(session, websiteId, websiteData) {
503
- const project = await this.callApi(session, `api/v4/projects/${websiteId}/repository/files/${constants_1.WEBSITE_DATA_FILE}`, 'PUT', {
585
+ const batchActions = [];
586
+ // List existing files in the pages folder
587
+ let existingFiles = [];
588
+ try {
589
+ const files = await this.callApi(session, `api/v4/projects/${websiteId}/repository/tree`, 'GET', null, {
590
+ path: constants_1.WEBSITE_PAGES_FOLDER,
591
+ recursive: false,
592
+ });
593
+ existingFiles = files.map(file => file.path);
594
+ }
595
+ catch (e) {
596
+ if (e.statusCode !== 404 && e.httpStatusCode !== 404) {
597
+ throw e;
598
+ }
599
+ }
600
+ // Prepare actions for each page
601
+ const pages = websiteData.pages.map((page) => {
602
+ const file_name = encodeURIComponent(`${((0, page_1.getPageSlug)(page.name))}-${page.id}`);
603
+ const file_path = (`${constants_1.WEBSITE_PAGES_FOLDER}/${file_name}.json`);
604
+ const content = JSON.stringify(page);
605
+ // Determine whether to create or update the file
606
+ if (existingFiles.includes(file_path)) {
607
+ batchActions.push({
608
+ action: 'update',
609
+ file_path,
610
+ content,
611
+ });
612
+ }
613
+ else {
614
+ batchActions.push({
615
+ action: 'create',
616
+ file_path,
617
+ content,
618
+ });
619
+ }
620
+ return {
621
+ name: page.name,
622
+ id: page.id,
623
+ isFile: true,
624
+ };
625
+ });
626
+ // Prepare the main website data file
627
+ const websiteDataWithGitlabPages = {
628
+ ...websiteData,
629
+ pages,
630
+ };
631
+ batchActions.push({
632
+ action: 'update',
633
+ file_path: constants_1.WEBSITE_DATA_FILE,
634
+ content: JSON.stringify(websiteDataWithGitlabPages),
635
+ });
636
+ // Perform a single batch commit
637
+ const batch = {
504
638
  branch: this.options.branch,
505
639
  commit_message: 'Update website data from Silex',
506
- content: JSON.stringify(websiteData),
507
- id: websiteId,
508
- });
640
+ actions: batchActions,
641
+ };
642
+ await this.callApi(session, `api/v4/projects/${websiteId}/repository/commits`, 'POST', batch);
509
643
  }
510
644
  async deleteWebsite(session, websiteId) {
511
645
  // Delete repo
@@ -524,7 +658,6 @@ class GitlabConnector {
524
658
  // branch: this.options.branch,
525
659
  // commit_message: `Delete meta data of ${data.meta.name} (${websiteId}) from Silex`,
526
660
  // content: JSON.stringify(metaRepo),
527
- // file_path: this.options.metaRepoFile,
528
661
  //})
529
662
  }
530
663
  async duplicateWebsite(session, websiteId) {
@@ -544,10 +677,10 @@ class GitlabConnector {
544
677
  });
545
678
  // Upload all files
546
679
  for (const file of files) {
547
- const path = encodeURIComponent(file);
548
- const content = await this.readFile(session, websiteId, path);
680
+ const content = await this.readFile(session, websiteId, file);
549
681
  // From buffer to string
550
682
  const contentStr = content.toString('base64');
683
+ const path = encodeURIComponent(file);
551
684
  switch (file) {
552
685
  case constants_1.WEBSITE_DATA_FILE:
553
686
  await this.updateFile(session, newId, path, contentStr, true);
@@ -586,24 +719,6 @@ class GitlabConnector {
586
719
  };
587
720
  }
588
721
  async setWebsiteMeta(session, websiteId, websiteMeta) {
589
- //// Load the meta repo data
590
- //const file = await this.callApi(session, `api/v4/projects/${this.getMetaRepoPath(session)}/repository/files/${this.options.metaRepoFile}`, 'GET', null, {
591
- // ref: this.options.branch,
592
- //})
593
- //const metaRepo = JSON.parse(Buffer.from(file.content, 'base64').toString('utf8')) as MetaRepoFileContent
594
- //// Update or create the website meta data
595
- //metaRepo.websites[websiteId] = {
596
- // updatedAt: new Date().toISOString(),
597
- // createdAt: metaRepo.websites[websiteId]?.createdAt ?? new Date().toISOString(),
598
- // meta: websiteMeta,
599
- //}
600
- //// Save the meta repo data
601
- //const project = await this.callApi(session, `api/v4/projects/${this.getMetaRepoPath(session)}/repository/files/${this.options.metaRepoFile}`, 'PUT', {
602
- // branch: this.options.branch,
603
- // commit_message: `Update website meta data of ${websiteMeta.name} (${websiteId}) from Silex`,
604
- // content: JSON.stringify(metaRepo),
605
- // file_path: this.options.metaRepoFile,
606
- //})
607
722
  // Rename the repo if needed
608
723
  const oldMeta = await this.getWebsiteMeta(session, websiteId);
609
724
  if (websiteMeta.name !== oldMeta.name) {
@@ -611,14 +726,6 @@ class GitlabConnector {
611
726
  name: this.options.repoPrefix + websiteMeta.name,
612
727
  });
613
728
  }
614
- //// Update the metadata file
615
- //await this.callApi(session, `api/v4/projects/${websiteId}/repository/files/${WEBSITE_META_DATA_FILE}`, 'PUT', {
616
- // branch: this.options.branch,
617
- // commit_message: 'Update website meta data from Silex',
618
- // content: JSON.stringify(websiteMeta),
619
- // file_path: WEBSITE_META_DATA_FILE,
620
- // id: websiteId,
621
- //})
622
729
  }
623
730
  async writeAssets(session, websiteId, files, status) {
624
731
  status && await status({ message: 'in progress...', status: types_1.JobStatus.IN_PROGRESS });
@@ -644,8 +751,7 @@ class GitlabConnector {
644
751
  status && await status({ message: 'Successfull', status: types_1.JobStatus.SUCCESS });
645
752
  }
646
753
  async readAsset(session, websiteId, fileName) {
647
- // Remove leading slash
648
- const finalPath = this.getAssetPath(fileName);
754
+ const finalPath = this.getAssetPath(fileName, false);
649
755
  return this.readFile(session, websiteId, finalPath);
650
756
  }
651
757
  async deleteAssets(session, websiteId, fileNames) {
@@ -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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"}
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEV_MESSAGE = exports.SILEX_VERSION = exports.API_WEBSITE_META_WRITE = exports.API_WEBSITE_META_READ = exports.API_WEBSITE_ASSETS_WRITE = exports.API_WEBSITE_ASSET_READ = exports.API_WEBSITE_LIST = exports.API_WEBSITE_DUPLICATE = exports.API_WEBSITE_DELETE = exports.API_WEBSITE_CREATE = exports.API_WEBSITE_WRITE = exports.API_WEBSITE_READ = exports.API_WEBSITE_PATH = exports.API_PUBLICATION_STATUS = exports.API_PUBLICATION_PUBLISH = exports.API_PUBLICATION_PATH = exports.API_CONNECTOR_LOGIN_CALLBACK = exports.API_CONNECTOR_SETTINGS = exports.API_CONNECTOR_LOGIN = exports.API_CONNECTOR_LOGOUT = exports.API_CONNECTOR_LIST = exports.API_CONNECTOR_USER = exports.API_CONNECTOR_PATH = exports.API_PATH = exports.CLIENT_CONFIG_FILE_NAME = exports.DEFAULT_LANGUAGE = exports.DEFAULT_WEBSITE_ID = exports.WEBSITE_META_DATA_FILE = exports.WEBSITE_DATA_FILE = void 0;
3
+ exports.DEV_MESSAGE = exports.SILEX_VERSION = exports.API_WEBSITE_META_WRITE = exports.API_WEBSITE_META_READ = exports.API_WEBSITE_ASSETS_WRITE = exports.API_WEBSITE_ASSET_READ = exports.API_WEBSITE_LIST = exports.API_WEBSITE_DUPLICATE = exports.API_WEBSITE_DELETE = exports.API_WEBSITE_CREATE = exports.API_WEBSITE_WRITE = exports.API_WEBSITE_READ = exports.API_WEBSITE_PATH = exports.API_PUBLICATION_STATUS = exports.API_PUBLICATION_PUBLISH = exports.API_PUBLICATION_PATH = exports.API_CONNECTOR_LOGIN_CALLBACK = exports.API_CONNECTOR_SETTINGS = exports.API_CONNECTOR_LOGIN = exports.API_CONNECTOR_LOGOUT = exports.API_CONNECTOR_LIST = exports.API_CONNECTOR_USER = exports.API_CONNECTOR_PATH = exports.API_PATH = exports.CLIENT_CONFIG_FILE_NAME = exports.DEFAULT_LANGUAGE = exports.DEFAULT_WEBSITE_ID = exports.WEBSITE_PAGES_FOLDER = exports.WEBSITE_META_DATA_FILE = exports.WEBSITE_DATA_FILE = void 0;
4
4
  exports.WEBSITE_DATA_FILE = 'website.json';
5
5
  exports.WEBSITE_META_DATA_FILE = 'meta.json';
6
+ exports.WEBSITE_PAGES_FOLDER = 'src';
6
7
  exports.DEFAULT_WEBSITE_ID = 'default';
7
8
  exports.DEFAULT_LANGUAGE = 'en';
8
9
  exports.CLIENT_CONFIG_FILE_NAME = 'silex.js';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@silexlabs/silex",
3
3
  "description": "Free and easy website builder for everyone.",
4
- "version": "3.0.6",
4
+ "version": "3.0.7",
5
5
  "version:backwardcompat": "3.0.0",
6
6
  "author": {
7
7
  "name": "Alex Hoyau",