@celestia-island/hikari 0.4.4

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.
Files changed (187) hide show
  1. package/README.md +54 -0
  2. package/package.json +63 -0
  3. package/src/DemoApp.vue +400 -0
  4. package/src/components/HkActionBar.tsx +15 -0
  5. package/src/components/HkAlert.scss +121 -0
  6. package/src/components/HkAlert.tsx +85 -0
  7. package/src/components/HkAvatar.tsx +29 -0
  8. package/src/components/HkBadge.scss +117 -0
  9. package/src/components/HkBadge.tsx +50 -0
  10. package/src/components/HkBreadcrumb.tsx +39 -0
  11. package/src/components/HkButton.scss +128 -0
  12. package/src/components/HkButton.tsx +74 -0
  13. package/src/components/HkCard.scss +49 -0
  14. package/src/components/HkCard.tsx +38 -0
  15. package/src/components/HkCheckbox.scss +102 -0
  16. package/src/components/HkCheckbox.tsx +85 -0
  17. package/src/components/HkCollapse.tsx +48 -0
  18. package/src/components/HkColorPicker.scss +148 -0
  19. package/src/components/HkColorPicker.tsx +204 -0
  20. package/src/components/HkConfirmDialog.scss +12 -0
  21. package/src/components/HkConfirmDialog.tsx +75 -0
  22. package/src/components/HkDateTimePicker.scss +361 -0
  23. package/src/components/HkDateTimePicker.tsx +424 -0
  24. package/src/components/HkDivider.scss +85 -0
  25. package/src/components/HkDivider.tsx +51 -0
  26. package/src/components/HkDraggableGrid.scss +132 -0
  27. package/src/components/HkDraggableGrid.tsx +291 -0
  28. package/src/components/HkDraggableList.scss +110 -0
  29. package/src/components/HkDraggableList.tsx +238 -0
  30. package/src/components/HkDrawer.scss +175 -0
  31. package/src/components/HkDrawer.tsx +171 -0
  32. package/src/components/HkEmptyState.scss +42 -0
  33. package/src/components/HkEmptyState.tsx +41 -0
  34. package/src/components/HkErrorBoundary.scss +64 -0
  35. package/src/components/HkErrorBoundary.tsx +82 -0
  36. package/src/components/HkGaugeRing.scss +4 -0
  37. package/src/components/HkGaugeRing.tsx +130 -0
  38. package/src/components/HkHoverRevealAction.scss +66 -0
  39. package/src/components/HkHoverRevealAction.tsx +77 -0
  40. package/src/components/HkIcon.tsx +43 -0
  41. package/src/components/HkIconButton.tsx +42 -0
  42. package/src/components/HkImageViewer.scss +33 -0
  43. package/src/components/HkImageViewer.tsx +250 -0
  44. package/src/components/HkInput.scss +172 -0
  45. package/src/components/HkInput.tsx +175 -0
  46. package/src/components/HkKbd.tsx +26 -0
  47. package/src/components/HkKeywordSearchModal.scss +148 -0
  48. package/src/components/HkKeywordSearchModal.tsx +308 -0
  49. package/src/components/HkListTransition.scss +131 -0
  50. package/src/components/HkListTransition.tsx +29 -0
  51. package/src/components/HkLocalePickerPopup.tsx +42 -0
  52. package/src/components/HkLogo.scss +36 -0
  53. package/src/components/HkLogo.tsx +93 -0
  54. package/src/components/HkMarkdownRenderer.scss +141 -0
  55. package/src/components/HkMarkdownRenderer.tsx +123 -0
  56. package/src/components/HkMediaControlBar.scss +65 -0
  57. package/src/components/HkMediaControlBar.tsx +115 -0
  58. package/src/components/HkMediaPlayer.scss +29 -0
  59. package/src/components/HkMediaPlayer.tsx +210 -0
  60. package/src/components/HkMediaSlider.scss +54 -0
  61. package/src/components/HkMediaSlider.tsx +81 -0
  62. package/src/components/HkMediaVisualizer.scss +7 -0
  63. package/src/components/HkMediaVisualizer.tsx +119 -0
  64. package/src/components/HkMinimap.scss +76 -0
  65. package/src/components/HkMinimap.tsx +255 -0
  66. package/src/components/HkModal.scss +318 -0
  67. package/src/components/HkModal.tsx +481 -0
  68. package/src/components/HkModalBreadcrumb.scss +55 -0
  69. package/src/components/HkModalBreadcrumb.tsx +113 -0
  70. package/src/components/HkMorphingTabs.scss +141 -0
  71. package/src/components/HkMorphingTabs.tsx +113 -0
  72. package/src/components/HkNavItem.scss +81 -0
  73. package/src/components/HkNavItem.tsx +157 -0
  74. package/src/components/HkNumberInput.scss +154 -0
  75. package/src/components/HkNumberInput.tsx +161 -0
  76. package/src/components/HkPasswordInput.scss +289 -0
  77. package/src/components/HkPasswordInput.tsx +533 -0
  78. package/src/components/HkPhaseTransition.scss +25 -0
  79. package/src/components/HkPhaseTransition.tsx +40 -0
  80. package/src/components/HkPopover.scss +82 -0
  81. package/src/components/HkPopover.tsx +410 -0
  82. package/src/components/HkPopupSelect.scss +136 -0
  83. package/src/components/HkPopupSelect.tsx +199 -0
  84. package/src/components/HkProgressBar.scss +106 -0
  85. package/src/components/HkProgressBar.tsx +61 -0
  86. package/src/components/HkProgressDialog.tsx +67 -0
  87. package/src/components/HkProgressRing.scss +56 -0
  88. package/src/components/HkProgressRing.tsx +82 -0
  89. package/src/components/HkRadio.scss +119 -0
  90. package/src/components/HkRadio.tsx +75 -0
  91. package/src/components/HkRollingNumber.scss +37 -0
  92. package/src/components/HkRollingNumber.tsx +97 -0
  93. package/src/components/HkScrollContainer.scss +101 -0
  94. package/src/components/HkScrollContainer.tsx +362 -0
  95. package/src/components/HkSearchInput.scss +132 -0
  96. package/src/components/HkSearchInput.tsx +117 -0
  97. package/src/components/HkSelect.scss +143 -0
  98. package/src/components/HkSelect.tsx +230 -0
  99. package/src/components/HkSelectionGrid.scss +177 -0
  100. package/src/components/HkSelectionGrid.tsx +99 -0
  101. package/src/components/HkSelectionWaterfall.scss +93 -0
  102. package/src/components/HkSelectionWaterfall.tsx +90 -0
  103. package/src/components/HkSidebar.scss +81 -0
  104. package/src/components/HkSidebar.tsx +45 -0
  105. package/src/components/HkSkeleton.scss +44 -0
  106. package/src/components/HkSkeleton.tsx +30 -0
  107. package/src/components/HkSkeletonList.tsx +35 -0
  108. package/src/components/HkSpinner.scss +67 -0
  109. package/src/components/HkSpinner.tsx +41 -0
  110. package/src/components/HkSplash.scss +60 -0
  111. package/src/components/HkSplash.tsx +40 -0
  112. package/src/components/HkSwitch.scss +157 -0
  113. package/src/components/HkSwitch.tsx +72 -0
  114. package/src/components/HkTable.scss +198 -0
  115. package/src/components/HkTable.tsx +246 -0
  116. package/src/components/HkTabs.scss +109 -0
  117. package/src/components/HkTabs.tsx +111 -0
  118. package/src/components/HkTag.scss +88 -0
  119. package/src/components/HkTag.tsx +44 -0
  120. package/src/components/HkTextarea.scss +72 -0
  121. package/src/components/HkTextarea.tsx +104 -0
  122. package/src/components/HkTimeline.scss +139 -0
  123. package/src/components/HkTimeline.tsx +95 -0
  124. package/src/components/HkToast.scss +168 -0
  125. package/src/components/HkToast.tsx +175 -0
  126. package/src/components/HkTooltip.scss +47 -0
  127. package/src/components/HkTooltip.tsx +108 -0
  128. package/src/components/HkTree.scss +188 -0
  129. package/src/components/HkTree.tsx +217 -0
  130. package/src/components/HkTrendChart.tsx +180 -0
  131. package/src/components/HkWindowedItem.scss +17 -0
  132. package/src/components/HkWindowedItem.tsx +107 -0
  133. package/src/components/HkZoomToolbar.scss +35 -0
  134. package/src/components/HkZoomToolbar.tsx +69 -0
  135. package/src/composables/useBreakpoint.ts +41 -0
  136. package/src/composables/useClipboard.ts +37 -0
  137. package/src/composables/useConfirm.ts +35 -0
  138. package/src/composables/useProgressDialog.ts +52 -0
  139. package/src/composables/useReportedTransition.ts +69 -0
  140. package/src/composables/useScrollWindow.ts +21 -0
  141. package/src/composables/useToast.ts +2 -0
  142. package/src/demo.scss +24 -0
  143. package/src/demo.ts +22 -0
  144. package/src/env.d.ts +6 -0
  145. package/src/i18n/context.ts +89 -0
  146. package/src/i18n/locales/ar/components.json +43 -0
  147. package/src/i18n/locales/ar/components.toml +40 -0
  148. package/src/i18n/locales/de/components.json +43 -0
  149. package/src/i18n/locales/de/components.toml +40 -0
  150. package/src/i18n/locales/en/components.json +43 -0
  151. package/src/i18n/locales/en/components.toml +40 -0
  152. package/src/i18n/locales/es/components.json +43 -0
  153. package/src/i18n/locales/es/components.toml +40 -0
  154. package/src/i18n/locales/fr/components.json +43 -0
  155. package/src/i18n/locales/fr/components.toml +40 -0
  156. package/src/i18n/locales/ja/components.json +43 -0
  157. package/src/i18n/locales/ja/components.toml +40 -0
  158. package/src/i18n/locales/ko/components.json +43 -0
  159. package/src/i18n/locales/ko/components.toml +40 -0
  160. package/src/i18n/locales/pt/components.json +43 -0
  161. package/src/i18n/locales/pt/components.toml +40 -0
  162. package/src/i18n/locales/ru/components.json +43 -0
  163. package/src/i18n/locales/ru/components.toml +40 -0
  164. package/src/i18n/locales/zh-Hans/components.json +43 -0
  165. package/src/i18n/locales/zh-Hans/components.toml +40 -0
  166. package/src/i18n/locales/zh-Hant/components.json +43 -0
  167. package/src/i18n/locales/zh-Hant/components.toml +40 -0
  168. package/src/index.ts +137 -0
  169. package/src/render.ts +18 -0
  170. package/src/runtime/animationBus.ts +278 -0
  171. package/src/runtime/cronBus.ts +25 -0
  172. package/src/runtime/index.ts +12 -0
  173. package/src/runtime/useAsyncData.ts +30 -0
  174. package/src/runtime/useBreakpoint.ts +62 -0
  175. package/src/runtime/useClipboard.ts +37 -0
  176. package/src/runtime/useConfirm.ts +35 -0
  177. package/src/runtime/useOverlay.ts +82 -0
  178. package/src/runtime/usePopupManager.ts +89 -0
  179. package/src/runtime/useToast.ts +140 -0
  180. package/src/styles/index.scss +10 -0
  181. package/src/theme/index.ts +5 -0
  182. package/src/theme/presets.ts +307 -0
  183. package/src/theme/theme.scss +17 -0
  184. package/src/theme/useBackgroundLuminance.ts +145 -0
  185. package/src/theme/useSolarTime.ts +101 -0
  186. package/src/theme/useTheme.ts +141 -0
  187. package/src/tokens.scss +26 -0
@@ -0,0 +1,43 @@
1
+ {
2
+ "components": {
3
+ "hikari::adminHeader.logout": "로그아웃",
4
+ "hikari::adminHeader.login": "로그인",
5
+ "hikari::adminHeader.toggleTheme": "테마 전환",
6
+ "hikari::errorBoundary.title": "컴포넌트 오류",
7
+ "hikari::errorBoundary.copyError": "오류 복사",
8
+ "hikari::errorBoundary.retry": "재시도",
9
+ "hikari::searchInput.placeholder": "검색…",
10
+ "hikari::searchInput.clear": "검색 지우기",
11
+ "hikari::keywordSearch.title": "검색",
12
+ "hikari::keywordSearch.placeholder": "검색…",
13
+ "hikari::keywordSearch.searching": "검색 중…",
14
+ "hikari::keywordSearch.noMatches": "일치 없음",
15
+ "hikari::keywordSearch.clear": "지우기",
16
+ "hikari::dateTimePicker.pickDate": "날짜 및 시간 선택",
17
+ "hikari::dateTimePicker.today": "오늘",
18
+ "hikari::dateTimePicker.hour": "시",
19
+ "hikari::dateTimePicker.minute": "분",
20
+ "hikari::dateTimePicker.back": "뒤로",
21
+ "hikari::dateTimePicker.prevYears": "이전 연도",
22
+ "hikari::dateTimePicker.nextYears": "다음 연도",
23
+ "hikari::dateTimePicker.prevMonth": "이전 달",
24
+ "hikari::dateTimePicker.nextMonth": "다음 달",
25
+ "hikari::modal.close": "닫기",
26
+ "hikari::alert.close": "닫기",
27
+ "hikari::drawer.close": "닫기",
28
+ "hikari::breadcrumb.label": "이동 경로",
29
+ "hikari::logo.fallbackAlt": "로고",
30
+ "hikari::table.noData": "데이터 없음",
31
+ "hikari::confirmDialog.cancel": "취소",
32
+ "hikari::confirmDialog.confirm": "확인",
33
+ "hikari::passwordInput.passwordEntered": "비밀번호 입력됨",
34
+ "hikari::passwordInput.allSelected": "전체 선택",
35
+ "hikari::passwordInput.capsLock": "CapsLock 켜짐",
36
+ "hikari::passwordInput.fullWidth": "전각 문자 불가",
37
+ "hikari::toast.copy": "복사",
38
+ "hikari::toast.close": "닫기",
39
+ "hikari::modal.auto": "자동",
40
+ "hikari::scrollContainer.auto": "자동",
41
+ "hikari::avatar.fallback": "?"
42
+ }
43
+ }
@@ -0,0 +1,40 @@
1
+ [components]
2
+ hk.adminHeader.logout = "로그아웃"
3
+ hk.adminHeader.login = "로그인"
4
+ hk.adminHeader.toggleTheme = "테마 전환"
5
+ hk.errorBoundary.title = "컴포넌트 오류"
6
+ hk.errorBoundary.copyError = "오류 복사"
7
+ hk.errorBoundary.retry = "재시도"
8
+ hk.searchInput.placeholder = "검색…"
9
+ hk.searchInput.clear = "검색 지우기"
10
+ hk.keywordSearch.title = "검색"
11
+ hk.keywordSearch.placeholder = "검색…"
12
+ hk.keywordSearch.searching = "검색 중…"
13
+ hk.keywordSearch.noMatches = "일치 없음"
14
+ hk.keywordSearch.clear = "지우기"
15
+ hk.dateTimePicker.pickDate = "날짜 및 시간 선택"
16
+ hk.dateTimePicker.today = "오늘"
17
+ hk.dateTimePicker.hour = "시"
18
+ hk.dateTimePicker.minute = "분"
19
+ hk.dateTimePicker.back = "뒤로"
20
+ hk.dateTimePicker.prevYears = "이전 연도"
21
+ hk.dateTimePicker.nextYears = "다음 연도"
22
+ hk.dateTimePicker.prevMonth = "이전 달"
23
+ hk.dateTimePicker.nextMonth = "다음 달"
24
+ hk.modal.close = "닫기"
25
+ hk.alert.close = "닫기"
26
+ hk.drawer.close = "닫기"
27
+ hk.breadcrumb.label = "이동 경로"
28
+ hk.logo.fallbackAlt = "로고"
29
+ hk.table.noData = "데이터 없음"
30
+ hk.confirmDialog.cancel = "취소"
31
+ hk.confirmDialog.confirm = "확인"
32
+ hk.passwordInput.passwordEntered = "비밀번호 입력됨"
33
+ hk.passwordInput.allSelected = "전체 선택"
34
+ hk.passwordInput.capsLock = "CapsLock 켜짐"
35
+ hk.passwordInput.fullWidth = "전각 문자 불가"
36
+ hk.toast.copy = "복사"
37
+ hk.toast.close = "닫기"
38
+ hk.modal.auto = "자동"
39
+ hk.scrollContainer.auto = "자동"
40
+ hk.avatar.fallback = "?"
@@ -0,0 +1,43 @@
1
+ {
2
+ "components": {
3
+ "hikari::adminHeader.logout": "Logout",
4
+ "hikari::adminHeader.login": "Login",
5
+ "hikari::adminHeader.toggleTheme": "Toggle theme",
6
+ "hikari::errorBoundary.title": "Component Error",
7
+ "hikari::errorBoundary.copyError": "Copy Error",
8
+ "hikari::errorBoundary.retry": "Retry",
9
+ "hikari::searchInput.placeholder": "Search…",
10
+ "hikari::searchInput.clear": "Clear search",
11
+ "hikari::keywordSearch.title": "Search",
12
+ "hikari::keywordSearch.placeholder": "Search…",
13
+ "hikari::keywordSearch.searching": "Searching…",
14
+ "hikari::keywordSearch.noMatches": "No matches",
15
+ "hikari::keywordSearch.clear": "Clear",
16
+ "hikari::dateTimePicker.pickDate": "Pick a date and time",
17
+ "hikari::dateTimePicker.today": "Today",
18
+ "hikari::dateTimePicker.hour": "Hour",
19
+ "hikari::dateTimePicker.minute": "Minute",
20
+ "hikari::dateTimePicker.back": "Back",
21
+ "hikari::dateTimePicker.prevYears": "Previous years",
22
+ "hikari::dateTimePicker.nextYears": "Next years",
23
+ "hikari::dateTimePicker.prevMonth": "Previous month",
24
+ "hikari::dateTimePicker.nextMonth": "Next month",
25
+ "hikari::modal.close": "Close",
26
+ "hikari::alert.close": "Close",
27
+ "hikari::drawer.close": "Close",
28
+ "hikari::breadcrumb.label": "Breadcrumb",
29
+ "hikari::logo.fallbackAlt": "Logo",
30
+ "hikari::table.noData": "No data",
31
+ "hikari::confirmDialog.cancel": "Cancel",
32
+ "hikari::confirmDialog.confirm": "Confirm",
33
+ "hikari::passwordInput.passwordEntered": "Password entered",
34
+ "hikari::passwordInput.allSelected": "All selected",
35
+ "hikari::passwordInput.capsLock": "Caps Lock is on",
36
+ "hikari::passwordInput.fullWidth": "Full-width characters not allowed",
37
+ "hikari::toast.copy": "Copy",
38
+ "hikari::toast.close": "Close",
39
+ "hikari::modal.auto": "Auto",
40
+ "hikari::scrollContainer.auto": "Auto",
41
+ "hikari::avatar.fallback": "?"
42
+ }
43
+ }
@@ -0,0 +1,40 @@
1
+ [components]
2
+ hk.adminHeader.logout = "Logout"
3
+ hk.adminHeader.login = "Login"
4
+ hk.adminHeader.toggleTheme = "Toggle theme"
5
+ hk.errorBoundary.title = "Component Error"
6
+ hk.errorBoundary.copyError = "Copy Error"
7
+ hk.errorBoundary.retry = "Retry"
8
+ hk.searchInput.placeholder = "Search…"
9
+ hk.searchInput.clear = "Clear search"
10
+ hk.keywordSearch.title = "Search"
11
+ hk.keywordSearch.placeholder = "Search…"
12
+ hk.keywordSearch.searching = "Searching…"
13
+ hk.keywordSearch.noMatches = "No matches"
14
+ hk.keywordSearch.clear = "Clear"
15
+ hk.dateTimePicker.pickDate = "Pick a date and time"
16
+ hk.dateTimePicker.today = "Today"
17
+ hk.dateTimePicker.hour = "Hour"
18
+ hk.dateTimePicker.minute = "Minute"
19
+ hk.dateTimePicker.back = "Back"
20
+ hk.dateTimePicker.prevYears = "Previous years"
21
+ hk.dateTimePicker.nextYears = "Next years"
22
+ hk.dateTimePicker.prevMonth = "Previous month"
23
+ hk.dateTimePicker.nextMonth = "Next month"
24
+ hk.modal.close = "Close"
25
+ hk.alert.close = "Close"
26
+ hk.drawer.close = "Close"
27
+ hk.breadcrumb.label = "Breadcrumb"
28
+ hk.logo.fallbackAlt = "Logo"
29
+ hk.table.noData = "No data"
30
+ hk.confirmDialog.cancel = "Cancel"
31
+ hk.confirmDialog.confirm = "Confirm"
32
+ hk.passwordInput.passwordEntered = "Password entered"
33
+ hk.passwordInput.allSelected = "All selected"
34
+ hk.passwordInput.capsLock = "Caps Lock is on"
35
+ hk.passwordInput.fullWidth = "Full-width characters not allowed"
36
+ hk.toast.copy = "Copy"
37
+ hk.toast.close = "Close"
38
+ hk.modal.auto = "Auto"
39
+ hk.scrollContainer.auto = "Auto"
40
+ hk.avatar.fallback = "?"
@@ -0,0 +1,43 @@
1
+ {
2
+ "components": {
3
+ "hikari::adminHeader.logout": "Logout",
4
+ "hikari::adminHeader.login": "Login",
5
+ "hikari::adminHeader.toggleTheme": "Toggle theme",
6
+ "hikari::errorBoundary.title": "Component Error",
7
+ "hikari::errorBoundary.copyError": "Copy Error",
8
+ "hikari::errorBoundary.retry": "Retry",
9
+ "hikari::searchInput.placeholder": "Search…",
10
+ "hikari::searchInput.clear": "Clear search",
11
+ "hikari::keywordSearch.title": "Search",
12
+ "hikari::keywordSearch.placeholder": "Search…",
13
+ "hikari::keywordSearch.searching": "Searching…",
14
+ "hikari::keywordSearch.noMatches": "No matches",
15
+ "hikari::keywordSearch.clear": "Clear",
16
+ "hikari::dateTimePicker.pickDate": "Pick a date and time",
17
+ "hikari::dateTimePicker.today": "Today",
18
+ "hikari::dateTimePicker.hour": "Hour",
19
+ "hikari::dateTimePicker.minute": "Minute",
20
+ "hikari::dateTimePicker.back": "Back",
21
+ "hikari::dateTimePicker.prevYears": "Previous years",
22
+ "hikari::dateTimePicker.nextYears": "Next years",
23
+ "hikari::dateTimePicker.prevMonth": "Previous month",
24
+ "hikari::dateTimePicker.nextMonth": "Next month",
25
+ "hikari::modal.close": "Close",
26
+ "hikari::alert.close": "Close",
27
+ "hikari::drawer.close": "Close",
28
+ "hikari::breadcrumb.label": "Breadcrumb",
29
+ "hikari::logo.fallbackAlt": "Logo",
30
+ "hikari::table.noData": "No data",
31
+ "hikari::confirmDialog.cancel": "Cancel",
32
+ "hikari::confirmDialog.confirm": "Confirm",
33
+ "hikari::passwordInput.passwordEntered": "Password entered",
34
+ "hikari::passwordInput.allSelected": "All selected",
35
+ "hikari::passwordInput.capsLock": "Caps Lock is on",
36
+ "hikari::passwordInput.fullWidth": "Full-width characters not allowed",
37
+ "hikari::toast.copy": "Copy",
38
+ "hikari::toast.close": "Close",
39
+ "hikari::modal.auto": "Auto",
40
+ "hikari::scrollContainer.auto": "Auto",
41
+ "hikari::avatar.fallback": "?"
42
+ }
43
+ }
@@ -0,0 +1,40 @@
1
+ [components]
2
+ hk.adminHeader.logout = "Logout"
3
+ hk.adminHeader.login = "Login"
4
+ hk.adminHeader.toggleTheme = "Toggle theme"
5
+ hk.errorBoundary.title = "Component Error"
6
+ hk.errorBoundary.copyError = "Copy Error"
7
+ hk.errorBoundary.retry = "Retry"
8
+ hk.searchInput.placeholder = "Search…"
9
+ hk.searchInput.clear = "Clear search"
10
+ hk.keywordSearch.title = "Search"
11
+ hk.keywordSearch.placeholder = "Search…"
12
+ hk.keywordSearch.searching = "Searching…"
13
+ hk.keywordSearch.noMatches = "No matches"
14
+ hk.keywordSearch.clear = "Clear"
15
+ hk.dateTimePicker.pickDate = "Pick a date and time"
16
+ hk.dateTimePicker.today = "Today"
17
+ hk.dateTimePicker.hour = "Hour"
18
+ hk.dateTimePicker.minute = "Minute"
19
+ hk.dateTimePicker.back = "Back"
20
+ hk.dateTimePicker.prevYears = "Previous years"
21
+ hk.dateTimePicker.nextYears = "Next years"
22
+ hk.dateTimePicker.prevMonth = "Previous month"
23
+ hk.dateTimePicker.nextMonth = "Next month"
24
+ hk.modal.close = "Close"
25
+ hk.alert.close = "Close"
26
+ hk.drawer.close = "Close"
27
+ hk.breadcrumb.label = "Breadcrumb"
28
+ hk.logo.fallbackAlt = "Logo"
29
+ hk.table.noData = "No data"
30
+ hk.confirmDialog.cancel = "Cancel"
31
+ hk.confirmDialog.confirm = "Confirm"
32
+ hk.passwordInput.passwordEntered = "Password entered"
33
+ hk.passwordInput.allSelected = "All selected"
34
+ hk.passwordInput.capsLock = "Caps Lock is on"
35
+ hk.passwordInput.fullWidth = "Full-width characters not allowed"
36
+ hk.toast.copy = "Copy"
37
+ hk.toast.close = "Close"
38
+ hk.modal.auto = "Auto"
39
+ hk.scrollContainer.auto = "Auto"
40
+ hk.avatar.fallback = "?"
@@ -0,0 +1,43 @@
1
+ {
2
+ "components": {
3
+ "hikari::adminHeader.logout": "退出登录",
4
+ "hikari::adminHeader.login": "登录",
5
+ "hikari::adminHeader.toggleTheme": "切换主题",
6
+ "hikari::errorBoundary.title": "组件错误",
7
+ "hikari::errorBoundary.copyError": "复制错误",
8
+ "hikari::errorBoundary.retry": "重试",
9
+ "hikari::searchInput.placeholder": "搜索…",
10
+ "hikari::searchInput.clear": "清除搜索",
11
+ "hikari::keywordSearch.title": "搜索",
12
+ "hikari::keywordSearch.placeholder": "搜索…",
13
+ "hikari::keywordSearch.searching": "搜索中…",
14
+ "hikari::keywordSearch.noMatches": "无匹配结果",
15
+ "hikari::keywordSearch.clear": "清除",
16
+ "hikari::dateTimePicker.pickDate": "选择日期和时间",
17
+ "hikari::dateTimePicker.today": "今天",
18
+ "hikari::dateTimePicker.hour": "时",
19
+ "hikari::dateTimePicker.minute": "分",
20
+ "hikari::dateTimePicker.back": "返回",
21
+ "hikari::dateTimePicker.prevYears": "上一年",
22
+ "hikari::dateTimePicker.nextYears": "下一年",
23
+ "hikari::dateTimePicker.prevMonth": "上一月",
24
+ "hikari::dateTimePicker.nextMonth": "下一月",
25
+ "hikari::modal.close": "关闭",
26
+ "hikari::alert.close": "关闭",
27
+ "hikari::drawer.close": "关闭",
28
+ "hikari::breadcrumb.label": "面包屑导航",
29
+ "hikari::logo.fallbackAlt": "Logo",
30
+ "hikari::table.noData": "暂无数据",
31
+ "hikari::confirmDialog.cancel": "取消",
32
+ "hikari::confirmDialog.confirm": "确认",
33
+ "hikari::passwordInput.passwordEntered": "已输入密码",
34
+ "hikari::passwordInput.allSelected": "已全选",
35
+ "hikari::passwordInput.capsLock": "大写锁定已开启",
36
+ "hikari::passwordInput.fullWidth": "全角字符不可用",
37
+ "hikari::toast.copy": "复制",
38
+ "hikari::toast.close": "关闭",
39
+ "hikari::modal.auto": "自动",
40
+ "hikari::scrollContainer.auto": "自动",
41
+ "hikari::avatar.fallback": "?"
42
+ }
43
+ }
@@ -0,0 +1,40 @@
1
+ [components]
2
+ hk.adminHeader.logout = "退出登录"
3
+ hk.adminHeader.login = "登录"
4
+ hk.adminHeader.toggleTheme = "切换主题"
5
+ hk.errorBoundary.title = "组件错误"
6
+ hk.errorBoundary.copyError = "复制错误"
7
+ hk.errorBoundary.retry = "重试"
8
+ hk.searchInput.placeholder = "搜索…"
9
+ hk.searchInput.clear = "清除搜索"
10
+ hk.keywordSearch.title = "搜索"
11
+ hk.keywordSearch.placeholder = "搜索…"
12
+ hk.keywordSearch.searching = "搜索中…"
13
+ hk.keywordSearch.noMatches = "无匹配结果"
14
+ hk.keywordSearch.clear = "清除"
15
+ hk.dateTimePicker.pickDate = "选择日期和时间"
16
+ hk.dateTimePicker.today = "今天"
17
+ hk.dateTimePicker.hour = "时"
18
+ hk.dateTimePicker.minute = "分"
19
+ hk.dateTimePicker.back = "返回"
20
+ hk.dateTimePicker.prevYears = "上一年"
21
+ hk.dateTimePicker.nextYears = "下一年"
22
+ hk.dateTimePicker.prevMonth = "上一月"
23
+ hk.dateTimePicker.nextMonth = "下一月"
24
+ hk.modal.close = "关闭"
25
+ hk.alert.close = "关闭"
26
+ hk.drawer.close = "关闭"
27
+ hk.breadcrumb.label = "面包屑导航"
28
+ hk.logo.fallbackAlt = "Logo"
29
+ hk.table.noData = "暂无数据"
30
+ hk.confirmDialog.cancel = "取消"
31
+ hk.confirmDialog.confirm = "确认"
32
+ hk.passwordInput.passwordEntered = "已输入密码"
33
+ hk.passwordInput.allSelected = "已全选"
34
+ hk.passwordInput.capsLock = "大写锁定已开启"
35
+ hk.passwordInput.fullWidth = "全角字符不可用"
36
+ hk.toast.copy = "复制"
37
+ hk.toast.close = "关闭"
38
+ hk.modal.auto = "自动"
39
+ hk.scrollContainer.auto = "自动"
40
+ hk.avatar.fallback = "?"
@@ -0,0 +1,43 @@
1
+ {
2
+ "components": {
3
+ "hikari::adminHeader.logout": "登出",
4
+ "hikari::adminHeader.login": "登入",
5
+ "hikari::adminHeader.toggleTheme": "切換主題",
6
+ "hikari::errorBoundary.title": "元件錯誤",
7
+ "hikari::errorBoundary.copyError": "複製錯誤",
8
+ "hikari::errorBoundary.retry": "重試",
9
+ "hikari::searchInput.placeholder": "搜尋…",
10
+ "hikari::searchInput.clear": "清除搜尋",
11
+ "hikari::keywordSearch.title": "搜尋",
12
+ "hikari::keywordSearch.placeholder": "搜尋…",
13
+ "hikari::keywordSearch.searching": "搜尋中…",
14
+ "hikari::keywordSearch.noMatches": "無匹配結果",
15
+ "hikari::keywordSearch.clear": "清除",
16
+ "hikari::dateTimePicker.pickDate": "選擇日期和時間",
17
+ "hikari::dateTimePicker.today": "今天",
18
+ "hikari::dateTimePicker.hour": "時",
19
+ "hikari::dateTimePicker.minute": "分",
20
+ "hikari::dateTimePicker.back": "返回",
21
+ "hikari::dateTimePicker.prevYears": "上一年",
22
+ "hikari::dateTimePicker.nextYears": "下一年",
23
+ "hikari::dateTimePicker.prevMonth": "上一月",
24
+ "hikari::dateTimePicker.nextMonth": "下一月",
25
+ "hikari::modal.close": "關閉",
26
+ "hikari::alert.close": "關閉",
27
+ "hikari::drawer.close": "關閉",
28
+ "hikari::breadcrumb.label": "麵包屑導航",
29
+ "hikari::logo.fallbackAlt": "Logo",
30
+ "hikari::table.noData": "暫無數據",
31
+ "hikari::confirmDialog.cancel": "取消",
32
+ "hikari::confirmDialog.confirm": "確認",
33
+ "hikari::passwordInput.passwordEntered": "已輸入密碼",
34
+ "hikari::passwordInput.allSelected": "已全選",
35
+ "hikari::passwordInput.capsLock": "大寫鎖定已開啟",
36
+ "hikari::passwordInput.fullWidth": "全形字元不可用",
37
+ "hikari::toast.copy": "複製",
38
+ "hikari::toast.close": "關閉",
39
+ "hikari::modal.auto": "自動",
40
+ "hikari::scrollContainer.auto": "自動",
41
+ "hikari::avatar.fallback": "?"
42
+ }
43
+ }
@@ -0,0 +1,40 @@
1
+ [components]
2
+ hk.adminHeader.logout = "登出"
3
+ hk.adminHeader.login = "登入"
4
+ hk.adminHeader.toggleTheme = "切換主題"
5
+ hk.errorBoundary.title = "元件錯誤"
6
+ hk.errorBoundary.copyError = "複製錯誤"
7
+ hk.errorBoundary.retry = "重試"
8
+ hk.searchInput.placeholder = "搜尋…"
9
+ hk.searchInput.clear = "清除搜尋"
10
+ hk.keywordSearch.title = "搜尋"
11
+ hk.keywordSearch.placeholder = "搜尋…"
12
+ hk.keywordSearch.searching = "搜尋中…"
13
+ hk.keywordSearch.noMatches = "無匹配結果"
14
+ hk.keywordSearch.clear = "清除"
15
+ hk.dateTimePicker.pickDate = "選擇日期和時間"
16
+ hk.dateTimePicker.today = "今天"
17
+ hk.dateTimePicker.hour = "時"
18
+ hk.dateTimePicker.minute = "分"
19
+ hk.dateTimePicker.back = "返回"
20
+ hk.dateTimePicker.prevYears = "上一年"
21
+ hk.dateTimePicker.nextYears = "下一年"
22
+ hk.dateTimePicker.prevMonth = "上一月"
23
+ hk.dateTimePicker.nextMonth = "下一月"
24
+ hk.modal.close = "關閉"
25
+ hk.alert.close = "關閉"
26
+ hk.drawer.close = "關閉"
27
+ hk.breadcrumb.label = "麵包屑導航"
28
+ hk.logo.fallbackAlt = "Logo"
29
+ hk.table.noData = "暫無數據"
30
+ hk.confirmDialog.cancel = "取消"
31
+ hk.confirmDialog.confirm = "確認"
32
+ hk.passwordInput.passwordEntered = "已輸入密碼"
33
+ hk.passwordInput.allSelected = "已全選"
34
+ hk.passwordInput.capsLock = "大寫鎖定已開啟"
35
+ hk.passwordInput.fullWidth = "全形字元不可用"
36
+ hk.toast.copy = "複製"
37
+ hk.toast.close = "關閉"
38
+ hk.modal.auto = "自動"
39
+ hk.scrollContainer.auto = "自動"
40
+ hk.avatar.fallback = "?"
package/src/index.ts ADDED
@@ -0,0 +1,137 @@
1
+ export { default as HActionBar } from "./components/HkActionBar";
2
+ export { default as HAlert } from "./components/HkAlert";
3
+ export { default as HAvatar } from "./components/HkAvatar";
4
+ export { default as HBadge } from "./components/HkBadge";
5
+ export { default as HBreadcrumb } from "./components/HkBreadcrumb";
6
+ export { default as HButton } from "./components/HkButton";
7
+ export { default as HCard } from "./components/HkCard";
8
+ export { default as HCheckbox } from "./components/HkCheckbox";
9
+ export { default as HCollapse } from "./components/HkCollapse";
10
+ export { default as HColorPicker } from "./components/HkColorPicker";
11
+ export { default as HConfirmDialog } from "./components/HkConfirmDialog";
12
+ export { default as HDivider } from "./components/HkDivider";
13
+ export { default as HDrawer } from "./components/HkDrawer";
14
+ export { default as HEmptyState } from "./components/HkEmptyState";
15
+ export { default as HIcon } from "./components/HkIcon";
16
+ export { default as HIconButton } from "./components/HkIconButton";
17
+ export { default as HInput } from "./components/HkInput";
18
+ export { default as HKbd } from "./components/HkKbd";
19
+ export { default as HListTransition } from "./components/HkListTransition";
20
+ export { default as HMarkdownRenderer } from "./components/HkMarkdownRenderer";
21
+ export { default as HModal } from "./components/HkModal";
22
+ export { default as HMorphingTabs } from "./components/HkMorphingTabs";
23
+ export { default as HNavItem } from "./components/HkNavItem";
24
+ export { default as HNumberInput } from "./components/HkNumberInput";
25
+ export { default as HPasswordInput } from "./components/HkPasswordInput";
26
+ export { default as HPhaseTransition } from "./components/HkPhaseTransition";
27
+ export { default as HGaugeRing } from "./components/HkGaugeRing";
28
+ export { default as HProgressRing } from "./components/HkProgressRing";
29
+ export { default as HRollingNumber } from "./components/HkRollingNumber";
30
+ export { default as HLocalePickerPopup } from "./components/HkLocalePickerPopup";
31
+ export { default as HHoverRevealAction } from "./components/HkHoverRevealAction";
32
+ export { default as HKeywordSearchModal } from "./components/HkKeywordSearchModal";
33
+ export { default as HModalBreadcrumb } from "./components/HkModalBreadcrumb";
34
+ export { default as HPopover, type PopupPlacement } from "./components/HkPopover";
35
+ export { default as HPopupSelect, isAnyPopupOpen, closeAllPopups, type HkPopupSelectOption } from "./components/HkPopupSelect";
36
+ export { default as HProgressBar } from "./components/HkProgressBar";
37
+ export { default as HProgressDialog } from "./components/HkProgressDialog";
38
+ export { default as HRadio } from "./components/HkRadio";
39
+ export { default as HScrollContainer } from "./components/HkScrollContainer";
40
+ export { default as HSearchInput } from "./components/HkSearchInput";
41
+ export { default as HSplash } from "./components/HkSplash";
42
+ export { default as HSelect } from "./components/HkSelect";
43
+ export { default as HSidebar } from "./components/HkSidebar";
44
+ export { default as HSkeleton } from "./components/HkSkeleton";
45
+ export { default as HSkeletonList } from "./components/HkSkeletonList";
46
+ export { default as HSpinner } from "./components/HkSpinner";
47
+ export { default as HSwitch } from "./components/HkSwitch";
48
+ export { default as HTable } from "./components/HkTable";
49
+ export { default as HTabs } from "./components/HkTabs";
50
+ export { default as HTag } from "./components/HkTag";
51
+ export { default as HTextarea } from "./components/HkTextarea";
52
+ export { default as HToast } from "./components/HkToast";
53
+ export { default as HTooltip } from "./components/HkTooltip";
54
+ export { default as HTree } from "./components/HkTree";
55
+ export { default as HWindowedItem } from "./components/HkWindowedItem";
56
+ export { default as HDateTimePicker } from "./components/HkDateTimePicker";
57
+ export { default as HTimeline } from "./components/HkTimeline";
58
+
59
+ // Media player kit
60
+ export { default as HMediaPlayer, MEDIA_RATES } from "./components/HkMediaPlayer";
61
+ export { default as HMediaControlBar, formatMediaTime } from "./components/HkMediaControlBar";
62
+ export { default as HMediaSlider } from "./components/HkMediaSlider";
63
+ export { default as HMediaVisualizer } from "./components/HkMediaVisualizer";
64
+
65
+ // Image viewer kit
66
+ export { default as HImageViewer } from "./components/HkImageViewer";
67
+ export { default as HZoomToolbar } from "./components/HkZoomToolbar";
68
+ export { default as HMinimap } from "./components/HkMinimap";
69
+
70
+ // Charts
71
+ export { default as HTrendChart } from "./components/HkTrendChart";
72
+
73
+ export { default as HErrorBoundary } from "./components/HkErrorBoundary";
74
+ export { default as HDraggableList } from "./components/HkDraggableList";
75
+ export { default as HDraggableGrid } from "./components/HkDraggableGrid";
76
+ export { default as HSelectionGrid } from "./components/HkSelectionGrid";
77
+ export { default as HSelectionWaterfall } from "./components/HkSelectionWaterfall";
78
+
79
+ export { default as HLogo } from "./components/HkLogo";
80
+
81
+ // Component types
82
+ export { type BadgeVariant } from "./components/HkBadge";
83
+ export { type ModalAction } from "./components/HkModal";
84
+ export { type TreeNode, type TreeSize, type TreeRowScope } from "./components/HkTree";
85
+ export { type DragListItem } from "./components/HkDraggableList";
86
+ export { type GridItem } from "./components/HkDraggableGrid";
87
+ export { type MinimapBox, type MinimapRect } from "./components/HkMinimap";
88
+ export { type TrendPen, type TrendPoint, type AlarmThresholds } from "./components/HkTrendChart";
89
+
90
+ // Theme system
91
+ export {
92
+ initTheme, useTheme, themePresets, tokensToCSSVars,
93
+ type ThemeTokenRGB, type ThemeSchemeTokens, type ThemePreset, type ThemeMode, type ThemeId,
94
+ } from "./theme";
95
+
96
+ // Runtime systems
97
+ export {
98
+ onFrame,
99
+ onceFrame,
100
+ scheduleFrame,
101
+ scheduleEvery,
102
+ scheduleAfter,
103
+ scheduleCron,
104
+ scheduleCronAfter,
105
+ setReducedMotion,
106
+ notifyScrollStart,
107
+ useOverlay,
108
+ usePopupManager,
109
+ useToast,
110
+ useConfirm,
111
+ useBreakpoint,
112
+ useClipboard,
113
+ useAsyncData,
114
+ closeAll,
115
+ isOverlayOpen,
116
+ TOAST_DURATION,
117
+ type AnimationHandle,
118
+ useReportedTransition,
119
+ type ReportedTransition,
120
+ type ReportedTransitionTrack,
121
+ type CronHandle,
122
+ type FrameContext,
123
+ type OverlayHandle,
124
+ type PopupHandle,
125
+ type PopupKind,
126
+ type ToastItem,
127
+ type ToastMessage,
128
+ type ToastType,
129
+ type UseAsyncDataReturn,
130
+ } from "./runtime";
131
+
132
+ // i18n
133
+ export {
134
+ useI18n,
135
+ setLocale,
136
+ mergeMessages,
137
+ } from "./i18n/context";
package/src/render.ts ADDED
@@ -0,0 +1,18 @@
1
+ import { createApp } from 'vue'
2
+ import { initTheme } from './theme/useTheme'
3
+ import * as hikari from './index'
4
+ import './demo.scss'
5
+
6
+ localStorage.setItem('hikari-theme', 'tokyonight')
7
+ initTheme()
8
+
9
+ const tpl = new URLSearchParams(location.search).get('tpl') || (window as any).__TEMPLATE__ || '<div style="padding:1rem;color:var(--fg-sec)">No template provided</div>'
10
+
11
+ const app = createApp({ template: tpl })
12
+ // Register all hikari components globally
13
+ for (const [name, comp] of Object.entries(hikari)) {
14
+ if (name.startsWith('H') && typeof comp === 'object') {
15
+ app.component(name, comp as any)
16
+ }
17
+ }
18
+ app.mount('#app')