pds-dev-kit-web 2.2.233 → 2.2.235

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.
Files changed (33) hide show
  1. package/dist/index.d.ts +5 -5
  2. package/dist/index.js +7 -5
  3. package/dist/src/common/styles/editorContentStyle.d.ts +1 -0
  4. package/dist/src/common/styles/editorContentStyle.js +76 -0
  5. package/dist/src/common/types/{multilingual.d.ts → LocalizedContent.d.ts} +6 -5
  6. package/dist/src/common/types/index.d.ts +1 -1
  7. package/dist/src/common/types/index.js +1 -1
  8. package/dist/src/desktop/components/BasicFormGroup/BasicFormGroup.d.ts +4 -5
  9. package/dist/src/desktop/components/BasicFormGroup/BasicFormGroup.js +3 -53
  10. package/dist/src/desktop/components/BodyTextGroup/BodyTextGroup.d.ts +3 -5
  11. package/dist/src/desktop/components/BodyTextGroup/BodyTextGroup.js +3 -51
  12. package/dist/src/desktop/components/LocalizedButton/LocalizedButton.d.ts +8 -0
  13. package/dist/src/desktop/components/LocalizedButton/LocalizedButton.js +44 -0
  14. package/dist/src/desktop/components/LocalizedButton/index.d.ts +1 -0
  15. package/dist/src/desktop/components/LocalizedButton/index.js +8 -0
  16. package/dist/src/desktop/components/RichTextEditor/RichTextEditor.js +1 -1
  17. package/dist/src/desktop/components/index.d.ts +2 -1
  18. package/dist/src/desktop/components/index.js +3 -1
  19. package/dist/src/desktop/index.d.ts +2 -2
  20. package/dist/src/desktop/index.js +3 -1
  21. package/dist/src/desktop/panels/LocalizedContentModal/LocalizedContentModal.d.ts +24 -0
  22. package/dist/src/desktop/panels/LocalizedContentModal/LocalizedContentModal.js +81 -0
  23. package/dist/src/desktop/panels/LocalizedContentModal/index.d.ts +1 -0
  24. package/dist/src/desktop/panels/{MultilingualModal → LocalizedContentModal}/index.js +2 -2
  25. package/dist/src/desktop/panels/index.d.ts +2 -2
  26. package/dist/src/desktop/panels/index.js +3 -3
  27. package/dist/src/sub/DynamicLayout/gleStyles.js +1 -1
  28. package/package.json +2 -2
  29. package/release-note.md +2 -3
  30. package/dist/src/desktop/panels/MultilingualModal/MultilingualModal.d.ts +0 -13
  31. package/dist/src/desktop/panels/MultilingualModal/MultilingualModal.js +0 -206
  32. package/dist/src/desktop/panels/MultilingualModal/index.d.ts +0 -1
  33. /package/dist/src/common/types/{multilingual.js → LocalizedContent.js} +0 -0
@@ -1,13 +0,0 @@
1
- /// <reference types="react" />
2
- import { ScrollVisibleType } from '../../../common/styles/scroll/scrollbarStyle';
3
- import type { MultilingualConfig } from '../../../common/types';
4
- type MultilingualModalModalProps = {
5
- isOpen: boolean;
6
- onClose: () => void;
7
- config?: MultilingualConfig;
8
- size?: 'large' | 'medium' | 'small' | 'rlarge';
9
- onHiddenInputUpdate?: (newValue: string) => void;
10
- scrollVisibleType?: ScrollVisibleType;
11
- };
12
- declare function MultilingualModal({ isOpen, onClose, config, size, onHiddenInputUpdate, scrollVisibleType }: MultilingualModalModalProps): import("react").ReactPortal | null;
13
- export default MultilingualModal;
@@ -1,206 +0,0 @@
1
- "use strict";
2
- var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
- return cooked;
5
- };
6
- var __assign = (this && this.__assign) || function () {
7
- __assign = Object.assign || function(t) {
8
- for (var s, i = 1, n = arguments.length; i < n; i++) {
9
- s = arguments[i];
10
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
- t[p] = s[p];
12
- }
13
- return t;
14
- };
15
- return __assign.apply(this, arguments);
16
- };
17
- var __importDefault = (this && this.__importDefault) || function (mod) {
18
- return (mod && mod.__esModule) ? mod : { "default": mod };
19
- };
20
- Object.defineProperty(exports, "__esModule", { value: true });
21
- var jsx_runtime_1 = require("react/jsx-runtime");
22
- var react_1 = require("react");
23
- var react_dom_1 = __importDefault(require("react-dom"));
24
- var react_hook_form_1 = require("react-hook-form");
25
- var react_i18next_1 = require("react-i18next");
26
- var animationStyle_1 = require("../../../common/styles/movement/animationStyle");
27
- var scrollbarStyle_1 = require("../../../common/styles/scroll/scrollbarStyle");
28
- var components_1 = require("../../components");
29
- var components_2 = require("../../../hybrid/components");
30
- var styled_components_1 = __importDefault(require("styled-components"));
31
- var LANGUAGE_I18N_KEYS = {
32
- en: 'str_multilingual_en',
33
- ko: 'str_multilingual_ko',
34
- ja: 'str_multilingual_ja',
35
- zh: 'str_multilingual_zh_cn',
36
- 'zh-Hant': 'str_multilingual_zh_tw',
37
- fr: 'str_multilingual_fr',
38
- es: 'str_multilingual_es'
39
- };
40
- function MultilingualModal(_a) {
41
- var _b, _c;
42
- var isOpen = _a.isOpen, onClose = _a.onClose, config = _a.config, _d = _a.size, size = _d === void 0 ? 'medium' : _d, onHiddenInputUpdate = _a.onHiddenInputUpdate, _e = _a.scrollVisibleType, scrollVisibleType = _e === void 0 ? 'visible' : _e;
43
- var t = (0, react_i18next_1.useTranslation)().t;
44
- var allLangInReadonly = (_b = config === null || config === void 0 ? void 0 : config.visibleLanguages) === null || _b === void 0 ? void 0 : _b.every(function (item) { var _a; return (_a = config === null || config === void 0 ? void 0 : config.readonlyLanguages) === null || _a === void 0 ? void 0 : _a.includes(item); });
45
- // FormProvider에서 사용할 기본값 계산
46
- var getDefaultValues = function () {
47
- if (!config)
48
- return {};
49
- // 먼저 hiddenInput에 저장된 값이 있는지 확인
50
- if (config.hiddenInputId) {
51
- var hiddenInputId = "hiddenInput_".concat(config.hiddenInputId);
52
- var hiddenInput = document.getElementById(hiddenInputId);
53
- if (hiddenInput && hiddenInput.value) {
54
- var existingValues = JSON.parse(hiddenInput.value);
55
- // 빈 객체가 아닌 경우에만 사용
56
- if (Object.keys(existingValues).length > 0) {
57
- return existingValues;
58
- }
59
- }
60
- }
61
- // hiddenInput에 값이 없으면 config.initialValues 사용
62
- return config.initialValues || {};
63
- };
64
- var methods = (0, react_hook_form_1.useForm)({
65
- defaultValues: getDefaultValues()
66
- });
67
- var container = (0, react_1.useState)(function () {
68
- var modalRoot = document.createElement('div');
69
- modalRoot.setAttribute('id', 'MultilingualModal');
70
- return modalRoot;
71
- })[0];
72
- (0, react_1.useLayoutEffect)(function () {
73
- if (!isOpen)
74
- return;
75
- var root = document.getElementById('root');
76
- if (!root)
77
- return;
78
- root.appendChild(container);
79
- return function () {
80
- if (root.contains(container)) {
81
- root.removeChild(container);
82
- }
83
- };
84
- }, [isOpen, container]);
85
- (0, react_1.useLayoutEffect)(function () {
86
- if (isOpen && config) {
87
- var newDefaultValues = getDefaultValues();
88
- methods.reset(newDefaultValues);
89
- }
90
- }, [isOpen, config]);
91
- var handleConfirm = function () {
92
- var formValues = methods.getValues();
93
- // hidden input에 다국어 값들을 JSON 형태로 저장
94
- var newValue = JSON.stringify(formValues);
95
- if (config === null || config === void 0 ? void 0 : config.hiddenInputId) {
96
- var hiddenInputId = "hiddenInput_".concat(config.hiddenInputId);
97
- var hiddenInput = document.getElementById(hiddenInputId);
98
- if (hiddenInput) {
99
- // BasicFormGroup의 state 업데이트
100
- if (onHiddenInputUpdate) {
101
- onHiddenInputUpdate(newValue);
102
- }
103
- // input change 이벤트 발생시켜서 form validation 등이 동작하도록 함
104
- var event_1 = new Event('change', { bubbles: true });
105
- hiddenInput.dispatchEvent(event_1);
106
- }
107
- }
108
- if (config === null || config === void 0 ? void 0 : config.onApply) {
109
- config.onApply(formValues);
110
- }
111
- onClose();
112
- };
113
- var handleCancel = function () {
114
- onClose();
115
- };
116
- if (!isOpen)
117
- return null;
118
- return react_dom_1.default.createPortal((0, jsx_runtime_1.jsxs)(react_hook_form_1.FormProvider, __assign({}, methods, { children: [(0, jsx_runtime_1.jsx)(S_ModalOverlay, { onClick: handleCancel }), (0, jsx_runtime_1.jsxs)(S_ModalWrapper, __assign({ "x-pds-name": "MultiLanguageModal", "x-pds-element-type": "panel", "x-pds-device-type": "desktop", size: size }, { children: [(0, jsx_runtime_1.jsx)(S_Header, { children: (0, jsx_runtime_1.jsx)(components_1.TextLabel, { text: t('str_multilingual_settings'), colorTheme: "sysTextPrimary", styleTheme: "headingBold" }) }), (0, jsx_runtime_1.jsxs)(S_Body, __assign({ scrollVisibleType: scrollVisibleType }, { children: [(config === null || config === void 0 ? void 0 : config.originalText) && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(components_1.BodyTextGroup, { titleText: t('str_original_text'), contentText: config.originalText }), (0, jsx_runtime_1.jsx)(components_2.Spacing, { size: "spacing_f" }), (0, jsx_runtime_1.jsx)(components_2.Divider, {}), (0, jsx_runtime_1.jsx)(components_2.Spacing, { size: "spacing_f" })] })), (_c = config === null || config === void 0 ? void 0 : config.visibleLanguages) === null || _c === void 0 ? void 0 : _c.map(function (languageCode, index) {
119
- var _a, _b;
120
- var isReadonly = (_a = config.readonlyLanguages) === null || _a === void 0 ? void 0 : _a.includes(languageCode);
121
- return ((0, jsx_runtime_1.jsxs)(S_LanguageField, { children: [(0, jsx_runtime_1.jsx)(components_1.TextLabel, { text: "".concat(t(LANGUAGE_I18N_KEYS[languageCode])), styleTheme: "subTitleBold", colorTheme: "sysTextPrimary" }), (0, jsx_runtime_1.jsx)(components_2.Spacing, { size: "spacing_b" }), (0, jsx_runtime_1.jsx)(components_1.TextField, { responsiveMode: "use", multiRows: config.textFieldLineType === 'multi' ? 5 : undefined, autoMaxRows: config.textFieldLineType === 'auto' ? 5 : undefined, autoMinRows: config.textFieldLineType === 'auto' ? 1 : undefined, name: languageCode, hintText: t('str_9071'), placeholder: "Input Text", textLineType: config.textFieldLineType, state: isReadonly ? 'disabled' : 'normal' }), index < (((_b = config.visibleLanguages) === null || _b === void 0 ? void 0 : _b.length) || 0) - 1 && (0, jsx_runtime_1.jsx)(components_2.Spacing, { size: "spacing_f" })] }, "".concat(languageCode, "_field")));
122
- })] })), (0, jsx_runtime_1.jsxs)(S_Footer, { children: [(0, jsx_runtime_1.jsx)(S_Left, {}), (0, jsx_runtime_1.jsxs)(S_Right, { children: [!allLangInReadonly && ((0, jsx_runtime_1.jsx)(S_Btn2Wrapper, { children: (0, jsx_runtime_1.jsx)(components_1.MainButton, { styleTheme: "secondary", text: t('str_cancel'), size: "medium", onClick: handleCancel }) })), (0, jsx_runtime_1.jsx)(components_1.MainButton, { text: allLangInReadonly ? t('str_confirm') : t('str_apply'), size: "medium", onClick: handleConfirm })] })] })] }))] })), container);
123
- }
124
- var S_ModalOverlay = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: ", ";\n height: 100vh;\n left: 0;\n position: fixed;\n top: 0;\n width: 100vw;\n\n ", "\n"], ["\n background-color: ", ";\n height: 100vh;\n left: 0;\n position: fixed;\n top: 0;\n width: 100vw;\n\n ", "\n"])), function (_a) {
125
- var theme = _a.theme;
126
- return theme.ui_cpnt_modal_dimmed;
127
- }, animationStyle_1.modalOverlayOnAni);
128
- var S_ModalWrapper = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n background-color: ", ";\n border: 1px solid ", ";\n border-radius: 24px;\n box-shadow: ", ";\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n left: 50%;\n position: fixed;\n top: 50%;\n transform: translate(-50%, -50%);\n width: ", ";\n\n ", "\n"], ["\n background-color: ", ";\n border: 1px solid ", ";\n border-radius: 24px;\n box-shadow: ", ";\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n left: 50%;\n position: fixed;\n top: 50%;\n transform: translate(-50%, -50%);\n width: ", ";\n\n ", "\n"])), function (_a) {
129
- var theme = _a.theme;
130
- return theme.ui_cpnt_modal_base;
131
- }, function (_a) {
132
- var theme = _a.theme;
133
- return theme.ui_cpnt_modal_border;
134
- }, function (_a) {
135
- var theme = _a.theme;
136
- return theme.boxShadow.elevation4;
137
- }, function (_a) {
138
- var size = _a.size;
139
- var sizes = {
140
- large: '960px',
141
- medium: '688px',
142
- small: '400px',
143
- rlarge: '80vw'
144
- };
145
- return size && sizes[size];
146
- }, animationStyle_1.modalOnAni);
147
- var S_Header = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n"], ["\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n"])), function (_a) {
148
- var theme = _a.theme;
149
- return theme.spacing.spacingC;
150
- }, function (_a) {
151
- var theme = _a.theme;
152
- return theme.spacing.spacingE;
153
- }, function (_a) {
154
- var theme = _a.theme;
155
- return theme.spacing.spacingE;
156
- }, function (_a) {
157
- var theme = _a.theme;
158
- return theme.spacing.spacingE;
159
- });
160
- var S_Body = styled_components_1.default.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n flex: 1;\n max-height: 60vh;\n overflow: auto;\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n\n ", "\n"], ["\n flex: 1;\n max-height: 60vh;\n overflow: auto;\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n\n ", "\n"])), function (_a) {
161
- var theme = _a.theme;
162
- return theme.spacing.spacingF;
163
- }, function (_a) {
164
- var theme = _a.theme;
165
- return theme.spacing.spacingE;
166
- }, function (_a) {
167
- var theme = _a.theme;
168
- return theme.spacing.spacingE;
169
- }, function (_a) {
170
- var theme = _a.theme;
171
- return theme.spacing.spacingD;
172
- }, function (_a) {
173
- var scrollVisibleType = _a.scrollVisibleType;
174
- return ({
175
- visible: scrollbarStyle_1.scrollbarStyle,
176
- hidden: scrollbarStyle_1.scrollInvisible
177
- }[scrollVisibleType]);
178
- });
179
- var S_Footer = styled_components_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n border-top: 1px solid ", ";\n box-sizing: border-box;\n display: flex;\n justify-content: space-between;\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n"], ["\n border-top: 1px solid ", ";\n box-sizing: border-box;\n display: flex;\n justify-content: space-between;\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n"])), function (_a) {
180
- var theme = _a.theme;
181
- return theme.ui_cpnt_modal_border;
182
- }, function (_a) {
183
- var theme = _a.theme;
184
- return theme.spacing.spacingD;
185
- }, function (_a) {
186
- var theme = _a.theme;
187
- return theme.spacing.spacingE;
188
- }, function (_a) {
189
- var theme = _a.theme;
190
- return theme.spacing.spacingE;
191
- }, function (_a) {
192
- var theme = _a.theme;
193
- return theme.spacing.spacingD;
194
- });
195
- var S_Left = styled_components_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n margin-right: ", ";\n"], ["\n margin-right: ", ";\n"])), function (_a) {
196
- var theme = _a.theme;
197
- return theme.spacing.spacingB;
198
- });
199
- var S_Btn2Wrapper = styled_components_1.default.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n margin-right: ", ";\n"], ["\n margin-right: ", ";\n"])), function (_a) {
200
- var theme = _a.theme;
201
- return theme.spacing.spacingB;
202
- });
203
- var S_Right = styled_components_1.default.div(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n display: flex;\n"], ["\n display: flex;\n"])));
204
- var S_LanguageField = styled_components_1.default.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n width: 100%;\n"], ["\n width: 100%;\n"])));
205
- exports.default = MultilingualModal;
206
- var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9;
@@ -1 +0,0 @@
1
- export { default } from './MultilingualModal';