@things-factory/meta-ui 9.1.19 → 10.0.0-beta.2
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-client/component/grist/editor/grist-editor-code-input.d.ts +5 -3
- package/dist-client/component/grist/editor/grist-editor-code-input.js +1 -0
- package/dist-client/component/grist/editor/grist-editor-code-input.js.map +1 -1
- package/dist-client/component/grist/editor/grist-editor-meta-code-selector.d.ts +5 -3
- package/dist-client/component/grist/editor/grist-editor-meta-code-selector.js +1 -0
- package/dist-client/component/grist/editor/grist-editor-meta-code-selector.js.map +1 -1
- package/dist-client/component/grist/editor/grist-editor-meta-object-selector.d.ts +6 -3
- package/dist-client/component/grist/editor/grist-editor-meta-object-selector.js +22 -17
- package/dist-client/component/grist/editor/grist-editor-meta-object-selector.js.map +1 -1
- package/dist-client/component/grist/renderer/grist-renderer-code-input.d.ts +1 -1
- package/dist-client/component/grist/renderer/grist-renderer-code-input.js +1 -0
- package/dist-client/component/grist/renderer/grist-renderer-code-input.js.map +1 -1
- package/dist-client/component/grist/renderer/grist-renderer-meta-code-selector.d.ts +1 -1
- package/dist-client/component/grist/renderer/grist-renderer-meta-code-selector.js +1 -0
- package/dist-client/component/grist/renderer/grist-renderer-meta-code-selector.js.map +1 -1
- package/dist-client/component/grist/renderer/grist-renderer-meta-object-selector.d.ts +1 -1
- package/dist-client/component/grist/renderer/grist-renderer-meta-object-selector.js +1 -0
- package/dist-client/component/grist/renderer/grist-renderer-meta-object-selector.js.map +1 -1
- package/dist-client/component/popup/code-input-editor-popup.d.ts +4 -3
- package/dist-client/component/popup/code-input-editor-popup.js +1 -0
- package/dist-client/component/popup/code-input-editor-popup.js.map +1 -1
- package/dist-client/component/popup/file-upload-popup.d.ts +1 -1
- package/dist-client/component/popup/file-upload-popup.js +1 -0
- package/dist-client/component/popup/file-upload-popup.js.map +1 -1
- package/dist-client/component/popup/meta-object-selector-popup.js +1 -0
- package/dist-client/component/popup/meta-object-selector-popup.js.map +1 -1
- package/dist-client/dynamic-menus.js +1 -0
- package/dist-client/dynamic-menus.js.map +1 -1
- package/dist-client/mixin/meta-base-mixin.d.ts +70 -11
- package/dist-client/mixin/meta-base-mixin.js +1 -0
- package/dist-client/mixin/meta-base-mixin.js.map +1 -1
- package/dist-client/mixin/meta-basic-grist-mixin.d.ts +124 -42
- package/dist-client/mixin/meta-basic-grist-mixin.js +1 -0
- package/dist-client/mixin/meta-basic-grist-mixin.js.map +1 -1
- package/dist-client/mixin/meta-button-mixin.d.ts +31 -28
- package/dist-client/mixin/meta-button-mixin.js +1 -0
- package/dist-client/mixin/meta-button-mixin.js.map +1 -1
- package/dist-client/mixin/meta-form-mixin.d.ts +71 -41
- package/dist-client/mixin/meta-form-mixin.js +1 -0
- package/dist-client/mixin/meta-form-mixin.js.map +1 -1
- package/dist-client/mixin/meta-grist-tab-mixin.d.ts +125 -44
- package/dist-client/mixin/meta-grist-tab-mixin.js +1 -0
- package/dist-client/mixin/meta-grist-tab-mixin.js.map +1 -1
- package/dist-client/mixin/meta-main-tab-mixin.d.ts +120 -42
- package/dist-client/mixin/meta-main-tab-mixin.js +1 -0
- package/dist-client/mixin/meta-main-tab-mixin.js.map +1 -1
- package/dist-client/mixin/meta-master-detail-mixin.d.ts +135 -46
- package/dist-client/mixin/meta-master-detail-mixin.js +1 -0
- package/dist-client/mixin/meta-master-detail-mixin.js.map +1 -1
- package/dist-client/mixin/meta-service-mixin.d.ts +29 -17
- package/dist-client/mixin/meta-service-mixin.js +1 -0
- package/dist-client/mixin/meta-service-mixin.js.map +1 -1
- package/dist-client/mixin/meta-tab-detail-mixin.d.ts +126 -42
- package/dist-client/mixin/meta-tab-detail-mixin.js +1 -0
- package/dist-client/mixin/meta-tab-detail-mixin.js.map +1 -1
- package/dist-client/mixin/meta-tab-mixin.d.ts +59 -32
- package/dist-client/mixin/meta-tab-mixin.js +1 -0
- package/dist-client/mixin/meta-tab-mixin.js.map +1 -1
- package/dist-client/pages/activity/meta-activity-define-page.d.ts +3 -1
- package/dist-client/pages/activity/meta-activity-define-page.js +2 -1
- package/dist-client/pages/activity/meta-activity-define-page.js.map +1 -1
- package/dist-client/pages/activity/meta-activity-list-page.d.ts +1 -1
- package/dist-client/pages/activity/meta-activity-list-page.js +1 -0
- package/dist-client/pages/activity/meta-activity-list-page.js.map +1 -1
- package/dist-client/pages/activity/meta-activity-viewer-element.d.ts +1 -4
- package/dist-client/pages/activity/meta-activity-viewer-element.js +1 -5
- package/dist-client/pages/activity/meta-activity-viewer-element.js.map +1 -1
- package/dist-client/pages/activity/meta-activity-writer-element.d.ts +2 -4
- package/dist-client/pages/activity/meta-activity-writer-element.js +1 -0
- package/dist-client/pages/activity/meta-activity-writer-element.js.map +1 -1
- package/dist-client/pages/activity/meta-activiy-mixin.d.ts +1 -3
- package/dist-client/pages/activity/meta-activiy-mixin.js +1 -0
- package/dist-client/pages/activity/meta-activiy-mixin.js.map +1 -1
- package/dist-client/pages/button-role/button-role-detail.d.ts +54 -39
- package/dist-client/pages/button-role/button-role-detail.js +1 -1
- package/dist-client/pages/button-role/button-role-detail.js.map +1 -1
- package/dist-client/pages/button-role/button-role-page.d.ts +63 -47
- package/dist-client/pages/button-role/button-role-page.js +1 -0
- package/dist-client/pages/button-role/button-role-page.js.map +1 -1
- package/dist-client/pages/doc-number/doc-number-page.d.ts +3 -1
- package/dist-client/pages/doc-number/doc-number-page.js +1 -0
- package/dist-client/pages/doc-number/doc-number-page.js.map +1 -1
- package/dist-client/pages/doc-number/next-doc-number-popup.d.ts +4 -1
- package/dist-client/pages/doc-number/next-doc-number-popup.js +1 -0
- package/dist-client/pages/doc-number/next-doc-number-popup.js.map +1 -1
- package/dist-client/pages/entity/config-entity.d.ts +4 -1
- package/dist-client/pages/entity/config-entity.js +1 -0
- package/dist-client/pages/entity/config-entity.js.map +1 -1
- package/dist-client/pages/entity/main-menu-selector.d.ts +33 -15
- package/dist-client/pages/entity/main-menu-selector.js +1 -0
- package/dist-client/pages/entity/main-menu-selector.js.map +1 -1
- package/dist-client/pages/history/history-copy-list-popup.d.ts +13 -8
- package/dist-client/pages/history/history-copy-list-popup.js +1 -0
- package/dist-client/pages/history/history-copy-list-popup.js.map +1 -1
- package/dist-client/pages/history/history-json-list-popup.d.ts +13 -8
- package/dist-client/pages/history/history-json-list-popup.js +1 -2
- package/dist-client/pages/history/history-json-list-popup.js.map +1 -1
- package/dist-client/pages/menu/dynamic-menu-template.d.ts +1 -1
- package/dist-client/pages/menu/dynamic-menu-template.js +1 -0
- package/dist-client/pages/menu/dynamic-menu-template.js.map +1 -1
- package/dist-client/pages/menu/dynamic-menu.d.ts +9 -3
- package/dist-client/pages/menu/dynamic-menu.js +1 -0
- package/dist-client/pages/menu/dynamic-menu.js.map +1 -1
- package/dist-client/pages/menu/export-menu-popup.d.ts +11 -12
- package/dist-client/pages/menu/export-menu-popup.js +1 -0
- package/dist-client/pages/menu/export-menu-popup.js.map +1 -1
- package/dist-client/pages/meta-form-element.d.ts +45 -41
- package/dist-client/pages/meta-form-element.js +1 -0
- package/dist-client/pages/meta-form-element.js.map +1 -1
- package/dist-client/pages/meta-grist-element.d.ts +52 -38
- package/dist-client/pages/meta-grist-element.js +1 -0
- package/dist-client/pages/meta-grist-element.js.map +1 -1
- package/dist-client/pages/meta-grist-page.d.ts +55 -38
- package/dist-client/pages/meta-grist-page.js +1 -0
- package/dist-client/pages/meta-grist-page.js.map +1 -1
- package/dist-client/pages/meta-grist-tab-element.d.ts +57 -44
- package/dist-client/pages/meta-grist-tab-element.js +1 -0
- package/dist-client/pages/meta-grist-tab-element.js.map +1 -1
- package/dist-client/pages/meta-grist-tab-page.d.ts +57 -44
- package/dist-client/pages/meta-grist-tab-page.js +1 -0
- package/dist-client/pages/meta-grist-tab-page.js.map +1 -1
- package/dist-client/pages/meta-main-tab-element.d.ts +49 -42
- package/dist-client/pages/meta-main-tab-element.js +1 -0
- package/dist-client/pages/meta-main-tab-element.js.map +1 -1
- package/dist-client/pages/meta-main-tab-page.d.ts +52 -42
- package/dist-client/pages/meta-main-tab-page.js +1 -0
- package/dist-client/pages/meta-main-tab-page.js.map +1 -1
- package/dist-client/pages/meta-master-detail-element.d.ts +59 -46
- package/dist-client/pages/meta-master-detail-element.js +1 -0
- package/dist-client/pages/meta-master-detail-element.js.map +1 -1
- package/dist-client/pages/meta-master-detail-page.d.ts +62 -46
- package/dist-client/pages/meta-master-detail-page.js +1 -0
- package/dist-client/pages/meta-master-detail-page.js.map +1 -1
- package/dist-client/pages/meta-tab-detail-element.d.ts +50 -42
- package/dist-client/pages/meta-tab-detail-element.js +1 -0
- package/dist-client/pages/meta-tab-detail-element.js.map +1 -1
- package/dist-client/pages/meta-tab-detail-page.d.ts +53 -42
- package/dist-client/pages/meta-tab-detail-page.js +1 -0
- package/dist-client/pages/meta-tab-detail-page.js.map +1 -1
- package/dist-client/pages/meta-tab-element.d.ts +40 -32
- package/dist-client/pages/meta-tab-element.js +1 -0
- package/dist-client/pages/meta-tab-element.js.map +1 -1
- package/dist-client/pages/printer-device/printer-device-page.d.ts +3 -1
- package/dist-client/pages/printer-device/printer-device-page.js +1 -0
- package/dist-client/pages/printer-device/printer-device-page.js.map +1 -1
- package/dist-client/pages/template/doc-template-page.d.ts +3 -1
- package/dist-client/pages/template/doc-template-page.js +1 -0
- package/dist-client/pages/template/doc-template-page.js.map +1 -1
- package/dist-client/pages/template/template-file-page.d.ts +3 -1
- package/dist-client/pages/template/template-file-page.js +1 -0
- package/dist-client/pages/template/template-file-page.js.map +1 -1
- package/dist-client/pages/terms/config-terminology.d.ts +1 -1
- package/dist-client/pages/terms/config-terminology.js +1 -0
- package/dist-client/pages/terms/config-terminology.js.map +1 -1
- package/dist-client/pages/work-code/work-code-detail-popup.d.ts +52 -39
- package/dist-client/pages/work-code/work-code-detail-popup.js +1 -0
- package/dist-client/pages/work-code/work-code-detail-popup.js.map +1 -1
- package/dist-client/pages/work-code/work-code-page.d.ts +4 -1
- package/dist-client/pages/work-code/work-code-page.js +1 -0
- package/dist-client/pages/work-code/work-code-page.js.map +1 -1
- package/dist-client/tsconfig.tsbuildinfo +1 -1
- package/dist-client/utils/grist-default-value.d.ts +8 -2
- package/dist-client/utils/grist-default-value.js +1 -0
- package/dist-client/utils/grist-default-value.js.map +1 -1
- package/dist-client/utils/meta-api.d.ts +270 -82
- package/dist-client/utils/meta-api.js +1 -0
- package/dist-client/utils/meta-api.js.map +1 -1
- package/dist-client/utils/meta-crypto.d.ts +1 -1
- package/dist-client/utils/meta-crypto.js +1 -0
- package/dist-client/utils/meta-crypto.js.map +1 -1
- package/dist-client/utils/meta-ui-util.d.ts +262 -64
- package/dist-client/utils/meta-ui-util.js +1 -0
- package/dist-client/utils/meta-ui-util.js.map +1 -1
- package/dist-client/utils/rest-service-util.d.ts +11 -11
- package/dist-client/utils/rest-service-util.js +1 -0
- package/dist-client/utils/rest-service-util.js.map +1 -1
- package/dist-client/utils/service-util.d.ts +107 -32
- package/dist-client/utils/service-util.js +1 -0
- package/dist-client/utils/service-util.js.map +1 -1
- package/dist-client/utils/ui-util.d.ts +17 -17
- package/dist-client/utils/ui-util.js +1 -0
- package/dist-client/utils/ui-util.js.map +1 -1
- package/dist-client/utils/value-util.d.ts +6 -6
- package/dist-client/utils/value-util.js +1 -0
- package/dist-client/utils/value-util.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +24 -24
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* @author Shortstop <shortstop@hatiolab.com>
|
|
5
5
|
* @description 데이터 핸들링 관련 유틸리티 함수 정의
|
|
6
6
|
*/
|
|
7
|
-
export class ValueUtil {
|
|
7
|
+
export declare class ValueUtil {
|
|
8
8
|
/**
|
|
9
9
|
* @description object, string, number, array 빈 값 여부 검사
|
|
10
10
|
**********************************************************
|
|
@@ -41,7 +41,7 @@ export class ValueUtil {
|
|
|
41
41
|
* @param {String} value
|
|
42
42
|
* @returns
|
|
43
43
|
*/
|
|
44
|
-
static toBoolean(value:
|
|
44
|
+
static toBoolean(value: any): boolean;
|
|
45
45
|
/**
|
|
46
46
|
* @description config, data의 key 값을 비교해 결과를 리턴한다.
|
|
47
47
|
* 값에 * 는 체크하지 않는다.
|
|
@@ -61,7 +61,7 @@ export class ValueUtil {
|
|
|
61
61
|
* @param {Boolean} isTransMsg
|
|
62
62
|
* @returns
|
|
63
63
|
*/
|
|
64
|
-
static setParams(retObj: any, dataObj: any, key:
|
|
64
|
+
static setParams(retObj: any, dataObj: any, key: any, isTransMsg: any): any;
|
|
65
65
|
/**
|
|
66
66
|
* @description data에서 key(Array)를 찾아 리턴
|
|
67
67
|
********************************************
|
|
@@ -69,7 +69,7 @@ export class ValueUtil {
|
|
|
69
69
|
* @param {...String} keys
|
|
70
70
|
* @returns
|
|
71
71
|
*/
|
|
72
|
-
static getParams(data: any, ...keys:
|
|
72
|
+
static getParams(data: any, ...keys: any[]): any;
|
|
73
73
|
/**
|
|
74
74
|
* @description sourceList에 존재하는 오브젝트의 keys 필드들을 targetList로 복사
|
|
75
75
|
***********************************************************************
|
|
@@ -78,7 +78,7 @@ export class ValueUtil {
|
|
|
78
78
|
* @param {...String} keys
|
|
79
79
|
* @returns {Array} 복사한 객체 리스트
|
|
80
80
|
*/
|
|
81
|
-
static populateArray(sourceList: any
|
|
81
|
+
static populateArray(sourceList: any, targetList: any, ...keys: any[]): any;
|
|
82
82
|
/**
|
|
83
83
|
* @description source에 존재하는 keys 필드들을 target으로 복사
|
|
84
84
|
********************************************************
|
|
@@ -87,7 +87,7 @@ export class ValueUtil {
|
|
|
87
87
|
* @param {...String} keys
|
|
88
88
|
* @returns {Object} 복사한 객체
|
|
89
89
|
*/
|
|
90
|
-
static populateObject(source: any, target: any, ...keys:
|
|
90
|
+
static populateObject(source: any, target: any, ...keys: any[]): any;
|
|
91
91
|
/**
|
|
92
92
|
* @description source에 존재하는 keys 필드들을 target으로 복사
|
|
93
93
|
********************************************************
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"value-util.js","sourceRoot":"","sources":["../../client/utils/value-util.js"],"names":[],"mappings":"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","sourcesContent":["import isEqual from 'lodash-es/isEqual'\n\nimport { TermsUtil } from './terms-util'\n\n/**\n * @license\n * Copyright © HatioLab Inc. All rights reserved.\n * @author Shortstop <shortstop@hatiolab.com>\n * @description 데이터 핸들링 관련 유틸리티 함수 정의\n */\nexport class ValueUtil {\n /**\n * @description object, string, number, array 빈 값 여부 검사\n **********************************************************\n * @param {Object} value\n * @returns {Boolean}\n */\n static isEmpty(value) {\n if (value === undefined) {\n return true\n } else if (value === null) {\n return true\n } else if (typeof value === 'boolean') {\n return false\n } else if (typeof value === 'string' || typeof value === 'number') {\n if (value == '') return true\n } else if (Array.isArray(value)) {\n if (value.length == 0) return true\n } else if (typeof value === 'object') {\n if (Object.keys(value).length == 0) return true\n }\n\n return false\n }\n\n /**\n * @description object, string, number, array 빈 값이 아닌지 여부 검사\n *****************************************************************\n * @param {Object} value\n * @returns {Boolean}\n */\n static isNotEmpty(value) {\n return !ValueUtil.isEmpty(value)\n }\n\n /**\n * @description 두 객체가 동일한지 비교\n **********************************\n * @param {*} data1\n * @param {*} data2\n * @returns\n */\n static isEquals(data1, data2) {\n return isEqual(data1, data2)\n }\n\n /**\n * @description 값을 정수로 변환\n **********************************\n * @param {*} value\n * @param {*} defaultValue\n * @returns\n */\n static toInteger(value, defaultValue) {\n return ValueUtil.isEmpty(value) ? (defaultValue ? defaultValue : 0) : parseInt(value)\n }\n\n /**\n * @description 값을 Boolean으로 변환\n **********************************\n * @param {String} value\n * @returns\n */\n static toBoolean(value) {\n return ValueUtil.isEmpty(value) ? false : value == 'true' || value == 't' || value == 'TRUE' || value == 'T' || value == 'on' || value == 'ON'\n }\n\n /**\n * @description config, data의 key 값을 비교해 결과를 리턴한다.\n * 값에 * 는 체크하지 않는다.\n ****************************************\n * @param {Object} config\n * @param {Object} data\n * @param {String || Array} keys\n * @returns\n */\n static compareObjectValues(config, data, keys) {\n let isEquals = true\n\n keys.forEach(key => {\n let compareValue = config[key]\n\n if (compareValue === '*') {\n return\n }\n\n let recordValue = data[key] || ''\n\n if (ValueUtil.isEmpty(compareValue)) {\n if (ValueUtil.isNotEmpty(recordValue)) {\n isEquals = false\n }\n } else {\n if (compareValue != recordValue) {\n isEquals = false\n }\n }\n\n if (!isEquals) {\n return\n }\n })\n\n return isEquals\n }\n\n /**\n * @description dataObject 에서 key 값을 찾아 isTransMsg 옵션을 적용해 retObjct에 반영한다.\n **********************************************************************************\n * @param {Object} retObj\n * @param {Object} dataObj\n * @param {String} key\n * @param {Boolean} isTransMsg\n * @returns\n */\n static setParams(retObj, dataObj, key, isTransMsg) {\n let value = ValueUtil.getParams(dataObj, key)\n\n if (ValueUtil.isNotEmpty(value)) {\n retObj[key] = isTransMsg === true ? TermsUtil.t(value) : value\n }\n\n return retObj\n }\n\n /**\n * @description data에서 key(Array)를 찾아 리턴\n ********************************************\n * @param {Object} data\n * @param {...String} keys\n * @returns\n */\n static getParams(data, ...keys) {\n // probably same as followings\n // return lodash.get(data, keys.join('.'))\n\n // keys 파라미터가 없으면 return\n if (arguments.length <= 1) {\n return undefined\n }\n\n let key = keys[0]\n // data 에 key가 없으면 return\n if (ValueUtil.isEmpty(data[key])) {\n return undefined\n }\n\n let paramData = data[key]\n if (keys.length > 1) {\n // 현재 이후에 키가 더 있으면 재귀 호출\n return ValueUtil.getParams(paramData, ...keys.slice(1))\n } else {\n return paramData\n }\n }\n\n /**\n * @description sourceList에 존재하는 오브젝트의 keys 필드들을 targetList로 복사\n ***********************************************************************\n * @param {Array} sourceList\n * @param {Array} targetList\n * @param {...String} keys\n * @returns {Array} 복사한 객체 리스트\n */\n static populateArray(sourceList, targetList, ...keys) {\n targetList = targetList || []\n keys = keys || Object.keys(sourceList)\n\n if (ValueUtil.isNotEmpty(keys)) {\n targetList = sourceList.map((source, index) => {\n let target = targetList.length > index ? targetList[index] : {}\n return ValueUtil.populateObject(source, target, keys)\n })\n }\n\n return targetList\n }\n\n /**\n * @description source에 존재하는 keys 필드들을 target으로 복사\n ********************************************************\n * @param {Object} source\n * @param {Object} target\n * @param {...String} keys\n * @returns {Object} 복사한 객체\n */\n static populateObject(source, target, ...keys) {\n target = target || {}\n keys = keys || Object.keys(source)\n\n if (ValueUtil.isNotEmpty(keys)) {\n keys.forEach(key => {\n target[key] = source[key]\n })\n }\n\n return target\n }\n\n /**\n * @description source에 존재하는 keys 필드들을 target으로 복사\n ********************************************************\n * @param {Object} sourceObj\n * @param {Object} targetObj\n * @returns {Object} 복사한 객체\n */\n static replaceVariableObject(sourceObj, targetObj) {\n let objKeys = Object.keys(sourceObj)\n let targetKeys = Object.keys(targetObj)\n\n objKeys.forEach(key => {\n let value = sourceObj[key]\n\n if (typeof value == 'string' && value.startsWith('$')) {\n let valueFieldName = value.replace('$', '')\n if (targetKeys.includes(valueFieldName)) {\n sourceObj[key] = targetObj[valueFieldName]\n }\n }\n })\n\n return sourceObj\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"value-util.js","sourceRoot":"","sources":["../../client/utils/value-util.ts"],"names":[],"mappings":"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","sourcesContent":["// @ts-nocheck\nimport isEqual from 'lodash-es/isEqual'\n\nimport { TermsUtil } from './terms-util'\n\n/**\n * @license\n * Copyright © HatioLab Inc. All rights reserved.\n * @author Shortstop <shortstop@hatiolab.com>\n * @description 데이터 핸들링 관련 유틸리티 함수 정의\n */\nexport class ValueUtil {\n /**\n * @description object, string, number, array 빈 값 여부 검사\n **********************************************************\n * @param {Object} value\n * @returns {Boolean}\n */\n static isEmpty(value) {\n if (value === undefined) {\n return true\n } else if (value === null) {\n return true\n } else if (typeof value === 'boolean') {\n return false\n } else if (typeof value === 'string' || typeof value === 'number') {\n if (value == '') return true\n } else if (Array.isArray(value)) {\n if (value.length == 0) return true\n } else if (typeof value === 'object') {\n if (Object.keys(value).length == 0) return true\n }\n\n return false\n }\n\n /**\n * @description object, string, number, array 빈 값이 아닌지 여부 검사\n *****************************************************************\n * @param {Object} value\n * @returns {Boolean}\n */\n static isNotEmpty(value) {\n return !ValueUtil.isEmpty(value)\n }\n\n /**\n * @description 두 객체가 동일한지 비교\n **********************************\n * @param {*} data1\n * @param {*} data2\n * @returns\n */\n static isEquals(data1, data2) {\n return isEqual(data1, data2)\n }\n\n /**\n * @description 값을 정수로 변환\n **********************************\n * @param {*} value\n * @param {*} defaultValue\n * @returns\n */\n static toInteger(value, defaultValue) {\n return ValueUtil.isEmpty(value) ? (defaultValue ? defaultValue : 0) : parseInt(value)\n }\n\n /**\n * @description 값을 Boolean으로 변환\n **********************************\n * @param {String} value\n * @returns\n */\n static toBoolean(value) {\n return ValueUtil.isEmpty(value) ? false : value == 'true' || value == 't' || value == 'TRUE' || value == 'T' || value == 'on' || value == 'ON'\n }\n\n /**\n * @description config, data의 key 값을 비교해 결과를 리턴한다.\n * 값에 * 는 체크하지 않는다.\n ****************************************\n * @param {Object} config\n * @param {Object} data\n * @param {String || Array} keys\n * @returns\n */\n static compareObjectValues(config, data, keys) {\n let isEquals = true\n\n keys.forEach(key => {\n let compareValue = config[key]\n\n if (compareValue === '*') {\n return\n }\n\n let recordValue = data[key] || ''\n\n if (ValueUtil.isEmpty(compareValue)) {\n if (ValueUtil.isNotEmpty(recordValue)) {\n isEquals = false\n }\n } else {\n if (compareValue != recordValue) {\n isEquals = false\n }\n }\n\n if (!isEquals) {\n return\n }\n })\n\n return isEquals\n }\n\n /**\n * @description dataObject 에서 key 값을 찾아 isTransMsg 옵션을 적용해 retObjct에 반영한다.\n **********************************************************************************\n * @param {Object} retObj\n * @param {Object} dataObj\n * @param {String} key\n * @param {Boolean} isTransMsg\n * @returns\n */\n static setParams(retObj, dataObj, key, isTransMsg) {\n let value = ValueUtil.getParams(dataObj, key)\n\n if (ValueUtil.isNotEmpty(value)) {\n retObj[key] = isTransMsg === true ? TermsUtil.t(value) : value\n }\n\n return retObj\n }\n\n /**\n * @description data에서 key(Array)를 찾아 리턴\n ********************************************\n * @param {Object} data\n * @param {...String} keys\n * @returns\n */\n static getParams(data, ...keys) {\n // probably same as followings\n // return lodash.get(data, keys.join('.'))\n\n // keys 파라미터가 없으면 return\n if (arguments.length <= 1) {\n return undefined\n }\n\n let key = keys[0]\n // data 에 key가 없으면 return\n if (ValueUtil.isEmpty(data[key])) {\n return undefined\n }\n\n let paramData = data[key]\n if (keys.length > 1) {\n // 현재 이후에 키가 더 있으면 재귀 호출\n return ValueUtil.getParams(paramData, ...keys.slice(1))\n } else {\n return paramData\n }\n }\n\n /**\n * @description sourceList에 존재하는 오브젝트의 keys 필드들을 targetList로 복사\n ***********************************************************************\n * @param {Array} sourceList\n * @param {Array} targetList\n * @param {...String} keys\n * @returns {Array} 복사한 객체 리스트\n */\n static populateArray(sourceList, targetList, ...keys) {\n targetList = targetList || []\n keys = keys || Object.keys(sourceList)\n\n if (ValueUtil.isNotEmpty(keys)) {\n targetList = sourceList.map((source, index) => {\n let target = targetList.length > index ? targetList[index] : {}\n return ValueUtil.populateObject(source, target, keys)\n })\n }\n\n return targetList\n }\n\n /**\n * @description source에 존재하는 keys 필드들을 target으로 복사\n ********************************************************\n * @param {Object} source\n * @param {Object} target\n * @param {...String} keys\n * @returns {Object} 복사한 객체\n */\n static populateObject(source, target, ...keys) {\n target = target || {}\n keys = keys || Object.keys(source)\n\n if (ValueUtil.isNotEmpty(keys)) {\n keys.forEach(key => {\n target[key] = source[key]\n })\n }\n\n return target\n }\n\n /**\n * @description source에 존재하는 keys 필드들을 target으로 복사\n ********************************************************\n * @param {Object} sourceObj\n * @param {Object} targetObj\n * @returns {Object} 복사한 객체\n */\n static replaceVariableObject(sourceObj, targetObj) {\n let objKeys = Object.keys(sourceObj)\n let targetKeys = Object.keys(targetObj)\n\n objKeys.forEach(key => {\n let value = sourceObj[key]\n\n if (typeof value == 'string' && value.startsWith('$')) {\n let valueFieldName = value.replace('$', '')\n if (targetKeys.includes(valueFieldName)) {\n sourceObj[key] = targetObj[valueFieldName]\n }\n }\n })\n\n return sourceObj\n }\n}\n"]}
|