@ihabdevteam/core 0.192.0 → 0.194.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,53 @@ All notable changes to this project will be documented in this file.
7
7
  > 적은 글이라, 지금 이름으로 고쳐 놓으면 그 시절에 그 이름으로 받은 사람이
8
8
  > 제 이야기를 못 찾는다.
9
9
 
10
+ ## 0.194.0
11
+
12
+ ### 더해짐 — `prefetchChunk` · `usePageResetOnChange`
13
+
14
+ 두 앱(회원앱 · 어드민)에 **한 벌씩** 있던 것들이다. 번들이 갈려 **앱끼리는 합칠 수 없는 자리**라,
15
+ 지킴이(`crossAppCopies`)가 갈라짐만 막고 있었다 — 지킴이는 갈라짐은 막아도 **왜 두 벌인지는 못
16
+ 없앤다.** 둘 다 도메인을 모르는 코드라 코어가 들 자리가 맞다(말귀 판단, 2026-09-25).
17
+
18
+ **`prefetchChunk(...loads)`** — 늦게 받는 화면 청크를 한가할 때 미리 받아 둔다. `lazyPage` 로 받는
19
+ 화면은 열려는 순간 청크를 받는데, 그 사이 제목도 구획도 없이 동그라미만 돈다(말귀 실측: 고객 상세
20
+ **364ms** 빈 화면). 미리 받아 두면 누르는 순간 뼈대가 먼저 선다.
21
+
22
+ - **첫 그리기를 안 건드린다** — `requestIdleCallback`, 그것이 **없는 사파리**에서는 300ms 미룸.
23
+ - **실패를 삼킨다** — 미리 받기가 안 되면 누를 때 받으면 된다(예전과 같을 뿐이다).
24
+ - 그만두는 함수를 돌려주므로 효과에서 그대로 돌려주면 된다.
25
+
26
+ **`usePageResetOnChange(열쇠, setPage)`** — 거르는 조건이 바뀌면 첫 쪽으로. `usePagedList` 의
27
+ 짝이다: 쪽을 **세는 것**은 코어에 있는데 **되돌리는 것**만 앱에 두 벌이었다. 안 돌리면 3쪽을 보던
28
+ 채로 검색어를 바꿨을 때 빈 표가 뜬다 — 찾는 것이 없어서가 아니라 **없는 쪽을 보고 있어서**다.
29
+
30
+ **효과가 아니라 렌더 중에 고친다.** 효과로 미루면 옛 쪽 번호로 한 프레임이 먼저 실리고, 그 프레임이
31
+ 곧 깜빡이는 빈 표다. 시험도 렌더 함수가 몇 번 돌았는지가 아니라 **실제로 실린 프레임**을 센다
32
+ (렌더 함수는 두 번 돌지만 커밋되는 것은 하나다).
33
+
34
+ ## 0.193.0
35
+
36
+ ### 바뀜 — `ConfirmPopup` 의 `topContent` 가 **여럿을 세로로 쌓는다**
37
+
38
+ 예전에는 가로 줄(`justify-content: center`)이라 이 자리에 둘을 넣으면 **나란히 섰다.** 그래서 둘
39
+ 이상을 세워야 하는 창마다 세로 통을 하나씩 더 두르고 있었다 — 말귀 두 벌(표 저장 확인창 · 숙제
40
+ 확인창)이고, 두 파일이 "코어의 이 자리는 가로 가운데라 그냥 넣으면 나란히 선다" 는 **말까지 따로
41
+ 적어** 두었다. 같은 걸림돌을 두 번 따로 만나 두 번 따로 적은 꼴이라, 그 말이 두 군데 있다는 것
42
+ 자체가 이쪽 일이라는 신호였다(2026-09-25).
43
+
44
+ 이제 세로로 쌓고 가로는 가운데(`--spacing-m` 간격)다. **하나만 넣던 자리는 그대로다** — 가운데
45
+ 맞춤은 제 폭을 안 정한 것에만 걸리므로, `width: 100%` 를 가진 것(표 틀 · 입력칸)은 여전히 꽉 찬다
46
+ (놀이터 실측: 자리 440px 에 미리보기 440 · 입력칸 440, 배지 하나는 52px 로 가운데).
47
+
48
+ ### 바뀜 — `topContent` 가 있으면 **더해 둔 위 여백을 되돌린다**
49
+
50
+ 확인창은 본문 위아래 여백을 20px 씩 더 준다(20 → 40). 글만 있는 창에서는 그 한 뼘이 숨 쉴 자리지만,
51
+ 맨 위에 표나 카드가 서면 제목과 내용을 공연히 벌려 놓는다(사용자 지시 2026-09-23 "여백이 많아보여").
52
+ 부르는 쪽 둘이 각자 되돌리고 있던 것을, `topContent` 를 준 창에서는 코어가 되돌린다(`--spacing-l`).
53
+
54
+ **받는 쪽이 할 일**: 세로 통과 위 여백 되돌림을 지우면 된다. 아래 여백(40px)은 그대로다 — 단추가
55
+ 서는 쪽이라 좁히면 손가락 자리가 준다.
56
+
10
57
  ## 0.192.0
11
58
 
12
59
  ### 더해짐 — `GameIntro` · `--color-onDark-*` 토큰