@ihabdevteam/core 0.307.0 → 0.309.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 CHANGED
@@ -7,6 +7,75 @@ All notable changes to this project will be documented in this file.
7
7
  > 적은 글이라, 지금 이름으로 고쳐 놓으면 그 시절에 그 이름으로 받은 사람이
8
8
  > 제 이야기를 못 찾는다.
9
9
 
10
+ ## 0.309.0
11
+
12
+ ### `CountTile` — **반응하는 타일이면 반응하는 것처럼 보인다** (말귀 요청 (105))
13
+
14
+ 사용자 보고(2026-10-10): *"count tile 에 호버되었을 때 호버 표현 해 줘."* 코어가 `onClick` 이 있을
15
+ 때만 호버 모양을 줬는데, 이 타일이 반응하는 길은 **셋**이다:
16
+
17
+ 누르기 onClick
18
+ 얹으면 담긴 훈련이 뜸 tooltip && plan ← 매니저 숙제 카드
19
+ 부르는 쪽이 제 툴팁을 띄움 onMouseEnter ← 회원 숙제 카드
20
+
21
+ 뒤의 둘은 **반응하는 자리인데 반응하는 것처럼 안 보였다.** 이제 호버 모양은 `count-tile--interactive`
22
+ 가 맡고(`background: --color-white` · `border-color: --color-lightGray`), `count-tile--clickable` 은
23
+ **커서만** 지킨다 — 누르는 타일과 얹는 타일이 같은 호버를 쓰고 커서만 갈린다. 아무것도 안 하는
24
+ 타일과 `tooltip={false}` 인 타일은 그대로다(반응 안 하는데 반응하는 척하면 거짓말이다).
25
+
26
+ 못(`test/countTileHoverAffordance.test.tsx`)은 **표가 붙는가**와 **호버 규칙이 한 클래스에만
27
+ 사는가**를 본다 — `--clickable:hover` 에 배경이 다시 생기면 운다(호버가 두 자리에 살게 되니까).
28
+ *그려진 색*은 jsdom 이 못 보니 `LIVE-ONLY-CHECKS.md` 6번이다. 둘 다 깨뜨려 확인했다.
29
+
30
+ ### `CategoryIcon` — **올리면 아이콘 색으로 1px 테두리** (말귀 요청 (106))
31
+
32
+ 사용자 지시(2026-10-10): *"category icon 에 color 로 border 1 표현."* 올리면 설명 말풍선이 뜨는데
33
+ 상자는 그대로였다 — (105) 와 같은 결. 이제 `category-icon__wrap--interactive:hover .category-icon` 에
34
+ `box-shadow: inset 0 0 0 1px var(--t-item-fg, --color-lightGray)` — 안쪽 그림자라 40px 이 안 흔들린다.
35
+
36
+ 표는 **말풍선이 설 때만** 붙는다(`useHover` 이고 보여 줄 글이 있을 때). `useHover={false}` 면
37
+ 말풍선과 함께 테두리도 안 선다 — 반응 안 하는 자리에 표를 주면 (105) 의 반대 거짓이다.
38
+ 못(`test/categoryIconHoverAffordance.test.tsx`)은 표의 짜임과 **맨 `.category-icon__wrap:hover` 규칙이
39
+ 없는가**를 본다. 키보드 초점(`:focus-visible`)은 이 판에 안 넣었다 — 청이 호버였다.
40
+
41
+ > **같은 꼴이 코어에 여덟 더 있다** — `--clickable` 을 `onClick` 으로만 거는 조각들(ChartSection ·
42
+ > PanelRow · StatChart · Badge · TrainingCard · Calendar · Table · LandingBottomSticky). 그중 **얹기만
43
+ > 해도 반응하는** 것은 `ChartSection`(설명 툴팁) 하나다. 이 판에서는 안 건드렸다 — 매니저 대시보드의
44
+ > 모습이 바뀌는 일이라 청이 와야 한다.
45
+
46
+ ## 0.308.0
47
+
48
+ ### `renderResultPopup` 이 **가운데 겹에도** 있다 — 말귀 요청 (104)
49
+
50
+ `TrainingBlockButtonPopupProps` 에 그 칸이 **없었다.** 값은 `...rest` 로 흘러 이미 가고 있어
51
+ **결과창이 실제로 갈렸고**, 타입에만 없어서 쓰는 쪽 **셋**이 전부 같은
52
+ `as Parameters<typeof defaultPopupRenderer>[0]` 로 눌러 왔다. 말귀가 셋을 걷어 보고 **셋이
53
+ 함께** 붉어지는 것(`TS2353`)을 확인해 넘겼다.
54
+
55
+ **0.307.0 이 채운 것과 같은 꼴, 다른 칸이다** — 그쪽은 `onRoundFinished` 가 *돌려주는* 덩이,
56
+ 이쪽은 *넘겨주는* 꾸러미.
57
+
58
+ ### 세어 보니 자리가 **셋**이었다 — 셋째는 `pending` 한 칸이 짧았다
59
+
60
+ 말귀는 가운데 겹 하나를 말했는데, 여실 때 자리를 세어 달라고 했다. 세어 보니 코어 안에
61
+ 하나가 더 있었다:
62
+
63
+ ① TrainingPagePopup 모양을 **정하는** 자리(score · results · contextsLength · onReplay · onClose · pending)
64
+ ② 가운데 겹 **없었다** — (104) 로 채웠다
65
+ ③ DebugResultLauncher 손수 베낀 모양, **`pending` 이 빠져 있었다**
66
+
67
+ **빠진 칸이 `pending?` 처럼 있어도 되는 칸이라 아무것도 안 깨졌다.** 이제 ②③ 은 ①을
68
+ **가리킨다**(`TrainingPagePopupProps['renderResultPopup']`) — 창에 칸이 늘면 같이 는다.
69
+
70
+ > **고치는 쪽은 자리를 센다.** 오늘 이 말을 두 번 어겼다 — 0.300.0 이 `onRoundFinished` 의
71
+ > 셋째 자리(앱)를 안 셌고, 0.307.0 이 그것을 고치면서 **또** 안 셌다(말귀_1 이 제 쪽에서
72
+ > 찾아 걷었다). (104) 는 **먼저 셌고**, 그래서 말귀가 말한 둘이 아니라 셋이 나왔다.
73
+
74
+ 못 둘이 선다(`test/resultRendererOneShape.test.ts`): 세 자리가 **같은 칸**을 말하나(칸 이름을
75
+ 세어 맞댄다 — 넣어 보기로는 `pending?` 같은 칸이 안 잡힌다), 그리고 **모양을 제자리에 펼쳐
76
+ 적은 자리가 하나뿐인가**(넷째가 조용히 생기는 것을 막는다). 둘 다 깨뜨려 확인했다 —
77
+ `Type '"pending"' is not assignable to type 'never'` · `펼쳐 적은 자리가 둘 이상이다`.
78
+
10
79
  ## 0.307.0
11
80
 
12
81
  ### `onRoundFinished` 가 **한 덩이를 그대로** 말한다 — 가운데 겹에서 안 쪼갰다