@ihabdevteam/core 0.179.0 → 0.181.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 +60 -0
- package/dist/components.cjs.js +174 -174
- package/dist/components.esm.css +2 -2
- package/dist/hooks.cjs.js +3 -3
- package/dist/i18n.cjs.js +1 -1
- package/dist/ihabdevteam-core.cjs.js +184 -184
- package/dist/ihabdevteam-core.d.ts +59 -11
- package/dist/packages/core/src/components/EmptyState.d.ts +2 -0
- package/dist/packages/core/src/components/EmptyState.js +4 -1
- package/dist/packages/core/src/components/Panel.css +19 -0
- package/dist/packages/core/src/components/PanelRow.d.ts +9 -0
- package/dist/packages/core/src/components/PanelRow.js +2 -2
- package/dist/packages/core/src/components/Section.css +4 -0
- package/dist/packages/core/src/components/Section.d.ts +12 -1
- package/dist/packages/core/src/components/Section.js +2 -2
- package/dist/packages/core/src/components/Training/WordTablePopup.d.ts +5 -1
- package/dist/packages/core/src/components/Training/WordTablePopup.js +2 -2
- package/dist/packages/core/src/components/barChartTypes.d.ts +11 -1
- package/dist/packages/core/src/hooks/wordTrainingFilterModel.d.ts +3 -3
- package/dist/packages/core/src/utils/koreanSyllable.d.ts +18 -7
- package/dist/packages/core/src/utils/koreanSyllable.js +20 -16
- package/dist/packages/core/src/version.d.ts +1 -1
- package/dist/packages/core/src/version.js +1 -1
- package/dist/utils.cjs.js +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,66 @@ All notable changes to this project will be documented in this file.
|
|
|
7
7
|
> 적은 글이라, 지금 이름으로 고쳐 놓으면 그 시절에 그 이름으로 받은 사람이
|
|
8
8
|
> 제 이야기를 못 찾는다.
|
|
9
9
|
|
|
10
|
+
## 0.181.0
|
|
11
|
+
|
|
12
|
+
### 소비자에게 먼저 — 받침으로 고를 때 **글자도 소리도 아니던** 규칙을 고친다
|
|
13
|
+
|
|
14
|
+
`wordHasSyllableMatching`(그리고 `wordContainsJongseong`)의 **종성 매칭이 바뀐다.** 겹받침이 든 낱말을 다루는
|
|
15
|
+
소비자는 결과가 달라지므로 먼저 읽어야 한다. 말귀 전수 검수 2026-09-21 에서 나온 확정 결함이다.
|
|
16
|
+
|
|
17
|
+
**무엇이 틀렸나** — 원형이 아니면 **겹받침 구성 자모 아무거나** 로 걸렸다. 그래서
|
|
18
|
+
- `ㅅ` 을 고르면 `값(갑)·넋(넉)·몫(목)·삯(삭)` 이 함께 나왔다 — 그 받침 소리는 ㅂ·ㄱ·ㄱ·ㄱ 이다.
|
|
19
|
+
- `ㄱ` 에는 `넋·몫·삯·닭·흙` 은 드는데 **소리가 같은 `밖(박)·녘(녁)` 은 안 들었다** — 한쪽은 넓고 한쪽은 좁았다.
|
|
20
|
+
- 라이브 낱말 23,000 중 겹받침이 든 **308개**가 제 받침 소리가 아닌 자모로 한 번씩 더 걸렸다.
|
|
21
|
+
|
|
22
|
+
주석은 "글자 입력은 원형, 발음 입력은 대표음" 이라 적고 있었지만 **함수에 모드 인자가 없었고**, 구성 자모는 대표음이 아니다.
|
|
23
|
+
아픈 자리는 말귀의 단어표·대립쌍표·단어훈련 만들기 — "ㅅ 받침 떼는 연습" 을 고른 치료사에게 받침 소리가 ㅂ·ㄱ 인 낱말이 섞여 나왔다.
|
|
24
|
+
|
|
25
|
+
**무엇이 되나** — 이름 있는 두 규칙(`JongMatch`)이다.
|
|
26
|
+
- `'glyph'`(**기본**): 쓰인 글자 그대로. `ㅅ` 은 받침이 `ㅅ` 인 음절만, 겹받침은 제 원형(`ㅄ`)으로만.
|
|
27
|
+
- `'phoneme'`: 받침 **소리**로. `ㄱ` 에 `ㄱ·ㄲ·ㅋ·ㄳ·ㄺ`(국·밖·녘·넋·닭)이 함께 든다.
|
|
28
|
+
|
|
29
|
+
```ts
|
|
30
|
+
wordHasSyllableMatching(word, parts, position?, jongMatch?) // 넷째 인자가 늘었다(기본 'glyph')
|
|
31
|
+
wordContainsJongseong(word, jamo, jongMatch?) // 셋째 인자가 늘었다(기본 'glyph')
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
**발음 입력 화면은 건드릴 것이 없다** — 그쪽은 넘기는 낱말 자체가 표준발음이라 겹받침이 나오지 않는다.
|
|
35
|
+
`wordContainsPhoneme`(초성 거르개)은 "어디든 이 자모가 있나" 라는 다른 뜻이라 그대로 둔다.
|
|
36
|
+
|
|
37
|
+
**시험 셋이 옛 동작을 옳은 것으로 적어 두고 있었다**(`값`이 `ㅂ`·`ㅅ` 둘 다로 잡힌다 등). 기대치를 고치고 왜 고쳤는지 그 자리에 적었다.
|
|
38
|
+
|
|
39
|
+
### `EmptyState` action 단추 크기
|
|
40
|
+
|
|
41
|
+
- **`action.size`**(`40` 기본 · `48` · `56`): 빈 화면이 한 쪽을 통째로 차지하면 40 은 작다. 소비자가 키·최소폭·모서리를
|
|
42
|
+
앱 CSS 로 덮던 자리다(말귀 고객관리). 코어 `Button` 을 안 쓰고 클래스를 적는 것은 `aria-busy`(약속이 끝날 때까지 알림) 때문이고,
|
|
43
|
+
이제 크기만 그 prop 이 정한다.
|
|
44
|
+
|
|
45
|
+
### 함께 나가는 것 — 미배포로 쌓여 있던 문서
|
|
46
|
+
|
|
47
|
+
- **`BarChart avgMode` 의 셈을 문서에 못박았다**(코드는 안 바뀌었다). "경과한 일별 `a` 평균" 까지만 적혀 있어
|
|
48
|
+
**분모에 기록 없는 날(0)이 든다는 것**과 **월 보기는 주 막대가 아니라 `daily` 를 잰다는 것**(주가 달 경계를 넘기 때문)이
|
|
49
|
+
빠져 있었다. 말귀가 검수하다 막대 평균으로 머리 수를 맞추려다 못 맞췄다(실제 자료로는 217 / 18(경과일) = 12.06).
|
|
50
|
+
|
|
51
|
+
## 0.180.0
|
|
52
|
+
|
|
53
|
+
### 소비자에게 먼저 — 같은 요구가 여러 자리에 흩어져 있던 둘, 그리고 넘김 하나
|
|
54
|
+
|
|
55
|
+
말귀가 앱 CSS 를 다시 전수로 세어(115규칙·32파일 → 104·28) 찾아낸 것이다(2026-09-18). 셋 다 **안 주면 예전 그대로** 다.
|
|
56
|
+
|
|
57
|
+
- **`Section inGrid`**: 격자 칸 안에서 아래 여백(`--spacing-page`)을 푼다. `Section` 은 **세로로 이어 놓는 것**을 전제로 그 여백을 두고
|
|
58
|
+
마지막 것만 `:last-child` 로 빼는데, 2×2 격자에 넣으면 그 규칙이 **마지막 칸에만** 걸려 넷 중 셋이 여백을 달고 섰다 —
|
|
59
|
+
카드 바닥선이 어긋나고 줄 사이 간격도 달라 보였다(말귀 문장훈련 분석 실측: 카드 506 vs 566px).
|
|
60
|
+
`ChartSection inGrid` 와 **같은 이름** 이다. 두 카드가 한 격자에 설 때 같은 말이어야 한다.
|
|
61
|
+
- **`PanelRow useFullWidth` 가 children 모드에도 있다**: 라벨을 고정 폭으로 두고 오른쪽이 남은 폭을 채우며,
|
|
62
|
+
**그 안의 입력칸도 함께 늘어난다.** `variant='input'`·`'dropdown'` 은 늘 이 꼴이고 `'text'`·`'custom'` 은 이 prop 으로 켰는데,
|
|
63
|
+
`TextField`·`Dropdown`·`form-input` 을 **children 으로 넣는 길에만 통로가 없었다** — 그래서 소비자가
|
|
64
|
+
`.panel-row__right { display: flex }` + `> * { flex: 1 }` 을 손으로 붙였고, 같은 한 줄이 **말귀 앱 넷 · 어드민 셋** 에 흩어져 있었다.
|
|
65
|
+
라벨 폭은 `Panel labelWidth` 가 정한다(기본 120px).
|
|
66
|
+
- **`WordTablePopup footerLayout`**: `Popup` 의 것을 그대로 내려보낸다. `footerClassName` 을 소비자에게 여는 감싸개는 이것 하나인데
|
|
67
|
+
0.179.0 에서 이 prop 을 빼먹어, 이 창만 앱 CSS 로 정렬을 칠해야 했다. 0.173.0 의 `Header` 넘김 빠뜨림과 같은 꼴이라
|
|
68
|
+
이번에는 그 감싸개를 **전부 훑어** 함께 열고, **새 감싸개가 한쪽만 열면 우는 시험**을 뒀다.
|
|
69
|
+
|
|
10
70
|
## 0.179.0
|
|
11
71
|
|
|
12
72
|
### 소비자에게 먼저 — 앱이 코어 이름을 겨냥하던 자리 다섯을 코어가 쥔다
|