@ihabdevteam/core 0.331.0 → 0.332.0
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/CHANGELOG.md +70 -0
- package/dist/components.cjs.js +33 -33
- package/dist/hooks.cjs.js +1 -1
- package/dist/i18n.cjs.js +1 -1
- package/dist/ihabdevteam-core.cjs.js +38 -38
- package/dist/ihabdevteam-core.d.ts +22 -1
- package/dist/packages/core/src/components/barChartData.d.ts +0 -2
- package/dist/packages/core/src/components/barChartData.js +4 -2
- package/dist/packages/core/src/components/barChartMonthKey.d.ts +39 -15
- package/dist/packages/core/src/components/barChartMonthKey.js +46 -18
- package/dist/packages/core/src/components.d.ts +1 -0
- package/dist/packages/core/src/components.js +3 -0
- package/dist/packages/core/src/version.d.ts +1 -1
- package/dist/packages/core/src/version.js +1 -1
- package/dist/utils.cjs.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,76 @@ All notable changes to this project will be documented in this file.
|
|
|
7
7
|
> 적은 글이라, 지금 이름으로 고쳐 놓으면 그 시절에 그 이름으로 받은 사람이
|
|
8
8
|
> 제 이야기를 못 찾는다.
|
|
9
9
|
|
|
10
|
+
## 0.332.0 — 달 열쇠를 `"2026-10"` 으로 — 자리표와 이름표를 가른다
|
|
11
|
+
|
|
12
|
+
사장님이 바꾸라고 하셨다. 0.329.0 에서 **꼴을 아는 자리를 하나로 모아 둔** 덕에 코어 쪽은
|
|
13
|
+
`barChartMonthKey.ts` 한 파일이면 됐다.
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
달 열쇠 "2026년 10월" → "2026-10"
|
|
17
|
+
주 값 "2026년 10월#2" → "2026-10#2"
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
### 왜 바꾸나 — 한국어처럼 생긴 **자리표**라 이름표와 섞였다
|
|
21
|
+
|
|
22
|
+
0.325.0 의 결함이 바로 그 섞임이었다. 달 드롭다운에 열쇠 글자가 그대로 떴고, **한국어
|
|
23
|
+
화면에서는 그럴듯해 보여** 영어 화면에서만 티가 났다. `"2026-10"` 은 누가 봐도 이름표가
|
|
24
|
+
아니다. 보이는 글은 `yearMonthLabel` 이 Intl 로 짓는다 — 그쪽은 **안 바뀐다.**
|
|
25
|
+
|
|
26
|
+
**달은 두 자리로 채운다**(`2026-01`). 안 채우면 글자 차례가 달 차례와 어긋난다(`2026-10` 이
|
|
27
|
+
`2026-9` 앞에 선다). `parseMonthKey` 는 **안 채운 것도, `2026-13` 도 거절한다** — 받아 주면
|
|
28
|
+
짓는 쪽과 뜯는 쪽이 어긋나도 조용하고, 그 조용함이 바로 열쇠가 안 맞는 결함이다.
|
|
29
|
+
|
|
30
|
+
### 소비자와 **맞춰서** 했다
|
|
31
|
+
|
|
32
|
+
말귀_1 이 먼저 그쪽 자리를 느슨하게 하고, 그 뒤에 코어가 바꿨다. **담아 두는 자리는 양쪽 다
|
|
33
|
+
없다**(`localStorage` 등) — 옛 열쇠가 남아 빈 칸이 되는 길은 없다. 양쪽이 따로 훑어 셌다.
|
|
34
|
+
|
|
35
|
+
> **주 값은 코어가 뜯지 않는다.** `getControlDateRange` 는 `weekRanges.find(o => o.value ===
|
|
36
|
+
> weekRange)` 로 맞춰 보고 구조화된 `year`·`month`·`week` 만 읽는다. 앱이 제 꼴을 써도 된다.
|
|
37
|
+
|
|
38
|
+
### 세는 자리도 함께 — **셈을 두 번 틀렸다**
|
|
39
|
+
|
|
40
|
+
- **소비자 자리를 열일곱이라 셌는데 열하나였다.** 여섯은 **이름표**였다(창 제목·날 이름표).
|
|
41
|
+
`'2026년 9월'` 이라는 글자만 보고 세어, 이 저장소가 늘 경계하던 섞임을 제 셈에서 저질렀다.
|
|
42
|
+
말귀_1 이 바로잡아 주었다.
|
|
43
|
+
- **코어 시험 73 군데를 바꾸며 한 자리를 잘못 바꿨다.** `dateBoundaryFixes0915` 의 한 줄이
|
|
44
|
+
DatePicker 가 **보여 주는** 달 이름표였는데 열쇠인 줄 알고 바꿨다 — 못이 울어 되돌렸다.
|
|
45
|
+
이름표 쪽 파일 셋은 처음부터 손대지 않았다.
|
|
46
|
+
|
|
47
|
+
### 못이 제 몫을 했다
|
|
48
|
+
|
|
49
|
+
`barChartMonthKey` 하나만 고쳤는데 **닻**(`test/monthKeyOneDecision.test.ts`)이 *"주인 파일에
|
|
50
|
+
그 꼴이 없다"* 고 울어, 못의 꼴도 함께 고쳐야 한다는 것을 그 자리에서 말했다.
|
|
51
|
+
|
|
52
|
+
못을 고치며 한 가지를 바꿨다 — 옛 꼴(`…년 …월`)은 글자가 뚜렷해 저장소 전체에서 세도
|
|
53
|
+
헛걸림이 없었는데, 새 꼴은 `${…}-${…}` 라 **저장소에 서른넷이 걸린다**(날짜·전화·아이디…).
|
|
54
|
+
그래서 **짓는 쪽은 막대판 식구 안에서만** 세고, 뜯는 쪽(정규식)은 전체에서 센다. 틀은
|
|
55
|
+
**두 토막으로 끝나는 것**만 집는다 — 안 그러면 같은 식구의 ISO 날짜 한 줄이 헛으로 걸린다
|
|
56
|
+
(실제로 걸렸다).
|
|
57
|
+
|
|
58
|
+
### **내보낸다** — 안 그러면 꼴을 아는 자리가 저장소를 건넌다
|
|
59
|
+
|
|
60
|
+
`monthKeyOf` · `monthKeyOfDate` · `parseMonthKey` · `weekValueOf` 를 공개했다.
|
|
61
|
+
|
|
62
|
+
`buildMonthChartData` 가 돌려주는 꾸러미를 소비자가 **열쇠로 찾아야** 하는데, 꼴을 알 길이
|
|
63
|
+
없으면 제 손으로 짓는다 — 실제로 오늘 소비자 쪽에 `monthKeyShape.ts` 가 생길 뻔했다.
|
|
64
|
+
그러면 꼴을 아는 자리가 **저장소를 건너 둘**이 되고, 이 파일이 막으려던 바로 그 결함이
|
|
65
|
+
더 먼 자리에서, 더 늦게 난다. 짓는 것도 뜯는 것도 코어 것을 쓰게 한다.
|
|
66
|
+
|
|
67
|
+
### 걷은 덫 — 열쇠를 이름표 자리에 넣어 두었다
|
|
68
|
+
|
|
69
|
+
`genMonthOptions` 가 `label: v` 로 **열쇠를 그대로** 이름표에 넣고 있었다. 아무도 안 읽어
|
|
70
|
+
조용했지만, 읽는 날 화면에 자리표가 그대로 뜬다 — 0.325.0 이 그 꼴이었다. 뗐다.
|
|
71
|
+
|
|
72
|
+
### 곁다리 — 시험 하나가 **여유 37ms** 로 서 있었다
|
|
73
|
+
|
|
74
|
+
`dailySelectionHasData` 가 훅의 포기(10초)를 15초 시한으로 기다렸다. 재 보니 실제로는
|
|
75
|
+
**14,963ms** 다 — `40 × 250ms = 10초` 는 **틱 사이 일을 안 센 값**이고, 매 틱의 다시 그림과
|
|
76
|
+
2초마다의 받기 기다림이 얹힌다. 기계가 조금만 바빠도 울었다. 게다가 그 줄의 주석은
|
|
77
|
+
*"시간을 앞당긴다"* 고 적혀 있었는데 **가짜 타이머가 없었다** — 글이 하는 일과 달랐다.
|
|
78
|
+
시한을 넉넉히 주고 **잰 값을 적었다.**
|
|
79
|
+
|
|
10
80
|
## 0.331.0 — (307) 다시 듣기 셋 — 사장님 지적 · 말귀_1 실측
|
|
11
81
|
|
|
12
82
|
### ① 줄을 **가운데**로 맞춘다 — `baseline` 이 아니다
|