{"id":"ZwPI","dependencies":[{"name":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/hooks/dist/esm/use-focus-on-show.js.map","includedInParent":true,"mtime":1616745789087},{"name":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/example/package.json","includedInParent":true,"mtime":1616745785170},{"name":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/hooks/package.json","includedInParent":true,"mtime":1616745789087},{"name":"@chakra-ui/utils","loc":{"line":1,"column":62},"parent":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/hooks/dist/esm/use-focus-on-show.js","resolved":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/utils/dist/esm/index.js"},{"name":"react","loc":{"line":2,"column":28},"parent":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/hooks/dist/esm/use-focus-on-show.js","resolved":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/react/index.js"},{"name":"./use-event-listener","loc":{"line":3,"column":33},"parent":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/hooks/dist/esm/use-focus-on-show.js","resolved":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/hooks/dist/esm/use-event-listener.js"},{"name":"./use-update-effect","loc":{"line":4,"column":32},"parent":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/hooks/dist/esm/use-focus-on-show.js","resolved":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/hooks/dist/esm/use-update-effect.js"}],"generated":{"js":"\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:!0}),exports.useFocusOnShow=s;var e=require(\"@chakra-ui/utils\"),r=require(\"react\"),t=require(\"./use-event-listener\"),u=require(\"./use-update-effect\"),c={preventScroll:!0,shouldFocus:!1};function s(s,n){void 0===n&&(n=c);var{focusRef:l,preventScroll:i,shouldFocus:o,visible:a}=n,f=(0,e.isRefObject)(s)?s.current:s,v=o&&a,d=(0,r.useCallback)(()=>{if(f&&v&&!(0,e.contains)(f,document.activeElement))if(null!=l&&l.current)(0,e.focus)(l.current,{preventScroll:i,nextTick:!0});else{var r=(0,e.getAllFocusable)(f);r.length>0&&(0,e.focus)(r[0],{preventScroll:i,nextTick:!0})}},[v,i,f,l]);(0,u.useUpdateEffect)(()=>{d()},[d]),(0,t.useEventListener)(\"transitionend\",d,f)}"},"sourceMaps":{"js":{"mappings":[{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":53,"column":1},"generated":{"line":1,"column":0}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":53,"column":1},"generated":{"line":1,"column":13}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":53,"column":1},"generated":{"line":1,"column":20}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":53,"column":1},"generated":{"line":1,"column":35}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":53,"column":1},"generated":{"line":1,"column":43}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":53,"column":1},"generated":{"line":1,"column":56}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":53,"column":1},"generated":{"line":1,"column":57}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":53,"column":1},"generated":{"line":1,"column":64}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":53,"column":1},"generated":{"line":1,"column":68}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":53,"column":1},"generated":{"line":1,"column":76}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":53,"column":1},"generated":{"line":1,"column":91}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":1,"column":0},"generated":{"line":1,"column":93}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":1,"column":0},"generated":{"line":1,"column":97}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":1,"column":0},"generated":{"line":1,"column":99}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":1,"column":0},"generated":{"line":1,"column":107}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":8,"column":0},"generated":{"line":1,"column":127}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":8,"column":0},"generated":{"line":1,"column":129}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":8,"column":0},"generated":{"line":1,"column":137}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":9,"column":0},"generated":{"line":1,"column":146}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":9,"column":0},"generated":{"line":1,"column":148}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":9,"column":0},"generated":{"line":1,"column":156}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":10,"column":0},"generated":{"line":1,"column":180}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":10,"column":0},"generated":{"line":1,"column":182}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":10,"column":0},"generated":{"line":1,"column":190}},{"source":"../../src/use-focus-on-show.ts","name":"defaultOptions","original":{"line":19,"column":6},"generated":{"line":1,"column":213}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":19,"column":46},"generated":{"line":1,"column":215}},{"source":"../../src/use-focus-on-show.ts","name":"preventScroll","original":{"line":20,"column":2},"generated":{"line":1,"column":216}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":20,"column":17},"generated":{"line":1,"column":231}},{"source":"../../src/use-focus-on-show.ts","name":"shouldFocus","original":{"line":21,"column":2},"generated":{"line":1,"column":233}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":21,"column":15},"generated":{"line":1,"column":246}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":24,"column":7},"generated":{"line":1,"column":249}},{"source":"../../src/use-focus-on-show.ts","name":"useFocusOnShow","original":{"line":24,"column":16},"generated":{"line":1,"column":258}},{"source":"../../src/use-focus-on-show.ts","name":"target","original":{"line":25,"column":2},"generated":{"line":1,"column":260}},{"source":"../../src/use-focus-on-show.ts","name":"options","original":{"line":26,"column":2},"generated":{"line":1,"column":262}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":27,"column":2},"generated":{"line":1,"column":270}},{"source":"../../src/use-focus-on-show.ts","name":"options","original":{"line":26,"column":2},"generated":{"line":1,"column":274}},{"source":"../../src/use-focus-on-show.ts","name":"options","original":{"line":26,"column":2},"generated":{"line":1,"column":278}},{"source":"../../src/use-focus-on-show.ts","name":"defaultOptions","original":{"line":26,"column":12},"generated":{"line":1,"column":280}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":28,"column":8},"generated":{"line":1,"column":283}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":28,"column":8},"generated":{"line":1,"column":287}},{"source":"../../src/use-focus-on-show.ts","name":"focusRef","original":{"line":28,"column":10},"generated":{"line":1,"column":296}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":28,"column":8},"generated":{"line":1,"column":298}},{"source":"../../src/use-focus-on-show.ts","name":"preventScroll","original":{"line":28,"column":20},"generated":{"line":1,"column":312}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":28,"column":8},"generated":{"line":1,"column":314}},{"source":"../../src/use-focus-on-show.ts","name":"shouldFocus","original":{"line":28,"column":35},"generated":{"line":1,"column":326}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":28,"column":8},"generated":{"line":1,"column":328}},{"source":"../../src/use-focus-on-show.ts","name":"visible","original":{"line":28,"column":48},"generated":{"line":1,"column":336}},{"source":"../../src/use-focus-on-show.ts","name":"options","original":{"line":28,"column":60},"generated":{"line":1,"column":339}},{"source":"../../src/use-focus-on-show.ts","name":"element","original":{"line":29,"column":8},"generated":{"line":1,"column":341}},{"source":"../../src/use-focus-on-show.ts","name":"isRefObject","original":{"line":29,"column":18},"generated":{"line":1,"column":344}},{"source":"../../src/use-focus-on-show.ts","name":"target","original":{"line":29,"column":30},"generated":{"line":1,"column":346}},{"source":"../../src/use-focus-on-show.ts","name":"target","original":{"line":29,"column":30},"generated":{"line":1,"column":348}},{"source":"../../src/use-focus-on-show.ts","name":"target","original":{"line":29,"column":30},"generated":{"line":1,"column":361}},{"source":"../../src/use-focus-on-show.ts","name":"target","original":{"line":29,"column":40},"generated":{"line":1,"column":364}},{"source":"../../src/use-focus-on-show.ts","name":"current","original":{"line":29,"column":47},"generated":{"line":1,"column":366}},{"source":"../../src/use-focus-on-show.ts","name":"target","original":{"line":29,"column":57},"generated":{"line":1,"column":374}},{"source":"../../src/use-focus-on-show.ts","name":"autoFocus","original":{"line":31,"column":8},"generated":{"line":1,"column":376}},{"source":"../../src/use-focus-on-show.ts","name":"shouldFocus","original":{"line":31,"column":20},"generated":{"line":1,"column":378}},{"source":"../../src/use-focus-on-show.ts","name":"visible","original":{"line":31,"column":35},"generated":{"line":1,"column":381}},{"source":"../../src/use-focus-on-show.ts","name":"onFocus","original":{"line":33,"column":8},"generated":{"line":1,"column":383}},{"source":"../../src/use-focus-on-show.ts","name":"useCallback","original":{"line":33,"column":18},"generated":{"line":1,"column":386}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":33,"column":30},"generated":{"line":1,"column":388}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":33,"column":30},"generated":{"line":1,"column":390}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":33,"column":30},"generated":{"line":1,"column":403}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":34,"column":8},"generated":{"line":1,"column":408}},{"source":"../../src/use-focus-on-show.ts","name":"element","original":{"line":34,"column":9},"generated":{"line":1,"column":411}},{"source":"../../src/use-focus-on-show.ts","name":"autoFocus","original":{"line":34,"column":21},"generated":{"line":1,"column":414}},{"source":"../../src/use-focus-on-show.ts","name":"contains","original":{"line":36,"column":8},"generated":{"line":1,"column":419}},{"source":"../../src/use-focus-on-show.ts","name":"element","original":{"line":36,"column":17},"generated":{"line":1,"column":421}},{"source":"../../src/use-focus-on-show.ts","name":"element","original":{"line":36,"column":17},"generated":{"line":1,"column":423}},{"source":"../../src/use-focus-on-show.ts","name":"element","original":{"line":36,"column":17},"generated":{"line":1,"column":433}},{"source":"../../src/use-focus-on-show.ts","name":"document","original":{"line":36,"column":26},"generated":{"line":1,"column":435}},{"source":"../../src/use-focus-on-show.ts","name":"activeElement","original":{"line":36,"column":35},"generated":{"line":1,"column":444}},{"source":"../../src/use-focus-on-show.ts","name":"focusRef","original":{"line":38,"column":8},"generated":{"line":1,"column":459}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":38,"column":4},"generated":{"line":1,"column":462}},{"source":"../../src/use-focus-on-show.ts","name":"focusRef","original":{"line":38,"column":8},"generated":{"line":1,"column":468}},{"source":"../../src/use-focus-on-show.ts","name":"focusRef","original":{"line":38,"column":8},"generated":{"line":1,"column":471}},{"source":"../../src/use-focus-on-show.ts","name":"current","original":{"line":38,"column":18},"generated":{"line":1,"column":473}},{"source":"../../src/use-focus-on-show.ts","name":"focusRef","original":{"line":39,"column":12},"generated":{"line":1,"column":482}},{"source":"../../src/use-focus-on-show.ts","name":"focusRef","original":{"line":39,"column":12},"generated":{"line":1,"column":484}},{"source":"../../src/use-focus-on-show.ts","name":"focusRef","original":{"line":39,"column":12},"generated":{"line":1,"column":486}},{"source":"../../src/use-focus-on-show.ts","name":"focusRef","original":{"line":39,"column":12},"generated":{"line":1,"column":493}},{"source":"../../src/use-focus-on-show.ts","name":"current","original":{"line":39,"column":21},"generated":{"line":1,"column":495}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":39,"column":30},"generated":{"line":1,"column":503}},{"source":"../../src/use-focus-on-show.ts","name":"preventScroll","original":{"line":39,"column":32},"generated":{"line":1,"column":504}},{"source":"../../src/use-focus-on-show.ts","name":"preventScroll","original":{"line":39,"column":32},"generated":{"line":1,"column":518}},{"source":"../../src/use-focus-on-show.ts","name":"nextTick","original":{"line":39,"column":47},"generated":{"line":1,"column":520}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":39,"column":57},"generated":{"line":1,"column":530}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":40,"column":11},"generated":{"line":1,"column":538}},{"source":"../../src/use-focus-on-show.ts","name":"tabbableEls","original":{"line":41,"column":12},"generated":{"line":1,"column":539}},{"source":"../../src/use-focus-on-show.ts","name":"tabbableEls","original":{"line":41,"column":12},"generated":{"line":1,"column":543}},{"source":"../../src/use-focus-on-show.ts","name":"getAllFocusable","original":{"line":41,"column":26},"generated":{"line":1,"column":546}},{"source":"../../src/use-focus-on-show.ts","name":"element","original":{"line":41,"column":42},"generated":{"line":1,"column":548}},{"source":"../../src/use-focus-on-show.ts","name":"element","original":{"line":41,"column":42},"generated":{"line":1,"column":550}},{"source":"../../src/use-focus-on-show.ts","name":"element","original":{"line":41,"column":42},"generated":{"line":1,"column":567}},{"source":"../../src/use-focus-on-show.ts","name":"tabbableEls","original":{"line":42,"column":10},"generated":{"line":1,"column":570}},{"source":"../../src/use-focus-on-show.ts","name":"length","original":{"line":42,"column":22},"generated":{"line":1,"column":572}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":42,"column":31},"generated":{"line":1,"column":579}},{"source":"../../src/use-focus-on-show.ts","name":"tabbableEls","original":{"line":43,"column":14},"generated":{"line":1,"column":583}},{"source":"../../src/use-focus-on-show.ts","name":"tabbableEls","original":{"line":43,"column":14},"generated":{"line":1,"column":585}},{"source":"../../src/use-focus-on-show.ts","name":"tabbableEls","original":{"line":43,"column":14},"generated":{"line":1,"column":587}},{"source":"../../src/use-focus-on-show.ts","name":"tabbableEls","original":{"line":43,"column":14},"generated":{"line":1,"column":594}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":43,"column":26},"generated":{"line":1,"column":596}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":43,"column":30},"generated":{"line":1,"column":599}},{"source":"../../src/use-focus-on-show.ts","name":"preventScroll","original":{"line":43,"column":32},"generated":{"line":1,"column":600}},{"source":"../../src/use-focus-on-show.ts","name":"preventScroll","original":{"line":43,"column":32},"generated":{"line":1,"column":614}},{"source":"../../src/use-focus-on-show.ts","name":"nextTick","original":{"line":43,"column":47},"generated":{"line":1,"column":616}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":43,"column":57},"generated":{"line":1,"column":626}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":46,"column":5},"generated":{"line":1,"column":632}},{"source":"../../src/use-focus-on-show.ts","name":"autoFocus","original":{"line":46,"column":6},"generated":{"line":1,"column":633}},{"source":"../../src/use-focus-on-show.ts","name":"preventScroll","original":{"line":46,"column":17},"generated":{"line":1,"column":635}},{"source":"../../src/use-focus-on-show.ts","name":"element","original":{"line":46,"column":32},"generated":{"line":1,"column":637}},{"source":"../../src/use-focus-on-show.ts","name":"focusRef","original":{"line":46,"column":41},"generated":{"line":1,"column":639}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":48,"column":18},"generated":{"line":1,"column":644}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":48,"column":18},"generated":{"line":1,"column":646}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":48,"column":18},"generated":{"line":1,"column":648}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":48,"column":18},"generated":{"line":1,"column":665}},{"source":"../../src/use-focus-on-show.ts","name":"onFocus","original":{"line":49,"column":4},"generated":{"line":1,"column":670}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":50,"column":5},"generated":{"line":1,"column":675}},{"source":"../../src/use-focus-on-show.ts","name":"onFocus","original":{"line":50,"column":6},"generated":{"line":1,"column":676}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":52,"column":19},"generated":{"line":1,"column":681}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":52,"column":19},"generated":{"line":1,"column":683}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":52,"column":19},"generated":{"line":1,"column":685}},{"source":"../../src/use-focus-on-show.ts","name":null,"original":{"line":52,"column":19},"generated":{"line":1,"column":703}},{"source":"../../src/use-focus-on-show.ts","name":"onFocus","original":{"line":52,"column":36},"generated":{"line":1,"column":719}},{"source":"../../src/use-focus-on-show.ts","name":"element","original":{"line":52,"column":45},"generated":{"line":1,"column":721}}],"sources":{"../../src/use-focus-on-show.ts":"import {\n  contains,\n  focus,\n  FocusableElement,\n  getAllFocusable,\n  isRefObject,\n} from \"@chakra-ui/utils\"\nimport React, { useCallback } from \"react\"\nimport { useEventListener } from \"./use-event-listener\"\nimport { useUpdateEffect } from \"./use-update-effect\"\n\nexport interface UseFocusOnShowOptions {\n  visible?: boolean\n  shouldFocus?: boolean\n  preventScroll?: boolean\n  focusRef?: React.RefObject<FocusableElement>\n}\n\nconst defaultOptions: UseFocusOnShowOptions = {\n  preventScroll: true,\n  shouldFocus: false,\n}\n\nexport function useFocusOnShow<T extends HTMLElement>(\n  target: React.RefObject<T> | T,\n  options = defaultOptions,\n) {\n  const { focusRef, preventScroll, shouldFocus, visible } = options\n  const element = isRefObject(target) ? target.current : target\n\n  const autoFocus = shouldFocus && visible\n\n  const onFocus = useCallback(() => {\n    if (!element || !autoFocus) return\n\n    if (contains(element, document.activeElement as HTMLElement)) return\n\n    if (focusRef?.current) {\n      focus(focusRef.current, { preventScroll, nextTick: true })\n    } else {\n      const tabbableEls = getAllFocusable(element)\n      if (tabbableEls.length > 0) {\n        focus(tabbableEls[0], { preventScroll, nextTick: true })\n      }\n    }\n  }, [autoFocus, preventScroll, element, focusRef])\n\n  useUpdateEffect(() => {\n    onFocus()\n  }, [onFocus])\n\n  useEventListener(\"transitionend\", onFocus, element)\n}\n"},"lineCount":null}},"error":null,"hash":"c948afe3811ed732cc2e5328498acdbb","cacheData":{"env":{}}}