{"version":3,"file":"component---src-pages-kpis-js-8ef4f17ed9a00aca278f.js","mappings":"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","sources":["webpack://dfes-annual-report/./src/helpers/isIE.js","webpack://dfes-annual-report/./src/images/banner/banner-3.jpg","webpack://dfes-annual-report/./src/images/stats/training-wellbeing.jpg","webpack://dfes-annual-report/./src/pages/kpis.js","webpack://dfes-annual-report/./src/statistics/barGraph.js","webpack://dfes-annual-report/./src/statistics/statistic.js","webpack://dfes-annual-report/./src/statistics/statisticPanel.js"],"sourcesContent":["export const isIE = /*@cc_on!@*/false || typeof document !== 'undefined' && !!document.documentMode;\r\n","export default __webpack_public_path__ + \"static/banner-3-a9ca3719c8add307992ab465ea1cbd49.jpg\";","export default __webpack_public_path__ + \"static/training-wellbeing-6d953b93b72ee68d8a72f3f8f409b4b2.jpg\";","import React, { useEffect } from 'react';\r\n\r\nimport Layout from '../components/layout';\r\nimport SEO from '../components/seo';\r\nimport { ScrollToPlugin } from 'gsap/all';\r\nimport ScrollTrigger from 'gsap/ScrollTrigger';\r\nimport { Statistic } from '../statistics/statistic';\r\nimport { StatisticPanel } from '../statistics/statisticPanel';\r\nimport gsap from 'gsap';\r\nimport headerImage from '../images/banner/banner-3.jpg';\r\nimport { isIE } from '../helpers/isIE';\r\nimport trainingWelbeing from '../images/stats/training-wellbeing.jpg';\r\n\r\ngsap.registerPlugin(ScrollToPlugin);\r\ngsap.registerPlugin(ScrollTrigger);\r\n\r\nconst KPIs = () => {\r\n useEffect(() => {\r\n if (!isIE) {\r\n //Panel intro animation - late addition. Ideally the panels should be a component but too much refactoring required\r\n const panels = document.querySelectorAll('.stat-panel, .stat-grid-image > div');\r\n for (let i = 0; i < panels.length; i++) {\r\n const element = panels[i];\r\n gsap.set(element.parentNode, { perspective: 800 });\r\n gsap.from(element, {\r\n scrollTrigger: {\r\n trigger: element,\r\n start: 'top bottom',\r\n // start: 'top bottom-=150px',\r\n end: '+=50',\r\n scrub: 1.2,\r\n once: true,\r\n },\r\n opacity: 0,\r\n rotationX: 90,\r\n ease: 'back.out(1.5)',\r\n });\r\n }\r\n }\r\n }, []);\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\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n It is essential our people are trained and supported to maintain their physical and mental\r\n health while providing safe and efficient services to the community.\r\n
\r\n Our result is higher than budget as a result of additional costs:\r\n

    \r\n
  • to develop the Cabinet Submission for the WA Emergency Management Training Centre
  • \r\n
  • for trainee firefighter schools
  • \r\n
  • to formalise firefighter accreditation.
  • \r\n
\r\n

\r\n \r\n }\r\n className=\"stat--dark-blue stat--white\"\r\n tableDataPrevYear={['2019/20', '$8.90', ' $9.65', '+$0.75']}\r\n tableDataCurrentYear={['2020/21', '$10.49', '$8.68', '+$1.81']}\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 When incident reports are completed promptly, it enables buildings to be repaired / rebuilt more\r\n quickly, aiding recovery and reducing the impact on families and businesses.\r\n

\r\n

\r\n Our result of 86.11% of structure fire incident reports being completed is below target. The\r\n measures we put in place during the year to improve completion rates have not yet delivered the\r\n desired result.\r\n

\r\n

\r\n The importance of completing incident reports within the specified timeframes will continue to\r\n be emphasised to all responding crews and a review to identify ways to improve our result is\r\n underway.\r\n

\r\n \r\n }\r\n className=\"stat--dark-blue stat--white\"\r\n tableDataPrevYear={['2019/20', '88.46%', '90%', '-1.54%']}\r\n tableDataCurrentYear={['2020/21', '86.11%', '90%', '-3.89%']}\r\n />\r\n \r\n

\r\n Unfortunately, in 2020-21 two of the three Level 3 events (Wooroloo and Tropical Cyclone Seroja)\r\n had a significant impact on the community so we did not meet the target for this indicator.\r\n

\r\n

\r\n The combination of the catastrophic fire conditions and the topography of the Wooroloo area made\r\n this fire fast moving and difficult to control and 86 homes were lost.\r\n

\r\n

\r\n Although the community prepared as much as possible before the event, Seroja crossed our coast\r\n in an area where cyclone rated construction codes were not required, resulting in more\r\n structural damage than usually caused by a Category 3 cyclone. Forty-eight homes were lost.\r\n

\r\n \r\n }\r\n tableDataPrevYear={['2019/20', '20%', '25%', '+5%']}\r\n tableDataCurrentYear={['2020/21', '66.67%', '25%', '-41.67%']}\r\n className=\"stat--gold stat--margin\"\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

\r\n Frontline (or community facing) services include:\r\n

\r\n
    \r\n
  • incident responders
  • \r\n
  • fit-for-purpose response appliances, equipment and facilities
  • \r\n
  • advice to the community and industry
  • \r\n
  • management or mitigation of risks to prevent incidents from occurring
  • \r\n
\r\n
\r\n }\r\n tableDataPrevYear={['2019/20', '$163.27', '$154.85', '+$8.42']}\r\n tableDataCurrentYear={['2020/21', '$164.12', '$163.81', '+$0.31']}\r\n className=\"stat--gold\"\r\n />\r\n
\r\n
\r\n
\r\n \r\n \r\n );\r\n};\r\n\r\nexport default KPIs;\r\n","import React from 'react';\r\n\r\nexport const Bar = ({ stat, max }) => {\r\n let size = (stat.value / max) * 100;\r\n let targetPos = stat.target ? (stat.target / max) * 100 : null;\r\n\r\n return (\r\n
  • \r\n
    \r\n Value of\r\n {stat.value.toLocaleString()}\r\n
    \r\n
    \r\n
    \r\n {targetPos &&
    }\r\n
    \r\n
    \r\n for the year\r\n {stat.label}\r\n
    \r\n
  • \r\n );\r\n};\r\n\r\nexport const BarGraph = ({ data, label }) => {\r\n //Determine max\r\n const values = data.map((dataEntry) => dataEntry.value);\r\n const targets = data.map((dataEntry) => (dataEntry.target ? dataEntry.target : null));\r\n const maxValues = targets && targets.length > 0 ? [...values, ...targets] : values;\r\n\r\n const max = Math.max(...maxValues);\r\n\r\n return (\r\n <>\r\n Statistics graph about {label}\r\n \r\n \r\n );\r\n};\r\n","import React, { createRef, memo, useEffect, useRef } from 'react';\r\n\r\nimport { BarGraph } from './barGraph';\r\nimport { ScrollToPlugin } from 'gsap/all';\r\nimport ScrollTrigger from 'gsap/ScrollTrigger';\r\nimport gsap from 'gsap';\r\nimport { isIE } from '../helpers/isIE';\r\n\r\ngsap.registerPlugin(ScrollToPlugin);\r\ngsap.registerPlugin(ScrollTrigger);\r\n\r\nexport const Statistic = ({\r\n isLarge,\r\n isDouble,\r\n showDollar,\r\n icon,\r\n value,\r\n unit,\r\n label,\r\n title,\r\n description,\r\n tableDataPrevYear,\r\n tableDataCurrentYear,\r\n image,\r\n className,\r\n style,\r\n graphData,\r\n isFlipped,\r\n}) => {\r\n const statContainer = createRef();\r\n const front = createRef();\r\n const back = createRef();\r\n const backInner = createRef();\r\n const isToggled = createRef(false);\r\n const currentTimeline = createRef(null);\r\n\r\n useEffect(() => {\r\n const container = statContainer.current;\r\n const isDesktop = window.innerWidth > 768;\r\n gsap.set(container, { perspective: 800 });\r\n gsap.set(back.current, { rotationY: -180 });\r\n gsap.set(front.current, { transformStyle: 'preserve-3d' });\r\n gsap.set([back.current, front.current], { backfaceVisibility: 'hidden' });\r\n gsap.set(backInner.current, { opacity: 0 });\r\n\r\n back.current.setAttribute('tabindex', -1);\r\n\r\n //Intro animation\r\n if (!isIE) {\r\n gsap.set(container.parentNode, { perspective: 1500 });\r\n gsap.from(container, {\r\n scrollTrigger: {\r\n trigger: container,\r\n start: 'top bottom-=70px',\r\n end: '+=50',\r\n scrub: 2,\r\n once: true,\r\n },\r\n duration: 1.5,\r\n opacity: 0,\r\n rotationX: 90,\r\n ease: 'back.out(1.5)',\r\n });\r\n }\r\n\r\n const handleMouseEnter = () => {\r\n // if (!front.current) return; //Avoid hot reload errors\r\n gsap.to(front.current, { boxShadow: '0 12px 50px 0 rgba(0, 0, 0, 0.2)', translateY: -4, duration: 0.2 });\r\n };\r\n\r\n const handleMouseLeave = () => {\r\n // if (!front.current) return; //Avoid hot reload errors\r\n gsap.to(front.current, { boxShadow: 'none', translateY: 0, duration: 0.2 });\r\n };\r\n\r\n const handleClickOutside = (e) => {\r\n if (!container.contains(e.target)) {\r\n if (isToggled.current) {\r\n const stats = document.getElementsByClassName('stat');\r\n\r\n const expandingAnotherStat = [...stats].some((el) => el.contains(e.target));\r\n collapse(expandingAnotherStat);\r\n }\r\n }\r\n };\r\n\r\n const handleKeyPress = (e) => {\r\n if (e.keyCode === 27 && isToggled.current) {\r\n collapse();\r\n }\r\n };\r\n\r\n if (container) {\r\n if (isDesktop) {\r\n container.addEventListener('mouseenter', handleMouseEnter);\r\n container.addEventListener('mouseleave', handleMouseLeave);\r\n }\r\n container.addEventListener('keydown', handleKeyPress);\r\n //Detect click outside\r\n document.addEventListener('click', handleClickOutside);\r\n }\r\n\r\n return () => {\r\n container.removeEventListener('mouseenter', handleMouseEnter);\r\n container.removeEventListener('mouseleave', handleMouseLeave);\r\n container.removeEventListener('keydown', handleKeyPress);\r\n document.removeEventListener('click', handleClickOutside);\r\n };\r\n }, []);\r\n\r\n const expand = () => {\r\n if (typeof window === 'undefined') return;\r\n const isDesktop = window.innerWidth > 768;\r\n\r\n //Keyboard navigation\r\n back.current.removeAttribute('tabindex');\r\n front.current.setAttribute('tabindex', -1);\r\n back.current.focus();\r\n\r\n const newIndex = window.lastIndex ? window.lastIndex + 2 : 5;\r\n window.lastIndex = newIndex;\r\n var tl = gsap.timeline();\r\n currentTimeline.current && currentTimeline.current.kill();\r\n const viewportOffset = statContainer.current.getBoundingClientRect();\r\n\r\n //Calculate required sizes. Have to temporarily change the width to get this calculation right.\r\n !isLarge && !isDouble && gsap.set(back.current, { width: '200%' });\r\n const heightIncrease = backInner.current.offsetHeight;\r\n !isLarge && !isDouble && gsap.set(back.current, { width: '100%' });\r\n const width = document.querySelector('.stat--large').offsetWidth;\r\n\r\n if (back.current.offsetHeight < heightIncrease) {\r\n tl.to(back.current, { height: heightIncrease + 'px', ease: 'back.out(1.2)', duration: 0.3 }, 0.3);\r\n }\r\n\r\n gsap.set(statContainer.current.parentNode, { zIndex: newIndex });\r\n gsap.set('.modal-fade', { display: 'block', zIndex: newIndex - 1 });\r\n\r\n tl.to(front.current, { rotationY: 180, ease: 'back.out(1.2)', duration: 0.8 }, 0);\r\n tl.to(back.current, { rotationY: 0, ease: 'back.out(1.2)', duration: 0.8 }, 0);\r\n tl.to(backInner.current, { opacity: 1, ease: 'back.out(1.2)', duration: 0.4 }, !isLarge && !isDouble ? 0.4 : 0.2);\r\n\r\n tl.to('.modal-fade', { opacity: 1, duration: 0.3 }, 0.3);\r\n\r\n if (!isLarge && !isDouble) {\r\n tl.to(back.current, { width: width + 'px', ease: 'back.out(1.2)', duration: 0.3 }, 0.3); //Small\r\n\r\n //Nudge it left if it's on the right side of the window. The 20 just gives a little safe offset for items starting right in the middle\r\n if (viewportOffset.left > window.innerWidth / 2 - 20) {\r\n tl.to(back.current, { translateX: '-50%', ease: 'back.out(1.2)', duration: 0.3 }, 0.3); //Small\r\n }\r\n }\r\n\r\n //Scroll the view to fit the statistic\r\n const bottomPosition = viewportOffset.top + heightIncrease;\r\n const offsetTop = statContainer.current.getBoundingClientRect().top + window.scrollY;\r\n console.log('window.scrollY', window.scrollY);\r\n console.log('offsetTop', offsetTop);\r\n\r\n const scrollPosition = !isDesktop ? offsetTop - 62 : offsetTop - statContainer.current.offsetHeight / (isLarge ? 2 : 1);\r\n\r\n if (bottomPosition > window.innerHeight) {\r\n gsap.to(window, { duration: 0.4, scrollTo: { y: scrollPosition } });\r\n }\r\n\r\n //Nudge it up if sitting outside the document (near footer on small devices)\r\n\r\n if (offsetTop + heightIncrease > document.documentElement.offsetHeight) {\r\n const verticalNudge = document.documentElement.offsetHeight - (offsetTop + heightIncrease);\r\n tl.to(back.current, { translateY: verticalNudge, ease: 'back.out(1.2)', duration: 0.3 }, 0.3); //Small\r\n }\r\n\r\n currentTimeline.current = tl;\r\n };\r\n\r\n const collapse = (expandingAnotherStat = false) => {\r\n var tl = gsap.timeline();\r\n currentTimeline.current && currentTimeline.current.kill();\r\n const delay = isLarge ? 0 : 0.1;\r\n\r\n //Deal with keyboard nav\r\n back.current.setAttribute('tabindex', -1);\r\n front.current.removeAttribute('tabindex');\r\n if (!expandingAnotherStat) {\r\n front.current.focus();\r\n }\r\n\r\n if (!expandingAnotherStat) {\r\n tl.to('.modal-fade', { opacity: 0, duration: 0.3 }, 0);\r\n tl.to('.modal-fade', { display: 'none' }, 0.3);\r\n }\r\n\r\n tl.to(back.current, { height: '100%', width: '100%', translateX: 0, translateY: 0, ease: 'back.out(1.2)', duration: 0.3 }, 0); //Small\r\n tl.to(front.current, { rotationY: 0, ease: 'back.out(1.2)', duration: 0.8 }, delay);\r\n tl.to(back.current, { rotationY: -180, ease: 'back.out(1.2)', duration: 0.8 }, delay);\r\n tl.to(backInner.current, { opacity: 0, ease: 'back.out(1.2)', duration: 0.4 }, 0);\r\n\r\n currentTimeline.current = tl;\r\n };\r\n\r\n const handleClick = () => {\r\n if (!isToggled.current) {\r\n expand();\r\n } else {\r\n collapse();\r\n }\r\n isToggled.current = !isToggled.current;\r\n };\r\n\r\n let statClass = 'stat';\r\n\r\n if (isLarge) statClass = statClass + ' stat--large';\r\n if (isLarge && !image) statClass = statClass + ' stat--large-no-image';\r\n if (className) statClass = statClass + ' ' + className; //Custom classname for varying styles\r\n if (isDouble) statClass = statClass + ' stat--double';\r\n if (isDouble && image) statClass = statClass + ' stat--double-image';\r\n if (isFlipped) statClass = statClass + ' stat--flipped';\r\n if (!icon) statClass = statClass + ' stat--no-icon';\r\n return (\r\n
    \r\n {/* {imagePath &&
    } */}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n );\r\n};\r\n","import React, { createRef, useEffect } from 'react';\r\n\r\nimport { BarGraph } from './barGraph';\r\nimport gsap from 'gsap';\r\n\r\nexport const StatisticPanel = ({\r\n showDollar,\r\n icon,\r\n value,\r\n unit,\r\n label,\r\n title,\r\n description,\r\n className,\r\n style,\r\n graphData,\r\n tableDataPrevYear,\r\n tableDataCurrentYear,\r\n isFlipped,\r\n}) => {\r\n const statContainer = createRef();\r\n const front = createRef();\r\n const frontBG = createRef();\r\n const backInner = createRef();\r\n const back = createRef();\r\n const isToggled = createRef(false);\r\n const offset = isFlipped ? 150 : -150;\r\n const hoverOffset = isFlipped ? -8 : 8;\r\n\r\n useEffect(() => {\r\n const container = statContainer.current;\r\n gsap.set(back.current, { translateX: offset, opacity: 0 });\r\n back.current.setAttribute('tabindex', -1);\r\n\r\n const handleMouseEnter = () => {\r\n if (!frontBG.current || window.innerWidth < 768) return;\r\n gsap.to(frontBG.current, { boxShadow: '0 12px 50px 0 rgba(0, 0, 0, 0.2)', translateX: hoverOffset, duration: 0.2 });\r\n };\r\n\r\n const handleMouseLeave = () => {\r\n if (!frontBG.current || window.innerWidth < 768) return;\r\n gsap.to(frontBG.current, { boxShadow: 'none', translateX: 0, duration: 0.2 });\r\n };\r\n\r\n const handleClickOutside = (e) => {\r\n if (!container.contains(e.target)) {\r\n if (isToggled.current) {\r\n collapse();\r\n }\r\n }\r\n };\r\n\r\n const handleKeyPress = (e) => {\r\n if (e.keyCode === 27 && isToggled.current) {\r\n collapse();\r\n }\r\n };\r\n\r\n if (container) {\r\n container.addEventListener('mouseenter', handleMouseEnter);\r\n container.addEventListener('mouseleave', handleMouseLeave);\r\n container.addEventListener('keydown', handleKeyPress);\r\n //Detect click outside\r\n document.addEventListener('click', handleClickOutside);\r\n }\r\n\r\n return () => {\r\n container.removeEventListener('mouseenter', handleMouseEnter);\r\n container.removeEventListener('mouseleave', handleMouseLeave);\r\n container.removeEventListener('keydown', handleKeyPress);\r\n document.removeEventListener('click', handleClickOutside);\r\n };\r\n }, []);\r\n\r\n let statClass = 'stat';\r\n\r\n if (className) statClass = statClass + ' ' + className; //Custom classname for varying styles\r\n if (isFlipped) statClass = statClass + ' stat--flipped';\r\n\r\n const handleClick = () => {\r\n if (!isToggled.current) {\r\n expand();\r\n } else {\r\n collapse();\r\n }\r\n isToggled.current = !isToggled.current;\r\n };\r\n\r\n const expand = () => {\r\n if (typeof window === 'undefined') return;\r\n const viewportOffset = statContainer.current.getBoundingClientRect();\r\n\r\n //Keyboard navigation\r\n back.current.removeAttribute('tabindex');\r\n front.current.setAttribute('tabindex', -1);\r\n back.current.focus();\r\n\r\n var tl = gsap.timeline();\r\n const newIndex = window.lastIndex ? window.lastIndex + 2 : 5;\r\n window.lastIndex = newIndex;\r\n tl.to(back.current, { translateX: 0, opacity: 1, ease: 'back.out(1)', duration: 0.4 }, 0);\r\n gsap.set(statContainer.current, { zIndex: newIndex });\r\n\r\n //Calculate required height. Have to temporarily change the width to get this calculation right.\r\n //For the panel style, this applies to mobile only\r\n if (window.innerWidth < 768) {\r\n const heightIncrease = backInner.current.offsetHeight;\r\n tl.to(back.current, { height: heightIncrease }, 0.3);\r\n }\r\n\r\n //Scroll the view to fit the statistic\r\n const bottomPosition = viewportOffset.top + statContainer.current.offsetHeight;\r\n const offsetTop = statContainer.current.getBoundingClientRect().top + document.documentElement.scrollTop;\r\n const scrollPositionCentered = offsetTop - statContainer.current.offsetHeight / 2;\r\n if (bottomPosition > window.innerHeight) {\r\n gsap.to(window, { duration: 0.4, scrollTo: { y: scrollPositionCentered } });\r\n }\r\n\r\n //Quick bugfix for modal. Alternatively handle via more robust 'expandingAnotherStat' selector in statistic.js\r\n setTimeout(() => {\r\n tl.to('.modal-fade', { opacity: 0, duration: 0.3 }, 0);\r\n tl.to('.modal-fade', { display: 'none' }, 0.3);\r\n }, 300);\r\n };\r\n\r\n const collapse = () => {\r\n var tl = gsap.timeline();\r\n tl.to(back.current, { translateX: offset, opacity: 0, ease: 'back.out(1)', duration: 0.4 }, 0);\r\n //Deal with keyboard nav\r\n back.current.setAttribute('tabindex', -1);\r\n front.current.removeAttribute('tabindex');\r\n };\r\n\r\n return (\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n );\r\n};\r\n"],"names":["isIE","document","documentMode","gsap","ScrollToPlugin","ScrollTrigger","useEffect","panels","querySelectorAll","i","length","element","parentNode","perspective","scrollTrigger","trigger","start","end","scrub","once","opacity","rotationX","ease","headerTitle","headerIntro","headerImage","showCTA","title","className","isDouble","value","label","description","tableDataPrevYear","tableDataCurrentYear","isLarge","style","backgroundImage","trainingWelbeing","isFlipped","marginTop","Bar","stat","max","size","targetPos","target","toLocaleString","height","bottom","BarGraph","data","values","map","dataEntry","targets","maxValues","Math","entry","index","key","replace","toLowerCase","Statistic","showDollar","icon","unit","image","graphData","statContainer","createRef","front","back","backInner","isToggled","currentTimeline","container","current","isDesktop","window","innerWidth","rotationY","transformStyle","backfaceVisibility","setAttribute","duration","handleMouseEnter","boxShadow","translateY","handleMouseLeave","handleClickOutside","e","contains","stats","getElementsByClassName","expandingAnotherStat","some","el","collapse","handleKeyPress","keyCode","addEventListener","removeEventListener","tl","kill","delay","removeAttribute","focus","to","display","width","translateX","handleClick","newIndex","lastIndex","viewportOffset","getBoundingClientRect","heightIncrease","offsetHeight","querySelector","offsetWidth","zIndex","left","bottomPosition","top","offsetTop","scrollY","console","log","scrollPosition","innerHeight","scrollTo","y","documentElement","verticalNudge","expand","statClass","ref","onClick","StatisticPanel","frontBG","offset","hoverOffset","scrollPositionCentered","scrollTop","setTimeout"],"sourceRoot":""}