@ihabdevteam/core 0.195.1 → 0.197.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,63 @@ All notable changes to this project will be documented in this file.
7
7
  > 적은 글이라, 지금 이름으로 고쳐 놓으면 그 시절에 그 이름으로 받은 사람이
8
8
  > 제 이야기를 못 찾는다.
9
9
 
10
+ ## 0.197.0
11
+
12
+ ### 바뀜 — 접힌 72px 레일도 **8px**, 단추는 **가운데**
13
+
14
+ 사장님 지시(2026-09-25). `Header.css` 의 접힌 레일 여백(`0 10px`, 호버 규칙까지 둘)을
15
+ `0 var(--spacing-xs)` 로 낮추고, 항목을 **52px 로 못 박아 `margin: 0 auto`** 로 세웠다.
16
+
17
+ 여백만 낮추면 항목이 자리를 다 먹어 54 가 되고, `padding: 0 14px` 로 아이콘을 가운데 두던 셈이
18
+ 어긋나 **아이콘이 1px 오른쪽으로 밀린다.** 52 로 두면 그 셈이 그대로 맞는다 — 실측(768px):
19
+ 레일 가운데 312 · 항목 가운데 **312** · 아이콘 좌 **14** / 우 **14**.
20
+
21
+ **펼쳐질 때는 폭 고정을 푼다.** 이 레일은 `:hover`·`:focus-within` 에서 220px 로 펼쳐지는데,
22
+ 고정을 안 풀면 항목만 52px 로 남아 이름표가 설 자리가 없다. 실측(펼친 뒤): 레일 222 · 항목 202 ·
23
+ 이름표 136. 발치도 같이 되돌린다.
24
+
25
+ ### 고침 — 접힌 레일에서 **발치 단추가 5px 왼쪽에 섰다**
26
+
27
+ 발치 줄(터미널·종·톱니·물음표·사람)은 좌우 여백이 없어 40px 단추가 왼쪽에 붙었고, 레일 가운데보다
28
+ 5px 왼쪽에 서서 위 아이콘들과 눈에 띄게 어긋났다(말귀 실측 — 사장님이 보신 어긋남이 이것이다).
29
+ 접힌 레일에서만 가운데로 세운다. 실측: 발치 단추 가운데 **312**(레일 가운데와 같다).
30
+
31
+ ### 고침 — `align-items: left` 는 **CSS 에 없는 값**이다
32
+
33
+ `.side-nav__footer` 가 그렇게 적혀 있었다. 브라우저가 버리고 기본값(stretch)으로 그려 와서 겉으로는
34
+ 멀쩡했지만, 다음 사람이 "여기는 왼쪽 맞춤" 으로 읽고 흉내 낼 글이었다. 뜻은 그대로 두고 값을 제
35
+ 이름(`stretch`)으로 적는다 — 보이는 것은 안 바뀐다.
36
+
37
+ **남은 것 하나**: 접힌 레일에서 **읽지 않음 배지가 달린 항목**은 아직 1px 넘친다(배지 14px 이
38
+ 아이콘 24 + 좌우 여백 28 과 함께 52 안에 안 들어간다). 배지를 아이콘 모서리로 겹칠지·접힌 레일에서
39
+ 숨길지는 **보이는 꼴을 정하는 일**이라 따로 여쭌다.
40
+
41
+ ## 0.196.0
42
+
43
+ ### 바뀜 — `SideNav` 좌우 여백 **12px → 8px**, 수 대신 토큰
44
+
45
+ 사장님 지시(2026-09-25). `.side-nav__menu` 의 `padding: 0 12px` 를 `0 var(--spacing-xs)` 로 바꿨다.
46
+ 토큰으로 적는 것은 여백이 움직일 때 **한 자리에서** 움직이게 하려는 것이다 — `--spacing-xs` 는
47
+ 토큰 파일에서 한 번만 정해지고 끊는 자리마다 다시 정하는 곳이 없다(`--spacing-content`·
48
+ `--spacing-page` 와 다른 점이라 확인하고 썼다).
49
+
50
+ 실측(놀이터 1280px, 클래식 스크롤바): 좌 20 / 우 20(대칭 그대로) · 항목 폭 178 · 가로 넘침 0 ·
51
+ 글자 잘린 항목 0. `scrollbar-gutter: stable both-edges` 가 살아 있어 좌우는 여전히 같다.
52
+ 그 자리 주석의 실측값도 새 값으로 고쳤다(오버레이 13/13 → 9/9, 클래식 24/24 → 20/20).
53
+
54
+ **접힌 72px 레일은 안 건드렸다** — 거기 `padding: 0 10px` 에는 "gutter 를 떼야 항목이 50px 로
55
+ 선다" 는 셈이 달려 있어 함께 낮추면 어긋난다. 그쪽은 따로 정할 일이다.
56
+
57
+ ### 글·시험 — 앞선 판들에서 밀린 것
58
+
59
+ - **`closeDisabled` 가 무엇을 막는지** 타입 도움말에 적고 `test/closeDisabledAfterOpen0925.test.tsx`
60
+ 로 굳혔다. 열린 뒤에 켜도 **✕ · ESC · 바깥 누르기 셋 다 막힌다**(실측). ✕ 의 `.disabled` 가
61
+ `false` 인 것은 초점을 쥔 단추에 native `disabled` 를 걸면 브라우저가 초점을 body 로 빼앗기
62
+ 때문이고(`Button` 의 `hasFocus`), 막힘은 `aria-disabled` 가 진다. **잴 때는 속성이 아니라
63
+ 결과를 보고, 닫기 애니메이션(260ms)을 넘겨서 재야 한다.**
64
+ - **이름을 가져가면 그 목록을 적는다** 는 규칙을 `RELEASE.md` 에 남겼다(0.195.0 에서 빠뜨렸다가
65
+ 0.195.1 에 모아 적은 일).
66
+
10
67
  ## 0.195.1
11
68
 
12
69
  ### 고침 — 게임 **판 점의 상태 빛깔이 껍데기 바탕에 덮였다** (`gameShell.css`)