@steedos/service-package-registry 2.5.15-beta.1 → 2.5.15-beta.11

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.
@@ -9,6 +9,15 @@ const userDir = path.join(process.cwd(), '.steedos');
9
9
  const packagesFilePath = path.join(userDir, 'steedos-packages.yml');
10
10
  const metadataApi = require('@steedos/metadata-api');
11
11
  const util = require('./util');
12
+
13
+ const getPackageYmlData = (packagePath)=>{
14
+ let packageYmlData = {};
15
+ if(fs.existsSync(path.join(packagePath, 'steedos.package.yml'))){
16
+ packageYmlData = metaDataCore.loadFile(path.join(packagePath, 'steedos.package.yml'));
17
+ }
18
+ return packageYmlData;
19
+ }
20
+
12
21
  const loadPackagesConfig = ()=>{
13
22
  return yaml.load(fs.readFileSync(packagesFilePath, 'utf8')) || {};
14
23
  }
@@ -331,8 +340,10 @@ const installPackage = async (broker, options)=>{
331
340
  }
332
341
  appendToPackagesConfig(module, packageConfig);
333
342
  const metadata = await getPackageMetadata(util.getPackageRelativePath(process.cwd(), packagePath));
343
+ const packageYmlData = getPackageYmlData(packagePath);
334
344
  await broker.call(`@steedos/service-packages.install`, {
335
345
  serviceInfo: Object.assign({}, packageConfig, {
346
+ packageYmlData: packageYmlData,
336
347
  name: module,
337
348
  enable: enable,
338
349
  nodeID: broker.nodeID,
@@ -385,5 +396,6 @@ module.exports = {
385
396
  removePackage,
386
397
  getPackageInfo,
387
398
  getPackageMetadata,
388
- installPackage
399
+ installPackage,
400
+ getPackageYmlData
389
401
  }
@@ -47,16 +47,17 @@ const getAllPackages = async ()=>{
47
47
  _package.version = package.version
48
48
  }else{
49
49
  packages.push({
50
+ label: package.label || packageName,
51
+ homepage: package.homepage,
52
+ description: package.description,
53
+ ...(package.packageYmlData || {}),
50
54
  _id : packageName.replace("/", '_'),
51
55
  name: packageName,
52
56
  status : package.enable ? 'starting' : 'disable',
53
57
  version : package.version,
54
58
  local: package.local,
55
- label: package.label || packageName,
56
- description: package.description,
57
59
  metadata: package.metadata,
58
- static: package.static,
59
- homepage: package.homepage
60
+ static: package.static
60
61
  })
61
62
  }
62
63
  })
@@ -72,6 +73,10 @@ const getAllPackages = async ()=>{
72
73
  _package.homepage = packageInfo.homepage
73
74
  }else{
74
75
  packages.push({
76
+ label: packageInfo.label || packageName,
77
+ description: packageInfo.description,
78
+ homepage: packageInfo.homepage,
79
+ ...(packageInfo.packageYmlData || {}),
75
80
  _id : packageName.replace("/", '_'),
76
81
  name: packageName,
77
82
  service_name: packageInfo.name,
@@ -79,10 +84,7 @@ const getAllPackages = async ()=>{
79
84
  instance_id: packageInfo.instanceID,
80
85
  status : 'enable',
81
86
  version : packageInfo.version,
82
- label: packageInfo.label || packageName,
83
- description: packageInfo.description,
84
- local: false,
85
- homepage: packageInfo.homepage
87
+ local: false
86
88
  })
87
89
  }
88
90
  })
@@ -104,6 +104,10 @@ fields:
104
104
  listviews:
105
105
  all:
106
106
  label: All Packages
107
+ custom:
108
+ label: Custom Packages
109
+ system:
110
+ label: System Packages
107
111
  actions:
108
112
  disable:
109
113
  label: Disable
@@ -9,7 +9,7 @@ columns:
9
9
  - field: status
10
10
  - field: static
11
11
  filter_scope: space
12
- label: 已安装
12
+ label: 所有软件包
13
13
  scrolling_mode: standard
14
14
  shared: true
15
15
  show_count: false
@@ -0,0 +1,17 @@
1
+ name: custom
2
+ columns:
3
+ - field: label
4
+ wrap: false
5
+ - field: description
6
+ wrap: false
7
+ - field: version
8
+ wrap: false
9
+ - field: status
10
+ - field: static
11
+ filter_scope: space
12
+ label: 自定义软件包
13
+ scrolling_mode: standard
14
+ shared: true
15
+ show_count: false
16
+ type: grid
17
+ filters: [["static","!=", true]]
@@ -0,0 +1,17 @@
1
+ name: system
2
+ columns:
3
+ - field: label
4
+ wrap: false
5
+ - field: description
6
+ wrap: false
7
+ - field: version
8
+ wrap: false
9
+ - field: status
10
+ - field: static
11
+ filter_scope: space
12
+ label: 系统软件包
13
+ scrolling_mode: standard
14
+ shared: true
15
+ show_count: false
16
+ type: grid
17
+ filters: [["static","=", true]]
@@ -0,0 +1,130 @@
1
+ {
2
+ "type": "page",
3
+ "body": [
4
+ {
5
+ "type": "steedos-object-listview",
6
+ "label": "列表视图",
7
+ "objectApiName": "${objectName}",
8
+ "listName": "all",
9
+ "showHeader": true,
10
+ "className": "sm:border sm:rounded sm:border-gray-300 mb-4",
11
+ "id": "u:70d5861033de",
12
+ "crud": {
13
+ "columnsCount": 4,
14
+ "id": "u:553974f9435b",
15
+ "mode": "cards",
16
+ "footerToolbar": [],
17
+ "switchPerPage": false,
18
+ "bulkActions": [],
19
+ "card": {
20
+ "itemAction": {
21
+ "actionType": "link",
22
+ "link": "/app/admin/steedos_packages/view/${_id}"
23
+ },
24
+ "header": {
25
+ "avatarText": "${label|split:/|last|substring:0:2|upperCase}",
26
+ "avatarTextBackground": [
27
+ "#FFB900",
28
+ "#D83B01",
29
+ "#B50E0E",
30
+ "#E81123",
31
+ "#B4009E",
32
+ "#5C2D91",
33
+ "#0078D7",
34
+ "#00B4FF",
35
+ "#008272"
36
+ ],
37
+ "className": "bg-white",
38
+ "title": "${label}@${version}",
39
+ "subTitle": "$description",
40
+ "description": "<span class=\"bg-${status === 'enable' ? 'green': 'gray'}-300 border rounded-full px-2 py-0.5 mt-2 inline-block\">$_display.status</span>"
41
+ },
42
+ "actions": [
43
+ {
44
+ "label": "${uiSchema.actions.enable.label}",
45
+ "disabledOn": "${status === 'enable'}",
46
+ "onEvent": {
47
+ "click": {
48
+ "actions": [
49
+ {
50
+ "actionType": "custom",
51
+ "script": "let todo = event.data.uiSchema.actions.enable.todo;\nlet objectName = event.data.objectName;\nlet _id = event.data._id;\n\nif (todo) {\n (new Function(\"(\" + todo + \")(\" + \"'\" + objectName + \"'\" + \",'\" + _id + \"')\"))();\n}\n"
52
+ }
53
+ ]
54
+ }
55
+ },
56
+ "id": "u:553d77aa3872"
57
+ },
58
+ {
59
+ "label": "${uiSchema.actions.disable.label}",
60
+ "disabledOn": "${status !== 'enable'}",
61
+ "onEvent": {
62
+ "click": {
63
+ "actions": [
64
+ {
65
+ "actionType": "custom",
66
+ "script": "let todo = event.data.uiSchema.actions.disable.todo;\nlet objectName = event.data.objectName;\nlet _id = event.data._id;\n\nif (todo) {\n (new Function(\"(\" + todo + \")(\" + \"'\" + objectName + \"'\" + \",'\" + _id + \"')\"))();\n}\n"
67
+ }
68
+ ]
69
+ }
70
+ },
71
+ "id": "u:7e1db04924da"
72
+ }
73
+ ],
74
+ "type": "card",
75
+ "id": "u:2bb7748ac402"
76
+ }
77
+ }
78
+ }
79
+ ],
80
+ "regions": [
81
+ "body"
82
+ ],
83
+ "data": {
84
+ "objectName": "steedos_packages",
85
+ "context": {
86
+ "rootUrl": "http://127.0.0.1:5800",
87
+ "tenantId": "64a4d6dd7fe9acaf8c330a37",
88
+ "userId": "683e09cd-8482-4034-bd29-5a30643e6c0f",
89
+ "authToken": "2906ff4353c25cfe291352f899ba3446aa5577f3de7ad60e1aa500c60dee7ca6fb446412f1c9693775b4cc"
90
+ }
91
+ },
92
+ "id": "u:2775cd701d6a",
93
+ "name": "page_test__c_list",
94
+ "bodyClassName": "p-0",
95
+ "cssVars": {
96
+ "--text--muted-color": "#bebfc4"
97
+ },
98
+ "css": {
99
+ ".antd-Wrapper.steedos-object-table > .antd-Service": {
100
+ "flex-grow": "1"
101
+ },
102
+ ".antd-Service.steedos-object-table .antd-Crud .antd-Cards": {
103
+ "height": "100%"
104
+ },
105
+ ".antd-Service.steedos-object-table .antd-Crud .antd-Cards .antd-Cards-toolbar": {
106
+ "padding-top": "0.5rem",
107
+ "padding-bottom": "0.5rem",
108
+ "padding-left": "1rem",
109
+ "padding-right": "1rem",
110
+ "--tw-bg-opacity": "1",
111
+ "background-color": "rgb(243 244 246 / var(--tw-bg-opacity))",
112
+ "--tw-border-opacity": "1",
113
+ "border-color": "rgb(209 213 219 / var(--tw-border-opacity))",
114
+ "border-style": "solid",
115
+ "border-bottom-width": "1px"
116
+ },
117
+ ".antd-Service.steedos-object-table .antd-Crud .antd-Cards .antd-Cards-body": {
118
+ "margin": "0.25rem"
119
+ },
120
+ ".antd-Card-toolbar .ant-ribbon-wrapper": {
121
+ "position": "absolute",
122
+ "top": "-14px",
123
+ "right": "0"
124
+ },
125
+ ".antd-Crud .antd-Cards .antd-Card .antd-Card-title": {
126
+ "white-space": "break-spaces",
127
+ "word-break": "break-all"
128
+ }
129
+ }
130
+ }
@@ -0,0 +1,12 @@
1
+ name: steedos_packages_list
2
+ is_active: true
3
+ label: 软件包列表
4
+ object_name: steedos_packages
5
+ pageAssignments:
6
+ - type: orgDefault
7
+ page: steedos_packages_list
8
+ desktop: true
9
+ mobile: true
10
+ render_engine: amis
11
+ type: list
12
+ widgets: []
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steedos/service-package-registry",
3
- "version": "2.5.15-beta.1",
3
+ "version": "2.5.15-beta.11",
4
4
  "description": "",
5
5
  "main": "package.service.js",
6
6
  "scripts": {
@@ -9,11 +9,11 @@
9
9
  "author": "",
10
10
  "license": "ISC",
11
11
  "dependencies": {
12
- "@steedos/auth": "2.5.15-beta.1",
13
- "@steedos/core": "2.5.15-beta.1",
14
- "@steedos/metadata-core": "2.5.15-beta.1",
15
- "@steedos/objectql": "2.5.15-beta.1",
16
- "@steedos/service-package-loader": "2.5.15-beta.1",
12
+ "@steedos/auth": "2.5.15-beta.11",
13
+ "@steedos/core": "2.5.15-beta.11",
14
+ "@steedos/metadata-core": "2.5.15-beta.11",
15
+ "@steedos/objectql": "2.5.15-beta.11",
16
+ "@steedos/service-package-loader": "2.5.15-beta.11",
17
17
  "fs-extra": "8.1.0",
18
18
  "i18next": "20.3.2",
19
19
  "json-stringify-safe": "5.0.1",
@@ -31,5 +31,5 @@
31
31
  "publishConfig": {
32
32
  "access": "public"
33
33
  },
34
- "gitHead": "f6b3015cd3d1412c3fdc0dd46677a4fed8668a51"
34
+ "gitHead": "d9ff994b44be5e638442795f0482f050124694ba"
35
35
  }
@@ -104,8 +104,10 @@ module.exports = {
104
104
  }
105
105
  await loader.loadPackage(module, packagePath);
106
106
  const metadata = await loader.getPackageMetadata(util.getPackageRelativePath(process.cwd(), packageConfig.path));
107
+ const packageYmlData = loader.getPackageYmlData(packagePath);
107
108
  await ctx.broker.call(`@steedos/service-packages.install`, {
108
109
  serviceInfo: Object.assign({}, Object.assign({}, packageConfig, { name: module }), {
110
+ packageYmlData: packageYmlData,
109
111
  nodeID: ctx.broker.nodeID,
110
112
  instanceID: ctx.broker.instanceID,
111
113
  metadata: metadata
@@ -130,8 +132,10 @@ module.exports = {
130
132
  const packageConfig = await loader.disablePackage(module);
131
133
  if(packageConfig.path){
132
134
  const metadata = await loader.getPackageMetadata(util.getPackageRelativePath(process.cwd(), packageConfig.path));
135
+ const packageYmlData = loader.getPackageYmlData(packageConfig.path);
133
136
  await ctx.broker.call(`@steedos/service-packages.install`, {
134
137
  serviceInfo: Object.assign({}, packageConfig, {
138
+ packageYmlData,
135
139
  nodeID: ctx.broker.nodeID,
136
140
  instanceID: ctx.broker.instanceID,
137
141
  metadata: metadata
@@ -150,8 +154,10 @@ module.exports = {
150
154
  }
151
155
  await packages.checkDependencies(path.resolve(packageConfig.path))
152
156
  const metadata = await loader.getPackageMetadata(util.getPackageRelativePath(process.cwd(), packageConfig.path));
157
+ const packageYmlData = loader.getPackageYmlData(packageConfig.path);
153
158
  await ctx.broker.call(`@steedos/service-packages.install`, {
154
159
  serviceInfo: Object.assign({}, packageConfig, {
160
+ packageYmlData,
155
161
  nodeID: ctx.broker.nodeID,
156
162
  instanceID: ctx.broker.instanceID,
157
163
  metadata: metadata
@@ -253,8 +259,10 @@ module.exports = {
253
259
  }
254
260
  const newConfig = loader.appendToPackagesConfig(module, packageConfig);
255
261
  const metadata = await loader.getPackageMetadata(util.getPackageRelativePath(process.cwd(), packagePath));
262
+ const packageYmlData = loader.getPackageYmlData(packagePath);
256
263
  await this.broker.call(`@steedos/service-packages.install`, {
257
264
  serviceInfo: Object.assign({}, newConfig, {
265
+ packageYmlData,
258
266
  name: module,
259
267
  enable: enable,
260
268
  nodeID: this.broker.nodeID,
@@ -316,8 +324,10 @@ module.exports = {
316
324
  } catch (error) {
317
325
  console.error(error)
318
326
  }
327
+ const packageYmlData = loader.getPackageYmlData(packagePath);
319
328
  await broker.call(`@steedos/service-packages.install`, {
320
329
  serviceInfo: Object.assign({}, packageConfig, {
330
+ packageYmlData,
321
331
  name: packageName,
322
332
  enable: enable,
323
333
  nodeID: broker.nodeID,
@@ -451,8 +461,10 @@ module.exports = {
451
461
  _packageInfo = Object.assign({}, _packageInfo, this.getPackageInfo(_packageInfo, name))
452
462
  }
453
463
  const metadata = await loader.getPackageMetadata(_packageInfo.path);
464
+ const packageYmlData = loader.getPackageYmlData(_packageInfo.path);
454
465
  await this.broker.call(`@steedos/service-packages.install`, {
455
466
  serviceInfo: {
467
+ packageYmlData,
456
468
  name: name,
457
469
  nodeID: this.broker.nodeID,
458
470
  instanceID: this.broker.instanceID,