@things-factory/operato-board 6.2.15 → 6.2.16

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.
@@ -0,0 +1,53 @@
1
+ ## 다국어 기능 설정
2
+
3
+ 다음은 다국어 기능과 관련된 시스템 컨피규레이션 설정 사례이다.
4
+
5
+ ```
6
+ i18n: {
7
+ languages: [
8
+ {
9
+ code: 'en-US',
10
+ display: 'English'
11
+ },
12
+ {
13
+ code: 'ko-KR',
14
+ display: '한국어'
15
+ },
16
+ {
17
+ code: 'zh-CN',
18
+ display: '中文'
19
+ },
20
+ {
21
+ code: 'ja-JP',
22
+ display: 'にほんご'
23
+ },
24
+ {
25
+ code: 'ms-MY',
26
+ display: 'Bahasa Malaysia'
27
+ }
28
+ ],
29
+ defaultLanguage: 'en-US',
30
+ disableUserFavoredLanguage: false
31
+ },
32
+
33
+ ```
34
+
35
+ ### 다국어 언어 리스트 설정
36
+
37
+ - `languages`:
38
+
39
+ - `languages`은 사용자가 선호 언어로 선택할 수 있는 언어의 종류이다.
40
+
41
+ ### 기본 언어 설정
42
+
43
+ - `defaultLanguage`:
44
+ - 사용자에게 제공되는 기본 언어 설정이다.
45
+
46
+ ### 다국어 기능을 제약하는 설정
47
+
48
+ - `disableUserFavoredLanguage`
49
+
50
+ - 이 값을 false로 설정하면
51
+ - 로그인 과정에서 다국어 선택 기능 제공
52
+ - 사용자 프로파일 메뉴에서 선호 언어 설정 기능 제공
53
+ - 이 값을 true로 설정하면, 사용자는 `defaultLanguage` 로 설정된 언어만을 사용하게 된다.
@@ -0,0 +1,74 @@
1
+ ## 사용자 등록 프로세스
2
+
3
+ 사용자 등록 프로세스는 기본적으로 두가지 방식을 지원한다.
4
+
5
+ - 사용자가 직접 등록 신청을 하고 이메일을 통한 확인 프로세스를 통해서 활성화하는 방식
6
+ - 관리자가 직접 기본 패스워드로 사용자를 등록하고, 최초 로그인시에 사용자가 패스워드를 변경하는 방식
7
+
8
+ ## 시스템 컨피규레이션
9
+
10
+ 다음은 사용자 등록 프로세스와 관련된 시스템 컨피규레이션 설정 사례이다.
11
+
12
+ ```
13
+ password: {
14
+ lowerCase: true, /* 최소한 하나 이상의 영문 소문자가 포함되어야 한다. */
15
+ upperCase: false, /* 최소한 하나 이상의 영문 대문자가 포함되어야 한다. */
16
+ digit: true, /* 최소한 하나 이상의 숫자가 포함되어야 한다. */
17
+ specialCharacter: true, /* 최소한 하나 이상의 특수문자가 포함되어야 한다. */
18
+ allowRepeat: true, /* 동일 문자 반복을 허용한다. */
19
+ useTightPattern: true, /* 엄격한 패턴으로 강제한다. */
20
+ useLoosePattern: false, /* 느슨한 패턴을 허락한다. */
21
+ tightCharacterLength: 8, /* 엄격한 패턴시 패스워드의 최소 길이 */
22
+ looseCharacterLength: 15, /* 느슨한 패턴시 패스워드의 최소 길이 */
23
+ history: 2, /* 중복 사용을 허락하지 않는 과거 사용한 패스워드 갯수 */
24
+ defaultPassword: '7Hbat@1kG' /* 디폴트 패스워드 */
25
+ },
26
+ /*
27
+ Only When 'disableUserSignupProcess' is set to false,
28
+ a user-initiated user registration process is provided.
29
+ When this value is true, the 'defaultPassword' for the password must be configured.
30
+ */
31
+ disableUserSignupProcess: false, /* 사용자가 직접 등록하는 프로세스를 지원할 지 여부 */
32
+
33
+ ```
34
+
35
+ ### 패스워드 패턴 설정
36
+
37
+ - `useTightPattern`:
38
+
39
+ - `useTightPattern`은 불리언(boolean) 값으로, 기본값은 `true`입니다.
40
+ - 만약 `useTightPattern`이 `true`로 설정되면, 비밀번호 패턴이 "타이트"하게 적용됩니다. 즉, 패스워드가 더 엄격한 규칙을 따라야 합니다.
41
+ - 타이트 패턴은 다음 규칙을 적용합니다:
42
+ - 적어도 하나의 소문자 알파벳을 포함해야 합니다.
43
+ - 적어도 하나의 대문자 알파벳을 포함해야 합니다.
44
+ - 적어도 하나의 숫자를 포함해야 합니다.
45
+ - 적어도 하나의 특수 문자 (예: !@#$%^&\*())를 포함해야 합니다.
46
+ - 문자 반복을 허용하지 않으며, 동일한 문자가 연속해서 3번 이상 나오지 않아야 합니다.
47
+ - 패스워드 길이는 `tightCharacterLength` 값보다 길어야 합니다. 기본값은 8입니다.
48
+
49
+ - `useLoosePattern`:
50
+ - `useLoosePattern` 또한 불리언(boolean) 값으로, 기본값은 `false`입니다.
51
+ - 만약 `useLoosePattern`이 `true`로 설정되면, 비밀번호 패턴이 "루스"하게 적용됩니다. 이는 더 관대한 비밀번호 규칙을 의미합니다.
52
+ - 루스 패턴은 다음 규칙을 적용합니다:
53
+ - 패스워드 길이는 `looseCharacterLength` 값보다 길어야 합니다. 기본값은 15입니다.
54
+
55
+ 따라서 `useTightPattern`이 활성화되면 더 엄격한 비밀번호 규칙이 적용되고, `useLoosePattern`이 활성화되면 보다 관대한 비밀번호 규칙이 적용됩니다. 이 두 옵션을 통해 사용자가 원하는 비밀번호 규칙을 설정할 수 있습니다.
56
+
57
+ ### 사용자가 직접 등록 신청을 하기 위한 설정
58
+
59
+ - `disableUserSignupProcess`
60
+
61
+ - 이 값을 false로 설정하면
62
+ - 로그인 과정에서 사용자 등록 링크를 제공
63
+ - 사용자 이메일을 통한 사용자 확인 및 활성화 프로세스 진행
64
+ - 사용자가 패스워드를 기억하지 못할 경우, 사용자 이메일을 통한 재설정 프로세스 제공
65
+ - 이 값을 true로 설정하면, 사용자가 직접 자신을 등록하는 프로세스 및 패스워드 재설정 프로세스는 사용할 수 없다.
66
+ - 이 경우에는 `password` 설정의 `defaultPassword` 가 필수적으로 제공되어야 한다.
67
+
68
+ - `defaultPassword`
69
+
70
+ - password 설정의 `defaultPassword` 가 설정되면, 관리자는 `사용자 관리` 메뉴에서 신규 사용자를 생성할 수 있다.
71
+
72
+ - ![user-registration-process-by-manager]
73
+
74
+ [user-registration-process-by-manager]: ./images/user-registration-process-01.png
package/helps/faq.md CHANGED
@@ -118,6 +118,18 @@ A: [보드 운영 배포 관리](./faq/board-deployment.md)
118
118
 
119
119
  A: [서버 이중화 구성](./faq/server-redunduncy-configuration.md)
120
120
 
121
+ ### Q: 사용자 등록 프로세스를 사용하지 않는다면 ?
122
+
123
+ 사용자 등록 프로세스없이 관리자가 기본 패스워드로 사용자를 생성해주는 방식으로 운영하고 싶은데, 방법이 있나요 ?
124
+
125
+ A: [사용자 등록 프로세스](./faq/user-registration-process.md)
126
+
127
+ ### Q: 다국어 기능을 사용하지 않는다면 ?
128
+
129
+ 다국어 기능을 사용하지 않고, 한가지 언어로만 사용할 수 있도록 강제할 수 있나요 ?
130
+
131
+ A: [다국어 기능 설정](./faq/i18n-configuration.md)
132
+
121
133
  ---
122
134
 
123
135
  ## 추가 도움말 및 연락처 정보
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/operato-board",
3
- "version": "6.2.15",
3
+ "version": "6.2.16",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "dist-client/index.js",
6
6
  "things-factory": true,
@@ -91,8 +91,8 @@
91
91
  "@things-factory/auth-azure-ad": "^6.2.15",
92
92
  "@things-factory/auth-google": "^6.2.15",
93
93
  "@things-factory/auth-ui": "^6.2.15",
94
- "@things-factory/board-service": "^6.2.15",
95
- "@things-factory/board-ui": "^6.2.15",
94
+ "@things-factory/board-service": "^6.2.16",
95
+ "@things-factory/board-ui": "^6.2.16",
96
96
  "@things-factory/context-ui": "^6.2.15",
97
97
  "@things-factory/export-ui": "^6.2.15",
98
98
  "@things-factory/fav-base": "^6.2.15",
@@ -121,8 +121,8 @@
121
121
  "@things-factory/system-ui": "^6.2.15"
122
122
  },
123
123
  "devDependencies": {
124
- "@things-factory/board-test": "^6.2.15",
124
+ "@things-factory/board-test": "^6.2.16",
125
125
  "@things-factory/builder": "^6.2.2"
126
126
  },
127
- "gitHead": "262fa72c069ac8745dd16acd695d0e87331fbc14"
127
+ "gitHead": "71862b915144bcec77878e63582771361d08c064"
128
128
  }
package/schema.graphql CHANGED
@@ -413,13 +413,14 @@ type BoardTemplate {
413
413
  description: String
414
414
  domain: Domain
415
415
  id: ID!
416
+ mine: Boolean!
416
417
  model: String
417
418
  name: String
418
- state: String
419
+ tags: Object
419
420
  thumbnail: String
420
421
  updatedAt: DateTimeISO
421
422
  updater: User
422
- version: Float
423
+ visibility: String
423
424
  }
424
425
 
425
426
  type BoardTemplateList {
@@ -431,16 +432,10 @@ input BoardTemplatePatch {
431
432
  cuFlag: String
432
433
  description: String
433
434
  id: ID
434
- model: String!
435
+ model: String
435
436
  name: String
436
- state: BoardTemplateStatus
437
437
  thumbnail: String
438
- }
439
-
440
- """state enumeration of a boardTemplate"""
441
- enum BoardTemplateStatus {
442
- DRAFT
443
- RELEASED
438
+ visibility: String
444
439
  }
445
440
 
446
441
  input ChatCompletionInput {
@@ -1943,7 +1938,22 @@ type Mutation {
1943
1938
  """To refresh oauth2 access token"""
1944
1939
  refreshOauth2AccessToken(id: String!): Oauth2Client!
1945
1940
 
1946
- """To release Board information"""
1941
+ """To register a board as a board template with the given ID"""
1942
+ registerBoardAsTemplate(
1943
+ """description of board template to be regiestered"""
1944
+ description: String!
1945
+
1946
+ """board Id to be regiestered"""
1947
+ id: String!
1948
+
1949
+ """name of board template to be regiestered"""
1950
+ name: String!
1951
+
1952
+ """visibility of board template to be regiestered"""
1953
+ visibility: String!
1954
+ ): BoardTemplate!
1955
+
1956
+ """To release a Board"""
1947
1957
  releaseBoard(id: String!): Board!
1948
1958
  renewApplicationAccessToken(id: String!, scope: String!): AccessToken!
1949
1959
 
@@ -2249,11 +2259,11 @@ input NewBoard {
2249
2259
  }
2250
2260
 
2251
2261
  input NewBoardTemplate {
2252
- description: String
2262
+ description: String!
2253
2263
  model: String!
2254
2264
  name: String!
2255
- state: BoardTemplateStatus
2256
2265
  thumbnail: String
2266
+ visibility: String!
2257
2267
  }
2258
2268
 
2259
2269
  input NewCommonCode {
@@ -3163,9 +3173,6 @@ type Query {
3163
3173
  """To fetch a BoardTemplate"""
3164
3174
  boardTemplate(id: String!): BoardTemplate
3165
3175
 
3166
- """To fetch a BoardTemplate by name"""
3167
- boardTemplateByName(name: String!): BoardTemplate
3168
-
3169
3176
  """To fetch multiple BoardTemplates"""
3170
3177
  boardTemplates(filters: [Filter!], inherited: InheritedValueType, pagination: Pagination, sortings: [Sorting!]): BoardTemplateList!
3171
3178