klip-components 0.2.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 (44) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +223 -0
  3. package/dist/components/Button/Button.d.ts +60 -0
  4. package/dist/components/Button/Button.d.ts.map +1 -0
  5. package/dist/components/Button/index.d.ts +3 -0
  6. package/dist/components/Button/index.d.ts.map +1 -0
  7. package/dist/components/Debug/Debug.d.ts +8 -0
  8. package/dist/components/Debug/Debug.d.ts.map +1 -0
  9. package/dist/components/Debug/index.d.ts +2 -0
  10. package/dist/components/Debug/index.d.ts.map +1 -0
  11. package/dist/components/SimpleButton/SimpleButton.d.ts +11 -0
  12. package/dist/components/SimpleButton/SimpleButton.d.ts.map +1 -0
  13. package/dist/components/SimpleButton/index.d.ts +2 -0
  14. package/dist/components/SimpleButton/index.d.ts.map +1 -0
  15. package/dist/components/ThemeToggle/ThemeToggle.d.ts +9 -0
  16. package/dist/components/ThemeToggle/ThemeToggle.d.ts.map +1 -0
  17. package/dist/components/ThemeToggle/index.d.ts +3 -0
  18. package/dist/components/ThemeToggle/index.d.ts.map +1 -0
  19. package/dist/index.d.ts +7 -0
  20. package/dist/index.d.ts.map +1 -0
  21. package/dist/klip-components.cjs.js +37 -0
  22. package/dist/klip-components.css +1 -0
  23. package/dist/klip-components.es.js +391 -0
  24. package/dist/theme/ThemeProvider.d.ts +37 -0
  25. package/dist/theme/ThemeProvider.d.ts.map +1 -0
  26. package/dist/theme/context.d.ts +17 -0
  27. package/dist/theme/context.d.ts.map +1 -0
  28. package/dist/theme/cssGenerator.d.ts +14 -0
  29. package/dist/theme/cssGenerator.d.ts.map +1 -0
  30. package/dist/theme/defaultThemes.d.ts +11 -0
  31. package/dist/theme/defaultThemes.d.ts.map +1 -0
  32. package/dist/theme/hooks.d.ts +68 -0
  33. package/dist/theme/hooks.d.ts.map +1 -0
  34. package/dist/theme/index.d.ts +9 -0
  35. package/dist/theme/index.d.ts.map +1 -0
  36. package/dist/theme/utils.d.ts +23 -0
  37. package/dist/theme/utils.d.ts.map +1 -0
  38. package/dist/types/theme.d.ts +78 -0
  39. package/dist/types/theme.d.ts.map +1 -0
  40. package/dist/utils/cn.d.ts +37 -0
  41. package/dist/utils/cn.d.ts.map +1 -0
  42. package/dist/utils/index.d.ts +2 -0
  43. package/dist/utils/index.d.ts.map +1 -0
  44. package/package.json +81 -0
@@ -0,0 +1,37 @@
1
+ import { ClassValue } from 'clsx';
2
+ export { clsx, type ClassValue } from 'clsx';
3
+ /**
4
+ * Merges multiple CSS class strings and removes duplicates while preserving order.
5
+ * Takes an array of class strings, splits them by spaces, filters out empty values,
6
+ * and returns a deduplicated string of classes.
7
+ *
8
+ * @param {...string[]} classes - Variable number of CSS class strings to merge
9
+ * @returns {string} A single string containing all unique CSS classes separated by spaces
10
+ *
11
+ * @example
12
+ * mergeClasses('btn primary', 'btn secondary', 'active')
13
+ * // Returns: 'btn primary secondary active'
14
+ *
15
+ * @example
16
+ * mergeClasses('text-red-500 font-bold', 'text-red-500 underline')
17
+ * // Returns: 'text-red-500 font-bold underline'
18
+ */
19
+ export declare function mergeClasses(...classes: string[]): string;
20
+ /**
21
+ * Combines and conditionally applies CSS classes using clsx, then deduplicates them.
22
+ * This function leverages clsx for conditional class handling and mergeClasses for deduplication.
23
+ * Useful for component styling where you need both conditional logic and duplicate removal.
24
+ *
25
+ * @param {...ClassValue[]} inputs - Variable number of class values (strings, objects, arrays, etc.) supported by clsx
26
+ * @returns {string} A deduplicated string of CSS classes
27
+ *
28
+ * @example
29
+ * cn('btn', { 'btn-primary': true, 'btn-disabled': false }, 'mt-4')
30
+ * // Returns: 'btn btn-primary mt-4'
31
+ *
32
+ * @example
33
+ * cn('text-base', 'text-red-500', { 'font-bold': isActive }, 'text-base')
34
+ * // Returns: 'text-base text-red-500 font-bold' (if isActive is true)
35
+ */
36
+ export declare function cn(...inputs: ClassValue[]): string;
37
+ //# sourceMappingURL=cn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cn.d.ts","sourceRoot":"","sources":["../../src/utils/cn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC;AAG7C,OAAO,EAAE,IAAI,EAAE,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC;AAE7C;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAGzD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAGlD"}
@@ -0,0 +1,2 @@
1
+ export { clsx, mergeClasses, cn, type ClassValue } from './cn';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC"}
package/package.json ADDED
@@ -0,0 +1,81 @@
1
+ {
2
+ "name": "klip-components",
3
+ "private": false,
4
+ "version": "0.2.1",
5
+ "description": "A collection of reusable React components for Klip.",
6
+ "type": "module",
7
+ "main": "dist/klip-components.cjs.js",
8
+ "module": "dist/klip-components.es.js",
9
+ "types": "dist/index.d.ts",
10
+ "files": [
11
+ "dist"
12
+ ],
13
+ "scripts": {
14
+ "dev": "vite",
15
+ "build": "tsc -b && vite build",
16
+ "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
17
+ "preview": "vite preview",
18
+ "storybook": "storybook dev -p 6006",
19
+ "build-storybook": "storybook build",
20
+ "prepublishOnly": "bun run build",
21
+ "publish:patch": "npm version patch && npm publish",
22
+ "publish:minor": "npm version minor && npm publish",
23
+ "publish:major": "npm version major && npm publish"
24
+ },
25
+ "release": {
26
+ "branches": [
27
+ {
28
+ "name": "main",
29
+ "channel": "latest",
30
+ "prerelease": false
31
+ }
32
+ ]
33
+ },
34
+ "keywords": [
35
+ "react",
36
+ "components",
37
+ "ui",
38
+ "typescript",
39
+ "vite",
40
+ "bun"
41
+ ],
42
+ "author": "deleonagencyorg",
43
+ "license": "MIT",
44
+ "engines": {
45
+ "node": ">=22.0.0",
46
+ "npm": ">=8.0.0",
47
+ "bun": ">=1.0.0"
48
+ },
49
+ "peerDependencies": {
50
+ "react": "^19.0.0",
51
+ "react-dom": "^19.0.0"
52
+ },
53
+ "dependencies": {
54
+ "clsx": "^2.1.1"
55
+ },
56
+ "devDependencies": {
57
+ "@eslint/js": "^9.30.1",
58
+ "@storybook/addon-docs": "^9.0.16",
59
+ "@storybook/addon-onboarding": "^9.0.16",
60
+ "@storybook/react-vite": "^9.0.16",
61
+ "@types/node": "^24.0.13",
62
+ "@types/react": "^19.1.8",
63
+ "@types/react-dom": "^19.1.6",
64
+ "@vitejs/plugin-react": "^4.6.0",
65
+ "ajv": "^8.17.1",
66
+ "autoprefixer": "^10.4.21",
67
+ "cssnano": "^7.0.7",
68
+ "eslint": "^9.30.1",
69
+ "eslint-plugin-react-hooks": "^5.2.0",
70
+ "eslint-plugin-react-refresh": "^0.4.20",
71
+ "eslint-plugin-storybook": "^9.0.16",
72
+ "globals": "^16.3.0",
73
+ "postcss": "^8.5.6",
74
+ "postcss-cli": "^11.0.1",
75
+ "storybook": "^9.0.16",
76
+ "typescript": "~5.8.3",
77
+ "typescript-eslint": "^8.35.1",
78
+ "vite": "^7.0.4",
79
+ "vite-plugin-dts": "^4.5.4"
80
+ }
81
+ }