\n\n/**\n * AccordionIcon that gives a visual cue of the open/close state of the accordion item.\n * It rotates `180deg` based on the open/close state.\n */\n\nexport function AccordionIcon(props: AccordionIconProps) {\n const { isOpen, isDisabled } = useAccordionItemContext()\n const { reduceMotion } = useAccordionContext()\n\n const _className = cx(\"chakra-accordion__icon\", props.className)\n const styles = useAccordionStyles()\n\n const iconStyles: SystemStyleObject = {\n opacity: isDisabled ? 0.4 : 1,\n transform: isOpen ? \"rotate(-180deg)\" : undefined,\n transition: reduceMotion ? undefined : \"transform 0.2s\",\n transformOrigin: \"center\",\n ...styles.icon,\n }\n\n return (\n \n \n \n )\n}\n\nAccordionIcon.displayName = \"AccordionIcon\"\n","import type { Target, TargetAndTransition, Transition } from \"framer-motion\"\n\nexport type TransitionProperties = {\n /**\n * Custom `transition` definition for `enter` and `exit`\n */\n transition?: TransitionConfig\n /**\n * Custom `transitionEnd` definition for `enter` and `exit`\n */\n transitionEnd?: TransitionEndConfig\n /**\n * Custom `delay` definition for `enter` and `exit`\n */\n delay?: number | DelayConfig\n}\n\ntype TargetResolver = (\n props: P & TransitionProperties,\n) => TargetAndTransition\n\ntype Variant
= TargetAndTransition | TargetResolver
\n\nexport type Variants
= {\n enter: Variant
\n exit: Variant
\n initial?: Variant
\n}\n\ntype WithMotionState
= Partial>\n\nexport type TransitionConfig = WithMotionState\n\nexport type TransitionEndConfig = WithMotionState\n\nexport type DelayConfig = WithMotionState\n\nexport const TRANSITION_EASINGS = {\n ease: [0.25, 0.1, 0.25, 1],\n easeIn: [0.4, 0, 1, 1],\n easeOut: [0, 0, 0.2, 1],\n easeInOut: [0.4, 0, 0.2, 1],\n} as const\n\nexport const TRANSITION_VARIANTS = {\n scale: {\n enter: { scale: 1 },\n exit: { scale: 0.95 },\n },\n fade: {\n enter: { opacity: 1 },\n exit: { opacity: 0 },\n },\n pushLeft: {\n enter: { x: \"100%\" },\n exit: { x: \"-30%\" },\n },\n pushRight: {\n enter: { x: \"-100%\" },\n exit: { x: \"30%\" },\n },\n pushUp: {\n enter: { y: \"100%\" },\n exit: { y: \"-30%\" },\n },\n pushDown: {\n enter: { y: \"-100%\" },\n exit: { y: \"30%\" },\n },\n slideLeft: {\n position: { left: 0, top: 0, bottom: 0, width: \"100%\" },\n enter: { x: 0, y: 0 },\n exit: { x: \"-100%\", y: 0 },\n },\n slideRight: {\n position: { right: 0, top: 0, bottom: 0, width: \"100%\" },\n enter: { x: 0, y: 0 },\n exit: { x: \"100%\", y: 0 },\n },\n slideUp: {\n position: { top: 0, left: 0, right: 0, maxWidth: \"100vw\" },\n enter: { x: 0, y: 0 },\n exit: { x: 0, y: \"-100%\" },\n },\n slideDown: {\n position: { bottom: 0, left: 0, right: 0, maxWidth: \"100vw\" },\n enter: { x: 0, y: 0 },\n exit: { x: 0, y: \"100%\" },\n },\n}\n\nexport type SlideDirection = \"top\" | \"left\" | \"bottom\" | \"right\"\n\nexport function getSlideTransition(options?: { direction?: SlideDirection }) {\n const side = options?.direction ?? \"right\"\n switch (side) {\n case \"right\":\n return TRANSITION_VARIANTS.slideRight\n case \"left\":\n return TRANSITION_VARIANTS.slideLeft\n case \"bottom\":\n return TRANSITION_VARIANTS.slideDown\n case \"top\":\n return TRANSITION_VARIANTS.slideUp\n default:\n return TRANSITION_VARIANTS.slideRight\n }\n}\n\nexport const TRANSITION_DEFAULTS = {\n enter: {\n duration: 0.2,\n ease: TRANSITION_EASINGS.easeOut,\n },\n exit: {\n duration: 0.1,\n ease: TRANSITION_EASINGS.easeIn,\n },\n} as const\n\nexport type WithTransitionConfig = Omit
&\n TransitionProperties & {\n /**\n * If `true`, the element will unmount when `in={false}` and animation is done\n */\n unmountOnExit?: boolean\n /**\n * Show the component; triggers when enter or exit states\n */\n in?: boolean\n }\n\nexport const withDelay = {\n enter: (\n transition: Transition,\n delay?: number | DelayConfig,\n ): Transition & { delay: number | undefined } => ({\n ...transition,\n delay: typeof delay === \"number\" ? delay : delay?.[\"enter\"],\n }),\n exit: (\n transition: Transition,\n delay?: number | DelayConfig,\n ): Transition & { delay: number | undefined } => ({\n ...transition,\n delay: typeof delay === \"number\" ? delay : delay?.[\"exit\"],\n }),\n}\n","import { cx, warn } from \"@chakra-ui/shared-utils\"\nimport {\n AnimatePresence,\n HTMLMotionProps,\n motion,\n Variants as _Variants,\n} from \"framer-motion\"\nimport { forwardRef, useEffect, useState } from \"react\"\nimport {\n TRANSITION_EASINGS,\n Variants,\n withDelay,\n WithTransitionConfig,\n} from \"./transition-utils\"\n\nconst isNumeric = (value?: string | number) =>\n value != null && parseInt(value.toString(), 10) > 0\n\nexport interface CollapseOptions {\n /**\n * If `true`, the opacity of the content will be animated\n * @default true\n */\n animateOpacity?: boolean\n /**\n * The height you want the content in its collapsed state.\n * @default 0\n */\n startingHeight?: number | string\n /**\n * The height you want the content in its expanded state.\n * @default \"auto\"\n */\n endingHeight?: number | string\n}\n\nconst defaultTransitions = {\n exit: {\n height: { duration: 0.2, ease: TRANSITION_EASINGS.ease },\n opacity: { duration: 0.3, ease: TRANSITION_EASINGS.ease },\n },\n enter: {\n height: { duration: 0.3, ease: TRANSITION_EASINGS.ease },\n opacity: { duration: 0.4, ease: TRANSITION_EASINGS.ease },\n },\n}\n\nconst variants: Variants = {\n exit: ({\n animateOpacity,\n startingHeight,\n transition,\n transitionEnd,\n delay,\n }) => ({\n ...(animateOpacity && { opacity: isNumeric(startingHeight) ? 1 : 0 }),\n height: startingHeight,\n transitionEnd: transitionEnd?.exit,\n transition:\n transition?.exit ?? withDelay.exit(defaultTransitions.exit, delay),\n }),\n enter: ({\n animateOpacity,\n endingHeight,\n transition,\n transitionEnd,\n delay,\n }) => ({\n ...(animateOpacity && { opacity: 1 }),\n height: endingHeight,\n transitionEnd: transitionEnd?.enter,\n transition:\n transition?.enter ?? withDelay.enter(defaultTransitions.enter, delay),\n }),\n}\n\nexport type ICollapse = CollapseProps\n\nexport interface CollapseProps\n extends WithTransitionConfig>,\n CollapseOptions {}\n\nexport const Collapse = forwardRef(\n (props, ref) => {\n const {\n in: isOpen,\n unmountOnExit,\n animateOpacity = true,\n startingHeight = 0,\n endingHeight = \"auto\",\n style,\n className,\n transition,\n transitionEnd,\n ...rest\n } = props\n\n const [mounted, setMounted] = useState(false)\n useEffect(() => {\n const timeout = setTimeout(() => {\n setMounted(true)\n })\n return () => clearTimeout(timeout)\n }, [])\n\n /**\n * Warn 🚨: `startingHeight` and `unmountOnExit` are mutually exclusive\n *\n * If you specify a starting height, the collapsed needs to be mounted\n * for the height to take effect.\n */\n warn({\n condition: Number(startingHeight) > 0 && !!unmountOnExit,\n message: `startingHeight and unmountOnExit are mutually exclusive. You can't use them together`,\n })\n\n const hasStartingHeight = parseFloat(startingHeight.toString()) > 0\n\n const custom = {\n startingHeight,\n endingHeight,\n animateOpacity,\n transition: !mounted ? { enter: { duration: 0 } } : transition,\n transitionEnd: {\n enter: transitionEnd?.enter,\n exit: unmountOnExit\n ? transitionEnd?.exit\n : {\n ...transitionEnd?.exit,\n display: hasStartingHeight ? \"block\" : \"none\",\n },\n },\n }\n\n const show = unmountOnExit ? isOpen : true\n const animate = isOpen || unmountOnExit ? \"enter\" : \"exit\"\n\n return (\n \n {show && (\n \n )}\n \n )\n },\n)\n\nCollapse.displayName = \"Collapse\"\n","import { chakra, forwardRef, HTMLChakraProps } from \"@chakra-ui/system\"\nimport { Collapse, CollapseProps } from \"@chakra-ui/transition\"\nimport { cx } from \"@chakra-ui/shared-utils\"\nimport {\n useAccordionItemContext,\n useAccordionStyles,\n} from \"./accordion-context\"\nimport { useAccordionContext } from \"./use-accordion\"\n\nexport interface AccordionPanelProps extends HTMLChakraProps<\"div\"> {\n /**\n * The properties passed to the underlying `Collapse` component.\n */\n motionProps?: CollapseProps\n}\n\n/**\n * Accordion panel that holds the content for each accordion.\n * It shows and hides based on the state login from the `AccordionItem`.\n *\n * It uses the `Collapse` component to animate its height.\n */\nexport const AccordionPanel = forwardRef(\n function AccordionPanel(props, ref) {\n const { className, motionProps, ...rest } = props\n\n const { reduceMotion } = useAccordionContext()\n const { getPanelProps, isOpen } = useAccordionItemContext()\n\n // remove `hidden` prop, 'coz we're using height animation\n const panelProps = getPanelProps(rest, ref)\n\n const _className = cx(\"chakra-accordion__panel\", className)\n const styles = useAccordionStyles()\n\n if (!reduceMotion) {\n delete panelProps.hidden\n }\n\n const child = (\n \n )\n\n if (!reduceMotion) {\n return (\n \n {child}\n \n )\n }\n\n return child\n },\n)\n\nAccordionPanel.displayName = \"AccordionPanel\"\n","import React from \"react\";\r\nimport {\r\n AccordionButton,\r\n AccordionIcon,\r\n AccordionItem,\r\n AccordionPanel,\r\n Box,\r\n HStack,\r\n Heading,\r\n Image,\r\n Link,\r\n Text,\r\n VStack,\r\n} from \"@chakra-ui/react\";\r\nimport { ThemeInterface } from \"../theme/theme\";\r\n// import { Fade } from 'react-reveal';\r\n\r\ninterface experiencInterface {\r\n color: string;\r\n company: string;\r\n company_url: string;\r\n description: string;\r\n duration: string;\r\n location: string;\r\n logo_path: string;\r\n title: string;\r\n}\r\ninterface ExperienceCardInterface {\r\n experience: experiencInterface;\r\n theme: ThemeInterface;\r\n index: number;\r\n totalCards: number;\r\n}\r\n\r\nconst ExperienceCard: React.FC = ({\r\n experience,\r\n theme,\r\n index,\r\n totalCards,\r\n}) => {\r\n console.log(\"experience1234567\", experience);\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {experience.title}\r\n \r\n \r\n {experience.company}\r\n \r\n \r\n \r\n \r\n {\" \"}\r\n {experience.duration}{\" \"}\r\n \r\n \r\n {\" \"}\r\n {experience.location}{\" \"}\r\n \r\n \r\n \r\n\r\n\r\n \r\n {experience.description}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default ExperienceCard;\r\n","import React from \"react\";\r\nimport { ThemeInterface } from \"../theme/theme\";\r\nimport {\r\n Accordion,\r\n AccordionButton,\r\n AccordionIcon,\r\n AccordionItem,\r\n AccordionPanel,\r\n Box,\r\n Stack,\r\n} from \"@chakra-ui/react\";\r\nimport ExperienceCard from \"../ExperienceCard/ExperienceCard\";\r\n\r\ninterface experiencInterface {\r\n color: string;\r\n company: string;\r\n company_url: string;\r\n description: string;\r\n duration: string;\r\n location: string;\r\n logo_path: string;\r\n title: string;\r\n}\r\ninterface SectionsInterface {\r\n experiences: experiencInterface[];\r\n title: string;\r\n}\r\ninterface experienceInterface {\r\n description: string;\r\n header_image_path: string;\r\n sections: SectionsInterface[];\r\n subtitle: string;\r\n title: string;\r\n}\r\ninterface ExperienceAccordionProps {\r\n experience: experienceInterface;\r\n theme: ThemeInterface;\r\n}\r\n\r\nconst ExperienceAccordion: React.FC = ({\r\n experience,\r\n theme,\r\n}) => {\r\n console.log(\"experience\", experience.sections[0]);\r\n return (\r\n \r\n \r\n {experience.sections.map((section, index) => {\r\n return (\r\n \r\n {({ isExpanded }) => (\r\n <>\r\n \r\n \r\n \r\n {section.title}\r\n \r\n \r\n \r\n
\r\n \r\n {section.experiences.map((experience, index) => {\r\n return (\r\n \r\n );\r\n })}\r\n \r\n >\r\n )}\r\n \r\n );\r\n })}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default ExperienceAccordion;\r\n","import React from \"react\";\r\nimport ExperienceImg from \"../../components/ExperienceImg/ExperienceImg\";\r\nimport { experience } from \"../../portfolio\";\r\nimport { appTheme } from \"../../components/theme/theme\";\r\nimport { Box, HStack, Heading, Text, VStack } from \"@chakra-ui/react\";\r\nimport ExperienceAccordion from \"../../components/ExperienceAccordion/ExperienceAccordion\";\r\nimport { keyframes } from \"@emotion/react\";\r\nimport Reveal from \"react-awesome-reveal\";\r\n\r\nconst Upwards = keyframes`\r\nfrom {\r\n opacity: 0;\r\n transform: translateY(50px);\r\n}\r\n\r\nto {\r\n opacity: 1;\r\n transform: translateY(0px);\r\n}\r\n`\r\n\r\nconst Experience: React.FC<{}> = () => {\r\n const theme = appTheme;\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {experience.title}\r\n \r\n {experience.subtitle}\r\n \r\n \r\n {experience.description}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default Experience;\r\n","// src/responsive.ts\nimport { isObject } from \"@chakra-ui/shared-utils\";\nvar breakpoints = Object.freeze([\n \"base\",\n \"sm\",\n \"md\",\n \"lg\",\n \"xl\",\n \"2xl\"\n]);\nfunction mapResponsive(prop, mapper) {\n if (Array.isArray(prop)) {\n return prop.map((item) => item === null ? null : mapper(item));\n }\n if (isObject(prop)) {\n return Object.keys(prop).reduce((result, key) => {\n result[key] = mapper(prop[key]);\n return result;\n }, {});\n }\n if (prop != null) {\n return mapper(prop);\n }\n return null;\n}\nfunction objectToArrayNotation(obj, bps = breakpoints) {\n const result = bps.map((br) => {\n var _a;\n return (_a = obj[br]) != null ? _a : null;\n });\n const lastItem = result[result.length - 1];\n while (lastItem === null)\n result.pop();\n return result;\n}\nfunction arrayToObjectNotation(values, bps = breakpoints) {\n const result = {};\n values.forEach((value, index) => {\n const key = bps[index];\n if (value == null)\n return;\n result[key] = value;\n });\n return result;\n}\nfunction isResponsiveObjectLike(obj, bps = breakpoints) {\n const keys = Object.keys(obj);\n return keys.length > 0 && keys.every((key) => bps.includes(key));\n}\nvar isCustomBreakpoint = (v) => Number.isNaN(Number(v));\n\nexport {\n breakpoints,\n mapResponsive,\n objectToArrayNotation,\n arrayToObjectNotation,\n isResponsiveObjectLike,\n isCustomBreakpoint\n};\n","import { forwardRef } from \"@chakra-ui/system\"\n\nimport { Stack, StackProps } from \"./stack\"\n\n/**\n * A view that arranges its children in a horizontal line.\n *\n * @see Docs https://chakra-ui.com/docs/components/stack\n */\nexport const HStack = forwardRef((props, ref) => (\n \n))\n\nHStack.displayName = \"HStack\"\n","import {\n chakra,\n forwardRef,\n omitThemingProps,\n ThemingProps,\n useStyleConfig,\n HTMLChakraProps,\n} from \"@chakra-ui/system\"\nimport { cx } from \"@chakra-ui/shared-utils\"\n\nexport interface HeadingProps\n extends HTMLChakraProps<\"h2\">,\n ThemingProps<\"Heading\"> {}\n\n/**\n * `Heading` is used to render semantic HTML heading elements.\n *\n * By default, renders as `h2` with themantic size `xl`\n *\n * @see Docs https://chakra-ui.com/docs/components/heading\n */\nexport const Heading = forwardRef(function Heading(\n props,\n ref,\n) {\n const styles = useStyleConfig(\"Heading\", props)\n const { className, ...rest } = omitThemingProps(props)\n\n return (\n \n )\n})\n\nHeading.displayName = \"Heading\"\n","import { forwardRef } from \"@chakra-ui/system\"\n\nimport { Stack, StackProps } from \"./stack\"\n\n/**\n * A view that arranges its children in a vertical line.\n *\n * @see Docs https://chakra-ui.com/docs/components/stack\n */\nexport const VStack = forwardRef((props, ref) => (\n \n))\n\nVStack.displayName = \"VStack\"\n","import { ChakraComponent, chakra } from \"@chakra-ui/system\"\n\nexport const StackItem: ChakraComponent<\"div\"> = (props) => (\n \n)\n\nStackItem.displayName = \"StackItem\"\n","import { getValidChildren } from \"@chakra-ui/react-children-utils\"\nimport { cx } from \"@chakra-ui/shared-utils\"\nimport {\n chakra,\n forwardRef,\n HTMLChakraProps,\n SystemProps,\n} from \"@chakra-ui/system\"\nimport { cloneElement, Fragment, useMemo } from \"react\"\n\nimport { StackItem } from \"./stack-item\"\nimport type { StackDirection } from \"./stack.utils\"\nimport { getDividerStyles } from \"./stack.utils\"\n\nexport type { StackDirection }\n\ninterface StackOptions {\n /**\n * Shorthand for `alignItems` style prop\n * @type SystemProps[\"alignItems\"]\n */\n align?: SystemProps[\"alignItems\"]\n /**\n * Shorthand for `justifyContent` style prop\n * @type SystemProps[\"justifyContent\"]\n */\n justify?: SystemProps[\"justifyContent\"]\n /**\n * Shorthand for `flexWrap` style prop\n * @type SystemProps[\"flexWrap\"]\n */\n wrap?: SystemProps[\"flexWrap\"]\n /**\n * The space between each stack item\n * @type SystemProps[\"margin\"]\n * @default \"0.5rem\"\n */\n spacing?: SystemProps[\"margin\"]\n /**\n * The direction to stack the items.\n * @default \"column\"\n */\n direction?: StackDirection\n /**\n * If `true`, each stack item will show a divider\n * @type React.ReactElement\n */\n divider?: React.ReactElement\n /**\n * If `true`, the children will be wrapped in a `Box` with\n * `display: inline-block`, and the `Box` will take the spacing props\n *\n * @default false\n */\n shouldWrapChildren?: boolean\n /**\n * If `true` the items will be stacked horizontally.\n *\n * @default false\n *\n * @deprecated - Use `direction=\"row\"` or `HStack` instead\n */\n isInline?: boolean\n}\n\nexport interface StackProps extends HTMLChakraProps<\"div\">, StackOptions {}\n\n/**\n * Stacks help you easily create flexible and automatically distributed layouts\n *\n * You can stack elements in the horizontal or vertical direction,\n * and apply a space or/and divider between each element.\n *\n * It uses `display: flex` internally and renders a `div`.\n *\n * @see Docs https://chakra-ui.com/stack\n *\n */\nexport const Stack = forwardRef((props, ref) => {\n const {\n isInline,\n direction: directionProp,\n align,\n justify,\n spacing = \"0.5rem\",\n wrap,\n children,\n divider,\n className,\n shouldWrapChildren,\n ...rest\n } = props\n\n const direction = isInline ? \"row\" : directionProp ?? \"column\"\n\n const dividerStyle = useMemo(\n () => getDividerStyles({ spacing, direction }),\n [spacing, direction],\n )\n\n const hasDivider = !!divider\n const shouldUseChildren = !shouldWrapChildren && !hasDivider\n\n const clones = useMemo(() => {\n const validChildren = getValidChildren(children)\n return shouldUseChildren\n ? validChildren\n : validChildren.map((child, index) => {\n // Prefer provided child key, fallback to index\n const key = typeof child.key !== \"undefined\" ? child.key : index\n const isLast = index + 1 === validChildren.length\n const wrappedChild = {child}\n const _child = shouldWrapChildren ? wrappedChild : child\n\n if (!hasDivider) return _child\n\n const clonedDivider = cloneElement(\n divider as React.ReactElement,\n {\n __css: dividerStyle,\n },\n )\n\n const _divider = isLast ? null : clonedDivider\n\n return (\n \n {_child}\n {_divider}\n \n )\n })\n }, [\n divider,\n dividerStyle,\n hasDivider,\n shouldUseChildren,\n shouldWrapChildren,\n children,\n ])\n\n const _className = cx(\"chakra-stack\", className)\n\n return (\n \n {clones}\n \n )\n})\n\nStack.displayName = \"Stack\"\n","import { ResponsiveValue, SystemProps } from \"@chakra-ui/system\"\nimport { mapResponsive } from \"@chakra-ui/breakpoint-utils\"\n\nexport type StackDirection = ResponsiveValue<\n \"row\" | \"column\" | \"row-reverse\" | \"column-reverse\"\n>\n\ninterface Options {\n spacing: SystemProps[\"margin\"]\n direction: StackDirection\n}\n\nexport function getDividerStyles(options: Options) {\n const { spacing, direction } = options\n\n const dividerStyles = {\n column: {\n my: spacing,\n mx: 0,\n borderLeftWidth: 0,\n borderBottomWidth: \"1px\",\n },\n \"column-reverse\": {\n my: spacing,\n mx: 0,\n borderLeftWidth: 0,\n borderBottomWidth: \"1px\",\n },\n row: {\n mx: spacing,\n my: 0,\n borderLeftWidth: \"1px\",\n borderBottomWidth: 0,\n },\n \"row-reverse\": {\n mx: spacing,\n my: 0,\n borderLeftWidth: \"1px\",\n borderBottomWidth: 0,\n },\n }\n\n return {\n \"&\": mapResponsive(\n direction,\n (value: keyof typeof dividerStyles) => dividerStyles[value],\n ),\n }\n}\n","// src/index.ts\nimport { Children, isValidElement } from \"react\";\nfunction getValidChildren(children) {\n return Children.toArray(children).filter(\n (child) => isValidElement(child)\n );\n}\nexport {\n getValidChildren\n};\n","import { useMemo } from \"react\"\n\nexport type ReactRef = React.RefCallback | React.MutableRefObject\n\nexport function assignRef(\n ref: ReactRef | null | undefined,\n value: T,\n) {\n if (ref == null) return\n\n if (typeof ref === \"function\") {\n ref(value)\n return\n }\n\n try {\n ref.current = value\n } catch (error) {\n throw new Error(`Cannot assign value '${value}' to ref '${ref}'`)\n }\n}\n\nexport function mergeRefs(...refs: (ReactRef | null | undefined)[]) {\n return (node: T | null) => {\n refs.forEach((ref) => {\n assignRef(ref, node)\n })\n }\n}\n\nexport function useMergeRefs(...refs: (ReactRef | null | undefined)[]) {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return useMemo(() => mergeRefs(...refs), refs)\n}\n"],"names":["_jsx","Image","src","sortNodes","nodes","sort","a","b","compare","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","DOCUMENT_POSITION_CONTAINED_BY","DOCUMENT_POSITION_PRECEDING","DOCUMENT_POSITION_CONTAINS","DOCUMENT_POSITION_DISCONNECTED","DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC","Error","getNextIndex","current","max","loop","next","getPrevIndex","useSafeLayoutEffect","window","useLayoutEffect","useEffect","cast","value","DescendantsManager","_createClass","_this","_classCallCheck","__publicField","Map","nodeOrOptions","el","nodeType","ELEMENT_NODE","registerNode","node","descendants","delete","sorted","Array","from","keys","assignIndex","clear","forEach","descendant","index","indexOf","dataset","toString","size","enabledValues","length","values","filter","disabled","count","enabledCount","item","enabledItem","lastIndex","_a","_b","get","findIndex","i","isSameNode","arguments","undefined","nextEnabledIndex","enabledIndexOf","prev","prevEnabledIndex","options","has","concat","_objectSpread","set","_createContext","createContext","name","errorMessage","_createContext2","_slicedToArray","DescendantsContextProvider","useDescendantsContext","hookName","providerName","AccordionStylesProvider","useAccordionStyles","_createContext3","_createContext4","AccordionItemProvider","useAccordionItemContext","_createDescendantCont","useRef","destroy","useDescendants","_useState","useState","_useState2","setIndex","ref","unregister","dataIndex","Number","isNaN","refCallback","register","enabledIndex","mergeRefs","useDescendant","_createDescendantCont2","AccordionDescendantsProvider","useAccordionDescendants","useAccordionDescendant","useAccordion","props","onChange","defaultIndex","indexProp","allowMultiple","allowToggle","htmlProps","_objectWithoutProperties","_excluded","condition","isArray","warn","message","allowMultipleWarning","allowMultipleAndAllowToggleWarning","focusedIndex","setFocusedIndex","_useControllableState","valueProp","defaultValue","_props$shouldUpdate","shouldUpdate","onChangeProp","useCallbackRef","shouldUpdateProp","uncontrolledState","setUncontrolledState","controlled","setValue","nextValue","useControllableState","_useControllableState2","getAccordionItemProps","idx","isOpen","includes","isOpen2","nextState","AccordionProvider","useAccordionContext","useAccordionItem","isDisabled","isFocusable","id","_excluded2","_useAccordionContext","buttonRef","reactId","useId","uid","buttonId","panelId","focusableNotDisabledWarning","_useAccordionDescenda","_getAccordionItemProp","warnIfOpenAndDisabled","onClick","useCallback","onKeyDown","event","action","ArrowDown","nextEnabled","focus","ArrowUp","prevEnabled","Home","first","firstEnabled","End","last","lastEnabled","key","preventDefault","onFocus","getButtonProps","props2","type","callAllHandlers","getPanelProps","role","hidden","onOpen","onClose","Accordion","forwardRef","_ref","children","reduceMotion","styles","useMultiStyleConfig","_useAccordion","omitThemingProps","context","ctx","useMemo","jsx","chakra","className","cx","__css","root","displayName","AccordionItem","_useAccordionItem","containerStyles","container","overflowAnchor","isExpanded","AccordionButton","buttonProps","buttonStyles","display","alignItems","width","outline","button","AccordionIcon","_useAccordionItemCont","_className","iconStyles","opacity","transform","transition","transformOrigin","icon","Icon","viewBox","fill","d","TRANSITION_EASINGS","ease","easeIn","easeOut","easeInOut","withDelay","delay","defaultTransitions","exit","height","duration","enter","variants","animateOpacity","startingHeight","transitionEnd","parseInt","_ref2","endingHeight","Collapse","in","unmountOnExit","_props$animateOpacity","_props$startingHeight","_props$endingHeight","style","rest","mounted","setMounted","timeout","setTimeout","clearTimeout","hasStartingHeight","parseFloat","custom","show","animate","AnimatePresence","initial","motion","overflow","AccordionPanel","motionProps","panelProps","child","panel","experience","theme","totalCards","console","log","_jsxs","HStack","padding","flexDir","base","sm","justifyContent","border","color","borderRadius","Box","marginBottom","logo_path","VStack","textAlign","flexDirection","Heading","sx","fontWeight","fontSize","lineHeight","title","Text","company","location","marginTop","description","sections","Stack","margin","w","map","section","_Fragment","_hover","secondaryText","borderColor","headerColor","flex","backgroundColor","body","fontFamily","text","gap","experiences","ExperienceCard","Upwards","keyframes","_templateObject","_taggedTemplateLiteral","appTheme","md","lg","xl","Reveal","mt","ExperienceImg","ExperienceAccordion","Object","freeze","mapResponsive","prop","mapper","isObject","reduce","result","align","direction","useStyleConfig","_omitThemingProps","StackItem","minWidth","isInline","directionProp","justify","_props$spacing","spacing","wrap","divider","shouldWrapChildren","dividerStyle","dividerStyles","column","my","mx","borderLeftWidth","borderBottomWidth","row","getDividerStyles","hasDivider","shouldUseChildren","clones","validChildren","Children","isValidElement","getValidChildren","isLast","_child","clonedDivider","cloneElement","_divider","jsxs","Fragment","flexWrap","_len","refs","_key","error","assignRef","useMergeRefs","_len2","_key2","apply"],"sourceRoot":""}
\ No newline at end of file
diff --git a/static/js/666.f073c57c.chunk.js b/static/js/666.f073c57c.chunk.js
new file mode 100644
index 0000000..3e80ba8
--- /dev/null
+++ b/static/js/666.f073c57c.chunk.js
@@ -0,0 +1,12 @@
+"use strict";(globalThis.webpackChunkdeepumandal=globalThis.webpackChunkdeepumandal||[]).push([[666],{6666:(e,n,t)=>{t.r(n),t.d(n,{default:()=>ce});var s=t(2791),i=t(1560),r=t(184);const o=()=>(0,r.jsx)(i.E,{src:"./images/experience.png"});var a=t(9457),l=t(2478),d=t(1917),c=t(6762),u=t(824),h=t(9589),x=t(884),m=t(56),p=Object.defineProperty,f=(e,n,t)=>(((e,n,t)=>{n in e?p(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t})(e,"symbol"!==typeof n?n+"":n,t),t);function g(e){return e.sort(((e,n)=>{const t=e.compareDocumentPosition(n);if(t&Node.DOCUMENT_POSITION_FOLLOWING||t&Node.DOCUMENT_POSITION_CONTAINED_BY)return-1;if(t&Node.DOCUMENT_POSITION_PRECEDING||t&Node.DOCUMENT_POSITION_CONTAINS)return 1;if(t&Node.DOCUMENT_POSITION_DISCONNECTED||t&Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC)throw Error("Cannot sort the given nodes.");return 0}))}function b(e,n,t){let s=e+1;return t&&s>=n&&(s=0),s}function y(e,n,t){let s=e-1;return t&&s<0&&(s=n),s}var v="undefined"!==typeof window?s.useLayoutEffect:s.useEffect,N=e=>e,j=class{constructor(){f(this,"descendants",new Map),f(this,"register",(e=>{var n;if(null!=e)return"object"==typeof(n=e)&&"nodeType"in n&&n.nodeType===Node.ELEMENT_NODE?this.registerNode(e):n=>{this.registerNode(n,e)}})),f(this,"unregister",(e=>{this.descendants.delete(e);const n=g(Array.from(this.descendants.keys()));this.assignIndex(n)})),f(this,"destroy",(()=>{this.descendants.clear()})),f(this,"assignIndex",(e=>{this.descendants.forEach((n=>{const t=e.indexOf(n.node);n.index=t,n.node.dataset.index=n.index.toString()}))})),f(this,"count",(()=>this.descendants.size)),f(this,"enabledCount",(()=>this.enabledValues().length)),f(this,"values",(()=>Array.from(this.descendants.values()).sort(((e,n)=>e.index-n.index)))),f(this,"enabledValues",(()=>this.values().filter((e=>!e.disabled)))),f(this,"item",(e=>{if(0!==this.count())return this.values()[e]})),f(this,"enabledItem",(e=>{if(0!==this.enabledCount())return this.enabledValues()[e]})),f(this,"first",(()=>this.item(0))),f(this,"firstEnabled",(()=>this.enabledItem(0))),f(this,"last",(()=>this.item(this.descendants.size-1))),f(this,"lastEnabled",(()=>{const e=this.enabledValues().length-1;return this.enabledItem(e)})),f(this,"indexOf",(e=>{var n,t;return e&&null!=(t=null==(n=this.descendants.get(e))?void 0:n.index)?t:-1})),f(this,"enabledIndexOf",(e=>null==e?-1:this.enabledValues().findIndex((n=>n.node.isSameNode(e))))),f(this,"next",((e,n=!0)=>{const t=b(e,this.count(),n);return this.item(t)})),f(this,"nextEnabled",((e,n=!0)=>{const t=this.item(e);if(!t)return;const s=b(this.enabledIndexOf(t.node),this.enabledCount(),n);return this.enabledItem(s)})),f(this,"prev",((e,n=!0)=>{const t=y(e,this.count()-1,n);return this.item(t)})),f(this,"prevEnabled",((e,n=!0)=>{const t=this.item(e);if(!t)return;const s=y(this.enabledIndexOf(t.node),this.enabledCount()-1,n);return this.enabledItem(s)})),f(this,"registerNode",((e,n)=>{if(!e||this.descendants.has(e))return;const t=g(Array.from(this.descendants.keys()).concat(e));(null==n?void 0:n.disabled)&&(n.disabled=!!n.disabled);const s={node:e,index:-1,...n};this.descendants.set(e,s),this.assignIndex(t)}))}},I=t(9886),w=t(4591);var[C,E]=(0,I.k)({name:"DescendantsProvider",errorMessage:"useDescendantsContext must be used within DescendantsProvider"});var[O,k]=(0,I.k)({name:"AccordionStylesContext",hookName:"useAccordionStyles",providerName:""}),[_,A]=(0,I.k)({name:"AccordionItemContext",hookName:"useAccordionItemContext",providerName:""}),[D,T,S,M]=[N(C),()=>N(E()),()=>function(){const e=(0,s.useRef)(new j);return v((()=>()=>e.current.destroy())),e.current}(),e=>function(e){const n=E(),[t,i]=(0,s.useState)(-1),r=(0,s.useRef)(null);v((()=>()=>{r.current&&n.unregister(r.current)}),[]),v((()=>{if(!r.current)return;const e=Number(r.current.dataset.index);t==e||Number.isNaN(e)||i(e)}));const o=N(e?n.register(e):n.register);return{descendants:n,index:t,enabledIndex:n.enabledIndexOf(r.current),register:(0,w.lq)(o,r)}}(e)],P=t(6367);var W=t(6992);function H(e){const{onChange:n,defaultIndex:t,index:i,allowMultiple:r,allowToggle:o,...a}=e;!function(e){const n=e.index||e.defaultIndex,t=null!=n&&!Array.isArray(n)&&e.allowMultiple;(0,W.ZK)({condition:!!t,message:`If 'allowMultiple' is passed, then 'index' or 'defaultIndex' must be an array. You passed: ${typeof n},`})}(e),function(e){(0,W.ZK)({condition:!(!e.allowMultiple||!e.allowToggle),message:"If 'allowMultiple' is passed, 'allowToggle' will be ignored. Either remove 'allowToggle' or 'allowMultiple' depending on whether you want multiple accordions visible or not"})}(e);const l=S(),[d,c]=(0,s.useState)(-1);(0,s.useEffect)((()=>()=>{c(-1)}),[]);const[u,h]=function(e){const{value:n,defaultValue:t,onChange:i,shouldUpdate:r=((e,n)=>e!==n)}=e,o=(0,P.W)(i),a=(0,P.W)(r),[l,d]=(0,s.useState)(t),c=void 0!==n,u=c?n:l,h=(0,P.W)((e=>{const n="function"===typeof e?e(u):e;a(u,n)&&(c||d(n),o(n))}),[c,o,u,a]);return[u,h]}({value:i,defaultValue:()=>r?null!=t?t:[]:null!=t?t:-1,onChange:n});return{index:u,setIndex:h,htmlProps:a,getAccordionItemProps:e=>{let n=!1;null!==e&&(n=Array.isArray(u)?u.includes(e):u===e);return{isOpen:n,onChange:n=>{if(null!==e)if(r&&Array.isArray(u)){const t=n?u.concat(e):u.filter((n=>n!==e));h(t)}else n?h(e):o&&h(-1)}}},focusedIndex:d,setFocusedIndex:c,descendants:l}}var[F,U]=(0,I.k)({name:"AccordionContext",hookName:"useAccordionContext",providerName:"Accordion"});function K(e){const{isDisabled:n,isFocusable:t,id:i,...r}=e,{getAccordionItemProps:o,setFocusedIndex:a}=U(),l=(0,s.useRef)(null),d=(0,s.useId)(),c=null!=i?i:d,u=`accordion-button-${c}`,h=`accordion-panel-${c}`;!function(e){(0,W.ZK)({condition:!(!e.isFocusable||e.isDisabled),message:"Using only 'isFocusable', this prop is reserved for situations where you pass 'isDisabled' but you still want the element to receive focus (A11y). Either remove it or pass 'isDisabled' as well.\n "})}(e);const{register:x,index:m,descendants:p}=M({disabled:n&&!t}),{isOpen:f,onChange:g}=o(-1===m?null:m);!function(e){(0,W.ZK)({condition:e.isOpen&&!!e.isDisabled,message:"Cannot open a disabled accordion item"})}({isOpen:f,isDisabled:n});const b=(0,s.useCallback)((()=>{null==g||g(!f),a(m)}),[m,a,f,g]),y=(0,s.useCallback)((e=>{const n={ArrowDown:()=>{const e=p.nextEnabled(m);null==e||e.node.focus()},ArrowUp:()=>{const e=p.prevEnabled(m);null==e||e.node.focus()},Home:()=>{const e=p.firstEnabled();null==e||e.node.focus()},End:()=>{const e=p.lastEnabled();null==e||e.node.focus()}}[e.key];n&&(e.preventDefault(),n(e))}),[p,m]),v=(0,s.useCallback)((()=>{a(m)}),[a,m]),N=(0,s.useCallback)((function(e={},t=null){return{...e,type:"button",ref:(0,w.lq)(x,l,t),id:u,disabled:!!n,"aria-expanded":!!f,"aria-controls":h,onClick:(0,W.v0)(e.onClick,b),onFocus:(0,W.v0)(e.onFocus,v),onKeyDown:(0,W.v0)(e.onKeyDown,y)}}),[u,n,f,b,v,y,h,x]),j=(0,s.useCallback)((function(e={},n=null){return{...e,ref:n,role:"region",id:h,"aria-labelledby":u,hidden:!f}}),[u,f,h]);return{isOpen:f,isDisabled:n,isFocusable:t,onOpen:()=>{null==g||g(!0)},onClose:()=>{null==g||g(!1)},getButtonProps:N,getPanelProps:j,htmlProps:r}}var L=t(5597),B=t(2481),G=t(2996),z=t(5113),R=(0,L.G)((function({children:e,reduceMotion:n,...t},i){const o=(0,B.jC)("Accordion",t),a=(0,G.Lr)(t),{htmlProps:l,descendants:d,...c}=H(a),u=(0,s.useMemo)((()=>({...c,reduceMotion:!!n})),[c,n]);return(0,r.jsx)(D,{value:d,children:(0,r.jsx)(F,{value:u,children:(0,r.jsx)(O,{value:o,children:(0,r.jsx)(z.m.div,{ref:i,...l,className:(0,W.cx)("chakra-accordion",t.className),__css:o.root,children:e})})})})}));R.displayName="Accordion";var V=(0,L.G)((function(e,n){const{children:t,className:i}=e,{htmlProps:o,...a}=K(e),l={...k().container,overflowAnchor:"none"},d=(0,s.useMemo)((()=>a),[a]);return(0,r.jsx)(_,{value:d,children:(0,r.jsx)(z.m.div,{ref:n,...o,className:(0,W.cx)("chakra-accordion__item",i),__css:l,children:"function"===typeof t?t({isExpanded:!!a.isOpen,isDisabled:!!a.isDisabled}):t})})}));V.displayName="AccordionItem";var $=(0,L.G)((function(e,n){const{getButtonProps:t}=A(),s=t(e,n),i={display:"flex",alignItems:"center",width:"100%",outline:0,...k().button};return(0,r.jsx)(z.m.button,{...s,className:(0,W.cx)("chakra-accordion__button",e.className),__css:i})}));$.displayName="AccordionButton";var q=t(9640);function X(e){const{isOpen:n,isDisabled:t}=A(),{reduceMotion:s}=U(),i=(0,W.cx)("chakra-accordion__icon",e.className),o={opacity:t?.4:1,transform:n?"rotate(-180deg)":void 0,transition:s?void 0:"transform 0.2s",transformOrigin:"center",...k().icon};return(0,r.jsx)(q.J,{viewBox:"0 0 24 24","aria-hidden":!0,className:i,__css:o,...e,children:(0,r.jsx)("path",{fill:"currentColor",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"})})}X.displayName="AccordionIcon";var Z={ease:[.25,.1,.25,1],easeIn:[.4,0,1,1],easeOut:[0,0,.2,1],easeInOut:[.4,0,.2,1]};var Y=(e,n)=>({...e,delay:"number"===typeof n?n:null==n?void 0:n.enter}),Q=(e,n)=>({...e,delay:"number"===typeof n?n:null==n?void 0:n.exit}),J=t(4549),ee=t(6931),ne={exit:{height:{duration:.2,ease:Z.ease},opacity:{duration:.3,ease:Z.ease}},enter:{height:{duration:.3,ease:Z.ease},opacity:{duration:.4,ease:Z.ease}}},te={exit:({animateOpacity:e,startingHeight:n,transition:t,transitionEnd:s,delay:i})=>{var r,o;return{...e&&{opacity:(o=n,null!=o&&parseInt(o.toString(),10)>0?1:0)},height:n,transitionEnd:null==s?void 0:s.exit,transition:null!=(r=null==t?void 0:t.exit)?r:Q(ne.exit,i)}},enter:({animateOpacity:e,endingHeight:n,transition:t,transitionEnd:s,delay:i})=>{var r;return{...e&&{opacity:1},height:n,transitionEnd:null==s?void 0:s.enter,transition:null!=(r=null==t?void 0:t.enter)?r:Y(ne.enter,i)}}},se=(0,s.forwardRef)(((e,n)=>{const{in:t,unmountOnExit:i,animateOpacity:o=!0,startingHeight:a=0,endingHeight:l="auto",style:d,className:c,transition:u,transitionEnd:h,...x}=e,[m,p]=(0,s.useState)(!1);(0,s.useEffect)((()=>{const e=setTimeout((()=>{p(!0)}));return()=>clearTimeout(e)}),[]),(0,W.ZK)({condition:Number(a)>0&&!!i,message:"startingHeight and unmountOnExit are mutually exclusive. You can't use them together"});const f=parseFloat(a.toString())>0,g={startingHeight:a,endingHeight:l,animateOpacity:o,transition:m?u:{enter:{duration:0}},transitionEnd:{enter:null==h?void 0:h.enter,exit:i?null==h?void 0:h.exit:{...null==h?void 0:h.exit,display:f?"block":"none"}}},b=!i||t,y=t||i?"enter":"exit";return(0,r.jsx)(J.M,{initial:!1,custom:g,children:b&&(0,r.jsx)(ee.E.div,{ref:n,...x,className:(0,W.cx)("chakra-collapse",c),style:{overflow:"hidden",display:"block",...d},custom:g,variants:te,initial:!!i&&"exit",animate:y,exit:"exit"})})}));se.displayName="Collapse";var ie=(0,L.G)((function(e,n){const{className:t,motionProps:s,...i}=e,{reduceMotion:o}=U(),{getPanelProps:a,isOpen:l}=A(),d=a(i,n),c=(0,W.cx)("chakra-accordion__panel",t),u=k();o||delete d.hidden;const h=(0,r.jsx)(z.m.div,{...d,__css:u.panel,className:c});return o?h:(0,r.jsx)(se,{in:l,...s,children:h})}));ie.displayName="AccordionPanel";const re=({experience:e,theme:n,index:t,totalCards:s})=>(console.log("experience1234567",e),(0,r.jsxs)(c.U,{padding:"1rem",flexDir:{base:"column",sm:"row"},justifyContent:"space-between",border:`1px solid ${e.color}`,borderRadius:"20",children:[(0,r.jsx)(u.xu,{display:"flex",justifyContent:"center",alignItems:"center",width:{base:"40%",sm:"5%"},marginBottom:{base:"20px",sm:"0px"},children:(0,r.jsx)(i.E,{width:"100px",borderRadius:"50%",src:`./images/${e.logo_path}`})}),(0,r.jsxs)(d.g,{width:"93%",justifyContent:"space-between",textAlign:"left",children:[(0,r.jsxs)(c.U,{flexDirection:{base:"column",sm:"row"},width:"100%",justifyContent:"space-between",children:[(0,r.jsxs)(d.g,{width:{base:"100%",sm:"50%"},alignItems:{base:"center",sm:"flex-start"},children:[(0,r.jsx)(h.X,{sx:{fontWeight:700,color:"#001c55",fontSize:"16px",lineHeight:"20px"},children:e.title}),(0,r.jsx)(x.x,{sx:{fontWeight:400,color:"#001c55",fontSize:"14px",lineHeight:"20px"},children:e.company})]}),(0,r.jsxs)(d.g,{width:{base:"100%",sm:"50%"},alignItems:{base:"center",sm:"flex-end"},children:[(0,r.jsxs)(x.x,{sx:{fontWeight:400,color:"#001c55",fontSize:"14px",lineHeight:"15px"},children:[" ",e.duration," "]}),(0,r.jsxs)(x.x,{sx:{fontWeight:400,color:"#001c55",fontSize:"14px",lineHeight:"15px"},children:[" ",e.location," "]})]})]}),(0,r.jsx)(x.x,{sx:{fontWeight:400,color:"#001c55",fontSize:"14px",lineHeight:"20px",marginTop:"10px"},textAlign:{base:"center",sm:"left"},children:e.description})]})]})),oe=({experience:e,theme:n})=>(console.log("experience",e.sections[0]),(0,r.jsx)(m.K,{margin:"50px",id:"experience",w:{base:"90%",sm:"100%"},children:(0,r.jsx)(R,{allowToggle:!0,children:e.sections.map(((e,t)=>(0,r.jsx)(V,{children:({isExpanded:t})=>(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("h2",{children:(0,r.jsxs)($,{className:"accord-panel",_hover:{color:n.secondaryText},border:"1px solid",padding:"1rem",borderColor:n.headerColor,borderRadius:"5px",marginBottom:"3px",children:[(0,r.jsx)(u.xu,{flex:"1",textAlign:"left",backgroundColor:n.body,fontFamily:"Google Sans Regular",color:n.text,children:e.title}),(0,r.jsx)(X,{})]})}),(0,r.jsx)(ie,{padding:"1rem",display:"flex",flexDirection:"column",gap:"1rem",margin:"auto",id:"accordianpannel",backgroundColor:n.body,children:e.experiences.map(((t,s)=>(0,r.jsx)(re,{index:s,totalCards:e.experiences.length,experience:t,theme:n},s)))})]})},e.title)))})}));var ae=t(2554),le=t(8045);const de=ae.F4`
+from {
+ opacity: 0;
+ transform: translateY(50px);
+}
+
+to {
+ opacity: 1;
+ transform: translateY(0px);
+}
+`,ce=()=>{const e=l.y;return(0,r.jsxs)(d.g,{w:{base:"100%",sm:"90%",md:"800px",lg:"1000px",xl:"1100px","2xl":"1350px"},gap:"3rem",margin:"auto",children:[(0,r.jsx)(le.ZP,{duration:2e3,keyframes:de,children:(0,r.jsx)(d.g,{children:(0,r.jsxs)(c.U,{flexDir:{base:"column",sm:"row"},gap:"40px",mt:{base:"50px",sm:"100px"},children:[(0,r.jsx)(u.xu,{width:{base:"90%",sm:"50%"},children:(0,r.jsx)(u.xu,{children:(0,r.jsx)(o,{})})}),(0,r.jsxs)(d.g,{width:{base:"90%",sm:"50%"},children:[(0,r.jsx)(h.X,{style:{color:e.text},children:a.b8.title}),(0,r.jsx)(h.X,{style:{color:e.text},children:a.b8.subtitle}),(0,r.jsx)(x.x,{sx:{color:e.secondaryText},children:a.b8.description})]})]})})}),(0,r.jsx)(oe,{experience:a.b8,theme:e})]})}},2625:(e,n,t)=>{t.d(n,{XQ:()=>i});var s=t(6992);Object.freeze(["base","sm","md","lg","xl","2xl"]);function i(e,n){return Array.isArray(e)?e.map((e=>null===e?null:n(e))):(0,s.Kn)(e)?Object.keys(e).reduce(((t,s)=>(t[s]=n(e[s]),t)),{}):null!=e?n(e):null}},6762:(e,n,t)=>{t.d(n,{U:()=>o});var s=t(56),i=t(5597),r=t(184),o=(0,i.G)(((e,n)=>(0,r.jsx)(s.K,{align:"center",...e,direction:"row",ref:n})));o.displayName="HStack"},9589:(e,n,t)=>{t.d(n,{X:()=>d});var s=t(5597),i=t(2481),r=t(2996),o=t(5113),a=t(6992),l=t(184),d=(0,s.G)((function(e,n){const t=(0,i.mq)("Heading",e),{className:s,...d}=(0,r.Lr)(e);return(0,l.jsx)(o.m.h2,{ref:n,className:(0,a.cx)("chakra-heading",e.className),...d,__css:t})}));d.displayName="Heading"},1917:(e,n,t)=>{t.d(n,{g:()=>o});var s=t(56),i=t(5597),r=t(184),o=(0,i.G)(((e,n)=>(0,r.jsx)(s.K,{align:"center",...e,direction:"column",ref:n})));o.displayName="VStack"},56:(e,n,t)=>{t.d(n,{K:()=>d});var s=t(5113),i=t(184),r=e=>(0,i.jsx)(s.m.div,{className:"chakra-stack__item",...e,__css:{display:"inline-block",flex:"0 0 auto",minWidth:0,...e.__css}});r.displayName="StackItem";var o=t(2625);var a=t(2791);var l=t(6992),d=(0,t(5597).G)(((e,n)=>{const{isInline:t,direction:d,align:c,justify:u,spacing:h="0.5rem",wrap:x,children:m,divider:p,className:f,shouldWrapChildren:g,...b}=e,y=t?"row":null!=d?d:"column",v=(0,a.useMemo)((()=>function(e){const{spacing:n,direction:t}=e,s={column:{my:n,mx:0,borderLeftWidth:0,borderBottomWidth:"1px"},"column-reverse":{my:n,mx:0,borderLeftWidth:0,borderBottomWidth:"1px"},row:{mx:n,my:0,borderLeftWidth:"1px",borderBottomWidth:0},"row-reverse":{mx:n,my:0,borderLeftWidth:"1px",borderBottomWidth:0}};return{"&":(0,o.XQ)(t,(e=>s[e]))}}({spacing:h,direction:y})),[h,y]),N=!!p,j=!g&&!N,I=(0,a.useMemo)((()=>{const e=function(e){return a.Children.toArray(e).filter((e=>(0,a.isValidElement)(e)))}(m);return j?e:e.map(((n,t)=>{const s="undefined"!==typeof n.key?n.key:t,o=t+1===e.length,l=g?(0,i.jsx)(r,{children:n},s):n;if(!N)return l;const d=(0,a.cloneElement)(p,{__css:v}),c=o?null:d;return(0,i.jsxs)(a.Fragment,{children:[l,c]},s)}))}),[p,v,N,j,g,m]),w=(0,l.cx)("chakra-stack",f);return(0,i.jsx)(s.m.div,{ref:n,display:"flex",alignItems:c,justifyContent:u,flexDirection:y,flexWrap:x,gap:N?void 0:h,className:w,...b,children:I})}));d.displayName="Stack"},4591:(e,n,t)=>{t.d(n,{lq:()=>i,qq:()=>r});var s=t(2791);function i(...e){return n=>{e.forEach((e=>{!function(e,n){if(null!=e)if("function"!==typeof e)try{e.current=n}catch(t){throw new Error(`Cannot assign value '${n}' to ref '${e}'`)}else e(n)}(e,n)}))}}function r(...e){return(0,s.useMemo)((()=>i(...e)),e)}}}]);
+//# sourceMappingURL=666.f073c57c.chunk.js.map
\ No newline at end of file
diff --git a/static/js/666.f073c57c.chunk.js.map b/static/js/666.f073c57c.chunk.js.map
new file mode 100644
index 0000000..df23617
--- /dev/null
+++ b/static/js/666.f073c57c.chunk.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"static/js/666.f073c57c.chunk.js","mappings":"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","sources":["components/ExperienceImg/ExperienceImg.tsx","../node_modules/@chakra-ui/descendant/src/utils.ts","../node_modules/@chakra-ui/descendant/src/descendant.ts","../node_modules/@chakra-ui/descendant/src/use-descendant.ts","../node_modules/@chakra-ui/accordion/src/accordion-context.ts","../node_modules/@chakra-ui/accordion/src/use-accordion.ts","../node_modules/@chakra-ui/react-use-controllable-state/src/index.ts","../node_modules/@chakra-ui/accordion/src/accordion.tsx","../node_modules/@chakra-ui/accordion/src/accordion-item.tsx","../node_modules/@chakra-ui/accordion/src/accordion-button.tsx","../node_modules/@chakra-ui/accordion/src/accordion-icon.tsx","../node_modules/@chakra-ui/transition/src/transition-utils.ts","../node_modules/@chakra-ui/transition/src/collapse.tsx","../node_modules/@chakra-ui/accordion/src/accordion-panel.tsx","components/ExperienceCard/ExperienceCard.tsx","components/ExperienceAccordion/ExperienceAccordion.tsx","PAGE/EXPERIENCE/Experience.tsx","../node_modules/@chakra-ui/breakpoint-utils/dist/chunk-G72KV6MB.mjs","../node_modules/@chakra-ui/layout/src/stack/h-stack.tsx","../node_modules/@chakra-ui/layout/src/heading.tsx","../node_modules/@chakra-ui/layout/src/stack/v-stack.tsx","../node_modules/@chakra-ui/layout/src/stack/stack-item.tsx","../node_modules/@chakra-ui/layout/src/stack/stack.tsx","../node_modules/@chakra-ui/layout/src/stack/stack.utils.tsx","../node_modules/@chakra-ui/react-children-utils/dist/index.mjs","../node_modules/@chakra-ui/react-use-merge-refs/src/index.ts"],"sourcesContent":["import { Image } from '@chakra-ui/react'\r\nimport React, { FC } from 'react'\r\n\r\nconst ExperienceImg: FC = () => {\r\n return (\r\n \r\n )\r\n}\r\n\r\nexport default ExperienceImg","import { useEffect, useLayoutEffect } from \"react\"\n\n/**\n * Sort an array of DOM nodes according to the HTML tree order\n * @see http://www.w3.org/TR/html5/infrastructure.html#tree-order\n */\nexport function sortNodes(nodes: Node[]) {\n return nodes.sort((a, b) => {\n const compare = a.compareDocumentPosition(b)\n\n if (\n compare & Node.DOCUMENT_POSITION_FOLLOWING ||\n compare & Node.DOCUMENT_POSITION_CONTAINED_BY\n ) {\n // a < b\n return -1\n }\n\n if (\n compare & Node.DOCUMENT_POSITION_PRECEDING ||\n compare & Node.DOCUMENT_POSITION_CONTAINS\n ) {\n // a > b\n return 1\n }\n\n if (\n compare & Node.DOCUMENT_POSITION_DISCONNECTED ||\n compare & Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC\n ) {\n throw Error(\"Cannot sort the given nodes.\")\n } else {\n return 0\n }\n })\n}\n\nexport const isElement = (el: any): el is HTMLElement =>\n typeof el == \"object\" && \"nodeType\" in el && el.nodeType === Node.ELEMENT_NODE\n\nexport function getNextIndex(current: number, max: number, loop: boolean) {\n let next = current + 1\n if (loop && next >= max) next = 0\n return next\n}\n\nexport function getPrevIndex(current: number, max: number, loop: boolean) {\n let next = current - 1\n if (loop && next < 0) next = max\n return next\n}\n\nexport const useSafeLayoutEffect =\n typeof window !== \"undefined\" ? useLayoutEffect : useEffect\n\nexport const cast = (value: any) => value as T\n","import { sortNodes, isElement, getNextIndex, getPrevIndex } from \"./utils\"\n\nexport type DescendantOptions = T & {\n /**\n * If `true`, the item will be registered in all nodes map\n * but omitted from enabled nodes map\n */\n disabled?: boolean\n /**\n * The id of the item\n */\n id?: string\n}\n\nexport type Descendant = DescendantOptions & {\n /**\n * DOM element of the item\n */\n node: T\n /**\n * index of item in all nodes map and enabled nodes map\n */\n index: number\n}\n\n/**\n * @internal\n *\n * Class to manage descendants and their relative indices in the DOM.\n * It uses `node.compareDocumentPosition(...)` under the hood\n */\nexport class DescendantsManager<\n T extends HTMLElement,\n K extends Record = {},\n> {\n private descendants = new Map>()\n\n register = (nodeOrOptions: T | null | DescendantOptions) => {\n if (nodeOrOptions == null) return\n\n if (isElement(nodeOrOptions)) {\n return this.registerNode(nodeOrOptions)\n }\n\n return (node: T | null) => {\n this.registerNode(node, nodeOrOptions)\n }\n }\n\n unregister = (node: T) => {\n this.descendants.delete(node)\n const sorted = sortNodes(Array.from(this.descendants.keys()))\n this.assignIndex(sorted)\n }\n\n destroy = () => {\n this.descendants.clear()\n }\n\n private assignIndex = (descendants: Node[]) => {\n this.descendants.forEach((descendant) => {\n const index = descendants.indexOf(descendant.node)\n descendant.index = index\n descendant.node.dataset[\"index\"] = descendant.index.toString()\n })\n }\n\n count = () => this.descendants.size\n\n enabledCount = () => this.enabledValues().length\n\n values = () => {\n const values = Array.from(this.descendants.values())\n return values.sort((a, b) => a.index - b.index)\n }\n\n enabledValues = () => {\n return this.values().filter((descendant) => !descendant.disabled)\n }\n\n item = (index: number) => {\n if (this.count() === 0) return undefined\n return this.values()[index]\n }\n\n enabledItem = (index: number) => {\n if (this.enabledCount() === 0) return undefined\n return this.enabledValues()[index]\n }\n\n first = () => this.item(0)\n\n firstEnabled = () => this.enabledItem(0)\n\n last = () => this.item(this.descendants.size - 1)\n\n lastEnabled = () => {\n const lastIndex = this.enabledValues().length - 1\n return this.enabledItem(lastIndex)\n }\n\n indexOf = (node: T | null) => {\n if (!node) return -1\n return this.descendants.get(node)?.index ?? -1\n }\n\n enabledIndexOf = (node: T | null) => {\n if (node == null) return -1\n return this.enabledValues().findIndex((i) => i.node.isSameNode(node))\n }\n\n next = (index: number, loop = true) => {\n const next = getNextIndex(index, this.count(), loop)\n return this.item(next)\n }\n\n nextEnabled = (index: number, loop = true) => {\n const item = this.item(index)\n if (!item) return\n const enabledIndex = this.enabledIndexOf(item.node)\n const nextEnabledIndex = getNextIndex(\n enabledIndex,\n this.enabledCount(),\n loop,\n )\n return this.enabledItem(nextEnabledIndex)\n }\n\n prev = (index: number, loop = true) => {\n const prev = getPrevIndex(index, this.count() - 1, loop)\n return this.item(prev)\n }\n\n prevEnabled = (index: number, loop = true) => {\n const item = this.item(index)\n if (!item) return\n const enabledIndex = this.enabledIndexOf(item.node)\n const prevEnabledIndex = getPrevIndex(\n enabledIndex,\n this.enabledCount() - 1,\n loop,\n )\n return this.enabledItem(prevEnabledIndex)\n }\n\n private registerNode = (node: T | null, options?: DescendantOptions) => {\n if (!node || this.descendants.has(node)) return\n\n const keys = Array.from(this.descendants.keys()).concat(node)\n const sorted = sortNodes(keys)\n\n if (options?.disabled) {\n options.disabled = !!options.disabled\n }\n\n const descendant = { node, index: -1, ...options }\n\n this.descendants.set(node, descendant as Descendant)\n\n this.assignIndex(sorted)\n }\n}\n","import { createContext } from \"@chakra-ui/react-context\"\nimport { mergeRefs } from \"@chakra-ui/react-use-merge-refs\"\nimport { useRef, useState } from \"react\"\nimport { DescendantsManager, DescendantOptions } from \"./descendant\"\nimport { useSafeLayoutEffect, cast } from \"./utils\"\n\n/**\n * @internal\n * React hook that initializes the DescendantsManager\n */\nfunction useDescendants<\n T extends HTMLElement = HTMLElement,\n K extends Record = {},\n>() {\n const descendants = useRef(new DescendantsManager())\n useSafeLayoutEffect(() => {\n return () => descendants.current.destroy()\n })\n return descendants.current\n}\n\nexport interface UseDescendantsReturn\n extends ReturnType {}\n\n/* -------------------------------------------------------------------------------------------------\n * Descendants context to be used in component-land.\n - Mount the `DescendantsContextProvider` at the root of the component\n - Call `useDescendantsContext` anywhere you need access to the descendants information\n\n NB: I recommend using `createDescendantContext` below\n * -----------------------------------------------------------------------------------------------*/\n\nconst [DescendantsContextProvider, useDescendantsContext] =\n createContext({\n name: \"DescendantsProvider\",\n errorMessage:\n \"useDescendantsContext must be used within DescendantsProvider\",\n })\n\n/**\n * @internal\n * This hook provides information a descendant such as:\n * - Its index compared to other descendants\n * - ref callback to register the descendant\n * - Its enabled index compared to other enabled descendants\n */\nfunction useDescendant<\n T extends HTMLElement = HTMLElement,\n K extends Record = {},\n>(options?: DescendantOptions) {\n const descendants = useDescendantsContext()\n const [index, setIndex] = useState(-1)\n const ref = useRef(null)\n\n useSafeLayoutEffect(() => {\n return () => {\n if (!ref.current) return\n descendants.unregister(ref.current)\n }\n }, [])\n\n useSafeLayoutEffect(() => {\n if (!ref.current) return\n const dataIndex = Number(ref.current.dataset[\"index\"])\n if (index != dataIndex && !Number.isNaN(dataIndex)) {\n setIndex(dataIndex)\n }\n })\n\n const refCallback = options\n ? cast>(descendants.register(options))\n : cast>(descendants.register)\n\n return {\n descendants,\n index,\n enabledIndex: descendants.enabledIndexOf(ref.current),\n register: mergeRefs(refCallback, ref),\n }\n}\n\n/* -------------------------------------------------------------------------------------------------\n * Function that provides strongly typed versions of the context provider and hooks above.\n To be used in component-land\n * -----------------------------------------------------------------------------------------------*/\n\nexport function createDescendantContext<\n T extends HTMLElement = HTMLElement,\n K extends Record = {},\n>() {\n type ContextProviderType = React.Provider>\n const ContextProvider = cast(DescendantsContextProvider)\n\n const _useDescendantsContext = () =>\n cast>(useDescendantsContext())\n\n const _useDescendant = (options?: DescendantOptions) =>\n useDescendant(options)\n\n const _useDescendants = () => useDescendants()\n\n return [\n // context provider\n ContextProvider,\n // call this when you need to read from context\n _useDescendantsContext,\n // descendants state information, to be called and passed to `ContextProvider`\n _useDescendants,\n // descendant index information\n _useDescendant,\n ] as const\n}\n","import { createDescendantContext } from \"@chakra-ui/descendant\"\nimport { createContext } from \"@chakra-ui/react-context\"\nimport { SystemStyleObject } from \"@chakra-ui/system\"\nimport { UseAccordionItemReturn } from \"./use-accordion\"\n\nexport const [AccordionStylesProvider, useAccordionStyles] = createContext<\n Record\n>({\n name: \"AccordionStylesContext\",\n hookName: \"useAccordionStyles\",\n providerName: \"\",\n})\n\ntype AccordionItemContext = Omit\n\nexport const [AccordionItemProvider, useAccordionItemContext] =\n createContext({\n name: \"AccordionItemContext\",\n hookName: \"useAccordionItemContext\",\n providerName: \"\",\n })\n\n/* -------------------------------------------------------------------------------------------------\n * Create context to track descendants and their indices\n * -----------------------------------------------------------------------------------------------*/\n\nexport const [\n AccordionDescendantsProvider,\n useAccordionDescendantsContext,\n useAccordionDescendants,\n useAccordionDescendant,\n] = createDescendantContext()\n","import { createContext } from \"@chakra-ui/react-context\"\nimport { useControllableState } from \"@chakra-ui/react-use-controllable-state\"\nimport { mergeRefs } from \"@chakra-ui/react-use-merge-refs\"\nimport { callAllHandlers, warn } from \"@chakra-ui/shared-utils\"\n\nimport { useCallback, useEffect, useId, useRef, useState } from \"react\"\nimport {\n useAccordionDescendant,\n useAccordionDescendants,\n} from \"./accordion-context\"\n\n/* -------------------------------------------------------------------------------------------------\n * useAccordion - The root react hook that manages all accordion items\n * -----------------------------------------------------------------------------------------------*/\n\n/**\n * @deprecated - This will be removed in future versions.\n * Please use `number | number[]` instead.\n */\nexport type ExpandedIndex = number | number[]\n\nexport interface UseAccordionProps {\n /**\n * If `true`, multiple accordion items can be expanded at once.\n *\n * @default false\n */\n allowMultiple?: boolean\n /**\n * If `true`, any expanded accordion item can be collapsed again.\n *\n * @default false\n */\n allowToggle?: boolean\n /**\n * The index(es) of the expanded accordion item\n */\n index?: ExpandedIndex\n /**\n * The initial index(es) of the expanded accordion item\n */\n defaultIndex?: ExpandedIndex\n /**\n * The callback invoked when accordion items are expanded or collapsed.\n */\n onChange?(expandedIndex: ExpandedIndex): void\n}\n\n/**\n * useAccordion hook provides all the state and focus management logic\n * for accordion items.\n *\n * @see WAI-ARIA https://www.w3.org/WAI/ARIA/apg/patterns/accordion/\n */\nexport function useAccordion(props: UseAccordionProps) {\n const {\n onChange,\n defaultIndex,\n index: indexProp,\n allowMultiple,\n allowToggle,\n ...htmlProps\n } = props\n\n // validate the props and `warn` if used incorrectly\n allowMultipleWarning(props)\n allowMultipleAndAllowToggleWarning(props)\n\n /**\n * Think of this as the register to each accordion item.\n * We used to manage focus between accordion item buttons.\n *\n * Every accordion item, registers their button refs in this context\n */\n const descendants = useAccordionDescendants()\n\n /**\n * This state is used to track the index focused accordion\n * button when click on the button, tab on the button, or\n * use the down/up arrow to navigate.\n */\n const [focusedIndex, setFocusedIndex] = useState(-1)\n\n /**\n * Reset focused index when accordion unmounts\n * or descendants change\n */\n useEffect(() => {\n return () => {\n setFocusedIndex(-1)\n }\n }, [])\n\n /**\n * Hook that manages the controlled and un-controlled state\n * for the accordion.\n */\n const [index, setIndex] = useControllableState({\n value: indexProp,\n defaultValue() {\n if (allowMultiple) return defaultIndex ?? []\n return defaultIndex ?? -1\n },\n onChange,\n })\n\n /**\n * Gets the `isOpen` and `onChange` props for a child accordion item based on\n * the child's index.\n *\n * @param idx {number} The index of the child accordion item\n */\n const getAccordionItemProps = (idx: number | null) => {\n let isOpen = false\n\n if (idx !== null) {\n isOpen = Array.isArray(index) ? index.includes(idx) : index === idx\n }\n\n const onChange = (isOpen: boolean) => {\n if (idx === null) return\n\n if (allowMultiple && Array.isArray(index)) {\n //\n const nextState = isOpen\n ? index.concat(idx)\n : index.filter((i) => i !== idx)\n\n setIndex(nextState)\n //\n } else if (isOpen) {\n setIndex(idx)\n } else if (allowToggle) {\n setIndex(-1)\n }\n }\n\n return { isOpen, onChange }\n }\n\n return {\n index,\n setIndex,\n htmlProps,\n getAccordionItemProps,\n focusedIndex,\n setFocusedIndex,\n descendants,\n }\n}\n\nexport type UseAccordionReturn = ReturnType\n\n/* -------------------------------------------------------------------------------------------------\n * Create context for the root accordion logic\n * -----------------------------------------------------------------------------------------------*/\n\ninterface AccordionContext\n extends Omit {\n reduceMotion: boolean\n}\n\nexport const [AccordionProvider, useAccordionContext] =\n createContext({\n name: \"AccordionContext\",\n hookName: \"useAccordionContext\",\n providerName: \"Accordion\",\n })\n\n/* -------------------------------------------------------------------------------------------------\n * Hook for a single accordion item\n * -----------------------------------------------------------------------------------------------*/\n\nexport interface UseAccordionItemProps {\n /**\n * If `true`, the accordion item will be disabled.\n *\n * @default false\n */\n isDisabled?: boolean\n /**\n * If `true`, the accordion item will be focusable.\n *\n * @default false\n */\n isFocusable?: boolean\n /**\n * A unique id for the accordion item.\n */\n id?: string\n}\n\n/**\n * useAccordionItem\n *\n * React hook that provides the open/close functionality\n * for an accordion item and its children\n */\nexport function useAccordionItem(props: UseAccordionItemProps) {\n const { isDisabled, isFocusable, id, ...htmlProps } = props\n const { getAccordionItemProps, setFocusedIndex } = useAccordionContext()\n\n const buttonRef = useRef(null)\n\n /**\n * Generate unique ids for all accordion item components (button and panel)\n */\n const reactId = useId()\n const uid = id ?? reactId\n\n const buttonId = `accordion-button-${uid}`\n const panelId = `accordion-panel-${uid}`\n\n focusableNotDisabledWarning(props)\n\n /**\n * Think of this as a way to register this accordion item\n * with its parent `useAccordion`\n */\n const { register, index, descendants } = useAccordionDescendant({\n disabled: isDisabled && !isFocusable,\n })\n\n const { isOpen, onChange } = getAccordionItemProps(\n index === -1 ? null : index,\n )\n\n warnIfOpenAndDisabled({ isOpen, isDisabled })\n\n const onOpen = () => {\n onChange?.(true)\n }\n\n const onClose = () => {\n onChange?.(false)\n }\n\n /**\n * Toggle the visibility of the accordion item\n */\n const onClick = useCallback(() => {\n onChange?.(!isOpen)\n setFocusedIndex(index)\n }, [index, setFocusedIndex, isOpen, onChange])\n\n /**\n * Manage keyboard navigation between accordion items.\n */\n const onKeyDown = useCallback(\n (event: React.KeyboardEvent) => {\n const keyMap: Record = {\n ArrowDown: () => {\n const next = descendants.nextEnabled(index)\n next?.node.focus()\n },\n ArrowUp: () => {\n const prev = descendants.prevEnabled(index)\n prev?.node.focus()\n },\n Home: () => {\n const first = descendants.firstEnabled()\n first?.node.focus()\n },\n End: () => {\n const last = descendants.lastEnabled()\n last?.node.focus()\n },\n }\n\n const action = keyMap[event.key]\n\n if (action) {\n event.preventDefault()\n action(event)\n }\n },\n [descendants, index],\n )\n\n /**\n * Since each accordion item's button still remains tabbable, let's\n * update the focusedIndex when it receives focus\n */\n const onFocus = useCallback(() => {\n setFocusedIndex(index)\n }, [setFocusedIndex, index])\n\n const getButtonProps = useCallback(\n function getButtonProps(\n props: Omit, \"color\"> = {},\n ref: React.Ref | null = null,\n ): React.ComponentProps<\"button\"> {\n return {\n ...props,\n type: \"button\",\n ref: mergeRefs(register, buttonRef, ref),\n id: buttonId,\n disabled: !!isDisabled,\n \"aria-expanded\": !!isOpen,\n \"aria-controls\": panelId,\n onClick: callAllHandlers(props.onClick, onClick),\n onFocus: callAllHandlers(props.onFocus, onFocus),\n onKeyDown: callAllHandlers(props.onKeyDown, onKeyDown),\n }\n },\n [\n buttonId,\n isDisabled,\n isOpen,\n onClick,\n onFocus,\n onKeyDown,\n panelId,\n register,\n ],\n )\n\n const getPanelProps = useCallback(\n function getPanelProps(\n props: Omit, \"color\"> = {},\n ref: React.Ref | null = null,\n ): React.HTMLAttributes & React.RefAttributes {\n return {\n ...props,\n ref,\n role: \"region\",\n id: panelId,\n \"aria-labelledby\": buttonId,\n hidden: !isOpen,\n }\n },\n [buttonId, isOpen, panelId],\n )\n\n return {\n isOpen,\n isDisabled,\n isFocusable,\n onOpen,\n onClose,\n getButtonProps,\n getPanelProps,\n htmlProps,\n }\n}\n\nexport type UseAccordionItemReturn = ReturnType\n\n/* -------------------------------------------------------------------------------------------------\n * Validate accordion and accordion item props, and emit warnings.\n * -----------------------------------------------------------------------------------------------*/\n\nfunction allowMultipleWarning(props: UseAccordionProps) {\n const index = props.index || props.defaultIndex\n const condition =\n index != null && !Array.isArray(index) && props.allowMultiple\n\n warn({\n condition: !!condition,\n message: `If 'allowMultiple' is passed, then 'index' or 'defaultIndex' must be an array. You passed: ${typeof index},`,\n })\n}\n\nfunction allowMultipleAndAllowToggleWarning(props: UseAccordionProps) {\n warn({\n condition: !!(props.allowMultiple && props.allowToggle),\n message: `If 'allowMultiple' is passed, 'allowToggle' will be ignored. Either remove 'allowToggle' or 'allowMultiple' depending on whether you want multiple accordions visible or not`,\n })\n}\n\nfunction focusableNotDisabledWarning(props: UseAccordionItemProps) {\n warn({\n condition: !!(props.isFocusable && !props.isDisabled),\n message: `Using only 'isFocusable', this prop is reserved for situations where you pass 'isDisabled' but you still want the element to receive focus (A11y). Either remove it or pass 'isDisabled' as well.\n `,\n })\n}\n\nfunction warnIfOpenAndDisabled(props: {\n isOpen: boolean\n isDisabled?: boolean\n}) {\n warn({\n condition: props.isOpen && !!props.isDisabled,\n message: \"Cannot open a disabled accordion item\",\n })\n}\n","import { useMemo, useState } from \"react\"\nimport { useCallbackRef } from \"@chakra-ui/react-use-callback-ref\"\n\n/**\n * Given a prop value and state value, the useControllableProp hook is used to determine whether a component is controlled or uncontrolled, and also returns the computed value.\n *\n * @see Docs https://chakra-ui.com/docs/hooks/use-controllable#usecontrollableprop\n */\nexport function useControllableProp(prop: T | undefined, state: T) {\n const controlled = typeof prop !== \"undefined\"\n const value = controlled ? prop : state\n return useMemo<[boolean, T]>(() => [controlled, value], [controlled, value])\n}\n\nexport interface UseControllableStateProps {\n value?: T\n defaultValue?: T | (() => T)\n onChange?: (value: T) => void\n shouldUpdate?: (prev: T, next: T) => boolean\n}\n\n/**\n * The `useControllableState` hook returns the state and function that updates the state, just like React.useState does.\n *\n * @see Docs https://chakra-ui.com/docs/hooks/use-controllable#usecontrollablestate\n */\nexport function useControllableState(props: UseControllableStateProps) {\n const {\n value: valueProp,\n defaultValue,\n onChange,\n shouldUpdate = (prev, next) => prev !== next,\n } = props\n\n const onChangeProp = useCallbackRef(onChange)\n const shouldUpdateProp = useCallbackRef(shouldUpdate)\n\n const [uncontrolledState, setUncontrolledState] = useState(defaultValue as T)\n const controlled = valueProp !== undefined\n const value = controlled ? valueProp : uncontrolledState\n\n const setValue = useCallbackRef(\n (next: React.SetStateAction) => {\n const setter = next as (prevState?: T) => T\n const nextValue = typeof next === \"function\" ? setter(value) : next\n\n if (!shouldUpdateProp(value, nextValue)) {\n return\n }\n\n if (!controlled) {\n setUncontrolledState(nextValue)\n }\n\n onChangeProp(nextValue)\n },\n [controlled, onChangeProp, value, shouldUpdateProp],\n )\n\n return [value, setValue] as [T, React.Dispatch>]\n}\n","import {\n chakra,\n forwardRef,\n HTMLChakraProps,\n omitThemingProps,\n ThemingProps,\n useMultiStyleConfig,\n} from \"@chakra-ui/system\"\nimport { cx } from \"@chakra-ui/shared-utils\"\nimport { useMemo } from \"react\"\nimport {\n AccordionDescendantsProvider,\n AccordionStylesProvider,\n} from \"./accordion-context\"\nimport {\n AccordionProvider,\n useAccordion,\n UseAccordionProps,\n} from \"./use-accordion\"\n\nexport interface AccordionProps\n extends UseAccordionProps,\n Omit, keyof UseAccordionProps>,\n ThemingProps<\"Accordion\"> {\n /**\n * If `true`, height animation and transitions will be disabled.\n *\n * @default false\n */\n reduceMotion?: boolean\n}\n\n/**\n * The wrapper that provides context and focus management\n * for all accordion items.\n *\n * It wraps all accordion items in a `div` for better grouping.\n * @see Docs https://chakra-ui.com/accordion\n * @see WAI-ARIA https://www.w3.org/WAI/ARIA/apg/patterns/accordion/\n */\nexport const Accordion = forwardRef(function Accordion(\n { children, reduceMotion, ...props },\n ref,\n) {\n const styles = useMultiStyleConfig(\"Accordion\", props)\n const ownProps = omitThemingProps(props)\n\n const { htmlProps, descendants, ...context } = useAccordion(ownProps)\n\n const ctx = useMemo(\n () => ({ ...context, reduceMotion: !!reduceMotion }),\n [context, reduceMotion],\n )\n\n return (\n \n \n \n \n {children}\n \n \n \n \n )\n})\n\nAccordion.displayName = \"Accordion\"\n","import {\n chakra,\n forwardRef,\n HTMLChakraProps,\n SystemStyleObject,\n} from \"@chakra-ui/system\"\nimport { cx } from \"@chakra-ui/shared-utils\"\nimport { useMemo } from \"react\"\nimport { AccordionItemProvider, useAccordionStyles } from \"./accordion-context\"\nimport { useAccordionItem, UseAccordionItemProps } from \"./use-accordion\"\n\nexport interface AccordionItemProps\n extends Omit<\n HTMLChakraProps<\"div\">,\n keyof UseAccordionItemProps | \"children\"\n >,\n UseAccordionItemProps {\n children?:\n | React.ReactNode\n | ((props: { isExpanded: boolean; isDisabled: boolean }) => React.ReactNode)\n}\n/**\n * AccordionItem is a single accordion that provides the open-close\n * behavior when the accordion button is clicked.\n *\n * It also provides context for the accordion button and panel.\n */\n\nexport const AccordionItem = forwardRef(\n function AccordionItem(props, ref) {\n const { children, className } = props\n const { htmlProps, ...context } = useAccordionItem(props)\n\n const styles = useAccordionStyles()\n const containerStyles: SystemStyleObject = {\n ...styles.container,\n overflowAnchor: \"none\",\n }\n\n const ctx = useMemo(() => context, [context])\n\n return (\n \n \n {typeof children === \"function\"\n ? children({\n isExpanded: !!context.isOpen,\n isDisabled: !!context.isDisabled,\n })\n : children}\n \n \n )\n },\n)\n\nAccordionItem.displayName = \"AccordionItem\"\n","import {\n chakra,\n forwardRef,\n HTMLChakraProps,\n SystemStyleObject,\n} from \"@chakra-ui/system\"\nimport { cx } from \"@chakra-ui/shared-utils\"\nimport {\n useAccordionItemContext,\n useAccordionStyles,\n} from \"./accordion-context\"\n\nexport interface AccordionButtonProps extends HTMLChakraProps<\"button\"> {}\n\n/**\n * AccordionButton is used expands and collapses an accordion item.\n * It must be a child of `AccordionItem`.\n *\n * Note 🚨: Each accordion button must be wrapped in a heading tag,\n * that is appropriate for the information architecture of the page.\n */\n\nexport const AccordionButton = forwardRef(\n function AccordionButton(props, ref) {\n const { getButtonProps } = useAccordionItemContext()\n const buttonProps = getButtonProps(props, ref)\n\n const styles = useAccordionStyles()\n const buttonStyles: SystemStyleObject = {\n display: \"flex\",\n alignItems: \"center\",\n width: \"100%\",\n outline: 0,\n ...styles.button,\n }\n\n return (\n \n )\n },\n)\n\nAccordionButton.displayName = \"AccordionButton\"\n","import { Icon } from \"@chakra-ui/icon\"\nimport { PropsOf, SystemStyleObject } from \"@chakra-ui/system\"\nimport { cx } from \"@chakra-ui/shared-utils\"\nimport {\n useAccordionItemContext,\n useAccordionStyles,\n} from \"./accordion-context\"\nimport { useAccordionContext } from \"./use-accordion\"\n\nexport type AccordionIconProps = PropsOf\n\n/**\n * AccordionIcon that gives a visual cue of the open/close state of the accordion item.\n * It rotates `180deg` based on the open/close state.\n */\n\nexport function AccordionIcon(props: AccordionIconProps) {\n const { isOpen, isDisabled } = useAccordionItemContext()\n const { reduceMotion } = useAccordionContext()\n\n const _className = cx(\"chakra-accordion__icon\", props.className)\n const styles = useAccordionStyles()\n\n const iconStyles: SystemStyleObject = {\n opacity: isDisabled ? 0.4 : 1,\n transform: isOpen ? \"rotate(-180deg)\" : undefined,\n transition: reduceMotion ? undefined : \"transform 0.2s\",\n transformOrigin: \"center\",\n ...styles.icon,\n }\n\n return (\n \n \n \n )\n}\n\nAccordionIcon.displayName = \"AccordionIcon\"\n","import type { Target, TargetAndTransition, Transition } from \"framer-motion\"\n\nexport type TransitionProperties = {\n /**\n * Custom `transition` definition for `enter` and `exit`\n */\n transition?: TransitionConfig\n /**\n * Custom `transitionEnd` definition for `enter` and `exit`\n */\n transitionEnd?: TransitionEndConfig\n /**\n * Custom `delay` definition for `enter` and `exit`\n */\n delay?: number | DelayConfig\n}\n\ntype TargetResolver = (\n props: P & TransitionProperties,\n) => TargetAndTransition\n\ntype Variant
= TargetAndTransition | TargetResolver
\n\nexport type Variants
= {\n enter: Variant
\n exit: Variant
\n initial?: Variant
\n}\n\ntype WithMotionState
= Partial>\n\nexport type TransitionConfig = WithMotionState\n\nexport type TransitionEndConfig = WithMotionState\n\nexport type DelayConfig = WithMotionState\n\nexport const TRANSITION_EASINGS = {\n ease: [0.25, 0.1, 0.25, 1],\n easeIn: [0.4, 0, 1, 1],\n easeOut: [0, 0, 0.2, 1],\n easeInOut: [0.4, 0, 0.2, 1],\n} as const\n\nexport const TRANSITION_VARIANTS = {\n scale: {\n enter: { scale: 1 },\n exit: { scale: 0.95 },\n },\n fade: {\n enter: { opacity: 1 },\n exit: { opacity: 0 },\n },\n pushLeft: {\n enter: { x: \"100%\" },\n exit: { x: \"-30%\" },\n },\n pushRight: {\n enter: { x: \"-100%\" },\n exit: { x: \"30%\" },\n },\n pushUp: {\n enter: { y: \"100%\" },\n exit: { y: \"-30%\" },\n },\n pushDown: {\n enter: { y: \"-100%\" },\n exit: { y: \"30%\" },\n },\n slideLeft: {\n position: { left: 0, top: 0, bottom: 0, width: \"100%\" },\n enter: { x: 0, y: 0 },\n exit: { x: \"-100%\", y: 0 },\n },\n slideRight: {\n position: { right: 0, top: 0, bottom: 0, width: \"100%\" },\n enter: { x: 0, y: 0 },\n exit: { x: \"100%\", y: 0 },\n },\n slideUp: {\n position: { top: 0, left: 0, right: 0, maxWidth: \"100vw\" },\n enter: { x: 0, y: 0 },\n exit: { x: 0, y: \"-100%\" },\n },\n slideDown: {\n position: { bottom: 0, left: 0, right: 0, maxWidth: \"100vw\" },\n enter: { x: 0, y: 0 },\n exit: { x: 0, y: \"100%\" },\n },\n}\n\nexport type SlideDirection = \"top\" | \"left\" | \"bottom\" | \"right\"\n\nexport function getSlideTransition(options?: { direction?: SlideDirection }) {\n const side = options?.direction ?? \"right\"\n switch (side) {\n case \"right\":\n return TRANSITION_VARIANTS.slideRight\n case \"left\":\n return TRANSITION_VARIANTS.slideLeft\n case \"bottom\":\n return TRANSITION_VARIANTS.slideDown\n case \"top\":\n return TRANSITION_VARIANTS.slideUp\n default:\n return TRANSITION_VARIANTS.slideRight\n }\n}\n\nexport const TRANSITION_DEFAULTS = {\n enter: {\n duration: 0.2,\n ease: TRANSITION_EASINGS.easeOut,\n },\n exit: {\n duration: 0.1,\n ease: TRANSITION_EASINGS.easeIn,\n },\n} as const\n\nexport type WithTransitionConfig = Omit
&\n TransitionProperties & {\n /**\n * If `true`, the element will unmount when `in={false}` and animation is done\n */\n unmountOnExit?: boolean\n /**\n * Show the component; triggers when enter or exit states\n */\n in?: boolean\n }\n\nexport const withDelay = {\n enter: (\n transition: Transition,\n delay?: number | DelayConfig,\n ): Transition & { delay: number | undefined } => ({\n ...transition,\n delay: typeof delay === \"number\" ? delay : delay?.[\"enter\"],\n }),\n exit: (\n transition: Transition,\n delay?: number | DelayConfig,\n ): Transition & { delay: number | undefined } => ({\n ...transition,\n delay: typeof delay === \"number\" ? delay : delay?.[\"exit\"],\n }),\n}\n","import { cx, warn } from \"@chakra-ui/shared-utils\"\nimport {\n AnimatePresence,\n HTMLMotionProps,\n motion,\n Variants as _Variants,\n} from \"framer-motion\"\nimport { forwardRef, useEffect, useState } from \"react\"\nimport {\n TRANSITION_EASINGS,\n Variants,\n withDelay,\n WithTransitionConfig,\n} from \"./transition-utils\"\n\nconst isNumeric = (value?: string | number) =>\n value != null && parseInt(value.toString(), 10) > 0\n\nexport interface CollapseOptions {\n /**\n * If `true`, the opacity of the content will be animated\n * @default true\n */\n animateOpacity?: boolean\n /**\n * The height you want the content in its collapsed state.\n * @default 0\n */\n startingHeight?: number | string\n /**\n * The height you want the content in its expanded state.\n * @default \"auto\"\n */\n endingHeight?: number | string\n}\n\nconst defaultTransitions = {\n exit: {\n height: { duration: 0.2, ease: TRANSITION_EASINGS.ease },\n opacity: { duration: 0.3, ease: TRANSITION_EASINGS.ease },\n },\n enter: {\n height: { duration: 0.3, ease: TRANSITION_EASINGS.ease },\n opacity: { duration: 0.4, ease: TRANSITION_EASINGS.ease },\n },\n}\n\nconst variants: Variants = {\n exit: ({\n animateOpacity,\n startingHeight,\n transition,\n transitionEnd,\n delay,\n }) => ({\n ...(animateOpacity && { opacity: isNumeric(startingHeight) ? 1 : 0 }),\n height: startingHeight,\n transitionEnd: transitionEnd?.exit,\n transition:\n transition?.exit ?? withDelay.exit(defaultTransitions.exit, delay),\n }),\n enter: ({\n animateOpacity,\n endingHeight,\n transition,\n transitionEnd,\n delay,\n }) => ({\n ...(animateOpacity && { opacity: 1 }),\n height: endingHeight,\n transitionEnd: transitionEnd?.enter,\n transition:\n transition?.enter ?? withDelay.enter(defaultTransitions.enter, delay),\n }),\n}\n\nexport type ICollapse = CollapseProps\n\nexport interface CollapseProps\n extends WithTransitionConfig>,\n CollapseOptions {}\n\nexport const Collapse = forwardRef(\n (props, ref) => {\n const {\n in: isOpen,\n unmountOnExit,\n animateOpacity = true,\n startingHeight = 0,\n endingHeight = \"auto\",\n style,\n className,\n transition,\n transitionEnd,\n ...rest\n } = props\n\n const [mounted, setMounted] = useState(false)\n useEffect(() => {\n const timeout = setTimeout(() => {\n setMounted(true)\n })\n return () => clearTimeout(timeout)\n }, [])\n\n /**\n * Warn 🚨: `startingHeight` and `unmountOnExit` are mutually exclusive\n *\n * If you specify a starting height, the collapsed needs to be mounted\n * for the height to take effect.\n */\n warn({\n condition: Number(startingHeight) > 0 && !!unmountOnExit,\n message: `startingHeight and unmountOnExit are mutually exclusive. You can't use them together`,\n })\n\n const hasStartingHeight = parseFloat(startingHeight.toString()) > 0\n\n const custom = {\n startingHeight,\n endingHeight,\n animateOpacity,\n transition: !mounted ? { enter: { duration: 0 } } : transition,\n transitionEnd: {\n enter: transitionEnd?.enter,\n exit: unmountOnExit\n ? transitionEnd?.exit\n : {\n ...transitionEnd?.exit,\n display: hasStartingHeight ? \"block\" : \"none\",\n },\n },\n }\n\n const show = unmountOnExit ? isOpen : true\n const animate = isOpen || unmountOnExit ? \"enter\" : \"exit\"\n\n return (\n \n {show && (\n \n )}\n \n )\n },\n)\n\nCollapse.displayName = \"Collapse\"\n","import { chakra, forwardRef, HTMLChakraProps } from \"@chakra-ui/system\"\nimport { Collapse, CollapseProps } from \"@chakra-ui/transition\"\nimport { cx } from \"@chakra-ui/shared-utils\"\nimport {\n useAccordionItemContext,\n useAccordionStyles,\n} from \"./accordion-context\"\nimport { useAccordionContext } from \"./use-accordion\"\n\nexport interface AccordionPanelProps extends HTMLChakraProps<\"div\"> {\n /**\n * The properties passed to the underlying `Collapse` component.\n */\n motionProps?: CollapseProps\n}\n\n/**\n * Accordion panel that holds the content for each accordion.\n * It shows and hides based on the state login from the `AccordionItem`.\n *\n * It uses the `Collapse` component to animate its height.\n */\nexport const AccordionPanel = forwardRef(\n function AccordionPanel(props, ref) {\n const { className, motionProps, ...rest } = props\n\n const { reduceMotion } = useAccordionContext()\n const { getPanelProps, isOpen } = useAccordionItemContext()\n\n // remove `hidden` prop, 'coz we're using height animation\n const panelProps = getPanelProps(rest, ref)\n\n const _className = cx(\"chakra-accordion__panel\", className)\n const styles = useAccordionStyles()\n\n if (!reduceMotion) {\n delete panelProps.hidden\n }\n\n const child = (\n \n )\n\n if (!reduceMotion) {\n return (\n \n {child}\n \n )\n }\n\n return child\n },\n)\n\nAccordionPanel.displayName = \"AccordionPanel\"\n","import React from \"react\";\r\nimport {\r\n AccordionButton,\r\n AccordionIcon,\r\n AccordionItem,\r\n AccordionPanel,\r\n Box,\r\n HStack,\r\n Heading,\r\n Image,\r\n Link,\r\n Text,\r\n VStack,\r\n} from \"@chakra-ui/react\";\r\nimport { ThemeInterface } from \"../theme/theme\";\r\n// import { Fade } from 'react-reveal';\r\n\r\ninterface experiencInterface {\r\n color: string;\r\n company: string;\r\n company_url: string;\r\n description: string;\r\n duration: string;\r\n location: string;\r\n logo_path: string;\r\n title: string;\r\n}\r\ninterface ExperienceCardInterface {\r\n experience: experiencInterface;\r\n theme: ThemeInterface;\r\n index: number;\r\n totalCards: number;\r\n}\r\n\r\nconst ExperienceCard: React.FC = ({\r\n experience,\r\n theme,\r\n index,\r\n totalCards,\r\n}) => {\r\n console.log(\"experience1234567\", experience);\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {experience.title}\r\n \r\n \r\n {experience.company}\r\n \r\n \r\n \r\n \r\n {\" \"}\r\n {experience.duration}{\" \"}\r\n \r\n \r\n {\" \"}\r\n {experience.location}{\" \"}\r\n \r\n \r\n \r\n\r\n\r\n \r\n {experience.description}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default ExperienceCard;\r\n","import React from \"react\";\r\nimport { ThemeInterface } from \"../theme/theme\";\r\nimport {\r\n Accordion,\r\n AccordionButton,\r\n AccordionIcon,\r\n AccordionItem,\r\n AccordionPanel,\r\n Box,\r\n Stack,\r\n} from \"@chakra-ui/react\";\r\nimport ExperienceCard from \"../ExperienceCard/ExperienceCard\";\r\n\r\ninterface experiencInterface {\r\n color: string;\r\n company: string;\r\n company_url: string;\r\n description: string;\r\n duration: string;\r\n location: string;\r\n logo_path: string;\r\n title: string;\r\n}\r\ninterface SectionsInterface {\r\n experiences: experiencInterface[];\r\n title: string;\r\n}\r\ninterface experienceInterface {\r\n description: string;\r\n header_image_path: string;\r\n sections: SectionsInterface[];\r\n subtitle: string;\r\n title: string;\r\n}\r\ninterface ExperienceAccordionProps {\r\n experience: experienceInterface;\r\n theme: ThemeInterface;\r\n}\r\n\r\nconst ExperienceAccordion: React.FC = ({\r\n experience,\r\n theme,\r\n}) => {\r\n console.log(\"experience\", experience.sections[0]);\r\n return (\r\n \r\n \r\n {experience.sections.map((section, index) => {\r\n return (\r\n \r\n {({ isExpanded }) => (\r\n <>\r\n \r\n \r\n \r\n {section.title}\r\n \r\n \r\n \r\n
\r\n \r\n {section.experiences.map((experience, index) => {\r\n return (\r\n \r\n );\r\n })}\r\n \r\n >\r\n )}\r\n \r\n );\r\n })}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default ExperienceAccordion;\r\n","import React from \"react\";\r\nimport ExperienceImg from \"../../components/ExperienceImg/ExperienceImg\";\r\nimport { experience } from \"../../portfolio\";\r\nimport { appTheme } from \"../../components/theme/theme\";\r\nimport { Box, HStack, Heading, Text, VStack } from \"@chakra-ui/react\";\r\nimport ExperienceAccordion from \"../../components/ExperienceAccordion/ExperienceAccordion\";\r\nimport { keyframes } from \"@emotion/react\";\r\nimport Reveal from \"react-awesome-reveal\";\r\n\r\nconst Upwards = keyframes`\r\nfrom {\r\n opacity: 0;\r\n transform: translateY(50px);\r\n}\r\n\r\nto {\r\n opacity: 1;\r\n transform: translateY(0px);\r\n}\r\n`\r\n\r\nconst Experience: React.FC<{}> = () => {\r\n const theme = appTheme;\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {experience.title}\r\n \r\n {experience.subtitle}\r\n \r\n \r\n {experience.description}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default Experience;\r\n","// src/responsive.ts\nimport { isObject } from \"@chakra-ui/shared-utils\";\nvar breakpoints = Object.freeze([\n \"base\",\n \"sm\",\n \"md\",\n \"lg\",\n \"xl\",\n \"2xl\"\n]);\nfunction mapResponsive(prop, mapper) {\n if (Array.isArray(prop)) {\n return prop.map((item) => item === null ? null : mapper(item));\n }\n if (isObject(prop)) {\n return Object.keys(prop).reduce((result, key) => {\n result[key] = mapper(prop[key]);\n return result;\n }, {});\n }\n if (prop != null) {\n return mapper(prop);\n }\n return null;\n}\nfunction objectToArrayNotation(obj, bps = breakpoints) {\n const result = bps.map((br) => {\n var _a;\n return (_a = obj[br]) != null ? _a : null;\n });\n const lastItem = result[result.length - 1];\n while (lastItem === null)\n result.pop();\n return result;\n}\nfunction arrayToObjectNotation(values, bps = breakpoints) {\n const result = {};\n values.forEach((value, index) => {\n const key = bps[index];\n if (value == null)\n return;\n result[key] = value;\n });\n return result;\n}\nfunction isResponsiveObjectLike(obj, bps = breakpoints) {\n const keys = Object.keys(obj);\n return keys.length > 0 && keys.every((key) => bps.includes(key));\n}\nvar isCustomBreakpoint = (v) => Number.isNaN(Number(v));\n\nexport {\n breakpoints,\n mapResponsive,\n objectToArrayNotation,\n arrayToObjectNotation,\n isResponsiveObjectLike,\n isCustomBreakpoint\n};\n","import { forwardRef } from \"@chakra-ui/system\"\n\nimport { Stack, StackProps } from \"./stack\"\n\n/**\n * A view that arranges its children in a horizontal line.\n *\n * @see Docs https://chakra-ui.com/docs/components/stack\n */\nexport const HStack = forwardRef((props, ref) => (\n \n))\n\nHStack.displayName = \"HStack\"\n","import {\n chakra,\n forwardRef,\n omitThemingProps,\n ThemingProps,\n useStyleConfig,\n HTMLChakraProps,\n} from \"@chakra-ui/system\"\nimport { cx } from \"@chakra-ui/shared-utils\"\n\nexport interface HeadingProps\n extends HTMLChakraProps<\"h2\">,\n ThemingProps<\"Heading\"> {}\n\n/**\n * `Heading` is used to render semantic HTML heading elements.\n *\n * By default, renders as `h2` with themantic size `xl`\n *\n * @see Docs https://chakra-ui.com/docs/components/heading\n */\nexport const Heading = forwardRef(function Heading(\n props,\n ref,\n) {\n const styles = useStyleConfig(\"Heading\", props)\n const { className, ...rest } = omitThemingProps(props)\n\n return (\n \n )\n})\n\nHeading.displayName = \"Heading\"\n","import { forwardRef } from \"@chakra-ui/system\"\n\nimport { Stack, StackProps } from \"./stack\"\n\n/**\n * A view that arranges its children in a vertical line.\n *\n * @see Docs https://chakra-ui.com/docs/components/stack\n */\nexport const VStack = forwardRef((props, ref) => (\n \n))\n\nVStack.displayName = \"VStack\"\n","import { ChakraComponent, chakra } from \"@chakra-ui/system\"\n\nexport const StackItem: ChakraComponent<\"div\"> = (props) => (\n \n)\n\nStackItem.displayName = \"StackItem\"\n","import { getValidChildren } from \"@chakra-ui/react-children-utils\"\nimport { cx } from \"@chakra-ui/shared-utils\"\nimport {\n chakra,\n forwardRef,\n HTMLChakraProps,\n SystemProps,\n} from \"@chakra-ui/system\"\nimport { cloneElement, Fragment, useMemo } from \"react\"\n\nimport { StackItem } from \"./stack-item\"\nimport type { StackDirection } from \"./stack.utils\"\nimport { getDividerStyles } from \"./stack.utils\"\n\nexport type { StackDirection }\n\ninterface StackOptions {\n /**\n * Shorthand for `alignItems` style prop\n * @type SystemProps[\"alignItems\"]\n */\n align?: SystemProps[\"alignItems\"]\n /**\n * Shorthand for `justifyContent` style prop\n * @type SystemProps[\"justifyContent\"]\n */\n justify?: SystemProps[\"justifyContent\"]\n /**\n * Shorthand for `flexWrap` style prop\n * @type SystemProps[\"flexWrap\"]\n */\n wrap?: SystemProps[\"flexWrap\"]\n /**\n * The space between each stack item\n * @type SystemProps[\"margin\"]\n * @default \"0.5rem\"\n */\n spacing?: SystemProps[\"margin\"]\n /**\n * The direction to stack the items.\n * @default \"column\"\n */\n direction?: StackDirection\n /**\n * If `true`, each stack item will show a divider\n * @type React.ReactElement\n */\n divider?: React.ReactElement\n /**\n * If `true`, the children will be wrapped in a `Box` with\n * `display: inline-block`, and the `Box` will take the spacing props\n *\n * @default false\n */\n shouldWrapChildren?: boolean\n /**\n * If `true` the items will be stacked horizontally.\n *\n * @default false\n *\n * @deprecated - Use `direction=\"row\"` or `HStack` instead\n */\n isInline?: boolean\n}\n\nexport interface StackProps extends HTMLChakraProps<\"div\">, StackOptions {}\n\n/**\n * Stacks help you easily create flexible and automatically distributed layouts\n *\n * You can stack elements in the horizontal or vertical direction,\n * and apply a space or/and divider between each element.\n *\n * It uses `display: flex` internally and renders a `div`.\n *\n * @see Docs https://chakra-ui.com/stack\n *\n */\nexport const Stack = forwardRef((props, ref) => {\n const {\n isInline,\n direction: directionProp,\n align,\n justify,\n spacing = \"0.5rem\",\n wrap,\n children,\n divider,\n className,\n shouldWrapChildren,\n ...rest\n } = props\n\n const direction = isInline ? \"row\" : directionProp ?? \"column\"\n\n const dividerStyle = useMemo(\n () => getDividerStyles({ spacing, direction }),\n [spacing, direction],\n )\n\n const hasDivider = !!divider\n const shouldUseChildren = !shouldWrapChildren && !hasDivider\n\n const clones = useMemo(() => {\n const validChildren = getValidChildren(children)\n return shouldUseChildren\n ? validChildren\n : validChildren.map((child, index) => {\n // Prefer provided child key, fallback to index\n const key = typeof child.key !== \"undefined\" ? child.key : index\n const isLast = index + 1 === validChildren.length\n const wrappedChild = {child}\n const _child = shouldWrapChildren ? wrappedChild : child\n\n if (!hasDivider) return _child\n\n const clonedDivider = cloneElement(\n divider as React.ReactElement,\n {\n __css: dividerStyle,\n },\n )\n\n const _divider = isLast ? null : clonedDivider\n\n return (\n \n {_child}\n {_divider}\n \n )\n })\n }, [\n divider,\n dividerStyle,\n hasDivider,\n shouldUseChildren,\n shouldWrapChildren,\n children,\n ])\n\n const _className = cx(\"chakra-stack\", className)\n\n return (\n \n {clones}\n \n )\n})\n\nStack.displayName = \"Stack\"\n","import { ResponsiveValue, SystemProps } from \"@chakra-ui/system\"\nimport { mapResponsive } from \"@chakra-ui/breakpoint-utils\"\n\nexport type StackDirection = ResponsiveValue<\n \"row\" | \"column\" | \"row-reverse\" | \"column-reverse\"\n>\n\ninterface Options {\n spacing: SystemProps[\"margin\"]\n direction: StackDirection\n}\n\nexport function getDividerStyles(options: Options) {\n const { spacing, direction } = options\n\n const dividerStyles = {\n column: {\n my: spacing,\n mx: 0,\n borderLeftWidth: 0,\n borderBottomWidth: \"1px\",\n },\n \"column-reverse\": {\n my: spacing,\n mx: 0,\n borderLeftWidth: 0,\n borderBottomWidth: \"1px\",\n },\n row: {\n mx: spacing,\n my: 0,\n borderLeftWidth: \"1px\",\n borderBottomWidth: 0,\n },\n \"row-reverse\": {\n mx: spacing,\n my: 0,\n borderLeftWidth: \"1px\",\n borderBottomWidth: 0,\n },\n }\n\n return {\n \"&\": mapResponsive(\n direction,\n (value: keyof typeof dividerStyles) => dividerStyles[value],\n ),\n }\n}\n","// src/index.ts\nimport { Children, isValidElement } from \"react\";\nfunction getValidChildren(children) {\n return Children.toArray(children).filter(\n (child) => isValidElement(child)\n );\n}\nexport {\n getValidChildren\n};\n","import { useMemo } from \"react\"\n\nexport type ReactRef = React.RefCallback | React.MutableRefObject\n\nexport function assignRef(\n ref: ReactRef | null | undefined,\n value: T,\n) {\n if (ref == null) return\n\n if (typeof ref === \"function\") {\n ref(value)\n return\n }\n\n try {\n ref.current = value\n } catch (error) {\n throw new Error(`Cannot assign value '${value}' to ref '${ref}'`)\n }\n}\n\nexport function mergeRefs(...refs: (ReactRef | null | undefined)[]) {\n return (node: T | null) => {\n refs.forEach((ref) => {\n assignRef(ref, node)\n })\n }\n}\n\nexport function useMergeRefs(...refs: (ReactRef | null | undefined)[]) {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return useMemo(() => mergeRefs(...refs), refs)\n}\n"],"names":["ExperienceImg","_jsx","Image","src","sortNodes","nodes","sort","a","b","compare","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","DOCUMENT_POSITION_CONTAINED_BY","DOCUMENT_POSITION_PRECEDING","DOCUMENT_POSITION_CONTAINS","DOCUMENT_POSITION_DISCONNECTED","DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC","Error","getNextIndex","current","max","loop","next","getPrevIndex","useSafeLayoutEffect","window","useLayoutEffect","useEffect","cast","value","DescendantsManager","constructor","__publicField","Map","nodeOrOptions","el","nodeType","ELEMENT_NODE","this","registerNode","node","descendants","delete","sorted","Array","from","keys","assignIndex","clear","forEach","descendant","index","indexOf","dataset","toString","size","enabledValues","length","values","filter","disabled","count","enabledCount","item","enabledItem","lastIndex","_a","_b","get","findIndex","i","isSameNode","nextEnabledIndex","enabledIndexOf","prev","prevEnabledIndex","options","has","concat","set","DescendantsContextProvider","useDescendantsContext","createContext","name","errorMessage","AccordionStylesProvider","useAccordionStyles","hookName","providerName","AccordionItemProvider","useAccordionItemContext","AccordionDescendantsProvider","useAccordionDescendantsContext","useAccordionDescendants","useAccordionDescendant","_useDescendantsContext","_useDescendants","useRef","destroy","useDescendants","setIndex","useState","ref","unregister","dataIndex","Number","isNaN","refCallback","register","enabledIndex","mergeRefs","useDescendant","useAccordion","props","onChange","defaultIndex","indexProp","allowMultiple","allowToggle","htmlProps","condition","isArray","warn","message","allowMultipleWarning","allowMultipleAndAllowToggleWarning","focusedIndex","setFocusedIndex","valueProp","defaultValue","shouldUpdate","onChangeProp","useCallbackRef","shouldUpdateProp","uncontrolledState","setUncontrolledState","controlled","setValue","nextValue","useControllableState","getAccordionItemProps","idx","isOpen","includes","isOpen2","nextState","AccordionProvider","useAccordionContext","useAccordionItem","isDisabled","isFocusable","id","buttonRef","reactId","useId","uid","buttonId","panelId","focusableNotDisabledWarning","warnIfOpenAndDisabled","onClick","useCallback","onKeyDown","event","action","ArrowDown","nextEnabled","focus","ArrowUp","prevEnabled","Home","first","firstEnabled","End","last","lastEnabled","key","preventDefault","onFocus","getButtonProps","props2","type","callAllHandlers","getPanelProps","role","hidden","onOpen","onClose","Accordion","forwardRef","children","reduceMotion","styles","useMultiStyleConfig","ownProps","omitThemingProps","context","ctx","useMemo","jsx","chakra","div","className","cx","__css","root","displayName","AccordionItem","containerStyles","container","overflowAnchor","isExpanded","AccordionButton","buttonProps","buttonStyles","display","alignItems","width","outline","button","AccordionIcon","_className","iconStyles","opacity","transform","transition","transformOrigin","icon","Icon","viewBox","fill","d","TRANSITION_EASINGS","ease","easeIn","easeOut","easeInOut","withDelay","enter","delay","exit","defaultTransitions","height","duration","variants","animateOpacity","startingHeight","transitionEnd","parseInt","endingHeight","Collapse","in","unmountOnExit","style","rest","mounted","setMounted","timeout","setTimeout","clearTimeout","hasStartingHeight","parseFloat","custom","show","animate","AnimatePresence","initial","motion","overflow","AccordionPanel","motionProps","panelProps","child","panel","ExperienceCard","experience","theme","totalCards","console","log","_jsxs","HStack","padding","flexDir","base","sm","justifyContent","border","color","borderRadius","Box","marginBottom","logo_path","VStack","textAlign","flexDirection","Heading","sx","fontWeight","fontSize","lineHeight","title","Text","company","location","marginTop","description","ExperienceAccordion","sections","Stack","margin","w","map","section","_Fragment","_hover","secondaryText","borderColor","headerColor","flex","backgroundColor","body","fontFamily","text","gap","experiences","Upwards","keyframes","Experience","appTheme","md","lg","xl","Reveal","mt","subtitle","Object","freeze","mapResponsive","prop","mapper","isObject","reduce","result","align","direction","useStyleConfig","h2","StackItem","minWidth","isInline","directionProp","justify","spacing","wrap","divider","shouldWrapChildren","dividerStyle","dividerStyles","column","my","mx","borderLeftWidth","borderBottomWidth","row","getDividerStyles","hasDivider","shouldUseChildren","clones","validChildren","Children","toArray","isValidElement","getValidChildren","isLast","_child","clonedDivider","cloneElement","_divider","jsxs","Fragment","flexWrap","refs","error","assignRef","useMergeRefs"],"sourceRoot":""}
\ No newline at end of file
diff --git a/static/js/698.3068c0a3.chunk.js b/static/js/698.3068c0a3.chunk.js
new file mode 100644
index 0000000..f2a9b85
--- /dev/null
+++ b/static/js/698.3068c0a3.chunk.js
@@ -0,0 +1,32 @@
+"use strict";(globalThis.webpackChunkdeepumandal=globalThis.webpackChunkdeepumandal||[]).push([[698],{8698:(e,s,t)=>{t.r(s),t.d(s,{default:()=>W});var a=t(824),n=t(2814),i=t(8292),r=t(7596),l=t(8209),x=t(9055),m=t(1917),o=t(9589),p=t(56),c=(t(2791),t(9457)),h=t(884),d=t(184);const f=({title:e,nickname:s,subTitle:t,resumeLink:a,portfolio_repository:n,githubProfile:i})=>(0,d.jsxs)(m.g,{height:"fit-content",textAlign:{sm:"left",md:"left"},children:[(0,d.jsxs)(h.x,{fontSize:{base:"30px",sm:"50px"},lineHeight:{base:"33px",sm:"55px"},w:{base:"70%",sm:"80%"},m:"auto",mt:{base:"50px"},sx:{fontFamily:"'Open Sans', sans-serif",fontWeight:700,color:"thistheme.text"},children:[" ",e]}),(0,d.jsxs)(h.x,{pt:{base:"0px",sm:"15px"},w:{base:"fit-content",sm:"80%"},m:"auto",sx:{fontFamily:"'Open Sans', sans-serif",fontWeight:400,fontSize:"24px",color:"thistheme.text",lineHeight:"20px"},children:[" ",(0,d.jsxs)("i",{children:["( ",s," )"]})]}),(0,d.jsxs)(h.x,{w:{base:"fit-content",sm:"80%"},m:"auto",pt:{sm:"20px",base:"0px"},fontSize:{sm:"20px",base:"16px"},lineHeight:{sm:"35px",base:"26px"},sx:{fontFamily:"'Open Sans', sans-serif",fontWeight:500,color:"thistheme.describe",width:"80%"},children:[" ",t]})]}),g=()=>(0,d.jsx)("div",{style:{width:"100%",height:"100%",display:"flex",alignItems:"end",padding:"auto"},children:(0,d.jsx)(f,{...c.Qw})});var u=t(3803),b=t(1560),j=t(6582);const y=({imgurl:e,skillName:s,fontAwesomeClassname:t,style:a})=>(0,d.jsx)("div",{children:(0,d.jsx)(r.u,{label:s,children:(0,d.jsx)(b.E,{width:{base:"35px",sm:"60px"},margin:"5px",sx:{cursor:"pointer"},src:`./imgurl/${e}`})})}),w=({Skills:e})=>(0,d.jsx)(h.x,{textAlign:"left",w:{base:"90%",sm:"100%"},fontSize:{base:"13px",sm:"20px"},sx:{fontFamily:"Open Sans",color:"thistheme.describe",fontWeight:400},children:e});var k=t(8045),S=t(2554);const v=S.F4`
+from {
+ opacity: 0;
+ transform: translateX(-200px);
+}
+
+to {
+ opacity: 1;
+ transform: translateX(0px);
+}
+`,C=S.F4`
+from {
+ opacity: 0;
+ transform: translateX(200px);
+}
+
+to {
+ opacity: 1;
+ transform: translateX(0px);
+}
+`,P=({even:e,img:s,title:t,fileName:a,skills:l,softwareSkills:x})=>(0,d.jsxs)(n.r,{w:{base:"100%",sm:"90%",md:"800px",lg:"1000px",xl:"1100px","2xl":"1400px"},gridTemplateColumns:{base:"repeat(1,1fr)",sm:"repeat(2,1fr)"},gridTemplateRows:{base:"repeat(2,1fr)",sm:"repeat(2,1fr)"},gridTemplateAreas:{base:'"info" "image"',sm:e?' "info image" "info image" ':' "image info" "image info" '},children:[(0,d.jsx)(i.P,{area:"image",width:{base:"100%",sm:"100%"},height:"fit-content",alignItems:"center",display:"flex",justifyContent:"center",children:(0,d.jsx)(k.ZP,{duration:2e3,keyframes:e?C:v,children:(0,d.jsx)(r.u,{label:t,children:(0,d.jsx)(b.E,{margin:"auto",src:`./images/${s}`,width:{base:"85%",sm:"75%"}})})})}),(0,d.jsxs)(i.P,{area:"info",children:[(0,d.jsx)(k.ZP,{duration:1e3,keyframes:e?v:C,children:(0,d.jsx)(o.X,{w:{base:"92%",sm:"92%"},m:"auto",fontSize:{base:"30px",sm:"40px"},sx:{fontFamily:"open sans",fontWeight:500,color:"thistheme.text"},children:t})}),(0,d.jsx)(k.ZP,{duration:1500,keyframes:e?v:C,children:(0,d.jsx)(j.k,{flexWrap:"wrap",mt:{base:"0px",sm:"20px"},align:"center",justifyContent:"center",children:x.map(((e,s)=>(0,d.jsx)(y,{...e},s)))})}),(0,d.jsx)(k.ZP,{duration:2e3,keyframes:e?v:C,children:(0,d.jsx)(m.g,{children:l.map(((e,s)=>(0,d.jsx)(w,{Skills:e},s)))})})]})]}),F=S.F4`
+from {
+ opacity: 0;
+ transform: translateY(50px);
+}
+
+to {
+ opacity: 1;
+ transform: translateY(0px);
+}
+`,W=()=>(0,d.jsxs)(a.xu,{children:[(0,d.jsx)(k.ZP,{duration:2e3,keyframes:F,children:(0,d.jsxs)(n.r,{id:"Home",height:{base:"800px",sm:"600px"},w:{base:"100%",sm:"90%",md:"800px",lg:"1000px",xl:"1100px","2xl":"1400px"},templateRows:{base:"repeat(3, 1fr)",sm:"repeat(1, 1fr)"},templateColumns:{base:"repeat(1, 1fr)",sm:"repeat(2, 1fr)"},gridTemplateAreas:{base:'"greet"\n "Social"\n "Image"\n ',sm:' " greet Image" \n " Social Image"\n '},m:"auto",children:[(0,d.jsx)(i.P,{area:"greet",h:{sm:"450px"},children:(0,d.jsx)(g,{})}),(0,d.jsxs)(i.P,{area:"Image",h:{sm:"600px",base:"500px"},children:[(0,d.jsx)("br",{}),(0,d.jsx)(r.u,{label:"Feeling Proud",children:(0,d.jsx)(l.E,{w:{base:"80%",sm:"100%"},m:"auto",mt:"40px",src:"./images/greetings.png",alt:"./images/greetings.png"})})]}),(0,d.jsxs)(i.P,{area:"Social",h:"150px",children:[(0,d.jsx)(u.Z,{}),(0,d.jsx)(x.z,{mt:"20px",bg:"thistheme.text",color:"#c5d3e1",className:"gitbun",transition:"1s",variant:"outline",colorScheme:"thistheme.text",children:(0,d.jsx)("a",{href:c.$K.og.url,rel:"noreferrer",target:"_blank",children:"\u2b50 Star Me On Github"})})]})]})}),(0,d.jsxs)(m.g,{mt:{base:"1rem",sm:"200px"},children:[(0,d.jsx)(k.ZP,{duration:2e3,keyframes:F,children:(0,d.jsx)(o.X,{mb:{sm:"80px",base:"40px"},sx:{fontFamily:"'Open Sans', sans-serif",fontWeight:600,fontSize:"45px"},color:"thistheme.text",children:"What I do?"})}),(0,d.jsxs)(p.K,{gap:"2rem",children:[(0,d.jsx)(P,{...c.nb.data[0]}),(0,d.jsx)(P,{...c.nb.data[1],even:!0}),(0,d.jsx)(P,{...c.nb.data[2]})]})]})]})},3803:(e,s,t)=>{t.d(s,{Z:()=>d});t(2791);var a=t(2814),n=t(5597),i=t(2552),r=t(2884),l=t(2625),x=t(184),m=(0,n.G)((function(e,s){const{columns:t,spacingX:n,spacingY:m,spacing:o,minChildWidth:p,...c}=e,h=(0,i.F)(),d=p?function(e,s){return(0,l.XQ)(e,(e=>{const t=(0,r.LP)("sizes",e,"number"===typeof(a=e)?`${a}px`:a)(s);var a;return null===e?null:`repeat(auto-fit, minmax(${t}, 1fr))`}))}(p,h):(f=t,(0,l.XQ)(f,(e=>null===e?null:`repeat(${e}, minmax(0, 1fr))`)));var f;return(0,x.jsx)(a.r,{ref:s,gap:o,columnGap:n,rowGap:m,templateColumns:d,...c})}));m.displayName="SimpleGrid";var o=t(9457),p=t(824),c=t(1560);const h=({name:e,link:s,fontAwesomeIcon:t,backgroundColor:a})=>(0,x.jsx)(p.xu,{w:"41px",h:"41px",backgroundColor:a,borderRadius:"50%",m:"auto",display:"flex",justifyContent:"center",alignItems:"center",children:(0,x.jsx)(c.E,{width:"80%",src:`/images/${t}`})}),d=()=>(0,x.jsx)("div",{style:{display:"flex",flexDirection:"column",justifyContent:"space-evenly",alignItems:"center"},children:(0,x.jsx)(m,{minChildWidth:"41px",w:{base:"80%"},m:"auto",mt:"20px",spacing:"15px",display:"flex",flexWrap:"wrap",alignContent:"center",mb:"20px",justifyContent:"center",children:o.v7.map(((e,s)=>e.active?(0,x.jsxs)("a",{href:e.link,rel:"noreferrer",target:"_blank",children:[" ",(0,x.jsx)(h,{...e})]},s):null))})})}}]);
+//# sourceMappingURL=698.3068c0a3.chunk.js.map
\ No newline at end of file
diff --git a/static/js/698.3068c0a3.chunk.js.map b/static/js/698.3068c0a3.chunk.js.map
new file mode 100644
index 0000000..462f691
--- /dev/null
+++ b/static/js/698.3068c0a3.chunk.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"static/js/698.3068c0a3.chunk.js","mappings":"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","sources":["components/Greet/Greet.tsx","components/greetings/Greetings.tsx","components/languageicon/Appicon.tsx","components/skillsline/Skills.tsx","components/WhatIDo/What.tsx","PAGE/HOME/Home.tsx","../node_modules/@chakra-ui/layout/src/simple-grid.tsx","components/socialmedia/social/Social.tsx","components/socialmedia/Socials.tsx"],"sourcesContent":["import { HStack, Spacer, Text, VStack } from \"@chakra-ui/react\";\r\nimport React from \"react\";\r\ninterface GreetProps {\r\n title: string,\r\n nickname: string,\r\n subTitle: string,\r\n resumeLink: string,\r\n portfolio_repository: string,\r\n githubProfile: string,\r\n}\r\nconst Greet: React.FC = ({\r\n title,\r\n nickname,\r\n subTitle,\r\n resumeLink,\r\n portfolio_repository,\r\n githubProfile,\r\n}) => {\r\n return (\r\n \r\n {/* 50 */}\r\n \r\n {\" \"}\r\n {title}\r\n \r\n\r\n \r\n {\" \"}\r\n ( {nickname} )\r\n \r\n\r\n \r\n {\" \"}\r\n {subTitle}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default Greet;\r\n","import React from \"react\";\r\n// import { Fade } from \"react-reveal\";\r\nimport { greeting } from \"../../portfolio\";\r\nimport Greet from \"../Greet/Greet\";\r\nconst Greetings: React.FC = () => {\r\n return (\r\n \r\n {/* */}\r\n \r\n {/* */}\r\n
\r\n );\r\n};\r\n\r\nexport default Greetings;\r\n","import { Image } from \"@chakra-ui/react\";\r\nimport React from \"react\";\r\nimport { Tooltip } from '@chakra-ui/react'\r\ntype styleType = {\r\n color: string\r\n}\r\ninterface AppiconProps {\r\n skillName: string,\r\n fontAwesomeClassname: string,\r\n imgurl: string,\r\n style: styleType\r\n\r\n}\r\n\r\nconst Appicon: React.FC = ({ imgurl, skillName, fontAwesomeClassname, style }) => {\r\n // console.log(style);\r\n return (\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default Appicon;\r\n","import { Text } from '@chakra-ui/react'\r\nimport React from 'react'\r\n\r\nconst Skills: React.FC<{\r\n Skills: string\r\n}> = ({ Skills }) => {\r\n return (\r\n {Skills}\r\n )\r\n}\r\n\r\nexport default Skills","import { Flex, Grid, GridItem, Heading, Image, Tooltip, VStack } from '@chakra-ui/react'\r\nimport React from 'react'\r\nimport Appicon from '../languageicon/Appicon'\r\nimport Skills from '../skillsline/Skills'\r\nimport Reveal from 'react-awesome-reveal'\r\nimport { keyframes } from '@emotion/react'\r\n\r\ntype styleType = {\r\n color: string\r\n}\r\n\r\ntype softwareType = {\r\n skillName: string,\r\n fontAwesomeClassname: string,\r\n imgurl: string,\r\n style: styleType\r\n}\r\ninterface WhatProps {\r\n img: string,\r\n title: string,\r\n fileName: string,\r\n skills: string[],\r\n softwareSkills: softwareType[]\r\n even?: boolean\r\n}\r\n\r\nconst LeftWard = keyframes`\r\nfrom {\r\n opacity: 0;\r\n transform: translateX(-200px);\r\n}\r\n\r\nto {\r\n opacity: 1;\r\n transform: translateX(0px);\r\n}\r\n`\r\nconst RightWard = keyframes`\r\nfrom {\r\n opacity: 0;\r\n transform: translateX(200px);\r\n}\r\n\r\nto {\r\n opacity: 1;\r\n transform: translateX(0px);\r\n}\r\n`\r\nconst What: React.FC = ({ even, img, title, fileName, skills, softwareSkills }) => {\r\n\r\n return (\r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* */}\r\n \r\n \r\n {title}\r\n \r\n \r\n {/* */}\r\n {/* */}\r\n \r\n \r\n {\r\n softwareSkills.map((item, i) => {\r\n return \r\n })\r\n }\r\n \r\n \r\n {/* */}\r\n {/* */}\r\n \r\n \r\n {\r\n skills.map((item, i) => {\r\n return \r\n })\r\n }\r\n \r\n \r\n {/* */}\r\n \r\n \r\n )\r\n}\r\n\r\nexport default What","import {\r\n Box,\r\n Button,\r\n Grid,\r\n GridItem,\r\n Heading,\r\n Img,\r\n Stack,\r\n Tooltip,\r\n VStack,\r\n} from \"@chakra-ui/react\";\r\nimport React from \"react\";\r\nimport Greetings from \"../../components/greetings/Greetings\";\r\nimport Socials from \"../../components/socialmedia/Socials\";\r\nimport What from \"../../components/WhatIDo/What\";\r\nimport { seo, skills } from \"../../portfolio\";\r\n\r\nimport Reveal from \"react-awesome-reveal\";\r\nimport { keyframes } from \"@emotion/react\";\r\n\r\n\r\nconst Upwards = keyframes`\r\nfrom {\r\n opacity: 0;\r\n transform: translateY(50px);\r\n}\r\n\r\nto {\r\n opacity: 1;\r\n transform: translateY(0px);\r\n}\r\n`\r\nconst Home: React.FC = () => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* */}\r\n
\r\n \r\n \r\n \r\n {/* */}\r\n \r\n \r\n {/* */}\r\n \r\n \r\n {/* */}\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n What I do?\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n );\r\n};\r\n\r\nexport default Home;\r\n","import {\n forwardRef,\n getToken,\n ResponsiveValue,\n useTheme,\n} from \"@chakra-ui/system\"\nimport { mapResponsive } from \"@chakra-ui/breakpoint-utils\"\nimport { Grid, GridProps } from \"./grid\"\n\ninterface SimpleGridOptions {\n /**\n * The width at which child elements will break into columns. Pass a number for pixel values or a string for any other valid CSS length.\n */\n minChildWidth?: GridProps[\"minWidth\"]\n /**\n * The number of columns\n */\n columns?: ResponsiveValue\n /**\n * The gap between the grid items\n */\n spacing?: GridProps[\"gridGap\"]\n /**\n * The column gap between the grid items\n */\n spacingX?: GridProps[\"gridGap\"]\n /**\n * The row gap between the grid items\n */\n spacingY?: GridProps[\"gridGap\"]\n}\n\nexport interface SimpleGridProps extends GridProps, SimpleGridOptions {}\n\n/**\n * SimpleGrid\n *\n * React component that uses the `Grid` component and provides\n * a simpler interface to create responsive grid layouts.\n *\n * Provides props that easily define columns and spacing.\n *\n * @see Docs https://chakra-ui.com/simplegrid\n */\nexport const SimpleGrid = forwardRef(\n function SimpleGrid(props, ref) {\n const { columns, spacingX, spacingY, spacing, minChildWidth, ...rest } =\n props\n\n const theme = useTheme()\n const templateColumns = minChildWidth\n ? widthToColumns(minChildWidth, theme)\n : countToColumns(columns)\n\n return (\n \n )\n },\n)\n\nSimpleGrid.displayName = \"SimpleGrid\"\n\nfunction toPx(n: string | number) {\n return typeof n === \"number\" ? `${n}px` : n\n}\n\nfunction widthToColumns(width: any, theme: Record) {\n return mapResponsive(width, (value) => {\n const _value = getToken(\"sizes\", value, toPx(value))(theme)\n return value === null ? null : `repeat(auto-fit, minmax(${_value}, 1fr))`\n })\n}\n\nfunction countToColumns(count: any) {\n return mapResponsive(count, (value) =>\n value === null ? null : `repeat(${value}, minmax(0, 1fr))`,\n )\n}\n","import { Box, Image } from \"@chakra-ui/react\";\r\nimport React from \"react\";\r\ninterface SocialProps {\r\n name: string,\r\n link: string,\r\n fontAwesomeIcon: string,\r\n backgroundColor: string\r\n}\r\n\r\nconst Social: React.FC = ({ name, link, fontAwesomeIcon, backgroundColor }) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default Social;\r\n","import React from \"react\";\r\nimport { SimpleGrid } from \"@chakra-ui/react\";\r\nimport { socialMediaLinks } from \"../../portfolio\";\r\nimport Social from \"./social/Social\";\r\nimport \"./this.css\";\r\nconst Socials: React.FC = () => {\r\n return (\r\n \r\n
\r\n {socialMediaLinks.map((item, i) => {\r\n if(!item.active) return null;\r\n return (\r\n \r\n {\" \"}\r\n \r\n \r\n );\r\n })}\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default Socials;\r\n"],"names":["Greet","title","nickname","subTitle","resumeLink","portfolio_repository","githubProfile","_jsxs","VStack","height","textAlign","sm","md","children","Text","fontSize","base","lineHeight","w","m","mt","sx","fontFamily","fontWeight","color","pt","width","Greetings","_jsx","style","display","alignItems","padding","greeting","Appicon","imgurl","skillName","fontAwesomeClassname","Tooltip","label","Image","margin","cursor","src","Skills","LeftWard","keyframes","RightWard","What","even","img","fileName","skills","softwareSkills","Grid","lg","xl","gridTemplateColumns","gridTemplateRows","gridTemplateAreas","GridItem","area","justifyContent","Reveal","duration","Heading","Flex","flexWrap","align","map","item","i","Upwards","Home","Box","id","templateRows","templateColumns","h","Img","alt","Socials","Button","bg","className","transition","variant","colorScheme","href","seo","og","url","rel","target","mb","Stack","gap","data","SimpleGrid","forwardRef","props","ref","columns","spacingX","spacingY","spacing","minChildWidth","rest","theme","useTheme","mapResponsive","value","_value","getToken","n","widthToColumns","count","jsx","columnGap","rowGap","displayName","Social","name","link","fontAwesomeIcon","backgroundColor","borderRadius","flexDirection","alignContent","socialMediaLinks","active"],"sourceRoot":""}
\ No newline at end of file
diff --git a/static/js/698.a3d06702.chunk.js b/static/js/698.a3d06702.chunk.js
deleted file mode 100644
index a998790..0000000
--- a/static/js/698.a3d06702.chunk.js
+++ /dev/null
@@ -1,2 +0,0 @@
-"use strict";(self.webpackChunkdeepumandal=self.webpackChunkdeepumandal||[]).push([[698],{8698:function(e,n,t){t.r(n),t.d(n,{default:function(){return A}});var s,a,r,i=t(1413),l=t(168),o=t(824),m=t(2814),x=t(8292),c=t(1029),p=t(8209),f=t(9055),u=t(1917),d=t(9589),h=t(56),g=(t(2791),t(9457)),j=t(884),b=t(184),y=function(e){var n=e.title,t=e.nickname,s=e.subTitle;e.resumeLink,e.portfolio_repository,e.githubProfile;return(0,b.jsxs)(u.g,{height:"fit-content",textAlign:{sm:"left",md:"left"},children:[(0,b.jsxs)(j.x,{fontSize:{base:"30px",sm:"50px"},lineHeight:{base:"33px",sm:"55px"},w:{base:"70%",sm:"80%"},m:"auto",mt:{base:"50px"},sx:{fontFamily:"'Open Sans', sans-serif",fontWeight:700,color:"thistheme.text"},children:[" ",n]}),(0,b.jsxs)(j.x,{pt:{base:"0px",sm:"15px"},w:{base:"fit-content",sm:"80%"},m:"auto",sx:{fontFamily:"'Open Sans', sans-serif",fontWeight:400,fontSize:"24px",color:"thistheme.text",lineHeight:"20px"},children:[" ",(0,b.jsxs)("i",{children:["( ",t," )"]})]}),(0,b.jsxs)(j.x,{w:{base:"fit-content",sm:"80%"},m:"auto",pt:{sm:"20px",base:"0px"},fontSize:{sm:"20px",base:"16px"},lineHeight:{sm:"35px",base:"26px"},sx:{fontFamily:"'Open Sans', sans-serif",fontWeight:500,color:"thistheme.describe",width:"80%"},children:[" ",s]})]})},w=function(){return(0,b.jsx)("div",{style:{width:"100%",height:"100%",display:"flex",alignItems:"end",padding:"auto"},children:(0,b.jsx)(y,(0,i.Z)({},g.Qw))})},k=t(3803),S=t(1560),Z=t(6582),v=function(e){var n=e.imgurl,t=e.skillName;e.fontAwesomeClassname,e.style;return(0,b.jsx)("div",{children:(0,b.jsx)(c.u,{label:t,children:(0,b.jsx)(S.E,{width:{base:"35px",sm:"60px"},margin:"5px",sx:{cursor:"pointer"},src:"./imgurl/".concat(n)})})})},C=function(e){var n=e.Skills;return(0,b.jsx)(j.x,{textAlign:"left",w:{base:"90%",sm:"100%"},fontSize:{base:"13px",sm:"20px"},sx:{fontFamily:"Open Sans",color:"thistheme.describe",fontWeight:400},children:n})},P=t(8045),W=t(2554),F=(0,W.F4)(s||(s=(0,l.Z)(["\nfrom {\n opacity: 0;\n transform: translateX(-200px);\n}\n\nto {\n opacity: 1;\n transform: translateX(0px);\n}\n"]))),I=(0,W.F4)(a||(a=(0,l.Z)(["\nfrom {\n opacity: 0;\n transform: translateX(200px);\n}\n\nto {\n opacity: 1;\n transform: translateX(0px);\n}\n"]))),X=function(e){var n=e.even,t=e.img,s=e.title,a=(e.fileName,e.skills),r=e.softwareSkills;return(0,b.jsxs)(m.r,{w:{base:"100%",sm:"90%",md:"800px",lg:"1000px",xl:"1100px","2xl":"1400px"},gridTemplateColumns:{base:"repeat(1,1fr)",sm:"repeat(2,1fr)"},gridTemplateRows:{base:"repeat(2,1fr)",sm:"repeat(2,1fr)"},gridTemplateAreas:{base:'"info" "image"',sm:n?' "info image" "info image" ':' "image info" "image info" '},children:[(0,b.jsx)(x.P,{area:"image",width:{base:"100%",sm:"100%"},height:"fit-content",alignItems:"center",display:"flex",justifyContent:"center",children:(0,b.jsx)(P.ZP,{duration:2e3,keyframes:n?I:F,children:(0,b.jsx)(c.u,{label:s,children:(0,b.jsx)(S.E,{margin:"auto",src:"./images/".concat(t),width:{base:"85%",sm:"75%"}})})})}),(0,b.jsxs)(x.P,{area:"info",children:[(0,b.jsx)(P.ZP,{duration:1e3,keyframes:n?F:I,children:(0,b.jsx)(d.X,{w:{base:"92%",sm:"92%"},m:"auto",fontSize:{base:"30px",sm:"40px"},sx:{fontFamily:"open sans",fontWeight:500,color:"thistheme.text"},children:s})}),(0,b.jsx)(P.ZP,{duration:1500,keyframes:n?F:I,children:(0,b.jsx)(Z.k,{flexWrap:"wrap",mt:{base:"0px",sm:"20px"},align:"center",justifyContent:"center",children:r.map((function(e,n){return(0,b.jsx)(v,(0,i.Z)({},e),n)}))})}),(0,b.jsx)(P.ZP,{duration:2e3,keyframes:n?F:I,children:(0,b.jsx)(u.g,{children:a.map((function(e,n){return(0,b.jsx)(C,{Skills:e},n)}))})})]})]})},z=(0,W.F4)(r||(r=(0,l.Z)(["\nfrom {\n opacity: 0;\n transform: translateY(50px);\n}\n\nto {\n opacity: 1;\n transform: translateY(0px);\n}\n"]))),A=function(){return(0,b.jsxs)(o.xu,{children:[(0,b.jsx)(P.ZP,{duration:2e3,keyframes:z,children:(0,b.jsxs)(m.r,{id:"Home",height:{base:"800px",sm:"600px"},w:{base:"100%",sm:"90%",md:"800px",lg:"1000px",xl:"1100px","2xl":"1400px"},templateRows:{base:"repeat(3, 1fr)",sm:"repeat(1, 1fr)"},templateColumns:{base:"repeat(1, 1fr)",sm:"repeat(2, 1fr)"},gridTemplateAreas:{base:'"greet"\n "Social"\n "Image"\n ',sm:' " greet Image" \n " Social Image"\n '},m:"auto",children:[(0,b.jsx)(x.P,{area:"greet",h:{sm:"450px"},children:(0,b.jsx)(w,{})}),(0,b.jsxs)(x.P,{area:"Image",h:{sm:"600px",base:"500px"},children:[(0,b.jsx)("br",{}),(0,b.jsx)(c.u,{label:"Feeling Proud",children:(0,b.jsx)(p.E,{w:{base:"80%",sm:"100%"},m:"auto",mt:"40px",src:"./images/greetings.png",alt:"./images/greetings.png"})})]}),(0,b.jsxs)(x.P,{area:"Social",h:"150px",children:[(0,b.jsx)(k.Z,{}),(0,b.jsx)(f.z,{mt:"20px",bg:"thistheme.text",color:"#c5d3e1",className:"gitbun",transition:"1s",variant:"outline",colorScheme:"thistheme.text",children:(0,b.jsx)("a",{href:g.$K.og.url,rel:"noreferrer",target:"_blank",children:"\u2b50 Star Me On Github"})})]})]})}),(0,b.jsxs)(u.g,{mt:{base:"1rem",sm:"200px"},children:[(0,b.jsx)(P.ZP,{duration:2e3,keyframes:z,children:(0,b.jsx)(d.X,{mb:{sm:"80px",base:"40px"},sx:{fontFamily:"'Open Sans', sans-serif",fontWeight:600,fontSize:"45px"},color:"thistheme.text",children:"What I do?"})}),(0,b.jsxs)(h.K,{gap:"2rem",children:[(0,b.jsx)(X,(0,i.Z)({},g.nb.data[0])),(0,b.jsx)(X,(0,i.Z)((0,i.Z)({},g.nb.data[1]),{},{even:!0})),(0,b.jsx)(X,(0,i.Z)({},g.nb.data[2]))]})]})]})}},3803:function(e,n,t){t.d(n,{Z:function(){return g}});var s=t(1413),a=(t(2791),t(4925)),r=t(2814),i=t(5597),l=t(2552),o=t(2884),m=t(2625),x=t(184),c=["columns","spacingX","spacingY","spacing","minChildWidth"],p=(0,i.G)((function(e,n){var t,i=e.columns,p=e.spacingX,f=e.spacingY,u=e.spacing,d=e.minChildWidth,h=(0,a.Z)(e,c),g=(0,l.F)(),j=d?function(e,n){return(0,m.XQ)(e,(function(e){var t,s=(0,o.LP)("sizes",e,"number"===typeof(t=e)?"".concat(t,"px"):t)(n);return null===e?null:"repeat(auto-fit, minmax(".concat(s,", 1fr))")}))}(d,g):(t=i,(0,m.XQ)(t,(function(e){return null===e?null:"repeat(".concat(e,", minmax(0, 1fr))")})));return(0,x.jsx)(r.r,(0,s.Z)({ref:n,gap:u,columnGap:p,rowGap:f,templateColumns:j},h))}));p.displayName="SimpleGrid";var f=t(9457),u=t(824),d=t(1560),h=function(e){e.name,e.link;var n=e.fontAwesomeIcon,t=e.backgroundColor;return(0,x.jsx)(u.xu,{w:"41px",h:"41px",backgroundColor:t,borderRadius:"50%",m:"auto",display:"flex",justifyContent:"center",alignItems:"center",children:(0,x.jsx)(d.E,{width:"80%",src:"/images/".concat(n)})})},g=function(){return(0,x.jsx)("div",{style:{display:"flex",flexDirection:"column",justifyContent:"space-evenly",alignItems:"center"},children:(0,x.jsx)(p,{minChildWidth:"41px",w:{base:"80%"},m:"auto",mt:"20px",spacing:"15px",display:"flex",flexWrap:"wrap",alignContent:"center",mb:"20px",justifyContent:"center",children:f.v7.map((function(e,n){return e.active?(0,x.jsxs)("a",{href:e.link,rel:"noreferrer",target:"_blank",children:[" ",(0,x.jsx)(h,(0,s.Z)({},e))]},n):null}))})})}}}]);
-//# sourceMappingURL=698.a3d06702.chunk.js.map
\ No newline at end of file
diff --git a/static/js/698.a3d06702.chunk.js.map b/static/js/698.a3d06702.chunk.js.map
deleted file mode 100644
index 04d4707..0000000
--- a/static/js/698.a3d06702.chunk.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"static/js/698.a3d06702.chunk.js","mappings":"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","sources":["components/Greet/Greet.tsx","components/greetings/Greetings.tsx","components/languageicon/Appicon.tsx","components/skillsline/Skills.tsx","components/WhatIDo/What.tsx","PAGE/HOME/Home.tsx","../node_modules/@chakra-ui/layout/src/simple-grid.tsx","components/socialmedia/social/Social.tsx","components/socialmedia/Socials.tsx"],"sourcesContent":["import { HStack, Spacer, Text, VStack } from \"@chakra-ui/react\";\r\nimport React from \"react\";\r\ninterface GreetProps {\r\n title: string,\r\n nickname: string,\r\n subTitle: string,\r\n resumeLink: string,\r\n portfolio_repository: string,\r\n githubProfile: string,\r\n}\r\nconst Greet: React.FC = ({\r\n title,\r\n nickname,\r\n subTitle,\r\n resumeLink,\r\n portfolio_repository,\r\n githubProfile,\r\n}) => {\r\n return (\r\n \r\n {/* 50 */}\r\n \r\n {\" \"}\r\n {title}\r\n \r\n\r\n \r\n {\" \"}\r\n ( {nickname} )\r\n \r\n\r\n \r\n {\" \"}\r\n {subTitle}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default Greet;\r\n","import React from \"react\";\r\n// import { Fade } from \"react-reveal\";\r\nimport { greeting } from \"../../portfolio\";\r\nimport Greet from \"../Greet/Greet\";\r\nconst Greetings: React.FC = () => {\r\n return (\r\n \r\n {/* */}\r\n \r\n {/* */}\r\n
\r\n );\r\n};\r\n\r\nexport default Greetings;\r\n","import { Image } from \"@chakra-ui/react\";\r\nimport React from \"react\";\r\nimport { Tooltip } from '@chakra-ui/react'\r\ntype styleType = {\r\n color: string\r\n}\r\ninterface AppiconProps {\r\n skillName: string,\r\n fontAwesomeClassname: string,\r\n imgurl: string,\r\n style: styleType\r\n\r\n}\r\n\r\nconst Appicon: React.FC = ({ imgurl, skillName, fontAwesomeClassname, style }) => {\r\n // console.log(style);\r\n return (\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default Appicon;\r\n","import { Text } from '@chakra-ui/react'\r\nimport React from 'react'\r\n\r\nconst Skills: React.FC<{\r\n Skills: string\r\n}> = ({ Skills }) => {\r\n return (\r\n {Skills}\r\n )\r\n}\r\n\r\nexport default Skills","import { Flex, Grid, GridItem, Heading, Image, Tooltip, VStack } from '@chakra-ui/react'\r\nimport React from 'react'\r\nimport Appicon from '../languageicon/Appicon'\r\nimport Skills from '../skillsline/Skills'\r\nimport Reveal from 'react-awesome-reveal'\r\nimport { keyframes } from '@emotion/react'\r\n\r\ntype styleType = {\r\n color: string\r\n}\r\n\r\ntype softwareType = {\r\n skillName: string,\r\n fontAwesomeClassname: string,\r\n imgurl: string,\r\n style: styleType\r\n}\r\ninterface WhatProps {\r\n img: string,\r\n title: string,\r\n fileName: string,\r\n skills: string[],\r\n softwareSkills: softwareType[]\r\n even?: boolean\r\n}\r\n\r\nconst LeftWard = keyframes`\r\nfrom {\r\n opacity: 0;\r\n transform: translateX(-200px);\r\n}\r\n\r\nto {\r\n opacity: 1;\r\n transform: translateX(0px);\r\n}\r\n`\r\nconst RightWard = keyframes`\r\nfrom {\r\n opacity: 0;\r\n transform: translateX(200px);\r\n}\r\n\r\nto {\r\n opacity: 1;\r\n transform: translateX(0px);\r\n}\r\n`\r\nconst What: React.FC = ({ even, img, title, fileName, skills, softwareSkills }) => {\r\n\r\n return (\r\n \r\n \r\n {/* */}\r\n \r\n