@kjun-ui/native 0.0.0-stage → 0.3.1

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 (227) hide show
  1. package/README.md +44 -2
  2. package/dist/LICENSE +21 -0
  3. package/dist/Tabler-LICENSE +21 -0
  4. package/dist/index.cjs +9683 -0
  5. package/dist/index.d.cts +1 -0
  6. package/dist/index.d.ts +1 -0
  7. package/dist/index.js +9818 -0
  8. package/dist/index.web.cjs +9938 -0
  9. package/dist/index.web.js +10073 -0
  10. package/dist/styles.css +7695 -0
  11. package/dist/types/packages/native/src/a11y.d.cts +7 -0
  12. package/dist/types/packages/native/src/a11y.d.ts +7 -0
  13. package/dist/types/packages/native/src/actions.d.cts +58 -0
  14. package/dist/types/packages/native/src/actions.d.ts +58 -0
  15. package/dist/types/packages/native/src/alert-actions-context.d.cts +1 -0
  16. package/dist/types/packages/native/src/alert-actions-context.d.ts +1 -0
  17. package/dist/types/packages/native/src/app-navigation.d.cts +36 -0
  18. package/dist/types/packages/native/src/app-navigation.d.ts +36 -0
  19. package/dist/types/packages/native/src/bottom-action-bar-context.d.cts +1 -0
  20. package/dist/types/packages/native/src/bottom-action-bar-context.d.ts +1 -0
  21. package/dist/types/packages/native/src/button-group-motion.d.cts +17 -0
  22. package/dist/types/packages/native/src/button-group-motion.d.ts +17 -0
  23. package/dist/types/packages/native/src/button.d.cts +25 -0
  24. package/dist/types/packages/native/src/button.d.ts +25 -0
  25. package/dist/types/packages/native/src/card-actions-context.d.cts +1 -0
  26. package/dist/types/packages/native/src/card-actions-context.d.ts +1 -0
  27. package/dist/types/packages/native/src/card.d.cts +21 -0
  28. package/dist/types/packages/native/src/card.d.ts +21 -0
  29. package/dist/types/packages/native/src/chip.d.cts +10 -0
  30. package/dist/types/packages/native/src/chip.d.ts +10 -0
  31. package/dist/types/packages/native/src/choice-accessibility.d.cts +4 -0
  32. package/dist/types/packages/native/src/choice-accessibility.d.ts +4 -0
  33. package/dist/types/packages/native/src/choice-controls.d.cts +60 -0
  34. package/dist/types/packages/native/src/choice-controls.d.ts +60 -0
  35. package/dist/types/packages/native/src/collapse.d.cts +5 -0
  36. package/dist/types/packages/native/src/collapse.d.ts +5 -0
  37. package/dist/types/packages/native/src/combobox.d.cts +48 -0
  38. package/dist/types/packages/native/src/combobox.d.ts +48 -0
  39. package/dist/types/packages/native/src/compound-control.d.cts +14 -0
  40. package/dist/types/packages/native/src/compound-control.d.ts +14 -0
  41. package/dist/types/packages/native/src/controls.d.cts +6 -0
  42. package/dist/types/packages/native/src/controls.d.ts +6 -0
  43. package/dist/types/packages/native/src/data-state-context.d.cts +1 -0
  44. package/dist/types/packages/native/src/data-state-context.d.ts +1 -0
  45. package/dist/types/packages/native/src/data-state.d.cts +53 -0
  46. package/dist/types/packages/native/src/data-state.d.ts +53 -0
  47. package/dist/types/packages/native/src/date-picker.d.cts +14 -0
  48. package/dist/types/packages/native/src/date-picker.d.ts +14 -0
  49. package/dist/types/packages/native/src/display-primitives.d.cts +50 -0
  50. package/dist/types/packages/native/src/display-primitives.d.ts +50 -0
  51. package/dist/types/packages/native/src/display.d.cts +6 -0
  52. package/dist/types/packages/native/src/display.d.ts +6 -0
  53. package/dist/types/packages/native/src/drawer.d.cts +18 -0
  54. package/dist/types/packages/native/src/drawer.d.ts +18 -0
  55. package/dist/types/packages/native/src/dropdown.d.cts +39 -0
  56. package/dist/types/packages/native/src/dropdown.d.ts +39 -0
  57. package/dist/types/packages/native/src/feedback-context.d.cts +3 -0
  58. package/dist/types/packages/native/src/feedback-context.d.ts +3 -0
  59. package/dist/types/packages/native/src/feedback.d.cts +7 -0
  60. package/dist/types/packages/native/src/feedback.d.ts +7 -0
  61. package/dist/types/packages/native/src/field-clear.d.cts +8 -0
  62. package/dist/types/packages/native/src/field-clear.d.ts +8 -0
  63. package/dist/types/packages/native/src/field-surface.d.cts +86 -0
  64. package/dist/types/packages/native/src/field-surface.d.ts +86 -0
  65. package/dist/types/packages/native/src/financial-display.d.cts +87 -0
  66. package/dist/types/packages/native/src/financial-display.d.ts +87 -0
  67. package/dist/types/packages/native/src/financial.d.cts +4 -0
  68. package/dist/types/packages/native/src/financial.d.ts +4 -0
  69. package/dist/types/packages/native/src/floating-panel.d.cts +31 -0
  70. package/dist/types/packages/native/src/floating-panel.d.ts +31 -0
  71. package/dist/types/packages/native/src/form-actions-context.d.cts +3 -0
  72. package/dist/types/packages/native/src/form-actions-context.d.ts +3 -0
  73. package/dist/types/packages/native/src/index.d.cts +39 -0
  74. package/dist/types/packages/native/src/index.d.ts +39 -0
  75. package/dist/types/packages/native/src/input.d.cts +44 -0
  76. package/dist/types/packages/native/src/input.d.ts +44 -0
  77. package/dist/types/packages/native/src/internal.d.cts +7 -0
  78. package/dist/types/packages/native/src/internal.d.ts +7 -0
  79. package/dist/types/packages/native/src/kpi-hero.d.cts +35 -0
  80. package/dist/types/packages/native/src/kpi-hero.d.ts +35 -0
  81. package/dist/types/packages/native/src/kpi-number-line.d.cts +12 -0
  82. package/dist/types/packages/native/src/kpi-number-line.d.ts +12 -0
  83. package/dist/types/packages/native/src/kpi-row.d.cts +32 -0
  84. package/dist/types/packages/native/src/kpi-row.d.ts +32 -0
  85. package/dist/types/packages/native/src/kpi.d.cts +4 -0
  86. package/dist/types/packages/native/src/kpi.d.ts +4 -0
  87. package/dist/types/packages/native/src/layer-backdrop.d.cts +6 -0
  88. package/dist/types/packages/native/src/layer-backdrop.d.ts +6 -0
  89. package/dist/types/packages/native/src/layers.d.cts +8 -0
  90. package/dist/types/packages/native/src/layers.d.ts +8 -0
  91. package/dist/types/packages/native/src/list.d.cts +21 -0
  92. package/dist/types/packages/native/src/list.d.ts +21 -0
  93. package/dist/types/packages/native/src/market-cards.d.cts +2 -0
  94. package/dist/types/packages/native/src/market-cards.d.ts +2 -0
  95. package/dist/types/packages/native/src/market-layout.d.cts +10 -0
  96. package/dist/types/packages/native/src/market-layout.d.ts +10 -0
  97. package/dist/types/packages/native/src/market-list.d.cts +2 -0
  98. package/dist/types/packages/native/src/market-list.d.ts +2 -0
  99. package/dist/types/packages/native/src/market-model.d.cts +109 -0
  100. package/dist/types/packages/native/src/market-model.d.ts +109 -0
  101. package/dist/types/packages/native/src/market-panel.d.cts +5 -0
  102. package/dist/types/packages/native/src/market-panel.d.ts +5 -0
  103. package/dist/types/packages/native/src/market-parts.d.cts +10 -0
  104. package/dist/types/packages/native/src/market-parts.d.ts +10 -0
  105. package/dist/types/packages/native/src/market-skeleton.d.cts +11 -0
  106. package/dist/types/packages/native/src/market-skeleton.d.ts +11 -0
  107. package/dist/types/packages/native/src/market-table.d.cts +2 -0
  108. package/dist/types/packages/native/src/market-table.d.ts +2 -0
  109. package/dist/types/packages/native/src/market.d.cts +7 -0
  110. package/dist/types/packages/native/src/market.d.ts +7 -0
  111. package/dist/types/packages/native/src/media.d.cts +27 -0
  112. package/dist/types/packages/native/src/media.d.ts +27 -0
  113. package/dist/types/packages/native/src/modal-window.d.cts +5 -0
  114. package/dist/types/packages/native/src/modal-window.d.ts +5 -0
  115. package/dist/types/packages/native/src/modal.d.cts +46 -0
  116. package/dist/types/packages/native/src/modal.d.ts +46 -0
  117. package/dist/types/packages/native/src/motion.d.cts +18 -0
  118. package/dist/types/packages/native/src/motion.d.ts +18 -0
  119. package/dist/types/packages/native/src/navigation.d.cts +45 -0
  120. package/dist/types/packages/native/src/navigation.d.ts +45 -0
  121. package/dist/types/packages/native/src/number-display.d.cts +49 -0
  122. package/dist/types/packages/native/src/number-display.d.ts +49 -0
  123. package/dist/types/packages/native/src/overlay-host.d.cts +9 -0
  124. package/dist/types/packages/native/src/overlay-host.d.ts +9 -0
  125. package/dist/types/packages/native/src/popover.d.cts +24 -0
  126. package/dist/types/packages/native/src/popover.d.ts +24 -0
  127. package/dist/types/packages/native/src/provider.d.cts +20 -0
  128. package/dist/types/packages/native/src/provider.d.ts +20 -0
  129. package/dist/types/packages/native/src/quantity-stepper.d.cts +18 -0
  130. package/dist/types/packages/native/src/quantity-stepper.d.ts +18 -0
  131. package/dist/types/packages/native/src/range-input.d.cts +31 -0
  132. package/dist/types/packages/native/src/range-input.d.ts +31 -0
  133. package/dist/types/packages/native/src/search-input.d.cts +21 -0
  134. package/dist/types/packages/native/src/search-input.d.ts +21 -0
  135. package/dist/types/packages/native/src/select-control.d.cts +30 -0
  136. package/dist/types/packages/native/src/select-control.d.ts +30 -0
  137. package/dist/types/packages/native/src/select-options.d.cts +13 -0
  138. package/dist/types/packages/native/src/select-options.d.ts +13 -0
  139. package/dist/types/packages/native/src/select.d.cts +10 -0
  140. package/dist/types/packages/native/src/select.d.ts +10 -0
  141. package/dist/types/packages/native/src/selection-groups.d.cts +22 -0
  142. package/dist/types/packages/native/src/selection-groups.d.ts +22 -0
  143. package/dist/types/packages/native/src/skeleton-base.d.cts +11 -0
  144. package/dist/types/packages/native/src/skeleton-base.d.ts +11 -0
  145. package/dist/types/packages/native/src/skeletons.d.cts +28 -0
  146. package/dist/types/packages/native/src/skeletons.d.ts +28 -0
  147. package/dist/types/packages/native/src/table-cards.d.cts +2 -0
  148. package/dist/types/packages/native/src/table-cards.d.ts +2 -0
  149. package/dist/types/packages/native/src/table-grid.d.cts +2 -0
  150. package/dist/types/packages/native/src/table-grid.d.ts +2 -0
  151. package/dist/types/packages/native/src/table-model.d.cts +20 -0
  152. package/dist/types/packages/native/src/table-model.d.ts +20 -0
  153. package/dist/types/packages/native/src/table-toolbar.d.cts +2 -0
  154. package/dist/types/packages/native/src/table-toolbar.d.ts +2 -0
  155. package/dist/types/packages/native/src/table-view.d.cts +2 -0
  156. package/dist/types/packages/native/src/table-view.d.ts +2 -0
  157. package/dist/types/packages/native/src/table.d.cts +3 -0
  158. package/dist/types/packages/native/src/table.d.ts +3 -0
  159. package/dist/types/packages/native/src/tabs-accessibility.d.cts +4 -0
  160. package/dist/types/packages/native/src/tabs-accessibility.d.ts +4 -0
  161. package/dist/types/packages/native/src/tabs.d.cts +31 -0
  162. package/dist/types/packages/native/src/tabs.d.ts +31 -0
  163. package/dist/types/packages/native/src/textarea.d.cts +12 -0
  164. package/dist/types/packages/native/src/textarea.d.ts +12 -0
  165. package/dist/types/packages/native/src/time-picker.d.cts +17 -0
  166. package/dist/types/packages/native/src/time-picker.d.ts +17 -0
  167. package/dist/types/packages/native/src/toast-reflow.d.cts +3 -0
  168. package/dist/types/packages/native/src/toast-reflow.d.ts +3 -0
  169. package/dist/types/packages/native/src/toast-stack.d.cts +6 -0
  170. package/dist/types/packages/native/src/toast-stack.d.ts +6 -0
  171. package/dist/types/packages/native/src/toast.d.cts +5 -0
  172. package/dist/types/packages/native/src/toast.d.ts +5 -0
  173. package/dist/types/packages/native/src/top-navigation-context.d.cts +5 -0
  174. package/dist/types/packages/native/src/top-navigation-context.d.ts +5 -0
  175. package/dist/types/packages/native/src/typography.d.cts +20 -0
  176. package/dist/types/packages/native/src/typography.d.ts +20 -0
  177. package/dist/types/shared/package-runtime/action-size.d.cts +5 -0
  178. package/dist/types/shared/package-runtime/action-size.d.ts +5 -0
  179. package/dist/types/shared/package-runtime/alert-action-size.d.cts +5 -0
  180. package/dist/types/shared/package-runtime/alert-action-size.d.ts +5 -0
  181. package/dist/types/shared/package-runtime/combobox.d.cts +21 -0
  182. package/dist/types/shared/package-runtime/combobox.d.ts +21 -0
  183. package/dist/types/shared/package-runtime/component-icons.d.cts +2 -0
  184. package/dist/types/shared/package-runtime/component-icons.d.ts +2 -0
  185. package/dist/types/shared/package-runtime/content-presence.d.cts +3 -0
  186. package/dist/types/shared/package-runtime/content-presence.d.ts +3 -0
  187. package/dist/types/shared/package-runtime/elevation.d.cts +10 -0
  188. package/dist/types/shared/package-runtime/elevation.d.ts +10 -0
  189. package/dist/types/shared/package-runtime/feedback-dialog.d.cts +10 -0
  190. package/dist/types/shared/package-runtime/feedback-dialog.d.ts +10 -0
  191. package/dist/types/shared/package-runtime/feedback-motion.d.cts +11 -0
  192. package/dist/types/shared/package-runtime/feedback-motion.d.ts +11 -0
  193. package/dist/types/shared/package-runtime/form-actions.d.cts +3 -0
  194. package/dist/types/shared/package-runtime/form-actions.d.ts +3 -0
  195. package/dist/types/shared/package-runtime/icon-context.d.cts +14 -0
  196. package/dist/types/shared/package-runtime/icon-context.d.ts +14 -0
  197. package/dist/types/shared/package-runtime/icon-registry.d.cts +10 -0
  198. package/dist/types/shared/package-runtime/icon-registry.d.ts +10 -0
  199. package/dist/types/shared/package-runtime/layer-keyboard.d.cts +3 -0
  200. package/dist/types/shared/package-runtime/layer-keyboard.d.ts +3 -0
  201. package/dist/types/shared/package-runtime/layer-state.d.cts +40 -0
  202. package/dist/types/shared/package-runtime/layer-state.d.ts +40 -0
  203. package/dist/types/shared/package-runtime/market-cards.d.cts +44 -0
  204. package/dist/types/shared/package-runtime/market-cards.d.ts +44 -0
  205. package/dist/types/shared/package-runtime/market-layout.d.cts +40 -0
  206. package/dist/types/shared/package-runtime/market-layout.d.ts +40 -0
  207. package/dist/types/shared/package-runtime/navigation.d.cts +6 -0
  208. package/dist/types/shared/package-runtime/navigation.d.ts +6 -0
  209. package/dist/types/shared/package-runtime/number-motion.d.cts +4 -0
  210. package/dist/types/shared/package-runtime/number-motion.d.ts +4 -0
  211. package/dist/types/shared/package-runtime/options.d.cts +34 -0
  212. package/dist/types/shared/package-runtime/options.d.ts +34 -0
  213. package/dist/types/shared/package-runtime/relative-time.d.cts +1 -0
  214. package/dist/types/shared/package-runtime/relative-time.d.ts +1 -0
  215. package/dist/types/shared/package-runtime/search-input.d.cts +20 -0
  216. package/dist/types/shared/package-runtime/search-input.d.ts +20 -0
  217. package/dist/types/shared/package-runtime/select.d.cts +10 -0
  218. package/dist/types/shared/package-runtime/select.d.ts +10 -0
  219. package/dist/types/shared/package-runtime/table-presentation.d.cts +56 -0
  220. package/dist/types/shared/package-runtime/table-presentation.d.ts +56 -0
  221. package/dist/types/shared/package-runtime/table.d.cts +96 -0
  222. package/dist/types/shared/package-runtime/table.d.ts +96 -0
  223. package/dist/types/shared/package-runtime/use-layer.d.cts +64 -0
  224. package/dist/types/shared/package-runtime/use-layer.d.ts +64 -0
  225. package/dist/types/shared/package-runtime/use-number-motion.d.cts +1 -0
  226. package/dist/types/shared/package-runtime/use-number-motion.d.ts +1 -0
  227. package/package.json +62 -4
@@ -0,0 +1,8 @@
1
+ export { DsDrawer } from "./drawer.js";
2
+ export type { DsDrawerProps } from "./drawer.js";
3
+ export { DsDropdown, DsDropdownDivider, DsDropdownItem, DsMenuButton } from "./dropdown.js";
4
+ export type { DsDropdownItemProps, DsDropdownProps, DsMenuButtonProps } from "./dropdown.js";
5
+ export { FloatingPanel } from "./floating-panel.js";
6
+ export type { Placement } from "./floating-panel.js";
7
+ export { DsPopover, DsTooltip } from "./popover.js";
8
+ export type { DsPopoverProps, DsTooltipProps } from "./popover.js";
@@ -0,0 +1,21 @@
1
+ import { type ReactNode } from "react";
2
+ import { type GestureResponderEvent } from "react-native";
3
+ export interface DsListRowProps {
4
+ title: string;
5
+ description?: string;
6
+ leading?: ReactNode;
7
+ trailing?: ReactNode;
8
+ actions?: ReactNode;
9
+ href?: string;
10
+ disabled?: boolean;
11
+ onPress?: (event: GestureResponderEvent) => void;
12
+ }
13
+ export declare function DsListRow({ title, description, leading, trailing, actions, href, disabled, onPress }: DsListRowProps): import("react/jsx-runtime").JSX.Element;
14
+ export interface DsListSectionProps {
15
+ title?: string;
16
+ description?: string;
17
+ actions?: ReactNode;
18
+ children: ReactNode;
19
+ ariaLabel?: string;
20
+ }
21
+ export declare function DsListSection({ title, description, actions, children, ariaLabel }: DsListSectionProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,21 @@
1
+ import { type ReactNode } from "react";
2
+ import { type GestureResponderEvent } from "react-native";
3
+ export interface DsListRowProps {
4
+ title: string;
5
+ description?: string;
6
+ leading?: ReactNode;
7
+ trailing?: ReactNode;
8
+ actions?: ReactNode;
9
+ href?: string;
10
+ disabled?: boolean;
11
+ onPress?: (event: GestureResponderEvent) => void;
12
+ }
13
+ export declare function DsListRow({ title, description, leading, trailing, actions, href, disabled, onPress }: DsListRowProps): import("react/jsx-runtime").JSX.Element;
14
+ export interface DsListSectionProps {
15
+ title?: string;
16
+ description?: string;
17
+ actions?: ReactNode;
18
+ children: ReactNode;
19
+ ariaLabel?: string;
20
+ }
21
+ export declare function DsListSection({ title, description, actions, children, ariaLabel }: DsListSectionProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { DsMarketCardsProps } from "./market-model.cjs";
2
+ export declare function DsMarketCards<Row extends object = Record<string, unknown>>(props: DsMarketCardsProps<Row>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { DsMarketCardsProps } from "./market-model.js";
2
+ export declare function DsMarketCards<Row extends object = Record<string, unknown>>(props: DsMarketCardsProps<Row>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,10 @@
1
+ import { type LayoutChangeEvent, type ViewStyle } from "react-native";
2
+ import { type LayoutColumn, marketGeometry } from "../../../shared/package-runtime/market-layout.cjs";
3
+ export { marketGeometry };
4
+ export declare function useMarketLayout(columns: LayoutColumn[], showActions: boolean): {
5
+ onLayout: (event: LayoutChangeEvent) => void;
6
+ widths: number[];
7
+ width: number;
8
+ };
9
+ export declare const marketHeaderStyle: ViewStyle;
10
+ export declare const marketRowStyle: ViewStyle;
@@ -0,0 +1,10 @@
1
+ import { type LayoutChangeEvent, type ViewStyle } from "react-native";
2
+ import { type LayoutColumn, marketGeometry } from "../../../shared/package-runtime/market-layout.js";
3
+ export { marketGeometry };
4
+ export declare function useMarketLayout(columns: LayoutColumn[], showActions: boolean): {
5
+ onLayout: (event: LayoutChangeEvent) => void;
6
+ widths: number[];
7
+ width: number;
8
+ };
9
+ export declare const marketHeaderStyle: ViewStyle;
10
+ export declare const marketRowStyle: ViewStyle;
@@ -0,0 +1,2 @@
1
+ import { DsMarketSimpleListProps } from "./market-model.cjs";
2
+ export declare function DsMarketSimpleList<Row extends object = Record<string, unknown>>(props: DsMarketSimpleListProps<Row>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { DsMarketSimpleListProps } from "./market-model.js";
2
+ export declare function DsMarketSimpleList<Row extends object = Record<string, unknown>>(props: DsMarketSimpleListProps<Row>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,109 @@
1
+ import { type QueryDisplayProps } from "@kjun-ui/tokens";
2
+ import { type ReactNode } from "react";
3
+ import { type MarketCardsModelProps, type MarketMetric } from "../../../shared/package-runtime/market-cards.cjs";
4
+ export type { MarketMetric } from "../../../shared/package-runtime/market-cards.cjs";
5
+ export interface MarketPagination {
6
+ page: number;
7
+ size: number;
8
+ total: number;
9
+ }
10
+ export interface MarketBaseProps<Row extends object> extends QueryDisplayProps {
11
+ rows?: Row[];
12
+ rowKey?: string;
13
+ interestKeys?: ReadonlySet<unknown>;
14
+ favoriteKeys?: ReadonlySet<unknown>;
15
+ pagination?: MarketPagination | null;
16
+ primaryLabel?: (row: Row) => string;
17
+ subMeta?: (row: Row) => string;
18
+ emptyMessage?: string;
19
+ emptySubMessage?: string;
20
+ showFooter?: boolean;
21
+ calculatedAt?: string | null;
22
+ footerNote?: string;
23
+ totalCount?: number;
24
+ unitLabel?: string;
25
+ formatDate?: (value: string) => string;
26
+ renderIdentity?: (row: Row, content: ReactNode) => ReactNode;
27
+ renderNamePrefix?: (row: Row) => ReactNode;
28
+ renderNameSuffix?: (row: Row) => ReactNode;
29
+ renderSubMeta?: (row: Row) => ReactNode;
30
+ onPageChange?: (page: number) => void;
31
+ onRowClick?: (row: Row) => void;
32
+ onRetry?: () => void;
33
+ }
34
+ export interface MarketColumn {
35
+ key: string;
36
+ label: string;
37
+ type?: string;
38
+ align?: "left" | "right" | "center";
39
+ width?: number | string;
40
+ sortable?: boolean;
41
+ defaultSort?: boolean;
42
+ flash?: "price" | "change";
43
+ weight?: string;
44
+ }
45
+ export type MarketFormatter<Row extends object> = (value: unknown, format: string, context: {
46
+ currency: string;
47
+ row: Row;
48
+ column?: MarketColumn;
49
+ }) => string;
50
+ export interface DsMarketSimpleListProps<Row extends object = Record<string, unknown>> extends MarketBaseProps<Row> {
51
+ priceValue: (row: Row) => number | null;
52
+ changeValue: (row: Row) => number | null;
53
+ changeLoading?: (row: Row) => boolean;
54
+ priceFormatter: (value: number) => string;
55
+ closingPrice?: boolean;
56
+ renderPricePrefix?: (row: Row) => ReactNode;
57
+ }
58
+ export interface DsMarketTableProps<Row extends object = Record<string, unknown>> extends MarketBaseProps<Row> {
59
+ columns: MarketColumn[];
60
+ cellLoading?: (row: Row, column: MarketColumn) => boolean;
61
+ showActions?: boolean;
62
+ togglingInterest?: unknown;
63
+ togglingFavorite?: unknown;
64
+ sortKey?: string | null;
65
+ sortOrder?: "asc" | "desc";
66
+ priceFormatter?: (value: number) => string;
67
+ currency?: string;
68
+ embedded?: boolean;
69
+ formatMetric?: MarketFormatter<Row>;
70
+ renderCell?: (row: Row, column: MarketColumn) => ReactNode;
71
+ onSort?: (key: string) => void;
72
+ onToggleInterest?: (row: Row) => void;
73
+ onToggleFavorite?: (row: Row) => void;
74
+ }
75
+ export interface DsMarketCardsProps<Row extends object = Record<string, unknown>> extends MarketBaseProps<Row>, MarketCardsModelProps {
76
+ columns: MarketColumn[];
77
+ sortOrder?: "asc" | "desc";
78
+ currency?: string;
79
+ changeMetricKey?: string;
80
+ priceMetricKeys?: string[];
81
+ metricLoading?: (row: Row, key: string) => boolean;
82
+ formatMetric?: MarketFormatter<Row>;
83
+ renderMetricPrefix?: (row: Row, key: string, isPrice: boolean) => ReactNode;
84
+ renderList?: (state: {
85
+ selectedKey: string;
86
+ selectedPill: MarketMetric | undefined;
87
+ metricDisplay: (row: Row) => string;
88
+ }) => ReactNode;
89
+ }
90
+ export declare function useMarketCards<Row extends object>(props: DsMarketCardsProps<Row>): {
91
+ pills: {
92
+ sortKey: string | null | undefined;
93
+ isDefaultSort: boolean | undefined;
94
+ label: string;
95
+ format?: string;
96
+ formatter?: (value: unknown) => string;
97
+ key: string;
98
+ }[];
99
+ key: string;
100
+ pill: {
101
+ sortKey: string | null | undefined;
102
+ isDefaultSort: boolean | undefined;
103
+ label: string;
104
+ format?: string;
105
+ formatter?: (value: unknown) => string;
106
+ key: string;
107
+ };
108
+ select: (key: string) => void;
109
+ };
@@ -0,0 +1,109 @@
1
+ import { type QueryDisplayProps } from "@kjun-ui/tokens";
2
+ import { type ReactNode } from "react";
3
+ import { type MarketCardsModelProps, type MarketMetric } from "../../../shared/package-runtime/market-cards.js";
4
+ export type { MarketMetric } from "../../../shared/package-runtime/market-cards.js";
5
+ export interface MarketPagination {
6
+ page: number;
7
+ size: number;
8
+ total: number;
9
+ }
10
+ export interface MarketBaseProps<Row extends object> extends QueryDisplayProps {
11
+ rows?: Row[];
12
+ rowKey?: string;
13
+ interestKeys?: ReadonlySet<unknown>;
14
+ favoriteKeys?: ReadonlySet<unknown>;
15
+ pagination?: MarketPagination | null;
16
+ primaryLabel?: (row: Row) => string;
17
+ subMeta?: (row: Row) => string;
18
+ emptyMessage?: string;
19
+ emptySubMessage?: string;
20
+ showFooter?: boolean;
21
+ calculatedAt?: string | null;
22
+ footerNote?: string;
23
+ totalCount?: number;
24
+ unitLabel?: string;
25
+ formatDate?: (value: string) => string;
26
+ renderIdentity?: (row: Row, content: ReactNode) => ReactNode;
27
+ renderNamePrefix?: (row: Row) => ReactNode;
28
+ renderNameSuffix?: (row: Row) => ReactNode;
29
+ renderSubMeta?: (row: Row) => ReactNode;
30
+ onPageChange?: (page: number) => void;
31
+ onRowClick?: (row: Row) => void;
32
+ onRetry?: () => void;
33
+ }
34
+ export interface MarketColumn {
35
+ key: string;
36
+ label: string;
37
+ type?: string;
38
+ align?: "left" | "right" | "center";
39
+ width?: number | string;
40
+ sortable?: boolean;
41
+ defaultSort?: boolean;
42
+ flash?: "price" | "change";
43
+ weight?: string;
44
+ }
45
+ export type MarketFormatter<Row extends object> = (value: unknown, format: string, context: {
46
+ currency: string;
47
+ row: Row;
48
+ column?: MarketColumn;
49
+ }) => string;
50
+ export interface DsMarketSimpleListProps<Row extends object = Record<string, unknown>> extends MarketBaseProps<Row> {
51
+ priceValue: (row: Row) => number | null;
52
+ changeValue: (row: Row) => number | null;
53
+ changeLoading?: (row: Row) => boolean;
54
+ priceFormatter: (value: number) => string;
55
+ closingPrice?: boolean;
56
+ renderPricePrefix?: (row: Row) => ReactNode;
57
+ }
58
+ export interface DsMarketTableProps<Row extends object = Record<string, unknown>> extends MarketBaseProps<Row> {
59
+ columns: MarketColumn[];
60
+ cellLoading?: (row: Row, column: MarketColumn) => boolean;
61
+ showActions?: boolean;
62
+ togglingInterest?: unknown;
63
+ togglingFavorite?: unknown;
64
+ sortKey?: string | null;
65
+ sortOrder?: "asc" | "desc";
66
+ priceFormatter?: (value: number) => string;
67
+ currency?: string;
68
+ embedded?: boolean;
69
+ formatMetric?: MarketFormatter<Row>;
70
+ renderCell?: (row: Row, column: MarketColumn) => ReactNode;
71
+ onSort?: (key: string) => void;
72
+ onToggleInterest?: (row: Row) => void;
73
+ onToggleFavorite?: (row: Row) => void;
74
+ }
75
+ export interface DsMarketCardsProps<Row extends object = Record<string, unknown>> extends MarketBaseProps<Row>, MarketCardsModelProps {
76
+ columns: MarketColumn[];
77
+ sortOrder?: "asc" | "desc";
78
+ currency?: string;
79
+ changeMetricKey?: string;
80
+ priceMetricKeys?: string[];
81
+ metricLoading?: (row: Row, key: string) => boolean;
82
+ formatMetric?: MarketFormatter<Row>;
83
+ renderMetricPrefix?: (row: Row, key: string, isPrice: boolean) => ReactNode;
84
+ renderList?: (state: {
85
+ selectedKey: string;
86
+ selectedPill: MarketMetric | undefined;
87
+ metricDisplay: (row: Row) => string;
88
+ }) => ReactNode;
89
+ }
90
+ export declare function useMarketCards<Row extends object>(props: DsMarketCardsProps<Row>): {
91
+ pills: {
92
+ sortKey: string | null | undefined;
93
+ isDefaultSort: boolean | undefined;
94
+ label: string;
95
+ format?: string;
96
+ formatter?: (value: unknown) => string;
97
+ key: string;
98
+ }[];
99
+ key: string;
100
+ pill: {
101
+ sortKey: string | null | undefined;
102
+ isDefaultSort: boolean | undefined;
103
+ label: string;
104
+ format?: string;
105
+ formatter?: (value: unknown) => string;
106
+ key: string;
107
+ };
108
+ select: (key: string) => void;
109
+ };
@@ -0,0 +1,5 @@
1
+ import { type ReactNode } from "react";
2
+ export declare function DsMarketListPanel({ controls, children, }: {
3
+ controls?: ReactNode;
4
+ children: ReactNode;
5
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import { type ReactNode } from "react";
2
+ export declare function DsMarketListPanel({ controls, children, }: {
3
+ controls?: ReactNode;
4
+ children: ReactNode;
5
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,10 @@
1
+ import { MarketBaseProps } from "./market-model.cjs";
2
+ export declare function MarketIdentity<Row extends object>({ row, props, table, compact, }: {
3
+ row: Row;
4
+ props: MarketBaseProps<Row>;
5
+ table?: boolean;
6
+ compact?: boolean;
7
+ }): import("react/jsx-runtime").JSX.Element;
8
+ export declare function MarketFooter<Row extends object>({ props, }: {
9
+ props: MarketBaseProps<Row>;
10
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,10 @@
1
+ import { MarketBaseProps } from "./market-model.js";
2
+ export declare function MarketIdentity<Row extends object>({ row, props, table, compact, }: {
3
+ row: Row;
4
+ props: MarketBaseProps<Row>;
5
+ table?: boolean;
6
+ compact?: boolean;
7
+ }): import("react/jsx-runtime").JSX.Element;
8
+ export declare function MarketFooter<Row extends object>({ props, }: {
9
+ props: MarketBaseProps<Row>;
10
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,11 @@
1
+ export interface DsMarketTableSkeletonProps {
2
+ columns?: ({
3
+ key?: string;
4
+ label?: string;
5
+ width?: string | number;
6
+ align?: "left" | "right" | "center";
7
+ } | string)[];
8
+ rows?: number;
9
+ showActions?: boolean;
10
+ }
11
+ export declare function DsMarketTableSkeleton({ columns, rows, showActions }: DsMarketTableSkeletonProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,11 @@
1
+ export interface DsMarketTableSkeletonProps {
2
+ columns?: ({
3
+ key?: string;
4
+ label?: string;
5
+ width?: string | number;
6
+ align?: "left" | "right" | "center";
7
+ } | string)[];
8
+ rows?: number;
9
+ showActions?: boolean;
10
+ }
11
+ export declare function DsMarketTableSkeleton({ columns, rows, showActions }: DsMarketTableSkeletonProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { DsMarketTableProps } from "./market-model.cjs";
2
+ export declare function DsMarketTable<Row extends object = Record<string, unknown>>(props: DsMarketTableProps<Row>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { DsMarketTableProps } from "./market-model.js";
2
+ export declare function DsMarketTable<Row extends object = Record<string, unknown>>(props: DsMarketTableProps<Row>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,7 @@
1
+ export { DsMarketCards } from "./market-cards.cjs";
2
+ export { DsMarketSimpleList } from "./market-list.cjs";
3
+ export { useMarketCards } from "./market-model.cjs";
4
+ export type { DsMarketCardsProps, DsMarketSimpleListProps, DsMarketTableProps, MarketBaseProps, MarketColumn, MarketFormatter, MarketMetric, MarketPagination } from "./market-model.cjs";
5
+ export { DsMarketListPanel } from "./market-panel.cjs";
6
+ export { MarketIdentity } from "./market-parts.cjs";
7
+ export { DsMarketTable } from "./market-table.cjs";
@@ -0,0 +1,7 @@
1
+ export { DsMarketCards } from "./market-cards.js";
2
+ export { DsMarketSimpleList } from "./market-list.js";
3
+ export { useMarketCards } from "./market-model.js";
4
+ export type { DsMarketCardsProps, DsMarketSimpleListProps, DsMarketTableProps, MarketBaseProps, MarketColumn, MarketFormatter, MarketMetric, MarketPagination } from "./market-model.js";
5
+ export { DsMarketListPanel } from "./market-panel.js";
6
+ export { MarketIdentity } from "./market-parts.js";
7
+ export { DsMarketTable } from "./market-table.js";
@@ -0,0 +1,27 @@
1
+ import { type ReactNode } from "react";
2
+ import { type ImageSourcePropType } from "react-native";
3
+ export interface DsImageProps {
4
+ src?: string;
5
+ source?: ImageSourcePropType;
6
+ alt: string;
7
+ decorative?: boolean;
8
+ aspectRatio?: number;
9
+ fit?: "cover" | "contain";
10
+ fallback?: ReactNode;
11
+ onLoad?: () => void;
12
+ onError?: () => void;
13
+ }
14
+ export declare function DsImage({ src, source, alt, decorative, aspectRatio, fit, fallback, onLoad, onError }: DsImageProps): import("react/jsx-runtime").JSX.Element;
15
+ export interface DsAvatarProps {
16
+ src?: string;
17
+ source?: ImageSourcePropType;
18
+ name?: string;
19
+ alt?: string;
20
+ decorative?: boolean;
21
+ size?: "sm" | "md" | "lg";
22
+ shape?: "circle" | "square";
23
+ fallback?: ReactNode;
24
+ onLoad?: () => void;
25
+ onError?: () => void;
26
+ }
27
+ export declare function DsAvatar({ src, source, name, alt, decorative, size, shape, fallback, onLoad, onError }: DsAvatarProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,27 @@
1
+ import { type ReactNode } from "react";
2
+ import { type ImageSourcePropType } from "react-native";
3
+ export interface DsImageProps {
4
+ src?: string;
5
+ source?: ImageSourcePropType;
6
+ alt: string;
7
+ decorative?: boolean;
8
+ aspectRatio?: number;
9
+ fit?: "cover" | "contain";
10
+ fallback?: ReactNode;
11
+ onLoad?: () => void;
12
+ onError?: () => void;
13
+ }
14
+ export declare function DsImage({ src, source, alt, decorative, aspectRatio, fit, fallback, onLoad, onError }: DsImageProps): import("react/jsx-runtime").JSX.Element;
15
+ export interface DsAvatarProps {
16
+ src?: string;
17
+ source?: ImageSourcePropType;
18
+ name?: string;
19
+ alt?: string;
20
+ decorative?: boolean;
21
+ size?: "sm" | "md" | "lg";
22
+ shape?: "circle" | "square";
23
+ fallback?: ReactNode;
24
+ onLoad?: () => void;
25
+ onError?: () => void;
26
+ }
27
+ export declare function DsAvatar({ src, source, name, alt, decorative, size, shape, fallback, onLoad, onError }: DsAvatarProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import { type ModalProps } from "react-native";
2
+ export interface ModalWindowProps extends ModalProps {
3
+ generation: number;
4
+ }
5
+ export declare function ModalWindow({ generation, ...props }: ModalWindowProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import { type ModalProps } from "react-native";
2
+ export interface ModalWindowProps extends ModalProps {
3
+ generation: number;
4
+ }
5
+ export declare function ModalWindow({ generation, ...props }: ModalWindowProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,46 @@
1
+ import { type InputSize } from "@kjun-ui/tokens";
2
+ import { type ReactNode } from "react";
3
+ export interface DsFormActionsProps {
4
+ size?: InputSize;
5
+ cancelText?: string;
6
+ confirmText?: string;
7
+ showCancel?: boolean;
8
+ showConfirm?: boolean;
9
+ cancelDisabled?: boolean;
10
+ confirmDisabled?: boolean;
11
+ loading?: boolean;
12
+ variant?: "primary" | "danger" | "success";
13
+ cancelVariant?: "ghost" | "secondary";
14
+ onCancel?: () => void;
15
+ onConfirm?: () => void;
16
+ }
17
+ export declare function DsFormActions({ size, cancelText, confirmText, showCancel, showConfirm, cancelDisabled, confirmDisabled, loading, variant, cancelVariant, onCancel, onConfirm, }: DsFormActionsProps): import("react/jsx-runtime").JSX.Element;
18
+ export interface DsModalProps {
19
+ open: boolean;
20
+ onOpenChange: (value: boolean) => void;
21
+ onClose?: () => void;
22
+ onCancel?: () => void;
23
+ onConfirm?: () => void;
24
+ title?: string;
25
+ size?: "sm" | "md" | "lg" | "xl" | "full";
26
+ closable?: boolean;
27
+ closeOnOverlay?: boolean;
28
+ closeOnEsc?: boolean;
29
+ showHeader?: boolean;
30
+ showFooter?: boolean;
31
+ showConfirmButton?: boolean;
32
+ showCancelButton?: boolean;
33
+ confirmText?: string;
34
+ cancelText?: string;
35
+ confirmDisabled?: boolean;
36
+ loading?: boolean;
37
+ noPadding?: boolean;
38
+ height?: number;
39
+ confirmVariant?: "primary" | "danger" | "success";
40
+ footerSize?: InputSize;
41
+ header?: ReactNode;
42
+ footer?: ReactNode;
43
+ children: ReactNode;
44
+ ariaLabel?: string;
45
+ }
46
+ export declare function DsModal({ open, onOpenChange, onClose, onCancel, onConfirm, title, size, closable, closeOnOverlay, closeOnEsc, showHeader, showFooter, showConfirmButton, showCancelButton, confirmText, cancelText, confirmDisabled, loading, noPadding, height, confirmVariant, footerSize, header, footer, children, ariaLabel, }: DsModalProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,46 @@
1
+ import { type InputSize } from "@kjun-ui/tokens";
2
+ import { type ReactNode } from "react";
3
+ export interface DsFormActionsProps {
4
+ size?: InputSize;
5
+ cancelText?: string;
6
+ confirmText?: string;
7
+ showCancel?: boolean;
8
+ showConfirm?: boolean;
9
+ cancelDisabled?: boolean;
10
+ confirmDisabled?: boolean;
11
+ loading?: boolean;
12
+ variant?: "primary" | "danger" | "success";
13
+ cancelVariant?: "ghost" | "secondary";
14
+ onCancel?: () => void;
15
+ onConfirm?: () => void;
16
+ }
17
+ export declare function DsFormActions({ size, cancelText, confirmText, showCancel, showConfirm, cancelDisabled, confirmDisabled, loading, variant, cancelVariant, onCancel, onConfirm, }: DsFormActionsProps): import("react/jsx-runtime").JSX.Element;
18
+ export interface DsModalProps {
19
+ open: boolean;
20
+ onOpenChange: (value: boolean) => void;
21
+ onClose?: () => void;
22
+ onCancel?: () => void;
23
+ onConfirm?: () => void;
24
+ title?: string;
25
+ size?: "sm" | "md" | "lg" | "xl" | "full";
26
+ closable?: boolean;
27
+ closeOnOverlay?: boolean;
28
+ closeOnEsc?: boolean;
29
+ showHeader?: boolean;
30
+ showFooter?: boolean;
31
+ showConfirmButton?: boolean;
32
+ showCancelButton?: boolean;
33
+ confirmText?: string;
34
+ cancelText?: string;
35
+ confirmDisabled?: boolean;
36
+ loading?: boolean;
37
+ noPadding?: boolean;
38
+ height?: number;
39
+ confirmVariant?: "primary" | "danger" | "success";
40
+ footerSize?: InputSize;
41
+ header?: ReactNode;
42
+ footer?: ReactNode;
43
+ children: ReactNode;
44
+ ariaLabel?: string;
45
+ }
46
+ export declare function DsModal({ open, onOpenChange, onClose, onCancel, onConfirm, title, size, closable, closeOnOverlay, closeOnEsc, showHeader, showFooter, showConfirmButton, showCancelButton, confirmText, cancelText, confirmDisabled, loading, noPadding, height, confirmVariant, footerSize, header, footer, children, ariaLabel, }: DsModalProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,18 @@
1
+ import { Animated, type EasingFunction } from "react-native";
2
+ export declare const motionOut: EasingFunction;
3
+ export declare const motionIn: EasingFunction;
4
+ export declare const motionEmphasized: EasingFunction;
5
+ export declare const motionLinear: EasingFunction;
6
+ export declare const nativeDriver: boolean;
7
+ export declare function useMotionValue(target: number, duration?: number, initial?: number, easing?: EasingFunction, useNative?: boolean): Animated.Value;
8
+ type PresenceOptions = {
9
+ fade?: number;
10
+ enterEasing?: EasingFunction;
11
+ };
12
+ export declare function useNativePresence(open: boolean, enter?: number, exit?: number, ready?: boolean, initial?: number, { fade, enterEasing }?: PresenceOptions): {
13
+ present: boolean;
14
+ progress: Animated.Value;
15
+ opacity: Animated.Value;
16
+ reduced: boolean;
17
+ };
18
+ export {};
@@ -0,0 +1,18 @@
1
+ import { Animated, type EasingFunction } from "react-native";
2
+ export declare const motionOut: EasingFunction;
3
+ export declare const motionIn: EasingFunction;
4
+ export declare const motionEmphasized: EasingFunction;
5
+ export declare const motionLinear: EasingFunction;
6
+ export declare const nativeDriver: boolean;
7
+ export declare function useMotionValue(target: number, duration?: number, initial?: number, easing?: EasingFunction, useNative?: boolean): Animated.Value;
8
+ type PresenceOptions = {
9
+ fade?: number;
10
+ enterEasing?: EasingFunction;
11
+ };
12
+ export declare function useNativePresence(open: boolean, enter?: number, exit?: number, ready?: boolean, initial?: number, { fade, enterEasing }?: PresenceOptions): {
13
+ present: boolean;
14
+ progress: Animated.Value;
15
+ opacity: Animated.Value;
16
+ reduced: boolean;
17
+ };
18
+ export {};
@@ -0,0 +1,45 @@
1
+ import { type ReactNode } from "react";
2
+ export { DsTabs, DsTabPane, type TabItem, type DsTabsProps, type DsTabPaneProps } from "./tabs.cjs";
3
+ export interface DsAccordionProps {
4
+ multiple?: boolean;
5
+ tone?: "card" | "muted";
6
+ children: ReactNode;
7
+ }
8
+ export declare function DsAccordion({ multiple, tone, children, }: DsAccordionProps): import("react/jsx-runtime").JSX.Element;
9
+ export interface DsAccordionItemProps {
10
+ title?: string;
11
+ defaultOpen?: boolean;
12
+ disabled?: boolean;
13
+ header?: ReactNode;
14
+ children: ReactNode;
15
+ }
16
+ export declare function DsAccordionItem({ title, defaultOpen, disabled, header, children, }: DsAccordionItemProps): import("react/jsx-runtime").JSX.Element;
17
+ export interface BreadcrumbItem {
18
+ label: string;
19
+ to?: string;
20
+ icon?: string;
21
+ }
22
+ export interface DsBreadcrumbProps {
23
+ items: BreadcrumbItem[];
24
+ renderLink?: (item: BreadcrumbItem, children: ReactNode) => ReactNode;
25
+ onNavigate?: (item: BreadcrumbItem) => void;
26
+ ariaLabel?: string;
27
+ }
28
+ export declare function DsBreadcrumb({ items, renderLink, onNavigate, ariaLabel, }: DsBreadcrumbProps): import("react/jsx-runtime").JSX.Element;
29
+ export interface DsPaginationProps {
30
+ currentPage?: number;
31
+ page?: number;
32
+ totalPages: number;
33
+ totalRows?: number;
34
+ pageSize?: number;
35
+ pageSizeOptions?: number[];
36
+ siblingCount?: number;
37
+ showInfo?: boolean;
38
+ showSizeSelector?: boolean;
39
+ showFirstLast?: boolean;
40
+ formatter?: (value: number) => string;
41
+ onPageChange?: (page: number) => void;
42
+ onChange?: (page: number) => void;
43
+ onPageSizeChange?: (size: number) => void;
44
+ }
45
+ export declare function DsPagination({ currentPage, page, totalPages, totalRows, pageSize, pageSizeOptions, siblingCount, showInfo, showSizeSelector, showFirstLast, formatter, onPageChange, onChange, onPageSizeChange, }: DsPaginationProps): import("react/jsx-runtime").JSX.Element | null;