infinity-ui-elements 1.3.1 → 1.4.1-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/README.md +62 -1
  2. package/dist/components/Badge/Badge.d.ts +28 -0
  3. package/dist/components/Badge/Badge.d.ts.map +1 -0
  4. package/dist/components/Badge/Badge.stories.d.ts +16 -0
  5. package/dist/components/Badge/Badge.stories.d.ts.map +1 -0
  6. package/dist/components/Badge/index.d.ts +3 -0
  7. package/dist/components/Badge/index.d.ts.map +1 -0
  8. package/dist/components/Button/Button.d.ts +1 -1
  9. package/dist/components/Button/Button.d.ts.map +1 -1
  10. package/dist/components/Checkbox/Checkbox.d.ts +49 -0
  11. package/dist/components/Checkbox/Checkbox.d.ts.map +1 -0
  12. package/dist/components/Checkbox/Checkbox.stories.d.ts +23 -0
  13. package/dist/components/Checkbox/Checkbox.stories.d.ts.map +1 -0
  14. package/dist/components/Checkbox/index.d.ts +3 -0
  15. package/dist/components/Checkbox/index.d.ts.map +1 -0
  16. package/dist/components/Counter/Counter.d.ts +24 -0
  17. package/dist/components/Counter/Counter.d.ts.map +1 -0
  18. package/dist/components/Counter/Counter.stories.d.ts +14 -0
  19. package/dist/components/Counter/Counter.stories.d.ts.map +1 -0
  20. package/dist/components/Counter/index.d.ts +3 -0
  21. package/dist/components/Counter/index.d.ts.map +1 -0
  22. package/dist/components/Divider/Divider.d.ts +37 -0
  23. package/dist/components/Divider/Divider.d.ts.map +1 -0
  24. package/dist/components/Divider/Divider.stories.d.ts +12 -0
  25. package/dist/components/Divider/Divider.stories.d.ts.map +1 -0
  26. package/dist/components/Divider/index.d.ts +2 -0
  27. package/dist/components/Divider/index.d.ts.map +1 -0
  28. package/dist/components/FormFooter/FormFooter.d.ts +38 -0
  29. package/dist/components/FormFooter/FormFooter.d.ts.map +1 -0
  30. package/dist/components/FormFooter/FormFooter.stories.d.ts +50 -0
  31. package/dist/components/FormFooter/FormFooter.stories.d.ts.map +1 -0
  32. package/dist/components/FormFooter/index.d.ts +3 -0
  33. package/dist/components/FormFooter/index.d.ts.map +1 -0
  34. package/dist/components/FormHeader/FormHeader.d.ts +58 -0
  35. package/dist/components/FormHeader/FormHeader.d.ts.map +1 -0
  36. package/dist/components/FormHeader/FormHeader.stories.d.ts +65 -0
  37. package/dist/components/FormHeader/FormHeader.stories.d.ts.map +1 -0
  38. package/dist/components/FormHeader/index.d.ts +3 -0
  39. package/dist/components/FormHeader/index.d.ts.map +1 -0
  40. package/dist/components/ListItem/ListItem.d.ts +63 -0
  41. package/dist/components/ListItem/ListItem.d.ts.map +1 -0
  42. package/dist/components/ListItem/ListItem.stories.d.ts +66 -0
  43. package/dist/components/ListItem/ListItem.stories.d.ts.map +1 -0
  44. package/dist/components/ListItem/index.d.ts +3 -0
  45. package/dist/components/ListItem/index.d.ts.map +1 -0
  46. package/dist/components/Radio/Radio.d.ts +45 -0
  47. package/dist/components/Radio/Radio.d.ts.map +1 -0
  48. package/dist/components/Radio/Radio.stories.d.ts +23 -0
  49. package/dist/components/Radio/Radio.stories.d.ts.map +1 -0
  50. package/dist/components/Radio/index.d.ts +3 -0
  51. package/dist/components/Radio/index.d.ts.map +1 -0
  52. package/dist/components/Switch/Switch.d.ts +39 -0
  53. package/dist/components/Switch/Switch.d.ts.map +1 -0
  54. package/dist/components/Switch/Switch.stories.d.ts +37 -0
  55. package/dist/components/Switch/Switch.stories.d.ts.map +1 -0
  56. package/dist/components/Switch/index.d.ts +3 -0
  57. package/dist/components/Switch/index.d.ts.map +1 -0
  58. package/dist/components/Text/Text.d.ts +2 -9
  59. package/dist/components/Text/Text.d.ts.map +1 -1
  60. package/dist/components/Text/index.d.ts +1 -1
  61. package/dist/components/Text/index.d.ts.map +1 -1
  62. package/dist/components/TextArea/TextArea.d.ts +31 -0
  63. package/dist/components/TextArea/TextArea.d.ts.map +1 -0
  64. package/dist/components/TextArea/TextArea.stories.d.ts +27 -0
  65. package/dist/components/TextArea/TextArea.stories.d.ts.map +1 -0
  66. package/dist/components/TextArea/index.d.ts +3 -0
  67. package/dist/components/TextArea/index.d.ts.map +1 -0
  68. package/dist/components/TextField/TextField.d.ts +4 -0
  69. package/dist/components/TextField/TextField.d.ts.map +1 -1
  70. package/dist/index.css +1 -1
  71. package/dist/index.d.ts +11 -0
  72. package/dist/index.d.ts.map +1 -1
  73. package/dist/index.esm.js +1208 -145
  74. package/dist/index.esm.js.map +1 -1
  75. package/dist/index.js +1227 -144
  76. package/dist/index.js.map +1 -1
  77. package/dist/lib/icons.d.ts +96 -0
  78. package/dist/lib/icons.d.ts.map +1 -0
  79. package/dist/lib/utils.d.ts.map +1 -1
  80. package/package.json +6 -2
@@ -0,0 +1,96 @@
1
+ import * as React from "react";
2
+ /**
3
+ * Icon component props
4
+ */
5
+ export interface IconProps extends React.SVGProps<SVGSVGElement> {
6
+ size?: number | string;
7
+ }
8
+ /**
9
+ * ==============================================
10
+ * HOW TO ADD A NEW ICON:
11
+ * ==============================================
12
+ *
13
+ * 1. Add your SVG file to: src/assets/icons/{iconName}.svg
14
+ *
15
+ * 2. Copy the SVG content from the file
16
+ *
17
+ * 3. Add it to the iconRegistry below:
18
+ * iconName: `<svg>...</svg>`,
19
+ *
20
+ * 4. Use it anywhere in your app:
21
+ * <Icon name="iconName" size={24} />
22
+ *
23
+ * The Icon component will automatically:
24
+ * - Replace hardcoded colors with currentColor
25
+ * - Allow you to control color via className or style
26
+ * - Resize based on the size prop
27
+ * ==============================================
28
+ */
29
+ /**
30
+ * Icon registry - maps icon names to their SVG content
31
+ * Add your icons here by copying the SVG content from your icon files
32
+ */
33
+ declare const iconRegistry: Record<string, string>;
34
+ /**
35
+ * Type for available icon names (with autocomplete support)
36
+ */
37
+ export type IconName = keyof typeof iconRegistry;
38
+ /**
39
+ * Icon component that renders an SVG icon by name
40
+ *
41
+ * Features:
42
+ * - ✓ Automatically converts hardcoded colors to currentColor
43
+ * - ✓ Control color via className (e.g., "text-blue-500")
44
+ * - ✓ Control color via style prop
45
+ * - ✓ Customizable size
46
+ * - ✓ TypeScript autocomplete for icon names
47
+ * - ✓ All standard SVG props supported
48
+ *
49
+ * @example
50
+ * ```tsx
51
+ * // Basic usage
52
+ * <Icon name="tick" size={24} />
53
+ *
54
+ * // With Tailwind color class
55
+ * <Icon name="tick" size={16} className="text-blue-500" />
56
+ *
57
+ * // With inline styles
58
+ * <Icon name="check" size={20} style={{ color: 'red' }} />
59
+ *
60
+ * // With custom props
61
+ * <Icon name="tick" size={32} className="hover:text-green-600 transition-colors" />
62
+ * ```
63
+ */
64
+ export interface DynamicIconProps extends Omit<React.SVGProps<SVGSVGElement>, "ref" | "dangerouslySetInnerHTML"> {
65
+ /** Name of the icon to render */
66
+ name: IconName;
67
+ /** Size of the icon (width and height) */
68
+ size?: number | string;
69
+ }
70
+ export declare const Icon: React.FC<DynamicIconProps>;
71
+ /**
72
+ * Get all available icon names from the registry
73
+ * @returns Array of registered icon names
74
+ *
75
+ * @example
76
+ * ```tsx
77
+ * const icons = getAvailableIcons();
78
+ * console.log(icons); // ['tick', 'check', ...]
79
+ * ```
80
+ */
81
+ export declare function getAvailableIcons(): IconName[];
82
+ /**
83
+ * Check if an icon exists in the registry
84
+ * @param name - Icon name to check
85
+ * @returns true if the icon exists
86
+ *
87
+ * @example
88
+ * ```tsx
89
+ * if (hasIcon('tick')) {
90
+ * // Icon exists
91
+ * }
92
+ * ```
93
+ */
94
+ export declare function hasIcon(name: string): name is IconName;
95
+ export { iconRegistry };
96
+ //# sourceMappingURL=icons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../src/lib/icons.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;GAEG;AACH,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC9D,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH;;;GAGG;AACH,QAAA,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAUxC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,YAAY,CAAC;AAEjD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,WAAW,gBACf,SAAQ,IAAI,CACV,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,EAC7B,KAAK,GAAG,yBAAyB,CAClC;IACD,iCAAiC;IACjC,IAAI,EAAE,QAAQ,CAAC;IACf,0CAA0C;IAC1C,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAkD3C,CAAC;AAIF;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,IAAI,QAAQ,EAAE,CAE9C;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,QAAQ,CAEtD;AAGD,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAoB7C,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAYzC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAgC7C,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAYzC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "infinity-ui-elements",
3
- "version": "1.3.1",
3
+ "version": "1.4.1-beta.0",
4
4
  "description": "A React TypeScript component library with Tailwind CSS design system",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",
@@ -23,7 +23,11 @@
23
23
  "version:major": "yarn version major && yarn build",
24
24
  "publish:patch": "yarn version:patch && npm publish",
25
25
  "publish:minor": "yarn version:minor && npm publish",
26
- "publish:major": "yarn version:major && npm publish"
26
+ "publish:major": "yarn version:major && npm publish",
27
+ "version:beta": "npm version prerelease --preid=beta --no-git-tag-version",
28
+ "publish:beta": "yarn version:beta && yarn build && npm publish --tag beta",
29
+ "publish:stable": "yarn build && npm publish --tag latest",
30
+ "promote:beta-to-prod": "npm dist-tag add infinity-ui-elements@$(node -p \"require('./package.json').version\") latest"
27
31
  },
28
32
  "keywords": [
29
33
  "react",