@@ -3,6 +3,8 @@ import live-elements-web-server.page.index
33import .lib.middle
44
55import PackagePath from 'live-elements-web-server/lib/package-path.cjs'
6+ import CSSError from 'live-elements-web-server/shared/errors/css-error.mjs'
7+ import StandardError from 'live-elements-web-server/shared/errors/standard-error.mjs'
68import path from 'path'
79import fs from 'fs'
810
@@ -11,6 +13,7 @@ component WorkspaceRoute < Route{
1113
1214 string workspacesPath = ''
1315 string templatesPath = ''
16+ string defaultProject = 'page'
1417 WorkspaceContainer workspaces = null
1518 Object view = null
1619 Array<Object> templates = []
@@ -104,8 +107,8 @@ component WorkspaceRoute < Route{
104107 const wsname = req.params.wsname
105108 let ws = null
106109 if ( wsname === '-' ){
107- if ( fs.existsSync(path.join(workspaceRoute.workspaces.path, 'page' ))){
108- ws = await workspaceRoute.workspaces.loadWorkspace('page' )
110+ if ( fs.existsSync(path.join(workspaceRoute.workspaces.path, workspaceRoute.defaultProject ))){
111+ ws = await workspaceRoute.workspaces.loadWorkspace(workspaceRoute.defaultProject )
109112 } else {
110113 ws = await workspaceRoute.workspaces.createWorkspaceFrom('default')
111114 ws.save()
@@ -189,6 +192,7 @@ component WorkspaceRoute < Route{
189192 const ws = workspaceRoute.workspaces.loadWorkspace(req.params.wsname)
190193 const result = await ws.compile(workspaceRoute.workspaces.operations, workspaceRoute.url)
191194 if ( result.hasErrors() ){
195+ ws.save()
192196 res.json({error: { messages: result.errors.map(e => e.message)} }).end()
193197 } else {
194198 res.json({success: true, compilation: result.identifier }).end()
@@ -252,11 +256,20 @@ component WorkspaceRoute < Route{
252256 if ( ws.compilation.usageAssignments ){
253257 assignmentsToSend = ws.compilation.usageAssignments
254258 } else {
255- assignmentsToSend = await workspaceRoute.workspaces.operations.updateCompilationUsages(
256- ws.compilation, req.body.page, ws.name, workspaceRoute.url
257- )
258- // assignmentsToSend = await ws.compilation.updateUsages(req.body.page, ws.name, workspaceRoute.url)
259- ws.save()
259+ try{
260+ assignmentsToSend = await workspaceRoute.workspaces.operations.updateCompilationUsages(
261+ ws.compilation, req.body.page, ws.name, workspaceRoute.url
262+ )
263+ // assignmentsToSend = await ws.compilation.updateUsages(req.body.page, ws.name, workspaceRoute.url)
264+ ws.save()
265+ } catch ( e ){
266+ if ( e instanceof CSSError ){
267+ res.json({ error: { message: WorkspaceCompilation.__replaceMessageWorkspacePaths(e.message, ws) }})
268+ ws.save()
269+ return
270+ }
271+ throw e
272+ }
260273 }
261274 res.json(assignmentsToSend).end()
262275 return
0 commit comments