@craftzbay/ui 0.1.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 (64) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +157 -0
  3. package/dist-lib/components/patterns/AppShell.d.ts +9 -0
  4. package/dist-lib/components/patterns/Authentication.d.ts +45 -0
  5. package/dist-lib/components/patterns/DataTablePage.d.ts +1 -0
  6. package/dist-lib/components/patterns/FirstRunEmpty.d.ts +1 -0
  7. package/dist-lib/components/patterns/Onboarding.d.ts +1 -0
  8. package/dist-lib/components/patterns/Pricing.d.ts +1 -0
  9. package/dist-lib/components/patterns/RecordDetail.d.ts +1 -0
  10. package/dist-lib/components/patterns/Settings.d.ts +1 -0
  11. package/dist-lib/components/ui/Accordion.d.ts +21 -0
  12. package/dist-lib/components/ui/Alert.d.ts +35 -0
  13. package/dist-lib/components/ui/Avatar.d.ts +52 -0
  14. package/dist-lib/components/ui/Badge.d.ts +24 -0
  15. package/dist-lib/components/ui/Breadcrumbs.d.ts +31 -0
  16. package/dist-lib/components/ui/Button.d.ts +50 -0
  17. package/dist-lib/components/ui/Card.d.ts +37 -0
  18. package/dist-lib/components/ui/Checkbox.d.ts +28 -0
  19. package/dist-lib/components/ui/Combobox.d.ts +58 -0
  20. package/dist-lib/components/ui/CommandPalette.d.ts +109 -0
  21. package/dist-lib/components/ui/ContextMenu.d.ts +45 -0
  22. package/dist-lib/components/ui/DataGrid.d.ts +66 -0
  23. package/dist-lib/components/ui/DatePicker.d.ts +42 -0
  24. package/dist-lib/components/ui/Dialog.d.ts +62 -0
  25. package/dist-lib/components/ui/DropdownMenu.d.ts +47 -0
  26. package/dist-lib/components/ui/EmptyState.d.ts +31 -0
  27. package/dist-lib/components/ui/ErrorState.d.ts +29 -0
  28. package/dist-lib/components/ui/Form.d.ts +22 -0
  29. package/dist-lib/components/ui/IconButton.d.ts +34 -0
  30. package/dist-lib/components/ui/Input.d.ts +49 -0
  31. package/dist-lib/components/ui/Kbd.d.ts +16 -0
  32. package/dist-lib/components/ui/MultiSelect.d.ts +62 -0
  33. package/dist-lib/components/ui/Pagination.d.ts +32 -0
  34. package/dist-lib/components/ui/Popover.d.ts +16 -0
  35. package/dist-lib/components/ui/Progress.d.ts +40 -0
  36. package/dist-lib/components/ui/RadioGroup.d.ts +27 -0
  37. package/dist-lib/components/ui/ScrollArea.d.ts +13 -0
  38. package/dist-lib/components/ui/Select.d.ts +56 -0
  39. package/dist-lib/components/ui/Separator.d.ts +13 -0
  40. package/dist-lib/components/ui/Sheet.d.ts +46 -0
  41. package/dist-lib/components/ui/Sidebar.d.ts +67 -0
  42. package/dist-lib/components/ui/Skeleton.d.ts +26 -0
  43. package/dist-lib/components/ui/Slider.d.ts +33 -0
  44. package/dist-lib/components/ui/Spinner.d.ts +23 -0
  45. package/dist-lib/components/ui/Stepper.d.ts +34 -0
  46. package/dist-lib/components/ui/Switch.d.ts +33 -0
  47. package/dist-lib/components/ui/Table.d.ts +35 -0
  48. package/dist-lib/components/ui/Tabs.d.ts +32 -0
  49. package/dist-lib/components/ui/Textarea.d.ts +34 -0
  50. package/dist-lib/components/ui/Toast.d.ts +33 -0
  51. package/dist-lib/components/ui/Tooltip.d.ts +35 -0
  52. package/dist-lib/components/ui/TopNav.d.ts +33 -0
  53. package/dist-lib/hooks/use-media-query.d.ts +9 -0
  54. package/dist-lib/hooks/use-toast.d.ts +43 -0
  55. package/dist-lib/icons/index.d.ts +11 -0
  56. package/dist-lib/index.cjs +8 -0
  57. package/dist-lib/index.cjs.map +1 -0
  58. package/dist-lib/index.d.ts +58 -0
  59. package/dist-lib/index.js +4336 -0
  60. package/dist-lib/index.js.map +1 -0
  61. package/dist-lib/lib/cva.d.ts +6 -0
  62. package/dist-lib/lib/utils.d.ts +12 -0
  63. package/dist-lib/styles.css +1 -0
  64. package/package.json +118 -0
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Single import surface for `class-variance-authority` so every component
3
+ * uses identical defaults (in particular, the `compoundVariants` API and the
4
+ * `VariantProps` type).
5
+ */
6
+ export { cva, type VariantProps } from 'class-variance-authority';
@@ -0,0 +1,12 @@
1
+ import { ClassValue } from 'clsx';
2
+ /**
3
+ * Compose Tailwind class names safely.
4
+ *
5
+ * - `clsx` handles conditionals, arrays, and objects.
6
+ * - `tailwind-merge` resolves conflicts: `cn('p-2', condition && 'p-4')` returns `'p-4'`.
7
+ *
8
+ * Use this everywhere classes are composed. Never concatenate Tailwind
9
+ * classes with template strings — they will not de-duplicate.
10
+ */
11
+ export declare function cn(...inputs: ClassValue[]): string;
12
+ export declare function uid(prefix?: string): string;
@@ -0,0 +1 @@
1
+ .rdp-root{--rdp-accent-color: blue;--rdp-accent-background-color: #f0f0ff;--rdp-day-height: 44px;--rdp-day-width: 44px;--rdp-day_button-border-radius: 100%;--rdp-day_button-border: 2px solid transparent;--rdp-day_button-height: 42px;--rdp-day_button-width: 42px;--rdp-selected-border: 2px solid var(--rdp-accent-color);--rdp-disabled-opacity: .5;--rdp-outside-opacity: .75;--rdp-today-color: var(--rdp-accent-color);--rdp-dropdown-gap: .5rem;--rdp-months-gap: 2rem;--rdp-nav_button-disabled-opacity: .5;--rdp-nav_button-height: 2.25rem;--rdp-nav_button-width: 2.25rem;--rdp-nav-height: 2.75rem;--rdp-range_middle-background-color: var(--rdp-accent-background-color);--rdp-range_middle-color: inherit;--rdp-range_start-color: white;--rdp-range_start-background: linear-gradient( var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50% );--rdp-range_start-date-background-color: var(--rdp-accent-color);--rdp-range_end-background: linear-gradient( var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50% );--rdp-range_end-color: white;--rdp-range_end-date-background-color: var(--rdp-accent-color);--rdp-week_number-border-radius: 100%;--rdp-week_number-border: 2px solid transparent;--rdp-week_number-height: var(--rdp-day-height);--rdp-week_number-opacity: .75;--rdp-week_number-width: var(--rdp-day-width);--rdp-weeknumber-text-align: center;--rdp-weekday-opacity: .75;--rdp-weekday-padding: .5rem 0rem;--rdp-weekday-text-align: center;--rdp-gradient-direction: 90deg;--rdp-animation_duration: .3s;--rdp-animation_timing: cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction: -90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity: unset}.rdp-root{position:relative;box-sizing:border-box}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;justify-content:center;align-items:center;display:flex;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:0}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{border:none;background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;position:relative;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{display:inline-block;fill:var(--rdp-accent-color)}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{position:relative;display:inline-flex;align-items:center;gap:var(--rdp-dropdown-gap)}.rdp-dropdown{z-index:2;opacity:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:0;width:100%;margin:0;padding:0;cursor:inherit;border:none;line-height:inherit}.rdp-dropdown_root{position:relative;display:inline-flex;align-items:center}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{display:flex;align-content:center;height:var(--rdp-nav-height);font-weight:700;font-size:large}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute;inset-inline-start:0;top:0;height:var(--rdp-nav-height);display:inline-flex}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute;inset-inline-end:0;top:0;height:var(--rdp-nav-height);display:inline-flex;justify-content:center}.rdp-months{position:relative;display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:-moz-fit-content;max-width:fit-content}.rdp-month_grid{border-collapse:collapse}.rdp-nav{position:absolute;inset-block-start:0;inset-inline-end:0;display:flex;align-items:center;height:var(--rdp-nav-height)}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);font-weight:500;font-size:smaller;text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{opacity:var(--rdp-week_number-opacity);font-weight:400;font-size:small;height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-weight:700;font-size:large}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}
package/package.json ADDED
@@ -0,0 +1,118 @@
1
+ {
2
+ "name": "@craftzbay/ui",
3
+ "version": "0.1.0",
4
+ "description": "Refined-minimal Tailwind v4 + React design system — 40+ accessible primitives and ready-made page patterns.",
5
+ "license": "MIT",
6
+ "author": "craftzbay",
7
+ "homepage": "https://design.runestonetechnologies.com",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "https://github.com/craftzbay/design-system.git"
11
+ },
12
+ "bugs": {
13
+ "url": "https://github.com/craftzbay/design-system/issues"
14
+ },
15
+ "keywords": [
16
+ "react",
17
+ "tailwind",
18
+ "tailwindcss",
19
+ "design-system",
20
+ "ui",
21
+ "components",
22
+ "radix",
23
+ "accessible"
24
+ ],
25
+ "type": "module",
26
+ "main": "./dist-lib/index.cjs",
27
+ "module": "./dist-lib/index.js",
28
+ "types": "./dist-lib/index.d.ts",
29
+ "exports": {
30
+ ".": {
31
+ "types": "./dist-lib/index.d.ts",
32
+ "import": "./dist-lib/index.js",
33
+ "require": "./dist-lib/index.cjs"
34
+ },
35
+ "./styles.css": "./dist-lib/styles.css",
36
+ "./package.json": "./package.json"
37
+ },
38
+ "sideEffects": [
39
+ "**/*.css"
40
+ ],
41
+ "files": [
42
+ "dist-lib",
43
+ "README.md",
44
+ "LICENSE"
45
+ ],
46
+ "publishConfig": {
47
+ "access": "public"
48
+ },
49
+ "scripts": {
50
+ "dev": "vite",
51
+ "build": "vite build",
52
+ "build:lib": "BUILD_TARGET=lib vite build",
53
+ "typecheck": "tsc --noEmit",
54
+ "lint": "eslint . --ext .ts,.tsx",
55
+ "format": "prettier --write .",
56
+ "storybook": "storybook dev -p 6006",
57
+ "build-storybook": "storybook build",
58
+ "prepublishOnly": "pnpm build:lib"
59
+ },
60
+ "dependencies": {
61
+ "@radix-ui/react-accordion": "^1.2.2",
62
+ "@radix-ui/react-avatar": "^1.1.2",
63
+ "@radix-ui/react-checkbox": "^1.1.3",
64
+ "@radix-ui/react-context-menu": "^2.2.4",
65
+ "@radix-ui/react-dialog": "^1.1.4",
66
+ "@radix-ui/react-dropdown-menu": "^2.1.4",
67
+ "@radix-ui/react-label": "^2.1.1",
68
+ "@radix-ui/react-popover": "^1.1.4",
69
+ "@radix-ui/react-progress": "^1.1.1",
70
+ "@radix-ui/react-radio-group": "^1.2.2",
71
+ "@radix-ui/react-scroll-area": "^1.2.2",
72
+ "@radix-ui/react-select": "^2.1.4",
73
+ "@radix-ui/react-separator": "^1.1.1",
74
+ "@radix-ui/react-slider": "^1.2.2",
75
+ "@radix-ui/react-slot": "^1.1.1",
76
+ "@radix-ui/react-switch": "^1.1.2",
77
+ "@radix-ui/react-tabs": "^1.1.2",
78
+ "@radix-ui/react-toast": "^1.2.4",
79
+ "@radix-ui/react-tooltip": "^1.1.6",
80
+ "class-variance-authority": "^0.7.1",
81
+ "clsx": "^2.1.1",
82
+ "cmdk": "^1.0.4",
83
+ "lucide-react": "^0.460.0",
84
+ "react-day-picker": "^9.4.4",
85
+ "react-hook-form": "^7.54.0",
86
+ "tailwind-merge": "^2.5.5"
87
+ },
88
+ "devDependencies": {
89
+ "@storybook/addon-a11y": "^10.4.0",
90
+ "@storybook/addon-docs": "^10.4.0",
91
+ "@storybook/addon-themes": "^10.4.0",
92
+ "@storybook/react-vite": "^10.4.0",
93
+ "@tailwindcss/postcss": "^4.0.0",
94
+ "@tailwindcss/vite": "^4.0.0",
95
+ "@types/node": "^22.10.0",
96
+ "@types/react": "^18.3.12",
97
+ "@types/react-dom": "^18.3.1",
98
+ "@vitejs/plugin-react": "^4.3.4",
99
+ "autoprefixer": "^10.4.20",
100
+ "eslint": "^9.16.0",
101
+ "eslint-plugin-react": "^7.37.2",
102
+ "eslint-plugin-react-hooks": "^5.0.0",
103
+ "postcss": "^8.4.49",
104
+ "prettier": "^3.4.2",
105
+ "prettier-plugin-tailwindcss": "^0.6.9",
106
+ "react": "^18.3.1",
107
+ "react-dom": "^18.3.1",
108
+ "storybook": "^10.4.0",
109
+ "tailwindcss": "^4.0.0",
110
+ "typescript": "^5.7.2",
111
+ "vite": "^6.0.3",
112
+ "vite-plugin-dts": "^5.0.0"
113
+ },
114
+ "peerDependencies": {
115
+ "react": ">=18",
116
+ "react-dom": ">=18"
117
+ }
118
+ }