@ingamigo/ui 1.2.2 → 1.2.3

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 (61) hide show
  1. package/dist/index.d.ts +354 -13
  2. package/dist/index.js +911 -8
  3. package/dist/index.js.map +1 -1
  4. package/package.json +4 -2
  5. package/dist/components/button/button.d.ts +0 -8
  6. package/dist/components/button/button.d.ts.map +0 -1
  7. package/dist/components/button/button.js +0 -7
  8. package/dist/components/button/button.js.map +0 -1
  9. package/dist/components/button/button.styles.d.ts +0 -8
  10. package/dist/components/button/button.styles.d.ts.map +0 -1
  11. package/dist/components/button/button.styles.js +0 -117
  12. package/dist/components/button/button.styles.js.map +0 -1
  13. package/dist/components/input/input.d.ts +0 -7
  14. package/dist/components/input/input.d.ts.map +0 -1
  15. package/dist/components/input/input.js +0 -7
  16. package/dist/components/input/input.js.map +0 -1
  17. package/dist/components/input/input.styles.d.ts +0 -9
  18. package/dist/components/input/input.styles.d.ts.map +0 -1
  19. package/dist/components/input/input.styles.js +0 -83
  20. package/dist/components/input/input.styles.js.map +0 -1
  21. package/dist/components/logo/logo.d.ts +0 -9
  22. package/dist/components/logo/logo.d.ts.map +0 -1
  23. package/dist/components/logo/logo.js +0 -77
  24. package/dist/components/logo/logo.js.map +0 -1
  25. package/dist/components/logo/logo.styles.d.ts +0 -56
  26. package/dist/components/logo/logo.styles.d.ts.map +0 -1
  27. package/dist/components/logo/logo.styles.js +0 -127
  28. package/dist/components/logo/logo.styles.js.map +0 -1
  29. package/dist/components/segmented-control/segmented-control.d.ts +0 -16
  30. package/dist/components/segmented-control/segmented-control.d.ts.map +0 -1
  31. package/dist/components/segmented-control/segmented-control.js +0 -50
  32. package/dist/components/segmented-control/segmented-control.js.map +0 -1
  33. package/dist/components/segmented-control/segmented-control.stories .d.ts +0 -25
  34. package/dist/components/segmented-control/segmented-control.stories .d.ts.map +0 -1
  35. package/dist/components/segmented-control/segmented-control.stories .js +0 -91
  36. package/dist/components/segmented-control/segmented-control.stories .js.map +0 -1
  37. package/dist/components/segmented-control/segmented-control.styles.d.ts +0 -11
  38. package/dist/components/segmented-control/segmented-control.styles.d.ts.map +0 -1
  39. package/dist/components/segmented-control/segmented-control.styles.js +0 -83
  40. package/dist/components/segmented-control/segmented-control.styles.js.map +0 -1
  41. package/dist/components/typography/typography.d.ts +0 -9
  42. package/dist/components/typography/typography.d.ts.map +0 -1
  43. package/dist/components/typography/typography.js +0 -17
  44. package/dist/components/typography/typography.js.map +0 -1
  45. package/dist/components/typography/typography.styles.d.ts +0 -5
  46. package/dist/components/typography/typography.styles.d.ts.map +0 -1
  47. package/dist/components/typography/typography.styles.js +0 -63
  48. package/dist/components/typography/typography.styles.js.map +0 -1
  49. package/dist/index.d.ts.map +0 -1
  50. package/dist/theme/ThemeProvider.d.ts +0 -6
  51. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  52. package/dist/theme/ThemeProvider.js +0 -8
  53. package/dist/theme/ThemeProvider.js.map +0 -1
  54. package/dist/theme/index.d.ts +0 -4
  55. package/dist/theme/index.d.ts.map +0 -1
  56. package/dist/theme/index.js +0 -3
  57. package/dist/theme/index.js.map +0 -1
  58. package/dist/theme/theme.d.ts +0 -458
  59. package/dist/theme/theme.d.ts.map +0 -1
  60. package/dist/theme/theme.js +0 -210
  61. package/dist/theme/theme.js.map +0 -1
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAC/F,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,wBAAwB,CAAA"}
1
+ "use client";{"version":3,"sources":["../src/theme/theme.ts","../src/theme/ThemeProvider.tsx","../src/components/button/button.styles.ts","../src/components/button/button.tsx","../src/components/input/input.styles.ts","../src/components/input/input.tsx","../src/components/typography/typography.styles.ts","../src/components/typography/typography.tsx","../src/components/segmented-control/segmented-control.styles.ts","../src/components/segmented-control/segmented-control.tsx","../src/components/logo/logo.styles.ts","../src/components/logo/logo.tsx"],"names":["EmotionThemeProvider","styled","theme","jsx"],"mappings":"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","file":"index.js","sourcesContent":["const primitives = {\n colors: {\n white: \"#ffffff\",\n black: \"#000000\",\n\n neutral: {\n 50: \"#f5f5f5\",\n 100: \"#e9e9ea\",\n 200: \"#d5d5d7\",\n 300: \"#b9b9bd\",\n 400: \"#97979d\",\n 500: \"#7b7b82\",\n 600: \"#5f6066\",\n 700: \"#45464b\",\n 800: \"#2e3035\",\n 900: \"#1d1e20\",\n 950: \"#141414\",\n },\n\n brand: {\n 400: \"#63c69d\",\n 500: \"#4db288\",\n 600: \"#3d9873\",\n },\n\n success: \"#4db288\",\n warning: \"#e7b94c\",\n danger: \"#cc5c6f\",\n },\n\n spacing: {\n 1: \"4px\",\n 2: \"8px\",\n 3: \"12px\",\n 4: \"16px\",\n 5: \"20px\",\n 6: \"24px\",\n 7: \"28px\",\n 8: \"32px\",\n 10: \"40px\",\n 12: \"48px\",\n 16: \"64px\",\n 20: \"80px\",\n },\n\n radius: {\n none: \"0px\",\n xs: \"8px\",\n sm: \"12px\",\n md: \"16px\",\n lg: \"20px\",\n xl: \"24px\",\n \"2xl\": \"28px\",\n full: \"9999px\",\n },\n\n typography: {\n fontFamily: `\n Inter,\n system-ui,\n -apple-system,\n BlinkMacSystemFont,\n \"Segoe UI\",\n Roboto,\n Helvetica,\n Arial,\n sans-serif\n `,\n\n fontSize: {\n xs: \"12px\",\n sm: \"14px\",\n md: \"16px\",\n lg: \"18px\",\n xl: \"20px\",\n \"2xl\": \"24px\",\n \"3xl\": \"32px\",\n \"4xl\": \"36px\",\n \"5xl\": \"40px\",\n },\n\n fontWeight: {\n regular: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n },\n\n lineHeight: {\n tight: 1.15,\n normal: 1.4,\n relaxed: 1.6,\n },\n },\n\n shadows: {\n sm: \"0 2px 8px rgb(0 0 0 / 18%)\",\n md: \"0 6px 16px rgb(0 0 0 / 24%)\",\n lg: \"0 12px 32px rgb(0 0 0 / 30%)\",\n xl: \"0 20px 48px rgb(0 0 0 / 36%)\",\n },\n\n motion: {\n duration: {\n fast: \"150ms\",\n normal: \"200ms\",\n slow: \"300ms\",\n },\n\n ease: {\n standard: \"ease\",\n },\n },\n} as const;\n\nconst lightSemantic = {\n background: {\n primary: primitives.colors.neutral[50],\n secondary: primitives.colors.white,\n },\n\n surface: {\n primary: primitives.colors.white,\n secondary: primitives.colors.neutral[50],\n tertiary: primitives.colors.neutral[100],\n },\n\n text: {\n primary: primitives.colors.neutral[950],\n secondary: primitives.colors.neutral[600],\n tertiary: primitives.colors.neutral[500],\n disabled: primitives.colors.neutral[400],\n inverse: primitives.colors.white,\n },\n\n border: {\n default: primitives.colors.neutral[200],\n strong: primitives.colors.neutral[300],\n focus: primitives.colors.brand[500],\n },\n\n action: {\n primary: primitives.colors.brand[500],\n primaryHover: primitives.colors.brand[600],\n },\n\n status: {\n success: primitives.colors.success,\n warning: primitives.colors.warning,\n danger: primitives.colors.danger,\n },\n\n semanticTypography: {\n fontSize: {\n body: primitives.typography.fontSize.md,\n bodySm: primitives.typography.fontSize.sm,\n bodyLg: primitives.typography.fontSize.lg,\n\n label: primitives.typography.fontSize.sm,\n\n heading1: primitives.typography.fontSize[\"4xl\"],\n heading2: primitives.typography.fontSize[\"3xl\"],\n heading3: primitives.typography.fontSize[\"2xl\"],\n },\n\n fontWeight: {\n heading: primitives.typography.fontWeight.bold,\n body: primitives.typography.fontWeight.regular,\n label: primitives.typography.fontWeight.medium,\n },\n },\n\n radiusSemantic: {\n control: primitives.radius.md,\n card: primitives.radius.xl,\n container: primitives.radius.xl,\n },\n\n elevation: {\n surface: primitives.shadows.sm,\n floating: primitives.shadows.md,\n overlay: primitives.shadows.lg,\n },\n\n motionSemantic: {\n interaction: primitives.motion.duration.normal,\n transition: primitives.motion.ease.standard,\n },\n} as const;\n\nconst darkSemantic = {\n background: {\n primary: primitives.colors.neutral[950],\n secondary: primitives.colors.neutral[900],\n },\n\n surface: {\n primary: primitives.colors.neutral[900],\n secondary: primitives.colors.neutral[800],\n tertiary: primitives.colors.neutral[700],\n },\n\n text: {\n primary: primitives.colors.white,\n secondary: primitives.colors.neutral[300],\n tertiary: primitives.colors.neutral[400],\n disabled: primitives.colors.neutral[500],\n inverse: primitives.colors.neutral[950],\n },\n\n border: {\n default: primitives.colors.neutral[800],\n strong: primitives.colors.neutral[700],\n focus: primitives.colors.brand[400],\n },\n\n action: {\n primary: primitives.colors.brand[500],\n primaryHover: primitives.colors.brand[600],\n },\n\n status: {\n success: primitives.colors.success,\n warning: primitives.colors.warning,\n danger: primitives.colors.danger,\n },\n\n semanticTypography: lightSemantic.semanticTypography,\n radiusSemantic: lightSemantic.radiusSemantic,\n elevation: lightSemantic.elevation,\n motionSemantic: lightSemantic.motionSemantic,\n} as const;\n\nexport const lightTheme = {\n ...primitives,\n ...lightSemantic,\n} as const;\n\nexport const darkTheme = {\n ...primitives,\n ...darkSemantic,\n} as const;\n\nexport const theme = lightTheme;\n\nexport type IngAmigoTheme = typeof lightTheme;","\"use client\";\n\nimport {\n ThemeProvider as EmotionThemeProvider,\n} from \"@emotion/react\";\n\nimport { theme } from \"./theme\";\n\ninterface ThemeProviderProps {\n children: React.ReactNode;\n}\n\nexport function ThemeProvider({\n children,\n}: ThemeProviderProps) {\n return (\n <EmotionThemeProvider theme={theme}>\n {children}\n </EmotionThemeProvider>\n );\n}","import styled from \"@emotion/styled\";\n\nexport const StyledButton = styled.button<{\n variant: \"primary\" | \"secondary\" | \"ghost\";\n size: \"small\" | \"medium\" | \"large\" | \"icon\";\n}>`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: ${({ theme }) => theme.spacing[2]};\n\n border: 1px solid transparent;\n border-radius: ${({ theme }) => theme.radiusSemantic.control};\n\n font-family: ${({ theme }) => theme.typography.fontFamily};\n font-weight: ${({ theme }) => theme.semanticTypography.fontWeight.label};\n\n line-height: 1;\n white-space: nowrap;\n\n cursor: pointer;\n user-select: none;\n\n transition:\n background-color ${({ theme }) => theme.motionSemantic.interaction}\n ${({ theme }) => theme.motionSemantic.transition},\n color ${({ theme }) => theme.motionSemantic.interaction}\n ${({ theme }) => theme.motionSemantic.transition},\n border-color ${({ theme }) => theme.motionSemantic.interaction}\n ${({ theme }) => theme.motionSemantic.transition},\n box-shadow ${({ theme }) => theme.motionSemantic.interaction}\n ${({ theme }) => theme.motionSemantic.transition};\n\n ${({ theme, size }) => {\n switch (size) {\n case \"small\":\n return `\n min-height: 32px;\n padding: 0 ${theme.spacing[3]};\n font-size: ${theme.semanticTypography.fontSize.bodySm};\n `;\n\n case \"large\":\n return `\n min-height: 44px;\n padding: 0 ${theme.spacing[5]};\n font-size: ${theme.semanticTypography.fontSize.bodyLg};\n `;\n\n case \"icon\":\n return `\n min-width: 36px;\n min-height: 36px;\n padding: ${theme.spacing[2]};\n aspect-ratio: 1 / 1;\n `;\n\n case \"medium\":\n default:\n return `\n min-height: 36px;\n padding: 0 ${theme.spacing[4]};\n font-size: ${theme.semanticTypography.fontSize.body};\n `;\n }\n }}\n\n ${({ theme, variant }) => {\n switch (variant) {\n case \"primary\":\n return `\n background: ${theme.action.primary};\n color: ${theme.text.inverse};\n border-color: ${theme.action.primary};\n\n &:hover:not(:disabled) {\n background: ${theme.action.primaryHover};\n border-color: ${theme.action.primaryHover};\n }\n `;\n\n case \"secondary\":\n return `\n background: ${theme.surface.secondary};\n color: ${theme.text.primary};\n border-color: ${theme.border.default};\n\n &:hover:not(:disabled) {\n background: ${theme.surface.tertiary};\n border-color: ${theme.border.strong};\n }\n `;\n\n case \"ghost\":\n return `\n background: transparent;\n color: ${theme.text.secondary};\n border-color: transparent;\n\n &:hover:not(:disabled) {\n background: ${theme.surface.tertiary};\n color: ${theme.text.primary};\n }\n\n &:active:not(:disabled) {\n background: ${theme.surface.tertiary};\n }\n `;\n }\n }}\n\n &:focus-visible {\n outline: 2px solid ${({ theme }) => theme.border.focus};\n outline-offset: 2px;\n }\n\n &:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n }\n\n &[aria-busy=\"true\"] {\n cursor: wait;\n }\n`;\n","import type { ButtonHTMLAttributes } from \"react\";\n\nimport { StyledButton } from \"./button.styles\";\n\nexport interface ButtonProps\n extends ButtonHTMLAttributes<HTMLButtonElement> {\n variant?: \"primary\" | \"secondary\" | \"ghost\";\n size?: \"small\" | \"medium\" | \"large\" | \"icon\";\n}\n\nconst Button = ({\n variant = \"primary\",\n size = \"medium\",\n children,\n ...props\n}: ButtonProps) => {\n return (\n <StyledButton\n variant={variant}\n size={size}\n {...props}\n >\n {children}\n </StyledButton>\n );\n};\n\nexport default Button;","import styled from \"@emotion/styled\";\n\ninterface StyledInputProps {\n inputSize: \"small\" | \"medium\" | \"large\";\n}\n\nexport const StyledInput = styled.input<StyledInputProps>`\n display: block;\n width: 100%;\n\n border: 1px solid ${({ theme }) => theme.border.default};\n border-radius: ${({ theme }) => theme.radius.md};\n\n background: ${({ theme }) => theme.surface.primary};\n color: ${({ theme }) => theme.text.primary};\n\n font-family:\n Inter,\n system-ui,\n -apple-system,\n BlinkMacSystemFont,\n \"Segoe UI\",\n Roboto,\n Helvetica,\n Arial,\n sans-serif;\n font-weight: ${({ theme }) => theme.typography.fontWeight.regular};\n line-height: 1;\n\n outline: none;\n\n transition:\n background-color ${({ theme }) => theme.motion.duration.normal}\n ${({ theme }) => theme.motion.ease.standard},\n border-color ${({ theme }) => theme.motion.duration.normal}\n ${({ theme }) => theme.motion.ease.standard},\n box-shadow ${({ theme }) => theme.motion.duration.normal}\n ${({ theme }) => theme.motion.ease.standard},\n color ${({ theme }) => theme.motion.duration.normal}\n ${({ theme }) => theme.motion.ease.standard};\n\n &::placeholder {\n color: ${({ theme }) => theme.text.tertiary};\n }\n\n &:hover:not(:disabled) {\n border-color: ${({ theme }) => theme.border.strong};\n }\n\n &:focus {\n border-color: ${({ theme }) => theme.border.focus};\n\n box-shadow: 0 0 0 3px\n color-mix(\n in srgb,\n ${({ theme }) => theme.border.focus} 18%,\n transparent\n );\n }\n\n &:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n background: ${({ theme }) => theme.surface.secondary};\n }\n\n ${({ theme, inputSize }) =>\n inputSize === \"small\" &&\n `\n min-height: 32px;\n padding: 0 ${theme.spacing[3]};\n font-size: ${theme.typography.fontSize.sm};\n `}\n\n ${({ theme, inputSize }) =>\n inputSize === \"medium\" &&\n `\n min-height: 40px;\n padding: 0 ${theme.spacing[4]};\n font-size: ${theme.typography.fontSize.md};\n `}\n\n ${({ theme, inputSize }) =>\n inputSize === \"large\" &&\n `\n min-height: 48px;\n padding: 0 ${theme.spacing[4]};\n font-size: ${theme.typography.fontSize.lg};\n `}\n`;","import type { InputHTMLAttributes } from \"react\";\n\nimport { StyledInput } from \"./input.styles\";\n\nexport interface InputProps\n extends InputHTMLAttributes<HTMLInputElement> {\n inputSize?: \"small\" | \"medium\" | \"large\";\n}\n\nconst Input = ({\n inputSize = \"medium\",\n ...props\n}: InputProps) => {\n return (\n <StyledInput\n inputSize={inputSize}\n {...props}\n />\n );\n};\n\nexport default Input;","import styled from \"@emotion/styled\";\n\nexport const StyledTypography = styled.span`\n margin: 0;\n\n font-family:\n Inter,\n system-ui,\n -apple-system,\n BlinkMacSystemFont,\n \"Segoe UI\",\n Roboto,\n Helvetica,\n Arial,\n sans-serif;\n\n color: ${({ theme }) => theme.text.primary};\n\n &[data-variant=\"heading-1\"] {\n font-size: ${({ theme }) => theme.typography.fontSize[\"4xl\"]};\n font-weight: ${({ theme }) => theme.typography.fontWeight.bold};\n line-height: 1.15;\n letter-spacing: -0.02em;\n }\n\n &[data-variant=\"heading-2\"] {\n font-size: ${({ theme }) => theme.typography.fontSize[\"3xl\"]};\n font-weight: ${({ theme }) => theme.typography.fontWeight.bold};\n line-height: 1.15;\n letter-spacing: -0.02em;\n }\n\n &[data-variant=\"heading-3\"] {\n font-size: ${({ theme }) => theme.typography.fontSize[\"2xl\"]};\n font-weight: ${({ theme }) => theme.typography.fontWeight.bold};\n line-height: 1.15;\n letter-spacing: -0.015em;\n }\n\n &[data-variant=\"body-lg\"] {\n font-size: ${({ theme }) => theme.typography.fontSize.lg};\n font-weight: ${({ theme }) => theme.typography.fontWeight.regular};\n line-height: 1.4;\n }\n\n &[data-variant=\"body\"] {\n font-size: ${({ theme }) => theme.typography.fontSize.md};\n font-weight: ${({ theme }) => theme.typography.fontWeight.regular};\n line-height: 1.4;\n }\n\n &[data-variant=\"body-sm\"] {\n font-size: ${({ theme }) => theme.typography.fontSize.sm};\n font-weight: ${({ theme }) => theme.typography.fontWeight.regular};\n line-height: 1.4;\n }\n\n &[data-variant=\"label\"] {\n font-size: ${({ theme }) => theme.typography.fontSize.sm};\n font-weight: ${({ theme }) => theme.typography.fontWeight.medium};\n line-height: 1.4;\n }\n`;","import type { HTMLAttributes, ReactNode } from \"react\";\nimport { StyledTypography } from \"./typography.styles\";\n\nexport type TypographyVariant =\n | \"heading-1\"\n | \"heading-2\"\n | \"heading-3\"\n | \"body-lg\"\n | \"body\"\n | \"body-sm\"\n | \"label\";\n\nexport interface TypographyProps extends HTMLAttributes<HTMLElement> {\n variant?: TypographyVariant;\n children: ReactNode;\n}\n\nconst variantElements: Record<\n TypographyVariant,\n keyof HTMLElementTagNameMap\n> = {\n \"heading-1\": \"h1\",\n \"heading-2\": \"h2\",\n \"heading-3\": \"h3\",\n \"body-lg\": \"p\",\n body: \"p\",\n \"body-sm\": \"p\",\n label: \"span\",\n};\n\nconst Typography = ({\n variant = \"body\",\n children,\n ...props\n}: TypographyProps) => {\n const Component = variantElements[variant];\n\n return (\n <StyledTypography\n as={Component}\n data-variant={variant}\n {...props}\n >\n {children}\n </StyledTypography>\n );\n};\n\nexport default Typography;","import styled from \"@emotion/styled\";\n\nexport const StyledSegmentedControl = styled.div`\n display: inline-flex;\n align-items: center;\n gap: 2px;\n\n padding: ${({ theme }) => theme.spacing[1]};\n\n background: ${({ theme }) => theme.surface.secondary};\n border: 1px solid ${({ theme }) => theme.border.default};\n border-radius: ${({ theme }) => theme.radius.full};\n`;\n\nexport const StyledSegment = styled.button<{\n size: \"small\" | \"medium\" | \"large\";\n}>`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n\n border: 0;\n border-radius: ${({ theme }) => theme.radius.full};\n\n background: transparent;\n color: ${({ theme }) => theme.text.secondary};\n\n font-family: ${({ theme }) => theme.typography.fontFamily};\n font-weight: ${({ theme }) =>\n theme.semanticTypography.fontWeight.label};\n line-height: 1;\n\n cursor: pointer;\n user-select: none;\n\n transition:\n background-color ${({ theme }) =>\n theme.motionSemantic.interaction}\n ${({ theme }) => theme.motionSemantic.transition},\n color ${({ theme }) =>\n theme.motionSemantic.interaction}\n ${({ theme }) => theme.motionSemantic.transition},\n box-shadow ${({ theme }) =>\n theme.motionSemantic.interaction}\n ${({ theme }) => theme.motionSemantic.transition};\n\n ${({ theme, size }) => {\n switch (size) {\n case \"small\":\n return `\n min-height: 32px;\n padding: 0 ${theme.spacing[3]};\n font-size: ${theme.semanticTypography.fontSize.bodySm};\n `;\n\n case \"large\":\n return `\n min-height: 44px;\n padding: 0 ${theme.spacing[5]};\n font-size: ${theme.semanticTypography.fontSize.bodyLg};\n `;\n\n case \"medium\":\n default:\n return `\n min-height: 36px;\n padding: 0 ${theme.spacing[4]};\n font-size: ${theme.semanticTypography.fontSize.body};\n `;\n }\n }}\n\n &:hover:not(:disabled) {\n color: ${({ theme }) => theme.text.primary};\n }\n\n &:focus-visible {\n outline: 2px solid ${({ theme }) => theme.border.focus};\n outline-offset: 2px;\n }\n\n &:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n }\n\n &[aria-checked=\"true\"] {\n background: ${({ theme }) => theme.surface.primary};\n color: ${({ theme }) => theme.text.primary};\n box-shadow: ${({ theme }) => theme.elevation.surface};\n }\n`;","import { useRef } from \"react\";\nimport type { KeyboardEvent, ReactNode } from \"react\";\n\nimport {\n StyledSegment,\n StyledSegmentedControl,\n} from \"./segmented-control.styles\";\n\nexport interface SegmentedControlOption<T extends string> {\n value: T;\n label: ReactNode;\n disabled?: boolean;\n}\n\nexport interface SegmentedControlProps<T extends string> {\n options: SegmentedControlOption<T>[];\n value: T;\n onChange: (value: T) => void;\n size?: \"small\" | \"medium\" | \"large\";\n disabled?: boolean;\n}\n\nconst SegmentedControl = <T extends string>({\n options,\n value,\n onChange,\n size = \"medium\",\n disabled = false,\n}: SegmentedControlProps<T>) => {\n const refs = useRef<(HTMLButtonElement | null)[]>([]);\n\n const enabledOptions = options.filter(\n (option) => !option.disabled,\n );\n\n const handleKeyDown = (\n event: KeyboardEvent<HTMLButtonElement>,\n currentIndex: number,\n ) => {\n if (disabled || currentIndex === -1) {\n return;\n }\n\n let nextIndex: number;\n\n switch (event.key) {\n case \"ArrowRight\":\n case \"ArrowDown\":\n nextIndex = (currentIndex + 1) % enabledOptions.length;\n break;\n\n case \"ArrowLeft\":\n case \"ArrowUp\":\n nextIndex =\n (currentIndex - 1 + enabledOptions.length) %\n enabledOptions.length;\n break;\n\n case \"Home\":\n nextIndex = 0;\n break;\n\n case \"End\":\n nextIndex = enabledOptions.length - 1;\n break;\n\n default:\n return;\n }\n\n event.preventDefault();\n\n const nextOption = enabledOptions[nextIndex];\n\n const originalIndex = options.findIndex(\n (option) => option.value === nextOption.value,\n );\n\n refs.current[originalIndex]?.focus();\n\n onChange(nextOption.value);\n };\n\n return (\n <StyledSegmentedControl\n role=\"radiogroup\"\n aria-disabled={disabled}\n >\n {options.map((option, index) => {\n const checked = option.value === value;\n const optionDisabled = disabled || option.disabled;\n\n const enabledIndex = enabledOptions.findIndex(\n (item) => item.value === option.value,\n );\n\n return (\n <StyledSegment\n key={option.value}\n ref={(element) => {\n refs.current[index] = element;\n }}\n size={size}\n type=\"button\"\n role=\"radio\"\n aria-checked={checked}\n tabIndex={checked && !optionDisabled ? 0 : -1}\n disabled={optionDisabled}\n onClick={() => onChange(option.value)}\n onKeyDown={(event) => {\n handleKeyDown(event, enabledIndex);\n }}\n >\n {option.label}\n </StyledSegment>\n );\n })}\n </StyledSegmentedControl>\n );\n};\n\nexport default SegmentedControl;","import styled from \"@emotion/styled\";\n\ntype LogoSize = \"small\" | \"medium\" | \"large\";\n\nconst sizeHeight = (size: LogoSize): number => {\n switch (size) {\n case \"small\":\n return 24;\n case \"large\":\n return 48;\n case \"medium\":\n default:\n return 32;\n }\n};\n\nexport const StyledLogoContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"size\",\n})<{ size: LogoSize }>`\n display: inline-flex;\n align-items: center;\n font-family: ${({ theme }) => theme.typography.fontFamily};\n user-select: none;\n`;\n\n\nexport const StyledSvgIcon = styled.svg<{ size: LogoSize }>`\n flex-shrink: 0;\n\n margin-right: ${({ theme }) => theme.spacing[3]};\n\n .green-part {\n fill: #00ff22;\n }\n .blue-part {\n fill: #006fff;\n }\n\n ${({ size }) => {\n switch (size) {\n case \"small\":\n return { width: \"24px\", height: \"24px\" };\n case \"large\":\n return { width: \"56px\", height: \"56px\" };\n case \"medium\":\n default:\n return { width: \"40px\", height: \"40px\" };\n }\n }}\n`;\n\nexport const StyledBrandText = styled.span<{ size: LogoSize }>`\n color: ${({ theme }) => theme.text.primary};\n font-weight: ${({ theme }) => theme.semanticTypography.fontWeight.label};\n letter-spacing: -0.5px;\n line-height: 1;\n\n ${({ theme, size }) => {\n switch (size) {\n case \"small\":\n return { fontSize: theme.semanticTypography.fontSize.bodyLg };\n case \"large\":\n return { fontSize: theme.semanticTypography.fontSize.heading1 };\n case \"medium\":\n default:\n return { fontSize: theme.semanticTypography.fontSize.heading3};\n }\n }}\n`;\n\nexport const StyledBrandAccent = styled.span`\n font-weight: 700;\n`;\n\nexport const StyledPrefixWrapper = styled.div`\n display: flex;\n align-items: center;\n`;\n\nexport const StyledDivider = styled.span<{ size: LogoSize }>`\n font-weight: 300;\n line-height: 2;\n margin: 0 ${({ theme }) => theme.spacing[3]};\n\n ${({ theme, size }) => {\n switch (size) {\n case \"small\":\n return { fontSize: theme.semanticTypography.fontSize.bodyLg };\n case \"large\":\n return { fontSize: theme.semanticTypography.fontSize.heading1 };\n case \"medium\":\n default:\n return { fontSize: theme.semanticTypography.fontSize.heading3 };\n }\n }}\n`;\n\nexport const StyledDrumContainer = styled.div<{ size: LogoSize }>`\n overflow: hidden;\n position: relative;\n display: flex;\n height: ${({ size }) => sizeHeight(size)}px;\n`;\n\nexport const StyledDrumTrack = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"size\" &&\n prop !== \"offset\" &&\n prop !== \"isScrolling\" &&\n prop !== \"duration\",\n})<{ size: LogoSize; offset: number; isScrolling: boolean; duration: number }>`\n display: flex;\n flex-direction: column;\n will-change: transform;\n transform: translateY(${({ size, offset }) => -offset * sizeHeight(size)}px);\n transition: ${({ isScrolling, duration }) =>\n isScrolling\n ? `transform ${duration}ms cubic-bezier(0.16, 1, 0.3, 1)`\n : \"none\"};\n`;\n\nexport const StyledPrefixText = styled.span<{ size: LogoSize }>`\n display: block;\n white-space: nowrap;\n color: ${({ theme }) => theme.text.primary};\n font-weight: 200;\n height: ${({ size }) => sizeHeight(size)}px;\n line-height: ${({ size }) => sizeHeight(size)}px;\n\n ${({ theme, size }) => {\n switch (size) {\n case \"small\":\n return { fontSize: theme.semanticTypography.fontSize.bodyLg };\n case \"large\":\n return { fontSize: theme.semanticTypography.fontSize.heading1 };\n case \"medium\":\n default:\n return { fontSize: theme.semanticTypography.fontSize.heading1 };\n }\n }}\n`;","import type { HTMLAttributes } from \"react\";\nimport { useEffect, useState } from \"react\";\n\nimport {\n StyledBrandAccent,\n StyledBrandText,\n StyledDivider,\n StyledDrumContainer,\n StyledDrumTrack,\n StyledLogoContainer,\n StyledPrefixText,\n StyledPrefixWrapper,\n StyledSvgIcon,\n} from \"./logo.styles\";\n\nconst ALL_SERVICES = [\"Услуги\", \"Облако\", \"VPN\", \"Инфраструктура\", \"Аналитика\"];\n\nconst DRUM_ROUNDS = 2;\nconst DRUM_DURATION = 1800;\n\nexport interface LogoProps extends HTMLAttributes<HTMLDivElement> {\n service?: string;\n animate?: boolean;\n size?: \"small\" | \"medium\" | \"large\";\n}\n\nconst shuffle = (source: string[]): string[] => {\n const copy = [...source];\n for (let i = copy.length - 1; i > 0; i -= 1) {\n const j = Math.floor(Math.random() * (i + 1));\n [copy[i], copy[j]] = [copy[j], copy[i]];\n }\n return copy;\n};\n\nconst buildDrumList = (target: string): string[] => {\n const pool = ALL_SERVICES.filter((item) => item !== target);\n if (pool.length === 0) return [target];\n\n const list: string[] = [];\n let previous: string | null = null;\n\n for (let round = 0; round < DRUM_ROUNDS; round += 1) {\n const batch = shuffle(pool);\n if (previous !== null && batch[0] === previous) {\n [batch[0], batch[batch.length - 1]] = [batch[batch.length - 1], batch[0]];\n }\n list.push(...batch);\n previous = batch[batch.length - 1];\n }\n\n list.push(target);\n return list;\n};\n\nconst Logo = ({\n service = \"\",\n animate = false,\n size = \"medium\",\n ...props\n}: LogoProps) => {\n const [prevService, setPrevService] = useState(service);\n const [prevAnimate, setPrevAnimate] = useState(animate);\n\n const [items, setItems] = useState<string[]>(() => (service ? [service] : []));\n const [offset, setOffset] = useState(0);\n const [isScrolling, setIsScrolling] = useState(false);\n\n const [triggerAnimation, setTriggerAnimation] = useState(false);\n\n if (service !== prevService || animate !== prevAnimate) {\n setPrevService(service);\n setPrevAnimate(animate);\n\n if (!animate || !service) {\n setItems(service ? [service] : []);\n setOffset(0);\n setIsScrolling(false);\n setTriggerAnimation(false);\n } else {\n const list = buildDrumList(service);\n setItems(list);\n setOffset(0);\n setIsScrolling(false);\n setTriggerAnimation(true);\n }\n }\n\n useEffect(() => {\n if (!triggerAnimation) {\n return;\n }\n\n let raf1 = 0;\n let raf2 = 0;\n\n raf1 = requestAnimationFrame(() => {\n raf2 = requestAnimationFrame(() => {\n setIsScrolling(true);\n setOffset(items.length - 1);\n setTriggerAnimation(false);\n });\n });\n\n return () => {\n cancelAnimationFrame(raf1);\n cancelAnimationFrame(raf2);\n };\n }, [triggerAnimation, items.length]);\n\n return (\n <StyledLogoContainer size={size} {...props}>\n <StyledSvgIcon\n size={size}\n viewBox=\"0 0 480 481\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path className=\"green-part\" d=\"M10.5688 180.779C10.5688 148.829 36.4688 122.929 68.418 122.929V122.929C84.3926 122.929 97.3426 135.879 97.3426 151.854V480.593H60.5689C32.9546 480.593 10.5688 458.207 10.5688 430.593V180.779Z\" />\n <path className=\"green-part\" d=\"M55.1756 211.45C34.6709 186.556 38.229 149.753 63.1229 129.248V129.248C71.0889 122.687 82.8658 123.825 89.4273 131.791L287.986 372.853L267.082 390.072C245.767 407.629 214.256 404.582 196.699 383.267L55.1756 211.45Z\" />\n <circle className=\"green-part\" cx=\"53.9553\" cy=\"53.9553\" r=\"53.9553\" />\n\n <path className=\"blue-part\" d=\"M469.323 180.779C469.323 148.829 443.423 122.929 411.474 122.929V122.929C395.499 122.929 382.549 135.879 382.549 151.854V480.593H419.323C446.937 480.593 469.323 458.207 469.323 430.593V180.779Z\" />\n <path className=\"blue-part\" d=\"M429.17 206.041C447.214 184.134 444.083 151.748 422.177 133.703V133.703C411.223 124.681 395.03 126.247 386.008 137.2L209.097 351.981C195.564 368.411 197.912 392.701 214.342 406.234V406.234C230.772 419.767 255.062 417.418 268.595 400.988L429.17 206.041Z\" />\n <circle className=\"blue-part\" cx=\"53.9553\" cy=\"53.9553\" r=\"53.9553\" transform=\"matrix(-1 0 0 1 479.891 0)\" />\n </StyledSvgIcon>\n\n <StyledBrandText size={size}>\n <StyledBrandAccent>ingAmigo</StyledBrandAccent>\n </StyledBrandText>\n\n {items.length > 0 && (\n <StyledPrefixWrapper>\n <StyledDivider size={size}>|</StyledDivider>\n <StyledDrumContainer size={size}>\n <StyledDrumTrack\n size={size}\n offset={offset}\n isScrolling={isScrolling}\n duration={DRUM_DURATION}\n >\n {items.map((item, index) => (\n <StyledPrefixText key={`${item}-${index}`} size={size}>\n {item}\n </StyledPrefixText>\n ))}\n </StyledDrumTrack>\n </StyledDrumContainer>\n </StyledPrefixWrapper>\n )}\n </StyledLogoContainer>\n );\n};\n\nexport default Logo;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ingamigo/ui",
3
- "version": "1.2.2",
3
+ "version": "1.2.3",
4
4
  "description": "UI component library and design system for IngAmigo",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -20,7 +20,7 @@
20
20
  "url": "https://github.com/workshop-ideas/ingamigo-ui/issues"
21
21
  },
22
22
  "scripts": {
23
- "build": "tsc",
23
+ "build": "tsup",
24
24
  "storybook": "storybook dev -p 6006",
25
25
  "build-storybook": "storybook build",
26
26
  "lint": "eslint .",
@@ -64,6 +64,8 @@
64
64
  "storybook": "^10.6.0",
65
65
  "style-loader": "^4.0.0",
66
66
  "ts-loader": "^9.6.2",
67
+ "tsup": "^8.5.1",
68
+ "tsup-plugin-prepend-directive": "^0.1.2",
67
69
  "typescript": "^6.0.3",
68
70
  "typescript-eslint": "^8.70.0",
69
71
  "vite": "^8.3.0",
@@ -1,8 +0,0 @@
1
- import type { ButtonHTMLAttributes } from "react";
2
- export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
3
- variant?: "primary" | "secondary" | "ghost";
4
- size?: "small" | "medium" | "large" | "icon";
5
- }
6
- declare const Button: ({ variant, size, children, ...props }: ButtonProps) => import("react").JSX.Element;
7
- export default Button;
8
- //# sourceMappingURL=button.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../src/components/button/button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAIlD,MAAM,WAAW,WACf,SAAQ,oBAAoB,CAAC,iBAAiB,CAAC;IAC/C,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;IAC5C,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;CAC9C;AAED,QAAA,MAAM,MAAM,GAAI,uCAKb,WAAW,gCAUb,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -1,7 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { StyledButton } from "./button.styles";
3
- const Button = ({ variant = "primary", size = "medium", children, ...props }) => {
4
- return (_jsx(StyledButton, { variant: variant, size: size, ...props, children: children }));
5
- };
6
- export default Button;
7
- //# sourceMappingURL=button.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"button.js","sourceRoot":"","sources":["../../../src/components/button/button.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAQ/C,MAAM,MAAM,GAAG,CAAC,EACd,OAAO,GAAG,SAAS,EACnB,IAAI,GAAG,QAAQ,EACf,QAAQ,EACR,GAAG,KAAK,EACI,EAAE,EAAE;IAChB,OAAO,CACL,KAAC,YAAY,IACX,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,KACN,KAAK,YAER,QAAQ,GACI,CAChB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -1,8 +0,0 @@
1
- export declare const StyledButton: import("@emotion/styled").StyledComponent<{
2
- theme?: import("@emotion/react").Theme;
3
- as?: React.ElementType;
4
- } & {
5
- variant: "primary" | "secondary" | "ghost";
6
- size: "small" | "medium" | "large" | "icon";
7
- }, import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, {}>;
8
- //# sourceMappingURL=button.styles.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"button.styles.d.ts","sourceRoot":"","sources":["../../../src/components/button/button.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY;;;;aACd,SAAS,GAAG,WAAW,GAAG,OAAO;UACpC,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM;qHAwH5C,CAAC"}
@@ -1,117 +0,0 @@
1
- import styled from "@emotion/styled";
2
- export const StyledButton = styled.button `
3
- display: inline-flex;
4
- align-items: center;
5
- justify-content: center;
6
- gap: ${({ theme }) => theme.spacing[2]};
7
-
8
- border: 1px solid transparent;
9
- border-radius: ${({ theme }) => theme.radiusSemantic.control};
10
-
11
- font-family: ${({ theme }) => theme.typography.fontFamily};
12
- font-weight: ${({ theme }) => theme.semanticTypography.fontWeight.label};
13
-
14
- line-height: 1;
15
- white-space: nowrap;
16
-
17
- cursor: pointer;
18
- user-select: none;
19
-
20
- transition:
21
- background-color ${({ theme }) => theme.motionSemantic.interaction}
22
- ${({ theme }) => theme.motionSemantic.transition},
23
- color ${({ theme }) => theme.motionSemantic.interaction}
24
- ${({ theme }) => theme.motionSemantic.transition},
25
- border-color ${({ theme }) => theme.motionSemantic.interaction}
26
- ${({ theme }) => theme.motionSemantic.transition},
27
- box-shadow ${({ theme }) => theme.motionSemantic.interaction}
28
- ${({ theme }) => theme.motionSemantic.transition};
29
-
30
- ${({ theme, size }) => {
31
- switch (size) {
32
- case "small":
33
- return `
34
- min-height: 32px;
35
- padding: 0 ${theme.spacing[3]};
36
- font-size: ${theme.semanticTypography.fontSize.bodySm};
37
- `;
38
- case "large":
39
- return `
40
- min-height: 44px;
41
- padding: 0 ${theme.spacing[5]};
42
- font-size: ${theme.semanticTypography.fontSize.bodyLg};
43
- `;
44
- case "icon":
45
- return `
46
- min-width: 36px;
47
- min-height: 36px;
48
- padding: ${theme.spacing[2]};
49
- aspect-ratio: 1 / 1;
50
- `;
51
- case "medium":
52
- default:
53
- return `
54
- min-height: 36px;
55
- padding: 0 ${theme.spacing[4]};
56
- font-size: ${theme.semanticTypography.fontSize.body};
57
- `;
58
- }
59
- }}
60
-
61
- ${({ theme, variant }) => {
62
- switch (variant) {
63
- case "primary":
64
- return `
65
- background: ${theme.action.primary};
66
- color: ${theme.text.inverse};
67
- border-color: ${theme.action.primary};
68
-
69
- &:hover:not(:disabled) {
70
- background: ${theme.action.primaryHover};
71
- border-color: ${theme.action.primaryHover};
72
- }
73
- `;
74
- case "secondary":
75
- return `
76
- background: ${theme.surface.secondary};
77
- color: ${theme.text.primary};
78
- border-color: ${theme.border.default};
79
-
80
- &:hover:not(:disabled) {
81
- background: ${theme.surface.tertiary};
82
- border-color: ${theme.border.strong};
83
- }
84
- `;
85
- case "ghost":
86
- return `
87
- background: transparent;
88
- color: ${theme.text.secondary};
89
- border-color: transparent;
90
-
91
- &:hover:not(:disabled) {
92
- background: ${theme.surface.tertiary};
93
- color: ${theme.text.primary};
94
- }
95
-
96
- &:active:not(:disabled) {
97
- background: ${theme.surface.tertiary};
98
- }
99
- `;
100
- }
101
- }}
102
-
103
- &:focus-visible {
104
- outline: 2px solid ${({ theme }) => theme.border.focus};
105
- outline-offset: 2px;
106
- }
107
-
108
- &:disabled {
109
- cursor: not-allowed;
110
- opacity: 0.5;
111
- }
112
-
113
- &[aria-busy="true"] {
114
- cursor: wait;
115
- }
116
- `;
117
- //# sourceMappingURL=button.styles.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"button.styles.js","sourceRoot":"","sources":["../../../src/components/button/button.styles.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- import type { InputHTMLAttributes } from "react";
2
- export interface InputProps extends InputHTMLAttributes<HTMLInputElement> {
3
- inputSize?: "small" | "medium" | "large";
4
- }
5
- declare const Input: ({ inputSize, ...props }: InputProps) => import("react").JSX.Element;
6
- export default Input;
7
- //# sourceMappingURL=input.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/components/input/input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAIjD,MAAM,WAAW,UACf,SAAQ,mBAAmB,CAAC,gBAAgB,CAAC;IAC7C,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;CAC1C;AAED,QAAA,MAAM,KAAK,GAAI,yBAGZ,UAAU,gCAOZ,CAAC;AAEF,eAAe,KAAK,CAAC"}
@@ -1,7 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { StyledInput } from "./input.styles";
3
- const Input = ({ inputSize = "medium", ...props }) => {
4
- return (_jsx(StyledInput, { inputSize: inputSize, ...props }));
5
- };
6
- export default Input;
7
- //# sourceMappingURL=input.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input.js","sourceRoot":"","sources":["../../../src/components/input/input.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAO7C,MAAM,KAAK,GAAG,CAAC,EACb,SAAS,GAAG,QAAQ,EACpB,GAAG,KAAK,EACG,EAAE,EAAE;IACf,OAAO,CACL,KAAC,WAAW,IACV,SAAS,EAAE,SAAS,KAChB,KAAK,GACT,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC"}
@@ -1,9 +0,0 @@
1
- interface StyledInputProps {
2
- inputSize: "small" | "medium" | "large";
3
- }
4
- export declare const StyledInput: import("@emotion/styled").StyledComponent<{
5
- theme?: import("@emotion/react").Theme;
6
- as?: React.ElementType;
7
- } & StyledInputProps, import("react").DetailedHTMLProps<import("react").InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, {}>;
8
- export {};
9
- //# sourceMappingURL=input.styles.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input.styles.d.ts","sourceRoot":"","sources":["../../../src/components/input/input.styles.ts"],"names":[],"mappings":"AAEA,UAAU,gBAAgB;IACxB,SAAS,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;CACzC;AAED,eAAO,MAAM,WAAW;;;qIAmFvB,CAAC"}
@@ -1,83 +0,0 @@
1
- import styled from "@emotion/styled";
2
- export const StyledInput = styled.input `
3
- display: block;
4
- width: 100%;
5
-
6
- border: 1px solid ${({ theme }) => theme.border.default};
7
- border-radius: ${({ theme }) => theme.radius.md};
8
-
9
- background: ${({ theme }) => theme.surface.primary};
10
- color: ${({ theme }) => theme.text.primary};
11
-
12
- font-family:
13
- Inter,
14
- system-ui,
15
- -apple-system,
16
- BlinkMacSystemFont,
17
- "Segoe UI",
18
- Roboto,
19
- Helvetica,
20
- Arial,
21
- sans-serif;
22
- font-weight: ${({ theme }) => theme.typography.fontWeight.regular};
23
- line-height: 1;
24
-
25
- outline: none;
26
-
27
- transition:
28
- background-color ${({ theme }) => theme.motion.duration.normal}
29
- ${({ theme }) => theme.motion.ease.standard},
30
- border-color ${({ theme }) => theme.motion.duration.normal}
31
- ${({ theme }) => theme.motion.ease.standard},
32
- box-shadow ${({ theme }) => theme.motion.duration.normal}
33
- ${({ theme }) => theme.motion.ease.standard},
34
- color ${({ theme }) => theme.motion.duration.normal}
35
- ${({ theme }) => theme.motion.ease.standard};
36
-
37
- &::placeholder {
38
- color: ${({ theme }) => theme.text.tertiary};
39
- }
40
-
41
- &:hover:not(:disabled) {
42
- border-color: ${({ theme }) => theme.border.strong};
43
- }
44
-
45
- &:focus {
46
- border-color: ${({ theme }) => theme.border.focus};
47
-
48
- box-shadow: 0 0 0 3px
49
- color-mix(
50
- in srgb,
51
- ${({ theme }) => theme.border.focus} 18%,
52
- transparent
53
- );
54
- }
55
-
56
- &:disabled {
57
- cursor: not-allowed;
58
- opacity: 0.5;
59
- background: ${({ theme }) => theme.surface.secondary};
60
- }
61
-
62
- ${({ theme, inputSize }) => inputSize === "small" &&
63
- `
64
- min-height: 32px;
65
- padding: 0 ${theme.spacing[3]};
66
- font-size: ${theme.typography.fontSize.sm};
67
- `}
68
-
69
- ${({ theme, inputSize }) => inputSize === "medium" &&
70
- `
71
- min-height: 40px;
72
- padding: 0 ${theme.spacing[4]};
73
- font-size: ${theme.typography.fontSize.md};
74
- `}
75
-
76
- ${({ theme, inputSize }) => inputSize === "large" &&
77
- `
78
- min-height: 48px;
79
- padding: 0 ${theme.spacing[4]};
80
- font-size: ${theme.typography.fontSize.lg};
81
- `}
82
- `;
83
- //# sourceMappingURL=input.styles.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input.styles.js","sourceRoot":"","sources":["../../../src/components/input/input.styles.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAMrC,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAkB;;;;sBAInC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO;mBACtC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;;gBAEjC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO;WACzC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;;;;;;;;;;;;iBAY3B,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO;;;;;;uBAM5C,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM;QAC1D,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ;mBAC9B,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM;QACtD,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ;iBAChC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM;QACpD,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ;YACrC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM;QAC/C,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ;;;aAGpC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ;;;;oBAI3B,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM;;;;oBAIlC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;;;;;UAK3C,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;;;;;;;;kBAQzB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS;;;IAGpD,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,CACzB,SAAS,KAAK,OAAO;IACrB;;mBAEe,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;mBAChB,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;KAC1C;;IAED,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,CACzB,SAAS,KAAK,QAAQ;IACtB;;mBAEe,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;mBAChB,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;KAC1C;;IAED,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,CACzB,SAAS,KAAK,OAAO;IACrB;;mBAEe,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;mBAChB,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;KAC1C;CACJ,CAAC"}
@@ -1,9 +0,0 @@
1
- import type { HTMLAttributes } from "react";
2
- export interface LogoProps extends HTMLAttributes<HTMLDivElement> {
3
- service?: string;
4
- animate?: boolean;
5
- size?: "small" | "medium" | "large";
6
- }
7
- declare const Logo: ({ service, animate, size, ...props }: LogoProps) => import("react").JSX.Element;
8
- export default Logo;
9
- //# sourceMappingURL=logo.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logo.d.ts","sourceRoot":"","sources":["../../../src/components/logo/logo.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAoB5C,MAAM,WAAW,SAAU,SAAQ,cAAc,CAAC,cAAc,CAAC;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;CACrC;AA+BD,QAAA,MAAM,IAAI,GAAI,sCAKX,SAAS,gCA4FX,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -1,77 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useEffect, useState } from "react";
3
- import { StyledBrandAccent, StyledBrandText, StyledDivider, StyledDrumContainer, StyledDrumTrack, StyledLogoContainer, StyledPrefixText, StyledPrefixWrapper, StyledSvgIcon, } from "./logo.styles";
4
- const ALL_SERVICES = ["Услуги", "Облако", "VPN", "Инфраструктура", "Аналитика"];
5
- const DRUM_ROUNDS = 2;
6
- const DRUM_DURATION = 1800;
7
- const shuffle = (source) => {
8
- const copy = [...source];
9
- for (let i = copy.length - 1; i > 0; i -= 1) {
10
- const j = Math.floor(Math.random() * (i + 1));
11
- [copy[i], copy[j]] = [copy[j], copy[i]];
12
- }
13
- return copy;
14
- };
15
- const buildDrumList = (target) => {
16
- const pool = ALL_SERVICES.filter((item) => item !== target);
17
- if (pool.length === 0)
18
- return [target];
19
- const list = [];
20
- let previous = null;
21
- for (let round = 0; round < DRUM_ROUNDS; round += 1) {
22
- const batch = shuffle(pool);
23
- if (previous !== null && batch[0] === previous) {
24
- [batch[0], batch[batch.length - 1]] = [batch[batch.length - 1], batch[0]];
25
- }
26
- list.push(...batch);
27
- previous = batch[batch.length - 1];
28
- }
29
- list.push(target);
30
- return list;
31
- };
32
- const Logo = ({ service = "", animate = false, size = "medium", ...props }) => {
33
- const [prevService, setPrevService] = useState(service);
34
- const [prevAnimate, setPrevAnimate] = useState(animate);
35
- const [items, setItems] = useState(() => (service ? [service] : []));
36
- const [offset, setOffset] = useState(0);
37
- const [isScrolling, setIsScrolling] = useState(false);
38
- const [triggerAnimation, setTriggerAnimation] = useState(false);
39
- if (service !== prevService || animate !== prevAnimate) {
40
- setPrevService(service);
41
- setPrevAnimate(animate);
42
- if (!animate || !service) {
43
- setItems(service ? [service] : []);
44
- setOffset(0);
45
- setIsScrolling(false);
46
- setTriggerAnimation(false);
47
- }
48
- else {
49
- const list = buildDrumList(service);
50
- setItems(list);
51
- setOffset(0);
52
- setIsScrolling(false);
53
- setTriggerAnimation(true);
54
- }
55
- }
56
- useEffect(() => {
57
- if (!triggerAnimation) {
58
- return;
59
- }
60
- let raf1 = 0;
61
- let raf2 = 0;
62
- raf1 = requestAnimationFrame(() => {
63
- raf2 = requestAnimationFrame(() => {
64
- setIsScrolling(true);
65
- setOffset(items.length - 1);
66
- setTriggerAnimation(false);
67
- });
68
- });
69
- return () => {
70
- cancelAnimationFrame(raf1);
71
- cancelAnimationFrame(raf2);
72
- };
73
- }, [triggerAnimation, items.length]);
74
- return (_jsxs(StyledLogoContainer, { size: size, ...props, children: [_jsxs(StyledSvgIcon, { size: size, viewBox: "0 0 480 481", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [_jsx("path", { className: "green-part", d: "M10.5688 180.779C10.5688 148.829 36.4688 122.929 68.418 122.929V122.929C84.3926 122.929 97.3426 135.879 97.3426 151.854V480.593H60.5689C32.9546 480.593 10.5688 458.207 10.5688 430.593V180.779Z" }), _jsx("path", { className: "green-part", d: "M55.1756 211.45C34.6709 186.556 38.229 149.753 63.1229 129.248V129.248C71.0889 122.687 82.8658 123.825 89.4273 131.791L287.986 372.853L267.082 390.072C245.767 407.629 214.256 404.582 196.699 383.267L55.1756 211.45Z" }), _jsx("circle", { className: "green-part", cx: "53.9553", cy: "53.9553", r: "53.9553" }), _jsx("path", { className: "blue-part", d: "M469.323 180.779C469.323 148.829 443.423 122.929 411.474 122.929V122.929C395.499 122.929 382.549 135.879 382.549 151.854V480.593H419.323C446.937 480.593 469.323 458.207 469.323 430.593V180.779Z" }), _jsx("path", { className: "blue-part", d: "M429.17 206.041C447.214 184.134 444.083 151.748 422.177 133.703V133.703C411.223 124.681 395.03 126.247 386.008 137.2L209.097 351.981C195.564 368.411 197.912 392.701 214.342 406.234V406.234C230.772 419.767 255.062 417.418 268.595 400.988L429.17 206.041Z" }), _jsx("circle", { className: "blue-part", cx: "53.9553", cy: "53.9553", r: "53.9553", transform: "matrix(-1 0 0 1 479.891 0)" })] }), _jsx(StyledBrandText, { size: size, children: _jsx(StyledBrandAccent, { children: "ingAmigo" }) }), items.length > 0 && (_jsxs(StyledPrefixWrapper, { children: [_jsx(StyledDivider, { size: size, children: "|" }), _jsx(StyledDrumContainer, { size: size, children: _jsx(StyledDrumTrack, { size: size, offset: offset, isScrolling: isScrolling, duration: DRUM_DURATION, children: items.map((item, index) => (_jsx(StyledPrefixText, { size: size, children: item }, `${item}-${index}`))) }) })] }))] }));
75
- };
76
- export default Logo;
77
- //# sourceMappingURL=logo.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logo.js","sourceRoot":"","sources":["../../../src/components/logo/logo.tsx"],"names":[],"mappings":"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"}
@@ -1,56 +0,0 @@
1
- type LogoSize = "small" | "medium" | "large";
2
- export declare const StyledLogoContainer: import("@emotion/styled").StyledComponent<{
3
- theme?: import("@emotion/react").Theme;
4
- as?: React.ElementType;
5
- } & {
6
- size: LogoSize;
7
- }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
8
- export declare const StyledSvgIcon: import("@emotion/styled").StyledComponent<{
9
- theme?: import("@emotion/react").Theme;
10
- as?: React.ElementType;
11
- } & {
12
- size: LogoSize;
13
- }, import("react").SVGProps<SVGSVGElement>, {}>;
14
- export declare const StyledBrandText: import("@emotion/styled").StyledComponent<{
15
- theme?: import("@emotion/react").Theme;
16
- as?: React.ElementType;
17
- } & {
18
- size: LogoSize;
19
- }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
20
- export declare const StyledBrandAccent: import("@emotion/styled").StyledComponent<{
21
- theme?: import("@emotion/react").Theme;
22
- as?: React.ElementType;
23
- }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
24
- export declare const StyledPrefixWrapper: import("@emotion/styled").StyledComponent<{
25
- theme?: import("@emotion/react").Theme;
26
- as?: React.ElementType;
27
- }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
28
- export declare const StyledDivider: import("@emotion/styled").StyledComponent<{
29
- theme?: import("@emotion/react").Theme;
30
- as?: React.ElementType;
31
- } & {
32
- size: LogoSize;
33
- }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
34
- export declare const StyledDrumContainer: import("@emotion/styled").StyledComponent<{
35
- theme?: import("@emotion/react").Theme;
36
- as?: React.ElementType;
37
- } & {
38
- size: LogoSize;
39
- }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
40
- export declare const StyledDrumTrack: import("@emotion/styled").StyledComponent<{
41
- theme?: import("@emotion/react").Theme;
42
- as?: React.ElementType;
43
- } & {
44
- size: LogoSize;
45
- offset: number;
46
- isScrolling: boolean;
47
- duration: number;
48
- }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
49
- export declare const StyledPrefixText: import("@emotion/styled").StyledComponent<{
50
- theme?: import("@emotion/react").Theme;
51
- as?: React.ElementType;
52
- } & {
53
- size: LogoSize;
54
- }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
55
- export {};
56
- //# sourceMappingURL=logo.styles.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logo.styles.d.ts","sourceRoot":"","sources":["../../../src/components/logo/logo.styles.ts"],"names":[],"mappings":"AAEA,KAAK,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAc7C,eAAO,MAAM,mBAAmB;;;;UAErB,QAAQ;yGAKlB,CAAC;AAGF,eAAO,MAAM,aAAa;;;;UAAsB,QAAQ;+CAuBvD,CAAC;AAEF,eAAO,MAAM,eAAe;;;;UAAuB,QAAQ;2GAiB1D,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;2GAE7B,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;yGAG/B,CAAC;AAEF,eAAO,MAAM,aAAa;;;;UAAuB,QAAQ;2GAgBxD,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;UAAsB,QAAQ;yGAK7D,CAAC;AAEF,eAAO,MAAM,eAAe;;;;UAMjB,QAAQ;YAAU,MAAM;iBAAe,OAAO;cAAY,MAAM;yGAS1E,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;UAAuB,QAAQ;2GAmB3D,CAAC"}