@malib/gear 1.0.0-next.10 → 1.0.0-next.11

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/README.md CHANGED
@@ -39,16 +39,12 @@ pnpm add @malib/gear
39
39
 
40
40
  `GearData` 객체를 생성하는 별도의 기능은 없으며 직접 생성해야 합니다.
41
41
 
42
- 라이브러리 업데이트로 인해 `GearData`의 형태가 변경될 경우 `meta.version` 속성에 반영되며, 기존의 장비를 새로운 버전으로 변환하는 함수가 제공됩니다.
43
-
44
42
  ```ts
45
43
  import { type GearData, type GearType } from '@malib/gear';
46
44
 
47
45
  const data: GearData = {
48
- meta: {
49
- id: 1009876,
50
- version: 1,
51
- },
46
+ version: 2,
47
+ id: 1009876,
52
48
  name: 'Example cap',
53
49
  icon: '1000000',
54
50
  type: GearType.cap,
@@ -58,8 +54,26 @@ const data: GearData = {
58
54
  };
59
55
  ```
60
56
 
57
+ ### Migrating GearData
58
+
59
+ 라이브러리 업데이트로 인해 `GearData`의 형태가 변경될 경우 `version` 속성에 반영되며, `migrate` 함수를 사용해 기존의 데이터를 새로운 버전으로 변환할 수 있습니다. 별도의 데이터 검증은 수행하지 않습니다.
60
+
61
+ ```ts
62
+ import { migrate } from '@malib/gear';
63
+
64
+ const dataV2 = migrate(data, 2);
65
+
66
+ try {
67
+ const invalid = migrate({}, 2);
68
+ } catch (e) {
69
+ console.log(e); // 입력 데이터가 유효하지 않습니다.
70
+ }
71
+ ```
72
+
61
73
  ### Creating ReadonlyGear
62
74
 
75
+ `ReadonlyGear` 및 `Gear`를 생성 시 오직 데이터의 `version` 속성만을 검사합니다.
76
+
63
77
  ```ts
64
78
  import { ReadonlyGear } from '@malib/gear';
65
79