@steedos/service-pages 2.2.20 → 2.2.21

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.
@@ -14,17 +14,62 @@
14
14
  var params = new URLSearchParams(location.search);
15
15
  var pageId = params.get("pageId");
16
16
  // /pageVersion/:pageId/latest
17
-
17
+ const dataContext = DataContext;
18
18
  axios.get(`/service/api/page/pageVersion/${params.get("pageId")}/latest`).then(function (response) {
19
- let schema = response.data?.schema;
19
+ let result = response.data;
20
+
21
+ let schema = result?.schema;
22
+ let objectName = result?.object_name;
23
+ let pageType = result?.type;
20
24
  if (typeof schema === "string") {
21
25
  schema = JSON.parse(schema)
22
26
  }
23
- const data = {
24
- AmisSchema: schema || {}
25
- };
26
- console.log("record data", data)
27
- comp.data = data;
27
+ if(!schema){
28
+ schema = {
29
+ "type": "page",
30
+ "body": [],
31
+ "regions": [
32
+ "body"
33
+ ]
34
+ };
35
+ }
36
+
37
+ if(!schema.data){
38
+ schema.data = {}
39
+ }
40
+
41
+ if(!schema.data.context){
42
+ schema.data.context = {}
43
+ }
44
+
45
+ schema.data.objectName = objectName;
46
+
47
+ schema.data.context.rootUrl = dataContext.rootUrl;
48
+ schema.data.context.tenantId = dataContext.tenantId;
49
+ schema.data.context.userId = dataContext.userId;
50
+ schema.data.context.authToken = dataContext.authToken;
51
+
52
+ if(objectName && pageType === 'record'){
53
+ axios.get(`/api/v4/${objectName}?$orderby=modified&$top=1`).then(function (response) {
54
+ const value = response.data?.value;
55
+ if(value.length > 0){
56
+ schema.data.recordId = value[0]._id;
57
+ }
58
+ });
59
+ const data = {
60
+ AmisSchema: schema
61
+ };
62
+ console.log("record data", data)
63
+ comp.data = data;
64
+ }else{
65
+ const data = {
66
+ AmisSchema: schema
67
+ };
68
+ console.log("record data", data)
69
+ comp.data = data;
70
+ }
71
+
72
+
28
73
  }).catch(function (error) {
29
74
  // handle error
30
75
  console.log(error);
@@ -17,10 +17,18 @@ router.get('/api/pageDesign', core.requireAuthentication, async function (req, r
17
17
  const assetUrls = process.env.STEEDOS_PUBLIC_PAGE_ASSETURLS.split(',');
18
18
  assetUrl = `assetUrl=${assetUrls.join("&assetUrl=")}&`;
19
19
  }
20
+
21
+ const dataContext = {
22
+ rootUrl: __meteor_runtime_config__.ROOT_URL,
23
+ tenantId: userSession.spaceId,
24
+ userId: userSession.userId,
25
+ authToken: userSession.authToken
26
+ }
27
+
20
28
  const steedosBuilderHost = `https://builder.steedos.com/amis?${assetUrl}rootUrl=${__meteor_runtime_config__.ROOT_URL}&authToken=${userSession.authToken}&userId=${userSession.userId}&tenantId=${userSession.spaceId}&__q=`;
21
29
 
22
30
  let data = fs.readFileSync(__dirname+'/design.html', 'utf8');
23
- res.send(data.replace('SteedosBuilderHost',steedosBuilderHost));
31
+ res.send(data.replace('SteedosBuilderHost',steedosBuilderHost).replace('DataContext', JSON.stringify(dataContext)));
24
32
  } catch (error) {
25
33
  res.status(500).send({ message: error.message });
26
34
  }
@@ -90,7 +90,8 @@ module.exports = {
90
90
  // const userSession = ctx.meta.user;
91
91
  const { pageId } = ctx.params;
92
92
  const pageVersion = await this.getLatestPageVersion(pageId);
93
- return pageVersion || {}
93
+ const page = await objectql.getObject('pages').findOne(pageId)
94
+ return Object.assign(pageVersion || {}, {object_name: page.object_name, type: page.type})
94
95
  }
95
96
  },
96
97
  changePageVersion:{
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steedos/service-pages",
3
- "version": "2.2.20",
3
+ "version": "2.2.21",
4
4
  "main": "package.service.js",
5
5
  "scripts": {},
6
6
  "license": "MIT",
@@ -11,5 +11,5 @@
11
11
  "dependencies": {
12
12
  "@builder.io/react": "^1.1.50"
13
13
  },
14
- "gitHead": "a0462d803860690b47487ece88a0bbb380ba0f17"
14
+ "gitHead": "39204e6e65ded584d76363cebfdcbcb061238d38"
15
15
  }