@qelos/plugin-play 3.3.6 → 3.3.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.
package/dist/crud.js CHANGED
@@ -2,7 +2,7 @@ import { addProxyEndpoint } from './endpoints';
2
2
  import { ResponseError } from './response-error';
3
3
  import logger from './logger';
4
4
  import manifest from './manifest';
5
- import { addGroupedMicroFrontends } from './micro-frontends';
5
+ import { addGroupedMicroFrontends, NavBarPosition } from './micro-frontends';
6
6
  import { getSdkForTenant } from './sdk';
7
7
  export function getPlural(word) {
8
8
  const lastChar = word[word.length - 1].toLowerCase();
@@ -26,7 +26,7 @@ export function getDisplayNames(name) {
26
26
  };
27
27
  }
28
28
  function isPropValidToDisplay(value, propSchema, dest) {
29
- return (propSchema.public &&
29
+ return (propSchema?.public &&
30
30
  !(propSchema.hideInList && dest === 'list') &&
31
31
  (typeof propSchema.type === 'undefined' ||
32
32
  (propSchema.type === null && value === null) ||
@@ -36,7 +36,7 @@ function fillFromSchema(exposed, item, schema, dest = 'single') {
36
36
  for (const key in schema) {
37
37
  const prop = schema[key];
38
38
  const value = item[key];
39
- if (isPropValidToDisplay(value, prop.schema, dest)) {
39
+ if (isPropValidToDisplay(value, prop, dest)) {
40
40
  if (prop.schema && prop.type === Object) {
41
41
  exposed[key] = {};
42
42
  fillFromSchema(exposed[key], value, prop.schema);
@@ -105,6 +105,7 @@ export function createCrud(options) {
105
105
  list: {},
106
106
  create: {},
107
107
  edit: {},
108
+ view: {},
108
109
  ...options.screens,
109
110
  };
110
111
  const crudOptions = {
@@ -118,18 +119,22 @@ export function createCrud(options) {
118
119
  ...options.display
119
120
  },
120
121
  screens: {
121
- list: {
122
+ list: screens.list === false ? screens.list : {
122
123
  use: screens.list.use || 'rows-list',
123
124
  structure: screens.list.structure,
124
125
  },
125
- create: {
126
+ create: screens.create === false ? screens.create : {
126
127
  use: screens.create.use || 'basic-form',
127
128
  structure: screens.create.structure
128
129
  },
129
- edit: {
130
+ edit: screens.edit === false ? screens.edit : {
130
131
  use: screens.edit.use || 'basic-form',
131
132
  structure: screens.edit.structure,
132
133
  },
134
+ view: screens.view === false ? screens.view : {
135
+ use: screens.view.use || 'basic-form',
136
+ structure: screens.view.structure,
137
+ },
133
138
  },
134
139
  nav: options.nav || {}
135
140
  };
@@ -254,7 +259,7 @@ export function createCrud(options) {
254
259
  if (!crudOptions.schema) {
255
260
  return list;
256
261
  }
257
- return list.map(getPublicData);
262
+ return list.map(getPublicDataForList);
258
263
  }
259
264
  catch (err) {
260
265
  return handleError(err, reply);
@@ -268,38 +273,53 @@ export function createCrud(options) {
268
273
  schema: getJsonSchema(crudOptions.schema),
269
274
  });
270
275
  addGroupedMicroFrontends({ name: crudOptions.display.capitalizedPlural, key: crudOptions.name, ...crudOptions.nav }, [
271
- {
276
+ crudOptions.screens.list && {
272
277
  name: 'List',
273
278
  crud: crudOptions.name,
274
279
  description: 'List of ' + crudOptions.display.capitalizedPlural,
275
280
  use: crudOptions.screens.list.use,
281
+ structure: crudOptions.screens.list.structure,
276
282
  route: {
277
283
  name: crudOptions.name + '-list',
278
284
  path: crudOptions.name,
279
- navBarPosition: 'top'
285
+ navBarPosition: NavBarPosition.TOP
280
286
  }
281
287
  },
282
- {
288
+ crudOptions.screens.create && {
283
289
  name: 'Create',
284
290
  crud: crudOptions.name,
285
291
  description: 'Create a new ' + crudOptions.display.capitalized,
286
292
  use: crudOptions.screens.create.use,
293
+ structure: crudOptions.screens.create.structure,
287
294
  route: {
288
295
  name: 'add-' + singlePath,
289
296
  path: 'add-' + singlePath,
290
- navBarPosition: 'top'
297
+ navBarPosition: NavBarPosition.TOP
291
298
  }
292
299
  },
293
- {
300
+ crudOptions.screens.edit && {
294
301
  name: 'Edit',
295
302
  crud: crudOptions.name,
296
303
  description: 'Edit existing ' + crudOptions.display.capitalized,
297
304
  use: crudOptions.screens.edit.use,
305
+ structure: crudOptions.screens.edit.structure,
298
306
  route: {
299
307
  name: 'edit-' + singlePath,
300
308
  path: `edit-${singlePath}/:id`,
301
309
  navBarPosition: false
302
310
  }
311
+ },
312
+ crudOptions.screens.view && {
313
+ name: 'View',
314
+ crud: crudOptions.name,
315
+ description: 'View existing ' + crudOptions.display.capitalized,
316
+ use: crudOptions.screens.view.use,
317
+ structure: crudOptions.screens.view.structure,
318
+ route: {
319
+ name: 'view-' + singlePath,
320
+ path: `view-${singlePath}/:id`,
321
+ navBarPosition: false
322
+ }
303
323
  }
304
324
  ]);
305
325
  }
package/dist/crud.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"crud.js","sourceRoot":"","sources":["../src/crud.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crud.js","sourceRoot":"","sources":["../src/crud.ts"],"names":[],"mappings":"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"}
@@ -40,9 +40,10 @@ export interface ICrudOptions<ResourcePublicData, ResourceInsertData> {
40
40
  priority?: number;
41
41
  };
42
42
  screens?: {
43
- list: Screen;
44
- create: Screen;
45
- edit: Screen;
43
+ list: false | Screen;
44
+ create: false | Screen;
45
+ edit: false | Screen;
46
+ view: false | Screen;
46
47
  };
47
48
  schema?: ResourceSchema;
48
49
  dispatchPrefix: string | false;
@@ -5,6 +5,12 @@ export interface IframeMicroFrontend extends GlobalMicroFrontend {
5
5
  interface PreDesignedMicroFrontend extends GlobalMicroFrontend {
6
6
  use: string;
7
7
  crud: string;
8
+ structure: string;
9
+ }
10
+ export declare enum NavBarPosition {
11
+ TOP = "top",
12
+ BOTTOM = "bottom",
13
+ USER_DROPDOWN = "user-dropdown"
8
14
  }
9
15
  export interface GlobalMicroFrontend {
10
16
  name: string;
@@ -13,7 +19,7 @@ export interface GlobalMicroFrontend {
13
19
  route?: {
14
20
  name: string;
15
21
  path: string;
16
- navBarPosition: 'top' | 'bottom' | 'user-dropdown' | false;
22
+ navBarPosition: NavBarPosition | false;
17
23
  group?: string;
18
24
  iconName?: string;
19
25
  iconSvg?: string;
@@ -31,5 +37,5 @@ export interface GlobalMicroFrontend {
31
37
  export type MicroFrontendOptions = IframeMicroFrontend | PreDesignedMicroFrontend;
32
38
  export type MicroFrontend = IframeMicroFrontend | PreDesignedMicroFrontend;
33
39
  export declare function addMicroFrontend(mfe: MicroFrontendOptions): void;
34
- export declare function addGroupedMicroFrontends(group: NavBarGroup, mfeArray: MicroFrontendOptions[]): void;
40
+ export declare function addGroupedMicroFrontends(group: NavBarGroup, mfeArray: (MicroFrontendOptions | false | null | undefined)[]): void;
35
41
  export {};
@@ -1,11 +1,19 @@
1
1
  import manifest from './manifest';
2
+ export var NavBarPosition;
3
+ (function (NavBarPosition) {
4
+ NavBarPosition["TOP"] = "top";
5
+ NavBarPosition["BOTTOM"] = "bottom";
6
+ NavBarPosition["USER_DROPDOWN"] = "user-dropdown";
7
+ })(NavBarPosition || (NavBarPosition = {}));
2
8
  export function addMicroFrontend(mfe) {
3
9
  manifest.microFrontends.push({ ...mfe });
4
10
  }
5
11
  export function addGroupedMicroFrontends(group, mfeArray) {
6
12
  manifest.navBarGroups.push(group);
7
13
  mfeArray.forEach(mfe => {
8
- addMicroFrontend({ ...mfe, route: { ...mfe.route, group: group.key } });
14
+ if (mfe) {
15
+ addMicroFrontend({ ...mfe, route: { ...mfe.route, group: group.key } });
16
+ }
9
17
  });
10
18
  }
11
19
  //# sourceMappingURL=micro-frontends.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"micro-frontends.js","sourceRoot":"","sources":["../src/micro-frontends.ts"],"names":[],"mappings":"AAAA,OAAO,QAAuB,MAAM,YAAY,CAAC;AAqCjD,MAAM,UAAU,gBAAgB,CAAC,GAAyB;IACxD,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,EAAC,GAAG,GAAG,EAAC,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAkB,EAAE,QAAgC;IAC3F,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACrB,gBAAgB,CAAC,EAAC,GAAG,GAAG,EAAE,KAAK,EAAE,EAAC,GAAG,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,EAAC,EAAC,CAAC,CAAA;IACrE,CAAC,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"micro-frontends.js","sourceRoot":"","sources":["../src/micro-frontends.ts"],"names":[],"mappings":"AAAA,OAAO,QAAuB,MAAM,YAAY,CAAC;AAYjD,MAAM,CAAN,IAAY,cAIX;AAJD,WAAY,cAAc;IACxB,6BAAW,CAAA;IACX,mCAAiB,CAAA;IACjB,iDAA+B,CAAA;AACjC,CAAC,EAJW,cAAc,KAAd,cAAc,QAIzB;AA4BD,MAAM,UAAU,gBAAgB,CAAC,GAAyB;IACxD,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,EAAC,GAAG,GAAG,EAAC,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAkB,EAAE,QAA6D;IACxH,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACrB,IAAI,GAAG,EAAE;YACP,gBAAgB,CAAC,EAAC,GAAG,GAAG,EAAE,KAAK,EAAE,EAAC,GAAG,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,EAAC,EAAC,CAAC,CAAA;SACpE;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qelos/plugin-play",
3
- "version": "3.3.6",
3
+ "version": "3.3.7",
4
4
  "description": "Play a plugin for Qelos!",
5
5
  "main": "./dist/index.js",
6
6
  "scripts": {
package/src/crud.ts CHANGED
@@ -4,7 +4,7 @@ import {ResponseError} from './response-error';
4
4
  import logger from './logger';
5
5
  import manifest from './manifest';
6
6
  import {Crud, ICrudOptions, ResourceProperty, ResourceSchema} from './crud.types';
7
- import {addGroupedMicroFrontends} from './micro-frontends';
7
+ import {addGroupedMicroFrontends, NavBarPosition} from './micro-frontends';
8
8
  import {getSdkForTenant} from './sdk';
9
9
 
10
10
  export function getPlural(word: string) {
@@ -32,7 +32,7 @@ export function getDisplayNames(name: string) {
32
32
  }
33
33
 
34
34
  function isPropValidToDisplay(value, propSchema: ResourceSchema | ResourceProperty, dest: 'list' | 'single') {
35
- return (propSchema.public &&
35
+ return (propSchema?.public &&
36
36
  !(propSchema.hideInList && dest === 'list') &&
37
37
  (
38
38
  typeof propSchema.type === 'undefined' ||
@@ -45,7 +45,7 @@ function fillFromSchema(exposed: any, item: any, schema: ResourceSchema, dest: '
45
45
  for (const key in schema) {
46
46
  const prop = schema[key];
47
47
  const value = item[key];
48
- if (isPropValidToDisplay(value, prop.schema, dest)) {
48
+ if (isPropValidToDisplay(value, prop, dest)) {
49
49
  if (prop.schema && prop.type === Object) {
50
50
  exposed[key] = {}
51
51
  fillFromSchema(exposed[key], value, prop.schema as ResourceSchema);
@@ -118,6 +118,7 @@ export function createCrud<ResourcePublicData = any, ResourceInsertData = any>(
118
118
  list: {},
119
119
  create: {},
120
120
  edit: {},
121
+ view: {},
121
122
  ...options.screens,
122
123
  }
123
124
 
@@ -132,18 +133,22 @@ export function createCrud<ResourcePublicData = any, ResourceInsertData = any>(
132
133
  ...options.display
133
134
  },
134
135
  screens: {
135
- list: {
136
+ list: screens.list === false ? screens.list : {
136
137
  use: screens.list.use || 'rows-list',
137
138
  structure: screens.list.structure,
138
139
  },
139
- create: {
140
+ create: screens.create === false ? screens.create : {
140
141
  use: screens.create.use || 'basic-form',
141
142
  structure: screens.create.structure
142
143
  },
143
- edit: {
144
+ edit: screens.edit === false ? screens.edit : {
144
145
  use: screens.edit.use || 'basic-form',
145
146
  structure: screens.edit.structure,
146
147
  },
148
+ view: screens.view === false ? screens.view : {
149
+ use: screens.view.use || 'basic-form',
150
+ structure: screens.view.structure,
151
+ },
147
152
  },
148
153
  nav: options.nav || {}
149
154
  };
@@ -285,7 +290,7 @@ export function createCrud<ResourcePublicData = any, ResourceInsertData = any>(
285
290
  return list;
286
291
  }
287
292
 
288
- return list.map(getPublicData);
293
+ return list.map(getPublicDataForList);
289
294
  } catch (err) {
290
295
  return handleError(err, reply);
291
296
  }
@@ -302,38 +307,53 @@ export function createCrud<ResourcePublicData = any, ResourceInsertData = any>(
302
307
  addGroupedMicroFrontends(
303
308
  {name: crudOptions.display.capitalizedPlural, key: crudOptions.name, ...crudOptions.nav},
304
309
  [
305
- {
310
+ crudOptions.screens.list && {
306
311
  name: 'List',
307
312
  crud: crudOptions.name,
308
313
  description: 'List of ' + crudOptions.display.capitalizedPlural,
309
314
  use: crudOptions.screens.list.use,
315
+ structure: crudOptions.screens.list.structure,
310
316
  route: {
311
317
  name: crudOptions.name + '-list',
312
318
  path: crudOptions.name,
313
- navBarPosition: 'top'
319
+ navBarPosition: NavBarPosition.TOP
314
320
  }
315
321
  },
316
- {
322
+ crudOptions.screens.create && {
317
323
  name: 'Create',
318
324
  crud: crudOptions.name,
319
325
  description: 'Create a new ' + crudOptions.display.capitalized,
320
326
  use: crudOptions.screens.create.use,
327
+ structure: crudOptions.screens.create.structure,
321
328
  route: {
322
329
  name: 'add-' + singlePath,
323
330
  path: 'add-' + singlePath,
324
- navBarPosition: 'top'
331
+ navBarPosition: NavBarPosition.TOP
325
332
  }
326
333
  },
327
- {
334
+ crudOptions.screens.edit && {
328
335
  name: 'Edit',
329
336
  crud: crudOptions.name,
330
337
  description: 'Edit existing ' + crudOptions.display.capitalized,
331
338
  use: crudOptions.screens.edit.use,
339
+ structure: crudOptions.screens.edit.structure,
332
340
  route: {
333
341
  name: 'edit-' + singlePath,
334
342
  path: `edit-${singlePath}/:id`,
335
343
  navBarPosition: false
336
344
  }
345
+ },
346
+ crudOptions.screens.view && {
347
+ name: 'View',
348
+ crud: crudOptions.name,
349
+ description: 'View existing ' + crudOptions.display.capitalized,
350
+ use: crudOptions.screens.view.use,
351
+ structure: crudOptions.screens.view.structure,
352
+ route: {
353
+ name: 'view-' + singlePath,
354
+ path: `view-${singlePath}/:id`,
355
+ navBarPosition: false
356
+ }
337
357
  }
338
358
  ]
339
359
  )
package/src/crud.types.ts CHANGED
@@ -46,9 +46,10 @@ export interface ICrudOptions<ResourcePublicData, ResourceInsertData> {
46
46
  priority?: number;
47
47
  },
48
48
  screens?: {
49
- list: Screen;
50
- create: Screen;
51
- edit: Screen;
49
+ list: false | Screen;
50
+ create: false | Screen;
51
+ edit: false | Screen;
52
+ view: false | Screen;
52
53
  },
53
54
  schema?: ResourceSchema,
54
55
  dispatchPrefix: string | false,
@@ -7,6 +7,13 @@ export interface IframeMicroFrontend extends GlobalMicroFrontend {
7
7
  interface PreDesignedMicroFrontend extends GlobalMicroFrontend {
8
8
  use: string;
9
9
  crud: string;
10
+ structure: string;
11
+ }
12
+
13
+ export enum NavBarPosition {
14
+ TOP = 'top',
15
+ BOTTOM = 'bottom',
16
+ USER_DROPDOWN = 'user-dropdown',
10
17
  }
11
18
 
12
19
  export interface GlobalMicroFrontend {
@@ -16,7 +23,7 @@ export interface GlobalMicroFrontend {
16
23
  route?: {
17
24
  name: string;
18
25
  path: string;
19
- navBarPosition: 'top' | 'bottom' | 'user-dropdown' | false;
26
+ navBarPosition: NavBarPosition | false;
20
27
  group?: string;
21
28
  iconName?: string;
22
29
  iconSvg?: string;
@@ -39,9 +46,11 @@ export function addMicroFrontend(mfe: MicroFrontendOptions) {
39
46
  manifest.microFrontends.push({...mfe});
40
47
  }
41
48
 
42
- export function addGroupedMicroFrontends(group: NavBarGroup, mfeArray: MicroFrontendOptions[]) {
49
+ export function addGroupedMicroFrontends(group: NavBarGroup, mfeArray: (MicroFrontendOptions | false | null | undefined)[]) {
43
50
  manifest.navBarGroups.push(group);
44
51
  mfeArray.forEach(mfe => {
45
- addMicroFrontend({...mfe, route: {...mfe.route, group: group.key}})
52
+ if (mfe) {
53
+ addMicroFrontend({...mfe, route: {...mfe.route, group: group.key}})
54
+ }
46
55
  })
47
56
  }