@korsolutions/ui 0.0.44 → 0.0.46

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 (116) hide show
  1. package/dist/module/components/index.js +14 -13
  2. package/dist/module/components/index.js.map +1 -1
  3. package/dist/module/components/progress/index.js +4 -0
  4. package/dist/module/components/progress/index.js.map +1 -0
  5. package/dist/module/components/progress/progress.js +27 -0
  6. package/dist/module/components/progress/progress.js.map +1 -0
  7. package/dist/module/components/progress/variants/default.js +27 -0
  8. package/dist/module/components/progress/variants/default.js.map +1 -0
  9. package/dist/module/components/progress/variants/index.js +7 -0
  10. package/dist/module/components/progress/variants/index.js.map +1 -0
  11. package/dist/module/index.js +1 -0
  12. package/dist/module/index.js.map +1 -1
  13. package/dist/module/primitives/alert/alert-description.js +16 -0
  14. package/dist/module/primitives/alert/alert-description.js.map +1 -0
  15. package/dist/module/primitives/alert/alert-icon.js +16 -0
  16. package/dist/module/primitives/alert/alert-icon.js.map +1 -0
  17. package/dist/module/primitives/alert/alert-root.js +22 -0
  18. package/dist/module/primitives/alert/alert-root.js.map +1 -0
  19. package/dist/module/primitives/alert/alert-title.js +16 -0
  20. package/dist/module/primitives/alert/alert-title.js.map +1 -0
  21. package/dist/module/primitives/alert/context.js +12 -0
  22. package/dist/module/primitives/alert/context.js.map +1 -0
  23. package/dist/module/primitives/alert/index.js +13 -0
  24. package/dist/module/primitives/alert/index.js.map +1 -0
  25. package/dist/module/primitives/alert/types.js +4 -0
  26. package/dist/module/primitives/alert/types.js.map +1 -0
  27. package/dist/module/primitives/alert/variants/default.js +35 -0
  28. package/dist/module/primitives/alert/variants/default.js.map +1 -0
  29. package/dist/module/primitives/alert/variants/destructive.js +36 -0
  30. package/dist/module/primitives/alert/variants/destructive.js.map +1 -0
  31. package/dist/module/primitives/alert/variants/index.js +9 -0
  32. package/dist/module/primitives/alert/variants/index.js.map +1 -0
  33. package/dist/module/primitives/index.js +13 -11
  34. package/dist/module/primitives/index.js.map +1 -1
  35. package/dist/module/primitives/progress/context.js +12 -0
  36. package/dist/module/primitives/progress/context.js.map +1 -0
  37. package/dist/module/primitives/progress/index.js +9 -0
  38. package/dist/module/primitives/progress/index.js.map +1 -0
  39. package/dist/module/primitives/progress/progress-indicator.js +21 -0
  40. package/dist/module/primitives/progress/progress-indicator.js.map +1 -0
  41. package/dist/module/primitives/progress/progress-root.js +28 -0
  42. package/dist/module/primitives/progress/progress-root.js.map +1 -0
  43. package/dist/module/primitives/progress/types.js +4 -0
  44. package/dist/module/primitives/progress/types.js.map +1 -0
  45. package/dist/module/types/props.types.js +2 -0
  46. package/dist/module/types/props.types.js.map +1 -0
  47. package/dist/typescript/src/components/index.d.ts +14 -13
  48. package/dist/typescript/src/components/index.d.ts.map +1 -1
  49. package/dist/typescript/src/components/progress/index.d.ts +2 -0
  50. package/dist/typescript/src/components/progress/index.d.ts.map +1 -0
  51. package/dist/typescript/src/components/progress/progress.d.ts +11 -0
  52. package/dist/typescript/src/components/progress/progress.d.ts.map +1 -0
  53. package/dist/typescript/src/components/progress/variants/default.d.ts +3 -0
  54. package/dist/typescript/src/components/progress/variants/default.d.ts.map +1 -0
  55. package/dist/typescript/src/components/progress/variants/index.d.ts +4 -0
  56. package/dist/typescript/src/components/progress/variants/index.d.ts.map +1 -0
  57. package/dist/typescript/src/index.d.ts +1 -0
  58. package/dist/typescript/src/index.d.ts.map +1 -1
  59. package/dist/typescript/src/primitives/alert/alert-description.d.ts +9 -0
  60. package/dist/typescript/src/primitives/alert/alert-description.d.ts.map +1 -0
  61. package/dist/typescript/src/primitives/alert/alert-icon.d.ts +9 -0
  62. package/dist/typescript/src/primitives/alert/alert-icon.d.ts.map +1 -0
  63. package/dist/typescript/src/primitives/alert/alert-root.d.ts +11 -0
  64. package/dist/typescript/src/primitives/alert/alert-root.d.ts.map +1 -0
  65. package/dist/typescript/src/primitives/alert/alert-title.d.ts +9 -0
  66. package/dist/typescript/src/primitives/alert/alert-title.d.ts.map +1 -0
  67. package/dist/typescript/src/primitives/alert/context.d.ts +7 -0
  68. package/dist/typescript/src/primitives/alert/context.d.ts.map +1 -0
  69. package/dist/typescript/src/primitives/alert/index.d.ts +16 -0
  70. package/dist/typescript/src/primitives/alert/index.d.ts.map +1 -0
  71. package/dist/typescript/src/primitives/alert/types.d.ts +11 -0
  72. package/dist/typescript/src/primitives/alert/types.d.ts.map +1 -0
  73. package/dist/typescript/src/primitives/alert/variants/default.d.ts +3 -0
  74. package/dist/typescript/src/primitives/alert/variants/default.d.ts.map +1 -0
  75. package/dist/typescript/src/primitives/alert/variants/destructive.d.ts +3 -0
  76. package/dist/typescript/src/primitives/alert/variants/destructive.d.ts.map +1 -0
  77. package/dist/typescript/src/primitives/alert/variants/index.d.ts +5 -0
  78. package/dist/typescript/src/primitives/alert/variants/index.d.ts.map +1 -0
  79. package/dist/typescript/src/primitives/index.d.ts +13 -11
  80. package/dist/typescript/src/primitives/index.d.ts.map +1 -1
  81. package/dist/typescript/src/primitives/progress/context.d.ts +10 -0
  82. package/dist/typescript/src/primitives/progress/context.d.ts.map +1 -0
  83. package/dist/typescript/src/primitives/progress/index.d.ts +10 -0
  84. package/dist/typescript/src/primitives/progress/index.d.ts.map +1 -0
  85. package/dist/typescript/src/primitives/progress/progress-indicator.d.ts +10 -0
  86. package/dist/typescript/src/primitives/progress/progress-indicator.d.ts.map +1 -0
  87. package/dist/typescript/src/primitives/progress/progress-root.d.ts +13 -0
  88. package/dist/typescript/src/primitives/progress/progress-root.d.ts.map +1 -0
  89. package/dist/typescript/src/primitives/progress/types.d.ts +8 -0
  90. package/dist/typescript/src/primitives/progress/types.d.ts.map +1 -0
  91. package/dist/typescript/src/types/props.types.d.ts +4 -0
  92. package/dist/typescript/src/types/props.types.d.ts.map +1 -0
  93. package/package.json +1 -1
  94. package/src/components/index.ts +14 -13
  95. package/src/components/progress/index.ts +1 -0
  96. package/src/components/progress/progress.tsx +23 -0
  97. package/src/components/progress/variants/default.tsx +25 -0
  98. package/src/components/progress/variants/index.ts +5 -0
  99. package/src/index.tsx +1 -0
  100. package/src/primitives/alert/alert-description.tsx +19 -0
  101. package/src/primitives/alert/alert-icon.tsx +19 -0
  102. package/src/primitives/alert/alert-root.tsx +28 -0
  103. package/src/primitives/alert/alert-title.tsx +19 -0
  104. package/src/primitives/alert/context.ts +16 -0
  105. package/src/primitives/alert/index.ts +17 -0
  106. package/src/primitives/alert/types.ts +11 -0
  107. package/src/primitives/alert/variants/default.tsx +32 -0
  108. package/src/primitives/alert/variants/destructive.tsx +33 -0
  109. package/src/primitives/alert/variants/index.ts +7 -0
  110. package/src/primitives/index.ts +13 -11
  111. package/src/primitives/progress/context.ts +19 -0
  112. package/src/primitives/progress/index.ts +11 -0
  113. package/src/primitives/progress/progress-indicator.tsx +21 -0
  114. package/src/primitives/progress/progress-root.tsx +36 -0
  115. package/src/primitives/progress/types.ts +9 -0
  116. package/src/types/props.types.ts +3 -0
@@ -1,18 +1,20 @@
1
- export * from "./field";
2
- export * from "./input";
3
- export * from "./button";
4
- export * from "./select";
1
+ export * from "./alert";
2
+ export * from "./alert-dialog";
5
3
  export * from "./autocomplete";
6
- export * from "./card";
7
- export * from "./empty";
8
4
  export * from "./avatar";
9
- export * from "./toast";
10
5
  export * from "./badge";
11
- export * from "./textarea";
6
+ export * from "./button";
7
+ export * from "./calendar";
8
+ export * from "./card";
9
+ export * from "./checkbox";
12
10
  export * from "./dropdown-menu";
11
+ export * from "./empty";
12
+ export * from "./field";
13
+ export * from "./input";
13
14
  export * from "./popover";
14
15
  export * from "./portal";
15
- export * from "./calendar";
16
+ export * from "./progress";
17
+ export * from "./select";
16
18
  export * from "./tabs";
17
- export * from "./checkbox";
18
- export * from "./alert-dialog";
19
+ export * from "./textarea";
20
+ export * from "./toast";
@@ -0,0 +1,19 @@
1
+ import { createContext, useContext } from "react";
2
+ import type { ProgressState, ProgressStyles } from "./types";
3
+
4
+ export interface ProgressContext {
5
+ state: ProgressState;
6
+ styles?: ProgressStyles;
7
+ value: number;
8
+ max: number;
9
+ }
10
+
11
+ export const ProgressContext = createContext<ProgressContext | undefined>(undefined);
12
+
13
+ export const useProgress = () => {
14
+ const context = useContext(ProgressContext);
15
+ if (!context) {
16
+ throw new Error("useProgress must be used within a ProgressRoot");
17
+ }
18
+ return context;
19
+ };
@@ -0,0 +1,11 @@
1
+ import { ProgressRoot } from "./progress-root";
2
+ import { ProgressIndicator } from "./progress-indicator";
3
+
4
+ export const ProgressPrimitive = {
5
+ Root: ProgressRoot,
6
+ Indicator: ProgressIndicator,
7
+ };
8
+
9
+ export type { ProgressRootProps } from "./progress-root";
10
+ export type { ProgressIndicatorProps } from "./progress-indicator";
11
+ export type { ProgressStyles } from "./types";
@@ -0,0 +1,21 @@
1
+ import { calculateComposedStyles } from "@/utils/calculate-styles";
2
+ import React from "react";
3
+ import { type StyleProp, View, type ViewStyle } from "react-native";
4
+ import { useProgress } from "./context";
5
+
6
+ export interface ProgressIndicatorProps {
7
+ render?: (props: ProgressIndicatorProps & { percentage: number }) => React.ReactNode;
8
+
9
+ style?: StyleProp<ViewStyle>;
10
+ }
11
+
12
+ export function ProgressIndicator(props: ProgressIndicatorProps) {
13
+ const progress = useProgress();
14
+
15
+ const percentage = Math.min(Math.max((progress.value / progress.max) * 100, 0), 100);
16
+
17
+ const composedStyle = calculateComposedStyles(progress.styles, progress.state, "indicator", props.style);
18
+
19
+ const Component = props.render ?? View;
20
+ return <Component {...props} percentage={percentage} style={[composedStyle, { width: `${percentage}%` }]} />;
21
+ }
@@ -0,0 +1,36 @@
1
+ import { calculateComposedStyles } from "@/utils/calculate-styles";
2
+ import React from "react";
3
+ import { type StyleProp, View, type ViewStyle } from "react-native";
4
+ import { ProgressContext } from "./context";
5
+ import type { ProgressStyles } from "./types";
6
+
7
+ export interface ProgressRootProps {
8
+ children?: React.ReactNode;
9
+
10
+ render?: (props: ProgressRootProps) => React.ReactNode;
11
+
12
+ style?: StyleProp<ViewStyle>;
13
+ styles?: ProgressStyles;
14
+
15
+ value?: number;
16
+ max?: number;
17
+ }
18
+
19
+ export function ProgressRoot(props: ProgressRootProps) {
20
+ const { value = 0, max = 100 } = props;
21
+ const composedStyle = calculateComposedStyles(props.styles, "default", "root", props.style);
22
+
23
+ const Component = props.render ?? View;
24
+ return (
25
+ <ProgressContext.Provider
26
+ value={{
27
+ state: "default",
28
+ styles: props.styles,
29
+ value,
30
+ max,
31
+ }}
32
+ >
33
+ <Component {...props} style={composedStyle} />
34
+ </ProgressContext.Provider>
35
+ );
36
+ }
@@ -0,0 +1,9 @@
1
+ import type { ProgressIndicatorProps } from "./progress-indicator";
2
+ import type { ProgressRootProps } from "./progress-root";
3
+
4
+ export type ProgressState = "default";
5
+
6
+ export interface ProgressStyles {
7
+ root?: Partial<Record<ProgressState, ProgressRootProps["style"]>>;
8
+ indicator?: Partial<Record<ProgressState, ProgressIndicatorProps["style"]>>;
9
+ }
@@ -0,0 +1,3 @@
1
+ export type PropsWithRender<P> = P & {
2
+ render?: (props: P) => React.ReactNode;
3
+ };