@things-factory/lite-menu 7.0.1-alpha.57 → 7.0.1-alpha.60

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/lite-menu",
3
- "version": "7.0.1-alpha.57",
3
+ "version": "7.0.1-alpha.60",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "dist-client/index.js",
6
6
  "things-factory": true,
@@ -30,6 +30,7 @@
30
30
  "@material/web": "^1.4.0",
31
31
  "@operato/data-grist": "^2.0.0-alpha.0",
32
32
  "@operato/graphql": "^2.0.0-alpha.0",
33
+ "@operato/grist-editor": "^2.0.0-alpha.0",
33
34
  "@operato/i18n": "^2.0.0-alpha.0",
34
35
  "@operato/input": "^2.0.0-alpha.0",
35
36
  "@operato/layout": "^2.0.0-alpha.0",
@@ -39,12 +40,12 @@
39
40
  "@operato/styles": "^2.0.0-alpha.0",
40
41
  "@operato/utils": "^2.0.0-alpha.0",
41
42
  "@things-factory/apptool-base": "^7.0.1-alpha.55",
42
- "@things-factory/auth-base": "^7.0.1-alpha.57",
43
- "@things-factory/board-service": "^7.0.1-alpha.57",
44
- "@things-factory/board-ui": "^7.0.1-alpha.57",
43
+ "@things-factory/auth-base": "^7.0.1-alpha.60",
44
+ "@things-factory/board-service": "^7.0.1-alpha.60",
45
+ "@things-factory/board-ui": "^7.0.1-alpha.60",
45
46
  "@things-factory/more-base": "^7.0.1-alpha.55",
46
- "@things-factory/setting-base": "^7.0.1-alpha.57",
47
+ "@things-factory/setting-base": "^7.0.1-alpha.60",
47
48
  "@things-factory/utils": "^7.0.1-alpha.43"
48
49
  },
49
- "gitHead": "ef68a9fc003542e0b6d2ff63075aa7596c1def79"
50
+ "gitHead": "e3991f7f2a6735adc9a68e281f3097859fe4912b"
50
51
  }
@@ -61,6 +61,14 @@ export class LiteMenuQuery {
61
61
  return { items: filtered, total: filtered.length }
62
62
  }
63
63
 
64
+ @FieldResolver(type => String)
65
+ async label(@Root() liteMenu: LiteMenu, @Ctx() context: ResolverContext): Promise<String> {
66
+ const { lng } = context.state
67
+ const { labels, name } = liteMenu
68
+
69
+ return (lng && labels && labels[lng]) || name
70
+ }
71
+
64
72
  @FieldResolver(type => Board)
65
73
  async board(@Root() liteMenu: LiteMenu) {
66
74
  if ((liteMenu.type === 'board' || liteMenu.type === 'interactive-board') && liteMenu.value) {
@@ -1,4 +1,6 @@
1
1
  import { Field, InputType, Int, ObjectType } from 'type-graphql'
2
+
3
+ import { ScalarObject } from '@things-factory/shell'
2
4
  import { PrivilegeInput } from '@things-factory/auth-base'
3
5
 
4
6
  import { LiteMenu } from './lite-menu'
@@ -34,6 +36,9 @@ export class NewLiteMenu {
34
36
 
35
37
  @Field({ nullable: true })
36
38
  privilege?: PrivilegeInput
39
+
40
+ @Field(type => ScalarObject, { nullable: true })
41
+ labels?: any // { [lng: string]: string }
37
42
  }
38
43
 
39
44
  @InputType()
@@ -67,6 +72,9 @@ export class LiteMenuPatch {
67
72
 
68
73
  @Field({ nullable: true })
69
74
  privilege?: PrivilegeInput
75
+
76
+ @Field(type => ScalarObject, { nullable: true })
77
+ labels?: any // { [lng: string]: string }
70
78
  }
71
79
 
72
80
  @ObjectType()
@@ -1,18 +1,9 @@
1
1
  import { Field, ID, Int, ObjectType } from 'type-graphql'
2
- import {
3
- Column,
4
- CreateDateColumn,
5
- Entity,
6
- Index,
7
- ManyToOne,
8
- PrimaryGeneratedColumn,
9
- RelationId,
10
- UpdateDateColumn
11
- } from 'typeorm'
2
+ import { Column, CreateDateColumn, Entity, Index, ManyToOne, PrimaryGeneratedColumn, RelationId, UpdateDateColumn } from 'typeorm'
12
3
 
13
4
  import { PrivilegeObject, User } from '@things-factory/auth-base'
14
5
  import { Board } from '@things-factory/board-service'
15
- import { Domain } from '@things-factory/shell'
6
+ import { Domain, ScalarObject } from '@things-factory/shell'
16
7
 
17
8
  @Entity()
18
9
  @Index('ix_lite_menus_0', (liteMenu: LiteMenu) => [liteMenu.domain, liteMenu.name, liteMenu.appName], { unique: true })
@@ -93,6 +84,10 @@ export class LiteMenu {
93
84
  @Field(type => PrivilegeObject, { nullable: true })
94
85
  privilege?: PrivilegeObject
95
86
 
87
+ @Column('simple-json', { nullable: true })
88
+ @Field(type => ScalarObject, { nullable: true })
89
+ labels?: any // { [lng: string]: string }
90
+
96
91
  @CreateDateColumn()
97
92
  @Field({ nullable: true })
98
93
  createdAt?: Date
@@ -3,9 +3,11 @@
3
3
  "button.reload": "reload",
4
4
  "button.save": "save",
5
5
  "field.app-name": "app name",
6
+ "field.i18n-label": "multi-lingual label",
6
7
  "field.icon": "icon",
7
8
  "field.parent-menu": "parent menu",
8
9
  "field.type": "type",
9
10
  "text.addon-menu management": "addon menu management",
11
+ "title.i18n-label": "multi-lingual label",
10
12
  "title.lite-menu-setting": "menu setting"
11
- }
13
+ }
@@ -3,9 +3,11 @@
3
3
  "button.reload": "再照会",
4
4
  "button.save": "保存",
5
5
  "field.app-name": "アプリケーション",
6
+ "field.i18n-label": "多言語ラベル",
6
7
  "field.icon": "イメージ",
7
8
  "field.parent-menu": "親メニュー",
8
9
  "field.type": "タイプ",
9
10
  "text.addon-menu management": "付加メニュー管理",
11
+ "title.i18n-label": "多言語ラベル",
10
12
  "title.lite-menu-setting": "メニュー設定"
11
- }
13
+ }
@@ -3,9 +3,11 @@
3
3
  "button.reload": "재조회",
4
4
  "button.save": "저장",
5
5
  "field.app-name": "어플리케이션",
6
+ "field.i18n-label": "다국어 라벨",
6
7
  "field.icon": "이미지",
7
8
  "field.parent-menu": "부모메뉴",
8
9
  "field.type": "유형",
9
10
  "text.addon-menu management": "부가메뉴관리",
11
+ "title.i18n-label": "다국어 라벨",
10
12
  "title.lite-menu-setting": "메뉴 설정"
11
- }
13
+ }
@@ -3,9 +3,11 @@
3
3
  "button.reload": "muat semula",
4
4
  "button.save": "simpan",
5
5
  "field.app-name": "aplikasi",
6
+ "field.i18n-label": "label pelbagai bahasa",
6
7
  "field.icon": "imej",
7
8
  "field.parent-menu": "menu induk",
8
9
  "field.type": "jenis",
9
10
  "text.addon-menu management": "pengurusan menu tambahan",
11
+ "title.i18n-label": "label pelbagai bahasa",
10
12
  "title.lite-menu-setting": "tetapan menu"
11
13
  }
@@ -3,9 +3,11 @@
3
3
  "button.reload": "重新加载",
4
4
  "button.save": "储存",
5
5
  "field.app-name": "应用名称",
6
+ "field.i18n-label": "多语言标签",
6
7
  "field.icon": "图标",
7
8
  "field.parent-menu": "上级菜单",
8
9
  "field.type": "类型",
9
10
  "text.addon-menu management": "附加菜单管理",
11
+ "title.i18n-label": "多语言标签",
10
12
  "title.lite-menu-setting": "菜单设置"
11
- }
13
+ }