@ehfuse/forma 1.3.5 → 1.4.1
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/LICENSE +0 -21
- package/README.md +90 -35
- package/dist/core/FieldStore.d.ts +4 -0
- package/dist/core/FieldStore.d.ts.map +1 -1
- package/dist/core/FieldStore.js +95 -2
- package/dist/core/FieldStore.js.map +1 -1
- package/dist/esm/core/FieldStore.d.ts +4 -0
- package/dist/esm/core/FieldStore.d.ts.map +1 -1
- package/dist/esm/core/FieldStore.js +95 -2
- package/dist/esm/core/FieldStore.js.map +1 -1
- package/dist/esm/hooks/useForm.d.ts +4 -19
- package/dist/esm/hooks/useForm.d.ts.map +1 -1
- package/dist/esm/hooks/useForm.js +7 -19
- package/dist/esm/hooks/useForm.js.map +1 -1
- package/dist/esm/hooks/useFormaState.js +3 -2
- package/dist/esm/hooks/useFormaState.js.map +1 -1
- package/dist/esm/hooks/useGlobalFormaState.d.ts +105 -0
- package/dist/esm/hooks/useGlobalFormaState.d.ts.map +1 -0
- package/dist/esm/hooks/useGlobalFormaState.js +120 -0
- package/dist/esm/hooks/useGlobalFormaState.js.map +1 -0
- package/dist/esm/index.d.ts +3 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/form.d.ts +15 -0
- package/dist/esm/types/form.d.ts.map +1 -1
- package/dist/esm/types/globalForm.d.ts +21 -0
- package/dist/esm/types/globalForm.d.ts.map +1 -1
- package/dist/esm/types/globalForm.js.map +1 -1
- package/dist/esm/utils/environment.d.ts +41 -0
- package/dist/esm/utils/environment.d.ts.map +1 -0
- package/dist/esm/utils/environment.js +78 -0
- package/dist/esm/utils/environment.js.map +1 -0
- package/dist/esm/utils/index.d.ts +1 -0
- package/dist/esm/utils/index.d.ts.map +1 -1
- package/dist/esm/utils/index.js +1 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/hooks/useForm.d.ts +4 -19
- package/dist/hooks/useForm.d.ts.map +1 -1
- package/dist/hooks/useForm.js +7 -19
- package/dist/hooks/useForm.js.map +1 -1
- package/dist/hooks/useFormaState.js +3 -2
- package/dist/hooks/useFormaState.js.map +1 -1
- package/dist/hooks/useGlobalFormaState.d.ts +105 -0
- package/dist/hooks/useGlobalFormaState.d.ts.map +1 -0
- package/dist/hooks/useGlobalFormaState.js +123 -0
- package/dist/hooks/useGlobalFormaState.js.map +1 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -1
- package/dist/index.js.map +1 -1
- package/dist/types/form.d.ts +15 -0
- package/dist/types/form.d.ts.map +1 -1
- package/dist/types/globalForm.d.ts +21 -0
- package/dist/types/globalForm.d.ts.map +1 -1
- package/dist/types/globalForm.js.map +1 -1
- package/dist/utils/environment.d.ts +41 -0
- package/dist/utils/environment.d.ts.map +1 -0
- package/dist/utils/environment.js +84 -0
- package/dist/utils/environment.js.map +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +6 -1
- package/dist/utils/index.js.map +1 -1
- package/package.json +4 -2
package/LICENSE
CHANGED
|
@@ -19,24 +19,3 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
|
19
19
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
20
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
21
|
SOFTWARE.
|
|
22
|
-
|
|
23
|
-
---
|
|
24
|
-
|
|
25
|
-
MIT 라이선스
|
|
26
|
-
|
|
27
|
-
Copyright (c) 2025 김영진 (ehfuse@gmail.com)
|
|
28
|
-
|
|
29
|
-
이 소프트웨어와 관련 문서 파일(이하 "소프트웨어")의 사본을 얻는 모든 사람에게
|
|
30
|
-
무료로 허가를 부여합니다. 이 허가에는 소프트웨어를 제한 없이 다루는 권리가
|
|
31
|
-
포함되며, 여기에는 사용, 복사, 수정, 병합, 게시, 배포, 서브라이선스 및/또는
|
|
32
|
-
소프트웨어 사본의 판매 권리와 소프트웨어가 제공된 사람들에게 그렇게 할 수 있는
|
|
33
|
-
권한을 부여하는 권리가 포함됩니다. 단, 다음 조건을 따라야 합니다:
|
|
34
|
-
|
|
35
|
-
위의 저작권 고지와 이 허가 고지는 소프트웨어의 모든 사본 또는 상당 부분에
|
|
36
|
-
포함되어야 합니다.
|
|
37
|
-
|
|
38
|
-
소프트웨어는 "있는 그대로" 제공되며, 상품성, 특정 목적에의 적합성 및
|
|
39
|
-
비침해에 대한 보증을 포함하되 이에 국한되지 않는 명시적 또는 묵시적 보증 없이
|
|
40
|
-
제공됩니다. 어떠한 경우에도 작성자 또는 저작권 보유자는 계약, 불법 행위 또는
|
|
41
|
-
기타 행위에서 발생하거나, 소프트웨어나 소프트웨어의 사용 또는 기타 거래와
|
|
42
|
-
관련하여 발생하는 청구, 손해 또는 기타 책임에 대해 책임지지 않습니다.
|
package/README.md
CHANGED
|
@@ -1,34 +1,42 @@
|
|
|
1
|
-
<!-- slide -->
|
|
2
|
-
|
|
3
1
|
# Forma
|
|
4
2
|
|
|
5
|
-
**
|
|
6
|
-
|
|
3
|
+
**High-performance and developer-friendly React form state management library**
|
|
4
|
+
고성능이며 개발자 친화적인 React 폼 상태 관리 라이브러리
|
|
5
|
+
|
|
6
|
+
[](https://www.npmjs.com/package/@ehfuse/forma)
|
|
7
|
+
[](https://www.npmjs.com/package/@ehfuse/forma)
|
|
8
|
+
[](https://github.com/ehfuse/forma/blob/main/LICENSE)
|
|
9
|
+
|
|
10
|
+
Forma는 React 애플리케이션에서 폼과 상태를 **간편하면서도 강력하게** 관리할 수 있는 고성능 라이브러리입니다. **Zero-Config로 바로 시작**할 수 있으며, 개별 필드 구독을 통한 **선택적 리렌더링**으로 최적의 성능을 제공합니다. 복잡한 설정 없이도 **글로벌 폼 상태 공유**, **Dot Notation 중첩 객체 접근**, **MUI 완전 호환** 등 프로덕션 레벨의 고급 기능들을 손쉽게 사용할 수 있습니다.
|
|
11
|
+
|
|
12
|
+
_Forma is a high-performance library that makes form and state management in React applications **simple yet powerful**. **Start immediately with Zero-Config**, and achieve optimal performance through **selective re-rendering** via individual field subscriptions. Easily access production-level advanced features like **global form state sharing**, **Dot Notation nested object access**, and **full MUI compatibility** without complex setup._
|
|
7
13
|
|
|
8
14
|
## 📚 Documentation | 문서
|
|
9
15
|
|
|
10
|
-
### 한국어
|
|
16
|
+
### 한국어 (Korean)
|
|
11
17
|
|
|
12
|
-
- 🚀 **[시작 가이드](
|
|
13
|
-
- 📖 **[완전한 문서](
|
|
14
|
-
- 📋 **[API 레퍼런스](
|
|
15
|
-
- ⚡ **[성능 최적화 가이드](
|
|
16
|
-
- 🏠 **[GitHub](https://github.com/ehfuse/forma)**
|
|
18
|
+
- 🚀 **[시작 가이드](https://github.com/ehfuse/forma/blob/main/docs/getting-started-ko.md)** - 단계별 튜토리얼과 예제
|
|
19
|
+
- 📖 **[완전한 문서](https://github.com/ehfuse/forma/blob/main/docs/README-ko.md)** - API 레퍼런스, 사용 사례, 고급 기능
|
|
20
|
+
- 📋 **[API 레퍼런스](https://github.com/ehfuse/forma/blob/main/docs/API-ko.md)** - 모든 메서드, 타입, 마이그레이션 가이드
|
|
21
|
+
- ⚡ **[성능 최적화 가이드](https://github.com/ehfuse/forma/blob/main/docs/best-practices-ko.md)** - 최고 성능을 위한 모범 사례
|
|
17
22
|
|
|
18
23
|
### English
|
|
19
24
|
|
|
20
|
-
- 🚀 **[Getting Started Guide](
|
|
21
|
-
- 📖 **[Complete Documentation](
|
|
22
|
-
- 📋 **[API Reference](
|
|
23
|
-
- ⚡ **[Performance Optimization Guide](
|
|
24
|
-
- 🏠 **[GitHub](https://github.com/ehfuse/forma)**
|
|
25
|
+
- 🚀 **[Getting Started Guide](https://github.com/ehfuse/forma/blob/main/docs/getting-started-en.md)** - Step-by-step tutorial and examples
|
|
26
|
+
- 📖 **[Complete Documentation](https://github.com/ehfuse/forma/blob/main/docs/README-en.md)** - API reference, use cases, advanced features
|
|
27
|
+
- 📋 **[API Reference](https://github.com/ehfuse/forma/blob/main/docs/API-en.md)** - All methods, types, migration guide
|
|
28
|
+
- ⚡ **[Performance Optimization Guide](https://github.com/ehfuse/forma/blob/main/docs/best-practices-en.md)** - Best practices for optimal performance
|
|
25
29
|
|
|
26
|
-
|
|
30
|
+
### Links | 링크
|
|
27
31
|
|
|
28
|
-
|
|
32
|
+
- 🏠 **[GitHub Repository](https://github.com/ehfuse/forma)**
|
|
33
|
+
- 📦 **[NPM Package](https://www.npmjs.com/package/@ehfuse/forma)**
|
|
34
|
+
|
|
35
|
+
---
|
|
29
36
|
|
|
30
37
|
## 🚀 주요 특징 | Key Features
|
|
31
38
|
|
|
39
|
+
- 🎯 **완전한 Zero-Config** | **Complete Zero-Config**: 설정 없이 바로 사용 가능한 개발 경험
|
|
32
40
|
- ✅ **개별 필드 구독** | **Individual Field Subscription**: 필드별 선택적 리렌더링으로 최적화된 성능
|
|
33
41
|
- ✅ **범용 상태 관리** | **General State Management**: `useFormaState`로 폼 외 일반 상태도 효율적 관리
|
|
34
42
|
- ✅ **Dot Notation 최적화** | **Dot Notation Optimization**: `user.profile.name` 형태의 중첩 객체 접근
|
|
@@ -38,6 +46,8 @@ _Forma is a high-performance library for efficiently managing form state in Reac
|
|
|
38
46
|
- ✅ **TypeScript 완전 지원** | **Full TypeScript Support**: 강력한 타입 안전성
|
|
39
47
|
- ✅ **React 19 최적화** | **React 19 Optimized**: 최신 React 기능 활용
|
|
40
48
|
|
|
49
|
+
---
|
|
50
|
+
|
|
41
51
|
## 📦 설치 | Installation
|
|
42
52
|
|
|
43
53
|
```bash
|
|
@@ -48,8 +58,59 @@ npm install @ehfuse/forma
|
|
|
48
58
|
yarn add @ehfuse/forma
|
|
49
59
|
```
|
|
50
60
|
|
|
61
|
+
---
|
|
62
|
+
|
|
51
63
|
## 🎯 빠른 시작 | Quick Start
|
|
52
64
|
|
|
65
|
+
### 💫 Zero-Config 사용법 | Zero-Config Usage
|
|
66
|
+
|
|
67
|
+
**설정 없이 바로 시작하세요! | Start immediately without any configuration!**
|
|
68
|
+
|
|
69
|
+
```tsx
|
|
70
|
+
import { useForm, useFormaState } from "@ehfuse/forma";
|
|
71
|
+
|
|
72
|
+
function ZeroConfigForm() {
|
|
73
|
+
// Zero-Config: 매개변수 없이 바로 사용
|
|
74
|
+
const form = useForm<{ name: string; email: string }>();
|
|
75
|
+
|
|
76
|
+
return (
|
|
77
|
+
<div>
|
|
78
|
+
<input
|
|
79
|
+
placeholder="Name"
|
|
80
|
+
value={form.useFormValue("name")}
|
|
81
|
+
onChange={(e) => form.setFormValue("name", e.target.value)}
|
|
82
|
+
/>
|
|
83
|
+
<input
|
|
84
|
+
placeholder="Email"
|
|
85
|
+
value={form.useFormValue("email")}
|
|
86
|
+
onChange={(e) => form.setFormValue("email", e.target.value)}
|
|
87
|
+
/>
|
|
88
|
+
<button onClick={() => console.log(form.getFormValues())}>
|
|
89
|
+
Log Values
|
|
90
|
+
</button>
|
|
91
|
+
</div>
|
|
92
|
+
);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
function ZeroConfigState() {
|
|
96
|
+
// Zero-Config: 일반 상태도 설정 없이 사용
|
|
97
|
+
const state = useFormaState<{ count: number }>();
|
|
98
|
+
|
|
99
|
+
return (
|
|
100
|
+
<div>
|
|
101
|
+
<p>Count: {state.useValue("count") || 0}</p>
|
|
102
|
+
<button
|
|
103
|
+
onClick={() =>
|
|
104
|
+
state.setValue("count", (state.getValue("count") || 0) + 1)
|
|
105
|
+
}
|
|
106
|
+
>
|
|
107
|
+
Increment
|
|
108
|
+
</button>
|
|
109
|
+
</div>
|
|
110
|
+
);
|
|
111
|
+
}
|
|
112
|
+
```
|
|
113
|
+
|
|
53
114
|
### 폼 상태 관리 | Form State Management
|
|
54
115
|
|
|
55
116
|
```tsx
|
|
@@ -126,31 +187,19 @@ function UserDashboard() {
|
|
|
126
187
|
}
|
|
127
188
|
```
|
|
128
189
|
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
### 한국어 | Korean
|
|
132
|
-
|
|
133
|
-
- 📖 **[완전한 문서](./docs/README-ko.md)** - API 레퍼런스, 사용 사례, 고급 기능
|
|
134
|
-
- 🌐 **[useGlobalForm 사용법](./docs/useGlobalForm-guide-ko.md)** - 글로벌 폼 상태 관리 가이드
|
|
135
|
-
- ⚡ **[성능 최적화 가이드](./docs/best-practices-ko.md)** - 최고 성능을 위한 모범 사례
|
|
136
|
-
|
|
137
|
-
### English
|
|
138
|
-
|
|
139
|
-
- 📖 **[Complete Documentation](./docs/README-en.md)** - API reference, use cases, advanced features
|
|
140
|
-
- 🌐 **[useGlobalForm Usage Guide](./docs/useGlobalForm-guide-en.md)** - Global form state management guide
|
|
141
|
-
- ⚡ **[Performance Optimization Guide](./docs/best-practices-en.md)** - Best practices for optimal performance
|
|
190
|
+
---
|
|
142
191
|
|
|
143
192
|
## 🎯 When to choose Forma?
|
|
144
193
|
|
|
145
|
-
|
|
194
|
+
**언제 Forma를 선택해야 할까요?**
|
|
146
195
|
|
|
147
196
|
Forma is **specialized for form state management** and shines in specific scenarios. Here's when Forma is the perfect choice for your project.
|
|
148
197
|
|
|
149
|
-
|
|
198
|
+
_Forma는 **폼 상태 관리에 특화**된 라이브러리로 특정 시나리오에서 빛을 발합니다. 다음은 Forma가 프로젝트에 완벽한 선택이 되는 경우입니다._
|
|
150
199
|
|
|
151
200
|
### ✨ Perfect for these use cases:
|
|
152
201
|
|
|
153
|
-
|
|
202
|
+
**이런 경우에 완벽합니다:**
|
|
154
203
|
|
|
155
204
|
**🎨 MUI (Material-UI) Projects**
|
|
156
205
|
**MUI (Material-UI) 프로젝트**
|
|
@@ -202,6 +251,8 @@ Forma는 **폼 상태 관리에 특화**된 라이브러리로 특정 시나리
|
|
|
202
251
|
- Dynamic validation rules
|
|
203
252
|
동적 검증 규칙
|
|
204
253
|
|
|
254
|
+
---
|
|
255
|
+
|
|
205
256
|
## 🎯 핵심 성능 원칙 | Core Performance Principles
|
|
206
257
|
|
|
207
258
|
```tsx
|
|
@@ -212,13 +263,17 @@ const userEmail = form.useFormValue("user.email");
|
|
|
212
263
|
// user.name 변경 시 → userName 필드만 리렌더링 | Only userName field re-renders
|
|
213
264
|
```
|
|
214
265
|
|
|
215
|
-
**[성능 최적화 상세 가이드 보기 | View Detailed Performance Guide](
|
|
266
|
+
**[성능 최적화 상세 가이드 보기 | View Detailed Performance Guide](https://github.com/ehfuse/forma/blob/main/docs/best-practices-ko.md)**
|
|
267
|
+
|
|
268
|
+
---
|
|
216
269
|
|
|
217
270
|
## 🌐 링크 | Links
|
|
218
271
|
|
|
219
272
|
- **📦 NPM**: [https://www.npmjs.com/package/@ehfuse/forma](https://www.npmjs.com/package/@ehfuse/forma)
|
|
220
273
|
- **🐙 GitHub**: [https://github.com/ehfuse/forma](https://github.com/ehfuse/forma)
|
|
221
|
-
- **📄 라이선스 | License**: [MIT](
|
|
274
|
+
- **📄 라이선스 | License**: [MIT](https://github.com/ehfuse/forma/blob/main/LICENSE)
|
|
275
|
+
|
|
276
|
+
---
|
|
222
277
|
|
|
223
278
|
## 📞 연락처 | Contact
|
|
224
279
|
|
|
@@ -88,6 +88,10 @@ export declare class FieldStore<T extends Record<string, any>> {
|
|
|
88
88
|
* @returns 초기값에서 변경되었는지 여부 / Whether changed from initial values
|
|
89
89
|
*/
|
|
90
90
|
isModified(): boolean;
|
|
91
|
+
/**
|
|
92
|
+
* 객체에 비어있지 않은 값이 있는지 확인 / Check if object has non-empty values
|
|
93
|
+
*/
|
|
94
|
+
private hasNonEmptyValues;
|
|
91
95
|
/**
|
|
92
96
|
* 특정 필드가 존재하는지 확인 / Check if a specific field exists
|
|
93
97
|
* @param path 필드 경로 (dot notation 지원) / Field path (supports dot notation)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldStore.d.ts","sourceRoot":"","sources":["../../core/FieldStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAIH;;;;;;GAMG;AACH,qBAAa,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IACjD,OAAO,CAAC,MAAM,CACA;IACd,OAAO,CAAC,oBAAoB,CAA2C;IACvE,OAAO,CAAC,aAAa,CAAI;IACzB,OAAO,CAAC,eAAe,CAAyB;gBAEpC,aAAa,EAAE,CAAC;IAW5B;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,MAAM,GAAG,GAAG;IAc1C;;;;;;OAMG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI;
|
|
1
|
+
{"version":3,"file":"FieldStore.d.ts","sourceRoot":"","sources":["../../core/FieldStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAIH;;;;;;GAMG;AACH,qBAAa,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IACjD,OAAO,CAAC,MAAM,CACA;IACd,OAAO,CAAC,oBAAoB,CAA2C;IACvE,OAAO,CAAC,aAAa,CAAI;IACzB,OAAO,CAAC,eAAe,CAAyB;gBAEpC,aAAa,EAAE,CAAC;IAW5B;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,MAAM,GAAG,GAAG;IAc1C;;;;;;OAMG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI;IA+C3D;;;;;OAKG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,IAAI;IAOpC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,KAAK,EAAE,GAAG;IAoHhD;;;OAGG;IACH,SAAS,IAAI,CAAC;IAUd;;;OAGG;IACH,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IAM/B;;;OAGG;IACH,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;IAyBpC;;;OAGG;IACH,UAAU,IAAI,OAAO;IAkBrB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAuBzB;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAU/B;;;OAGG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAyC/B;;;;OAIG;IACH,cAAc,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI;IAYzD;;OAEG;IACH,KAAK;IA6DL;;OAEG;IACH,OAAO;CAKV"}
|
package/dist/core/FieldStore.js
CHANGED
|
@@ -85,6 +85,13 @@ class FieldStore {
|
|
|
85
85
|
this.dotNotationListeners.set(fieldNameStr, listeners);
|
|
86
86
|
}
|
|
87
87
|
listeners.add(listener);
|
|
88
|
+
// dot notation 필드가 구독될 때 기본값 생성 / Create default value when dot notation field is subscribed
|
|
89
|
+
const currentValue = this.getValue(fieldNameStr);
|
|
90
|
+
if (currentValue === undefined) {
|
|
91
|
+
// 기본값으로 빈 문자열 또는 null 설정 (타입에 따라 결정)
|
|
92
|
+
// Set default value as empty string or null (determined by type)
|
|
93
|
+
this.setValue(fieldNameStr, null);
|
|
94
|
+
}
|
|
88
95
|
return () => {
|
|
89
96
|
const listeners = this.dotNotationListeners.get(fieldNameStr);
|
|
90
97
|
if (listeners) {
|
|
@@ -100,7 +107,7 @@ class FieldStore {
|
|
|
100
107
|
if (!field) {
|
|
101
108
|
// 필드가 없으면 생성 / Create field if not exists
|
|
102
109
|
field = {
|
|
103
|
-
value: undefined
|
|
110
|
+
value: null, // undefined 대신 null로 초기화
|
|
104
111
|
listeners: new Set(),
|
|
105
112
|
};
|
|
106
113
|
this.fields.set(fieldName, field);
|
|
@@ -274,8 +281,43 @@ class FieldStore {
|
|
|
274
281
|
*/
|
|
275
282
|
isModified() {
|
|
276
283
|
const currentValues = this.getValues();
|
|
284
|
+
// Pure Zero-Config의 경우 초기값이 빈 객체일 수 있음
|
|
285
|
+
// In Pure Zero-Config, initial values might be an empty object
|
|
286
|
+
const isInitialEmpty = Object.keys(this.initialValues).length === 0;
|
|
287
|
+
if (isInitialEmpty) {
|
|
288
|
+
// 초기값이 빈 객체인 경우, 현재값에 의미있는 데이터가 있는지 확인
|
|
289
|
+
// If initial values are empty, check if current values have meaningful data
|
|
290
|
+
return this.hasNonEmptyValues(currentValues);
|
|
291
|
+
}
|
|
277
292
|
return (JSON.stringify(currentValues) !== JSON.stringify(this.initialValues));
|
|
278
293
|
}
|
|
294
|
+
/**
|
|
295
|
+
* 객체에 비어있지 않은 값이 있는지 확인 / Check if object has non-empty values
|
|
296
|
+
*/
|
|
297
|
+
hasNonEmptyValues(obj) {
|
|
298
|
+
for (const key in obj) {
|
|
299
|
+
const value = obj[key];
|
|
300
|
+
if (value !== undefined &&
|
|
301
|
+
value !== null &&
|
|
302
|
+
value !== "" &&
|
|
303
|
+
value !== 0) {
|
|
304
|
+
if (typeof value === "object" && value !== null) {
|
|
305
|
+
if (Array.isArray(value)) {
|
|
306
|
+
if (value.length > 0)
|
|
307
|
+
return true;
|
|
308
|
+
}
|
|
309
|
+
else {
|
|
310
|
+
if (this.hasNonEmptyValues(value))
|
|
311
|
+
return true;
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
else {
|
|
315
|
+
return true;
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
return false;
|
|
320
|
+
}
|
|
279
321
|
/**
|
|
280
322
|
* 특정 필드가 존재하는지 확인 / Check if a specific field exists
|
|
281
323
|
* @param path 필드 경로 (dot notation 지원) / Field path (supports dot notation)
|
|
@@ -350,7 +392,58 @@ class FieldStore {
|
|
|
350
392
|
* 초기값으로 리셋 / Reset to initial values
|
|
351
393
|
*/
|
|
352
394
|
reset() {
|
|
353
|
-
|
|
395
|
+
// Pure Zero-Config 모드인지 확인 (초기값이 빈 객체)
|
|
396
|
+
const isPureZeroConfig = Object.keys(this.initialValues).length === 0;
|
|
397
|
+
if (isPureZeroConfig) {
|
|
398
|
+
// Pure Zero-Config 모드: 먼저 구독된 dot notation 필드들의 기본값 설정
|
|
399
|
+
this.dotNotationListeners.forEach((listeners, path) => {
|
|
400
|
+
if (listeners.size > 0) {
|
|
401
|
+
// 구독자가 있는 dot notation 필드는 빈 문자열로 설정
|
|
402
|
+
this.setValue(path, "");
|
|
403
|
+
}
|
|
404
|
+
});
|
|
405
|
+
// 일반 필드들 중에서 dot notation과 충돌하지 않는 것들만 기본값으로 설정
|
|
406
|
+
this.fields.forEach((field, key) => {
|
|
407
|
+
const keyStr = String(key);
|
|
408
|
+
// dot notation 필드의 부모가 아닌 경우에만 null로 설정
|
|
409
|
+
let hasChildDotNotation = false;
|
|
410
|
+
for (const dotPath of this.dotNotationListeners.keys()) {
|
|
411
|
+
if (dotPath.startsWith(keyStr + ".")) {
|
|
412
|
+
hasChildDotNotation = true;
|
|
413
|
+
break;
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
if (!hasChildDotNotation) {
|
|
417
|
+
field.value = "";
|
|
418
|
+
}
|
|
419
|
+
});
|
|
420
|
+
}
|
|
421
|
+
else {
|
|
422
|
+
// 일반 모드: 초기값으로 재설정
|
|
423
|
+
this.fields.forEach((field, key) => {
|
|
424
|
+
const initialValue = this.initialValues[key];
|
|
425
|
+
field.value = initialValue;
|
|
426
|
+
});
|
|
427
|
+
// 누락된 초기값 필드들 추가
|
|
428
|
+
Object.keys(this.initialValues).forEach((key) => {
|
|
429
|
+
if (!this.fields.has(key)) {
|
|
430
|
+
this.fields.set(key, {
|
|
431
|
+
value: this.initialValues[key],
|
|
432
|
+
listeners: new Set(),
|
|
433
|
+
});
|
|
434
|
+
}
|
|
435
|
+
});
|
|
436
|
+
}
|
|
437
|
+
// 모든 필드 리스너들에게 알림
|
|
438
|
+
this.fields.forEach((field) => {
|
|
439
|
+
field.listeners.forEach((listener) => listener());
|
|
440
|
+
});
|
|
441
|
+
// dot notation 리스너들에게도 알림
|
|
442
|
+
this.dotNotationListeners.forEach((listeners) => {
|
|
443
|
+
listeners.forEach((listener) => listener());
|
|
444
|
+
});
|
|
445
|
+
// 글로벌 리스너들에게도 알림
|
|
446
|
+
this.globalListeners.forEach((listener) => listener());
|
|
354
447
|
}
|
|
355
448
|
/**
|
|
356
449
|
* 리소스 정리 / Clean up resources
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldStore.js","sourceRoot":"","sources":["../../core/FieldStore.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FieldStore.js","sourceRoot":"","sources":["../../core/FieldStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -88,6 +88,10 @@ export declare class FieldStore<T extends Record<string, any>> {
|
|
|
88
88
|
* @returns 초기값에서 변경되었는지 여부 / Whether changed from initial values
|
|
89
89
|
*/
|
|
90
90
|
isModified(): boolean;
|
|
91
|
+
/**
|
|
92
|
+
* 객체에 비어있지 않은 값이 있는지 확인 / Check if object has non-empty values
|
|
93
|
+
*/
|
|
94
|
+
private hasNonEmptyValues;
|
|
91
95
|
/**
|
|
92
96
|
* 특정 필드가 존재하는지 확인 / Check if a specific field exists
|
|
93
97
|
* @param path 필드 경로 (dot notation 지원) / Field path (supports dot notation)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldStore.d.ts","sourceRoot":"","sources":["../../../core/FieldStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAIH;;;;;;GAMG;AACH,qBAAa,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IACjD,OAAO,CAAC,MAAM,CACA;IACd,OAAO,CAAC,oBAAoB,CAA2C;IACvE,OAAO,CAAC,aAAa,CAAI;IACzB,OAAO,CAAC,eAAe,CAAyB;gBAEpC,aAAa,EAAE,CAAC;IAW5B;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,MAAM,GAAG,GAAG;IAc1C;;;;;;OAMG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI;
|
|
1
|
+
{"version":3,"file":"FieldStore.d.ts","sourceRoot":"","sources":["../../../core/FieldStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAIH;;;;;;GAMG;AACH,qBAAa,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IACjD,OAAO,CAAC,MAAM,CACA;IACd,OAAO,CAAC,oBAAoB,CAA2C;IACvE,OAAO,CAAC,aAAa,CAAI;IACzB,OAAO,CAAC,eAAe,CAAyB;gBAEpC,aAAa,EAAE,CAAC;IAW5B;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,MAAM,GAAG,GAAG;IAc1C;;;;;;OAMG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI;IA+C3D;;;;;OAKG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,IAAI;IAOpC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,KAAK,EAAE,GAAG;IAoHhD;;;OAGG;IACH,SAAS,IAAI,CAAC;IAUd;;;OAGG;IACH,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IAM/B;;;OAGG;IACH,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;IAyBpC;;;OAGG;IACH,UAAU,IAAI,OAAO;IAkBrB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAuBzB;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAU/B;;;OAGG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAyC/B;;;;OAIG;IACH,cAAc,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI;IAYzD;;OAEG;IACH,KAAK;IA6DL;;OAEG;IACH,OAAO;CAKV"}
|
|
@@ -82,6 +82,13 @@ export class FieldStore {
|
|
|
82
82
|
this.dotNotationListeners.set(fieldNameStr, listeners);
|
|
83
83
|
}
|
|
84
84
|
listeners.add(listener);
|
|
85
|
+
// dot notation 필드가 구독될 때 기본값 생성 / Create default value when dot notation field is subscribed
|
|
86
|
+
const currentValue = this.getValue(fieldNameStr);
|
|
87
|
+
if (currentValue === undefined) {
|
|
88
|
+
// 기본값으로 빈 문자열 또는 null 설정 (타입에 따라 결정)
|
|
89
|
+
// Set default value as empty string or null (determined by type)
|
|
90
|
+
this.setValue(fieldNameStr, null);
|
|
91
|
+
}
|
|
85
92
|
return () => {
|
|
86
93
|
const listeners = this.dotNotationListeners.get(fieldNameStr);
|
|
87
94
|
if (listeners) {
|
|
@@ -97,7 +104,7 @@ export class FieldStore {
|
|
|
97
104
|
if (!field) {
|
|
98
105
|
// 필드가 없으면 생성 / Create field if not exists
|
|
99
106
|
field = {
|
|
100
|
-
value: undefined
|
|
107
|
+
value: null, // undefined 대신 null로 초기화
|
|
101
108
|
listeners: new Set(),
|
|
102
109
|
};
|
|
103
110
|
this.fields.set(fieldName, field);
|
|
@@ -271,8 +278,43 @@ export class FieldStore {
|
|
|
271
278
|
*/
|
|
272
279
|
isModified() {
|
|
273
280
|
const currentValues = this.getValues();
|
|
281
|
+
// Pure Zero-Config의 경우 초기값이 빈 객체일 수 있음
|
|
282
|
+
// In Pure Zero-Config, initial values might be an empty object
|
|
283
|
+
const isInitialEmpty = Object.keys(this.initialValues).length === 0;
|
|
284
|
+
if (isInitialEmpty) {
|
|
285
|
+
// 초기값이 빈 객체인 경우, 현재값에 의미있는 데이터가 있는지 확인
|
|
286
|
+
// If initial values are empty, check if current values have meaningful data
|
|
287
|
+
return this.hasNonEmptyValues(currentValues);
|
|
288
|
+
}
|
|
274
289
|
return (JSON.stringify(currentValues) !== JSON.stringify(this.initialValues));
|
|
275
290
|
}
|
|
291
|
+
/**
|
|
292
|
+
* 객체에 비어있지 않은 값이 있는지 확인 / Check if object has non-empty values
|
|
293
|
+
*/
|
|
294
|
+
hasNonEmptyValues(obj) {
|
|
295
|
+
for (const key in obj) {
|
|
296
|
+
const value = obj[key];
|
|
297
|
+
if (value !== undefined &&
|
|
298
|
+
value !== null &&
|
|
299
|
+
value !== "" &&
|
|
300
|
+
value !== 0) {
|
|
301
|
+
if (typeof value === "object" && value !== null) {
|
|
302
|
+
if (Array.isArray(value)) {
|
|
303
|
+
if (value.length > 0)
|
|
304
|
+
return true;
|
|
305
|
+
}
|
|
306
|
+
else {
|
|
307
|
+
if (this.hasNonEmptyValues(value))
|
|
308
|
+
return true;
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
else {
|
|
312
|
+
return true;
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
return false;
|
|
317
|
+
}
|
|
276
318
|
/**
|
|
277
319
|
* 특정 필드가 존재하는지 확인 / Check if a specific field exists
|
|
278
320
|
* @param path 필드 경로 (dot notation 지원) / Field path (supports dot notation)
|
|
@@ -347,7 +389,58 @@ export class FieldStore {
|
|
|
347
389
|
* 초기값으로 리셋 / Reset to initial values
|
|
348
390
|
*/
|
|
349
391
|
reset() {
|
|
350
|
-
|
|
392
|
+
// Pure Zero-Config 모드인지 확인 (초기값이 빈 객체)
|
|
393
|
+
const isPureZeroConfig = Object.keys(this.initialValues).length === 0;
|
|
394
|
+
if (isPureZeroConfig) {
|
|
395
|
+
// Pure Zero-Config 모드: 먼저 구독된 dot notation 필드들의 기본값 설정
|
|
396
|
+
this.dotNotationListeners.forEach((listeners, path) => {
|
|
397
|
+
if (listeners.size > 0) {
|
|
398
|
+
// 구독자가 있는 dot notation 필드는 빈 문자열로 설정
|
|
399
|
+
this.setValue(path, "");
|
|
400
|
+
}
|
|
401
|
+
});
|
|
402
|
+
// 일반 필드들 중에서 dot notation과 충돌하지 않는 것들만 기본값으로 설정
|
|
403
|
+
this.fields.forEach((field, key) => {
|
|
404
|
+
const keyStr = String(key);
|
|
405
|
+
// dot notation 필드의 부모가 아닌 경우에만 null로 설정
|
|
406
|
+
let hasChildDotNotation = false;
|
|
407
|
+
for (const dotPath of this.dotNotationListeners.keys()) {
|
|
408
|
+
if (dotPath.startsWith(keyStr + ".")) {
|
|
409
|
+
hasChildDotNotation = true;
|
|
410
|
+
break;
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
if (!hasChildDotNotation) {
|
|
414
|
+
field.value = "";
|
|
415
|
+
}
|
|
416
|
+
});
|
|
417
|
+
}
|
|
418
|
+
else {
|
|
419
|
+
// 일반 모드: 초기값으로 재설정
|
|
420
|
+
this.fields.forEach((field, key) => {
|
|
421
|
+
const initialValue = this.initialValues[key];
|
|
422
|
+
field.value = initialValue;
|
|
423
|
+
});
|
|
424
|
+
// 누락된 초기값 필드들 추가
|
|
425
|
+
Object.keys(this.initialValues).forEach((key) => {
|
|
426
|
+
if (!this.fields.has(key)) {
|
|
427
|
+
this.fields.set(key, {
|
|
428
|
+
value: this.initialValues[key],
|
|
429
|
+
listeners: new Set(),
|
|
430
|
+
});
|
|
431
|
+
}
|
|
432
|
+
});
|
|
433
|
+
}
|
|
434
|
+
// 모든 필드 리스너들에게 알림
|
|
435
|
+
this.fields.forEach((field) => {
|
|
436
|
+
field.listeners.forEach((listener) => listener());
|
|
437
|
+
});
|
|
438
|
+
// dot notation 리스너들에게도 알림
|
|
439
|
+
this.dotNotationListeners.forEach((listeners) => {
|
|
440
|
+
listeners.forEach((listener) => listener());
|
|
441
|
+
});
|
|
442
|
+
// 글로벌 리스너들에게도 알림
|
|
443
|
+
this.globalListeners.forEach((listener) => listener());
|
|
351
444
|
}
|
|
352
445
|
/**
|
|
353
446
|
* 리소스 정리 / Clean up resources
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldStore.js","sourceRoot":"","sources":["../../../core/FieldStore.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FieldStore.js","sourceRoot":"","sources":["../../../core/FieldStore.ts"],"names":[],"mappings":"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"}
|