@tonyarbor/components 0.6.0 → 0.7.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 (62) hide show
  1. package/dist/AvatarLogoLockup.d.mts +41 -0
  2. package/dist/AvatarLogoLockup.d.ts +41 -0
  3. package/dist/AvatarLogoLockup.js +344 -0
  4. package/dist/AvatarLogoLockup.js.map +1 -0
  5. package/dist/AvatarLogoLockup.mjs +9 -0
  6. package/dist/AvatarLogoLockup.mjs.map +1 -0
  7. package/dist/Button.d.mts +1 -1
  8. package/dist/Button.d.ts +1 -1
  9. package/dist/Button.js +56 -0
  10. package/dist/Button.js.map +1 -1
  11. package/dist/Button.mjs +1 -1
  12. package/dist/Modal.d.mts +73 -0
  13. package/dist/Modal.d.ts +73 -0
  14. package/dist/Modal.js +114 -0
  15. package/dist/Modal.js.map +1 -0
  16. package/dist/Modal.mjs +9 -0
  17. package/dist/Modal.mjs.map +1 -0
  18. package/dist/ModalFooter.d.mts +40 -0
  19. package/dist/ModalFooter.d.ts +40 -0
  20. package/dist/ModalFooter.js +73 -0
  21. package/dist/ModalFooter.js.map +1 -0
  22. package/dist/ModalFooter.mjs +7 -0
  23. package/dist/ModalFooter.mjs.map +1 -0
  24. package/dist/ModalHeader.d.mts +65 -0
  25. package/dist/ModalHeader.d.ts +65 -0
  26. package/dist/ModalHeader.js +257 -0
  27. package/dist/ModalHeader.js.map +1 -0
  28. package/dist/ModalHeader.mjs +8 -0
  29. package/dist/ModalHeader.mjs.map +1 -0
  30. package/dist/TopNavBar.d.mts +103 -0
  31. package/dist/TopNavBar.d.ts +103 -0
  32. package/dist/TopNavBar.js +994 -0
  33. package/dist/TopNavBar.js.map +1 -0
  34. package/dist/TopNavBar.mjs +13 -0
  35. package/dist/TopNavBar.mjs.map +1 -0
  36. package/dist/TopNavItem.d.mts +33 -0
  37. package/dist/TopNavItem.d.ts +33 -0
  38. package/dist/TopNavItem.js +108 -0
  39. package/dist/TopNavItem.js.map +1 -0
  40. package/dist/TopNavItem.mjs +7 -0
  41. package/dist/TopNavItem.mjs.map +1 -0
  42. package/dist/chunk-7JWINM2N.mjs +77 -0
  43. package/dist/chunk-7JWINM2N.mjs.map +1 -0
  44. package/dist/chunk-AVYGOALO.mjs +72 -0
  45. package/dist/chunk-AVYGOALO.mjs.map +1 -0
  46. package/dist/chunk-GIQDPHZQ.mjs +121 -0
  47. package/dist/chunk-GIQDPHZQ.mjs.map +1 -0
  48. package/dist/chunk-HG2ORLLW.mjs +116 -0
  49. package/dist/chunk-HG2ORLLW.mjs.map +1 -0
  50. package/dist/{chunk-ALEJXAZY.mjs → chunk-NOUFR6W2.mjs} +57 -1
  51. package/dist/chunk-NOUFR6W2.mjs.map +1 -0
  52. package/dist/chunk-P7RKUESQ.mjs +37 -0
  53. package/dist/chunk-P7RKUESQ.mjs.map +1 -0
  54. package/dist/chunk-YUXQQX7M.mjs +182 -0
  55. package/dist/chunk-YUXQQX7M.mjs.map +1 -0
  56. package/dist/index.d.mts +7 -1
  57. package/dist/index.d.ts +7 -1
  58. package/dist/index.js +628 -2
  59. package/dist/index.js.map +1 -1
  60. package/dist/index.mjs +28 -2
  61. package/package.json +31 -1
  62. package/dist/chunk-ALEJXAZY.mjs.map +0 -1
package/dist/index.mjs CHANGED
@@ -4,6 +4,25 @@ import {
4
4
  import {
5
5
  Section
6
6
  } from "./chunk-YJ36ZZJQ.mjs";
7
+ import {
8
+ ModalHeader
9
+ } from "./chunk-GIQDPHZQ.mjs";
10
+ import {
11
+ ModalFooter
12
+ } from "./chunk-P7RKUESQ.mjs";
13
+ import {
14
+ Modal,
15
+ ModalContent
16
+ } from "./chunk-7JWINM2N.mjs";
17
+ import {
18
+ TopNavBar
19
+ } from "./chunk-YUXQQX7M.mjs";
20
+ import {
21
+ AvatarLogoLockup
22
+ } from "./chunk-HG2ORLLW.mjs";
23
+ import {
24
+ TopNavItem
25
+ } from "./chunk-AVYGOALO.mjs";
7
26
  import {
8
27
  Logo
9
28
  } from "./chunk-NNYU4DPD.mjs";
@@ -78,7 +97,7 @@ import {
78
97
  } from "./chunk-U4JXKZZG.mjs";
79
98
  import {
80
99
  Button
81
- } from "./chunk-ALEJXAZY.mjs";
100
+ } from "./chunk-NOUFR6W2.mjs";
82
101
  import {
83
102
  Card
84
103
  } from "./chunk-ZFKW3P6P.mjs";
@@ -99,6 +118,7 @@ import {
99
118
  } from "./chunk-CUTYEIFE.mjs";
100
119
  export {
101
120
  Avatar,
121
+ AvatarLogoLockup,
102
122
  Banner,
103
123
  Breadcrumbs,
104
124
  Button,
@@ -111,6 +131,10 @@ export {
111
131
  ListRow,
112
132
  ListRowMultiLine,
113
133
  Logo,
134
+ Modal,
135
+ ModalContent,
136
+ ModalFooter,
137
+ ModalHeader,
114
138
  NumericInput,
115
139
  Pagination,
116
140
  Radio,
@@ -130,6 +154,8 @@ export {
130
154
  TextArea,
131
155
  Toast,
132
156
  Toggle,
133
- Tooltip
157
+ Tooltip,
158
+ TopNavBar,
159
+ TopNavItem
134
160
  };
135
161
  //# sourceMappingURL=index.mjs.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tonyarbor/components",
3
- "version": "0.6.0",
3
+ "version": "0.7.1",
4
4
  "description": "React components for Arbor Design System",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -175,6 +175,36 @@
175
175
  "import": "./dist/Section.mjs",
176
176
  "require": "./dist/Section.js",
177
177
  "types": "./dist/Section.d.ts"
178
+ },
179
+ "./ModalHeader": {
180
+ "import": "./dist/ModalHeader.mjs",
181
+ "require": "./dist/ModalHeader.js",
182
+ "types": "./dist/ModalHeader.d.ts"
183
+ },
184
+ "./ModalFooter": {
185
+ "import": "./dist/ModalFooter.mjs",
186
+ "require": "./dist/ModalFooter.js",
187
+ "types": "./dist/ModalFooter.d.ts"
188
+ },
189
+ "./Modal": {
190
+ "import": "./dist/Modal.mjs",
191
+ "require": "./dist/Modal.js",
192
+ "types": "./dist/Modal.d.ts"
193
+ },
194
+ "./AvatarLogoLockup": {
195
+ "import": "./dist/AvatarLogoLockup.mjs",
196
+ "require": "./dist/AvatarLogoLockup.js",
197
+ "types": "./dist/AvatarLogoLockup.d.ts"
198
+ },
199
+ "./TopNavItem": {
200
+ "import": "./dist/TopNavItem.mjs",
201
+ "require": "./dist/TopNavItem.js",
202
+ "types": "./dist/TopNavItem.d.ts"
203
+ },
204
+ "./TopNavBar": {
205
+ "import": "./dist/TopNavBar.mjs",
206
+ "require": "./dist/TopNavBar.js",
207
+ "types": "./dist/TopNavBar.d.ts"
178
208
  }
179
209
  },
180
210
  "files": [
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/Button/Button.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Slot } from '@radix-ui/react-slot';\nimport { clsx } from 'clsx';\n\nexport type ButtonVariant = 'primary' | 'secondary' | 'destructive' | 'ghost';\nexport type ButtonSize = 'small' | 'medium';\n\nexport interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n /**\n * The visual style variant of the button\n * @default 'primary'\n */\n variant?: ButtonVariant;\n /**\n * The size of the button\n * @default 'medium'\n */\n size?: ButtonSize;\n /**\n * If true, the component will be rendered as a child element\n * and merge its props with the child\n */\n asChild?: boolean;\n /**\n * The content of the button\n */\n children: React.ReactNode;\n}\n\n// Arbor Design System button styles\nconst buttonStyles = {\n base: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n fontFamily: \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\",\n fontWeight: '500',\n borderRadius: '99px', // Pill shape\n border: 'none',\n cursor: 'pointer',\n transition: 'all 0.2s ease-in-out',\n outline: 'none',\n },\n variants: {\n primary: {\n backgroundColor: '#0e8a0e', // brand-600\n color: '#ffffff',\n ':hover': {\n backgroundColor: '#005700', // brand-800\n },\n ':active': {\n backgroundColor: '#024002', // brand-900\n },\n ':focus-visible': {\n outline: '3px solid #3cad51', // brand-500\n outlineOffset: '0px',\n },\n ':disabled': {\n backgroundColor: '#b3b3b3', // grey-400\n cursor: 'not-allowed',\n },\n },\n secondary: {\n backgroundColor: '#ffffff',\n color: '#2f2f2f', // grey-900\n border: '1px solid #d1d1d1', // grey-300\n ':hover': {\n backgroundColor: '#f8f8f8', // grey-050\n },\n ':active': {\n backgroundColor: '#efefef', // grey-100\n },\n ':focus-visible': {\n outline: '3px solid #3cad51', // brand-500\n outlineOffset: '0px',\n },\n ':disabled': {\n backgroundColor: '#f8f8f8',\n color: '#b3b3b3',\n cursor: 'not-allowed',\n },\n },\n destructive: {\n backgroundColor: '#c93232', // destructive-500\n color: '#ffffff',\n ':hover': {\n backgroundColor: '#920a0a', // destructive-700\n },\n ':active': {\n backgroundColor: '#610202', // destructive-800\n },\n ':focus-visible': {\n outline: '3px solid #e86565', // destructive-300\n outlineOffset: '0px',\n },\n ':disabled': {\n backgroundColor: '#b3b3b3',\n cursor: 'not-allowed',\n },\n },\n ghost: {\n backgroundColor: 'transparent',\n color: '#0b800b', // brand-700 for link style\n textDecoration: 'underline',\n ':hover': {\n color: '#005700', // brand-800\n },\n ':active': {\n color: '#024002', // brand-900\n },\n ':focus-visible': {\n outline: '3px solid #3cad51',\n outlineOffset: '2px',\n },\n ':disabled': {\n color: '#b3b3b3',\n cursor: 'not-allowed',\n },\n },\n },\n sizes: {\n small: {\n height: '32px',\n fontSize: '13px',\n padding: '8px 16px',\n },\n medium: {\n height: '36px',\n fontSize: '13px',\n padding: '8px 16px',\n },\n },\n};\n\n/**\n * Button component - Arbor Design System\n *\n * A flexible button component with pill-shaped design following Arbor's design system.\n * Supports primary (green), secondary (outlined), destructive (red), and ghost (link-style) variants.\n *\n * @example\n * ```tsx\n * <Button variant=\"primary\" size=\"medium\">\n * Save Changes\n * </Button>\n * ```\n */\nexport const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n variant = 'primary',\n size = 'medium',\n asChild = false,\n className,\n disabled,\n style,\n children,\n onMouseEnter,\n onMouseLeave,\n onFocus,\n onBlur,\n ...props\n },\n ref\n ) => {\n const Comp = asChild ? Slot : 'button';\n const [isHovered, setIsHovered] = React.useState(false);\n const [isFocused, setIsFocused] = React.useState(false);\n\n const variantStyles = buttonStyles.variants[variant];\n const sizeStyles = buttonStyles.sizes[size];\n\n const combinedStyle: React.CSSProperties = {\n ...buttonStyles.base,\n ...variantStyles,\n ...sizeStyles,\n ...(isHovered && !disabled && variantStyles[':hover']),\n ...(isFocused && !disabled && variantStyles[':focus-visible']),\n ...(disabled && variantStyles[':disabled']),\n ...style,\n };\n\n const handleMouseEnter = (e: React.MouseEvent<HTMLButtonElement>) => {\n setIsHovered(true);\n onMouseEnter?.(e);\n };\n\n const handleMouseLeave = (e: React.MouseEvent<HTMLButtonElement>) => {\n setIsHovered(false);\n onMouseLeave?.(e);\n };\n\n const handleFocus = (e: React.FocusEvent<HTMLButtonElement>) => {\n setIsFocused(true);\n onFocus?.(e);\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLButtonElement>) => {\n setIsFocused(false);\n onBlur?.(e);\n };\n\n return (\n <Comp\n ref={ref}\n className={clsx('arbor-button', className)}\n style={combinedStyle}\n disabled={disabled}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onFocus={handleFocus}\n onBlur={handleBlur}\n {...props}\n >\n {children}\n </Comp>\n );\n }\n);\n\nButton.displayName = 'Button';\n"],"mappings":"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","names":[]}