mirror of
https://github.com/Steffo99/unisteffo.git
synced 2024-11-29 19:34:19 +00:00
1 line
No EOL
44 KiB
Text
Generated
1 line
No EOL
44 KiB
Text
Generated
{"version":3,"sources":["webpack:///./components/Example.less","webpack:///./components/old/todo.css","webpack:///./routes/calcoloNumerico.js","webpack:///./components/Elements/Box.less","webpack:///./components/old/timer.js","webpack:///./components/old/timer.less","webpack:///./components/Latex.js","webpack:///./components/Elements/Panel.less","webpack:///./components/example.js","webpack:///../src/index.js","webpack:///./components/Elements/Box.js","webpack:///./components/old/split.css","webpack:///./components/Elements/Panel.js","webpack:///./components/old/todo.js","webpack:///./components/old/split.js","webpack:///./components/Latex.css","webpack:///./contexts/LatexDefaultInline.js"],"names":["module","exports","r","String","raw","CalcoloNumerico","render","title","href","to","Component","Timer","state","Date","now","timer","componentDidMount","this","setInterval","setState","componentWillUnmount","clearInterval","dateTo","className","style","parts","milliseconds","seconds","minutes","hours","days","props","timeLeft","Math","floor","expired","unknown","class","count","text","remaining","renderColor","useContext","LatexRenderColor","defaultInline","LatexDefaultInline","src","undefined","inline","children","alt","latex","example","getHookState","index","options","_hook","currentComponent","hooks","__hooks","_list","_pendingEffects","length","push","useState","initialState","useReducer","invokeOrReturn","reducer","init","hookState","currentIndex","_component","_value","nextValue","action","useEffect","callback","args","argsChanged","_args","useLayoutEffect","_renderCallbacks","useRef","initialValue","useMemo","current","useImperativeHandle","ref","createHandle","concat","factory","_factory","useCallback","context","provider","_id","_defaultValue","sub","value","useDebugValue","formatter","flushAfterPaintEffects","afterPaintEffects","some","component","_parentDom","forEach","invokeCleanup","invokeEffect","e","_catchError","_vnode","hook","_cleanup","result","oldArgs","newArgs","arg","f","prevRaf","oldBeforeRender","_render","oldAfterDiff","diffed","oldCommit","_commit","oldBeforeUnmount","unmount","vnode","c","requestAnimationFrame","raf","done","clearTimeout","timeout","cancelAnimationFrame","setTimeout","window","commitQueue","filter","cb","BoxColors","Object","freeze","RED","red","ORANGE","orange","YELLOW","yellow","LIME","lime","CYAN","cyan","BLUE","blue","MAGENTA","magenta","DEFAULT","default","color","box","contents","Todo","todo","Split","Array","isArray","map","element","splitchild","split","splitparent","createContext"],"mappings":"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","file":"route-calcoloNumerico.chunk.a2e66.js","sourcesContent":["// extracted by mini-css-extract-plugin\nmodule.exports = {\"example\":\"example__2PzAa\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"todo\":\"todo__1UVRh\"};","import {Component} from 'preact'\nimport Split from \"../components/old/split\";\nimport Latex from \"../components/Latex\";\nimport Panel from \"../components/Elements/Panel\";\nimport Example from \"../components/example\";\nimport Todo from \"../components/old/todo\";\nimport Timer from \"../components/old/timer\";\n\nconst r = String.raw;\n\nexport default class CalcoloNumerico extends Component {\n render() {\n return (\n <div>\n <h1>Calcolo Numerico</h1>\n <Split title={\"Unimore\"}>\n <Panel title={\"Email della prof.ssa\"}>\n <p>\n <a href={\"mailto:silvia.bonettini@unimore.it\"}>silvia.bonettini@unimore.it</a>\n </p>\n </Panel>\n <Panel title={\"Orale\"}>\n <p>\n E' composto da:\n </p>\n <ul>\n <li>2 domande sugli argomenti teorici</li>\n <li>1 domanda di implementazione algoritmo in MATLAB <small>(facoltativa per i punteggi migliori del TBL)</small></li>\n </ul>\n </Panel>\n <Panel title={\"Prossimi appelli\"}>\n <ol>\n <li><Timer to={\"2020-06-15\"}/></li>\n <li><Timer to={\"2020-06-22\"}/></li>\n <li><Timer to={\"2020-07-06\"}/></li>\n <li><Timer to={\"2020-07-13\"}/></li>\n <li><Timer to={\"2020-07-20\"}/></li>\n <li><Timer to={\"2020-07-27\"}/></li>\n </ol>\n </Panel>\n </Split>\n <Split title={\"Algoritmi\"}>\n <Panel title={\"Algoritmi numerici\"}>\n <p>\n Algoritmi che hanno:\n </p>\n <ul>\n <li>numeri reali in input e output</li>\n <li>successioni delle quattro operazioni aritmetiche fondamentali come passi</li>\n </ul>\n </Panel>\n </Split>\n <Split title={\"Errore di rappresentazione\"}>\n <Panel title={\"Errore di rappresentazione\"}>\n <p>\n Con i numeri floating point può capitare che un certo numero <Latex>{r`\\alpha`}</Latex> non sia rappresentato correttamente.\n </p>\n <p>\n In tal caso, il numero si indica con <Latex>{r`\\alpha^*`}</Latex>.\n </p>\n </Panel>\n <Panel title={\"Errore assoluto\"}>\n <p>\n È la differenza tra il numero desiderato e il numero rappresentato:\n </p>\n <p>\n <Latex>{r`E_a = \\left | \\alpha - \\alpha^* \\right |`}</Latex>\n </p>\n <Example>\n Vale sempre 0, tranne in caso di underflow o overflow.\n </Example>\n </Panel>\n <Panel title={\"Errore relativo\"}>\n <p>\n Indica quanto il numero rappresentato differisce dal numero desiderato:\n </p>\n <p>\n <Latex>{r`\\forall \\alpha \\neq 0, E_r = \\frac{E_a}{\\left | \\alpha \\right |}`}</Latex>\n </p>\n </Panel>\n </Split>\n <Split title={\"Floating point\"}>\n <Panel title={\"Precisione di macchina\"}>\n <p>\n L'errore relativo di un numero reale rappresentato in virgola mobile è minore o uguale alla <i>precisione di macchina</i>:\n </p>\n <p>\n <Latex>{r`E_r \\leq k \\cdot \\beta^{1-t}`}</Latex>\n </p>\n <ul>\n <li>\n <Latex>\\beta</Latex> è uguale alla base utilizzata (solitamente 2).\n </li>\n <li>\n <Latex>t</Latex> è uguale al numero di cifre della mantissa.\n </li>\n <li>\n <Latex>k</Latex> è uguale a <Latex>1</Latex> se il numero viene rappresentato per troncamento oppure a <Latex>{r`\\frac{1}{2}`}</Latex> se viene rappresentato per arrotondamento.\n </li>\n </ul>\n </Panel>\n </Split>\n <Split title={\"Operazioni di macchina\"}>\n <Panel title={\"Un nuovo insieme\"}>\n <p>\n L'insieme <Latex>F</Latex> è il sottoinsieme dei numeri reali rappresentabili in floating point dalla macchina che stiamo usando.\n </p>\n <p>\n Operazioni tra elementi di <Latex>F</Latex> producono risultati in <Latex>{r`\\mathbb{R}`}</Latex>, che però decaderanno nuovamente a elementi di <Latex>F</Latex>, perdendo informazioni.\n </p>\n <p>\n Il teorema della precisione di macchina si applica quindi anche ai risultati delle operazioni.\n </p>\n </Panel>\n <Panel title={\"Caratteristiche delle operazioni di macchina\"}>\n <ul>\n <li>Hanno più di un elemento neutro.</li>\n <li>Un numero ha più opposti.</li>\n <li>Non sono associative.</li>\n <li>Non sono distributive.</li>\n <li>Non vale la legge di annullamento del prodotto.</li>\n </ul>\n </Panel>\n <Panel title={\"La funzione fl\"}>\n <p>\n Indica che un valore è soggetto alla precisione di macchina:\n </p>\n <p>\n <Latex>{r`fl(x) = (x)(1 + \\epsilon_x)`}</Latex>\n </p>\n </Panel>\n </Split>\n <Split title={\"Errori nelle operazioni di macchina\"}>\n <Panel title={\"Errore inerente\"}>\n <p>\n Errore dipendente <b>solo dai dati</b>.\n </p>\n <p>\n <Todo>TODO: qual è la formula?</Todo>\n </p>\n <p>\n È l'errore che si presenterebbe se <Latex>{r`\\epsilon_1 = \\epsilon_2 = \\dots = 0`}</Latex>.\n </p>\n </Panel>\n <Panel title={\"Errore algoritmico\"}>\n <p>\n Errore dipendente <b>solo dalle operazioni effettuate</b>.\n </p>\n <p>\n <Todo>TODO: qual è la formula?</Todo>\n </p>\n <p>\n È l'errore che si presenterebbe se <Latex>{r`\\epsilon_x = \\epsilon_y = \\dots = 0`}</Latex>.\n </p>\n </Panel>\n </Split>\n <Split>\n <Panel title={\"Problema ben condizionato\"}>\n <p>\n Un problema poco sensibile all'<b>errore inerente</b>.\n </p>\n <Example>\n <Latex>{r`y = \\frac{1}{x}`}</Latex> è mal condizionato intorno allo 0 e ben condizionato lontano dallo 0.\n </Example>\n </Panel>\n <Panel title={\"Algoritmo stabile\"}>\n <p>\n Un algoritmo poco sensibile all'<b>errore algoritmico</b>.\n </p>\n <Example>\n <p>\n Cerchiamo un algoritmo che risolva <Latex>{r`2x = 4`}</Latex>.\n </p>\n <p>\n Calcolare prima <Latex>{r`t = fl \\left( \\frac{1}{4} \\right)`}</Latex> e poi <Latex>{r`x^* = fl ( 2 \\cdot t )`}</Latex> porta a una perdita di precisione.\n </p>\n <p>\n Calcolare direttamente <Latex>{r`x^* = fl \\left( \\frac{2}{4} \\right)`}</Latex> non ha alcuna perdita di precisione e rende l'algoritmo <b>più stabile</b> del precedente.\n </p>\n </Example>\n </Panel>\n </Split>\n <Split>\n <Panel title={\"Indice di condizionamento\"}>\n <p>\n È il coefficiente di proporzionalità tra i dati e l'<b>errore inerente</b>.\n </p>\n <p>\n Essendo sempre maggiore di uno, si può dire che sia un coefficiente di amplificazione.\n </p>\n <p>\n Minore è l'indice di condizionamento, meglio condizionato è un problema.\n </p>\n </Panel>\n <Panel title={\"Indice algoritmico\"}>\n <p>\n È il coefficiente di proporzionalità tra i dati e l'<b>errore algoritmico</b>.\n </p>\n <p>\n Essendo sempre maggiore di uno, si può dire che sia un coefficiente di amplificazione.\n </p>\n </Panel>\n </Split>\n <Split title={\"Le cose più difficili di Algebra Lineare\"}>\n <Panel title={\"Matrice singolare\"}>\n <p>\n Matrice con determinante 0.\n </p>\n <p>\n Le matrici singolari <b>non sono invertibili</b>.\n </p>\n </Panel>\n </Split>\n <Split title={\"Norme\"}>\n <Panel title={\"Norma vettoriale\"}>\n <p>\n Funzione che associa un valore positivo a ogni vettore diverso da 0, e 0 al vettore zero.\n </p>\n <Example>\n <a href={\"https://it.wikipedia.org/wiki/Norma_(matematica)#/media/File:Vector_norms.svg\"}>Esempi su Wikipedia</a>\n </Example>\n </Panel>\n <Panel title={\"Norma a infinito\"}>\n <p>\n Massimo dei valori assoluti di tutti gli elementi del vettore.\n </p>\n <p>\n <Latex>{r`\\Vert x \\Vert_\\infty = max_{i = 1..n} | x_i |`}</Latex>\n </p>\n </Panel>\n <Panel title={\"Norma a 1\"}>\n <p>\n Somma dei valori assoluti di tutti gli elementi del vettore.\n </p>\n <p>\n <Latex>{r`\\Vert x \\Vert_1 = \\sum_{i = 1}^n | x_i |`}</Latex>\n </p>\n </Panel>\n <Panel title={\"Norma a 2\"}>\n <p>\n Radice quadrata della somma dei quadrati di tutti gli elementi del vettore.\n </p>\n <p>\n <Latex>{r`\\Vert x \\Vert_2 = \\sqrt{\\sum_{i = 1}^n x_i^2}`}</Latex>\n </p>\n </Panel>\n </Split>\n <Split>\n <Panel title={\"Norma matriciale indotta\"}>\n <p>\n Funzione che associa un valore positivo a ogni matrice diversa da 0, e 0 alla matrice zero.\n </p>\n <p>\n Si ricavano dalle norme vettoriali:\n </p>\n <p>\n <Latex>{r`\\Vert A \\Vert = sup_{x \\in \\mathbb{R}, x \\neq 0} \\frac{\\Vert A \\cdot x \\Vert}{\\Vert x \\Vert}`}</Latex>\n </p>\n <Example>\n <Latex>sup</Latex> è l'estremo superiore di un insieme. E' molto simile al massimo: ricordi le prime lezioni di Analisi?\n </Example>\n </Panel>\n <Panel title={\"Norma a infinito\"}>\n <p>\n Massimo delle somme dei valori assoluti di tutti gli elementi di ogni riga di una matrice.\n </p>\n <p>\n <Latex>{r`\\Vert A \\Vert_\\infty = max_{i = 1..n} \\sum_{j = 1}^n | a_{ij} |`}</Latex>\n </p>\n </Panel>\n <Panel title={\"Norma a 1\"}>\n <p>\n Massimo delle somme dei valori assoluti di tutti gli elementi di ogni colonna di una matrice.\n </p>\n <p>\n <Latex>{r`\\Vert A \\Vert_1 = max_{j = 1..n} \\sum_{i = 1}^n | a_{ij} |`}</Latex>\n </p>\n </Panel>\n <Panel title={\"Norma a 2\"}>\n <p>\n Radice quadrata del rango del prodotto tra una matrice e la sua trasposta.\n </p>\n <p>\n <Latex>{r`\\Vert A \\Vert_2 = \\sqrt{\\rho ( A^T \\times A ) }`}</Latex>\n </p>\n </Panel>\n </Split>\n <Split>\n <Panel title={\"Errore relativo tra vettori e matrici\"}>\n <p>\n Le norme sono usate per calcolare l'errore relativo tra due vettori o matrici:\n </p>\n <p>\n <Latex>{r`\\frac{\\Vert x - y \\Vert}{\\Vert x \\Vert}`}</Latex>\n </p>\n </Panel>\n </Split>\n <Split title={\"Fattorizzazione\"}>\n <Panel title={\"Cos'è?\"}>\n <p>\n La fattorizzazione è il processo che permette di risolvere sistemi di equazioni lineari rappresentati in forma di matrice.\n </p>\n <p>\n Esistono molteplici algoritmi in grado di realizzarla: mentre tutti portano alla stessa soluzione, possono avere <b>velocità</b> e <b>indici algoritmici</b> diversi.\n </p>\n <p>\n Il sistema lineare da risolvere viene diviso in due parti: la <i>matrice dei coefficienti</i> e il <i>vettore termine noto</i>.\n </p>\n </Panel>\n <Panel title={\"Teorema di Rouché-Capélli\"}>\n <p>\n\n </p>\n </Panel>\n </Split>\n </div>\n )\n }\n}\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"box\":\"box__3cKyY\",\"default\":\"default__v-emJ\",\"red\":\"red__339Cz\",\"orange\":\"orange__24_8v\",\"yellow\":\"yellow__1Jo9W\",\"lime\":\"lime__34yV5\",\"cyan\":\"cyan__3RqLr\",\"blue\":\"blue__13Wnj\",\"magenta\":\"magenta__2tkzq\"};","import {Component} from 'preact'\nimport style from \"./timer.less\"\n\n\nexport default class Timer extends Component {\n constructor() {\n super();\n this.state = {\n \"now\": Date.now()\n };\n this.timer = null;\n }\n\n componentDidMount() {\n this.timer = setInterval(() => {\n this.setState({\"now\": Date.now()})\n }, 1000)\n }\n\n componentWillUnmount() {\n if(this.timer !== null) {\n clearInterval(this.timer)\n }\n }\n\n render() {\n let dateTo = \"Unknown date\";\n let className = style.timer;\n\n let parts = {\n milliseconds: \"?\",\n seconds: \"?\",\n minutes: \"?\",\n hours: \"?\",\n days: \"?\",\n };\n\n if(this.props.to) {\n dateTo = new Date(this.props.to);\n let timeLeft = dateTo - this.state.now;\n\n if(timeLeft > 0) {\n parts = {\n milliseconds: timeLeft % 1000,\n seconds: Math.floor(timeLeft / 1000) % 60,\n minutes: Math.floor(timeLeft / 60000) % 60,\n hours: Math.floor(timeLeft / 3600000) % 24,\n days: Math.floor(timeLeft / 86400000),\n };\n }\n\n else {\n parts = {\n milliseconds: 0,\n seconds: 0,\n minutes: 0,\n hours: 0,\n days: 0,\n };\n\n className += \" \" + style.expired;\n }\n }\n else {\n className += \" \" + style.unknown;\n }\n\n return (\n <div class={className} title={dateTo}>\n <div class={style.days + \" \" + style.count}>\n {parts.days}\n </div>\n <div className={style.days + \" \" + style.text}>\n giorni\n </div>\n <div class={style.hours + \" \" + style.count}>\n {parts.hours}\n </div>\n <div className={style.hours + \" \" + style.text}>\n ore\n </div>\n <div class={style.minutes + \" \" + style.count}>\n {parts.minutes}\n </div>\n <div className={style.minutes + \" \" + style.text}>\n minuti\n </div>\n <div class={style.seconds + \" \" + style.count}>\n {parts.seconds}\n </div>\n <div class={style.seconds + \" \" + style.text}>\n secondi\n </div>\n <div class={style.remaining}>\n rimasti\n </div>\n </div>\n )\n }\n}\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"timer\":\"timer__K0K_h\",\"days\":\"days__vN3tf\",\"hours\":\"hours__3v0KX\",\"minutes\":\"minutes__vkYk7\",\"seconds\":\"seconds__3gJ99\",\"count\":\"count__1VV4k\",\"text\":\"text__khS4i\",\"remaining\":\"remaining__zUECg\",\"unknown\":\"unknown__af307\",\"expired\":\"expired__1rtHB\"};","import style from './Latex.css';\nimport {useContext} from \"preact/hooks\";\nimport LatexRenderColor from \"../contexts/LatexRenderColor\";\nimport LatexDefaultInline from \"../contexts/LatexDefaultInline\";\n\nexport default function(props) {\n\t// black, blue, brown, cyan, darkgray, gray, green, lightgray, lime, magenta, olive, orange, pink, purple, red, teal, violet, white, yellow\n\tlet renderColor = useContext(LatexRenderColor);\n\tlet defaultInline = useContext(LatexDefaultInline);\n\n\tlet is_inline;\n\tif(props.inline === undefined) {\n\t\tis_inline = defaultInline;\n\t}\n\telse {\n\t\tis_inline = props.inline;\n\t}\n\n\tlet inline = is_inline ? `\\\\inline` : \"\";\n\tlet equation = `${inline} {\\\\color{${renderColor}} ${props.children} }`;\n\n\treturn (\n\t\t<img src={`https://latex.codecogs.com/svg.latex?${equation}`}\n\t\t\t alt={props.children}\n\t\t\t title={props.children}\n\t\t\t class={style.latex}\n\t\t/>\n\t);\n}\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"title\":\"title__3ZVpg\",\"contents\":\"contents__20_NI\"};","import style from \"./Example.less\";\r\nimport {Component} from \"preact\";\r\n\r\nexport default function(props) {\r\n return (\r\n <div class={style.example}>\r\n {props.children}\r\n </div>\r\n );\r\n}\r\n","import { options } from 'preact';\n\n/** @type {number} */\nlet currentIndex;\n\n/** @type {import('./internal').Component} */\nlet currentComponent;\n\n/** @type {Array<import('./internal').Component>} */\nlet afterPaintEffects = [];\n\nlet oldBeforeRender = options._render;\nlet oldAfterDiff = options.diffed;\nlet oldCommit = options._commit;\nlet oldBeforeUnmount = options.unmount;\n\nconst RAF_TIMEOUT = 100;\nlet prevRaf;\n\noptions._render = vnode => {\n\tif (oldBeforeRender) oldBeforeRender(vnode);\n\n\tcurrentComponent = vnode._component;\n\tcurrentIndex = 0;\n\n\tif (currentComponent.__hooks) {\n\t\tcurrentComponent.__hooks._pendingEffects.forEach(invokeCleanup);\n\t\tcurrentComponent.__hooks._pendingEffects.forEach(invokeEffect);\n\t\tcurrentComponent.__hooks._pendingEffects = [];\n\t}\n};\n\noptions.diffed = vnode => {\n\tif (oldAfterDiff) oldAfterDiff(vnode);\n\n\tconst c = vnode._component;\n\tif (!c) return;\n\n\tconst hooks = c.__hooks;\n\tif (hooks) {\n\t\tif (hooks._pendingEffects.length) {\n\t\t\tafterPaint(afterPaintEffects.push(c));\n\t\t}\n\t}\n};\n\noptions._commit = (vnode, commitQueue) => {\n\tcommitQueue.some(component => {\n\t\ttry {\n\t\t\tcomponent._renderCallbacks.forEach(invokeCleanup);\n\t\t\tcomponent._renderCallbacks = component._renderCallbacks.filter(cb =>\n\t\t\t\tcb._value ? invokeEffect(cb) : true\n\t\t\t);\n\t\t} catch (e) {\n\t\t\tcommitQueue.some(c => {\n\t\t\t\tif (c._renderCallbacks) c._renderCallbacks = [];\n\t\t\t});\n\t\t\tcommitQueue = [];\n\t\t\toptions._catchError(e, component._vnode);\n\t\t}\n\t});\n\n\tif (oldCommit) oldCommit(vnode, commitQueue);\n};\n\noptions.unmount = vnode => {\n\tif (oldBeforeUnmount) oldBeforeUnmount(vnode);\n\n\tconst c = vnode._component;\n\tif (!c) return;\n\n\tconst hooks = c.__hooks;\n\tif (hooks) {\n\t\ttry {\n\t\t\thooks._list.forEach(hook => hook._cleanup && hook._cleanup());\n\t\t} catch (e) {\n\t\t\toptions._catchError(e, c._vnode);\n\t\t}\n\t}\n};\n\n/**\n * Get a hook's state from the currentComponent\n * @param {number} index The index of the hook to get\n * @returns {import('./internal').HookState}\n */\nfunction getHookState(index) {\n\tif (options._hook) options._hook(currentComponent);\n\t// Largely inspired by:\n\t// * https://github.com/michael-klein/funcy.js/blob/f6be73468e6ec46b0ff5aa3cc4c9baf72a29025a/src/hooks/core_hooks.mjs\n\t// * https://github.com/michael-klein/funcy.js/blob/650beaa58c43c33a74820a3c98b3c7079cf2e333/src/renderer.mjs\n\t// Other implementations to look at:\n\t// * https://codesandbox.io/s/mnox05qp8\n\tconst hooks =\n\t\tcurrentComponent.__hooks ||\n\t\t(currentComponent.__hooks = { _list: [], _pendingEffects: [] });\n\n\tif (index >= hooks._list.length) {\n\t\thooks._list.push({});\n\t}\n\treturn hooks._list[index];\n}\n\n/**\n * @param {import('./index').StateUpdater<any>} initialState\n */\nexport function useState(initialState) {\n\treturn useReducer(invokeOrReturn, initialState);\n}\n\n/**\n * @param {import('./index').Reducer<any, any>} reducer\n * @param {import('./index').StateUpdater<any>} initialState\n * @param {(initialState: any) => void} [init]\n * @returns {[ any, (state: any) => void ]}\n */\nexport function useReducer(reducer, initialState, init) {\n\t/** @type {import('./internal').ReducerHookState} */\n\tconst hookState = getHookState(currentIndex++);\n\tif (!hookState._component) {\n\t\thookState._component = currentComponent;\n\n\t\thookState._value = [\n\t\t\t!init ? invokeOrReturn(undefined, initialState) : init(initialState),\n\n\t\t\taction => {\n\t\t\t\tconst nextValue = reducer(hookState._value[0], action);\n\t\t\t\tif (hookState._value[0] !== nextValue) {\n\t\t\t\t\thookState._value[0] = nextValue;\n\t\t\t\t\thookState._component.setState({});\n\t\t\t\t}\n\t\t\t}\n\t\t];\n\t}\n\n\treturn hookState._value;\n}\n\n/**\n * @param {import('./internal').Effect} callback\n * @param {any[]} args\n */\nexport function useEffect(callback, args) {\n\t/** @type {import('./internal').EffectHookState} */\n\tconst state = getHookState(currentIndex++);\n\tif (argsChanged(state._args, args)) {\n\t\tstate._value = callback;\n\t\tstate._args = args;\n\n\t\tcurrentComponent.__hooks._pendingEffects.push(state);\n\t}\n}\n\n/**\n * @param {import('./internal').Effect} callback\n * @param {any[]} args\n */\nexport function useLayoutEffect(callback, args) {\n\t/** @type {import('./internal').EffectHookState} */\n\tconst state = getHookState(currentIndex++);\n\tif (argsChanged(state._args, args)) {\n\t\tstate._value = callback;\n\t\tstate._args = args;\n\n\t\tcurrentComponent._renderCallbacks.push(state);\n\t}\n}\n\nexport function useRef(initialValue) {\n\treturn useMemo(() => ({ current: initialValue }), []);\n}\n\n/**\n * @param {object} ref\n * @param {() => object} createHandle\n * @param {any[]} args\n */\nexport function useImperativeHandle(ref, createHandle, args) {\n\tuseLayoutEffect(\n\t\t() => {\n\t\t\tif (typeof ref == 'function') ref(createHandle());\n\t\t\telse if (ref) ref.current = createHandle();\n\t\t},\n\t\targs == null ? args : args.concat(ref)\n\t);\n}\n\n/**\n * @param {() => any} factory\n * @param {any[]} args\n */\nexport function useMemo(factory, args) {\n\t/** @type {import('./internal').MemoHookState} */\n\tconst state = getHookState(currentIndex++);\n\tif (argsChanged(state._args, args)) {\n\t\tstate._args = args;\n\t\tstate._factory = factory;\n\t\treturn (state._value = factory());\n\t}\n\n\treturn state._value;\n}\n\n/**\n * @param {() => void} callback\n * @param {any[]} args\n */\nexport function useCallback(callback, args) {\n\treturn useMemo(() => callback, args);\n}\n\n/**\n * @param {import('./internal').PreactContext} context\n */\nexport function useContext(context) {\n\tconst provider = currentComponent.context[context._id];\n\tif (!provider) return context._defaultValue;\n\tconst state = getHookState(currentIndex++);\n\t// This is probably not safe to convert to \"!\"\n\tif (state._value == null) {\n\t\tstate._value = true;\n\t\tprovider.sub(currentComponent);\n\t}\n\treturn provider.props.value;\n}\n\n/**\n * Display a custom label for a custom hook for the devtools panel\n * @type {<T>(value: T, cb?: (value: T) => string | number) => void}\n */\nexport function useDebugValue(value, formatter) {\n\tif (options.useDebugValue) {\n\t\toptions.useDebugValue(formatter ? formatter(value) : value);\n\t}\n}\n\nexport function useErrorBoundary(cb) {\n\tconst state = getHookState(currentIndex++);\n\tconst errState = useState();\n\tstate._value = cb;\n\tif (!currentComponent.componentDidCatch) {\n\t\tcurrentComponent.componentDidCatch = err => {\n\t\t\tif (state._value) state._value(err);\n\t\t\terrState[1](err);\n\t\t};\n\t}\n\treturn [\n\t\terrState[0],\n\t\t() => {\n\t\t\terrState[1](undefined);\n\t\t}\n\t];\n}\n\n/**\n * After paint effects consumer.\n */\nfunction flushAfterPaintEffects() {\n\tafterPaintEffects.some(component => {\n\t\tif (component._parentDom) {\n\t\t\ttry {\n\t\t\t\tcomponent.__hooks._pendingEffects.forEach(invokeCleanup);\n\t\t\t\tcomponent.__hooks._pendingEffects.forEach(invokeEffect);\n\t\t\t\tcomponent.__hooks._pendingEffects = [];\n\t\t\t} catch (e) {\n\t\t\t\tcomponent.__hooks._pendingEffects = [];\n\t\t\t\toptions._catchError(e, component._vnode);\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t});\n\tafterPaintEffects = [];\n}\n\n/**\n * Schedule a callback to be invoked after the browser has a chance to paint a new frame.\n * Do this by combining requestAnimationFrame (rAF) + setTimeout to invoke a callback after\n * the next browser frame.\n *\n * Also, schedule a timeout in parallel to the the rAF to ensure the callback is invoked\n * even if RAF doesn't fire (for example if the browser tab is not visible)\n *\n * @param {() => void} callback\n */\nfunction afterNextFrame(callback) {\n\tconst done = () => {\n\t\tclearTimeout(timeout);\n\t\tcancelAnimationFrame(raf);\n\t\tsetTimeout(callback);\n\t};\n\tconst timeout = setTimeout(done, RAF_TIMEOUT);\n\n\tlet raf;\n\tif (typeof window != 'undefined') {\n\t\traf = requestAnimationFrame(done);\n\t}\n}\n\n// Note: if someone used options.debounceRendering = requestAnimationFrame,\n// then effects will ALWAYS run on the NEXT frame instead of the current one, incurring a ~16ms delay.\n// Perhaps this is not such a big deal.\n/**\n * Schedule afterPaintEffects flush after the browser paints\n * @param {number} newQueueLength\n */\nfunction afterPaint(newQueueLength) {\n\tif (newQueueLength === 1 || prevRaf !== options.requestAnimationFrame) {\n\t\tprevRaf = options.requestAnimationFrame;\n\t\t(prevRaf || afterNextFrame)(flushAfterPaintEffects);\n\t}\n}\n\n/**\n * @param {import('./internal').EffectHookState} hook\n */\nfunction invokeCleanup(hook) {\n\tif (hook._cleanup) hook._cleanup();\n}\n\n/**\n * Invoke a Hook's effect\n * @param {import('./internal').EffectHookState} hook\n */\nfunction invokeEffect(hook) {\n\tconst result = hook._value();\n\tif (typeof result == 'function') hook._cleanup = result;\n}\n\n/**\n * @param {any[]} oldArgs\n * @param {any[]} newArgs\n */\nfunction argsChanged(oldArgs, newArgs) {\n\treturn !oldArgs || newArgs.some((arg, index) => arg !== oldArgs[index]);\n}\n\nfunction invokeOrReturn(arg, f) {\n\treturn typeof f == 'function' ? f(arg) : f;\n}\n","import style from \"./Box.less\";\r\n\r\nexport const BoxColors = Object.freeze({\r\n RED: style.red,\r\n ORANGE: style.orange,\r\n YELLOW: style.yellow,\r\n LIME: style.lime,\r\n CYAN: style.cyan,\r\n BLUE: style.blue,\r\n MAGENTA: style.magenta,\r\n DEFAULT: style.default\r\n})\r\n\r\nexport default function (props) {\r\n let color = BoxColors.DEFAULT;\r\n if(props.color) {\r\n color = props.color;\r\n }\r\n\r\n return (\r\n <div class={style.box + \" \" + color}>\r\n {props.children}\r\n </div>\r\n );\r\n}\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"split\":\"split__3dL9r\",\"splitparent\":\"splitparent__2H-vS\",\"splitchild\":\"splitchild__1B-Jt\"};","import style from \"./Panel.less\";\nimport Box from \"./Box\";\n\nexport default function(props) {\n\treturn (\n\t\t<Box color={props.color}>\n\t\t\t<h3 class={style.title}>\n\t\t\t\t{props.title}\n\t\t\t</h3>\n\t\t\t<div class={style.contents}>\n\t\t\t\t{props.children}\n\t\t\t</div>\n\t\t</Box>\n\t);\n}\n","import style from \"./todo.css\";\nimport { Component } from 'preact';\n\nexport default class Todo extends Component {\n\trender() {\n\t\treturn <span class={style.todo}>{this.props.children}</span>;\n\t}\n}\n","import style from \"./split.css\";\nimport { Component } from 'preact';\n\nexport default class Split extends Component {\n\trender() {\n\t let title = null;\n\t if(this.props.title !== undefined) {\n title = (<h2>{this.props.title}</h2>)\n }\n\n let children;\n if(Array.isArray(this.props.children)) {\n children = this.props.children.map(element => {\n return (<div class={style.splitchild}>{element}</div>);\n });\n }\n else {\n children = <div class={style.splitchild}>{this.props.children}</div>;\n }\n\t\treturn (\n\t <div class={style.split}>\n {title}\n <div class={style.splitparent}>{children}</div>\n </div>\n );\n\t}\n}\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"latex\":\"latex__3zlIu\"};","import {createContext} from \"preact\";\r\n\r\nexport default createContext(true);\r\n"],"sourceRoot":""} |