@ihabdevteam/core 0.223.0 → 0.225.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,71 @@ All notable changes to this project will be documented in this file.
7
7
  > 적은 글이라, 지금 이름으로 고쳐 놓으면 그 시절에 그 이름으로 받은 사람이
8
8
  > 제 이야기를 못 찾는다.
9
9
 
10
+ ## 0.225.0
11
+
12
+ ### `DatePicker` 의 달력이 자리가 없으면 **위로 편다** (말귀 요청 ㊵)
13
+
14
+ 채점 창 **바닥 줄**에 날짜 칸을 놓으니 달력이 아래로 펴져 화면 밖으로 나갔다. 창 안이라
15
+ 스크롤도 안 생겨 고를 길이 없었다(말귀 실측: 칸 `1180~1228`, 달력 `1234~1498`, 창 1278 —
16
+ 220px 이 밖). 뒤집기는 **이미 있었는데** 두 군데가 막고 있었다.
17
+
18
+ - **위가 통째로 남을 때만** 뒤집었다(`rect.top > dropdownH`). 위도 아래도 다 모자라면 늘
19
+ 아래였는데, 칸이 바닥 줄이면 거의 늘 그 꼴이다. 이제 **덜 모자라는 쪽**으로 편다
20
+ (`spaceAbove > spaceBelow`). 아래가 넉넉하면 전과 같이 아래다 — 공연히 안 뒤집는다.
21
+ - **첫 셈은 판 높이를 몰랐다.** `open` 이 참이 된 직후 한 번 세는데, 그때 판이 아직 없으면
22
+ 어림값(300)으로 세고 **그 어림으로 위·아래와 창 안으로 조이기를 둘 다 정해** 버렸다.
23
+ 아무도 다시 안 쟀다. 이제 `useAnchoredMenu` 가 판을 `ResizeObserver` 로 지켜보다가
24
+ **높이가 달라질 때만** 다시 센다(같은 높이에도 세면 셈→자리→셈 으로 끝없이 돈다).
25
+ 덤으로 달력이 5 줄 달에서 6 줄 달로 넘어갈 때도 자리를 다시 잡는다.
26
+
27
+ **`placement` 프롭은 안 만든다.** 부르는 쪽은 제 칸이 창 어디에 놓일지 늘 알지는 못한다 —
28
+ 말귀도 몰랐고 사람이 보고서야 알았다. 프롭으로 넘기면 그 모름이 그대로 결함이 된다.
29
+
30
+ > 이 고침은 `useAnchoredMenu` 를 쓰는 **모든 붙는 판**에 간다(`Dropdown` 등). 어림값으로
31
+ > 굳던 자리가 다 같이 풀린다.
32
+
33
+ ### 채점 표식 ○ · △ · ✕ 에 이름이 뜬다 (말귀 요청 ㊴)
34
+
35
+ 셋 다 아이콘만 있어 낭독기에는 `낙지 맞음` 으로 제대로 읽히는데 **눈으로 보는 사람에게는
36
+ 이름이 없었다** — 세모가 '애매' 인지 '반만 맞음' 인지 알 길이 없다. 손을 얹으면
37
+ `맞음` · `애매` · `틀림` 이 뜬다(`wordTable.scoring.markName`, 영어도 있다).
38
+
39
+ **띄우는 글과 낭독기 글이 일부러 다르다.** 손을 얹은 사람에게 낱말은 바로 위 칸에 적혀
40
+ 있으니 새 소식이 아니다. 낭독기는 칸을 안 보고 지나므로 거기서는 낱말이 있어야 "어느 칸의
41
+ 맞음" 인지 알 수 있다 — `ariaLabel` 은 그대로 둔다.
42
+
43
+ ### `WordTableButton` — 번호가 배지 **뒤**로, 색은 등록일과 같은 회색 (말귀 요청 ㊱·㊳)
44
+
45
+ **㊱ 을 한 번 더 옮겼다.** 첫 판에서는 배지보다 **앞**에 두었다 — "배지는 상태고 번호는
46
+ 이름이니 이름이 먼저" 라는 셈이었는데, 그것은 셈이었을 뿐이고 화면을 보고 사용자가 **맨
47
+ 끝**으로 정했다. 바꾸려면 화면을 보고 바꾼다.
48
+
49
+ **㊳ 색**: `--color-text-primary` → `--color-gray`. 한 단 올려 두었던 까닭은 "둘 다 회색이면
50
+ 한 줄에 같은 무게로 놓여 훑을 때 안 걸린다" 였는데, 번호가 줄 오른쪽 끝으로 가면서 등록일과
51
+ 떨어져 그 걱정이 없어졌다. 자리가 이미 구별을 하므로 색까지 세울 까닭이 없다.
52
+
53
+ ## 0.224.0
54
+
55
+ ### `Toolbar` 의 검색 칸에 `autoFocus` (말귀 요청 ㊲)
56
+
57
+ ```ts
58
+ search?: { value, onChange, placeholder?, autoFocus? }
59
+ ```
60
+
61
+ **칸 하나를 채우러 여는 창**을 위한 것이다. 말귀가 번호 치는 칸을 `Toolbar` 의 `search` 로
62
+ 옮기면서 거기 달려 있던 `autoFocus` 가 함께 사라졌고, 창을 열면 초점이 `닫기` 단추에 있었다.
63
+ 이 창을 여는 사람 손에는 대개 종이가 들려 있어서, 칸을 한 번 눌러야 쳐지면 그 한 걸음이
64
+ "나중에 하지" 가 된다 — 창을 지은 까닭이 그 한 걸음을 없애는 것이었으니 조용히 되돌아간
65
+ 셈이었다.
66
+
67
+ 말귀는 그동안 구획 안의 첫 `input` 을 찾아 손수 초점을 주고 있었다. **코어 마크업을 더듬는
68
+ 일**이라 코어가 칸의 꼴을 바꾸면(예: `type` 을 `text` 에서 `search` 로) 조용히 깨진다.
69
+ 프롭 한 줄로 그 자리를 없앤다.
70
+
71
+ **기본은 거짓이고, 그대로 둔다.** 목록 화면의 거르개처럼 사람이 읽으러 온 곳에서 초점이
72
+ 검색 칸으로 뛰면, 화면낭독기는 머리글을 건너뛰고 폰은 자판이 올라와 화면 절반을 덮는다.
73
+ 이 프롭은 **창**을 위한 것이다.
74
+
10
75
  ## 0.223.0
11
76
 
12
77
  ### 띠 — 위 띠 아래 정렬 · 로고 간격 14px · 아래 띠 광학 보정 (말귀 요청 ㉟)