UNPKG

one

Version:

One is a new React Framework that makes Vite serve both native and web.

1 lines 7.07 kB
{"version":3,"names":["React","router","jsx","LoadProgressBar","startDelay","finishDelay","initialPercent","updateInterval","sporadicness","style","onLayout","props","loaded","setLoaded","useState","width","setWidth","elementRef","useRef","useEffect","loadInterval","dispose","onLoadState","state","clearTimeout","setTimeout","intervalCount","setInterval","previous","increment","Math","random","min","clearInterval","element","current","updateLayout","rect","getBoundingClientRect","nativeEvent","layout","x","y","height","observer","ResizeObserver","observe","disconnect","flattenedStyle","useMemo","styleValue","styleValues","Array","isArray","flat","Number","POSITIVE_INFINITY","reduce","result","value","Object","assign","ref","display","position","top","left","right","backgroundColor","transform","zIndex","MAX_SAFE_INTEGER"],"sources":["LoadProgressBar.mjs"],"sourcesContent":["import * as React from \"react\";\nimport { router } from \"../router/imperative-api\";\nimport { jsx } from \"react/jsx-runtime\";\nconst LoadProgressBar = ({\n startDelay = 500,\n finishDelay = 50,\n initialPercent = 20,\n updateInterval = 300,\n sporadicness = 3,\n style,\n onLayout,\n ...props\n}) => {\n const [loaded, setLoaded] = React.useState(0);\n const [width, setWidth] = React.useState(0);\n const elementRef = React.useRef(null);\n React.useEffect(() => {\n let loadInterval;\n const dispose = router.onLoadState((state) => {\n clearTimeout(loadInterval);\n switch (state) {\n case \"loading\": {\n loadInterval = setTimeout(() => {\n setLoaded(initialPercent);\n let intervalCount = 0;\n loadInterval = setInterval(() => {\n intervalCount++;\n if (intervalCount % sporadicness === 0) {\n return;\n }\n setLoaded((previous) => {\n const increment = (100 - previous) * (previous > 80 ? 0.05 : 0.1) * Math.random();\n return Math.min(previous + increment, 100);\n });\n }, updateInterval);\n }, startDelay);\n break;\n }\n case \"loaded\": {\n setLoaded(100);\n clearInterval(loadInterval);\n setTimeout(() => {\n setLoaded(0);\n }, finishDelay);\n break;\n }\n }\n });\n return () => {\n dispose();\n clearInterval(loadInterval);\n };\n }, [finishDelay, initialPercent, sporadicness, startDelay, updateInterval]);\n React.useEffect(() => {\n const element = elementRef.current;\n if (!element) return;\n const updateLayout = () => {\n const rect = element.getBoundingClientRect();\n setWidth(rect.width);\n onLayout?.({\n nativeEvent: {\n layout: { x: rect.x, y: rect.y, width: rect.width, height: rect.height }\n }\n });\n };\n updateLayout();\n const observer = new ResizeObserver(updateLayout);\n observer.observe(element);\n return () => observer.disconnect();\n }, [onLayout]);\n const flattenedStyle = React.useMemo(() => {\n const styleValue = style;\n const styleValues = Array.isArray(styleValue) ? styleValue.flat(Number.POSITIVE_INFINITY) : [styleValue];\n return styleValues.reduce(\n (result, value) => value && typeof value === \"object\" ? Object.assign(result, value) : result,\n {}\n );\n }, [style]);\n return /* @__PURE__ */ jsx(\n \"div\",\n {\n ...props,\n ref: elementRef,\n style: {\n display: loaded === 0 ? \"none\" : \"flex\",\n height: 1,\n position: \"fixed\",\n top: 0,\n left: 0,\n right: 0,\n backgroundColor: \"rgba(60, 100, 200, 0.65)\",\n width: \"100%\",\n transform: `translateX(${-(1 - loaded * 0.01) * width}px)`,\n zIndex: Number.MAX_SAFE_INTEGER,\n ...flattenedStyle\n }\n }\n );\n};\nexport {\n LoadProgressBar\n};\n//# sourceMappingURL=LoadProgressBar.web.js.map\n"],"mappings":"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","ignoreList":[]}