@ihabdevteam/core 0.328.0 → 0.329.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 +86 -0
- package/dist/components.cjs.js +182 -182
- package/dist/hooks.cjs.js +1 -1
- package/dist/i18n.cjs.js +1 -1
- package/dist/ihabdevteam-core.cjs.js +187 -187
- package/dist/ihabdevteam-core.d.ts +1 -1
- package/dist/packages/core/src/components/BarChart.js +8 -7
- package/dist/packages/core/src/components/barChartData.js +13 -11
- package/dist/packages/core/src/components/barChartMonthKey.d.ts +27 -0
- package/dist/packages/core/src/components/barChartMonthKey.js +27 -0
- package/dist/packages/core/src/components/barChartTypes.js +4 -3
- package/dist/packages/core/src/components/useBarChartControl.js +2 -1
- 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 +3 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,92 @@ All notable changes to this project will be documented in this file.
|
|
|
7
7
|
> 적은 글이라, 지금 이름으로 고쳐 놓으면 그 시절에 그 이름으로 받은 사람이
|
|
8
8
|
> 제 이야기를 못 찾는다.
|
|
9
9
|
|
|
10
|
+
## 0.329.0 — 못 일곱을 고쳐 **셈을 바로잡는다** (연장·관문)
|
|
11
|
+
|
|
12
|
+
사장님이 꼽아 주신 일곱을 차례대로 고쳤다. 몸통은 하나다 — **못이 셈을 잘못 하거나,
|
|
13
|
+
아예 아무것도 안 세고 있었다.** 자리를 고치기 전에 **옛 못으로 같은 것을 깨 보고** 초록이
|
|
14
|
+
나는지를 먼저 쟀다.
|
|
15
|
+
|
|
16
|
+
### ① 블록 끝을 중괄호로 센다
|
|
17
|
+
|
|
18
|
+
`test/tabletH3Size.test.ts` 가 `css.slice(0, css.indexOf('@media'))` 로 루트 블록을 잘랐다 —
|
|
19
|
+
파일 **앞쪽에** `@media` 가 하나 더 생기는 날 고친 것이 없는데 운다. 같은 가정을
|
|
20
|
+
`wordTableBlockActionsLeftExtra` 에서 실제로 밟았다. 같은 파일이 이미 들고 있던
|
|
21
|
+
`blockOf`(중괄호를 센다)로 바꾸고, **루트 블록을 제대로 집었는지** 세는 못을 더했다.
|
|
22
|
+
|
|
23
|
+
### ② 이름을 글자로 박은 못에 **닻**을 박는다
|
|
24
|
+
|
|
25
|
+
"재생기에 `padTimerRef` 가 없다" 처럼 **없음만** 세면, 그 이름이 바뀌거나 사라지는 날 못은
|
|
26
|
+
**울지 않고 초록**이 된다. 재어 보니 `usePlaybackSequencer` 시험의 못 일곱이 이미 그 꼴로
|
|
27
|
+
죽어 있었다 — 다섯은 **한글 이름을 금한 뒤** 다시 생길 수 없는 이름이었고(`뜸Ref` 따위),
|
|
28
|
+
둘은 `src` 에 한 건도 없었다(`padRef`·`jumpTokenRef`).
|
|
29
|
+
|
|
30
|
+
고친 길 둘 — ㉮ 이름 대신 **생김새**로 센다(제 손으로 세는 벌 · 제 손으로 쓰는 자리),
|
|
31
|
+
㉯ 생김새로 못 적는 이름은 남기되 **있어야 할 자리에 있는지** 함께 센다.
|
|
32
|
+
|
|
33
|
+
> 여덟 중 **셋은 안 고쳤다.** `EXIT_ANIM_MS`·`PHONE_REGEX`·`compareCell` 은 **같은 파일이
|
|
34
|
+
> 들여온다** — 이름이 바뀌면 컴파일이 울어 그게 맞는 신호다. `ANNOUNCED_STATUSES`·
|
|
35
|
+
> `STATUS_MESSAGES` 도 글자로 집는 그 파일이 함께 들여오고 있었다. 셈이 아니라 **헤아림**이
|
|
36
|
+
> 틀렸던 것이고, 그 셋을 흔드는 것은 일만 늘린다.
|
|
37
|
+
|
|
38
|
+
### ③ 이름 못이 **안 훑은 자리**를 센다
|
|
39
|
+
|
|
40
|
+
`walked > 1100` 은 "많이 훑었다" 만 말한다. **무엇을 못 훑었는지는 안 말한다.** 이 문이
|
|
41
|
+
내내 초록이던 까닭이 그것이었다 — `scripts/` 를 한 번도 안 보면서 숫자는 늘 넉넉했다.
|
|
42
|
+
이제 **git 이 아는 코드 파일**을 census 로 삼아 맞춰 본다. 같은 `readdirSync` 로 두 번 세면
|
|
43
|
+
같이 틀리므로 딴 데서 센다. `.mts`·`.cts` 가 하나 들어오는 날도 그 파일 이름을 대고 운다.
|
|
44
|
+
|
|
45
|
+
### ④ 달 열쇠의 꼴을 아는 자리가 **하나**다
|
|
46
|
+
|
|
47
|
+
`"2026년 10월"` 이 **열 자리에 흩어져** 있었다 — 짓는 데 다섯, 정규식으로 뜯는 데 다섯.
|
|
48
|
+
하나를 고치고 아홉을 놓치면 열쇠가 안 맞아 **달이 통째로 빈 칸**이 된다(0.325.0 이 그
|
|
49
|
+
결함이었다). `src/components/barChartMonthKey.ts` 하나로 모았다 —
|
|
50
|
+
`monthKeyOf` · `monthKeyOfDate` · `parseMonthKey` · `weekValueOf`.
|
|
51
|
+
|
|
52
|
+
> **꼴은 안 바꿨다.** 로케일에 안 매인 `"2026-10"` 이 옳지만, 소비자 시험이 이 꼴을 열
|
|
53
|
+
> 군데서 못 박고 있다. 꼴을 바꾸는 일은 소비자와 **함께** 해야 하므로 따로 한다. 그 약속을
|
|
54
|
+
> 코어 안에 적어 두고 못으로 세운다(`test/monthKeyOneDecision.test.ts`).
|
|
55
|
+
|
|
56
|
+
### ⑤ `scripts/` 에 타입 검사를 켠다 — `npm run typecheck:scripts`
|
|
57
|
+
|
|
58
|
+
`tsconfig.json`(src)·`tsconfig.test.json`(test+src) **어느 쪽에도 없었다.** 관문을 돌리는
|
|
59
|
+
연장 서른둘이 한 번도 안 보였다. 켠 날 181건이었고 **0 으로 만들었다.** 암묵 any 는 안 센다
|
|
60
|
+
(195건이 늘지만 아무 결함도 안 가린다) — 켜 둔 것은 **없는 것을 부르는 자리**다. 그쪽이
|
|
61
|
+
진짜 터지는 길이고, 실제로 설정을 못 읽을 때 날 스택을 뱉는 자리 넷과 `dist-freshness` 의
|
|
62
|
+
null 자리 일곱을 그날 찾았다.
|
|
63
|
+
|
|
64
|
+
### ⑥ 맨손으로 부르면 **무엇이 없는지** 말한다
|
|
65
|
+
|
|
66
|
+
연장 일곱이 `readFileSync(undefined)` 의 날 스택을 뱉었다. 스택은 **무엇을 줘야 하는지
|
|
67
|
+
안 가리킨다** — 쓰는 사람이 소스를 열어 `process.argv[2]` 를 찾아 읽어야 했다.
|
|
68
|
+
`scripts/usage.mjs` 로 모으고 끝값을 갈랐다 — **2 는 "부르는 법이 틀렸다", 1 은 "재 보니
|
|
69
|
+
걸렸다"** 다. 꾸러미를 못 열었을 때와 JSON 이 아닐 때도 따로 말한다.
|
|
70
|
+
|
|
71
|
+
### ⑦ 관문을 113초 → **75초**로
|
|
72
|
+
|
|
73
|
+
재고 고쳤다. 몸통 둘이었다. **75초는 끝에서 끝까지 쟀고**, 줄인 38초는 토막으로 쟀다
|
|
74
|
+
(빌드 14초 + 시험 둘째 바퀴 24초) — 그래서 옛 관문은 ≈113초다.
|
|
75
|
+
|
|
76
|
+
- **빌드를 두 번 했다**(14초 + 15초). `npm pack` 이 `prepare` 를 돌리고 `prepare` 는
|
|
77
|
+
`npm run build` 다 — 바로 위에서 돈 그 빌드였다. `--ignore-scripts` 로 넘기고, **그 가정을
|
|
78
|
+
세어 둔다**(`prepare` 가 다른 일을 하게 되면 관문이 멈추고 말한다).
|
|
79
|
+
- **시험을 통째로 두 번 돌았다**(29초 × 2). 두 번째 바퀴는 표준시를 바꿔 재는 것인데, 다시
|
|
80
|
+
재는 것 대부분이 때를 아예 안 쓴다. 이제 **때를 쓰는 95개만** 돈다(5초). 고르개는
|
|
81
|
+
`scripts/tz-sensitive-tests.cjs` 한 자리에 있다.
|
|
82
|
+
|
|
83
|
+
> 고르개는 **참임을 증명하지 못한다** — 겉으로 때를 안 쓰면서 안에서 쓸 수 있다. 그래서
|
|
84
|
+
> `test/tzSubsetCovers.test.ts` 가 **다른 길로** 센다(때 연장을 들여온 시험을 빠뜨렸나).
|
|
85
|
+
> 그 못이 만든 날 바로 구멍 넷을 잡았다 — `yearMonthLabelIntl` 처럼 **로케일을 재는 시험이
|
|
86
|
+
> 로케일 바퀴에서 빠져** 있었다. 의심스러운 날은 `npm run test:tz:all` 로 통째로 돈다.
|
|
87
|
+
> 가린 549 파일을 `TZ=UTC` 로 통째로 돌려 초록임을 쟀다(3,874 시험).
|
|
88
|
+
|
|
89
|
+
### 곁다리 — 주석은 쓰임이 아니다
|
|
90
|
+
|
|
91
|
+
`test/hookHome.test.ts` 가 날 글자를 짚어, 내력을 적은 주석에 훅 이름이 한 번 나오면 그
|
|
92
|
+
파일을 "쓰는 쪽" 으로 셌다. `barChartMonthKey.ts` 가 "이름표는 `useBarChartControl` 이
|
|
93
|
+
덮어쓴다" 고 적자 **고친 것이 없는데 울었다.** 이 저장소가 같은 자리를 세 번 밟았다
|
|
94
|
+
(앞엔 `jumpTokenRef` · `await a.play()`).
|
|
95
|
+
|
|
10
96
|
## 0.328.0 — 사장님이 정하신 UI·UX 넷 ((302)(303)(304)(306))
|
|
11
97
|
|
|
12
98
|
### (302) 채점 표시 획 2 → 3.5
|