Mirror: 🎩 A tiny but capable push & pull stream library for TypeScript and Flow
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Update Rollup and readd flow typings generation

+148 -326
+1 -1
index.js.flow
··· 1 1 // @flow 2 2 3 - declare export * from "./dist/types/src/Wonka.js.flow" 3 + declare export * from "./dist/types/index.js.flow"
+5 -1
package.json
··· 48 48 "@rollup/plugin-buble": "^0.21.3", 49 49 "@rollup/plugin-commonjs": "^22.0.2", 50 50 "@rollup/plugin-node-resolve": "^13.3.0", 51 + "@rollup/plugin-typescript": "^8.3.4", 52 + "@rollup/pluginutils": "^4.2.1", 51 53 "@sucrase/jest-plugin": "^2.2.1", 52 54 "@types/jest": "^28.1.6", 53 55 "@types/node": "^18.7.2", ··· 55 57 "callbag-from-iter": "^1.3.0", 56 58 "callbag-iterate": "^1.0.0", 57 59 "callbag-take": "^1.5.0", 60 + "flowgen": "^1.20.1", 61 + "glob": "^8.0.3", 58 62 "jest": "^28.1.3", 59 63 "rollup": "^2.77.3", 60 64 "rollup-plugin-terser": "^7.0.2", 61 - "rollup-plugin-typescript2": "^0.32.1", 65 + "tslib": "^2.4.0", 62 66 "typescript": "^4.7.4", 63 67 "zen-observable": "^0.8.15" 64 68 }
+17 -15
rollup.config.js
··· 1 1 import commonjs from '@rollup/plugin-commonjs'; 2 2 import resolve from '@rollup/plugin-node-resolve'; 3 - import typescript from 'rollup-plugin-typescript2'; 3 + import typescript from '@rollup/plugin-typescript'; 4 4 import buble from '@rollup/plugin-buble'; 5 5 import { terser } from 'rollup-plugin-terser'; 6 + 7 + import flowTypings from './scripts/flow-typings-plugin'; 6 8 7 9 const plugins = [ 8 10 resolve({ ··· 13 15 }), 14 16 15 17 commonjs({ 16 - ignoreGloba: true, 18 + ignoreGlobal: true, 17 19 include: /\/node_modules\//, 18 20 extensions: ['.mjs', '.js', '.ts'], 19 21 }), 20 22 21 23 typescript({ 22 - useTsconfigDeclarationDir: true, 23 - tsconfigOverride: { 24 - exclude: [ 25 - 'src/**/*.test.ts', 26 - '**/__tests__/*', 27 - ], 28 - compilerOptions: { 29 - sourceMap: true, 30 - noEmit: false, 31 - declaration: true, 32 - declarationDir: './dist/types/', 33 - target: 'esnext', 34 - }, 24 + typescript: require('typescript'), 25 + exclude: [ 26 + 'src/**/*.test.ts', 27 + '**/__tests__/*', 28 + ], 29 + compilerOptions: { 30 + sourceMap: true, 31 + noEmit: false, 32 + declaration: true, 33 + declarationDir: './dist/types/', 34 + target: 'esnext', 35 35 }, 36 36 }), 37 + 38 + flowTypings(), 37 39 38 40 buble({ 39 41 transforms: {
+24
scripts/flow-typings-plugin.js
··· 1 + import { resolve, basename, dirname, join } from 'path'; 2 + import { writeFileSync } from 'fs'; 3 + import { sync as glob } from 'glob'; 4 + import { compiler, beautify } from 'flowgen'; 5 + 6 + function flowTypings() { 7 + return { 8 + name: "flow-typings", 9 + async writeBundle() { 10 + const cwd = process.cwd(); 11 + for (const file of glob('dist/types/**/*.d.ts')) { 12 + const fullpath = resolve(cwd, file); 13 + const flowdef = beautify(compiler.compileDefinitionFile(fullpath)); 14 + const name = basename(fullpath, '.d.ts'); 15 + const filepath = dirname(fullpath); 16 + const newpath = join(filepath, name + '.js.flow'); 17 + const definition = flowdef.replace(/import/g, 'import type'); 18 + writeFileSync(newpath, '// @flow\n\n' + definition); 19 + } 20 + } 21 + }; 22 + } 23 + 24 + export default flowTypings;
-70
scripts/generate-flow-files.js
··· 1 - #!/usr/bin/env node 2 - 3 - // This CLI generates .js.flow definitions from .d.ts 4 - // TS definitions. 5 - // It accepts files to generate definitions for via 6 - // argv; 7 - 8 - const path = require('path'); 9 - const fs = require('fs'); 10 - const globby = require('globby'); 11 - 12 - const { promisify } = require('util'); 13 - const { compiler, beautify } = require('flowgen'); 14 - 15 - const cwd = process.cwd(); 16 - const writeFile = promisify(fs.writeFile); 17 - const readFile = promisify(fs.readFile); 18 - const preamble = '// @flow\n\n'; 19 - 20 - const genEntry = async () => { 21 - try { 22 - fs.mkdirSync(path.resolve(cwd, 'dist')); 23 - } catch (err) { 24 - if (err.code !== 'EEXIST') { 25 - throw err; 26 - } 27 - } 28 - 29 - let entry = await readFile(path.resolve(cwd, 'index.js.flow'), { encoding: 'utf8' }); 30 - 31 - entry = entry.replace(/.\/dist\//g, './'); 32 - 33 - const outputCJS = path.resolve(cwd, 'dist/wonka.js.flow'); 34 - const outputES = path.resolve(cwd, 'dist/wonka.mjs.flow'); 35 - 36 - return Promise.all([ 37 - writeFile(outputCJS, entry, { encoding: 'utf8' }), 38 - writeFile(outputES, entry, { encoding: 'utf8' }) 39 - ]); 40 - }; 41 - 42 - const gen = async () => { 43 - const input = await globby('dist/types/**/*.d.ts'); 44 - console.log(`Compiling ${input.length} TS definitions to Flow...`); 45 - 46 - const defs = input.map(filename => { 47 - const fullpath = path.resolve(cwd, filename); 48 - const flowdef = beautify(compiler.compileDefinitionFile(fullpath)); 49 - return { fullpath, flowdef }; 50 - }); 51 - 52 - const write = defs.map(({ fullpath, flowdef }) => { 53 - const basename = path.basename(fullpath, '.d.ts'); 54 - const filepath = path.dirname(fullpath); 55 - const newpath = path.join(filepath, basename + '.js.flow'); 56 - const definition = flowdef.replace(/import/g, 'import type'); 57 - return writeFile(newpath, preamble + definition); 58 - }); 59 - 60 - return Promise.all([...write, genEntry()]); 61 - }; 62 - 63 - gen() 64 - .then(() => { 65 - process.exit(0); 66 - }) 67 - .catch(err => { 68 - console.error(err.message); 69 - process.exit(1); 70 - });
-5
scripts/jest-transform-esm.js
··· 1 - const { createTransformer } = require('babel-jest'); 2 - 3 - module.exports = createTransformer({ 4 - plugins: [require.resolve('@babel/plugin-transform-modules-commonjs')] 5 - });
-183
scripts/minify-bucklescript-plugin.js
··· 1 - import { transformSync as transform } from '@babel/core'; 2 - import { createFilter } from 'rollup-pluginutils'; 3 - 4 - function unwrapStatePlugin({ types: t }) { 5 - return { 6 - pre() { 7 - this.props = new Map(); 8 - this.test = (node) => 9 - /state$/i.test(node.id.name) || 10 - (node.init.properties.length === 1 && node.init.properties[0].key.name === 'contents'); 11 - }, 12 - visitor: { 13 - VariableDeclarator(path) { 14 - if ( 15 - t.isIdentifier(path.node.id) && 16 - t.isObjectExpression(path.node.init) && 17 - path.node.init.properties.every( 18 - (prop) => t.isObjectProperty(prop) && t.isIdentifier(prop.key) 19 - ) && 20 - this.test(path.node) 21 - ) { 22 - const id = path.node.id.name; 23 - const properties = path.node.init.properties; 24 - const propNames = new Set(properties.map((x) => x.key.name)); 25 - const decl = properties.map((prop) => { 26 - const key = `${id}$${prop.key.name}`; 27 - return t.variableDeclarator(t.identifier(key), prop.value); 28 - }); 29 - 30 - this.props.set(id, propNames); 31 - path.parentPath.replaceWithMultiple(t.variableDeclaration('let', decl)); 32 - } 33 - }, 34 - MemberExpression(path) { 35 - if ( 36 - t.isIdentifier(path.node.object) && 37 - this.props.has(path.node.object.name) && 38 - t.isIdentifier(path.node.property) && 39 - this.props.get(path.node.object.name).has(path.node.property.name) 40 - ) { 41 - const id = path.node.object.name; 42 - const propName = path.node.property.name; 43 - path.replaceWith(t.identifier(`${id}$${propName}`)); 44 - } 45 - }, 46 - }, 47 - }; 48 - } 49 - 50 - function curryGuaranteePlugin({ types: t }) { 51 - const curryFnName = /^_(\d)$/; 52 - const lengthId = t.identifier('length'); 53 - const bindId = t.identifier('bind'); 54 - 55 - return { 56 - visitor: { 57 - CallExpression(path) { 58 - if (!t.isIdentifier(path.node.callee) || !curryFnName.test(path.node.callee.name)) { 59 - return; 60 - } 61 - 62 - const callFn = path.node.arguments[0]; 63 - const callArgs = path.node.arguments.slice(1); 64 - 65 - // Check whether the value of the call is unused 66 - if (t.isExpressionStatement(path.parent)) { 67 - path.replaceWith(t.callExpression(callFn, callArgs)); 68 - return; 69 - } 70 - 71 - // Check whether the callee is a local function definition whose arity matches 72 - if (t.isIdentifier(callFn) && path.scope.hasBinding(callFn.name)) { 73 - const callFnDefinition = path.scope.getBinding(callFn.name).path.node; 74 - if ( 75 - t.isFunctionDeclaration(callFnDefinition) && 76 - callFnDefinition.params.length === callArgs.length 77 - ) { 78 - path.replaceWith(t.callExpression(callFn, callArgs)); 79 - return; 80 - } 81 - } 82 - 83 - // Special case since sources don't return any value 84 - if ( 85 - t.isIdentifier(callFn) && 86 - callFn.name === 'source' && 87 - t.isReturnStatement(path.parent) 88 - ) { 89 - path.replaceWith(t.callExpression(callFn, callArgs)); 90 - return; 91 - } 92 - 93 - const arityLiteral = t.numericLiteral(callArgs.length); 94 - const argIds = callArgs.map((init) => { 95 - if (t.isIdentifier(init)) return init; 96 - const id = path.scope.generateUidIdentifierBasedOnNode(path.node.id); 97 - path.scope.push({ id, init }); 98 - return id; 99 - }); 100 - 101 - path.replaceWith( 102 - t.conditionalExpression( 103 - t.binaryExpression('===', t.memberExpression(callFn, lengthId), arityLiteral), 104 - t.callExpression(callFn, argIds), 105 - t.callExpression(t.memberExpression(callFn, bindId), [t.nullLiteral()].concat(argIds)) 106 - ) 107 - ); 108 - }, 109 - }, 110 - }; 111 - } 112 - 113 - function squashImplicitUnitReturn({ types: t }) { 114 - return { 115 - visitor: { 116 - ReturnStatement(path) { 117 - if ( 118 - t.isCallExpression(path.node.argument) && 119 - t.isIdentifier(path.node.argument.callee) && 120 - (path.node.argument.callee.name === 'sink' || path.node.argument.callee.name === 'source') 121 - ) { 122 - path.replaceWithMultiple([ 123 - t.expressionStatement(path.node.argument), 124 - t.returnStatement(), 125 - ]); 126 - } 127 - }, 128 - Function: { 129 - exit(functionPath) { 130 - if (t.isIdentifier(functionPath.id) && functionPath.id.name === 'valFromOption') return; 131 - 132 - let hasEmptyReturn = false; 133 - let hasCallReturnOnly = true; 134 - functionPath.traverse({ 135 - Function(innerPath) { 136 - innerPath.skip(); 137 - }, 138 - ReturnStatement: { 139 - enter(path) { 140 - if (path.node.argument === null) { 141 - hasEmptyReturn = true; 142 - } else if (!t.isCallExpression(path.node.argument)) { 143 - hasCallReturnOnly = false; 144 - } 145 - }, 146 - exit(path) { 147 - if (hasEmptyReturn && hasCallReturnOnly && path.node.argument !== null) { 148 - path.replaceWithMultiple([ 149 - t.expressionStatement(path.node.argument), 150 - t.returnStatement(), 151 - ]); 152 - } 153 - }, 154 - }, 155 - }); 156 - }, 157 - }, 158 - }, 159 - }; 160 - } 161 - 162 - function cleanup(opts = {}) { 163 - const filter = createFilter(opts.include, opts.exclude, { 164 - resolve: false, 165 - }); 166 - 167 - return { 168 - name: 'minifyBucklescript', 169 - 170 - renderChunk(code, chunk) { 171 - if (!filter(chunk.fileName)) { 172 - return null; 173 - } 174 - 175 - return transform(code, { 176 - plugins: [unwrapStatePlugin, curryGuaranteePlugin, squashImplicitUnitReturn], 177 - babelrc: false, 178 - }); 179 - }, 180 - }; 181 - } 182 - 183 - export default cleanup;
+2 -2
src/types.ts
··· 16 16 tag: T 17 17 } 18 18 19 - export type Start<_T> = (Tag<SignalKind.Start> & [talkback: TalkbackFn]) 20 - export type Push<T> = (Tag<SignalKind.Push> & [value: T]) 19 + export type Start<_T> = (Tag<SignalKind.Start> & [TalkbackFn]) 20 + export type Push<T> = (Tag<SignalKind.Push> & [T]) 21 21 export type Signal<T> = Start<T> | Push<T> | SignalKind.End; 22 22 23 23 export type Sink<T> = (signal: Signal<T>) => void;
+99 -49
yarn.lock
··· 10 10 "@jridgewell/gen-mapping" "^0.1.0" 11 11 "@jridgewell/trace-mapping" "^0.3.9" 12 12 13 - "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.18.6": 13 + "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7", "@babel/code-frame@^7.18.6": 14 14 version "7.18.6" 15 15 resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" 16 16 integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== ··· 146 146 "@babel/traverse" "^7.18.9" 147 147 "@babel/types" "^7.18.9" 148 148 149 - "@babel/highlight@^7.18.6": 149 + "@babel/highlight@^7.16.7", "@babel/highlight@^7.18.6": 150 150 version "7.18.6" 151 151 resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf" 152 152 integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== ··· 581 581 is-module "^1.0.0" 582 582 resolve "^1.19.0" 583 583 584 + "@rollup/plugin-typescript@^8.3.4": 585 + version "8.3.4" 586 + resolved "https://registry.yarnpkg.com/@rollup/plugin-typescript/-/plugin-typescript-8.3.4.tgz#45cdc0787b658b37d0362c705d8de86bc8bc040e" 587 + integrity sha512-wt7JnYE9antX6BOXtsxGoeVSu4dZfw0dU3xykfOQ4hC3EddxRbVG/K0xiY1Wup7QOHJcjLYXWAn0Kx9Z1SBHHg== 588 + dependencies: 589 + "@rollup/pluginutils" "^3.1.0" 590 + resolve "^1.17.0" 591 + 584 592 "@rollup/pluginutils@^3.0.8", "@rollup/pluginutils@^3.1.0": 585 593 version "3.1.0" 586 594 resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" ··· 590 598 estree-walker "^1.0.1" 591 599 picomatch "^2.2.2" 592 600 593 - "@rollup/pluginutils@^4.1.2": 601 + "@rollup/pluginutils@^4.2.1": 594 602 version "4.2.1" 595 603 resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-4.2.1.tgz#e6c6c3aba0744edce3fb2074922d3776c0af2a6d" 596 604 integrity sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ== ··· 891 899 balanced-match "^1.0.0" 892 900 concat-map "0.0.1" 893 901 902 + brace-expansion@^2.0.1: 903 + version "2.0.1" 904 + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" 905 + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== 906 + dependencies: 907 + balanced-match "^1.0.0" 908 + 894 909 braces@^3.0.2: 895 910 version "3.0.2" 896 911 resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" ··· 1067 1082 resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" 1068 1083 integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== 1069 1084 1085 + commander@^6.1.0: 1086 + version "6.2.1" 1087 + resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" 1088 + integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== 1089 + 1070 1090 commondir@^1.0.1: 1071 1091 version "1.0.1" 1072 1092 resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" ··· 1222 1242 dependencies: 1223 1243 to-regex-range "^5.0.1" 1224 1244 1225 - find-cache-dir@^3.3.2: 1226 - version "3.3.2" 1227 - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz#b30c5b6eff0730731aea9bbd9dbecbd80256d64b" 1228 - integrity sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig== 1229 - dependencies: 1230 - commondir "^1.0.1" 1231 - make-dir "^3.0.2" 1232 - pkg-dir "^4.1.0" 1233 - 1234 1245 find-up@^4.0.0, find-up@^4.1.0: 1235 1246 version "4.1.0" 1236 1247 resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" ··· 1239 1250 locate-path "^5.0.0" 1240 1251 path-exists "^4.0.0" 1241 1252 1242 - fs-extra@^10.0.0: 1243 - version "10.1.0" 1244 - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" 1245 - integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== 1253 + flowgen@^1.20.1: 1254 + version "1.20.1" 1255 + resolved "https://registry.yarnpkg.com/flowgen/-/flowgen-1.20.1.tgz#336871d59a36980fbe2c3de553bd558f06a46e24" 1256 + integrity sha512-Wus3KAhsOF7CiZGkBKZawf0AJXe06Wot6UGQt7h9QS6MBtBkFgG30wTAgpy1byA3FKYb059vO341XtN8LUhenQ== 1246 1257 dependencies: 1247 - graceful-fs "^4.2.0" 1248 - jsonfile "^6.0.1" 1249 - universalify "^2.0.0" 1258 + "@babel/code-frame" "^7.16.7" 1259 + "@babel/highlight" "^7.16.7" 1260 + commander "^6.1.0" 1261 + lodash "^4.17.20" 1262 + prettier "^2.5.1" 1263 + shelljs "^0.8.4" 1264 + typescript "~4.4.4" 1265 + typescript-compiler "^1.4.1-2" 1250 1266 1251 1267 fs.realpath@^1.0.0: 1252 1268 version "1.0.0" ··· 1295 1311 once "^1.3.0" 1296 1312 path-is-absolute "^1.0.0" 1297 1313 1298 - glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: 1314 + glob@^7.0.0, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: 1299 1315 version "7.2.3" 1300 1316 resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" 1301 1317 integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== ··· 1307 1323 once "^1.3.0" 1308 1324 path-is-absolute "^1.0.0" 1309 1325 1326 + glob@^8.0.3: 1327 + version "8.0.3" 1328 + resolved "https://registry.yarnpkg.com/glob/-/glob-8.0.3.tgz#415c6eb2deed9e502c68fa44a272e6da6eeca42e" 1329 + integrity sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ== 1330 + dependencies: 1331 + fs.realpath "^1.0.0" 1332 + inflight "^1.0.4" 1333 + inherits "2" 1334 + minimatch "^5.0.1" 1335 + once "^1.3.0" 1336 + 1310 1337 globals@^11.1.0: 1311 1338 version "11.12.0" 1312 1339 resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" 1313 1340 integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== 1314 1341 1315 - graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.9: 1342 + graceful-fs@^4.2.9: 1316 1343 version "4.2.10" 1317 1344 resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" 1318 1345 integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== ··· 1369 1396 version "2.0.4" 1370 1397 resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 1371 1398 integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 1399 + 1400 + interpret@^1.0.0: 1401 + version "1.4.0" 1402 + resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" 1403 + integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== 1372 1404 1373 1405 is-arrayish@^0.2.1: 1374 1406 version "0.2.1" ··· 1868 1900 resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" 1869 1901 integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== 1870 1902 1871 - jsonfile@^6.0.1: 1872 - version "6.1.0" 1873 - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" 1874 - integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== 1875 - dependencies: 1876 - universalify "^2.0.0" 1877 - optionalDependencies: 1878 - graceful-fs "^4.1.6" 1879 - 1880 1903 kleur@^3.0.3: 1881 1904 version "3.0.3" 1882 1905 resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" ··· 1899 1922 dependencies: 1900 1923 p-locate "^4.1.0" 1901 1924 1925 + lodash@^4.17.20: 1926 + version "4.17.21" 1927 + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" 1928 + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== 1929 + 1902 1930 lru-cache@^6.0.0: 1903 1931 version "6.0.0" 1904 1932 resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" ··· 1913 1941 dependencies: 1914 1942 sourcemap-codec "^1.4.8" 1915 1943 1916 - make-dir@^3.0.0, make-dir@^3.0.2: 1944 + make-dir@^3.0.0: 1917 1945 version "3.1.0" 1918 1946 resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" 1919 1947 integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== ··· 1951 1979 integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== 1952 1980 dependencies: 1953 1981 brace-expansion "^1.1.7" 1982 + 1983 + minimatch@^5.0.1: 1984 + version "5.1.0" 1985 + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7" 1986 + integrity sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg== 1987 + dependencies: 1988 + brace-expansion "^2.0.1" 1954 1989 1955 1990 minimist@^1.2.5: 1956 1991 version "1.2.6" ··· 2088 2123 resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" 2089 2124 integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== 2090 2125 2091 - pkg-dir@^4.1.0, pkg-dir@^4.2.0: 2126 + pkg-dir@^4.2.0: 2092 2127 version "4.2.0" 2093 2128 resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" 2094 2129 integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== 2095 2130 dependencies: 2096 2131 find-up "^4.0.0" 2132 + 2133 + prettier@^2.5.1: 2134 + version "2.7.1" 2135 + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.7.1.tgz#e235806850d057f97bb08368a4f7d899f7760c64" 2136 + integrity sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g== 2097 2137 2098 2138 pretty-format@^28.0.0, pretty-format@^28.1.3: 2099 2139 version "28.1.3" ··· 2124 2164 version "18.2.0" 2125 2165 resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" 2126 2166 integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== 2167 + 2168 + rechoir@^0.6.2: 2169 + version "0.6.2" 2170 + resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" 2171 + integrity sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw== 2172 + dependencies: 2173 + resolve "^1.1.6" 2127 2174 2128 2175 regenerate-unicode-properties@^8.0.2: 2129 2176 version "8.2.0" ··· 2183 2230 resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" 2184 2231 integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== 2185 2232 2186 - resolve@^1.17.0, resolve@^1.19.0, resolve@^1.20.0: 2233 + resolve@^1.1.6, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.20.0: 2187 2234 version "1.22.1" 2188 2235 resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" 2189 2236 integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== ··· 2208 2255 jest-worker "^26.2.1" 2209 2256 serialize-javascript "^4.0.0" 2210 2257 terser "^5.0.0" 2211 - 2212 - rollup-plugin-typescript2@^0.32.1: 2213 - version "0.32.1" 2214 - resolved "https://registry.yarnpkg.com/rollup-plugin-typescript2/-/rollup-plugin-typescript2-0.32.1.tgz#470ded8e1965efac02043cc0ef4a7fa36bed83b9" 2215 - integrity sha512-RanO8bp1WbeMv0bVlgcbsFNCn+Y3rX7wF97SQLDxf0fMLsg0B/QFF005t4AsGUcDgF3aKJHoqt4JF2xVaABeKw== 2216 - dependencies: 2217 - "@rollup/pluginutils" "^4.1.2" 2218 - find-cache-dir "^3.3.2" 2219 - fs-extra "^10.0.0" 2220 - resolve "^1.20.0" 2221 - tslib "^2.4.0" 2222 2258 2223 2259 rollup@^2.77.3: 2224 2260 version "2.77.3" ··· 2267 2303 version "3.0.0" 2268 2304 resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" 2269 2305 integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== 2306 + 2307 + shelljs@^0.8.4: 2308 + version "0.8.5" 2309 + resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.5.tgz#de055408d8361bed66c669d2f000538ced8ee20c" 2310 + integrity sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow== 2311 + dependencies: 2312 + glob "^7.0.0" 2313 + interpret "^1.0.0" 2314 + rechoir "^0.6.2" 2270 2315 2271 2316 signal-exit@^3.0.3, signal-exit@^3.0.7: 2272 2317 version "3.0.7" ··· 2484 2529 resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" 2485 2530 integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== 2486 2531 2532 + typescript-compiler@^1.4.1-2: 2533 + version "1.4.1-2" 2534 + resolved "https://registry.yarnpkg.com/typescript-compiler/-/typescript-compiler-1.4.1-2.tgz#ba4f7db22d91534a1929d90009dce161eb72fd3f" 2535 + integrity sha512-EMopKmoAEJqA4XXRFGOb7eSBhmQMbBahW6P1Koayeatp0b4AW2q/bBqYWkpG7QVQc9HGQUiS4trx2ZHcnAaZUg== 2536 + 2487 2537 typescript@^4.7.4: 2488 2538 version "4.7.4" 2489 2539 resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.7.4.tgz#1a88596d1cf47d59507a1bcdfb5b9dfe4d488235" 2490 2540 integrity sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ== 2541 + 2542 + typescript@~4.4.4: 2543 + version "4.4.4" 2544 + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.4.4.tgz#2cd01a1a1f160704d3101fd5a58ff0f9fcb8030c" 2545 + integrity sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA== 2491 2546 2492 2547 unicode-canonical-property-names-ecmascript@^1.0.4: 2493 2548 version "1.0.4" ··· 2511 2566 version "1.1.0" 2512 2567 resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" 2513 2568 integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== 2514 - 2515 - universalify@^2.0.0: 2516 - version "2.0.0" 2517 - resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" 2518 - integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== 2519 2569 2520 2570 update-browserslist-db@^1.0.5: 2521 2571 version "1.0.5"