pds-dev-kit-web-test 2.7.514 → 2.7.516
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/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Text/Text.d.ts +5 -0
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Text/Text.js +34 -5
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Text/textSpecFormatOptions.js +4 -4
- package/package.json +1 -1
|
@@ -15,4 +15,9 @@ export declare function getTextOptionStyles(props: CB_STYLE_PROP_TEXTOPTION, dev
|
|
|
15
15
|
overflowY: string;
|
|
16
16
|
};
|
|
17
17
|
};
|
|
18
|
+
/**
|
|
19
|
+
* 문자열이 유효한 날짜 형태인지 판별합니다.
|
|
20
|
+
* (YYYY-MM-DD, ISO 8601, UTC 형태 등을 지원)
|
|
21
|
+
*/
|
|
22
|
+
export declare const isValidDate: (value: string) => boolean;
|
|
18
23
|
export {};
|
|
@@ -14,7 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
14
14
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.getTextOptionStyles = exports.getTextStyles = void 0;
|
|
17
|
+
exports.isValidDate = exports.getTextOptionStyles = exports.getTextStyles = void 0;
|
|
18
18
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
19
19
|
/* eslint-disable react/destructuring-assignment */
|
|
20
20
|
var react_1 = require("react");
|
|
@@ -99,14 +99,15 @@ function Text(props) {
|
|
|
99
99
|
return t('str_paid');
|
|
100
100
|
}
|
|
101
101
|
}
|
|
102
|
-
if (CB_CONTENT_PROP_TEXT_SPEC_CONNECTDATA.endsWith('Date')
|
|
103
|
-
|
|
102
|
+
if (CB_CONTENT_PROP_TEXT_SPEC_CONNECTDATA.endsWith('Date') ||
|
|
103
|
+
CB_CONTENT_PROP_TEXT_SPEC_CONNECTDATA.endsWith('At')) {
|
|
104
104
|
if (formatOption) {
|
|
105
|
-
return formatOption.formatter(
|
|
105
|
+
return formatOption.formatter(convertToUTC(value));
|
|
106
106
|
}
|
|
107
|
+
return convertToLocalTime(value);
|
|
107
108
|
}
|
|
108
109
|
if (formatOption) {
|
|
109
|
-
return formatOption.formatter(value);
|
|
110
|
+
return formatOption.formatter(convertToUTC(value));
|
|
110
111
|
}
|
|
111
112
|
return value;
|
|
112
113
|
}
|
|
@@ -257,6 +258,34 @@ function domstringToPlain(domstring, ellipsis, useEnter) {
|
|
|
257
258
|
* @returns 로컬 시간으로 변환된 문자열
|
|
258
259
|
*/
|
|
259
260
|
var convertToLocalTime = function (utcString) {
|
|
261
|
+
if ((0, exports.isValidDate)(utcString) === false) {
|
|
262
|
+
return utcString;
|
|
263
|
+
}
|
|
260
264
|
var date = new Date("".concat(utcString.replace(' ', 'T'), "Z"));
|
|
261
265
|
return date.toLocaleString();
|
|
262
266
|
};
|
|
267
|
+
var convertToUTC = function (string) {
|
|
268
|
+
if ((0, exports.isValidDate)(string) === false) {
|
|
269
|
+
return string;
|
|
270
|
+
}
|
|
271
|
+
var date = new Date("".concat(string.replace(' ', 'T'), "Z"));
|
|
272
|
+
return date.toISOString();
|
|
273
|
+
};
|
|
274
|
+
/**
|
|
275
|
+
* 문자열이 유효한 날짜 형태인지 판별합니다.
|
|
276
|
+
* (YYYY-MM-DD, ISO 8601, UTC 형태 등을 지원)
|
|
277
|
+
*/
|
|
278
|
+
var isValidDate = function (value) {
|
|
279
|
+
if (!value || typeof value !== 'string')
|
|
280
|
+
return false;
|
|
281
|
+
// 1. 기본적인 날짜 구조인지 정규식으로 확인 (숫자와 특수기호 조합)
|
|
282
|
+
// 최소한 "0000-00-00" 또는 "00/00/00" 형태는 갖춰야 함
|
|
283
|
+
var datePattern = /^\d{4}[./-]\d{1,2}[./-]\d{1,2}/;
|
|
284
|
+
if (!datePattern.test(value))
|
|
285
|
+
return false;
|
|
286
|
+
// 2. Date 객체 생성을 시도 (UTC 처리를 위해 공백을 T로 치환 고려)
|
|
287
|
+
var d = new Date(value.replace(' ', 'T'));
|
|
288
|
+
// 3. 존재하지 않는 날짜(예: 13월, 32일)라면 getTime()이 NaN을 반환함
|
|
289
|
+
return !isNaN(d.getTime());
|
|
290
|
+
};
|
|
291
|
+
exports.isValidDate = isValidDate;
|
|
@@ -9,7 +9,7 @@ exports.TEXT_SPEC_FORMAT_OPRIONS = {
|
|
|
9
9
|
var num = Number(value);
|
|
10
10
|
if (isNaN(num))
|
|
11
11
|
return value; // Return original if not a number
|
|
12
|
-
return new Intl.NumberFormat(
|
|
12
|
+
return new Intl.NumberFormat(undefined, {
|
|
13
13
|
maximumFractionDigits: 0
|
|
14
14
|
}).format(num);
|
|
15
15
|
}
|
|
@@ -21,7 +21,7 @@ exports.TEXT_SPEC_FORMAT_OPRIONS = {
|
|
|
21
21
|
var num = Number(value);
|
|
22
22
|
if (isNaN(num))
|
|
23
23
|
return value; // Return original if not a number
|
|
24
|
-
return new Intl.NumberFormat(
|
|
24
|
+
return new Intl.NumberFormat(undefined, {
|
|
25
25
|
minimumFractionDigits: 1,
|
|
26
26
|
maximumFractionDigits: 1
|
|
27
27
|
}).format(num);
|
|
@@ -34,7 +34,7 @@ exports.TEXT_SPEC_FORMAT_OPRIONS = {
|
|
|
34
34
|
var num = Number(value);
|
|
35
35
|
if (isNaN(num))
|
|
36
36
|
return value; // Return original if not a number
|
|
37
|
-
return new Intl.NumberFormat(
|
|
37
|
+
return new Intl.NumberFormat(undefined, {
|
|
38
38
|
minimumFractionDigits: 2,
|
|
39
39
|
maximumFractionDigits: 2
|
|
40
40
|
}).format(num);
|
|
@@ -139,7 +139,7 @@ exports.TEXT_SPEC_FORMAT_OPRIONS = {
|
|
|
139
139
|
if (isNaN(d.getTime()))
|
|
140
140
|
return value;
|
|
141
141
|
var dd = String(d.getDate()).padStart(2, '0');
|
|
142
|
-
var mmm = d.toLocaleString(
|
|
142
|
+
var mmm = d.toLocaleString(undefined, { month: 'short' });
|
|
143
143
|
return "".concat(dd, " ").concat(mmm);
|
|
144
144
|
}
|
|
145
145
|
},
|