diff --git a/.all-contributorsrc b/.all-contributorsrc index b66aa0f055..79df1a226c 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -259,6 +259,24 @@ "bug", "code" ] + }, + { + "login": "chancyk", + "name": "Chancy Kennedy", + "avatar_url": "https://avatars1.githubusercontent.com/u/1731217?v=4", + "profile": "https://github.com/chancyk", + "contributions": [ + "financial" + ] + }, + { + "login": "Jarred-Sumner", + "name": "Jarred Sumner", + "avatar_url": "https://avatars1.githubusercontent.com/u/709451?v=4", + "profile": "https://jarredsumner.com", + "contributions": [ + "bug" + ] } ], "contributorsPerLine": 7, diff --git a/README.md b/README.md index bb1ef6e5fd..d478edd0a4 100644 --- a/README.md +++ b/README.md @@ -423,6 +423,8 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
Pedro Henriques dos Santos Teixeira

💵
Jamie Owen

🐛
Robert Kesteson

🐛 💻 +
Chancy Kennedy

💵 +
Jarred Sumner

🐛 diff --git a/assets/color/swatches-duo-bright.svg b/assets/color/swatches-duo-bright.svg new file mode 100644 index 0000000000..95b7941eb6 --- /dev/null +++ b/assets/color/swatches-duo-bright.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-duo-cool.svg b/assets/color/swatches-duo-cool.svg new file mode 100644 index 0000000000..6ae5224e1d --- /dev/null +++ b/assets/color/swatches-duo-cool.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-duo-dark.svg b/assets/color/swatches-duo-dark.svg new file mode 100644 index 0000000000..93597469f5 --- /dev/null +++ b/assets/color/swatches-duo-dark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-duo-fresh.svg b/assets/color/swatches-duo-fresh.svg new file mode 100644 index 0000000000..5f4258d571 --- /dev/null +++ b/assets/color/swatches-duo-fresh.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-duo-hard.svg b/assets/color/swatches-duo-hard.svg new file mode 100644 index 0000000000..5349176d8b --- /dev/null +++ b/assets/color/swatches-duo-hard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-duo-intense.svg b/assets/color/swatches-duo-intense.svg new file mode 100644 index 0000000000..bad59f11e4 --- /dev/null +++ b/assets/color/swatches-duo-intense.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-duo-light.svg b/assets/color/swatches-duo-light.svg new file mode 100644 index 0000000000..68afcebdc2 --- /dev/null +++ b/assets/color/swatches-duo-light.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-duo-neutral.svg b/assets/color/swatches-duo-neutral.svg new file mode 100644 index 0000000000..49823eea30 --- /dev/null +++ b/assets/color/swatches-duo-neutral.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-duo-soft.svg b/assets/color/swatches-duo-soft.svg new file mode 100644 index 0000000000..c9af2f227d --- /dev/null +++ b/assets/color/swatches-duo-soft.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-duo-warm.svg b/assets/color/swatches-duo-warm.svg new file mode 100644 index 0000000000..e2c3beadc1 --- /dev/null +++ b/assets/color/swatches-duo-warm.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-duo-weak.svg b/assets/color/swatches-duo-weak.svg new file mode 100644 index 0000000000..b362ede965 --- /dev/null +++ b/assets/color/swatches-duo-weak.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-ex01.svg b/assets/color/swatches-ex01.svg new file mode 100644 index 0000000000..34806a10d1 --- /dev/null +++ b/assets/color/swatches-ex01.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-ex02.svg b/assets/color/swatches-ex02.svg new file mode 100644 index 0000000000..08b60fa026 --- /dev/null +++ b/assets/color/swatches-ex02.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-green-bright.svg b/assets/color/swatches-green-bright.svg new file mode 100644 index 0000000000..51ba0c13fd --- /dev/null +++ b/assets/color/swatches-green-bright.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-green-cool.svg b/assets/color/swatches-green-cool.svg new file mode 100644 index 0000000000..9f9a4d2d47 --- /dev/null +++ b/assets/color/swatches-green-cool.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-green-dark.svg b/assets/color/swatches-green-dark.svg new file mode 100644 index 0000000000..f85860c8c2 --- /dev/null +++ b/assets/color/swatches-green-dark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-green-fresh.svg b/assets/color/swatches-green-fresh.svg new file mode 100644 index 0000000000..f03297c295 --- /dev/null +++ b/assets/color/swatches-green-fresh.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-green-hard.svg b/assets/color/swatches-green-hard.svg new file mode 100644 index 0000000000..0f4d5c6edc --- /dev/null +++ b/assets/color/swatches-green-hard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-green-intense.svg b/assets/color/swatches-green-intense.svg new file mode 100644 index 0000000000..c2245a98b2 --- /dev/null +++ b/assets/color/swatches-green-intense.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-green-light.svg b/assets/color/swatches-green-light.svg new file mode 100644 index 0000000000..16b37436c3 --- /dev/null +++ b/assets/color/swatches-green-light.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-green-neutral.svg b/assets/color/swatches-green-neutral.svg new file mode 100644 index 0000000000..18f1c9d374 --- /dev/null +++ b/assets/color/swatches-green-neutral.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-green-soft.svg b/assets/color/swatches-green-soft.svg new file mode 100644 index 0000000000..a6c63fa449 --- /dev/null +++ b/assets/color/swatches-green-soft.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-green-warm.svg b/assets/color/swatches-green-warm.svg new file mode 100644 index 0000000000..3eed818084 --- /dev/null +++ b/assets/color/swatches-green-warm.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-green-weak.svg b/assets/color/swatches-green-weak.svg new file mode 100644 index 0000000000..afdbecf083 --- /dev/null +++ b/assets/color/swatches-green-weak.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-range-bright.svg b/assets/color/swatches-range-bright.svg new file mode 100644 index 0000000000..b9ad885d8b --- /dev/null +++ b/assets/color/swatches-range-bright.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-range-cool.svg b/assets/color/swatches-range-cool.svg new file mode 100644 index 0000000000..6daa81828a --- /dev/null +++ b/assets/color/swatches-range-cool.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-range-dark.svg b/assets/color/swatches-range-dark.svg new file mode 100644 index 0000000000..027c891b59 --- /dev/null +++ b/assets/color/swatches-range-dark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-range-fresh.svg b/assets/color/swatches-range-fresh.svg new file mode 100644 index 0000000000..4953ef9ba5 --- /dev/null +++ b/assets/color/swatches-range-fresh.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-range-hard.svg b/assets/color/swatches-range-hard.svg new file mode 100644 index 0000000000..c620dab789 --- /dev/null +++ b/assets/color/swatches-range-hard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-range-intense.svg b/assets/color/swatches-range-intense.svg new file mode 100644 index 0000000000..89f3aad1b3 --- /dev/null +++ b/assets/color/swatches-range-intense.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-range-light.svg b/assets/color/swatches-range-light.svg new file mode 100644 index 0000000000..6593ca7542 --- /dev/null +++ b/assets/color/swatches-range-light.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-range-neutral.svg b/assets/color/swatches-range-neutral.svg new file mode 100644 index 0000000000..0bf115f90f --- /dev/null +++ b/assets/color/swatches-range-neutral.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-range-soft.svg b/assets/color/swatches-range-soft.svg new file mode 100644 index 0000000000..526ad59fce --- /dev/null +++ b/assets/color/swatches-range-soft.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-range-warm.svg b/assets/color/swatches-range-warm.svg new file mode 100644 index 0000000000..0497aa93cf --- /dev/null +++ b/assets/color/swatches-range-warm.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/color/swatches-range-weak.svg b/assets/color/swatches-range-weak.svg new file mode 100644 index 0000000000..3a24cd3ee0 --- /dev/null +++ b/assets/color/swatches-range-weak.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/examples/text-canvas-image.png b/assets/examples/text-canvas-image.png new file mode 100644 index 0000000000..15ea027667 Binary files /dev/null and b/assets/examples/text-canvas-image.png differ diff --git a/assets/text-canvas/ansi256.png b/assets/text-canvas/ansi256.png new file mode 100644 index 0000000000..38a3654b18 Binary files /dev/null and b/assets/text-canvas/ansi256.png differ diff --git a/examples/ellipse-proximity/package.json b/examples/ellipse-proximity/package.json index 07373607df..6a9a9eb55a 100644 --- a/examples/ellipse-proximity/package.json +++ b/examples/ellipse-proximity/package.json @@ -14,6 +14,7 @@ "@thi.ng/geom-closest-point": "latest", "@thi.ng/rdom": "latest", "@thi.ng/rdom-canvas": "latest", + "@thi.ng/rstream": "latest", "@thi.ng/rstream-gestures": "latest", "@thi.ng/transducers": "latest", "@thi.ng/vectors": "latest" diff --git a/examples/fft-synth/package.json b/examples/fft-synth/package.json index 948fb00a6a..7fa047f3ca 100644 --- a/examples/fft-synth/package.json +++ b/examples/fft-synth/package.json @@ -11,6 +11,7 @@ "build": "../../node_modules/.bin/snowpack build" }, "dependencies": { + "@thi.ng/api": "latest", "@thi.ng/atom": "latest", "@thi.ng/dsp": "latest", "@thi.ng/hdom-canvas": "latest", diff --git a/examples/hdom-canvas-shapes/package.json b/examples/hdom-canvas-shapes/package.json index 577d04c531..77e9f5ce79 100644 --- a/examples/hdom-canvas-shapes/package.json +++ b/examples/hdom-canvas-shapes/package.json @@ -14,7 +14,6 @@ "@thi.ng/color": "latest", "@thi.ng/dl-asset": "latest", "@thi.ng/geom": "latest", - "@thi.ng/hdom": "latest", "@thi.ng/hdom-canvas": "latest", "@thi.ng/hdom-components": "latest", "@thi.ng/hiccup": "latest", diff --git a/examples/hdom-local-render/package.json b/examples/hdom-local-render/package.json index 0a17c02186..ad7fc2c9b1 100644 --- a/examples/hdom-local-render/package.json +++ b/examples/hdom-local-render/package.json @@ -11,8 +11,10 @@ "build": "../../node_modules/.bin/snowpack build" }, "dependencies": { - "@thi.ng/api": "latest", + "@thi.ng/hdom": "latest", + "@thi.ng/memoize": "latest", "@thi.ng/rstream": "latest", + "@thi.ng/transducers": "latest", "@thi.ng/transducers-hdom": "latest" }, "browserslist": [ diff --git a/examples/hiccup-canvas-arcs/package.json b/examples/hiccup-canvas-arcs/package.json index 143f5cae1f..bf08074e5f 100644 --- a/examples/hiccup-canvas-arcs/package.json +++ b/examples/hiccup-canvas-arcs/package.json @@ -11,11 +11,14 @@ "build": "../../node_modules/.bin/snowpack build" }, "dependencies": { + "@thi.ng/color": "latest", "@thi.ng/geom": "latest", "@thi.ng/hiccup-canvas": "latest", "@thi.ng/math": "latest", + "@thi.ng/random": "latest", "@thi.ng/rstream": "latest", - "@thi.ng/transducers": "latest" + "@thi.ng/transducers": "latest", + "@thi.ng/vectors": "latest" }, "browserslist": [ "last 3 Chrome versions" diff --git a/examples/interceptor-basics2/package.json b/examples/interceptor-basics2/package.json index 43bfa63cbd..76e2ca3f7b 100644 --- a/examples/interceptor-basics2/package.json +++ b/examples/interceptor-basics2/package.json @@ -12,9 +12,9 @@ }, "dependencies": { "@thi.ng/api": "latest", + "@thi.ng/atom": "latest", "@thi.ng/hdom": "latest", - "@thi.ng/interceptors": "latest", - "@thi.ng/paths": "latest" + "@thi.ng/interceptors": "latest" }, "browserslist": [ "last 3 Chrome versions" diff --git a/examples/login-form/package.json b/examples/login-form/package.json index 6570057ebe..5d0ae87e4c 100644 --- a/examples/login-form/package.json +++ b/examples/login-form/package.json @@ -11,9 +11,9 @@ "build": "../../node_modules/.bin/snowpack build" }, "dependencies": { + "@thi.ng/api": "latest", "@thi.ng/atom": "latest", "@thi.ng/hdom": "latest", - "@thi.ng/paths": "latest", "@thi.ng/strings": "latest" }, "browserslist": [ @@ -23,7 +23,11 @@ "process": false }, "thi.ng": { - "readme": true + "readme": [ + "atom", + "hdom", + "strings" + ] }, "devDependencies": { "@types/snowpack-env": "^2.3.3" diff --git a/examples/mandelbrot/package.json b/examples/mandelbrot/package.json index ad5c04d1b2..31b67323e5 100644 --- a/examples/mandelbrot/package.json +++ b/examples/mandelbrot/package.json @@ -15,7 +15,6 @@ "@thi.ng/compose": "latest", "@thi.ng/dl-asset": "latest", "@thi.ng/equiv": "latest", - "@thi.ng/hdom": "latest", "@thi.ng/hdom-components": "latest", "@thi.ng/math": "latest", "@thi.ng/rstream": "latest", diff --git a/examples/package-stats/package.json b/examples/package-stats/package.json index 6b03edc49a..3fdc45f71f 100644 --- a/examples/package-stats/package.json +++ b/examples/package-stats/package.json @@ -21,8 +21,7 @@ "@thi.ng/math": "latest", "@thi.ng/paths": "latest", "@thi.ng/strings": "latest", - "@thi.ng/transducers": "latest", - "@thi.ng/vectors": "latest" + "@thi.ng/transducers": "latest" }, "browserslist": [ "last 3 Chrome versions" diff --git a/examples/rdom-basics/package.json b/examples/rdom-basics/package.json index 8f56b9a059..529d68106b 100644 --- a/examples/rdom-basics/package.json +++ b/examples/rdom-basics/package.json @@ -11,7 +11,6 @@ "build": "../../node_modules/.bin/snowpack build" }, "dependencies": { - "@thi.ng/api": "latest", "@thi.ng/checks": "latest", "@thi.ng/compose": "latest", "@thi.ng/rdom": "latest", diff --git a/examples/rotating-voronoi/package.json b/examples/rotating-voronoi/package.json index 1df325edbe..c6d2be81e8 100644 --- a/examples/rotating-voronoi/package.json +++ b/examples/rotating-voronoi/package.json @@ -23,7 +23,6 @@ "@thi.ng/geom": "latest", "@thi.ng/geom-resample": "latest", "@thi.ng/geom-voronoi": "latest", - "@thi.ng/hdom": "latest", "@thi.ng/hdom-canvas": "latest", "@thi.ng/math": "latest", "@thi.ng/random": "latest", diff --git a/examples/shader-ast-workers/package.json b/examples/shader-ast-workers/package.json index 4e118235fb..cd8209bade 100644 --- a/examples/shader-ast-workers/package.json +++ b/examples/shader-ast-workers/package.json @@ -12,10 +12,9 @@ "build:worker": "../../node_modules/.bin/webpack --config webpack.worker.js --mode production" }, "dependencies": { - "@thi.ng/api": "latest", "@thi.ng/bench": "latest", "@thi.ng/color": "latest", - "@thi.ng/hdom-canvas": "latest", + "@thi.ng/hiccup-canvas": "latest", "@thi.ng/math": "latest", "@thi.ng/pixel": "latest", "@thi.ng/rstream": "latest", diff --git a/examples/text-canvas-image/.gitignore b/examples/text-canvas-image/.gitignore new file mode 100644 index 0000000000..211b157174 --- /dev/null +++ b/examples/text-canvas-image/.gitignore @@ -0,0 +1,6 @@ +build +dev +node_modules +yarn.lock +!snowpack.config.js +!*.d.ts diff --git a/examples/text-canvas-image/README.md b/examples/text-canvas-image/README.md new file mode 100644 index 0000000000..f65afd4f91 --- /dev/null +++ b/examples/text-canvas-image/README.md @@ -0,0 +1,13 @@ +# text-canvas-image + +[Live demo](http://demo.thi.ng/umbrella/text-canvas-image/) + +Please refer to the [example build instructions](https://github.com/thi-ng/umbrella/wiki/Example-build-instructions) on the wiki. + +## Authors + +- Karsten Schmidt + +## License + +© 2020 Karsten Schmidt // Apache Software License 2.0 diff --git a/examples/text-canvas-image/package.json b/examples/text-canvas-image/package.json new file mode 100644 index 0000000000..d42ffb9319 --- /dev/null +++ b/examples/text-canvas-image/package.json @@ -0,0 +1,30 @@ +{ + "name": "text-canvas-image", + "version": "0.0.1", + "description": "Textmode image warping w/ 16bit color output", + "repository": "https://github.com/thi-ng/umbrella", + "author": "Karsten Schmidt ", + "license": "Apache-2.0", + "scripts": { + "clean": "../../node_modules/.bin/rimraf build node_modules/.cache", + "start": "../../node_modules/.bin/snowpack dev", + "build": "../../node_modules/.bin/snowpack build" + }, + "devDependencies": { + "@thi.ng/snowpack-env": "^2.3.3" + }, + "dependencies": { + "@thi.ng/pixel": "latest", + "@thi.ng/text-canvas": "latest" + }, + "browserslist": [ + "last 3 Chrome versions" + ], + "browser": { + "process": false + }, + "thi.ng": { + "readme": true, + "screenshot": "examples/text-canvas-image.png" + } +} diff --git a/examples/text-canvas-image/public/index.html b/examples/text-canvas-image/public/index.html new file mode 100644 index 0000000000..c3e990ab86 --- /dev/null +++ b/examples/text-canvas-image/public/index.html @@ -0,0 +1,35 @@ + + + + + + + text-canvas-image + + + + + +

+        
+ Source code +
+ + + diff --git a/examples/text-canvas-image/snowpack.config.js b/examples/text-canvas-image/snowpack.config.js new file mode 100644 index 0000000000..194cfe1778 --- /dev/null +++ b/examples/text-canvas-image/snowpack.config.js @@ -0,0 +1,29 @@ +/** @type {import("snowpack").SnowpackUserConfig } */ +module.exports = { + mount: { + public: "/", + src: "/_dist_", + }, + plugins: [ + "@snowpack/plugin-typescript", + [ + "@snowpack/plugin-webpack", + { + extendConfig: (config) => { + config.node = { + process: false, + setImmediate: false, + util: "empty", + }; + return config; + }, + }, + ], + ], + installOptions: { + installTypes: true, + }, + buildOptions: { + baseUrl: "/umbrella/text-canvas-image", + }, +}; diff --git a/examples/text-canvas-image/src/index.ts b/examples/text-canvas-image/src/index.ts new file mode 100644 index 0000000000..59e25f12cc --- /dev/null +++ b/examples/text-canvas-image/src/index.ts @@ -0,0 +1,45 @@ +import { imagePromise, PackedBuffer, RGB565 } from "@thi.ng/pixel"; +import { canvas, FMT_HTML_565, setAt, toString } from "@thi.ng/text-canvas"; +import IMG from "./test.png"; + +// text canvas size +const W = 64; +const H = 48; + +(async () => { + const el = document.getElementById("app")!; + const img = await imagePromise(IMG); + const iw = img.width; + const ih = img.height; + // create 16bit color buffer from image + const buf = PackedBuffer.fromImage(img, RGB565); + // create text canvas + const c = canvas(W, H, 0xffff); + // define 16bit formatter + const fmt = FMT_HTML_565(); + // precalc charcode for each pixel + const char = "▓".charCodeAt(0); + + let start = 0; + + const update = (time: number) => { + if (!start) start = time; + const t = (time - start) * 0.001; + for (let y = 0; y < H; y++) { + const v = y / H; + for (let x = 0; x < W; x++) { + // compute texture coordinates + const u = x / W; + const uu = (u + 0.1 * Math.cos(u + 20 * v - 8 * t)) * iw; + const vv = (v + 0.1 * Math.sin(v + 20 * u + 8 * t)) * ih; + // set pixel w/ color from image + setAt(c, x, y, char, buf.getAt(uu, vv) || 0xffff); + } + } + // format text canvas as HTML spans + el.innerHTML = toString(c, fmt); + requestAnimationFrame(update); + }; + + requestAnimationFrame(update); +})(); diff --git a/examples/text-canvas-image/src/static.d.ts b/examples/text-canvas-image/src/static.d.ts new file mode 100644 index 0000000000..67d9623753 --- /dev/null +++ b/examples/text-canvas-image/src/static.d.ts @@ -0,0 +1,51 @@ +/* Use this file to declare any custom file extensions for importing */ +/* Use this folder to also add/extend a package d.ts file, if needed. */ + +/* CSS MODULES */ +declare module "*.module.css" { + const classes: { [key: string]: string }; + export default classes; +} +declare module "*.module.scss" { + const classes: { [key: string]: string }; + export default classes; +} +declare module "*.module.sass" { + const classes: { [key: string]: string }; + export default classes; +} +declare module "*.module.less" { + const classes: { [key: string]: string }; + export default classes; +} +declare module "*.module.styl" { + const classes: { [key: string]: string }; + export default classes; +} + +/* CSS */ +declare module "*.css"; +declare module "*.scss"; +declare module "*.sass"; +declare module "*.less"; +declare module "*.styl"; + +/* IMAGES */ +declare module "*.svg" { + const ref: string; + export default ref; +} +declare module "*.gif" { + const ref: string; + export default ref; +} +declare module "*.jpg" { + const ref: string; + export default ref; +} +declare module "*.png" { + const ref: string; + export default ref; +} + +/* CUSTOM: ADD YOUR OWN HERE */ diff --git a/examples/text-canvas-image/src/test.png b/examples/text-canvas-image/src/test.png new file mode 100644 index 0000000000..06c075bef3 Binary files /dev/null and b/examples/text-canvas-image/src/test.png differ diff --git a/examples/text-canvas-image/tsconfig.json b/examples/text-canvas-image/tsconfig.json new file mode 100644 index 0000000000..48d558b4f8 --- /dev/null +++ b/examples/text-canvas-image/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "../tsconfig.json", + "include": ["src"], + "compilerOptions": { + "baseUrl": "./", + "paths": { "*": ["web_modules/.types/*"] } + } +} diff --git a/examples/todo-list/package.json b/examples/todo-list/package.json index 578d230264..e94405fc58 100644 --- a/examples/todo-list/package.json +++ b/examples/todo-list/package.json @@ -14,7 +14,6 @@ "@thi.ng/api": "latest", "@thi.ng/atom": "latest", "@thi.ng/hdom": "latest", - "@thi.ng/paths": "latest", "@thi.ng/transducers": "latest" }, "browserslist": [ diff --git a/examples/wolfram/package.json b/examples/wolfram/package.json index 19609effea..e8e0296ab2 100644 --- a/examples/wolfram/package.json +++ b/examples/wolfram/package.json @@ -12,7 +12,6 @@ }, "dependencies": { "@thi.ng/dl-asset": "latest", - "@thi.ng/hdom": "latest", "@thi.ng/hdom-components": "latest", "@thi.ng/rstream": "latest", "@thi.ng/transducers": "latest", diff --git a/package.json b/package.json index f9a4dd155f..6ea840b423 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "doc:ae": "lerna run doc:ae && scripts/collect-apis", "doc:examples": "ts-node -P tools/tsconfig.json tools/src/readme-examples.ts", "examples": "scripts/build-examples", - "pub": "lerna publish --registry https://registry.npmjs.org/ && yarn doc && scripts/upload-docs", + "pub": "lerna publish --registry https://registry.npmjs.org/ && yarn doc && scripts/deploy-docs", "test": "yarn build && yarn test:only", "test:only": "lerna run test", "tool:imports": "ts-node -P tools/tsconfig.json tools/src/check-imports.ts", diff --git a/packages/adapt-dpi/CHANGELOG.md b/packages/adapt-dpi/CHANGELOG.md index be95a5bb35..c7bd982d0e 100644 --- a/packages/adapt-dpi/CHANGELOG.md +++ b/packages/adapt-dpi/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.13](https://github.com/thi-ng/umbrella/compare/@thi.ng/adapt-dpi@1.0.12...@thi.ng/adapt-dpi@1.0.13) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/adapt-dpi + + + + + ## [1.0.12](https://github.com/thi-ng/umbrella/compare/@thi.ng/adapt-dpi@1.0.11...@thi.ng/adapt-dpi@1.0.12) (2020-12-22) **Note:** Version bump only for package @thi.ng/adapt-dpi diff --git a/packages/adapt-dpi/README.md b/packages/adapt-dpi/README.md index 68b75c1677..b8f5df586c 100644 --- a/packages/adapt-dpi/README.md +++ b/packages/adapt-dpi/README.md @@ -98,4 +98,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2015 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2015 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/adapt-dpi/package.json b/packages/adapt-dpi/package.json index e108d48cda..7db8a00703 100644 --- a/packages/adapt-dpi/package.json +++ b/packages/adapt-dpi/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/adapt-dpi", - "version": "1.0.12", + "version": "1.0.13", "description": "HDPI canvas adapter / styling utility", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -44,7 +44,7 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "files": [ diff --git a/packages/adjacency/CHANGELOG.md b/packages/adjacency/CHANGELOG.md index b7c2e25397..7466adef36 100644 --- a/packages/adjacency/CHANGELOG.md +++ b/packages/adjacency/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/adjacency@0.2.0...@thi.ng/adjacency@0.2.1) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/adjacency + + + + + # [0.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/adjacency@0.1.67...@thi.ng/adjacency@0.2.0) (2020-12-22) diff --git a/packages/adjacency/README.md b/packages/adjacency/README.md index 7e0fc91ec6..637c66ca9e 100644 --- a/packages/adjacency/README.md +++ b/packages/adjacency/README.md @@ -88,4 +88,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/adjacency/package.json b/packages/adjacency/package.json index 40ab2dbd25..982e32ac87 100644 --- a/packages/adjacency/package.json +++ b/packages/adjacency/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/adjacency", - "version": "0.2.0", + "version": "0.2.1", "description": "Sparse & bitwise adjacency matrices and related functions for directed & undirected graphs", "module": "./index.js", "main": "./lib/index.js", @@ -33,29 +33,29 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.12.1", - "@thi.ng/vectors": "^4.8.3", + "@thi.ng/vectors": "^4.8.4", "@types/mocha": "^8.2.0", "@types/node": "^14.14.14", "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/binary": "^2.0.20", - "@thi.ng/bitfield": "^0.3.26", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/dcons": "^2.3.4", - "@thi.ng/sparse": "^0.1.59" + "@thi.ng/api": "^6.13.6", + "@thi.ng/binary": "^2.0.21", + "@thi.ng/bitfield": "^0.3.27", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/dcons": "^2.3.5", + "@thi.ng/sparse": "^0.1.60" }, "files": [ "*.js", diff --git a/packages/api/CHANGELOG.md b/packages/api/CHANGELOG.md index 4314914208..f2a09997fd 100644 --- a/packages/api/CHANGELOG.md +++ b/packages/api/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [6.13.6](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.13.5...@thi.ng/api@6.13.6) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/api + + + + + ## [6.13.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.13.4...@thi.ng/api@6.13.5) (2020-12-22) **Note:** Version bump only for package @thi.ng/api diff --git a/packages/api/README.md b/packages/api/README.md index 1ffbc4fda8..ca6d792124 100644 --- a/packages/api/README.md +++ b/packages/api/README.md @@ -102,4 +102,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/api/package.json b/packages/api/package.json index 7aa8221f97..f6d001bae6 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/api", - "version": "6.13.5", + "version": "6.13.6", "description": "Common, generic types, interfaces & mixins", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib api decorators mixins", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,7 +45,7 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "files": [ diff --git a/packages/arrays/CHANGELOG.md b/packages/arrays/CHANGELOG.md index 0654915056..5e47416c83 100644 --- a/packages/arrays/CHANGELOG.md +++ b/packages/arrays/CHANGELOG.md @@ -3,6 +3,19 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [0.9.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.8.5...@thi.ng/arrays@0.9.0) (2021-01-02) + + +### Features + +* **arrays:** add bisect(), bisectWith() ([17d06a4](https://github.com/thi-ng/umbrella/commit/17d06a43e338aca5f2dc61110382363639daecc5)) +* **arrays:** add into(), sortByCachedKey() ([b94f64c](https://github.com/thi-ng/umbrella/commit/b94f64c2c351cfed5ea9ade5e42ad0b7076ef9e9)) +* **arrays:** update sortByCachedKey(), add tests ([64e8f6e](https://github.com/thi-ng/umbrella/commit/64e8f6e4e83c26c73e23a4831483bd328b78bc49)) + + + + + ## [0.8.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.8.4...@thi.ng/arrays@0.8.5) (2020-12-22) **Note:** Version bump only for package @thi.ng/arrays diff --git a/packages/arrays/README.md b/packages/arrays/README.md index afc5c42f01..e6ecd729ed 100644 --- a/packages/arrays/README.md +++ b/packages/arrays/README.md @@ -42,7 +42,7 @@ yarn add @thi.ng/arrays ``` -Package sizes (gzipped, pre-treeshake): ESM: 1.84 KB / CJS: 2.00 KB / UMD: 1.99 KB +Package sizes (gzipped, pre-treeshake): ESM: 2.00 KB / CJS: 2.18 KB / UMD: 2.15 KB ## Dependencies @@ -117,4 +117,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/arrays/package.json b/packages/arrays/package.json index 6adee97f7a..bb0173ad8a 100644 --- a/packages/arrays/package.json +++ b/packages/arrays/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/arrays", - "version": "0.8.5", + "version": "0.9.0", "description": "Array / Arraylike utilities", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,16 +45,16 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/compare": "^1.3.21", - "@thi.ng/equiv": "^1.0.34", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/random": "^2.1.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/compare": "^1.3.22", + "@thi.ng/equiv": "^1.0.35", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/random": "^2.1.4" }, "files": [ "*.js", diff --git a/packages/arrays/src/bisect.ts b/packages/arrays/src/bisect.ts new file mode 100644 index 0000000000..4f7861b72f --- /dev/null +++ b/packages/arrays/src/bisect.ts @@ -0,0 +1,26 @@ +import type { Predicate } from "@thi.ng/api"; + +/** + * Splits array at given index (default: floor(src.length/2)) and returns tuple of [lhs, rhs]. + * + * @param src + * @param i + */ +export const bisect = (src: T[], i = src.length >>> 1) => [ + src.slice(0, i), + src.slice(i), +]; + +/** + * Similar to {@link bisect}, but first finds split index via provided + * predicate. The item for which the predicate first returns a truthy result, + * will be the first item in the RHS array. If the predicate never succeeds, the + * function returns `[src, []]`, i.e. all items will remain in the LHS. + * + * @param src + * @param pred + */ +export const bisectWith = (src: T[], pred: Predicate) => { + const i = src.findIndex(pred); + return i >= 0 ? bisect(src, i) : [src, []]; +}; diff --git a/packages/arrays/src/index.ts b/packages/arrays/src/index.ts index 2ea51d2581..ffa20f967b 100644 --- a/packages/arrays/src/index.ts +++ b/packages/arrays/src/index.ts @@ -1,5 +1,6 @@ export * from "./api"; export * from "./binary-search"; +export * from "./bisect"; export * from "./ends-with"; export * from "./ensure-array"; export * from "./ensure-iterable"; @@ -7,11 +8,13 @@ export * from "./find"; export * from "./fill-range"; export * from "./fuzzy-match"; export * from "./is-sorted"; +export * from "./into"; export * from "./iterator"; export * from "./levenshtein"; export * from "./peek"; export * from "./quicksort"; export * from "./shuffle"; +export * from "./sort-cached"; export * from "./starts-with"; export * from "./swap"; export * from "./swizzle"; diff --git a/packages/arrays/src/into.ts b/packages/arrays/src/into.ts new file mode 100644 index 0000000000..78050cc8e2 --- /dev/null +++ b/packages/arrays/src/into.ts @@ -0,0 +1,15 @@ +/** + * Appends `max` items (default: all) from `src` iterable to `dest` array. + * Returns `dest`. + * + * @param dest + * @param src + * @param max + */ +export const into = (dest: T[], src: Iterable, max = Infinity) => { + for (let x of src) { + if (--max < 0) break; + dest.push(x); + } + return dest; +}; diff --git a/packages/arrays/src/sort-cached.ts b/packages/arrays/src/sort-cached.ts new file mode 100644 index 0000000000..426132113f --- /dev/null +++ b/packages/arrays/src/sort-cached.ts @@ -0,0 +1,43 @@ +import { assert, Comparator, Fn } from "@thi.ng/api"; +import { isFunction } from "@thi.ng/checks"; +import { compare } from "@thi.ng/compare"; +import { quickSort } from "./quicksort"; +import { multiSwap } from "./swap"; + +/** + * Takes a `src` array and `key` array of function to provide the sort key of + * each item. If a function, it will be first applied to pre-compute a new array + * of all sort keys. Then uses {@link quickSort} to sort `src` array, based on + * the ordering of cached keys and the optionally given comparator. Returns + * `src`. + * + * @remarks + * This function is primarily intended for use cases where an array needs to be + * sorted based on the item order of another array, or where sort keys are + * derived from non-trivial computations and need to be cached, rather than be + * re-evaluated multiple times from within a comparator. + * + * @example + * ```ts + * // sort by length in descending order + * sortByCachedKey(["a","bbbb","ccc","dd"], (x) => x.length, (a, b) => b - a); + * // [ 'bbbb', 'ccc', 'dd', 'a' ] + * + * sortByCachedKey(["a", "b", "c", "d"], [3, 2, 1, 0]) + * // [ 'd', 'c', 'b', 'a' ] + * ``` + * + * @param src + * @param key + * @param cmp + */ +export const sortByCachedKey = ( + src: T[], + key: K[] | Fn, + cmp: Comparator = compare +) => { + const keys = isFunction(key) ? src.map(key) : key; + assert(keys.length === src.length, `keys.length != src.length`); + quickSort(keys, cmp, multiSwap(src)); + return src; +}; diff --git a/packages/arrays/test/sort-cached.ts b/packages/arrays/test/sort-cached.ts new file mode 100644 index 0000000000..6417cb0e79 --- /dev/null +++ b/packages/arrays/test/sort-cached.ts @@ -0,0 +1,38 @@ +import { compare, reverse } from "@thi.ng/compare"; +import * as assert from "assert"; +import { sortByCachedKey } from "../src"; + +describe("sortCached", () => { + it("key fn", () => { + assert.deepStrictEqual( + sortByCachedKey(["a", "bbbb", "ccc", "dd"], (x) => x), + ["a", "bbbb", "ccc", "dd"] + ); + assert.deepStrictEqual( + sortByCachedKey( + ["a", "bbbb", "ccc", "dd"], + (x) => x, + reverse(compare) + ), + ["dd", "ccc", "bbbb", "a"] + ); + assert.deepStrictEqual( + sortByCachedKey( + ["a", "bbbb", "ccc", "dd"], + (x) => x.length, + (a, b) => b - a + ), + ["bbbb", "ccc", "dd", "a"] + ); + }); + + it("key array", () => { + assert.deepStrictEqual( + sortByCachedKey(["a", "b", "c", "d"], [3, 2, 1, 0]), + ["d", "c", "b", "a"] + ); + }); + + it("wrong key length", () => + assert.throws(() => sortByCachedKey(["a", "b", "c", "d"], []))); +}); diff --git a/packages/associative/CHANGELOG.md b/packages/associative/CHANGELOG.md index 8ce196d0c8..4dcfdded25 100644 --- a/packages/associative/CHANGELOG.md +++ b/packages/associative/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [5.0.13](https://github.com/thi-ng/umbrella/compare/@thi.ng/associative@5.0.12...@thi.ng/associative@5.0.13) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/associative + + + + + ## [5.0.12](https://github.com/thi-ng/umbrella/compare/@thi.ng/associative@5.0.11...@thi.ng/associative@5.0.12) (2020-12-22) **Note:** Version bump only for package @thi.ng/associative diff --git a/packages/associative/README.md b/packages/associative/README.md index 40bdea4b0c..a3b8cceaa2 100644 --- a/packages/associative/README.md +++ b/packages/associative/README.md @@ -24,7 +24,7 @@ This project is part of the - [SortedMap](#sortedmap) - [Ranged queries](#ranged-queries) - [SortedSet](#sortedset) - - [SparseSet8/16/32](#sparseset8-16-32) + - [SparseSet8/16/32](#sparseset81632) - [TrieMap](#triemap) - [MultiTrie](#multitrie) - [Authors](#authors) @@ -393,4 +393,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2017 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2017 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/associative/package.json b/packages/associative/package.json index 5a59fda408..4333821793 100644 --- a/packages/associative/package.json +++ b/packages/associative/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/associative", - "version": "5.0.12", + "version": "5.0.13", "description": "Alternative Map and Set implementations with customizable equality semantics & supporting operations", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib internal", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,18 +45,18 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/binary": "^2.0.20", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/compare": "^1.3.21", - "@thi.ng/dcons": "^2.3.4", - "@thi.ng/equiv": "^1.0.34", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/transducers": "^7.5.3", + "@thi.ng/api": "^6.13.6", + "@thi.ng/binary": "^2.0.21", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/compare": "^1.3.22", + "@thi.ng/dcons": "^2.3.5", + "@thi.ng/equiv": "^1.0.35", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/transducers": "^7.5.4", "tslib": "2.0.1" }, "files": [ diff --git a/packages/atom/CHANGELOG.md b/packages/atom/CHANGELOG.md index 657a1a1dd6..5bbb75cfa1 100644 --- a/packages/atom/CHANGELOG.md +++ b/packages/atom/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.1.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/atom@4.1.25...@thi.ng/atom@4.1.26) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/atom + + + + + ## [4.1.25](https://github.com/thi-ng/umbrella/compare/@thi.ng/atom@4.1.24...@thi.ng/atom@4.1.25) (2020-12-22) **Note:** Version bump only for package @thi.ng/atom diff --git a/packages/atom/README.md b/packages/atom/README.md index 9b7c8abc98..d96e71c2cb 100644 --- a/packages/atom/README.md +++ b/packages/atom/README.md @@ -27,7 +27,7 @@ This project is part of the - [External modifications during active transaction](#external-modifications-during-active-transaction) - [Cursor](#cursor) - [Derived views](#derived-views) - - [Undo / Redo history](#undo---redo-history) + - [Undo / Redo history](#undo--redo-history) - [Authors](#authors) - [License](#license) @@ -660,4 +660,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2017 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2017 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/atom/package.json b/packages/atom/package.json index 1f812f1aa5..5db6cc7ea5 100644 --- a/packages/atom/package.json +++ b/packages/atom/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/atom", - "version": "4.1.25", + "version": "4.1.26", "description": "Mutable wrappers for nested immutable values with optional undo/redo history and transaction support", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/equiv": "^1.0.34", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/paths": "^4.1.11", + "@thi.ng/api": "^6.13.6", + "@thi.ng/equiv": "^1.0.35", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/paths": "^4.1.12", "tslib": "2.0.1" }, "files": [ diff --git a/packages/bench/CHANGELOG.md b/packages/bench/CHANGELOG.md index 6b29997c57..5a9ce6bc1b 100644 --- a/packages/bench/CHANGELOG.md +++ b/packages/bench/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.0.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/bench@2.0.25...@thi.ng/bench@2.0.26) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/bench + + + + + ## [2.0.25](https://github.com/thi-ng/umbrella/compare/@thi.ng/bench@2.0.24...@thi.ng/bench@2.0.25) (2020-12-22) **Note:** Version bump only for package @thi.ng/bench diff --git a/packages/bench/README.md b/packages/bench/README.md index ef910544b9..80c07b38db 100644 --- a/packages/bench/README.md +++ b/packages/bench/README.md @@ -157,4 +157,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/bench/package.json b/packages/bench/package.json index ff9f85fa82..568652971e 100644 --- a/packages/bench/package.json +++ b/packages/bench/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/bench", - "version": "2.0.25", + "version": "2.0.26", "description": "Benchmarking utilities w/ optional statistics", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,7 +45,7 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "files": [ diff --git a/packages/bencode/CHANGELOG.md b/packages/bencode/CHANGELOG.md index cb528fffe6..a053ec4cd7 100644 --- a/packages/bencode/CHANGELOG.md +++ b/packages/bencode/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.3.45](https://github.com/thi-ng/umbrella/compare/@thi.ng/bencode@0.3.44...@thi.ng/bencode@0.3.45) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/bencode + + + + + ## [0.3.44](https://github.com/thi-ng/umbrella/compare/@thi.ng/bencode@0.3.43...@thi.ng/bencode@0.3.44) (2020-12-22) **Note:** Version bump only for package @thi.ng/bencode diff --git a/packages/bencode/README.md b/packages/bencode/README.md index c80c43951f..32b84348b4 100644 --- a/packages/bencode/README.md +++ b/packages/bencode/README.md @@ -10,7 +10,7 @@ This project is part of the [@thi.ng/umbrella](https://github.com/thi-ng/umbrella/) monorepo. - [About](#about) - - [Features / behaviors](#features---behaviors) + - [Features / behaviors](#features--behaviors) - [Booleans](#booleans) - [String handling](#string-handling) - [Floating point values](#floating-point-values) @@ -127,4 +127,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/bencode/package.json b/packages/bencode/package.json index 967d0df374..4064dbb3d6 100644 --- a/packages/bencode/package.json +++ b/packages/bencode/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/bencode", - "version": "0.3.44", + "version": "0.3.45", "description": "Bencode binary encoder / decoder with optional UTF8 encoding & floating point support", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,17 +45,17 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/arrays": "^0.8.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/defmulti": "^1.3.3", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/transducers-binary": "^0.6.0" + "@thi.ng/api": "^6.13.6", + "@thi.ng/arrays": "^0.9.0", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/defmulti": "^1.3.4", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/transducers-binary": "^0.6.1" }, "files": [ "*.js", diff --git a/packages/binary/CHANGELOG.md b/packages/binary/CHANGELOG.md index 7f1b7aa559..6c4cf2a425 100644 --- a/packages/binary/CHANGELOG.md +++ b/packages/binary/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.0.21](https://github.com/thi-ng/umbrella/compare/@thi.ng/binary@2.0.20...@thi.ng/binary@2.0.21) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/binary + + + + + ## [2.0.20](https://github.com/thi-ng/umbrella/compare/@thi.ng/binary@2.0.19...@thi.ng/binary@2.0.20) (2020-12-22) **Note:** Version bump only for package @thi.ng/binary diff --git a/packages/binary/README.md b/packages/binary/README.md index 59967d31be..6f36dd14bd 100644 --- a/packages/binary/README.md +++ b/packages/binary/README.md @@ -83,4 +83,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/binary/package.json b/packages/binary/package.json index 37ac3d1c0d..2f0ae264e2 100644 --- a/packages/binary/package.json +++ b/packages/binary/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/binary", - "version": "2.0.20", + "version": "2.0.21", "description": "95+ assorted binary / bitwise operations, conversions, utilities", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5" + "@thi.ng/api": "^6.13.6" }, "files": [ "*.js", diff --git a/packages/bitfield/CHANGELOG.md b/packages/bitfield/CHANGELOG.md index f114c6857f..6ad22afebb 100644 --- a/packages/bitfield/CHANGELOG.md +++ b/packages/bitfield/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.3.27](https://github.com/thi-ng/umbrella/compare/@thi.ng/bitfield@0.3.26...@thi.ng/bitfield@0.3.27) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/bitfield + + + + + ## [0.3.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/bitfield@0.3.25...@thi.ng/bitfield@0.3.26) (2020-12-22) **Note:** Version bump only for package @thi.ng/bitfield diff --git a/packages/bitfield/README.md b/packages/bitfield/README.md index 55e911037d..a9bbd9553b 100644 --- a/packages/bitfield/README.md +++ b/packages/bitfield/README.md @@ -116,4 +116,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/bitfield/package.json b/packages/bitfield/package.json index 91729f2e02..f49bfede73 100644 --- a/packages/bitfield/package.json +++ b/packages/bitfield/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/bitfield", - "version": "0.3.26", + "version": "0.3.27", "description": "1D / 2D bit field implementations", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/binary": "^2.0.20", - "@thi.ng/strings": "^1.11.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/binary": "^2.0.21", + "@thi.ng/strings": "^1.11.4" }, "files": [ "*.js", diff --git a/packages/bitstream/CHANGELOG.md b/packages/bitstream/CHANGELOG.md index 0e9d154f3a..e811d6051a 100644 --- a/packages/bitstream/CHANGELOG.md +++ b/packages/bitstream/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.1.31](https://github.com/thi-ng/umbrella/compare/@thi.ng/bitstream@1.1.30...@thi.ng/bitstream@1.1.31) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/bitstream + + + + + ## [1.1.30](https://github.com/thi-ng/umbrella/compare/@thi.ng/bitstream@1.1.29...@thi.ng/bitstream@1.1.30) (2020-12-22) **Note:** Version bump only for package @thi.ng/bitstream diff --git a/packages/bitstream/README.md b/packages/bitstream/README.md index 658b41a816..4f5db95751 100644 --- a/packages/bitstream/README.md +++ b/packages/bitstream/README.md @@ -166,4 +166,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/bitstream/package.json b/packages/bitstream/package.json index d7c15c092a..ec2392fc22 100644 --- a/packages/bitstream/package.json +++ b/packages/bitstream/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/bitstream", - "version": "1.1.30", + "version": "1.1.31", "description": "ES6 iterator based read/write bit streams with support for variable word widths", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/errors": "^1.2.25" + "@thi.ng/errors": "^1.2.26" }, "files": [ "*.js", diff --git a/packages/cache/CHANGELOG.md b/packages/cache/CHANGELOG.md index 0ec3f151cd..4053f30c70 100644 --- a/packages/cache/CHANGELOG.md +++ b/packages/cache/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.65](https://github.com/thi-ng/umbrella/compare/@thi.ng/cache@1.0.64...@thi.ng/cache@1.0.65) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/cache + + + + + ## [1.0.64](https://github.com/thi-ng/umbrella/compare/@thi.ng/cache@1.0.63...@thi.ng/cache@1.0.64) (2020-12-22) **Note:** Version bump only for package @thi.ng/cache diff --git a/packages/cache/README.md b/packages/cache/README.md index 310449855b..b2055ba225 100644 --- a/packages/cache/README.md +++ b/packages/cache/README.md @@ -235,4 +235,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/cache/package.json b/packages/cache/package.json index 807e33a8d2..30deaa21db 100644 --- a/packages/cache/package.json +++ b/packages/cache/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/cache", - "version": "1.0.64", + "version": "1.0.65", "description": "In-memory cache implementations with ES6 Map-like API and different eviction strategies", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/dcons": "^2.3.4", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/dcons": "^2.3.5", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/checks/CHANGELOG.md b/packages/checks/CHANGELOG.md index 9c12b2d2a8..558867d0f0 100644 --- a/packages/checks/CHANGELOG.md +++ b/packages/checks/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.7.13](https://github.com/thi-ng/umbrella/compare/@thi.ng/checks@2.7.12...@thi.ng/checks@2.7.13) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/checks + + + + + ## [2.7.12](https://github.com/thi-ng/umbrella/compare/@thi.ng/checks@2.7.11...@thi.ng/checks@2.7.12) (2020-12-22) **Note:** Version bump only for package @thi.ng/checks diff --git a/packages/checks/README.md b/packages/checks/README.md index 6e1593553b..a4993877c2 100644 --- a/packages/checks/README.md +++ b/packages/checks/README.md @@ -79,4 +79,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/checks/package.json b/packages/checks/package.json index f86c3e27c5..0c63ad0233 100644 --- a/packages/checks/package.json +++ b/packages/checks/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/checks", - "version": "2.7.12", + "version": "2.7.13", "description": "Collection of 50+ type, feature & value checks", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,7 +45,7 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { diff --git a/packages/color/CHANGELOG.md b/packages/color/CHANGELOG.md index a25e5fa81e..8d85d69000 100644 --- a/packages/color/CHANGELOG.md +++ b/packages/color/CHANGELOG.md @@ -3,6 +3,27 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [2.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/color@2.0.0...@thi.ng/color@2.1.0) (2021-01-02) + + +### Bug Fixes + +* **color:** fix cosineGradient() return type ([651590c](https://github.com/thi-ng/umbrella/commit/651590c2f3c4365e06f4bab85d2c9f9b99d3c4c1)) + + +### Features + +* **color:** add color swatch hiccup helpers ([5ecc528](https://github.com/thi-ng/umbrella/commit/5ecc5285fdea2d35535e5469d4d81a2b4d6878e9)) +* **color:** add declarative range/theme iterators ([971d5dc](https://github.com/thi-ng/umbrella/commit/971d5dcbf061b0c4c52ffa1aca24d7150dea81e9)) +* **color:** add HSV/RGB distance fns ([3bd3969](https://github.com/thi-ng/umbrella/commit/3bd396927c3aab7942853ec9b9f6013a1248389c)) +* **color:** add HSV/RGB gray axis checks ([927202b](https://github.com/thi-ng/umbrella/commit/927202b77deaa808b57ee189ff483839975804d0)) +* **color:** add sortColors(), comparators ([6761feb](https://github.com/thi-ng/umbrella/commit/6761feb65e24545290547408b8ba62a3ba4baedc)) +* **color:** update ColorRangeOpts, add docstrings ([350fbe5](https://github.com/thi-ng/umbrella/commit/350fbe568b8abfc968a104cbada5abdeeb2b4107)) + + + + + # [2.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/color@1.3.2...@thi.ng/color@2.0.0) (2020-12-22) diff --git a/packages/color/README.md b/packages/color/README.md index a8811f80dc..321df95047 100644 --- a/packages/color/README.md +++ b/packages/color/README.md @@ -12,8 +12,10 @@ This project is part of the For the Clojure version, please visit: [thi.ng/color-clj](https://thi.ng/color-clj) - [About](#about) - - [Color spaces / modes](#color-spaces---modes) + - [Color spaces / modes](#color-spaces--modes) - [Class wrappers](#class-wrappers) + - [Color theme generation](#color-theme-generation) + - [Color sorting](#color-sorting) - [RGBA transformations](#rgba-transformations) - [RGBA Porter-Duff compositing](#rgba-porter-duff-compositing) - [Cosine gradients](#cosine-gradients) @@ -29,7 +31,7 @@ For the Clojure version, please visit: [thi.ng/color-clj](https://thi.ng/color-c ## About -Array-based color ops, conversions, multi-color gradients, presets. +Array-based color types, conversions, transformations, declarative theme generation, multi-color gradients, presets. ### Color spaces / modes @@ -64,6 +66,147 @@ aliases (in addition to array indexing) and are fully compatible with all functions (and act as syntax sugar for generic conversion functions). Wrapper factory functions are provided for convenience. +### Color theme generation + +The package provides several methods for procedural & declarative color theme +generations. The latter relies on the concept of HSV color ranges, which can be +sampled directly and/or mixed with a base color to produce randomized +variations. Furthermore, multiple such ranges can be combined into a weighted +set to define probabilistic color themes. + +```ts +// single random color drawn from the "bright" color range preset +colorFromRange(RANGES.bright); +// [ 0.7302125322518669, 0.8519945301256682, 0.8134374983367859, 1 ] + +// single random color based on given HSV base color and preset +colorFromRange(RANGES.warm, [0.33, 1, 1]) +// [ 0.3065587375218628, 0.8651353734302525, 0.748781892650323, 1 ] + +// infinite iterator of colors sampled from the preset +// (see table below) +const colors = colorsFromRange(RANGES.bright); +colors.next(); +// { +// value: [ 0.006959075656347791, 0.8760165887192115, 0.912149937028727, 1 ], +// done: false +// } + +// 10 cool reds, w/ 10% hue variance +[...colorsFromRange(RANGES.cool, [0, 0.8, 1], { num: 10, variance: 0.1 })] + +// generate colors based on given (weighted) textual description(s) +// here using named CSS colors, but could also be HSV tuples +[...colorsFromTheme( + [["warm", "goldenrod"], ["cool", "springgreen", 0.1]], + { num: 100, variance: 0.05 } +)] + +// theme parts can also be given in the format used internally +// note: base colors are always in HSV +// all keys are optional (range, base, weight), +// but at least `range` or `base` must be given... +[...colorsFromTheme( + [ + { range: "warm", base: "goldenrod" }, + { range: RANGES.cool, base: [0, 1, 0.5], weight: 0.1 } + ], + { num: 100, variance: 0.05 } +)] +``` + +| ID | 100 colors drawn from color range preset only, sorted by hue | +|-----------|--------------------------------------------------------------------------------------------------------------------| +| `bright` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-bright.svg) | +| `cool` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-cool.svg) | +| `dark` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-dark.svg) | +| `fresh` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-fresh.svg) | +| `hard` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-hard.svg) | +| `intense` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-intense.svg) | +| `light` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-light.svg) | +| `neutral` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-neutral.svg) | +| `soft` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-soft.svg) | +| `warm` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-warm.svg) | +| `weak` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-weak.svg) | + +| ID | 100 colors, single base color w/ color range preset, sorted by hue | +|-----------|--------------------------------------------------------------------------------------------------------------------| +| `bright` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-bright.svg) | +| `cool` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-cool.svg) | +| `dark` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-dark.svg) | +| `fresh` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-fresh.svg) | +| `hard` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-hard.svg) | +| `intense` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-intense.svg) | +| `light` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-light.svg) | +| `neutral` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-neutral.svg) | +| `soft` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-soft.svg) | +| `warm` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-warm.svg) | +| `weak` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-weak.svg) | + +| ID | 100 colors, 2 base colors w/ color range preset, sorted by brightness | +|-----------|------------------------------------------------------------------------------------------------------------------| +| `bright` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-bright.svg) | +| `cool` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-cool.svg) | +| `dark` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-dark.svg) | +| `fresh` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-fresh.svg) | +| `hard` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-hard.svg) | +| `intense` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-intense.svg) | +| `light` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-light.svg) | +| `neutral` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-neutral.svg) | +| `soft` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-soft.svg) | +| `warm` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-warm.svg) | +| `weak` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-weak.svg) | + +Full example: + +```ts +import { colorsFromTheme, hsva, swatchesH } from "@thi.ng/color"; +import { serialize } from "@thi.ng/hiccup"; +import { svg } from "@thi.ng/hiccup-svg"; +import { writeFileSync } from "fs"; + +// color theme definition using: +// color range preset names, CSS colors and weights +const theme: ColorThemePartTuple[] = [ + ["cool", "goldenrod"], + ["fresh", "hotpink", 0.1], + ["light", "springgreen", 0.1], +]; + +// generate 200 HSV colors based on above description +const colors = [...colorsFromTheme(theme, { num: 200, variance: 0.05 })]; + +// create SVG doc of color swatches (hiccup format) +// (convert colors to RGB for smaller file size) +const doc = svg( + { width: 1000, height: 50, convert: true }, + swatchesH(colors.map((x) => hsvaRgba([], x)), 5, 50) +); + +// serialize to SVG file +writeFileSync("export/swatches-ex01.svg", serialize(doc)); +``` + +![example result color swatches](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-ex01.svg) + +### Color sorting + +The `sortColors()` function can be used to sort an array of colors using +arbitrary sort criteria. The following comparators are bundled: + +- `selectChannel(i)` - sort by channel +- `proximityHSV(target)` - sort by distance to target color (HSV colors) +- `proximityRGB(target)` - sort by distance to target color (RGB colors) + +```ts +// (see above example) +const colors = [...colorsFromTheme(theme, { num: 200, variance: 0.05 })]; + +sortColors(colors, proximityHSV([0,1,0.5])); +``` + +![sorted color swatches](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-ex02.svg) + ### RGBA transformations RGBA [color matrix @@ -194,16 +337,19 @@ yarn add @thi.ng/color ``` -Package sizes (gzipped, pre-treeshake): ESM: 7.08 KB / CJS: 7.44 KB / UMD: 7.00 KB +Package sizes (gzipped, pre-treeshake): ESM: 8.42 KB / CJS: 8.85 KB / UMD: 8.31 KB ## Dependencies - [@thi.ng/api](https://github.com/thi-ng/umbrella/tree/develop/packages/api) +- [@thi.ng/arrays](https://github.com/thi-ng/umbrella/tree/develop/packages/arrays) - [@thi.ng/checks](https://github.com/thi-ng/umbrella/tree/develop/packages/checks) +- [@thi.ng/compare](https://github.com/thi-ng/umbrella/tree/develop/packages/compare) - [@thi.ng/compose](https://github.com/thi-ng/umbrella/tree/develop/packages/compose) - [@thi.ng/defmulti](https://github.com/thi-ng/umbrella/tree/develop/packages/defmulti) - [@thi.ng/errors](https://github.com/thi-ng/umbrella/tree/develop/packages/errors) - [@thi.ng/math](https://github.com/thi-ng/umbrella/tree/develop/packages/math) +- [@thi.ng/random](https://github.com/thi-ng/umbrella/tree/develop/packages/random) - [@thi.ng/strings](https://github.com/thi-ng/umbrella/tree/develop/packages/strings) - [@thi.ng/transducers](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers) - [@thi.ng/vectors](https://github.com/thi-ng/umbrella/tree/develop/packages/vectors) @@ -283,4 +429,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/color/package.json b/packages/color/package.json index 2c8beac3c0..39d334fe88 100644 --- a/packages/color/package.json +++ b/packages/color/package.json @@ -1,7 +1,7 @@ { "name": "@thi.ng/color", - "version": "2.0.0", - "description": "Array-based color ops, conversions, multi-color gradients, presets", + "version": "2.1.0", + "description": "Array-based color types, conversions, transformations, declarative theme generation, multi-color gradients, presets", "module": "./index.js", "main": "./lib/index.js", "umd:main": "./lib/index.umd.js", @@ -33,9 +33,10 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib internal", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "pub": "yarn build:release && yarn publish --access public" + "pub": "yarn build:release && yarn publish --access public", + "tool:swatches": "ts-node -P tools/tsconfig.json tools/index.ts" }, "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", @@ -45,19 +46,22 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/compose": "^1.4.22", - "@thi.ng/defmulti": "^1.3.3", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/math": "^3.0.0", - "@thi.ng/strings": "^1.11.3", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/arrays": "^0.9.0", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/compare": "^1.3.22", + "@thi.ng/compose": "^1.4.23", + "@thi.ng/defmulti": "^1.3.4", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/math": "^3.0.1", + "@thi.ng/random": "^2.1.4", + "@thi.ng/strings": "^1.11.4", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", @@ -74,6 +78,7 @@ "conversion", "cosine", "css", + "declarative", "filter", "gradient", "hcy", @@ -84,6 +89,8 @@ "porter-duff", "rgb", "srgb", + "swatches", + "theme", "typescript", "xyz", "ycbcr" diff --git a/packages/color/src/analog.ts b/packages/color/src/analog.ts new file mode 100644 index 0000000000..e0e24fdefd --- /dev/null +++ b/packages/color/src/analog.ts @@ -0,0 +1,82 @@ +import type { FnN } from "@thi.ng/api"; +import { clamp01 } from "@thi.ng/math"; +import { IRandom, SYSTEM } from "@thi.ng/random"; +import { setC4 } from "@thi.ng/vectors"; +import type { Color, ReadonlyColor } from "./api"; +import { ensureAlpha } from "./internal/ensure-alpha"; +import { ensureHue } from "./internal/ensure-hue"; + +const $analog = (x: number, delta: number, rnd: IRandom, post: FnN = clamp01) => + delta !== 0 ? post(x + rnd.norm(delta)) : x; + +const $alpha = (a: number, delta: number, rnd: IRandom) => + delta !== 0 + ? clamp01((a !== undefined ? a : 1) + rnd.norm(delta)) + : ensureAlpha(a); + +/** + * Similar to {@link analogRGB}. Returns an analog color based on given HSVA + * color,with each channel randomly varied by given delta amounts (and + * optionally given {@link @thi.ng/random#IRandom} PRNG). + * + * @remarks + * By default (unless `deltaS`, `deltaV`, `deltaA` are provided) only the hue of + * the color will be modulated. + * + * @param out + * @param src + * @param deltaH + * @param deltaS + * @param deltaV + * @param deltaA + * @param rnd + */ +export const analogHSV = ( + out: Color | null, + src: ReadonlyColor, + deltaH: number, + deltaS = 0, + deltaV = 0, + deltaA = 0, + rnd: IRandom = SYSTEM +) => + setC4( + out || src, + $analog(src[0], deltaH, rnd, ensureHue), + $analog(src[1], deltaS, rnd), + $analog(src[2], deltaV, rnd), + $alpha(src[3], deltaA, rnd) + ); + +/** + * Similar to {@link analogHSV}. Returns an analog color based on given RGBA + * color, with each channel randomly varied by given delta amounts (and + * optionally given {@link @thi.ng/random#IRandom} PRNG). + * + * @remarks + * By default the green and blue channel variance will be the same as `deltaR`. + * + * @param out + * @param src + * @param deltaR + * @param deltaG + * @param deltaB + * @param deltaA + * @param rnd + */ +export const analogRGB = ( + out: Color | null, + src: ReadonlyColor, + deltaR: number, + deltaG = deltaR, + deltaB = deltaR, + deltaA = 0, + rnd: IRandom = SYSTEM +) => + setC4( + out || src, + $analog(src[0], deltaR, rnd), + $analog(src[1], deltaG, rnd), + $analog(src[2], deltaB, rnd), + $alpha(src[3], deltaA, rnd) + ); diff --git a/packages/color/src/api.ts b/packages/color/src/api.ts index 8e8cc42673..360eaef342 100644 --- a/packages/color/src/api.ts +++ b/packages/color/src/api.ts @@ -1,4 +1,5 @@ -import type { Tuple } from "@thi.ng/api"; +import type { FnU2, Tuple } from "@thi.ng/api"; +import type { IRandom } from "@thi.ng/random"; import type { ReadonlyVec, Vec } from "@thi.ng/vectors"; export type ColorMode = @@ -12,6 +13,192 @@ export type ColorMode = | "xyz" | "ycbcr"; +export type CSSColorName = + | "aliceblue" + | "antiquewhite" + | "aqua" + | "aquamarine" + | "azure" + | "beige" + | "bisque" + | "black" + | "blanchedalmond" + | "blue" + | "blueviolet" + | "brown" + | "burlywood" + | "cadetblue" + | "chartreuse" + | "chocolate" + | "coral" + | "cornflowerblue" + | "cornsilk" + | "crimson" + | "cyan" + | "darkblue" + | "darkcyan" + | "darkgoldenrod" + | "darkgray" + | "darkgreen" + | "darkgrey" + | "darkkhaki" + | "darkmagenta" + | "darkolivegreen" + | "darkorange" + | "darkorchid" + | "darkred" + | "darksalmon" + | "darkseagreen" + | "darkslateblue" + | "darkslategray" + | "darkslategrey" + | "darkturquoise" + | "darkviolet" + | "deeppink" + | "deepskyblue" + | "dimgray" + | "dimgrey" + | "dodgerblue" + | "firebrick" + | "floralwhite" + | "forestgreen" + | "fuchsia" + | "gainsboro" + | "ghostwhite" + | "gold" + | "goldenrod" + | "gray" + | "grey" + | "green" + | "greenyellow" + | "honeydew" + | "hotpink" + | "indianred" + | "indigo" + | "ivory" + | "khaki" + | "lavender" + | "lavenderblush" + | "lawngreen" + | "lemonchiffon" + | "lightblue" + | "lightcoral" + | "lightcyan" + | "lightgoldenrodyellow" + | "lightgray" + | "lightgreen" + | "lightgrey" + | "lightpink" + | "lightsalmon" + | "lightseagreen" + | "lightskyblue" + | "lightslategray" + | "lightslategrey" + | "lightsteelblue" + | "lightyellow" + | "lime" + | "limegreen" + | "linen" + | "magenta" + | "maroon" + | "mediumaquamarine" + | "mediumblue" + | "mediumorchid" + | "mediumpurple" + | "mediumseagreen" + | "mediumslateblue" + | "mediumspringgreen" + | "mediumturquoise" + | "mediumvioletred" + | "midnightblue" + | "mintcream" + | "mistyrose" + | "moccasin" + | "navajowhite" + | "navy" + | "oldlace" + | "olive" + | "olivedrab" + | "orange" + | "orangered" + | "orchid" + | "palegoldenrod" + | "palegreen" + | "paleturquoise" + | "palevioletred" + | "papayawhip" + | "peachpuff" + | "peru" + | "pink" + | "plum" + | "powderblue" + | "purple" + | "red" + | "rosybrown" + | "royalblue" + | "saddlebrown" + | "salmon" + | "sandybrown" + | "seagreen" + | "seashell" + | "sienna" + | "silver" + | "skyblue" + | "slateblue" + | "slategray" + | "slategrey" + | "snow" + | "springgreen" + | "steelblue" + | "tan" + | "teal" + | "thistle" + | "tomato" + | "turquoise" + | "violet" + | "wheat" + | "white" + | "whitesmoke" + | "yellow" + | "yellowgreen"; + +export type ColorRangePreset = + | "light" + | "dark" + | "bright" + | "weak" + | "neutral" + | "fresh" + | "soft" + | "hard" + | "warm" + | "cool" + | "intense"; + +export type CosineGradientPreset = + | "blue-cyan" + | "blue-magenta-orange" + | "blue-white-red" + | "cyan-magenta" + | "green-blue-orange" + | "green-cyan" + | "green-magenta" + | "green-red" + | "heat1" + | "magenta-green" + | "orange-blue" + | "orange-magenta-blue" + | "purple-orange-cyan" + | "rainbow1" + | "rainbow2" + | "rainbow3" + | "rainbow4" + | "red-blue" + | "yellow-green-blue" + | "yellow-magenta-cyan" + | "yellow-purple-magenta" + | "yellow-red"; + export type Color = Vec; export type ReadonlyColor = ReadonlyVec; @@ -26,6 +213,88 @@ export type CosGradientSpec = Tuple; export type ColorConversion = (out: Color, src: T) => Color; export type ColorOp = (out: Color | null, src: ReadonlyColor) => Color; +export type ColorDistance = FnU2; + export interface IColor { readonly mode: ColorMode; } + +export type Range = [number, number]; + +export interface ColorRange { + /** + * Hue ranges + */ + h?: Range[]; + /** + * Saturation ranges + */ + s?: Range[]; + /** + * Brightness ranges + */ + v?: Range[]; + /** + * Alpha ranges + */ + a?: Range[]; + /** + * Black point ranges + */ + b?: Range[]; + /** + * White point ranges + */ + w?: Range[]; +} + +export interface ColorRangeOpts { + /** + * Nunber of result colors. + * + * @defaultValue ∞ + */ + num: number; + /** + * Max. normalized & randomized hue shift for result colors. Only used if a + * base color is given. + * + * @defaultValue 0.025 + */ + variance: number; + /** + * Tolerance for grayscale check (used for both saturation and brightness). + * + * @defaultValue 0.001 + */ + eps: number; + /** + * PRNG instance to use for randomized values + * + * @defaultValue {@link @thi.ng/random#SYSTEM} + */ + rnd: IRandom; +} + +export interface ColorThemePart { + /** + * Color range spec to use + */ + range?: ColorRange | ColorRangePreset; + /** + * HSV(A) base color + */ + base?: ReadonlyColor | CSSColorName; + /** + * Relative weight of this theme part + * + * @defaultValue 1.0 + */ + weight?: number; +} + +export type ColorThemePartTuple = + | [ColorRangePreset, CSSColorName, number?] + | [ColorRangePreset | CSSColorName, number?] + | ColorRangePreset + | CSSColorName; diff --git a/packages/color/src/checks.ts b/packages/color/src/checks.ts new file mode 100644 index 0000000000..b844580cb8 --- /dev/null +++ b/packages/color/src/checks.ts @@ -0,0 +1,22 @@ +import { eqDelta } from "@thi.ng/math"; +import type { ReadonlyColor } from "./api"; + +const EPS = 1e-3; + +export const isGrayHsv = (x: ReadonlyColor, eps = EPS) => x[1] <= eps; + +export const isGrayRGB = (x: ReadonlyColor, eps = EPS) => + eqDelta(x[0], x[1], eps) && eqDelta(x[0], x[2], eps); + +export const isBlackHsv = (x: ReadonlyColor, eps = EPS) => x[2] <= eps; + +export const isBlackRGB = (x: ReadonlyColor, eps = EPS) => + x[0] <= eps && x[1] <= eps && x[2] <= eps; + +export const isWhiteHsv = (x: ReadonlyColor, eps = EPS) => + x[1] <= eps && x[2] >= 1 - eps; + +export const isWhiteRGB = (x: ReadonlyColor, eps = EPS) => { + eps = 1 - eps; + return x[0] >= eps && x[1] >= eps && x[2] >= eps; +}; diff --git a/packages/color/src/color-range.ts b/packages/color/src/color-range.ts new file mode 100644 index 0000000000..5c789b64fe --- /dev/null +++ b/packages/color/src/color-range.ts @@ -0,0 +1,265 @@ +import { peek } from "@thi.ng/arrays"; +import { isArray, isNumber, isString } from "@thi.ng/checks"; +import { illegalArgs } from "@thi.ng/errors"; +import { IRandom, SYSTEM, weightedRandom } from "@thi.ng/random"; +import { analogHSV } from "./analog"; +import type { + Color, + ColorRange, + ColorRangeOpts, + ColorRangePreset, + ColorThemePart, + ColorThemePartTuple, + Range, + ReadonlyColor, +} from "./api"; +import { isBlackHsv, isGrayHsv, isWhiteHsv } from "./checks"; +import { ensureAlpha } from "./internal/ensure-alpha"; +import { ensureHue } from "./internal/ensure-hue"; +import { parseCss } from "./parse-css"; +import { rgbaHsva } from "./rgba-hsva"; + +/** + * Preset {@link ColorRange}s for use with {@link colorsFromRange}, + * {@link colorsFromTheme} etc. + */ +export const RANGES: Record = { + light: { + s: [[0.3, 0.7]], + v: [[0.9, 1]], + b: [[0.15, 0.3]], + w: [[0.3, 1]], + }, + dark: { + s: [[0.7, 1]], + v: [[0.15, 0.4]], + b: [[0, 0.5]], + w: [[0.5, 0.75]], + }, + bright: { + s: [[0.8, 1]], + v: [[0.8, 1]], + }, + weak: { + s: [[0.15, 0.3]], + v: [[0.7, 1]], + b: [[0.2, 0.2]], + w: [[0.2, 1]], + }, + neutral: { + s: [[0.25, 0.35]], + v: [[0.3, 0.7]], + b: [[0.15, 0.15]], + w: [[0.9, 1]], + }, + fresh: { + s: [[0.4, 0.8]], + v: [[0.8, 1]], + b: [[0.05, 0.3]], + w: [[0.8, 1]], + }, + soft: { + s: [[0.2, 0.3]], + v: [[0.6, 0.9]], + b: [[0.05, 0.15]], + w: [[0.6, 0.9]], + }, + hard: { + s: [[0.9, 1]], + v: [[0.4, 1]], + }, + warm: { + s: [[0.6, 0.9]], + v: [[0.4, 0.9]], + b: [[0.2, 0.2]], + w: [[0.8, 1]], + }, + cool: { + s: [[0.05, 0.2]], + v: [[0.9, 1]], + b: [[0, 0.95]], + w: [[0.95, 1]], + }, + intense: { + s: [[0.9, 1]], + v: [ + [0.2, 0.35], + [0.8, 1], + ], + }, +}; + +const FULL: Range[] = [[0, 1]]; + +const DEFAULT_RANGE: ColorRange = { + h: FULL, + s: FULL, + v: FULL, + b: FULL, + w: FULL, + a: [[1, 1]], +}; + +const DEFAULT_OPTS: ColorRangeOpts = { + num: Infinity, + variance: 0.025, + eps: 1e-3, + rnd: SYSTEM, +}; + +const $rnd = (ranges: Range[], rnd: IRandom) => + rnd.minmax(...ranges[rnd.int() % ranges.length]); + +/** + * Takes a {@link ColorRange}, optional base color (HSV(A)) and options to produce + * a single new result color. This color is randomized within the channel limits + * of the given `range`. If a `base` color is provided, its hue is used as bias + * and the `variance` option defines the max. -/+ normalized hue shift of the + * result color. + * + * @remarks + * If the base color is a shade of gray (incl. black & white), the result will + * be another gray and is based on the range's black and white point sub-ranges. + * + * The alpha channel of the result color will only be randomized (based on + * `range.a` settings) iff no `base` color was provided. If `base` is given, the + * result will used the same alpha. + * + * A custom PRNG can be defined via the `rnd` option (default: `Math.random`). + * + * @param range + * @param base + * @param opts + */ +export const colorFromRange = ( + range: ColorRange, + base?: ReadonlyColor, + opts?: Partial> +): Color => { + range = { ...DEFAULT_RANGE, ...range }; + const { variance, rnd, eps } = { ...DEFAULT_OPTS, ...opts }; + let h: number, a: number; + if (base) { + h = base[0]; + a = ensureAlpha(base[3]); + if (isBlackHsv(base, eps)) return [h, 0, $rnd(range.b!, rnd), a]; + if (isWhiteHsv(base, eps)) return [h, 0, $rnd(range.w!, rnd), a]; + if (isGrayHsv(base, eps)) + return [ + h, + 0, + $rnd(rnd.float() < 0.5 ? range.b! : range.w!, rnd), + a, + ]; + h = ensureHue(h + rnd.norm(variance)); + } else { + h = $rnd(range.h!, rnd); + a = $rnd(range.a!, rnd); + } + return [h, $rnd(range.s!, rnd), $rnd(range.v!, rnd), a]; +}; + +/** + * Generator version of {@link colorFromRange}, by default yielding an infinite + * sequence of random colors based on given range, base color (optional) and + * other opts. Use `num` option to limit number of results. + * + * @param range + * @param base + * @param opts + */ +export function* colorsFromRange( + range: ColorRange, + base?: ReadonlyColor, + opts: Partial = {} +) { + let num = opts.num != undefined ? opts.num : Infinity; + while (--num >= 0) yield colorFromRange(range, base, opts); +} + +/** @internal */ +const asThemePart = (p: ColorThemePart | ColorThemePartTuple) => { + let spec: ColorThemePart; + let weight: number; + if (isArray(p)) { + const [a, ...xs] = p; + if (isNumber(peek(xs))) { + weight = peek(xs); + xs.pop(); + } else { + weight = 1; + } + spec = ( + (xs.length === 1 + ? { range: a, base: xs[0], weight } + : xs.length === 0 + ? RANGES[a] + ? { range: a, weight } + : { base: a, weight } + : illegalArgs(`invalid theme part: "${p}"`)) + ); + } else if (isString(p)) { + spec = ( + (RANGES[p] + ? { range: p, weight: 1 } + : { base: p, weight: 1 }) + ); + } else { + spec = p; + spec.weight == null && (spec.weight = 1); + } + isString(spec.range) && (spec.range = RANGES[spec.range]); + isString(spec.base) && (spec.base = rgbaHsva([], parseCss(spec.base))); + return spec; +}; + +/** + * Probabilistic color theme generator. Yield randomized colors based on given + * weighted set of theme part specs. + * + * @remarks + * Each theme part is a tuple of either: + * + * - `[range, color, weight?]` + * - `[range, weight?]` + * - `[color, weight?]` + * + * `range` can be either a {@link ColorRange} or the name of a {@link RANGE} + * preset. Likewise, `color` can be an HSV(A) color tuple or a CSS color name. + * The `weight` of each part defines the relative importance/probability of this + * theme part, compared to others. Default weight is 1.0. + * + * @example + * ```ts + * [...colorsFromTheme( + * [["cool", "aliceblue"], ["bright", "orange", 0.25], ["hotpink", 0.1]], + * { num: 10 } + * )] + * ``` + * + * @param parts + * @param opts + */ +export function* colorsFromTheme( + parts: (ColorThemePart | ColorThemePartTuple)[], + opts: Partial = {} +) { + let { num, variance } = { ...DEFAULT_OPTS, ...opts }; + const theme = parts.map(asThemePart); + const choice = weightedRandom( + theme, + theme.map((x) => x.weight!) + ); + while (--num! >= 0) { + const spec = choice(); + if (spec.range) { + yield colorFromRange( + spec.range, + spec.base, + opts + ); + } else if (spec.base) { + yield analogHSV([], spec.base, variance!); + } + } +} diff --git a/packages/color/src/cosine-gradients.ts b/packages/color/src/cosine-gradients.ts index eb29492b60..6e1d6f8345 100644 --- a/packages/color/src/cosine-gradients.ts +++ b/packages/color/src/cosine-gradients.ts @@ -9,39 +9,25 @@ import { tween, zip, } from "@thi.ng/transducers"; -import type { Color, CosCoeffs, CosGradientSpec, ReadonlyColor } from "./api"; +import type { + Color, + CosCoeffs, + CosGradientSpec, + CosineGradientPreset, + ReadonlyColor, +} from "./api"; import { clamp } from "./clamp"; -export type GradientPresets = Record< - | "blue-cyan" - | "blue-magenta-orange" - | "blue-white-red" - | "cyan-magenta" - | "green-blue-orange" - | "green-cyan" - | "green-magenta" - | "green-red" - | "heat1" - | "magenta-green" - | "orange-blue" - | "orange-magenta-blue" - | "purple-orange-cyan" - | "rainbow1" - | "rainbow2" - | "rainbow3" - | "rainbow4" - | "red-blue" - | "yellow-green-blue" - | "yellow-magenta-cyan" - | "yellow-purple-magenta" - | "yellow-red", - CosGradientSpec ->; - -// see http://dev.thi.ng/gradients/ - unlike the clojure version, these -// presets are for RGBA (though the alpha channel is configured to -// always be 1.0) -export const GRADIENTS: GradientPresets = { +/** + * Preset cosine gradient definitions. See previews at: + * https://github.com/thi-ng/umbrella/tree/develop/packages/color#cosine-gradients + * + * @remarks + * See http://dev.thi.ng/gradients/ for a gradient designer. Note: unlike the + * linked original Clojure version, these presets here are for RGBA (though the + * alpha channel is configured to always be 1.0) + */ +export const GRADIENTS: Record = { "blue-cyan": [ [0, 0.5, 0.5, 1], [0, 0.5, 0.5, 0], @@ -176,6 +162,13 @@ export const GRADIENTS: GradientPresets = { ], }; +/** + * Computes a single RGBA color for given gradient spec and normalized position + * `t` (in [0..1] interval). + * + * @param spec + * @param t + */ export const cosineColor = (spec: CosGradientSpec, t: number): Color => transduce( map(([a, b, c, d]) => @@ -186,8 +179,15 @@ export const cosineColor = (spec: CosGradientSpec, t: number): Color => zip(...spec) ); +/** + * Computes a full cosine gradient and returns an array of `n` sampled RGBA + * colors. + * + * @param n + * @param spec + */ export const cosineGradient = (n: number, spec: CosGradientSpec) => - transduce(map(partial(cosineColor, spec)), push(), normRange(n - 1)); + transduce(map(partial(cosineColor, spec)), push(), normRange(n - 1)); /** * Returns coefficients to produce a cosine gradient between the two diff --git a/packages/color/src/distance.ts b/packages/color/src/distance.ts new file mode 100644 index 0000000000..eee9e96c37 --- /dev/null +++ b/packages/color/src/distance.ts @@ -0,0 +1,50 @@ +import { cossin, TAU } from "@thi.ng/math"; +import type { ColorDistance } from "./api"; +import { luminanceRGB } from "./luminance-rgb"; + +/** + * Computes distance between two HSV colors, i.e. the eucledian distance between + * points in a cyclinder. + * + * @param a + * @param b + */ +export const distHSV: ColorDistance = (a, b) => { + const aa = cossin(a[0] * TAU, a[1]); + const bb = cossin(b[0] * TAU, b[1]); + return Math.hypot(aa[0] - bb[0], aa[1] - bb[1], a[2] - b[2]); +}; + +/** + * Computes difference in saturation between two HSV colors. + * + * @param a + * @param b + */ +export const distSatHSV: ColorDistance = (a, b) => Math.abs(a[1] - b[1]); + +/** + * Computes difference in brightness between two HSV or two HSL colors. + * + * @param a + * @param b + */ +export const distLumaHSV: ColorDistance = (a, b) => Math.abs(a[2] - b[2]); + +/** + * Computes eucledian distance between two RGB colors. + * + * @param a + * @param b + */ +export const distRGB: ColorDistance = (a, b) => + Math.hypot(a[0] - b[0], a[1] - b[1], a[2] - b[2]); + +/** + * Computes difference in luminance between two RGB colors. + * + * @param a + * @param b + */ +export const distLumaRGB: ColorDistance = (a, b) => + Math.abs(luminanceRGB(a) - luminanceRGB(b)); diff --git a/packages/color/src/index.ts b/packages/color/src/index.ts index dab7a0934d..f08948cf1c 100644 --- a/packages/color/src/index.ts +++ b/packages/color/src/index.ts @@ -42,11 +42,17 @@ export * from "./xyza"; export * from "./ycbcr"; export * from "./alpha"; +export * from "./analog"; +export * from "./checks"; export * from "./clamp"; export * from "./closest-hue"; +export * from "./color-range"; export * from "./cosine-gradients"; +export * from "./distance"; export * from "./invert"; export * from "./luminance"; export * from "./luminance-rgb"; export * from "./mix"; +export * from "./sort"; +export * from "./swatches"; export * from "./transform"; diff --git a/packages/color/src/names.ts b/packages/color/src/names.ts index 4d3ec21eab..0693bcaf36 100644 --- a/packages/color/src/names.ts +++ b/packages/color/src/names.ts @@ -1,6 +1,6 @@ -import type { IObjectOf } from "@thi.ng/api"; +import type { CSSColorName } from "./api"; -export const CSS_NAMES: IObjectOf = { +export const CSS_NAMES: Record = { aliceblue: "f0f8ff", antiquewhite: "faebd7", aqua: "0ff", diff --git a/packages/color/src/parse-css.ts b/packages/color/src/parse-css.ts index 1da5d9c746..210a63b4e0 100644 --- a/packages/color/src/parse-css.ts +++ b/packages/color/src/parse-css.ts @@ -2,7 +2,7 @@ import type { IDeref } from "@thi.ng/api"; import { illegalArgs } from "@thi.ng/errors"; import { clamp01 } from "@thi.ng/math"; import { maybeParseFloat, maybeParseInt } from "@thi.ng/strings"; -import type { Color } from "./api"; +import type { Color, CSSColorName } from "./api"; import { INV8BIT } from "./constants"; import { hslaRgba } from "./hsla-rgba"; import { int32Rgba } from "./int-rgba"; @@ -34,7 +34,7 @@ export const parseCss = (col: string | IDeref) => { ]); } } else { - const c = CSS_NAMES[col]; + const c = CSS_NAMES[col]; !c && illegalArgs(`invalid color: "${col}"`); return int32Rgba([], parseHex(c)); } diff --git a/packages/color/src/sort.ts b/packages/color/src/sort.ts new file mode 100644 index 0000000000..42f5a48fd5 --- /dev/null +++ b/packages/color/src/sort.ts @@ -0,0 +1,19 @@ +import type { Fn } from "@thi.ng/api"; +import { sortByCachedKey } from "@thi.ng/arrays"; +import { compareNumAsc, compareNumDesc } from "@thi.ng/compare"; +import type { ReadonlyColor } from "./api"; +import { distHSV, distRGB } from "./distance"; + +export const selectChannel = (id: number) => (col: ReadonlyColor) => col[id]; + +export const proximityHSV = (target: ReadonlyColor) => (col: ReadonlyColor) => + distHSV(target, col); + +export const proximityRGB = (target: ReadonlyColor) => (col: ReadonlyColor) => + distRGB(target, col); + +export const sortColors = ( + cols: ReadonlyColor[], + key: Fn, + isReverse = false +) => sortByCachedKey(cols, key, isReverse ? compareNumDesc : compareNumAsc); diff --git a/packages/color/src/swatches.ts b/packages/color/src/swatches.ts new file mode 100644 index 0000000000..0690519282 --- /dev/null +++ b/packages/color/src/swatches.ts @@ -0,0 +1,22 @@ +import type { Fn2, IObjectOf } from "@thi.ng/api"; +import type { ReadonlyColor } from "./api"; + +export const swatches = ( + cols: ReadonlyColor[], + fn: Fn2, + attribs: IObjectOf = {} +) => ["g", attribs, ...cols.map(fn)]; + +export const swatchesH = ( + cols: ReadonlyColor[], + w = 5, + h = 50, + attribs?: IObjectOf +) => swatches(cols, (fill, i) => ["rect", { fill }, [i * w, 0], w, h], attribs); + +export const swatchesV = ( + cols: ReadonlyColor[], + w = 50, + h = 5, + attribs: IObjectOf = {} +) => swatches(cols, (fill, i) => ["rect", { fill }, [0, i * h], w, h], attribs); diff --git a/packages/color/tools/index.ts b/packages/color/tools/index.ts index 981d54aa6d..4a6f94b5d5 100644 --- a/packages/color/tools/index.ts +++ b/packages/color/tools/index.ts @@ -1,20 +1,51 @@ -import { asSvg, rect, svgDoc } from "@thi.ng/geom"; +import { serialize } from "@thi.ng/hiccup"; +import { svg } from "@thi.ng/hiccup-svg"; import { writeFileSync } from "fs"; -import { cosineGradient, GRADIENTS } from "../src"; +import { + colorsFromTheme, + ColorThemePartTuple, + cosineGradient, + CosineGradientPreset, + GRADIENTS, + hsvaRgba, + swatchesH, +} from "../src"; Object.keys(GRADIENTS).forEach((id) => { const fname = `export/gradient-${id}.svg`; console.log(fname); writeFileSync( fname, - asSvg( - svgDoc( - {}, - ...cosineGradient( - 100, - GRADIENTS[id] - ).map((col, i) => rect([i * 5, 0], [5, 50], { fill: col })) + serialize( + svg( + { width: 500, height: 50, convert: true }, + swatchesH( + cosineGradient(100, GRADIENTS[id]), + 5, + 50 + ) ) ) ); }); + +//////////////////////////////////////////////////////////// + +const theme = [ + ["cool", "goldenrod"], + ["fresh", "hotpink", 0.1], + ["light", "springgreen", 0.1], +]; + +const colors = [...colorsFromTheme(theme, { num: 200, variance: 0.05 })]; + +const doc = svg( + { width: 1000, height: 50, convert: true }, + swatchesH( + colors.map((x) => hsvaRgba([], x)), + 5, + 50 + ) +); + +writeFileSync("export/swatches-ex01.svg", serialize(doc)); diff --git a/packages/color/tpl.readme.md b/packages/color/tpl.readme.md index fde9472eb1..b1f9e5e260 100644 --- a/packages/color/tpl.readme.md +++ b/packages/color/tpl.readme.md @@ -48,6 +48,147 @@ aliases (in addition to array indexing) and are fully compatible with all functions (and act as syntax sugar for generic conversion functions). Wrapper factory functions are provided for convenience. +### Color theme generation + +The package provides several methods for procedural & declarative color theme +generations. The latter relies on the concept of HSV color ranges, which can be +sampled directly and/or mixed with a base color to produce randomized +variations. Furthermore, multiple such ranges can be combined into a weighted +set to define probabilistic color themes. + +```ts +// single random color drawn from the "bright" color range preset +colorFromRange(RANGES.bright); +// [ 0.7302125322518669, 0.8519945301256682, 0.8134374983367859, 1 ] + +// single random color based on given HSV base color and preset +colorFromRange(RANGES.warm, [0.33, 1, 1]) +// [ 0.3065587375218628, 0.8651353734302525, 0.748781892650323, 1 ] + +// infinite iterator of colors sampled from the preset +// (see table below) +const colors = colorsFromRange(RANGES.bright); +colors.next(); +// { +// value: [ 0.006959075656347791, 0.8760165887192115, 0.912149937028727, 1 ], +// done: false +// } + +// 10 cool reds, w/ 10% hue variance +[...colorsFromRange(RANGES.cool, [0, 0.8, 1], { num: 10, variance: 0.1 })] + +// generate colors based on given (weighted) textual description(s) +// here using named CSS colors, but could also be HSV tuples +[...colorsFromTheme( + [["warm", "goldenrod"], ["cool", "springgreen", 0.1]], + { num: 100, variance: 0.05 } +)] + +// theme parts can also be given in the format used internally +// note: base colors are always in HSV +// all keys are optional (range, base, weight), +// but at least `range` or `base` must be given... +[...colorsFromTheme( + [ + { range: "warm", base: "goldenrod" }, + { range: RANGES.cool, base: [0, 1, 0.5], weight: 0.1 } + ], + { num: 100, variance: 0.05 } +)] +``` + +| ID | 100 colors drawn from color range preset only, sorted by hue | +|-----------|--------------------------------------------------------------------------------------------------------------------| +| `bright` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-bright.svg) | +| `cool` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-cool.svg) | +| `dark` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-dark.svg) | +| `fresh` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-fresh.svg) | +| `hard` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-hard.svg) | +| `intense` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-intense.svg) | +| `light` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-light.svg) | +| `neutral` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-neutral.svg) | +| `soft` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-soft.svg) | +| `warm` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-warm.svg) | +| `weak` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-range-weak.svg) | + +| ID | 100 colors, single base color w/ color range preset, sorted by hue | +|-----------|--------------------------------------------------------------------------------------------------------------------| +| `bright` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-bright.svg) | +| `cool` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-cool.svg) | +| `dark` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-dark.svg) | +| `fresh` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-fresh.svg) | +| `hard` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-hard.svg) | +| `intense` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-intense.svg) | +| `light` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-light.svg) | +| `neutral` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-neutral.svg) | +| `soft` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-soft.svg) | +| `warm` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-warm.svg) | +| `weak` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-green-weak.svg) | + +| ID | 100 colors, 2 base colors w/ color range preset, sorted by brightness | +|-----------|------------------------------------------------------------------------------------------------------------------| +| `bright` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-bright.svg) | +| `cool` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-cool.svg) | +| `dark` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-dark.svg) | +| `fresh` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-fresh.svg) | +| `hard` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-hard.svg) | +| `intense` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-intense.svg) | +| `light` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-light.svg) | +| `neutral` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-neutral.svg) | +| `soft` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-soft.svg) | +| `warm` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-warm.svg) | +| `weak` | ![color swatch](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-duo-weak.svg) | + +Full example: + +```ts +import { colorsFromTheme, hsva, swatchesH } from "@thi.ng/color"; +import { serialize } from "@thi.ng/hiccup"; +import { svg } from "@thi.ng/hiccup-svg"; +import { writeFileSync } from "fs"; + +// color theme definition using: +// color range preset names, CSS colors and weights +const theme: ColorThemePartTuple[] = [ + ["cool", "goldenrod"], + ["fresh", "hotpink", 0.1], + ["light", "springgreen", 0.1], +]; + +// generate 200 HSV colors based on above description +const colors = [...colorsFromTheme(theme, { num: 200, variance: 0.05 })]; + +// create SVG doc of color swatches (hiccup format) +// (convert colors to RGB for smaller file size) +const doc = svg( + { width: 1000, height: 50, convert: true }, + swatchesH(colors.map((x) => hsvaRgba([], x)), 5, 50) +); + +// serialize to SVG file +writeFileSync("export/swatches-ex01.svg", serialize(doc)); +``` + +![example result color swatches](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-ex01.svg) + +### Color sorting + +The `sortColors()` function can be used to sort an array of colors using +arbitrary sort criteria. The following comparators are bundled: + +- `selectChannel(i)` - sort by channel +- `proximityHSV(target)` - sort by distance to target color (HSV colors) +- `proximityRGB(target)` - sort by distance to target color (RGB colors) + +```ts +// (see above example) +const colors = [...colorsFromTheme(theme, { num: 200, variance: 0.05 })]; + +sortColors(colors, proximityHSV([0,1,0.5])); +``` + +![sorted color swatches](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/color/swatches-ex02.svg) + ### RGBA transformations RGBA [color matrix diff --git a/packages/colored-noise/CHANGELOG.md b/packages/colored-noise/CHANGELOG.md index 58a065636c..2345456865 100644 --- a/packages/colored-noise/CHANGELOG.md +++ b/packages/colored-noise/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/colored-noise@0.1.7...@thi.ng/colored-noise@0.1.8) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/colored-noise + + + + + ## [0.1.7](https://github.com/thi-ng/umbrella/compare/@thi.ng/colored-noise@0.1.6...@thi.ng/colored-noise@0.1.7) (2020-12-22) **Note:** Version bump only for package @thi.ng/colored-noise diff --git a/packages/colored-noise/README.md b/packages/colored-noise/README.md index 45efc33dd8..057ce7cbed 100644 --- a/packages/colored-noise/README.md +++ b/packages/colored-noise/README.md @@ -13,7 +13,7 @@ This project is part of the - [Blue noise](#blue-noise) - [Green noise](#green-noise) - [Pink noise](#pink-noise) - - [Red / brown noise](#red---brown-noise) + - [Red / brown noise](#red--brown-noise) - [Violet noise](#violet-noise) - [White noise](#white-noise) - [Status](#status) @@ -21,7 +21,7 @@ This project is part of the - [Installation](#installation) - [Dependencies](#dependencies) - [API](#api) - - [Use as IGen in @thi.ng/dsp](#use-as-igen-in-thing-dsp) + - [Use as IGen in @thi.ng/dsp](#use-as-igen-in-thingdsp) - [Authors](#authors) - [License](#license) @@ -442,4 +442,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2015 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2015 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/colored-noise/package.json b/packages/colored-noise/package.json index dc1a9cc660..5fe9c96100 100644 --- a/packages/colored-noise/package.json +++ b/packages/colored-noise/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/colored-noise", - "version": "0.1.7", + "version": "0.1.8", "description": "Customizable O(1) ES6 generators for colored noise", "module": "./index.js", "main": "./lib/index.js", @@ -34,29 +34,29 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.12.1", - "@thi.ng/api": "^6.13.5", - "@thi.ng/dsp": "^3.0.0", - "@thi.ng/dsp-io-wav": "^0.1.34", - "@thi.ng/text-canvas": "^0.2.36", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vectors": "^4.8.3", + "@thi.ng/api": "^6.13.6", + "@thi.ng/dsp": "^3.0.1", + "@thi.ng/dsp-io-wav": "^0.1.35", + "@thi.ng/text-canvas": "^0.3.0", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vectors": "^4.8.4", "@types/mocha": "^8.2.0", "@types/node": "^14.14.14", "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/binary": "^2.0.20", - "@thi.ng/random": "^2.1.3" + "@thi.ng/binary": "^2.0.21", + "@thi.ng/random": "^2.1.4" }, "files": [ "*.js", diff --git a/packages/compare/CHANGELOG.md b/packages/compare/CHANGELOG.md index 2003d6361e..adc9bfd510 100644 --- a/packages/compare/CHANGELOG.md +++ b/packages/compare/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.3.22](https://github.com/thi-ng/umbrella/compare/@thi.ng/compare@1.3.21...@thi.ng/compare@1.3.22) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/compare + + + + + ## [1.3.21](https://github.com/thi-ng/umbrella/compare/@thi.ng/compare@1.3.20...@thi.ng/compare@1.3.21) (2020-12-22) **Note:** Version bump only for package @thi.ng/compare diff --git a/packages/compare/README.md b/packages/compare/README.md index 3ea8ef98de..f54ad02ead 100644 --- a/packages/compare/README.md +++ b/packages/compare/README.md @@ -16,7 +16,7 @@ This project is part of the - [Usage examples](#usage-examples) - [API](#api) - [ICompare support](#icompare-support) - - [Cluster sort w/ multiple sort keys](#cluster-sort-w--multiple-sort-keys) + - [Cluster sort w/ multiple sort keys](#cluster-sort-w-multiple-sort-keys) - [Authors](#authors) - [License](#license) @@ -167,4 +167,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/compare/package.json b/packages/compare/package.json index f9798ba9dc..009e8d5824 100644 --- a/packages/compare/package.json +++ b/packages/compare/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/compare", - "version": "1.3.21", + "version": "1.3.22", "description": "Comparators with support for types implementing the @thi.ng/api/ICompare interface", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5" + "@thi.ng/api": "^6.13.6" }, "files": [ "*.js", diff --git a/packages/compose/CHANGELOG.md b/packages/compose/CHANGELOG.md index de9afba900..d3a5c68d12 100644 --- a/packages/compose/CHANGELOG.md +++ b/packages/compose/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.4.23](https://github.com/thi-ng/umbrella/compare/@thi.ng/compose@1.4.22...@thi.ng/compose@1.4.23) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/compose + + + + + ## [1.4.22](https://github.com/thi-ng/umbrella/compare/@thi.ng/compose@1.4.21...@thi.ng/compose@1.4.22) (2020-12-22) **Note:** Version bump only for package @thi.ng/compose diff --git a/packages/compose/README.md b/packages/compose/README.md index b39a34e4f5..aa9e5b8d69 100644 --- a/packages/compose/README.md +++ b/packages/compose/README.md @@ -77,4 +77,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/compose/package.json b/packages/compose/package.json index 8ce1eb0b4d..c64498dcf3 100644 --- a/packages/compose/package.json +++ b/packages/compose/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/compose", - "version": "1.4.22", + "version": "1.4.23", "description": "Optimized functional composition helpers", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,12 +45,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/errors": "^1.2.25" + "@thi.ng/api": "^6.13.6", + "@thi.ng/errors": "^1.2.26" }, "files": [ "*.js", diff --git a/packages/csp/CHANGELOG.md b/packages/csp/CHANGELOG.md index bc9aee9836..14fbbb02bf 100644 --- a/packages/csp/CHANGELOG.md +++ b/packages/csp/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.1.45](https://github.com/thi-ng/umbrella/compare/@thi.ng/csp@1.1.44...@thi.ng/csp@1.1.45) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/csp + + + + + ## [1.1.44](https://github.com/thi-ng/umbrella/compare/@thi.ng/csp@1.1.43...@thi.ng/csp@1.1.44) (2020-12-22) **Note:** Version bump only for package @thi.ng/csp diff --git a/packages/csp/README.md b/packages/csp/README.md index 6951b089b6..c0cbcdad06 100644 --- a/packages/csp/README.md +++ b/packages/csp/README.md @@ -254,4 +254,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/csp/package.json b/packages/csp/package.json index b3ae21b16b..01a6cdc1f5 100644 --- a/packages/csp/package.json +++ b/packages/csp/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/csp", - "version": "1.1.44", + "version": "1.1.45", "description": "ES6 promise based CSP primitives & operations", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public", "testasync": "tsc -p test && node build/test/async.js", @@ -49,16 +49,16 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/arrays": "^0.8.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/dcons": "^2.3.4", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/arrays": "^0.9.0", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/dcons": "^2.3.5", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/csv/CHANGELOG.md b/packages/csv/CHANGELOG.md index 87558bfb9b..3052cf53e1 100644 --- a/packages/csv/CHANGELOG.md +++ b/packages/csv/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/csv@0.1.3...@thi.ng/csv@0.1.4) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/csv + + + + + ## [0.1.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/csv@0.1.2...@thi.ng/csv@0.1.3) (2020-12-22) **Note:** Version bump only for package @thi.ng/csv diff --git a/packages/csv/README.md b/packages/csv/README.md index 20349e18aa..cfb99280a0 100644 --- a/packages/csv/README.md +++ b/packages/csv/README.md @@ -130,4 +130,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2014 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2014 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/csv/package.json b/packages/csv/package.json index a1ccfd1f9f..128d6750be 100644 --- a/packages/csv/package.json +++ b/packages/csv/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/csv", - "version": "0.1.3", + "version": "0.1.4", "description": "Customizable, transducer-based CSV parser/object mapper and transformer", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/strings": "^1.11.3", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/strings": "^1.11.4", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/date/CHANGELOG.md b/packages/date/CHANGELOG.md index 3c4e2b16b9..5468246649 100644 --- a/packages/date/CHANGELOG.md +++ b/packages/date/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/date@0.2.4...@thi.ng/date@0.2.5) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/date + + + + + ## [0.2.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/date@0.2.3...@thi.ng/date@0.2.4) (2020-12-22) **Note:** Version bump only for package @thi.ng/date diff --git a/packages/date/README.md b/packages/date/README.md index fc76d9eace..08b96c1588 100644 --- a/packages/date/README.md +++ b/packages/date/README.md @@ -234,4 +234,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/date/package.json b/packages/date/package.json index b6f7f02d87..f0aeed9b39 100644 --- a/packages/date/package.json +++ b/packages/date/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/date", - "version": "0.2.4", + "version": "0.2.5", "description": "Date/timestamp iterators, formatters, rounding", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5" + "@thi.ng/api": "^6.13.6" }, "files": [ "*.js", diff --git a/packages/dcons/CHANGELOG.md b/packages/dcons/CHANGELOG.md index 2f2d715775..d5cfccbf63 100644 --- a/packages/dcons/CHANGELOG.md +++ b/packages/dcons/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.3.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/dcons@2.3.4...@thi.ng/dcons@2.3.5) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/dcons + + + + + ## [2.3.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/dcons@2.3.3...@thi.ng/dcons@2.3.4) (2020-12-22) **Note:** Version bump only for package @thi.ng/dcons diff --git a/packages/dcons/README.md b/packages/dcons/README.md index 6c8e66e9a3..10eb4c463b 100644 --- a/packages/dcons/README.md +++ b/packages/dcons/README.md @@ -169,4 +169,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2017 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2017 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/dcons/package.json b/packages/dcons/package.json index 0ca63a3934..8f7ff42450 100644 --- a/packages/dcons/package.json +++ b/packages/dcons/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dcons", - "version": "2.3.4", + "version": "2.3.5", "description": "Double-linked lists with comprehensive set of operations (incl. optional self-organizing behaviors)", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,17 +45,17 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/compare": "^1.3.21", - "@thi.ng/equiv": "^1.0.34", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/random": "^2.1.3", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/compare": "^1.3.22", + "@thi.ng/equiv": "^1.0.35", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/random": "^2.1.4", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/defmulti/CHANGELOG.md b/packages/defmulti/CHANGELOG.md index 36cd6af62d..88eee8dff7 100644 --- a/packages/defmulti/CHANGELOG.md +++ b/packages/defmulti/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.3.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/defmulti@1.3.3...@thi.ng/defmulti@1.3.4) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/defmulti + + + + + ## [1.3.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/defmulti@1.3.2...@thi.ng/defmulti@1.3.3) (2020-12-22) **Note:** Version bump only for package @thi.ng/defmulti diff --git a/packages/defmulti/README.md b/packages/defmulti/README.md index a9bc59ac67..5114a3f405 100644 --- a/packages/defmulti/README.md +++ b/packages/defmulti/README.md @@ -20,7 +20,7 @@ This project is part of the - [implementations()](#implementations) - [defmultiN()](#defmultin) - [Usage examples](#usage-examples) - - [Dynamic dispatch: Simple S-expression interpreter](#dynamic-dispatch--simple-s-expression-interpreter) + - [Dynamic dispatch: Simple S-expression interpreter](#dynamic-dispatch-simple-s-expression-interpreter) - [True multiple arg dispatch](#true-multiple-arg-dispatch) - [Dispatch value graph visualization](#dispatch-value-graph-visualization) - [Authors](#authors) @@ -386,4 +386,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/defmulti/package.json b/packages/defmulti/package.json index d91550ee4d..c36954cb32 100644 --- a/packages/defmulti/package.json +++ b/packages/defmulti/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/defmulti", - "version": "1.3.3", + "version": "1.3.4", "description": "Dynamic, extensible multiple dispatch via user supplied dispatch function.", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,12 +45,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/errors": "^1.2.25" + "@thi.ng/api": "^6.13.6", + "@thi.ng/errors": "^1.2.26" }, "files": [ "*.js", diff --git a/packages/dgraph-dot/CHANGELOG.md b/packages/dgraph-dot/CHANGELOG.md index 2c8b308d52..a6075ba06e 100644 --- a/packages/dgraph-dot/CHANGELOG.md +++ b/packages/dgraph-dot/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.33](https://github.com/thi-ng/umbrella/compare/@thi.ng/dgraph-dot@0.1.32...@thi.ng/dgraph-dot@0.1.33) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/dgraph-dot + + + + + ## [0.1.32](https://github.com/thi-ng/umbrella/compare/@thi.ng/dgraph-dot@0.1.31...@thi.ng/dgraph-dot@0.1.32) (2020-12-22) **Note:** Version bump only for package @thi.ng/dgraph-dot diff --git a/packages/dgraph-dot/README.md b/packages/dgraph-dot/README.md index 9171bed657..dbecf4fe5b 100644 --- a/packages/dgraph-dot/README.md +++ b/packages/dgraph-dot/README.md @@ -112,4 +112,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/dgraph-dot/package.json b/packages/dgraph-dot/package.json index 016b932e2e..dfc9f9c0d3 100644 --- a/packages/dgraph-dot/package.json +++ b/packages/dgraph-dot/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dgraph-dot", - "version": "0.1.32", + "version": "0.1.33", "description": "Customizable Graphviz DOT serialization for @thi.ng/dgraph", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/dgraph": "^1.3.3", - "@thi.ng/dot": "^1.2.22" + "@thi.ng/api": "^6.13.6", + "@thi.ng/dgraph": "^1.3.4", + "@thi.ng/dot": "^1.2.23" }, "files": [ "*.js", diff --git a/packages/dgraph/CHANGELOG.md b/packages/dgraph/CHANGELOG.md index e6f00625a5..43670bf14e 100644 --- a/packages/dgraph/CHANGELOG.md +++ b/packages/dgraph/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.3.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/dgraph@1.3.3...@thi.ng/dgraph@1.3.4) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/dgraph + + + + + ## [1.3.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/dgraph@1.3.2...@thi.ng/dgraph@1.3.3) (2020-12-22) **Note:** Version bump only for package @thi.ng/dgraph diff --git a/packages/dgraph/README.md b/packages/dgraph/README.md index e37d17bc5e..6349fffce5 100644 --- a/packages/dgraph/README.md +++ b/packages/dgraph/README.md @@ -118,4 +118,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2015 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2015 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/dgraph/package.json b/packages/dgraph/package.json index f30801e5d3..b0fc940cdc 100644 --- a/packages/dgraph/package.json +++ b/packages/dgraph/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dgraph", - "version": "1.3.3", + "version": "1.3.4", "description": "Type-agnostic directed acyclic graph (DAG) & graph operations", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/associative": "^5.0.12", - "@thi.ng/equiv": "^1.0.34", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/associative": "^5.0.13", + "@thi.ng/equiv": "^1.0.35", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/diff/CHANGELOG.md b/packages/diff/CHANGELOG.md index b7dd793435..1ff9a4d7f6 100644 --- a/packages/diff/CHANGELOG.md +++ b/packages/diff/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.0.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/diff@4.0.0...@thi.ng/diff@4.0.1) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/diff + + + + + # [4.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/diff@3.2.35...@thi.ng/diff@4.0.0) (2020-12-22) diff --git a/packages/diff/README.md b/packages/diff/README.md index 74315bd5de..e726258962 100644 --- a/packages/diff/README.md +++ b/packages/diff/README.md @@ -83,4 +83,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/diff/package.json b/packages/diff/package.json index eb1395f235..607ed7c35a 100644 --- a/packages/diff/package.json +++ b/packages/diff/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/diff", - "version": "4.0.0", + "version": "4.0.1", "description": "Customizable diff implementations for arrays (sequential) & objects (associative), with or without linear edit logs", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -44,12 +44,12 @@ "@types/node": "^14.14.14", "mocha": "^8.2.1", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/equiv": "^1.0.34" + "@thi.ng/api": "^6.13.6", + "@thi.ng/equiv": "^1.0.35" }, "files": [ "*.js", diff --git a/packages/dl-asset/CHANGELOG.md b/packages/dl-asset/CHANGELOG.md index d7e338fc98..ca4fb5e14f 100644 --- a/packages/dl-asset/CHANGELOG.md +++ b/packages/dl-asset/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.4.11](https://github.com/thi-ng/umbrella/compare/@thi.ng/dl-asset@0.4.10...@thi.ng/dl-asset@0.4.11) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/dl-asset + + + + + ## [0.4.10](https://github.com/thi-ng/umbrella/compare/@thi.ng/dl-asset@0.4.9...@thi.ng/dl-asset@0.4.10) (2020-12-22) **Note:** Version bump only for package @thi.ng/dl-asset diff --git a/packages/dl-asset/README.md b/packages/dl-asset/README.md index 4c8374bd4a..2e8f93269f 100644 --- a/packages/dl-asset/README.md +++ b/packages/dl-asset/README.md @@ -119,4 +119,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/dl-asset/package.json b/packages/dl-asset/package.json index 7540630d83..0b411b1b5b 100644 --- a/packages/dl-asset/package.json +++ b/packages/dl-asset/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dl-asset", - "version": "0.4.10", + "version": "0.4.11", "description": "Local asset download for web apps, with automatic MIME type detection", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/mime": "^0.1.26" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/mime": "^0.1.27" }, "files": [ "*.js", diff --git a/packages/dlogic/CHANGELOG.md b/packages/dlogic/CHANGELOG.md index 6a79aff401..7345fefaaa 100644 --- a/packages/dlogic/CHANGELOG.md +++ b/packages/dlogic/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.37](https://github.com/thi-ng/umbrella/compare/@thi.ng/dlogic@1.0.36...@thi.ng/dlogic@1.0.37) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/dlogic + + + + + ## [1.0.36](https://github.com/thi-ng/umbrella/compare/@thi.ng/dlogic@1.0.35...@thi.ng/dlogic@1.0.36) (2020-12-22) **Note:** Version bump only for package @thi.ng/dlogic diff --git a/packages/dlogic/README.md b/packages/dlogic/README.md index 2f095737dd..b5611e5c4d 100644 --- a/packages/dlogic/README.md +++ b/packages/dlogic/README.md @@ -94,4 +94,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2017 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2017 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/dlogic/package.json b/packages/dlogic/package.json index d3f428ab7b..4e1625614f 100644 --- a/packages/dlogic/package.json +++ b/packages/dlogic/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dlogic", - "version": "1.0.36", + "version": "1.0.37", "description": "Assorted digital logic ops / constructs", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5" + "@thi.ng/api": "^6.13.6" }, "files": [ "*.js", diff --git a/packages/dot/CHANGELOG.md b/packages/dot/CHANGELOG.md index f5705d249a..4fa5897226 100644 --- a/packages/dot/CHANGELOG.md +++ b/packages/dot/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.2.23](https://github.com/thi-ng/umbrella/compare/@thi.ng/dot@1.2.22...@thi.ng/dot@1.2.23) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/dot + + + + + ## [1.2.22](https://github.com/thi-ng/umbrella/compare/@thi.ng/dot@1.2.21...@thi.ng/dot@1.2.22) (2020-12-22) **Note:** Version bump only for package @thi.ng/dot diff --git a/packages/dot/README.md b/packages/dot/README.md index 5cc94a1461..51a36fd524 100644 --- a/packages/dot/README.md +++ b/packages/dot/README.md @@ -168,4 +168,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/dot/package.json b/packages/dot/package.json index 08edea126c..7fc0742fc6 100644 --- a/packages/dot/package.json +++ b/packages/dot/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dot", - "version": "1.2.22", + "version": "1.2.23", "description": "Graphviz document abstraction & serialization to DOT format", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,12 +45,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13" }, "files": [ "*.js", diff --git a/packages/dsp-io-wav/CHANGELOG.md b/packages/dsp-io-wav/CHANGELOG.md index a7c5b10248..14ccd89e94 100644 --- a/packages/dsp-io-wav/CHANGELOG.md +++ b/packages/dsp-io-wav/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.35](https://github.com/thi-ng/umbrella/compare/@thi.ng/dsp-io-wav@0.1.34...@thi.ng/dsp-io-wav@0.1.35) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/dsp-io-wav + + + + + ## [0.1.34](https://github.com/thi-ng/umbrella/compare/@thi.ng/dsp-io-wav@0.1.33...@thi.ng/dsp-io-wav@0.1.34) (2020-12-22) **Note:** Version bump only for package @thi.ng/dsp-io-wav diff --git a/packages/dsp-io-wav/README.md b/packages/dsp-io-wav/README.md index 0249dfb651..ce5df49101 100644 --- a/packages/dsp-io-wav/README.md +++ b/packages/dsp-io-wav/README.md @@ -89,4 +89,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/dsp-io-wav/package.json b/packages/dsp-io-wav/package.json index 3591ea764f..bf323de9b3 100644 --- a/packages/dsp-io-wav/package.json +++ b/packages/dsp-io-wav/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dsp-io-wav", - "version": "0.1.34", + "version": "0.1.35", "description": "WAV file format generation", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/binary": "^2.0.20", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/transducers-binary": "^0.6.0" + "@thi.ng/api": "^6.13.6", + "@thi.ng/binary": "^2.0.21", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/transducers-binary": "^0.6.1" }, "files": [ "*.js", diff --git a/packages/dsp/CHANGELOG.md b/packages/dsp/CHANGELOG.md index 712a236256..c47acbcf98 100644 --- a/packages/dsp/CHANGELOG.md +++ b/packages/dsp/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [3.0.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/dsp@3.0.0...@thi.ng/dsp@3.0.1) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/dsp + + + + + # [3.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/dsp@2.1.5...@thi.ng/dsp@3.0.0) (2020-12-22) diff --git a/packages/dsp/README.md b/packages/dsp/README.md index 0c94d17291..33c2646c34 100644 --- a/packages/dsp/README.md +++ b/packages/dsp/README.md @@ -569,4 +569,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2015 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2015 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/dsp/package.json b/packages/dsp/package.json index f9ba04e3d3..52bf124f8b 100644 --- a/packages/dsp/package.json +++ b/packages/dsp/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dsp", - "version": "3.0.0", + "version": "3.0.1", "description": "Composable signal generators, oscillators, filters, FFT, spectrum, windowing & related DSP utils", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib comp fft gen osc proc util", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,16 +45,16 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/math": "^3.0.0", - "@thi.ng/random": "^2.1.3", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/math": "^3.0.1", + "@thi.ng/random": "^2.1.4", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/dual-algebra/CHANGELOG.md b/packages/dual-algebra/CHANGELOG.md index abee0c31c4..e7b0071677 100644 --- a/packages/dual-algebra/CHANGELOG.md +++ b/packages/dual-algebra/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.6](https://github.com/thi-ng/umbrella/compare/@thi.ng/dual-algebra@0.1.5...@thi.ng/dual-algebra@0.1.6) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/dual-algebra + + + + + ## [0.1.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/dual-algebra@0.1.4...@thi.ng/dual-algebra@0.1.5) (2020-12-22) **Note:** Version bump only for package @thi.ng/dual-algebra diff --git a/packages/dual-algebra/README.md b/packages/dual-algebra/README.md index aadc147a99..df03e5805c 100644 --- a/packages/dual-algebra/README.md +++ b/packages/dual-algebra/README.md @@ -210,4 +210,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/dual-algebra/package.json b/packages/dual-algebra/package.json index 8a009c3137..60d270b0bc 100644 --- a/packages/dual-algebra/package.json +++ b/packages/dual-algebra/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dual-algebra", - "version": "0.1.5", + "version": "0.1.6", "description": "Multivariate dual number algebra, automatic differentiation", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5" + "@thi.ng/api": "^6.13.6" }, "files": [ "*.js", diff --git a/packages/dynvar/CHANGELOG.md b/packages/dynvar/CHANGELOG.md index 8c4daa5259..876c5a291a 100644 --- a/packages/dynvar/CHANGELOG.md +++ b/packages/dynvar/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.29](https://github.com/thi-ng/umbrella/compare/@thi.ng/dynvar@0.1.28...@thi.ng/dynvar@0.1.29) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/dynvar + + + + + ## [0.1.28](https://github.com/thi-ng/umbrella/compare/@thi.ng/dynvar@0.1.27...@thi.ng/dynvar@0.1.28) (2020-12-22) **Note:** Version bump only for package @thi.ng/dynvar diff --git a/packages/dynvar/README.md b/packages/dynvar/README.md index 7666a1a7e0..8d85d0016e 100644 --- a/packages/dynvar/README.md +++ b/packages/dynvar/README.md @@ -142,4 +142,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/dynvar/package.json b/packages/dynvar/package.json index 8bf7704e7e..c11a937510 100644 --- a/packages/dynvar/package.json +++ b/packages/dynvar/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dynvar", - "version": "0.1.28", + "version": "0.1.29", "description": "Dynamically scoped variable bindings", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5" + "@thi.ng/api": "^6.13.6" }, "files": [ "*.js", diff --git a/packages/ecs/CHANGELOG.md b/packages/ecs/CHANGELOG.md index 0dbe9141d9..a25e71614c 100644 --- a/packages/ecs/CHANGELOG.md +++ b/packages/ecs/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.4.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/ecs@0.4.4...@thi.ng/ecs@0.4.5) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/ecs + + + + + ## [0.4.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/ecs@0.4.3...@thi.ng/ecs@0.4.4) (2020-12-22) **Note:** Version bump only for package @thi.ng/ecs diff --git a/packages/ecs/README.md b/packages/ecs/README.md index 8503504ee1..b7c88eeb26 100644 --- a/packages/ecs/README.md +++ b/packages/ecs/README.md @@ -169,4 +169,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/ecs/package.json b/packages/ecs/package.json index 3d50b46a1d..46e0038690 100644 --- a/packages/ecs/package.json +++ b/packages/ecs/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/ecs", - "version": "0.4.4", + "version": "0.4.5", "description": "Entity Component System based around typed arrays & sparse sets", "module": "./index.js", "main": "./lib/index.js", @@ -34,30 +34,30 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib caches components groups", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.12.1", - "@thi.ng/equiv": "^1.0.34", + "@thi.ng/equiv": "^1.0.35", "@types/mocha": "^8.2.0", "@types/node": "^14.14.14", "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/associative": "^5.0.12", - "@thi.ng/binary": "^2.0.20", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/dcons": "^2.3.4", - "@thi.ng/idgen": "^0.2.28", - "@thi.ng/malloc": "^4.2.4", - "@thi.ng/transducers": "^7.5.3", + "@thi.ng/api": "^6.13.6", + "@thi.ng/associative": "^5.0.13", + "@thi.ng/binary": "^2.0.21", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/dcons": "^2.3.5", + "@thi.ng/idgen": "^0.2.29", + "@thi.ng/malloc": "^4.2.5", + "@thi.ng/transducers": "^7.5.4", "tslib": "2.0.1" }, "files": [ diff --git a/packages/egf/CHANGELOG.md b/packages/egf/CHANGELOG.md index 568f4fbdbd..07484f4ad3 100644 --- a/packages/egf/CHANGELOG.md +++ b/packages/egf/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.3.6](https://github.com/thi-ng/umbrella/compare/@thi.ng/egf@0.3.5...@thi.ng/egf@0.3.6) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/egf + + + + + ## [0.3.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/egf@0.3.4...@thi.ng/egf@0.3.5) (2020-12-22) **Note:** Version bump only for package @thi.ng/egf diff --git a/packages/egf/README.md b/packages/egf/README.md index 3e0bf808ff..10ca9f227e 100644 --- a/packages/egf/README.md +++ b/packages/egf/README.md @@ -22,7 +22,7 @@ This project is part of the - [Node references](#node-references) - [Prefixed IDs](#prefixed-ids) - [Includes](#includes) - - [EGF generation / serialization](#egf-generation---serialization) + - [EGF generation / serialization](#egf-generation--serialization) - [Authors](#authors) - [License](#license) @@ -527,4 +527,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/egf/package.json b/packages/egf/package.json index 0fb144fdc9..1e2280d02a 100644 --- a/packages/egf/package.json +++ b/packages/egf/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/egf", - "version": "0.3.5", + "version": "0.3.6", "description": "Extensible Graph Format", "module": "./index.js", "main": "./lib/index.js", @@ -28,31 +28,31 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public", "pub:wip": "yarn publish --access public --no-git-tag-version" }, "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.12.1", - "@thi.ng/equiv": "^1.0.34", + "@thi.ng/equiv": "^1.0.35", "@types/mocha": "^8.2.0", "@types/node": "^14.14.14", "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/associative": "^5.0.12", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/dot": "^1.2.22", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/prefixes": "^0.1.9", - "@thi.ng/strings": "^1.11.3", - "@thi.ng/transducers-binary": "^0.6.0" + "@thi.ng/api": "^6.13.6", + "@thi.ng/associative": "^5.0.13", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/dot": "^1.2.23", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/prefixes": "^0.1.10", + "@thi.ng/strings": "^1.11.4", + "@thi.ng/transducers-binary": "^0.6.1" }, "files": [ "*.js", diff --git a/packages/equiv/CHANGELOG.md b/packages/equiv/CHANGELOG.md index 6256771ff7..febacb10a6 100644 --- a/packages/equiv/CHANGELOG.md +++ b/packages/equiv/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.35](https://github.com/thi-ng/umbrella/compare/@thi.ng/equiv@1.0.34...@thi.ng/equiv@1.0.35) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/equiv + + + + + ## [1.0.34](https://github.com/thi-ng/umbrella/compare/@thi.ng/equiv@1.0.33...@thi.ng/equiv@1.0.34) (2020-12-22) **Note:** Version bump only for package @thi.ng/equiv diff --git a/packages/equiv/README.md b/packages/equiv/README.md index eed527e15b..009b795109 100644 --- a/packages/equiv/README.md +++ b/packages/equiv/README.md @@ -124,4 +124,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/equiv/package.json b/packages/equiv/package.json index 8eaae3f033..0647c8340a 100644 --- a/packages/equiv/package.json +++ b/packages/equiv/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/equiv", - "version": "1.0.34", + "version": "1.0.35", "description": "Extensible deep value equivalence checking for any data types", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -46,7 +46,7 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "files": [ diff --git a/packages/errors/CHANGELOG.md b/packages/errors/CHANGELOG.md index 0c59db14c8..992ed27437 100644 --- a/packages/errors/CHANGELOG.md +++ b/packages/errors/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.2.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/errors@1.2.25...@thi.ng/errors@1.2.26) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/errors + + + + + ## [1.2.25](https://github.com/thi-ng/umbrella/compare/@thi.ng/errors@1.2.24...@thi.ng/errors@1.2.25) (2020-12-22) **Note:** Version bump only for package @thi.ng/errors diff --git a/packages/errors/README.md b/packages/errors/README.md index 6d1d253691..2c3de0550b 100644 --- a/packages/errors/README.md +++ b/packages/errors/README.md @@ -102,4 +102,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/errors/package.json b/packages/errors/package.json index 7e28d154ce..87a17f0d29 100644 --- a/packages/errors/package.json +++ b/packages/errors/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/errors", - "version": "1.2.25", + "version": "1.2.26", "description": "Custom error types and error factory functions", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,7 +45,7 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "files": [ diff --git a/packages/fsm/CHANGELOG.md b/packages/fsm/CHANGELOG.md index 9740d59a6e..92ad8e6876 100644 --- a/packages/fsm/CHANGELOG.md +++ b/packages/fsm/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.4.31](https://github.com/thi-ng/umbrella/compare/@thi.ng/fsm@2.4.30...@thi.ng/fsm@2.4.31) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/fsm + + + + + ## [2.4.30](https://github.com/thi-ng/umbrella/compare/@thi.ng/fsm@2.4.29...@thi.ng/fsm@2.4.30) (2020-12-22) **Note:** Version bump only for package @thi.ng/fsm diff --git a/packages/fsm/README.md b/packages/fsm/README.md index 0b759ab8a3..cf108e21df 100644 --- a/packages/fsm/README.md +++ b/packages/fsm/README.md @@ -147,4 +147,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/fsm/package.json b/packages/fsm/package.json index 49fa3ec98c..e3c40eeaa5 100644 --- a/packages/fsm/package.json +++ b/packages/fsm/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/fsm", - "version": "2.4.30", + "version": "2.4.31", "description": "Composable primitives for building declarative, transducer based Finite-State Machines & matchers for arbitrary data streams", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,16 +45,16 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/arrays": "^0.8.5", - "@thi.ng/equiv": "^1.0.34", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/strings": "^1.11.3", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/arrays": "^0.9.0", + "@thi.ng/equiv": "^1.0.35", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/strings": "^1.11.4", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/fuzzy-viz/CHANGELOG.md b/packages/fuzzy-viz/CHANGELOG.md index ed8d761581..b098de5621 100644 --- a/packages/fuzzy-viz/CHANGELOG.md +++ b/packages/fuzzy-viz/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/fuzzy-viz@0.1.0...@thi.ng/fuzzy-viz@0.1.1) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/fuzzy-viz + + + + + # 0.1.0 (2020-12-22) diff --git a/packages/fuzzy-viz/README.md b/packages/fuzzy-viz/README.md index a0c621cc03..9e300940bc 100644 --- a/packages/fuzzy-viz/README.md +++ b/packages/fuzzy-viz/README.md @@ -155,4 +155,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/fuzzy-viz/package.json b/packages/fuzzy-viz/package.json index 6a17a5d86a..68e2bdf29e 100644 --- a/packages/fuzzy-viz/package.json +++ b/packages/fuzzy-viz/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/fuzzy-viz", - "version": "0.1.0", + "version": "0.1.1", "description": "Visualization, instrumentation & introspection utils for @thi.ng/fuzzy", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,17 +45,17 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/fuzzy": "^0.1.0", - "@thi.ng/hiccup": "^3.6.5", - "@thi.ng/hiccup-svg": "^3.6.6", - "@thi.ng/math": "^3.0.0", - "@thi.ng/strings": "^1.11.3", - "@thi.ng/text-canvas": "^0.2.36" + "@thi.ng/api": "^6.13.6", + "@thi.ng/fuzzy": "^0.1.1", + "@thi.ng/hiccup": "^3.6.6", + "@thi.ng/hiccup-svg": "^3.7.0", + "@thi.ng/math": "^3.0.1", + "@thi.ng/strings": "^1.11.4", + "@thi.ng/text-canvas": "^0.3.0" }, "files": [ "*.js", diff --git a/packages/fuzzy/CHANGELOG.md b/packages/fuzzy/CHANGELOG.md index c303ad75b5..086d4de26f 100644 --- a/packages/fuzzy/CHANGELOG.md +++ b/packages/fuzzy/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/fuzzy@0.1.0...@thi.ng/fuzzy@0.1.1) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/fuzzy + + + + + # 0.1.0 (2020-12-22) diff --git a/packages/fuzzy/README.md b/packages/fuzzy/README.md index bc551c3f72..4715b25fc2 100644 --- a/packages/fuzzy/README.md +++ b/packages/fuzzy/README.md @@ -11,7 +11,7 @@ This project is part of the - [About](#about) - [Features](#features) - - [References / Further reading](#references---further-reading) + - [References / Further reading](#references--further-reading) - [Status](#status) - [Support packages](#support-packages) - [Installation](#installation) @@ -140,6 +140,7 @@ const temp = variable( } ); +// evaluate all fuzzy sets for given domain value evaluate(temp, 18) // { // freezing: 2.220446049250313e-16, @@ -237,8 +238,8 @@ Using `instrumentStrategy()` from the upcoming package, we can also visualize the final, transformed fuzzy sets used to compute crisp results and highlight the position of the crisp result value. -Here is the ASCII art output for the [COG -strategy](https://github.com/thi-ng/umbrella/blob/develop/packages/fuzzy/src/strategy/centroid.ts) +Here is the ASCII art output for the +[`centroidStrategy`](https://github.com/thi-ng/umbrella/blob/develop/packages/fuzzy/src/strategies/centroid.ts) and using `tnormMin` (the default) to transform each rule's output set(s): ```ts @@ -341,4 +342,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/fuzzy/package.json b/packages/fuzzy/package.json index 342b832069..cb35cddd32 100644 --- a/packages/fuzzy/package.json +++ b/packages/fuzzy/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/fuzzy", - "version": "0.1.0", + "version": "0.1.1", "description": "Fuzzy logic operators & configurable rule inferencing engine", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib strategies", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,12 +45,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/math": "^3.0.0" + "@thi.ng/api": "^6.13.6", + "@thi.ng/math": "^3.0.1" }, "files": [ "*.js", diff --git a/packages/fuzzy/src/strategies/maxima.ts b/packages/fuzzy/src/strategies/maxima.ts index 684cd0b0d8..65600f2791 100644 --- a/packages/fuzzy/src/strategies/maxima.ts +++ b/packages/fuzzy/src/strategies/maxima.ts @@ -103,7 +103,7 @@ export const firstOfMaximaStrategy = ( }; /** - * Higher-order function. Returns First-of-Maxima defuzzification strategy, + * Higher-order function. Returns Last-of-Maxima defuzzification strategy, * yielding the approx. final position of the maximum region of a given fuzzy * set. * @@ -115,7 +115,7 @@ export const firstOfMaximaStrategy = ( * @example * ```ts * lastOfMaximaStrategy()(trapezoid(0,1,5,6), [0,6]) - * // 1.02 + * // 4.98 * * // ......▁██████████████████████████|▁..... * // ......███████████████████████████|█..... diff --git a/packages/fuzzy/tpl.readme.md b/packages/fuzzy/tpl.readme.md index 9888ca4570..81587da030 100644 --- a/packages/fuzzy/tpl.readme.md +++ b/packages/fuzzy/tpl.readme.md @@ -115,6 +115,7 @@ const temp = variable( } ); +// evaluate all fuzzy sets for given domain value evaluate(temp, 18) // { // freezing: 2.220446049250313e-16, @@ -212,8 +213,8 @@ Using `instrumentStrategy()` from the upcoming package, we can also visualize the final, transformed fuzzy sets used to compute crisp results and highlight the position of the crisp result value. -Here is the ASCII art output for the [COG -strategy](https://github.com/thi-ng/umbrella/blob/develop/packages/fuzzy/src/strategy/centroid.ts) +Here is the ASCII art output for the +[`centroidStrategy`](https://github.com/thi-ng/umbrella/blob/develop/packages/fuzzy/src/strategies/centroid.ts) and using `tnormMin` (the default) to transform each rule's output set(s): ```ts diff --git a/packages/geom-accel/CHANGELOG.md b/packages/geom-accel/CHANGELOG.md index be6c740599..221b51265d 100644 --- a/packages/geom-accel/CHANGELOG.md +++ b/packages/geom-accel/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.1.30](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-accel@2.1.29...@thi.ng/geom-accel@2.1.30) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-accel + + + + + ## [2.1.29](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-accel@2.1.28...@thi.ng/geom-accel@2.1.29) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-accel diff --git a/packages/geom-accel/README.md b/packages/geom-accel/README.md index 94ebd0c694..40743a545e 100644 --- a/packages/geom-accel/README.md +++ b/packages/geom-accel/README.md @@ -107,4 +107,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2013 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2013 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-accel/package.json b/packages/geom-accel/package.json index af0f8d6393..093228e69a 100644 --- a/packages/geom-accel/package.json +++ b/packages/geom-accel/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-accel", - "version": "2.1.29", + "version": "2.1.30", "description": "n-D spatial indexing data structures with a shared ES6 Map/Set-like API", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib internal", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -46,20 +46,20 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/arrays": "^0.8.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/equiv": "^1.0.34", - "@thi.ng/geom-api": "^2.0.0", - "@thi.ng/geom-isec": "^0.7.3", - "@thi.ng/heaps": "^1.2.29", - "@thi.ng/math": "^3.0.0", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/arrays": "^0.9.0", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/equiv": "^1.0.35", + "@thi.ng/geom-api": "^2.0.1", + "@thi.ng/geom-isec": "^0.7.4", + "@thi.ng/heaps": "^1.2.30", + "@thi.ng/math": "^3.0.1", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-api/CHANGELOG.md b/packages/geom-api/CHANGELOG.md index a2f7c579c6..0e48f8b6d3 100644 --- a/packages/geom-api/CHANGELOG.md +++ b/packages/geom-api/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.0.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-api@2.0.0...@thi.ng/geom-api@2.0.1) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-api + + + + + # [2.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-api@1.1.4...@thi.ng/geom-api@2.0.0) (2020-12-22) diff --git a/packages/geom-api/README.md b/packages/geom-api/README.md index 86875e5c83..d92229b94b 100644 --- a/packages/geom-api/README.md +++ b/packages/geom-api/README.md @@ -71,4 +71,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2013 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2013 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-api/package.json b/packages/geom-api/package.json index e272196a47..3bb6f2da85 100644 --- a/packages/geom-api/package.json +++ b/packages/geom-api/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-api", - "version": "2.0.0", + "version": "2.0.1", "description": "Shared type & interface declarations for @thi.ng/geom packages", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,12 +45,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-arc/CHANGELOG.md b/packages/geom-arc/CHANGELOG.md index 5e2f3d4cf6..39590ab3cc 100644 --- a/packages/geom-arc/CHANGELOG.md +++ b/packages/geom-arc/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.3.19](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-arc@0.3.18...@thi.ng/geom-arc@0.3.19) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-arc + + + + + ## [0.3.18](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-arc@0.3.17...@thi.ng/geom-arc@0.3.18) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-arc diff --git a/packages/geom-arc/README.md b/packages/geom-arc/README.md index 1e49b1fa23..8c3426828a 100644 --- a/packages/geom-arc/README.md +++ b/packages/geom-arc/README.md @@ -74,4 +74,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-arc/package.json b/packages/geom-arc/package.json index f4542e8b25..1c92c91fce 100644 --- a/packages/geom-arc/package.json +++ b/packages/geom-arc/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-arc", - "version": "0.3.18", + "version": "0.3.19", "description": "2D circular / elliptic arc operations", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/checks": "^2.7.12", - "@thi.ng/geom-api": "^2.0.0", - "@thi.ng/geom-resample": "^0.2.51", - "@thi.ng/math": "^3.0.0", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/checks": "^2.7.13", + "@thi.ng/geom-api": "^2.0.1", + "@thi.ng/geom-resample": "^0.2.52", + "@thi.ng/math": "^3.0.1", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-clip-line/CHANGELOG.md b/packages/geom-clip-line/CHANGELOG.md index e70fcc9615..b1d49da33b 100644 --- a/packages/geom-clip-line/CHANGELOG.md +++ b/packages/geom-clip-line/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.2.15](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-clip-line@1.2.14...@thi.ng/geom-clip-line@1.2.15) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-clip-line + + + + + ## [1.2.14](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-clip-line@1.2.13...@thi.ng/geom-clip-line@1.2.14) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-clip-line diff --git a/packages/geom-clip-line/README.md b/packages/geom-clip-line/README.md index 3a7f291052..958d58f842 100644 --- a/packages/geom-clip-line/README.md +++ b/packages/geom-clip-line/README.md @@ -100,4 +100,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2013 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2013 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-clip-line/package.json b/packages/geom-clip-line/package.json index f676de3b9a..d6b3b0d8d0 100644 --- a/packages/geom-clip-line/package.json +++ b/packages/geom-clip-line/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-clip-line", - "version": "1.2.14", + "version": "1.2.15", "description": "2D line clipping (Liang-Barsky)", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/geom-isec": "^0.7.3", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/geom-isec": "^0.7.4", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-clip-poly/CHANGELOG.md b/packages/geom-clip-poly/CHANGELOG.md index cea921ddae..693912f8f4 100644 --- a/packages/geom-clip-poly/CHANGELOG.md +++ b/packages/geom-clip-poly/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.40](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-clip-poly@1.0.39...@thi.ng/geom-clip-poly@1.0.40) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-clip-poly + + + + + ## [1.0.39](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-clip-poly@1.0.38...@thi.ng/geom-clip-poly@1.0.39) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-clip-poly diff --git a/packages/geom-clip-poly/README.md b/packages/geom-clip-poly/README.md index 589e40601e..e705b743c7 100644 --- a/packages/geom-clip-poly/README.md +++ b/packages/geom-clip-poly/README.md @@ -79,4 +79,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2013 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2013 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-clip-poly/package.json b/packages/geom-clip-poly/package.json index 0ee98efcff..8a6593ce0f 100644 --- a/packages/geom-clip-poly/package.json +++ b/packages/geom-clip-poly/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-clip-poly", - "version": "1.0.39", + "version": "1.0.40", "description": "2D convex polygon clipping (Sutherland-Hodgeman)", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/geom-isec": "^0.7.3", - "@thi.ng/geom-poly-utils": "^0.3.0", - "@thi.ng/math": "^3.0.0", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/geom-isec": "^0.7.4", + "@thi.ng/geom-poly-utils": "^0.3.1", + "@thi.ng/math": "^3.0.1", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-closest-point/CHANGELOG.md b/packages/geom-closest-point/CHANGELOG.md index 6ce44a2cc9..fff036f96c 100644 --- a/packages/geom-closest-point/CHANGELOG.md +++ b/packages/geom-closest-point/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.5.6](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-closest-point@0.5.5...@thi.ng/geom-closest-point@0.5.6) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-closest-point + + + + + ## [0.5.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-closest-point@0.5.4...@thi.ng/geom-closest-point@0.5.5) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-closest-point diff --git a/packages/geom-closest-point/README.md b/packages/geom-closest-point/README.md index 05f0272188..b016c6c52a 100644 --- a/packages/geom-closest-point/README.md +++ b/packages/geom-closest-point/README.md @@ -100,4 +100,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-closest-point/package.json b/packages/geom-closest-point/package.json index e0b7967e87..edad76563c 100644 --- a/packages/geom-closest-point/package.json +++ b/packages/geom-closest-point/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-closest-point", - "version": "0.5.5", + "version": "0.5.6", "description": "2D / 3D closest point / proximity helpers", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/math": "^3.0.0", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/math": "^3.0.1", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-fuzz/CHANGELOG.md b/packages/geom-fuzz/CHANGELOG.md index 75235840f5..97c1b85fb9 100644 --- a/packages/geom-fuzz/CHANGELOG.md +++ b/packages/geom-fuzz/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.27](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-fuzz@0.1.26...@thi.ng/geom-fuzz@0.1.27) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-fuzz + + + + + ## [0.1.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-fuzz@0.1.25...@thi.ng/geom-fuzz@0.1.26) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-fuzz diff --git a/packages/geom-fuzz/README.md b/packages/geom-fuzz/README.md index 2d35e7573b..8f9a392436 100644 --- a/packages/geom-fuzz/README.md +++ b/packages/geom-fuzz/README.md @@ -100,4 +100,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-fuzz/package.json b/packages/geom-fuzz/package.json index aebc09d6ac..4e5eb38994 100644 --- a/packages/geom-fuzz/package.json +++ b/packages/geom-fuzz/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-fuzz", - "version": "0.1.26", + "version": "0.1.27", "description": "Highly configurable, fuzzy line & polygon creation with presets and composable fill & stroke styles. Canvas & SVG support", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -44,20 +44,20 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/associative": "^5.0.12", - "@thi.ng/color": "^2.0.0", - "@thi.ng/geom": "^2.0.0", - "@thi.ng/geom-api": "^2.0.0", - "@thi.ng/geom-clip-line": "^1.2.14", - "@thi.ng/geom-resample": "^0.2.51", - "@thi.ng/grid-iterators": "^0.4.16", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/associative": "^5.0.13", + "@thi.ng/color": "^2.1.0", + "@thi.ng/geom": "^2.0.1", + "@thi.ng/geom-api": "^2.0.1", + "@thi.ng/geom-clip-line": "^1.2.15", + "@thi.ng/geom-resample": "^0.2.52", + "@thi.ng/grid-iterators": "^0.4.17", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-hull/CHANGELOG.md b/packages/geom-hull/CHANGELOG.md index 37991cfed8..7f61a1ff1b 100644 --- a/packages/geom-hull/CHANGELOG.md +++ b/packages/geom-hull/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.0.72](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-hull@0.0.71...@thi.ng/geom-hull@0.0.72) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-hull + + + + + ## [0.0.71](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-hull@0.0.70...@thi.ng/geom-hull@0.0.71) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-hull diff --git a/packages/geom-hull/README.md b/packages/geom-hull/README.md index df11238471..c8cd5c53c8 100644 --- a/packages/geom-hull/README.md +++ b/packages/geom-hull/README.md @@ -92,4 +92,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2013 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2013 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-hull/package.json b/packages/geom-hull/package.json index 7dd112c1f4..00ea9a2bdb 100644 --- a/packages/geom-hull/package.json +++ b/packages/geom-hull/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-hull", - "version": "0.0.71", + "version": "0.0.72", "description": "Fast 2D convex hull (Graham Scan)", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,12 +45,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/math": "^3.0.0", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/math": "^3.0.1", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-io-obj/CHANGELOG.md b/packages/geom-io-obj/CHANGELOG.md index fb0eaeb81a..104c337a6a 100644 --- a/packages/geom-io-obj/CHANGELOG.md +++ b/packages/geom-io-obj/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.30](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-io-obj@0.1.29...@thi.ng/geom-io-obj@0.1.30) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-io-obj + + + + + ## [0.1.29](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-io-obj@0.1.28...@thi.ng/geom-io-obj@0.1.29) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-io-obj diff --git a/packages/geom-io-obj/README.md b/packages/geom-io-obj/README.md index 28133748bd..c397067c53 100644 --- a/packages/geom-io-obj/README.md +++ b/packages/geom-io-obj/README.md @@ -170,4 +170,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-io-obj/package.json b/packages/geom-io-obj/package.json index e829cd54b3..aaf9b54ab2 100644 --- a/packages/geom-io-obj/package.json +++ b/packages/geom-io-obj/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-io-obj", - "version": "0.1.29", + "version": "0.1.30", "description": "Wavefront OBJ parser (& exporter soon)", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,12 +45,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-isec/CHANGELOG.md b/packages/geom-isec/CHANGELOG.md index dc8929ad12..fe7108d0af 100644 --- a/packages/geom-isec/CHANGELOG.md +++ b/packages/geom-isec/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-isec@0.7.3...@thi.ng/geom-isec@0.7.4) (2021-01-02) + + +### Bug Fixes + +* **geom-isec:** fix [#269](https://github.com/thi-ng/umbrella/issues/269) update rayBox() ([441cddb](https://github.com/thi-ng/umbrella/commit/441cddbdc4707465a182f3fa903a4c6bdc4e9004)) + + + + + ## [0.7.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-isec@0.7.2...@thi.ng/geom-isec@0.7.3) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-isec diff --git a/packages/geom-isec/README.md b/packages/geom-isec/README.md index b2dc4b9ce7..b3067fbfad 100644 --- a/packages/geom-isec/README.md +++ b/packages/geom-isec/README.md @@ -105,4 +105,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-isec/package.json b/packages/geom-isec/package.json index 76c6a5b77d..6711e32693 100644 --- a/packages/geom-isec/package.json +++ b/packages/geom-isec/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-isec", - "version": "0.7.3", + "version": "0.7.4", "description": "2D/3D shape intersection checks", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/geom-api": "^2.0.0", - "@thi.ng/geom-closest-point": "^0.5.5", - "@thi.ng/math": "^3.0.0", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/geom-api": "^2.0.1", + "@thi.ng/geom-closest-point": "^0.5.6", + "@thi.ng/math": "^3.0.1", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-isec/src/ray-rect.ts b/packages/geom-isec/src/ray-rect.ts index 122f498977..0d3fd93ef2 100644 --- a/packages/geom-isec/src/ray-rect.ts +++ b/packages/geom-isec/src/ray-rect.ts @@ -53,12 +53,12 @@ const rayBox: FnU4 = (rpos, dir, bmin, bmax) => { d = 1 / dir[1]; t1 = (bmin[1] - p) * d; t2 = (bmax[1] - p) * d; + tmin = max(tmin, min(t1, t2)); + tmax = min(tmax, max(t1, t2)); p = rpos[2]; d = 1 / dir[2]; t1 = (bmin[2] - p) * d; t2 = (bmax[2] - p) * d; - tmin = max(tmin, min(t1, t2)); - tmax = min(tmax, max(t1, t2)); return [max(tmin, min(t1, t2)), min(tmax, max(t1, t2))]; }; @@ -73,9 +73,9 @@ const intersectWith = ( ? inside ? { type: IntersectionType.INTERSECT, - inside, isec: [maddN([], dir, tmax, rpos)], alpha: tmax, + inside, } : { type: IntersectionType.INTERSECT, diff --git a/packages/geom-isec/test/ray.ts b/packages/geom-isec/test/ray.ts new file mode 100644 index 0000000000..6e802eae06 --- /dev/null +++ b/packages/geom-isec/test/ray.ts @@ -0,0 +1,71 @@ +import { eqDelta, maddN3, mulN3, normalize, Vec } from "@thi.ng/vectors"; +import * as assert from "assert"; +import { intersectRayAABB } from "../src"; + +describe("ray intersection", () => { + it("rayBox inside", () => { + const dirs: Vec[] = [ + [-1, -1, -1], + [-1, -1, 0], + [-1, -1, 1], + [-1, 0, -1], + [-1, 0, 0], + [-1, 0, 1], + [-1, 1, -1], + [-1, 1, 0], + [-1, 1, 1], + [0, -1, -1], + [0, -1, 0], + [0, -1, 1], + [0, 0, -1], + [0, 0, 1], + [0, 1, -1], + [0, 1, 0], + [0, 1, 1], + [1, -1, -1], + [1, -1, 0], + [1, -1, 1], + [1, 0, -1], + [1, 0, 0], + [1, 0, 1], + [1, 1, -1], + [1, 1, 0], + [1, 1, 1], + ]; + for (let d of dirs) { + const n = normalize([], d); + const i = intersectRayAABB([5, 5, 5], n, [0, 0, 0], [10, 10, 10]); + const expected = maddN3([], n, i.alpha!, [5, 5, 5]); + assert(i.inside, `inside d=${d}`); + assert( + eqDelta(expected, i.isec![0]), + `d=${d} isec=${i.isec}, exp=${expected}` + ); + } + }); + + it("rayBox outside", () => { + const dirs: Vec[] = [ + [1, 0, 0], + [0, 1, 0], + [0, 0, 1], + ]; + for (let d of dirs) { + let o = mulN3([], d, -10); + let i = intersectRayAABB(o, d, [-5, -5, -5], [5, 5, 5]); + let expected = maddN3([], d, i.alpha!, o); + assert( + eqDelta(expected, i.isec![0]), + `d=${d} isec=${i.isec}, exp=${expected}` + ); + d = mulN3(d, d, -1); + o = mulN3([], d, -10); + i = intersectRayAABB(o, d, [-5, -5, -5], [5, 5, 5]); + expected = maddN3([], d, i.alpha!, o); + assert( + eqDelta(expected, i.isec![0]), + `d=${d} isec=${i.isec}, exp=${expected}` + ); + } + }); +}); diff --git a/packages/geom-isoline/CHANGELOG.md b/packages/geom-isoline/CHANGELOG.md index a85351578a..265549bf68 100644 --- a/packages/geom-isoline/CHANGELOG.md +++ b/packages/geom-isoline/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.70](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-isoline@0.1.69...@thi.ng/geom-isoline@0.1.70) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-isoline + + + + + ## [0.1.69](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-isoline@0.1.68...@thi.ng/geom-isoline@0.1.69) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-isoline diff --git a/packages/geom-isoline/README.md b/packages/geom-isoline/README.md index d14019d3eb..ba024a284d 100644 --- a/packages/geom-isoline/README.md +++ b/packages/geom-isoline/README.md @@ -138,4 +138,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2015 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2015 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-isoline/package.json b/packages/geom-isoline/package.json index f868c9a3e3..d4da9b2461 100644 --- a/packages/geom-isoline/package.json +++ b/packages/geom-isoline/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-isoline", - "version": "0.1.69", + "version": "0.1.70", "description": "Fast 2D contour line extraction / generation", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-poly-utils/CHANGELOG.md b/packages/geom-poly-utils/CHANGELOG.md index e8a8563739..66f24495ef 100644 --- a/packages/geom-poly-utils/CHANGELOG.md +++ b/packages/geom-poly-utils/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.3.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-poly-utils@0.3.0...@thi.ng/geom-poly-utils@0.3.1) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-poly-utils + + + + + # [0.3.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-poly-utils@0.2.2...@thi.ng/geom-poly-utils@0.3.0) (2020-12-22) diff --git a/packages/geom-poly-utils/README.md b/packages/geom-poly-utils/README.md index da893dfba4..5ac21cb5e9 100644 --- a/packages/geom-poly-utils/README.md +++ b/packages/geom-poly-utils/README.md @@ -88,4 +88,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-poly-utils/package.json b/packages/geom-poly-utils/package.json index 23fd265060..e10f8bd71a 100644 --- a/packages/geom-poly-utils/package.json +++ b/packages/geom-poly-utils/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-poly-utils", - "version": "0.3.0", + "version": "0.3.1", "description": "2D polygon/polyline analysis & processing utilities", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/geom-api": "^2.0.0", - "@thi.ng/math": "^3.0.0", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/geom-api": "^2.0.1", + "@thi.ng/math": "^3.0.1", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-resample/CHANGELOG.md b/packages/geom-resample/CHANGELOG.md index e6643ca89c..87ae3dc261 100644 --- a/packages/geom-resample/CHANGELOG.md +++ b/packages/geom-resample/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.52](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-resample@0.2.51...@thi.ng/geom-resample@0.2.52) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-resample + + + + + ## [0.2.51](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-resample@0.2.50...@thi.ng/geom-resample@0.2.51) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-resample diff --git a/packages/geom-resample/README.md b/packages/geom-resample/README.md index 1678cbd42d..aa20879387 100644 --- a/packages/geom-resample/README.md +++ b/packages/geom-resample/README.md @@ -110,4 +110,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2013 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2013 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-resample/package.json b/packages/geom-resample/package.json index 1bf3dcb3e7..05400363e1 100644 --- a/packages/geom-resample/package.json +++ b/packages/geom-resample/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-resample", - "version": "0.2.51", + "version": "0.2.52", "description": "Customizable nD polyline interpolation, re-sampling, splitting & nearest point computation", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/checks": "^2.7.12", - "@thi.ng/geom-api": "^2.0.0", - "@thi.ng/geom-closest-point": "^0.5.5", - "@thi.ng/math": "^3.0.0", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/checks": "^2.7.13", + "@thi.ng/geom-api": "^2.0.1", + "@thi.ng/geom-closest-point": "^0.5.6", + "@thi.ng/math": "^3.0.1", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-splines/CHANGELOG.md b/packages/geom-splines/CHANGELOG.md index 350b933e19..502cd4b726 100644 --- a/packages/geom-splines/CHANGELOG.md +++ b/packages/geom-splines/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.5.39](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-splines@0.5.38...@thi.ng/geom-splines@0.5.39) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-splines + + + + + ## [0.5.38](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-splines@0.5.37...@thi.ng/geom-splines@0.5.38) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-splines diff --git a/packages/geom-splines/README.md b/packages/geom-splines/README.md index 472e979a64..2d0cd2c6b2 100644 --- a/packages/geom-splines/README.md +++ b/packages/geom-splines/README.md @@ -127,4 +127,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-splines/package.json b/packages/geom-splines/package.json index b5aafab5cc..c4e0a0b0b3 100644 --- a/packages/geom-splines/package.json +++ b/packages/geom-splines/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-splines", - "version": "0.5.38", + "version": "0.5.39", "description": "nD cubic & quadratic curve analysis, conversion, interpolation, splitting", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib internal", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,17 +45,17 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/geom-api": "^2.0.0", - "@thi.ng/geom-arc": "^0.3.18", - "@thi.ng/geom-resample": "^0.2.51", - "@thi.ng/math": "^3.0.0", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/geom-api": "^2.0.1", + "@thi.ng/geom-arc": "^0.3.19", + "@thi.ng/geom-resample": "^0.2.52", + "@thi.ng/math": "^3.0.1", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-subdiv-curve/CHANGELOG.md b/packages/geom-subdiv-curve/CHANGELOG.md index 476e5cfc4a..221d55bb94 100644 --- a/packages/geom-subdiv-curve/CHANGELOG.md +++ b/packages/geom-subdiv-curve/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.70](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-subdiv-curve@0.1.69...@thi.ng/geom-subdiv-curve@0.1.70) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-subdiv-curve + + + + + ## [0.1.69](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-subdiv-curve@0.1.68...@thi.ng/geom-subdiv-curve@0.1.69) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-subdiv-curve diff --git a/packages/geom-subdiv-curve/README.md b/packages/geom-subdiv-curve/README.md index f005c4aaec..408de35a1c 100644 --- a/packages/geom-subdiv-curve/README.md +++ b/packages/geom-subdiv-curve/README.md @@ -94,4 +94,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-subdiv-curve/package.json b/packages/geom-subdiv-curve/package.json index bd6b1927e0..7d8e24939c 100644 --- a/packages/geom-subdiv-curve/package.json +++ b/packages/geom-subdiv-curve/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-subdiv-curve", - "version": "0.1.69", + "version": "0.1.70", "description": "Freely customizable, iterative nD subdivision curves for open / closed geometries", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/geom-api": "^2.0.0", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/geom-api": "^2.0.1", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-tessellate/CHANGELOG.md b/packages/geom-tessellate/CHANGELOG.md index d0ed1ce034..5e332a8843 100644 --- a/packages/geom-tessellate/CHANGELOG.md +++ b/packages/geom-tessellate/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.53](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-tessellate@0.2.52...@thi.ng/geom-tessellate@0.2.53) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-tessellate + + + + + ## [0.2.52](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-tessellate@0.2.51...@thi.ng/geom-tessellate@0.2.52) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-tessellate diff --git a/packages/geom-tessellate/README.md b/packages/geom-tessellate/README.md index 3ed98d8127..e6f7493f7f 100644 --- a/packages/geom-tessellate/README.md +++ b/packages/geom-tessellate/README.md @@ -99,4 +99,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-tessellate/package.json b/packages/geom-tessellate/package.json index c09806779b..41df21cf0f 100644 --- a/packages/geom-tessellate/package.json +++ b/packages/geom-tessellate/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-tessellate", - "version": "0.2.52", + "version": "0.2.53", "description": "2D/3D convex polygon tessellators", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,16 +45,16 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/checks": "^2.7.12", - "@thi.ng/geom-api": "^2.0.0", - "@thi.ng/geom-isec": "^0.7.3", - "@thi.ng/geom-poly-utils": "^0.3.0", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/checks": "^2.7.13", + "@thi.ng/geom-api": "^2.0.1", + "@thi.ng/geom-isec": "^0.7.4", + "@thi.ng/geom-poly-utils": "^0.3.1", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom-voronoi/CHANGELOG.md b/packages/geom-voronoi/CHANGELOG.md index 0eb5b8aa84..8b829e3e1a 100644 --- a/packages/geom-voronoi/CHANGELOG.md +++ b/packages/geom-voronoi/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.15](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-voronoi@0.2.14...@thi.ng/geom-voronoi@0.2.15) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom-voronoi + + + + + ## [0.2.14](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-voronoi@0.2.13...@thi.ng/geom-voronoi@0.2.14) (2020-12-22) **Note:** Version bump only for package @thi.ng/geom-voronoi diff --git a/packages/geom-voronoi/README.md b/packages/geom-voronoi/README.md index 9ea12f7e3c..6470d7a6cd 100644 --- a/packages/geom-voronoi/README.md +++ b/packages/geom-voronoi/README.md @@ -133,4 +133,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom-voronoi/package.json b/packages/geom-voronoi/package.json index b6dcbf4baa..88882a06ab 100644 --- a/packages/geom-voronoi/package.json +++ b/packages/geom-voronoi/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-voronoi", - "version": "0.2.14", + "version": "0.2.15", "description": "Fast, incremental 2D Delaunay & Voronoi mesh implementation", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,19 +45,19 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/geom-clip-line": "^1.2.14", - "@thi.ng/geom-clip-poly": "^1.0.39", - "@thi.ng/geom-isec": "^0.7.3", - "@thi.ng/geom-poly-utils": "^0.3.0", - "@thi.ng/math": "^3.0.0", - "@thi.ng/quad-edge": "^0.2.27", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/geom-clip-line": "^1.2.15", + "@thi.ng/geom-clip-poly": "^1.0.40", + "@thi.ng/geom-isec": "^0.7.4", + "@thi.ng/geom-poly-utils": "^0.3.1", + "@thi.ng/math": "^3.0.1", + "@thi.ng/quad-edge": "^0.2.28", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/geom/CHANGELOG.md b/packages/geom/CHANGELOG.md index 1894c2e6ff..f0443dec5c 100644 --- a/packages/geom/CHANGELOG.md +++ b/packages/geom/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.0.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom@2.0.0...@thi.ng/geom@2.0.1) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/geom + + + + + # [2.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom@1.13.4...@thi.ng/geom@2.0.0) (2020-12-22) diff --git a/packages/geom/README.md b/packages/geom/README.md index 554e0b5023..a0cc06b08e 100644 --- a/packages/geom/README.md +++ b/packages/geom/README.md @@ -154,4 +154,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2013 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2013 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/geom/package.json b/packages/geom/package.json index cd5d1c6419..9296a32623 100644 --- a/packages/geom/package.json +++ b/packages/geom/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom", - "version": "2.0.0", + "version": "2.0.1", "description": "Functional, polymorphic API for 2D geometry types & SVG generation", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib api ctors internal ops", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,36 +45,36 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/arrays": "^0.8.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/defmulti": "^1.3.3", - "@thi.ng/equiv": "^1.0.34", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/geom-api": "^2.0.0", - "@thi.ng/geom-arc": "^0.3.18", - "@thi.ng/geom-clip-line": "^1.2.14", - "@thi.ng/geom-clip-poly": "^1.0.39", - "@thi.ng/geom-closest-point": "^0.5.5", - "@thi.ng/geom-hull": "^0.0.71", - "@thi.ng/geom-isec": "^0.7.3", - "@thi.ng/geom-poly-utils": "^0.3.0", - "@thi.ng/geom-resample": "^0.2.51", - "@thi.ng/geom-splines": "^0.5.38", - "@thi.ng/geom-subdiv-curve": "^0.1.69", - "@thi.ng/geom-tessellate": "^0.2.52", - "@thi.ng/hiccup": "^3.6.5", - "@thi.ng/hiccup-svg": "^3.6.6", - "@thi.ng/math": "^3.0.0", - "@thi.ng/matrices": "^0.6.38", - "@thi.ng/random": "^2.1.3", - "@thi.ng/strings": "^1.11.3", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/arrays": "^0.9.0", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/defmulti": "^1.3.4", + "@thi.ng/equiv": "^1.0.35", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/geom-api": "^2.0.1", + "@thi.ng/geom-arc": "^0.3.19", + "@thi.ng/geom-clip-line": "^1.2.15", + "@thi.ng/geom-clip-poly": "^1.0.40", + "@thi.ng/geom-closest-point": "^0.5.6", + "@thi.ng/geom-hull": "^0.0.72", + "@thi.ng/geom-isec": "^0.7.4", + "@thi.ng/geom-poly-utils": "^0.3.1", + "@thi.ng/geom-resample": "^0.2.52", + "@thi.ng/geom-splines": "^0.5.39", + "@thi.ng/geom-subdiv-curve": "^0.1.70", + "@thi.ng/geom-tessellate": "^0.2.53", + "@thi.ng/hiccup": "^3.6.6", + "@thi.ng/hiccup-svg": "^3.7.0", + "@thi.ng/math": "^3.0.1", + "@thi.ng/matrices": "^0.6.39", + "@thi.ng/random": "^2.1.4", + "@thi.ng/strings": "^1.11.4", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/gp/CHANGELOG.md b/packages/gp/CHANGELOG.md index b9dc2f5239..45028fe8df 100644 --- a/packages/gp/CHANGELOG.md +++ b/packages/gp/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/gp@0.2.0...@thi.ng/gp@0.2.1) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/gp + + + + + # [0.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/gp@0.1.35...@thi.ng/gp@0.2.0) (2020-12-22) diff --git a/packages/gp/README.md b/packages/gp/README.md index a193031141..7f53fad98d 100644 --- a/packages/gp/README.md +++ b/packages/gp/README.md @@ -122,4 +122,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/gp/package.json b/packages/gp/package.json index 6c18aea1bb..498ad3c5ad 100644 --- a/packages/gp/package.json +++ b/packages/gp/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/gp", - "version": "0.2.0", + "version": "0.2.1", "description": "Genetic programming helpers & strategies (tree based & multi-expression programming)", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/math": "^3.0.0", - "@thi.ng/random": "^2.1.3", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/zipper": "^0.1.30" + "@thi.ng/api": "^6.13.6", + "@thi.ng/math": "^3.0.1", + "@thi.ng/random": "^2.1.4", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/zipper": "^0.1.31" }, "files": [ "*.js", diff --git a/packages/grid-iterators/CHANGELOG.md b/packages/grid-iterators/CHANGELOG.md index 4a4c567669..dc5f207e66 100644 --- a/packages/grid-iterators/CHANGELOG.md +++ b/packages/grid-iterators/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.4.17](https://github.com/thi-ng/umbrella/compare/@thi.ng/grid-iterators@0.4.16...@thi.ng/grid-iterators@0.4.17) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/grid-iterators + + + + + ## [0.4.16](https://github.com/thi-ng/umbrella/compare/@thi.ng/grid-iterators@0.4.15...@thi.ng/grid-iterators@0.4.16) (2020-12-22) **Note:** Version bump only for package @thi.ng/grid-iterators diff --git a/packages/grid-iterators/README.md b/packages/grid-iterators/README.md index 680a977626..d7c0567821 100644 --- a/packages/grid-iterators/README.md +++ b/packages/grid-iterators/README.md @@ -228,4 +228,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/grid-iterators/package.json b/packages/grid-iterators/package.json index 6f1107e1f6..9aacaddca0 100644 --- a/packages/grid-iterators/package.json +++ b/packages/grid-iterators/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/grid-iterators", - "version": "0.4.16", + "version": "0.4.17", "description": "2D grid iterators w/ multiple orderings", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -46,15 +46,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/arrays": "^0.8.5", - "@thi.ng/binary": "^2.0.20", - "@thi.ng/morton": "^2.0.29", - "@thi.ng/random": "^2.1.3", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/arrays": "^0.9.0", + "@thi.ng/binary": "^2.0.21", + "@thi.ng/morton": "^2.0.30", + "@thi.ng/random": "^2.1.4", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/hdiff/CHANGELOG.md b/packages/hdiff/CHANGELOG.md index f75fdd6453..28934dc20a 100644 --- a/packages/hdiff/CHANGELOG.md +++ b/packages/hdiff/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.21](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdiff@0.1.20...@thi.ng/hdiff@0.1.21) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/hdiff + + + + + ## [0.1.20](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdiff@0.1.19...@thi.ng/hdiff@0.1.20) (2020-12-22) **Note:** Version bump only for package @thi.ng/hdiff diff --git a/packages/hdiff/README.md b/packages/hdiff/README.md index 04f0d62c78..f8197c2a21 100644 --- a/packages/hdiff/README.md +++ b/packages/hdiff/README.md @@ -132,4 +132,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/hdiff/package.json b/packages/hdiff/package.json index 00da56b861..e236eddf43 100644 --- a/packages/hdiff/package.json +++ b/packages/hdiff/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hdiff", - "version": "0.1.20", + "version": "0.1.21", "description": "String diffing w/ hiccup output for further processing, e.g. with @thi.ng/hdom, @thi.ng/hiccup. Includes CLI util to generate HTML, with theme support and code folding", "module": "./index.js", "main": "./lib/index.js", @@ -36,7 +36,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -47,15 +47,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/diff": "^4.0.0", - "@thi.ng/hiccup": "^3.6.5", - "@thi.ng/hiccup-css": "^1.1.43", - "@thi.ng/strings": "^1.11.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/diff": "^4.0.1", + "@thi.ng/hiccup": "^3.6.6", + "@thi.ng/hiccup-css": "^1.1.44", + "@thi.ng/strings": "^1.11.4" }, "files": [ "*.js", diff --git a/packages/hdom-canvas/CHANGELOG.md b/packages/hdom-canvas/CHANGELOG.md index 519f21e3c6..4ab01e281a 100644 --- a/packages/hdom-canvas/CHANGELOG.md +++ b/packages/hdom-canvas/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [3.0.25](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom-canvas@3.0.24...@thi.ng/hdom-canvas@3.0.25) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/hdom-canvas + + + + + ## [3.0.24](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom-canvas@3.0.23...@thi.ng/hdom-canvas@3.0.24) (2020-12-22) **Note:** Version bump only for package @thi.ng/hdom-canvas diff --git a/packages/hdom-canvas/README.md b/packages/hdom-canvas/README.md index 9d255d8ee3..369daa95fa 100644 --- a/packages/hdom-canvas/README.md +++ b/packages/hdom-canvas/README.md @@ -296,4 +296,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/hdom-canvas/package.json b/packages/hdom-canvas/package.json index 49ab953fc4..e57306f531 100644 --- a/packages/hdom-canvas/package.json +++ b/packages/hdom-canvas/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hdom-canvas", - "version": "3.0.24", + "version": "3.0.25", "description": "@thi.ng/hdom component wrapper for declarative canvas scenegraphs", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib draw", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/diff": "^4.0.0", - "@thi.ng/hdom": "^8.2.14", - "@thi.ng/hiccup-canvas": "^1.1.14" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/diff": "^4.0.1", + "@thi.ng/hdom": "^8.2.15", + "@thi.ng/hiccup-canvas": "^1.1.15" }, "files": [ "*.js", diff --git a/packages/hdom-components/CHANGELOG.md b/packages/hdom-components/CHANGELOG.md index 3f8879c52b..46940a76cd 100644 --- a/packages/hdom-components/CHANGELOG.md +++ b/packages/hdom-components/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.0.19](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom-components@4.0.18...@thi.ng/hdom-components@4.0.19) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/hdom-components + + + + + ## [4.0.18](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom-components@4.0.17...@thi.ng/hdom-components@4.0.18) (2020-12-22) **Note:** Version bump only for package @thi.ng/hdom-components diff --git a/packages/hdom-components/README.md b/packages/hdom-components/README.md index 1b0a28a915..4766c8ff7f 100644 --- a/packages/hdom-components/README.md +++ b/packages/hdom-components/README.md @@ -130,4 +130,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/hdom-components/package.json b/packages/hdom-components/package.json index b48542b091..d92d7103dd 100644 --- a/packages/hdom-components/package.json +++ b/packages/hdom-components/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hdom-components", - "version": "4.0.18", + "version": "4.0.19", "description": "Raw, skinnable UI & SVG components for @thi.ng/hdom", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib utils", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,16 +45,16 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/adapt-dpi": "^1.0.12", - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/math": "^3.0.0", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/transducers-stats": "^1.1.44" + "@thi.ng/adapt-dpi": "^1.0.13", + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/math": "^3.0.1", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/transducers-stats": "^1.1.45" }, "files": [ "*.js", diff --git a/packages/hdom-mock/CHANGELOG.md b/packages/hdom-mock/CHANGELOG.md index 18a2851971..bbde1a88f7 100644 --- a/packages/hdom-mock/CHANGELOG.md +++ b/packages/hdom-mock/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.1.47](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom-mock@1.1.46...@thi.ng/hdom-mock@1.1.47) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/hdom-mock + + + + + ## [1.1.46](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom-mock@1.1.45...@thi.ng/hdom-mock@1.1.46) (2020-12-22) **Note:** Version bump only for package @thi.ng/hdom-mock diff --git a/packages/hdom-mock/README.md b/packages/hdom-mock/README.md index 0665785373..8d580af31b 100644 --- a/packages/hdom-mock/README.md +++ b/packages/hdom-mock/README.md @@ -119,4 +119,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/hdom-mock/package.json b/packages/hdom-mock/package.json index a4cedc3bc4..eea567caa3 100644 --- a/packages/hdom-mock/package.json +++ b/packages/hdom-mock/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hdom-mock", - "version": "1.1.46", + "version": "1.1.47", "description": "Mock base implementation for @thi.ng/hdom API", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/hdom": "^8.2.14" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/hdom": "^8.2.15" }, "files": [ "*.js", diff --git a/packages/hdom/CHANGELOG.md b/packages/hdom/CHANGELOG.md index a5abb5d07f..f599ffbc5b 100644 --- a/packages/hdom/CHANGELOG.md +++ b/packages/hdom/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [8.2.15](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom@8.2.14...@thi.ng/hdom@8.2.15) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/hdom + + + + + ## [8.2.14](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom@8.2.13...@thi.ng/hdom@8.2.14) (2020-12-22) **Note:** Version bump only for package @thi.ng/hdom diff --git a/packages/hdom/README.md b/packages/hdom/README.md index 31f46b3a3a..f2a871f560 100644 --- a/packages/hdom/README.md +++ b/packages/hdom/README.md @@ -16,15 +16,15 @@ This project is part of the - [Installation](#installation) - [Dependencies](#dependencies) - [Usage examples](#usage-examples) - - [Minimal example #1: Local state, RAF update](#minimal-example-1--local-state--raf-update) - - [Minimal example #2: Reactive, push-based state & update](#minimal-example-2--reactive--push-based-state--update) - - [Minimal example #3: Immutable app state & interceptors](#minimal-example-3--immutable-app-state--interceptors) - - [Minimal example #4: Canvas scene tree / branch-local behavior](#minimal-example-4--canvas-scene-tree---branch-local-behavior) + - [Minimal example #1: Local state, RAF update](#minimal-example-1-local-state-raf-update) + - [Minimal example #2: Reactive, push-based state & update](#minimal-example-2-reactive-push-based-state--update) + - [Minimal example #3: Immutable app state & interceptors](#minimal-example-3-immutable-app-state--interceptors) + - [Minimal example #4: Canvas scene tree / branch-local behavior](#minimal-example-4-canvas-scene-tree--branch-local-behavior) - [API](#api) - [The hdom data flow](#the-hdom-data-flow) - [Nested arrays](#nested-arrays) - [Attribute objects](#attribute-objects) - - [Pure functions and/or closures](#pure-functions-and-or-closures) + - [Pure functions and/or closures](#pure-functions-andor-closures) - [Iterators](#iterators) - [Interface support](#interface-support) - [Component objects with life cycle methods](#component-objects-with-life-cycle-methods) @@ -44,12 +44,12 @@ This project is part of the - [User context](#user-context) - [`value` attribute handling](#value-attribute-handling) - [Behavior control attributes](#behavior-control-attributes) - - [\_\_impl](#impl) - - [\_\_diff](#diff) - - [\_\_normalize](#normalize) - - [\_\_release](#release) - - [\_\_serialize](#serialize) - - [\_\_skip](#skip) + - [\_\_impl](#__impl) + - [\_\_diff](#__diff) + - [\_\_normalize](#__normalize) + - [\_\_release](#__release) + - [\_\_serialize](#__serialize) + - [\_\_skip](#__skip) - [Benchmarks](#benchmarks) - [Authors](#authors) - [Maintainer](#maintainer) @@ -1242,4 +1242,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2015 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2015 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/hdom/package.json b/packages/hdom/package.json index 72982a06ed..984f349c42 100644 --- a/packages/hdom/package.json +++ b/packages/hdom/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hdom", - "version": "8.2.14", + "version": "8.2.15", "description": "Lightweight vanilla ES6 UI component trees with customizable branch-local behaviors", "module": "./index.js", "main": "./lib/index.js", @@ -33,30 +33,30 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.12.1", - "@thi.ng/atom": "^4.1.25", + "@thi.ng/atom": "^4.1.26", "@types/mocha": "^8.2.0", "@types/node": "^14.14.14", "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/diff": "^4.0.0", - "@thi.ng/equiv": "^1.0.34", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/hiccup": "^3.6.5", - "@thi.ng/prefixes": "^0.1.9" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/diff": "^4.0.1", + "@thi.ng/equiv": "^1.0.35", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/hiccup": "^3.6.6", + "@thi.ng/prefixes": "^0.1.10" }, "files": [ "*.js", diff --git a/packages/heaps/CHANGELOG.md b/packages/heaps/CHANGELOG.md index 9f4330a6cf..e454a806f5 100644 --- a/packages/heaps/CHANGELOG.md +++ b/packages/heaps/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.2.30](https://github.com/thi-ng/umbrella/compare/@thi.ng/heaps@1.2.29...@thi.ng/heaps@1.2.30) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/heaps + + + + + ## [1.2.29](https://github.com/thi-ng/umbrella/compare/@thi.ng/heaps@1.2.28...@thi.ng/heaps@1.2.29) (2020-12-22) **Note:** Version bump only for package @thi.ng/heaps diff --git a/packages/heaps/README.md b/packages/heaps/README.md index 5cf76bd5c4..a3273b63b3 100644 --- a/packages/heaps/README.md +++ b/packages/heaps/README.md @@ -101,4 +101,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2017 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2017 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/heaps/package.json b/packages/heaps/package.json index ad4185bf3b..967dcbe9be 100644 --- a/packages/heaps/package.json +++ b/packages/heaps/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/heaps", - "version": "1.2.29", + "version": "1.2.30", "description": "Various heap implementations for arbitrary values and with customizable ordering", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -46,12 +46,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/compare": "^1.3.21" + "@thi.ng/api": "^6.13.6", + "@thi.ng/compare": "^1.3.22" }, "files": [ "*.js", diff --git a/packages/hex/CHANGELOG.md b/packages/hex/CHANGELOG.md index 40ee2983d4..31d11b6b9b 100644 --- a/packages/hex/CHANGELOG.md +++ b/packages/hex/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/hex@0.1.2...@thi.ng/hex@0.1.3) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/hex + + + + + ## [0.1.2](https://github.com/thi-ng/umbrella/compare/@thi.ng/hex@0.1.1...@thi.ng/hex@0.1.2) (2020-12-22) **Note:** Version bump only for package @thi.ng/hex diff --git a/packages/hex/README.md b/packages/hex/README.md index a5601e8900..baaea52505 100644 --- a/packages/hex/README.md +++ b/packages/hex/README.md @@ -108,4 +108,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/hex/package.json b/packages/hex/package.json index 02342fd519..1e81596e18 100644 --- a/packages/hex/package.json +++ b/packages/hex/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hex", - "version": "0.1.2", + "version": "0.1.3", "description": "Hex string formatters for 4/8/16/24/32/48/64bit words", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,7 +45,7 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "files": [ diff --git a/packages/hiccup-canvas/CHANGELOG.md b/packages/hiccup-canvas/CHANGELOG.md index 79045b5218..78a30e2f14 100644 --- a/packages/hiccup-canvas/CHANGELOG.md +++ b/packages/hiccup-canvas/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.1.15](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-canvas@1.1.14...@thi.ng/hiccup-canvas@1.1.15) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/hiccup-canvas + + + + + ## [1.1.14](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-canvas@1.1.13...@thi.ng/hiccup-canvas@1.1.14) (2020-12-22) **Note:** Version bump only for package @thi.ng/hiccup-canvas diff --git a/packages/hiccup-canvas/README.md b/packages/hiccup-canvas/README.md index bcecf15c1d..f8847ce2c9 100644 --- a/packages/hiccup-canvas/README.md +++ b/packages/hiccup-canvas/README.md @@ -22,12 +22,12 @@ This project is part of the - [Definition group](#definition-group) - [Circle](#circle) - [Circular arc](#circular-arc) - - [Ellipse / elliptic arc](#ellipse---elliptic-arc) + - [Ellipse / elliptic arc](#ellipse--elliptic-arc) - [Rect](#rect) - [Line](#line) - [Horizontal Line](#horizontal-line) - [Vertical Line](#vertical-line) - - [Polyline / Polygon](#polyline---polygon) + - [Polyline / Polygon](#polyline--polygon) - [Path](#path) - [SVG paths with arc segments](#svg-paths-with-arc-segments) - [Points](#points) @@ -40,7 +40,7 @@ This project is part of the - [String](#string) - [Number](#number) - [Array](#array) - - [@thi.ng/color values](#thing-color-values) + - [@thi.ng/color values](#thingcolor-values) - [Coordinate transformations](#coordinate-transformations) - [Transform matrix](#transform-matrix) - [Override transform](#override-transform) @@ -503,4 +503,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/hiccup-canvas/package.json b/packages/hiccup-canvas/package.json index 27d9913c94..729651dc7c 100644 --- a/packages/hiccup-canvas/package.json +++ b/packages/hiccup-canvas/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hiccup-canvas", - "version": "1.1.14", + "version": "1.1.15", "description": "Hiccup shape tree renderer for vanilla Canvas 2D contexts", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -44,15 +44,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/color": "^2.0.0", - "@thi.ng/math": "^3.0.0", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/color": "^2.1.0", + "@thi.ng/math": "^3.0.1", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/hiccup-carbon-icons/CHANGELOG.md b/packages/hiccup-carbon-icons/CHANGELOG.md index 07c5513df6..37b057f0cc 100644 --- a/packages/hiccup-carbon-icons/CHANGELOG.md +++ b/packages/hiccup-carbon-icons/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.0.9](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-carbon-icons@2.0.8...@thi.ng/hiccup-carbon-icons@2.0.9) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/hiccup-carbon-icons + + + + + ## [2.0.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-carbon-icons@2.0.7...@thi.ng/hiccup-carbon-icons@2.0.8) (2020-12-22) **Note:** Version bump only for package @thi.ng/hiccup-carbon-icons diff --git a/packages/hiccup-carbon-icons/README.md b/packages/hiccup-carbon-icons/README.md index 07cdc43c6f..c62e4fa190 100644 --- a/packages/hiccup-carbon-icons/README.md +++ b/packages/hiccup-carbon-icons/README.md @@ -160,4 +160,4 @@ If this project contributes to an academic publication, please cite it as: The copyright of the original icons is with IBM. The icons were published under the same license as this package. -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/hiccup-carbon-icons/package.json b/packages/hiccup-carbon-icons/package.json index c048b504b3..56862b9617 100644 --- a/packages/hiccup-carbon-icons/package.json +++ b/packages/hiccup-carbon-icons/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hiccup-carbon-icons", - "version": "2.0.8", + "version": "2.0.9", "description": "Full set of IBM's Carbon icons in hiccup format", "module": "./index.js", "main": "./lib/index.js", @@ -35,20 +35,20 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.map *.d.ts .nyc_output build coverage doc lib utils", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.12.1", - "@thi.ng/hiccup": "^3.6.5", + "@thi.ng/hiccup": "^3.6.6", "@types/mocha": "^8.2.0", "@types/node": "^14.14.14", "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "files": [ diff --git a/packages/hiccup-css/CHANGELOG.md b/packages/hiccup-css/CHANGELOG.md index fed65d0c80..777c94748a 100644 --- a/packages/hiccup-css/CHANGELOG.md +++ b/packages/hiccup-css/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.1.44](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-css@1.1.43...@thi.ng/hiccup-css@1.1.44) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/hiccup-css + + + + + ## [1.1.43](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-css@1.1.42...@thi.ng/hiccup-css@1.1.43) (2020-12-22) **Note:** Version bump only for package @thi.ng/hiccup-css diff --git a/packages/hiccup-css/README.md b/packages/hiccup-css/README.md index de7ace0ef4..8dfc11b6a6 100644 --- a/packages/hiccup-css/README.md +++ b/packages/hiccup-css/README.md @@ -663,4 +663,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/hiccup-css/package.json b/packages/hiccup-css/package.json index 64b505e526..802e2d3557 100644 --- a/packages/hiccup-css/package.json +++ b/packages/hiccup-css/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hiccup-css", - "version": "1.1.43", + "version": "1.1.44", "description": "CSS from nested JS data structures", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/hiccup-html/CHANGELOG.md b/packages/hiccup-html/CHANGELOG.md index e563bcaa6c..dcb8ec40d5 100644 --- a/packages/hiccup-html/CHANGELOG.md +++ b/packages/hiccup-html/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.3.11](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-html@0.3.10...@thi.ng/hiccup-html@0.3.11) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/hiccup-html + + + + + ## [0.3.10](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-html@0.3.9...@thi.ng/hiccup-html@0.3.10) (2020-12-22) **Note:** Version bump only for package @thi.ng/hiccup-html diff --git a/packages/hiccup-html/README.md b/packages/hiccup-html/README.md index 7dc7b12311..3306301f81 100644 --- a/packages/hiccup-html/README.md +++ b/packages/hiccup-html/README.md @@ -11,13 +11,13 @@ This project is part of the - [About](#about) - [Supported elements](#supported-elements) - - [Head / metadata](#head---metadata) + - [Head / metadata](#head--metadata) - [Sections](#sections) - [Text content](#text-content) - [Lists](#lists) - [Tables](#tables) - [Inline](#inline) - - [Forms / inputs](#forms---inputs) + - [Forms / inputs](#forms--inputs) - [Media](#media) - [Compatibility](#compatibility) - [Status](#status) @@ -352,4 +352,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/hiccup-html/package.json b/packages/hiccup-html/package.json index dbdfe7e328..a52c5b6bb0 100644 --- a/packages/hiccup-html/package.json +++ b/packages/hiccup-html/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hiccup-html", - "version": "0.3.10", + "version": "0.3.11", "description": "100+ type-checked HTML5 element functions for @thi.ng/hiccup related infrastructure", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -44,11 +44,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5" + "@thi.ng/api": "^6.13.6" }, "files": [ "*.js", diff --git a/packages/hiccup-markdown/CHANGELOG.md b/packages/hiccup-markdown/CHANGELOG.md index 1a24bf2d00..70cbb0eb3a 100644 --- a/packages/hiccup-markdown/CHANGELOG.md +++ b/packages/hiccup-markdown/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.2.40](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-markdown@1.2.39...@thi.ng/hiccup-markdown@1.2.40) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/hiccup-markdown + + + + + ## [1.2.39](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-markdown@1.2.38...@thi.ng/hiccup-markdown@1.2.39) (2020-12-22) **Note:** Version bump only for package @thi.ng/hiccup-markdown diff --git a/packages/hiccup-markdown/README.md b/packages/hiccup-markdown/README.md index 01b5f63bbd..8ea441f0c3 100644 --- a/packages/hiccup-markdown/README.md +++ b/packages/hiccup-markdown/README.md @@ -413,4 +413,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/hiccup-markdown/package.json b/packages/hiccup-markdown/package.json index e25dceb1e9..c33be71c1c 100644 --- a/packages/hiccup-markdown/package.json +++ b/packages/hiccup-markdown/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hiccup-markdown", - "version": "1.2.39", + "version": "1.2.40", "description": "Markdown parser & serializer from/to Hiccup format", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,20 +45,20 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/arrays": "^0.8.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/defmulti": "^1.3.3", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/fsm": "^2.4.30", - "@thi.ng/hiccup": "^3.6.5", - "@thi.ng/strings": "^1.11.3", - "@thi.ng/text-canvas": "^0.2.36", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/arrays": "^0.9.0", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/defmulti": "^1.3.4", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/fsm": "^2.4.31", + "@thi.ng/hiccup": "^3.6.6", + "@thi.ng/strings": "^1.11.4", + "@thi.ng/text-canvas": "^0.3.0", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/hiccup-svg/CHANGELOG.md b/packages/hiccup-svg/CHANGELOG.md index f19d9f6749..da4d627221 100644 --- a/packages/hiccup-svg/CHANGELOG.md +++ b/packages/hiccup-svg/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [3.7.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-svg@3.6.6...@thi.ng/hiccup-svg@3.7.0) (2021-01-02) + + +### Features + +* **hiccup-svg:** update svg(), add convert attrib ([cd67a09](https://github.com/thi-ng/umbrella/commit/cd67a09c61c93bc7a84ac63eab48f85ab6c52d2a)) + + + + + ## [3.6.6](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-svg@3.6.5...@thi.ng/hiccup-svg@3.6.6) (2020-12-22) **Note:** Version bump only for package @thi.ng/hiccup-svg diff --git a/packages/hiccup-svg/README.md b/packages/hiccup-svg/README.md index 7ffa88ad7f..b4459b7a94 100644 --- a/packages/hiccup-svg/README.md +++ b/packages/hiccup-svg/README.md @@ -11,7 +11,7 @@ This project is part of the - [About](#about) - [Important](#important) - - [SVG conversion of @thi.ng/geom & @thi.ng/hdom-canvas shape trees](#svg-conversion-of-thing-geom--thing-hdom-canvas-shape-trees) + - [SVG conversion of @thi.ng/geom & @thi.ng/hdom-canvas shape trees](#svg-conversion-of-thinggeom--thinghdom-canvas-shape-trees) - [Automatic attribute conversions](#automatic-attribute-conversions) - [Colors](#colors) - [Transforms](#transforms) @@ -61,6 +61,28 @@ returns a new tree. The original remains untouched, as will any unrecognized tree / shape nodes (those will be transferred as-is to the result tree). See example below. +Since v3.7.0 tree conversion can be implicitly triggered by providing a +`convert: true` attribute to the root `svg()` element. + +```ts +// create SVG root element and convert body +svg( + { width: 100, height: 100, convert: true}, + ["rect", { fill: [1, 0, 0] }, [0,0], 100, 100] +) +// [ +// 'svg', +// { +// version: '1.1', +// xmlns: 'http://www.w3.org/2000/svg', +// 'xmlns:xlink': 'http://www.w3.org/1999/xlink', +// width: 100, +// height: 100 +// }, +// [ 'rect', { fill: '#ff0000', x: 0, y: 0, width: 100, height: 100 } ] +// ] +``` + ### Automatic attribute conversions #### Colors @@ -131,7 +153,7 @@ yarn add @thi.ng/hiccup-svg ``` -Package sizes (gzipped, pre-treeshake): ESM: 2.49 KB / CJS: 2.61 KB / UMD: 2.53 KB +Package sizes (gzipped, pre-treeshake): ESM: 2.51 KB / CJS: 2.63 KB / UMD: 2.56 KB ## Dependencies @@ -244,4 +266,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/hiccup-svg/package.json b/packages/hiccup-svg/package.json index 16a51f21f2..4624b329dd 100644 --- a/packages/hiccup-svg/package.json +++ b/packages/hiccup-svg/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hiccup-svg", - "version": "3.6.6", + "version": "3.7.0", "description": "SVG element functions for @thi.ng/hiccup & @thi.ng/hdom", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/checks": "^2.7.12", - "@thi.ng/color": "^2.0.0", - "@thi.ng/prefixes": "^0.1.9" + "@thi.ng/checks": "^2.7.13", + "@thi.ng/color": "^2.1.0", + "@thi.ng/prefixes": "^0.1.10" }, "files": [ "*.js", diff --git a/packages/hiccup-svg/src/svg.ts b/packages/hiccup-svg/src/svg.ts index c5e74c0896..b48820f37b 100644 --- a/packages/hiccup-svg/src/svg.ts +++ b/packages/hiccup-svg/src/svg.ts @@ -1,21 +1,31 @@ import { XML_SVG, XML_XLINK } from "@thi.ng/prefixes"; +import { convertTree } from "./convert"; import { fattribs } from "./format"; /** * Defines an root element with default XML namespaces. By default - * currently still sets SVG version to 1.1 to support Safari and other - * legacy tooling. + * currently still sets SVG version to 1.1 to support Safari and other legacy + * tooling. + * + * @remarks + * If the `convert: true` attrib is given, all body elements will be + * automatically converted using {@link convertTree}. The `convert` attrib is + * NOT going to be serialized in the final output. * * @param attribs - attributes object * @param body - shape primitives */ -export const svg = (attribs: any, ...body: any[]): any[] => [ - "svg", - fattribs({ +export const svg = (attribs: any, ...body: any[]): any[] => { + attribs = fattribs({ version: "1.1", xmlns: XML_SVG, "xmlns:xlink": XML_XLINK, ...attribs, - }), - ...body, -]; + }); + if (attribs.convert) { + delete attribs.convert; + return ["svg", attribs, ...body.map(convertTree)]; + } else { + return ["svg", attribs, ...body]; + } +}; diff --git a/packages/hiccup-svg/tpl.readme.md b/packages/hiccup-svg/tpl.readme.md index db56cf4b61..f9cf5a8a51 100644 --- a/packages/hiccup-svg/tpl.readme.md +++ b/packages/hiccup-svg/tpl.readme.md @@ -47,6 +47,28 @@ returns a new tree. The original remains untouched, as will any unrecognized tree / shape nodes (those will be transferred as-is to the result tree). See example below. +Since v3.7.0 tree conversion can be implicitly triggered by providing a +`convert: true` attribute to the root `svg()` element. + +```ts +// create SVG root element and convert body +svg( + { width: 100, height: 100, convert: true}, + ["rect", { fill: [1, 0, 0] }, [0,0], 100, 100] +) +// [ +// 'svg', +// { +// version: '1.1', +// xmlns: 'http://www.w3.org/2000/svg', +// 'xmlns:xlink': 'http://www.w3.org/1999/xlink', +// width: 100, +// height: 100 +// }, +// [ 'rect', { fill: '#ff0000', x: 0, y: 0, width: 100, height: 100 } ] +// ] +``` + ### Automatic attribute conversions #### Colors diff --git a/packages/hiccup/CHANGELOG.md b/packages/hiccup/CHANGELOG.md index 1ceb3de6de..1780831b9b 100644 --- a/packages/hiccup/CHANGELOG.md +++ b/packages/hiccup/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [3.6.6](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup@3.6.5...@thi.ng/hiccup@3.6.6) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/hiccup + + + + + ## [3.6.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup@3.6.4...@thi.ng/hiccup@3.6.5) (2020-12-22) **Note:** Version bump only for package @thi.ng/hiccup diff --git a/packages/hiccup/README.md b/packages/hiccup/README.md index e551cdb424..e5463f88e1 100644 --- a/packages/hiccup/README.md +++ b/packages/hiccup/README.md @@ -26,13 +26,13 @@ This project is part of the - [Attributes](#attributes) - [Simple components](#simple-components) - [User context injection](#user-context-injection) - - [SVG generation, generators & lazy composition](#svg-generation--generators--lazy-composition) + - [SVG generation, generators & lazy composition](#svg-generation-generators--lazy-composition) - [Data-driven component composition](#data-driven-component-composition) - [Stateful component](#stateful-component) - [Component objects](#component-objects) - [Behavior control attributes](#behavior-control-attributes) - [Comments](#comments) - - [XML / DTD processing instructions](#xml---dtd-processing-instructions) + - [XML / DTD processing instructions](#xml--dtd-processing-instructions) - [API](#api) - [serialize()](#serialize) - [escape()](#escape) @@ -156,7 +156,6 @@ Package sizes (gzipped, pre-treeshake): ESM: 2.29 KB / CJS: 2.40 KB / UMD: 2.42 - [@thi.ng/api](https://github.com/thi-ng/umbrella/tree/develop/packages/api) - [@thi.ng/checks](https://github.com/thi-ng/umbrella/tree/develop/packages/checks) - [@thi.ng/errors](https://github.com/thi-ng/umbrella/tree/develop/packages/errors) -- [@thi.ng/prefixes](https://github.com/thi-ng/umbrella/tree/develop/packages/prefixes) ## Usage examples @@ -661,4 +660,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/hiccup/package.json b/packages/hiccup/package.json index cde7472df8..61ca6593da 100644 --- a/packages/hiccup/package.json +++ b/packages/hiccup/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hiccup", - "version": "3.6.5", + "version": "3.6.6", "description": "HTML/SVG/XML serialization of nested data structures, iterables & closures", "module": "./index.js", "main": "./lib/index.js", @@ -33,27 +33,26 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.12.1", - "@thi.ng/atom": "^4.1.25", + "@thi.ng/atom": "^4.1.26", "@types/mocha": "^8.2.0", "@types/node": "^14.14.14", "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/prefixes": "^0.1.9" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26" }, "files": [ "*.js", diff --git a/packages/idgen/CHANGELOG.md b/packages/idgen/CHANGELOG.md index 5e1b177634..71b1ddb7c3 100644 --- a/packages/idgen/CHANGELOG.md +++ b/packages/idgen/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.29](https://github.com/thi-ng/umbrella/compare/@thi.ng/idgen@0.2.28...@thi.ng/idgen@0.2.29) (2021-01-02) + + +### Performance Improvements + +* **idgen:** minor updates IDGen, add doc strings ([1c0e284](https://github.com/thi-ng/umbrella/commit/1c0e284e9f48d4a37a55f74db0fb2b6eade9dc89)) + + + + + ## [0.2.28](https://github.com/thi-ng/umbrella/compare/@thi.ng/idgen@0.2.27...@thi.ng/idgen@0.2.28) (2020-12-22) **Note:** Version bump only for package @thi.ng/idgen diff --git a/packages/idgen/README.md b/packages/idgen/README.md index 8c67663df5..e028e31978 100644 --- a/packages/idgen/README.md +++ b/packages/idgen/README.md @@ -15,7 +15,7 @@ This project is part of the - [Dependencies](#dependencies) - [API](#api) - [ID generator with 16 bit range and no versioning](#id-generator-with-16-bit-range-and-no-versioning) - - [ID generator w/ 24 bit range & 8 bit version range](#id-generator-w--24-bit-range--8-bit-version-range) + - [ID generator w/ 24 bit range & 8 bit version range](#id-generator-w-24-bit-range--8-bit-version-range) - [IDGen is iterable](#idgen-is-iterable) - [Authors](#authors) - [License](#license) @@ -63,7 +63,7 @@ yarn add @thi.ng/idgen ``` -Package sizes (gzipped, pre-treeshake): ESM: 843 bytes / CJS: 890 bytes / UMD: 1006 bytes +Package sizes (gzipped, pre-treeshake): ESM: 857 bytes / CJS: 906 bytes / UMD: 1019 bytes ## Dependencies @@ -188,4 +188,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/idgen/package.json b/packages/idgen/package.json index 9d4ad2757f..959a97e1df 100644 --- a/packages/idgen/package.json +++ b/packages/idgen/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/idgen", - "version": "0.2.28", + "version": "0.2.29", "description": "Generator of opaque numeric identifiers with optional support for ID versioning and efficient re-use", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", + "@thi.ng/api": "^6.13.6", "tslib": "2.0.1" }, "files": [ diff --git a/packages/idgen/src/index.ts b/packages/idgen/src/index.ts index c3f4d54801..d19b029656 100644 --- a/packages/idgen/src/index.ts +++ b/packages/idgen/src/index.ts @@ -23,7 +23,7 @@ export class IDGen implements Iterable, IClear, INotify { protected vmask: number; protected shift: number; - constructor(bits = 32, vbits = 32 - bits, cap = 2 ** bits, next = 0) { + constructor(bits = 32, vbits = 32 - bits, cap = 2 ** bits, start = 0) { const maxCap = 2 ** bits; assert(bits > 0 && bits + vbits <= 32, "wrong total bit size [1..32]"); assert( @@ -31,8 +31,8 @@ export class IDGen implements Iterable, IClear, INotify { `requested capacity too large for bit size (max. ${maxCap})` ); this.ids = []; - this.nextID = next; - this.start = next; + this.nextID = start; + this.start = start; this._capacity = cap; this.num = 0; this.mask = maxCap - 1; @@ -41,10 +41,20 @@ export class IDGen implements Iterable, IClear, INotify { this._freeID = -1; } + /** + * Extract actual ID (without version bits). + * + * @param id + */ id(id: number) { return id & this.mask; } + /** + * Extract version from ID + * + * @param id + */ version(id: number) { return (id >>> this.shift) & this.vmask; } @@ -75,14 +85,14 @@ export class IDGen implements Iterable, IClear, INotify { } /** - * Number of available IDs. + * Number of remaining available IDs. */ get available() { return this._capacity - this.num - this.start; } /** - * Number of used IDs. + * Number of currently used IDs. */ get used() { return this.num; @@ -96,14 +106,15 @@ export class IDGen implements Iterable, IClear, INotify { } *[Symbol.iterator]() { + const { ids, mask } = this; for (let i = this.nextID; --i >= 0; ) { - const id = this.ids[i]; - if ((id & this.mask) === i) yield id; + const id = ids[i]; + if ((id & mask) === i) yield id; } } /** - * Frees all existing IDs and resets counter to zero. + * Frees all existing IDs and resets counter to original start ID. */ clear() { this.ids.length = 0; @@ -114,13 +125,13 @@ export class IDGen implements Iterable, IClear, INotify { /** * Returns next available ID or throws error (assertion) if no further IDs - * are currently available. + * are currently available. Emits {@link EVENT_ADDED} if successful. */ next() { let id: number; if (this._freeID !== -1) { id = this._freeID; - const rawID = this.id(id); + const rawID = id & this.mask; this._freeID = this.ids[rawID]; this.ids[rawID] = id; } else { @@ -135,13 +146,13 @@ export class IDGen implements Iterable, IClear, INotify { /** * Marks given ID as available again and increases its version (if - * versioning is enabled). + * versioning is enabled). Emits {@link EVENT_REMOVED} if successful. * * @param id */ free(id: number) { if (!this.has(id)) return false; - this.ids[this.id(id)] = this._freeID; + this.ids[id & this.mask] = this._freeID; this._freeID = this.nextVersion(id); this.num--; this.notify({ id: EVENT_REMOVED, target: this, value: id }); @@ -154,7 +165,7 @@ export class IDGen implements Iterable, IClear, INotify { * @param id */ has(id: number) { - const rawID = this.id(id); + const rawID = id & this.mask; return id >= 0 && rawID < this.nextID && this.ids[rawID] === id; } @@ -179,9 +190,23 @@ export class IDGen implements Iterable, IClear, INotify { } } +/** + * Returns a new {@link IDGen} instance configured to use given counter & + * version bits. + * + * @remarks + * Overall ID range/capacity can be explicitly limited using `cap` (default and + * maximum: 2^bits). The start ID can be defined via `start` (default: 0) and + * MUST be < `cap`. + * + * @param bits + * @param vbits + * @param cap + * @param start + */ export const idgen = ( bits: number, vbits?: number, cap?: number, - next?: number -) => new IDGen(bits, vbits, cap, next); + start?: number +) => new IDGen(bits, vbits, cap, start); diff --git a/packages/iges/CHANGELOG.md b/packages/iges/CHANGELOG.md index c6b56000c3..bbf3e862e8 100644 --- a/packages/iges/CHANGELOG.md +++ b/packages/iges/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.1.54](https://github.com/thi-ng/umbrella/compare/@thi.ng/iges@1.1.53...@thi.ng/iges@1.1.54) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/iges + + + + + ## [1.1.53](https://github.com/thi-ng/umbrella/compare/@thi.ng/iges@1.1.52...@thi.ng/iges@1.1.53) (2020-12-22) **Note:** Version bump only for package @thi.ng/iges diff --git a/packages/iges/README.md b/packages/iges/README.md index 6bbaaf8b5c..bddb35f136 100644 --- a/packages/iges/README.md +++ b/packages/iges/README.md @@ -124,4 +124,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/iges/package.json b/packages/iges/package.json index 67d8a59e7c..cca3837a46 100644 --- a/packages/iges/package.json +++ b/packages/iges/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/iges", - "version": "1.1.53", + "version": "1.1.54", "description": "IGES 5.3 serializer for (currently only) polygonal geometry, both open & closed", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,16 +45,16 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/defmulti": "^1.3.3", - "@thi.ng/strings": "^1.11.3", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/defmulti": "^1.3.4", + "@thi.ng/strings": "^1.11.4", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/imgui/CHANGELOG.md b/packages/imgui/CHANGELOG.md index df0c83935f..a31569f120 100644 --- a/packages/imgui/CHANGELOG.md +++ b/packages/imgui/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.47](https://github.com/thi-ng/umbrella/compare/@thi.ng/imgui@0.2.46...@thi.ng/imgui@0.2.47) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/imgui + + + + + ## [0.2.46](https://github.com/thi-ng/umbrella/compare/@thi.ng/imgui@0.2.45...@thi.ng/imgui@0.2.46) (2020-12-22) **Note:** Version bump only for package @thi.ng/imgui diff --git a/packages/imgui/README.md b/packages/imgui/README.md index f7c02568e2..06557a5011 100644 --- a/packages/imgui/README.md +++ b/packages/imgui/README.md @@ -11,7 +11,7 @@ This project is part of the - [About](#about) - [Current features](#current-features) - - [Available components / widgets](#available-components---widgets) + - [Available components / widgets](#available-components--widgets) - [State handling](#state-handling) - [Layout support](#layout-support) - [Key controls](#key-controls) @@ -291,4 +291,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/imgui/package.json b/packages/imgui/package.json index de0cd6bd00..6c400417af 100644 --- a/packages/imgui/package.json +++ b/packages/imgui/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/imgui", - "version": "0.2.46", + "version": "0.2.47", "description": "Immediate mode GUI with flexible state handling & data only shape output", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib behaviors components", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,20 +45,20 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/geom": "^2.0.0", - "@thi.ng/geom-api": "^2.0.0", - "@thi.ng/geom-isec": "^0.7.3", - "@thi.ng/geom-tessellate": "^0.2.52", - "@thi.ng/layout": "^0.1.26", - "@thi.ng/math": "^3.0.0", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/geom": "^2.0.1", + "@thi.ng/geom-api": "^2.0.1", + "@thi.ng/geom-isec": "^0.7.4", + "@thi.ng/geom-tessellate": "^0.2.53", + "@thi.ng/layout": "^0.1.27", + "@thi.ng/math": "^3.0.1", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/interceptors/CHANGELOG.md b/packages/interceptors/CHANGELOG.md index 8f76a6a3aa..8edea82041 100644 --- a/packages/interceptors/CHANGELOG.md +++ b/packages/interceptors/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.2.37](https://github.com/thi-ng/umbrella/compare/@thi.ng/interceptors@2.2.36...@thi.ng/interceptors@2.2.37) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/interceptors + + + + + ## [2.2.36](https://github.com/thi-ng/umbrella/compare/@thi.ng/interceptors@2.2.35...@thi.ng/interceptors@2.2.36) (2020-12-22) **Note:** Version bump only for package @thi.ng/interceptors diff --git a/packages/interceptors/README.md b/packages/interceptors/README.md index ab5120a8db..f3da3cc336 100644 --- a/packages/interceptors/README.md +++ b/packages/interceptors/README.md @@ -10,11 +10,11 @@ This project is part of the [@thi.ng/umbrella](https://github.com/thi-ng/umbrella/) monorepo. - [About](#about) -- [Event bus, interceptors, side effects](#event-bus--interceptors--side-effects) - - [Interceptors: Event and Effect primitives](#interceptors--event-and-effect-primitives) +- [Event bus, interceptors, side effects](#event-bus-interceptors-side-effects) + - [Interceptors: Event and Effect primitives](#interceptors-event-and-effect-primitives) - [Event Handlers](#event-handlers) - [Events vs Effects:](#events-vs-effects) - - [Great, but why?](#great--but-why) + - [Great, but why?](#great-but-why) - [Status](#status) - [Installation](#installation) - [Dependencies](#dependencies) @@ -191,4 +191,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/interceptors/package.json b/packages/interceptors/package.json index 6df1276142..f0d7fc72c4 100644 --- a/packages/interceptors/package.json +++ b/packages/interceptors/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/interceptors", - "version": "2.2.36", + "version": "2.2.37", "description": "Interceptor based event bus, side effect & immutable state handling", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/atom": "^4.1.25", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/paths": "^4.1.11" + "@thi.ng/api": "^6.13.6", + "@thi.ng/atom": "^4.1.26", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/paths": "^4.1.12" }, "files": [ "*.js", diff --git a/packages/intervals/CHANGELOG.md b/packages/intervals/CHANGELOG.md index 68f209227e..abe0e81298 100644 --- a/packages/intervals/CHANGELOG.md +++ b/packages/intervals/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.1.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/intervals@2.1.3...@thi.ng/intervals@2.1.4) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/intervals + + + + + ## [2.1.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/intervals@2.1.2...@thi.ng/intervals@2.1.3) (2020-12-22) **Note:** Version bump only for package @thi.ng/intervals diff --git a/packages/intervals/README.md b/packages/intervals/README.md index 0b5c3e26db..f0f6cc0a67 100644 --- a/packages/intervals/README.md +++ b/packages/intervals/README.md @@ -169,4 +169,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/intervals/package.json b/packages/intervals/package.json index 320581f350..4584282fb4 100644 --- a/packages/intervals/package.json +++ b/packages/intervals/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/intervals", - "version": "2.1.3", + "version": "2.1.4", "description": "Closed/open/semi-open interval data type, queries & operations", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/dlogic": "^1.0.36", - "@thi.ng/errors": "^1.2.25" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/dlogic": "^1.0.37", + "@thi.ng/errors": "^1.2.26" }, "files": [ "*.js", diff --git a/packages/iterators/CHANGELOG.md b/packages/iterators/CHANGELOG.md index bad05d4f49..b8a0c81870 100644 --- a/packages/iterators/CHANGELOG.md +++ b/packages/iterators/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [5.1.45](https://github.com/thi-ng/umbrella/compare/@thi.ng/iterators@5.1.44...@thi.ng/iterators@5.1.45) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/iterators + + + + + ## [5.1.44](https://github.com/thi-ng/umbrella/compare/@thi.ng/iterators@5.1.43...@thi.ng/iterators@5.1.44) (2020-12-22) **Note:** Version bump only for package @thi.ng/iterators diff --git a/packages/iterators/README.md b/packages/iterators/README.md index 717e9651ae..72bcb7b836 100644 --- a/packages/iterators/README.md +++ b/packages/iterators/README.md @@ -1173,4 +1173,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2017 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2017 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/iterators/package.json b/packages/iterators/package.json index 786ef0367a..57f7c53422 100644 --- a/packages/iterators/package.json +++ b/packages/iterators/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/iterators", - "version": "5.1.44", + "version": "5.1.45", "description": "Clojure inspired, composable ES6 iterators & generators", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/dcons": "^2.3.4", - "@thi.ng/errors": "^1.2.25" + "@thi.ng/api": "^6.13.6", + "@thi.ng/dcons": "^2.3.5", + "@thi.ng/errors": "^1.2.26" }, "files": [ "*.js", diff --git a/packages/layout/CHANGELOG.md b/packages/layout/CHANGELOG.md index e3d6dda2e9..7bbba1b312 100644 --- a/packages/layout/CHANGELOG.md +++ b/packages/layout/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.27](https://github.com/thi-ng/umbrella/compare/@thi.ng/layout@0.1.26...@thi.ng/layout@0.1.27) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/layout + + + + + ## [0.1.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/layout@0.1.25...@thi.ng/layout@0.1.26) (2020-12-22) **Note:** Version bump only for package @thi.ng/layout diff --git a/packages/layout/README.md b/packages/layout/README.md index 33649e90f5..54bd60b8d4 100644 --- a/packages/layout/README.md +++ b/packages/layout/README.md @@ -142,4 +142,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/layout/package.json b/packages/layout/package.json index 6191226764..ced9e41222 100644 --- a/packages/layout/package.json +++ b/packages/layout/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/layout", - "version": "0.1.26", + "version": "0.1.27", "description": "Configurable nested 2D grid layout manager", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/checks": "^2.7.12" + "@thi.ng/checks": "^2.7.13" }, "files": [ "*.js", diff --git a/packages/leb128/CHANGELOG.md b/packages/leb128/CHANGELOG.md index 3cd09a10d4..6715726ca8 100644 --- a/packages/leb128/CHANGELOG.md +++ b/packages/leb128/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.39](https://github.com/thi-ng/umbrella/compare/@thi.ng/leb128@1.0.38...@thi.ng/leb128@1.0.39) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/leb128 + + + + + ## [1.0.38](https://github.com/thi-ng/umbrella/compare/@thi.ng/leb128@1.0.37...@thi.ng/leb128@1.0.38) (2020-12-22) **Note:** Version bump only for package @thi.ng/leb128 diff --git a/packages/leb128/README.md b/packages/leb128/README.md index 77bbc79843..d12863e778 100644 --- a/packages/leb128/README.md +++ b/packages/leb128/README.md @@ -134,4 +134,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/leb128/package.json b/packages/leb128/package.json index 4c743345ee..a2340a727b 100644 --- a/packages/leb128/package.json +++ b/packages/leb128/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/leb128", - "version": "1.0.38", + "version": "1.0.39", "description": "WASM based LEB128 encoder / decoder (signed & unsigned)", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -46,13 +46,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/transducers-binary": "^0.6.0" + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/transducers-binary": "^0.6.1" }, "files": [ "*.js", diff --git a/packages/lsys/CHANGELOG.md b/packages/lsys/CHANGELOG.md index 20a9ebd683..54a1699653 100644 --- a/packages/lsys/CHANGELOG.md +++ b/packages/lsys/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.67](https://github.com/thi-ng/umbrella/compare/@thi.ng/lsys@0.2.66...@thi.ng/lsys@0.2.67) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/lsys + + + + + ## [0.2.66](https://github.com/thi-ng/umbrella/compare/@thi.ng/lsys@0.2.65...@thi.ng/lsys@0.2.66) (2020-12-22) **Note:** Version bump only for package @thi.ng/lsys diff --git a/packages/lsys/README.md b/packages/lsys/README.md index ceac7928e2..cca6367957 100644 --- a/packages/lsys/README.md +++ b/packages/lsys/README.md @@ -261,4 +261,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/lsys/package.json b/packages/lsys/package.json index eb41d2b26b..e7299085f7 100644 --- a/packages/lsys/package.json +++ b/packages/lsys/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/lsys", - "version": "0.2.66", + "version": "0.2.67", "description": "Functional, extensible L-System architecture w/ support for probabilistic rules", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,17 +45,17 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/compose": "^1.4.22", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/math": "^3.0.0", - "@thi.ng/random": "^2.1.3", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/compose": "^1.4.23", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/math": "^3.0.1", + "@thi.ng/random": "^2.1.4", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/malloc/CHANGELOG.md b/packages/malloc/CHANGELOG.md index 87b5df3b6a..ef64b546bc 100644 --- a/packages/malloc/CHANGELOG.md +++ b/packages/malloc/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.2.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/malloc@4.2.4...@thi.ng/malloc@4.2.5) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/malloc + + + + + ## [4.2.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/malloc@4.2.3...@thi.ng/malloc@4.2.4) (2020-12-22) **Note:** Version bump only for package @thi.ng/malloc diff --git a/packages/malloc/README.md b/packages/malloc/README.md index f23efb98c9..19c09dc26f 100644 --- a/packages/malloc/README.md +++ b/packages/malloc/README.md @@ -11,20 +11,20 @@ This project is part of the - [About](#about) - [Memory layout](#memory-layout) - - [Free block compaction / coalescing](#free-block-compaction---coalescing) + - [Free block compaction / coalescing](#free-block-compaction--coalescing) - [Block splitting](#block-splitting) - [Status](#status) - [Installation](#installation) - [Dependencies](#dependencies) - [API](#api) - [MemPool](#mempool) - - [`malloc(size: number)`](#mallocsize--number) - - [`mallocAs(type: Type, num: number)`](#mallocastype--type--num--number) - - [`calloc(size: number, fill = 0)`](#callocsize--number--fill--0) - - [`callocAs(type: Type, num: number, fill = 0)`](#callocastype--type--num--number--fill--0) - - [`realloc(addr: number, size: number)`](#reallocaddr--number--size--number) - - [`reallocArray(buf: TypedArray, num: number)`](#reallocarraybuf--typedarray--num--number) - - [`free(addr: number | TypedArray)`](#freeaddr--number--typedarray) + - [`malloc(size: number)`](#mallocsize-number) + - [`mallocAs(type: Type, num: number)`](#mallocastype-type-num-number) + - [`calloc(size: number, fill = 0)`](#callocsize-number-fill--0) + - [`callocAs(type: Type, num: number, fill = 0)`](#callocastype-type-num-number-fill--0) + - [`realloc(addr: number, size: number)`](#reallocaddr-number-size-number) + - [`reallocArray(buf: TypedArray, num: number)`](#reallocarraybuf-typedarray-num-number) + - [`free(addr: number | TypedArray)`](#freeaddr-number--typedarray) - [`freeAll()`](#freeall) - [`release()`](#release) - [`stats()`](#stats) @@ -361,4 +361,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/malloc/package.json b/packages/malloc/package.json index ea67b0b89d..2b39733df2 100644 --- a/packages/malloc/package.json +++ b/packages/malloc/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/malloc", - "version": "4.2.4", + "version": "4.2.5", "description": "ArrayBuffer based malloc() impl for hybrid JS/WASM use cases, based on thi.ng/tinyalloc", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/binary": "^2.0.20", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25" + "@thi.ng/api": "^6.13.6", + "@thi.ng/binary": "^2.0.21", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26" }, "files": [ "*.js", diff --git a/packages/math/CHANGELOG.md b/packages/math/CHANGELOG.md index 453d5e6a8b..8d76992fb4 100644 --- a/packages/math/CHANGELOG.md +++ b/packages/math/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [3.0.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/math@3.0.0...@thi.ng/math@3.0.1) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/math + + + + + # [3.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/math@2.2.2...@thi.ng/math@3.0.0) (2020-12-22) diff --git a/packages/math/README.md b/packages/math/README.md index 30644fe8b7..256cb98390 100644 --- a/packages/math/README.md +++ b/packages/math/README.md @@ -105,4 +105,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2013 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2013 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/math/package.json b/packages/math/package.json index a63c705cf6..b701791c9b 100644 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/math", - "version": "3.0.0", + "version": "3.0.1", "description": "Assorted common math functions & utilities", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5" + "@thi.ng/api": "^6.13.6" }, "files": [ "*.js", diff --git a/packages/matrices/CHANGELOG.md b/packages/matrices/CHANGELOG.md index cb6c61e765..2bac474494 100644 --- a/packages/matrices/CHANGELOG.md +++ b/packages/matrices/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.6.39](https://github.com/thi-ng/umbrella/compare/@thi.ng/matrices@0.6.38...@thi.ng/matrices@0.6.39) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/matrices + + + + + ## [0.6.38](https://github.com/thi-ng/umbrella/compare/@thi.ng/matrices@0.6.37...@thi.ng/matrices@0.6.38) (2020-12-22) **Note:** Version bump only for package @thi.ng/matrices diff --git a/packages/matrices/README.md b/packages/matrices/README.md index 40e7df8545..8ba6cef4e9 100644 --- a/packages/matrices/README.md +++ b/packages/matrices/README.md @@ -56,7 +56,7 @@ sensible). ### Related packages -- [@thi.ng/color](https://github.com/thi-ng/umbrella/tree/develop/packages/color) - Array-based color ops, conversions, multi-color gradients, presets +- [@thi.ng/color](https://github.com/thi-ng/umbrella/tree/develop/packages/color) - Array-based color types, conversions, transformations, declarative theme generation, multi-color gradients, presets - [@thi.ng/geom](https://github.com/thi-ng/umbrella/tree/develop/packages/geom) - Functional, polymorphic API for 2D geometry types & SVG generation - [@thi.ng/vector-pools](https://github.com/thi-ng/umbrella/tree/develop/packages/vector-pools) - Data structures for managing & working with strided, memory mapped vectors - [@thi.ng/vectors](https://github.com/thi-ng/umbrella/tree/develop/packages/vectors) - Optimized 2d/3d/4d and arbitrary length vector operations @@ -225,4 +225,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/matrices/package.json b/packages/matrices/package.json index c05bcf86e3..f26a495c6e 100644 --- a/packages/matrices/package.json +++ b/packages/matrices/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/matrices", - "version": "0.6.38", + "version": "0.6.39", "description": "Matrix & quaternion operations for 2D/3D geometry processing", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib internal", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/math": "^3.0.0", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/math": "^3.0.1", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/memoize/CHANGELOG.md b/packages/memoize/CHANGELOG.md index dbce87ece5..fb150cd255 100644 --- a/packages/memoize/CHANGELOG.md +++ b/packages/memoize/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.1.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/memoize@2.1.7...@thi.ng/memoize@2.1.8) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/memoize + + + + + ## [2.1.7](https://github.com/thi-ng/umbrella/compare/@thi.ng/memoize@2.1.6...@thi.ng/memoize@2.1.7) (2020-12-22) **Note:** Version bump only for package @thi.ng/memoize diff --git a/packages/memoize/README.md b/packages/memoize/README.md index 04b03affef..2554208b38 100644 --- a/packages/memoize/README.md +++ b/packages/memoize/README.md @@ -161,4 +161,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/memoize/package.json b/packages/memoize/package.json index 39c6fccddb..5e67651a49 100644 --- a/packages/memoize/package.json +++ b/packages/memoize/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/memoize", - "version": "2.1.7", + "version": "2.1.8", "description": "Function memoization with configurable caching", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5" + "@thi.ng/api": "^6.13.6" }, "files": [ "*.js", diff --git a/packages/mime/CHANGELOG.md b/packages/mime/CHANGELOG.md index e92ee83004..08e62660c9 100644 --- a/packages/mime/CHANGELOG.md +++ b/packages/mime/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.27](https://github.com/thi-ng/umbrella/compare/@thi.ng/mime@0.1.26...@thi.ng/mime@0.1.27) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/mime + + + + + ## [0.1.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/mime@0.1.25...@thi.ng/mime@0.1.26) (2020-12-22) **Note:** Version bump only for package @thi.ng/mime diff --git a/packages/mime/README.md b/packages/mime/README.md index ee18e907b8..b3d136da35 100644 --- a/packages/mime/README.md +++ b/packages/mime/README.md @@ -106,4 +106,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/mime/package.json b/packages/mime/package.json index a2fcd9190b..9e9fcae0bd 100644 --- a/packages/mime/package.json +++ b/packages/mime/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/mime", - "version": "0.1.26", + "version": "0.1.27", "description": "350+ file extension to MIME type mappings, based on mime-db", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5" + "@thi.ng/api": "^6.13.6" }, "files": [ "*.js", diff --git a/packages/morton/CHANGELOG.md b/packages/morton/CHANGELOG.md index 41f55835a1..eca4b7ffc0 100644 --- a/packages/morton/CHANGELOG.md +++ b/packages/morton/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.0.30](https://github.com/thi-ng/umbrella/compare/@thi.ng/morton@2.0.29...@thi.ng/morton@2.0.30) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/morton + + + + + ## [2.0.29](https://github.com/thi-ng/umbrella/compare/@thi.ng/morton@2.0.28...@thi.ng/morton@2.0.29) (2020-12-22) **Note:** Version bump only for package @thi.ng/morton diff --git a/packages/morton/README.md b/packages/morton/README.md index c673d5cc3b..c611a199ac 100644 --- a/packages/morton/README.md +++ b/packages/morton/README.md @@ -16,7 +16,7 @@ This project is part of the - [Dependencies](#dependencies) - [API](#api) - [ZCurve class](#zcurve-class) - - [Low level (2D / 3D only)](#low-level-2d---3d-only) + - [Low level (2D / 3D only)](#low-level-2d--3d-only) - [Authors](#authors) - [License](#license) @@ -157,4 +157,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2015 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2015 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/morton/package.json b/packages/morton/package.json index 4384f45418..f0184a1c69 100644 --- a/packages/morton/package.json +++ b/packages/morton/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/morton", - "version": "2.0.29", + "version": "2.0.30", "description": "Z-order curve / Morton encoding, decoding & range extraction for arbitrary dimensions", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/binary": "^2.0.20", - "@thi.ng/math": "^3.0.0" + "@thi.ng/api": "^6.13.6", + "@thi.ng/binary": "^2.0.21", + "@thi.ng/math": "^3.0.1" }, "files": [ "*.js", diff --git a/packages/oquery/CHANGELOG.md b/packages/oquery/CHANGELOG.md index 1f1c437ec4..0db85af39b 100644 --- a/packages/oquery/CHANGELOG.md +++ b/packages/oquery/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/oquery@0.2.2...@thi.ng/oquery@0.2.3) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/oquery + + + + + ## [0.2.2](https://github.com/thi-ng/umbrella/compare/@thi.ng/oquery@0.2.1...@thi.ng/oquery@0.2.2) (2020-12-22) **Note:** Version bump only for package @thi.ng/oquery diff --git a/packages/oquery/README.md b/packages/oquery/README.md index f664eac3a1..ed58cbf823 100644 --- a/packages/oquery/README.md +++ b/packages/oquery/README.md @@ -244,4 +244,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/oquery/package.json b/packages/oquery/package.json index f7ce38c848..df89a67043 100644 --- a/packages/oquery/package.json +++ b/packages/oquery/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/oquery", - "version": "0.2.2", + "version": "0.2.3", "description": "Datalog-inspired, optimized pattern/predicate query engine for JS objects & arrays", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -44,14 +44,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/defmulti": "^1.3.3", - "@thi.ng/equiv": "^1.0.34" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/defmulti": "^1.3.4", + "@thi.ng/equiv": "^1.0.35" }, "files": [ "*.js", diff --git a/packages/parse/CHANGELOG.md b/packages/parse/CHANGELOG.md index 45fde688a0..9605eb25a0 100644 --- a/packages/parse/CHANGELOG.md +++ b/packages/parse/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.9.9](https://github.com/thi-ng/umbrella/compare/@thi.ng/parse@0.9.8...@thi.ng/parse@0.9.9) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/parse + + + + + ## [0.9.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/parse@0.9.7...@thi.ng/parse@0.9.8) (2020-12-22) **Note:** Version bump only for package @thi.ng/parse diff --git a/packages/parse/README.md b/packages/parse/README.md index 71fb2fb28d..09bbe142aa 100644 --- a/packages/parse/README.md +++ b/packages/parse/README.md @@ -20,7 +20,7 @@ This project is part of the - [Context & reader creation](#context--reader-creation) - [Presets parsers](#presets-parsers) - [Primitives](#primitives) - - [Naming conventions / suffixes](#naming-conventions---suffixes) + - [Naming conventions / suffixes](#naming-conventions--suffixes) - [Anchors](#anchors) - [Combinators](#combinators) - [Transformers](#transformers) @@ -563,4 +563,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/parse/package.json b/packages/parse/package.json index 5631750326..e82a04ae2b 100644 --- a/packages/parse/package.json +++ b/packages/parse/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/parse", - "version": "0.9.8", + "version": "0.9.9", "description": "Purely functional parser combinators & AST generation for generic inputs", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib combinators presets prims readers xform", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/defmulti": "^1.3.3", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/strings": "^1.11.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/defmulti": "^1.3.4", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/strings": "^1.11.4" }, "files": [ "*.js", diff --git a/packages/paths/CHANGELOG.md b/packages/paths/CHANGELOG.md index a7f1368840..f911cedfa2 100644 --- a/packages/paths/CHANGELOG.md +++ b/packages/paths/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.1.12](https://github.com/thi-ng/umbrella/compare/@thi.ng/paths@4.1.11...@thi.ng/paths@4.1.12) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/paths + + + + + ## [4.1.11](https://github.com/thi-ng/umbrella/compare/@thi.ng/paths@4.1.10...@thi.ng/paths@4.1.11) (2020-12-22) **Note:** Version bump only for package @thi.ng/paths diff --git a/packages/paths/README.md b/packages/paths/README.md index 8b352fed2b..2930aa6f2e 100644 --- a/packages/paths/README.md +++ b/packages/paths/README.md @@ -98,7 +98,6 @@ A selection: | ------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | --------------------------------------------------------- | -------------------------------------------------------------------------------------- | | | Using hdom in an Elm-like manner | [Demo](https://demo.thi.ng/umbrella/hdom-elm/) | [Source](https://github.com/thi-ng/umbrella/tree/develop/examples/hdom-elm) | | | Event handling w/ interceptors and side effects | [Demo](https://demo.thi.ng/umbrella/interceptor-basics2/) | [Source](https://github.com/thi-ng/umbrella/tree/develop/examples/interceptor-basics2) | -| | Basic SPA example with atom-based UI router | [Demo](https://demo.thi.ng/umbrella/login-form/) | [Source](https://github.com/thi-ng/umbrella/tree/develop/examples/login-form) | | | Minimal demo of using rstream constructs to form an interceptor-style event loop | [Demo](https://demo.thi.ng/umbrella/rstream-event-loop/) | [Source](https://github.com/thi-ng/umbrella/tree/develop/examples/rstream-event-loop) | | | Obligatory to-do list example with undo/redo | [Demo](https://demo.thi.ng/umbrella/todo-list/) | [Source](https://github.com/thi-ng/umbrella/tree/develop/examples/todo-list) | | | Triple store query results & sortable table | [Demo](https://demo.thi.ng/umbrella/triple-query/) | [Source](https://github.com/thi-ng/umbrella/tree/develop/examples/triple-query) | @@ -368,4 +367,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/paths/package.json b/packages/paths/package.json index 1725d04bbb..3080b84446 100644 --- a/packages/paths/package.json +++ b/packages/paths/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/paths", - "version": "4.1.11", + "version": "4.1.12", "description": "Immutable, optimized and optionally typed path-based object property / array accessors with structural sharing", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26" }, "files": [ "*.js", diff --git a/packages/pixel/CHANGELOG.md b/packages/pixel/CHANGELOG.md index 4f3d2a9770..0a8a1de379 100644 --- a/packages/pixel/CHANGELOG.md +++ b/packages/pixel/CHANGELOG.md @@ -3,6 +3,18 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [0.5.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/pixel@0.4.10...@thi.ng/pixel@0.5.0) (2021-01-02) + + +### Features + +* **pixel:** add FLOAT_HSVA format, update FloatFormatSpec ([118c4ed](https://github.com/thi-ng/umbrella/commit/118c4edbacd75249262f26962153f614148cedec)) +* **pixel:** add FloatBuffer.fromPacked() ([abd1ca8](https://github.com/thi-ng/umbrella/commit/abd1ca80d455999dd8c3af87d24b4f1905d7806d)) + + + + + ## [0.4.10](https://github.com/thi-ng/umbrella/compare/@thi.ng/pixel@0.4.9...@thi.ng/pixel@0.4.10) (2020-12-22) **Note:** Version bump only for package @thi.ng/pixel diff --git a/packages/pixel/README.md b/packages/pixel/README.md index 2402664448..3ecf008cb4 100644 --- a/packages/pixel/README.md +++ b/packages/pixel/README.md @@ -133,7 +133,7 @@ yarn add @thi.ng/pixel ``` -Package sizes (gzipped, pre-treeshake): ESM: 4.79 KB / CJS: 4.97 KB / UMD: 4.90 KB +Package sizes (gzipped, pre-treeshake): ESM: 5.15 KB / CJS: 5.34 KB / UMD: 5.25 KB ## Dependencies @@ -156,6 +156,7 @@ A selection: | | Pixel buffer manipulations | [Demo](https://demo.thi.ng/umbrella/pixel-basics/) | [Source](https://github.com/thi-ng/umbrella/tree/develop/examples/pixel-basics) | | | Port-Duff image compositing / alpha blending | [Demo](https://demo.thi.ng/umbrella/porter-duff/) | [Source](https://github.com/thi-ng/umbrella/tree/develop/examples/porter-duff) | | | Fork-join worker-based raymarch renderer | [Demo](https://demo.thi.ng/umbrella/shader-ast-workers/) | [Source](https://github.com/thi-ng/umbrella/tree/develop/examples/shader-ast-workers) | +| | Textmode image warping w/ 16bit color output | [Demo](https://demo.thi.ng/umbrella/text-canvas-image/) | [Source](https://github.com/thi-ng/umbrella/tree/develop/examples/text-canvas-image) | | | Minimal multi-pass / GPGPU example | [Demo](https://demo.thi.ng/umbrella/webgl-multipass/) | [Source](https://github.com/thi-ng/umbrella/tree/develop/examples/webgl-multipass) | ## API @@ -243,4 +244,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/pixel/package.json b/packages/pixel/package.json index 083aecba89..cc4324d6f9 100644 --- a/packages/pixel/package.json +++ b/packages/pixel/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/pixel", - "version": "0.4.10", + "version": "0.5.0", "description": "Typed array backed, packed integer and unpacked floating point pixel buffers w/ customizable formats, blitting, dithering, conversions", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/math": "^3.0.0", - "@thi.ng/porter-duff": "^0.1.35" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/math": "^3.0.1", + "@thi.ng/porter-duff": "^0.1.36" }, "files": [ "*.js", diff --git a/packages/pixel/src/api.ts b/packages/pixel/src/api.ts index 636dd5e1b4..0e9c333899 100644 --- a/packages/pixel/src/api.ts +++ b/packages/pixel/src/api.ts @@ -179,6 +179,11 @@ export interface FloatFormatSpec { alpha?: boolean; gray?: boolean; channels: Lane[]; + /** + * If given, {@link defFloatFormat} won't generate conversions and use those + * provided instead. + */ + convert?: IABGRConvert; } export interface FloatFormat extends IABGRConvert { @@ -204,6 +209,7 @@ export interface RawPixelBuffer extends CanvasContext { export interface IPixelBuffer { width: number; height: number; + format: IABGRConvert; pixels: T; /** diff --git a/packages/pixel/src/float.ts b/packages/pixel/src/float.ts index 55442252a9..c85768ec14 100644 --- a/packages/pixel/src/float.ts +++ b/packages/pixel/src/float.ts @@ -6,6 +6,7 @@ import type { BlitOpts, FloatFormat, FloatFormatSpec, + IPixelBuffer, PackedFormat, } from "./api"; import { defFloatFormat, FLOAT_GRAY } from "./format"; @@ -27,13 +28,34 @@ export const floatBuffer = ( pixels?: Float32Array ) => new FloatBuffer(w, h, fmt, pixels); -export class FloatBuffer { +export class FloatBuffer implements IPixelBuffer { + /** + * Creates a new `FloatBuffer` from given {@link PackedBuffer} and using + * provided {@link FloatFormat}. + * + * @remarks + * See {@link FloatBuffer.as} for reverse operation. + * + * @param src + * @param fmt + */ + static fromPacked(src: PackedBuffer, fmt: FloatFormat | FloatFormatSpec) { + const dest = new FloatBuffer(src.width, src.height, fmt); + const { pixels: dbuf, format: dfmt, stride } = dest; + const { pixels: sbuf, format: sfmt } = src; + for (let i = sbuf.length; --i >= 0; ) { + dbuf.set(dfmt.fromABGR(sfmt.toABGR(sbuf[i])), i * stride); + } + return dest; + } + width: number; height: number; stride: number; rowStride: number; pixels: Float32Array; format: FloatFormat; + protected __empty: NumericArray; constructor( w: number, @@ -49,6 +71,9 @@ export class FloatBuffer { this.stride = fmt.channels.length; this.rowStride = w * this.stride; this.pixels = pixels || new Float32Array(w * h * this.stride); + this.__empty = ( + Object.freeze(new Array(this.stride).fill(0)) + ); } as(fmt: PackedFormat) { @@ -75,6 +100,7 @@ export class FloatBuffer { const idx = (x | 0) * stride + (y | 0) * this.rowStride; return this.pixels.subarray(idx, idx + stride); } + return this.__empty; } setAt(x: number, y: number, col: NumericArray) { diff --git a/packages/pixel/src/format.ts b/packages/pixel/src/format.ts index af1594bdbb..b5ed570573 100644 --- a/packages/pixel/src/format.ts +++ b/packages/pixel/src/format.ts @@ -1,5 +1,5 @@ import { assert, FnN, FnN2, IObjectOf, NumericArray, Type } from "@thi.ng/api"; -import { clamp01 } from "@thi.ng/math"; +import { clamp01, EPS } from "@thi.ng/math"; import { FloatFormat, FloatFormatSpec, @@ -13,6 +13,9 @@ import { compileFromABGR, compileToABGR } from "./codegen"; import { orderedDither } from "./dither"; import { luminanceABGR } from "./utils"; +const abs = Math.abs; +const min = Math.min; + const defChannel = ( ch: PackedChannelSpec, idx: number, @@ -204,6 +207,10 @@ export const defFloatFormat = (fmt: FloatFormatSpec) => { shift: chanShift, __float: true, }; + if (fmt.convert) { + Object.assign(res, fmt.convert); + return res; + } const to = (col: NumericArray, i: number) => ((col[i] * 0xff + 0.5) | 0) << chanShift[chan[i]]; const from: FnN2 = (col, i) => ((col >>> chanShift[chan[i]]) & 0xff) / 0xff; @@ -311,3 +318,57 @@ export const FLOAT_RGBA = defFloatFormat({ alpha: true, channels: [Lane.RED, Lane.GREEN, Lane.BLUE, Lane.ALPHA], }); + +export const FLOAT_HSVA = defFloatFormat({ + alpha: true, + channels: [Lane.RED, Lane.GREEN, Lane.BLUE, Lane.ALPHA], + convert: { + fromABGR: (x, out = []) => { + const a = ((x >>> 24) & 0xff) / 0xff; + const b = ((x >>> 16) & 0xff) / 0xff; + const g = ((x >>> 8) & 0xff) / 0xff; + const r = (x & 0xff) / 0xff; + let p0: number, p1: number, p2: number, p3: number; + let q0: number, q1: number, q2: number, q3: number; + if (g < b) { + p0 = b; + p1 = g; + p2 = -1; + p3 = 2 / 3; + } else { + p0 = g; + p1 = b; + p2 = 0; + p3 = -1 / 3; + } + if (r < p0) { + q0 = p0; + q1 = p1; + q2 = p3; + q3 = r; + } else { + q0 = r; + q1 = p1; + q2 = p2; + q3 = p0; + } + const c = q0 - min(q1, q3); + q0 = clamp01(q0); + out[0] = clamp01(abs((q3 - q1) / (6 * c + EPS) + q2)); + out[1] = clamp01(c / (q0 + EPS)); + out[2] = q0; + out[3] = a; + return out; + }, + toABGR: (x) => { + const h = x[0] * 6; + const s = x[1]; + const v = x[2] * 0xff; + const a = x[3] * 0xff; + const r = ((clamp01(abs(h - 3) - 1) - 1) * s + 1) * v; + const g = ((clamp01(2 - abs(h - 2)) - 1) * s + 1) * v; + const b = ((clamp01(2 - abs(h - 4)) - 1) * s + 1) * v; + return ((a << 24) | (b << 16) | (g << 8) | r) >>> 0; + }, + }, +}); diff --git a/packages/pixel/src/packed.ts b/packages/pixel/src/packed.ts index 9a251f6059..b5635b3026 100644 --- a/packages/pixel/src/packed.ts +++ b/packages/pixel/src/packed.ts @@ -10,6 +10,7 @@ import { BayerSize, BlendFnInt, BlitOpts, + IPixelBuffer, Lane, PackedChannel, PackedFormat, @@ -57,7 +58,7 @@ export const buffer = ( pixels?: UIntArray ) => new PackedBuffer(w, h, fmt, pixels); -export class PackedBuffer { +export class PackedBuffer implements IPixelBuffer { static fromImage( img: HTMLImageElement, fmt: PackedFormat, diff --git a/packages/pointfree-lang/CHANGELOG.md b/packages/pointfree-lang/CHANGELOG.md index dec2739b78..6ded68346c 100644 --- a/packages/pointfree-lang/CHANGELOG.md +++ b/packages/pointfree-lang/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.4.19](https://github.com/thi-ng/umbrella/compare/@thi.ng/pointfree-lang@1.4.18...@thi.ng/pointfree-lang@1.4.19) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/pointfree-lang + + + + + ## [1.4.18](https://github.com/thi-ng/umbrella/compare/@thi.ng/pointfree-lang@1.4.17...@thi.ng/pointfree-lang@1.4.18) (2020-12-22) **Note:** Version bump only for package @thi.ng/pointfree-lang diff --git a/packages/pointfree-lang/README.md b/packages/pointfree-lang/README.md index 0a0c044fbe..4fc5d847e4 100644 --- a/packages/pointfree-lang/README.md +++ b/packages/pointfree-lang/README.md @@ -15,7 +15,7 @@ This project is part of the - [Dependencies](#dependencies) - [Usage examples](#usage-examples) - [Command line usage](#command-line-usage) - - [Include files / libraries](#include-files---libraries) + - [Include files / libraries](#include-files--libraries) - [CLI example](#cli-example) - [API](#api) - [Language & Syntax](#language--syntax) @@ -34,7 +34,7 @@ This project is part of the - [Variables](#variables) - [Dynamic scoping](#dynamic-scoping) - [Objects](#objects) -- [Ideas / Todos](#ideas---todos) +- [Ideas / Todos](#ideas--todos) - [Authors](#authors) - [License](#license) @@ -722,4 +722,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/pointfree-lang/package.json b/packages/pointfree-lang/package.json index cfc438237e..7c1e46a696 100644 --- a/packages/pointfree-lang/package.json +++ b/packages/pointfree-lang/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/pointfree-lang", - "version": "1.4.18", + "version": "1.4.19", "description": "Forth style syntax layer/compiler & CLI for the @thi.ng/pointfree DSL", "module": "./index.js", "main": "./lib/index.js", @@ -38,7 +38,7 @@ "pegtest": "pegjs -o build/src/parser.js src/grammar.pegjs", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -49,14 +49,14 @@ "mocha": "^8.2.1", "pegjs": "0.11.0-master.b7b87ea", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/bench": "^2.0.25", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/pointfree": "^2.0.19", + "@thi.ng/api": "^6.13.6", + "@thi.ng/bench": "^2.0.26", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/pointfree": "^2.0.20", "commander": "^6.2.0" }, "files": [ diff --git a/packages/pointfree/CHANGELOG.md b/packages/pointfree/CHANGELOG.md index 2abf0cacc4..f7fcc8a236 100644 --- a/packages/pointfree/CHANGELOG.md +++ b/packages/pointfree/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.0.20](https://github.com/thi-ng/umbrella/compare/@thi.ng/pointfree@2.0.19...@thi.ng/pointfree@2.0.20) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/pointfree + + + + + ## [2.0.19](https://github.com/thi-ng/umbrella/compare/@thi.ng/pointfree@2.0.18...@thi.ng/pointfree@2.0.19) (2020-12-22) **Note:** Version bump only for package @thi.ng/pointfree diff --git a/packages/pointfree/README.md b/packages/pointfree/README.md index 51d79e9f70..f3d0f75c0c 100644 --- a/packages/pointfree/README.md +++ b/packages/pointfree/README.md @@ -41,13 +41,13 @@ This project is part of the - [Core vocabulary](#core-vocabulary) - [D-Stack modification](#d-stack-modification) - [R-Stack modification](#r-stack-modification) - - [Word & quotation execution / combinators](#word--quotation-execution---combinators) + - [Word & quotation execution / combinators](#word--quotation-execution--combinators) - [Primitive math](#primitive-math) - [Logic](#logic) - [Environment](#environment) - - [Arrays, objects, strings](#arrays--objects--strings) + - [Arrays, objects, strings](#arrays-objects-strings) - [String specific](#string-specific) - - [I/O](#i-o) + - [I/O](#io) - [Error handling](#error-handling) - [Control flow](#control-flow) - [cond](#cond) @@ -1179,4 +1179,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2015 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2015 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/pointfree/package.json b/packages/pointfree/package.json index ce37a53972..aff9008086 100644 --- a/packages/pointfree/package.json +++ b/packages/pointfree/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/pointfree", - "version": "2.0.19", + "version": "2.0.20", "description": "Pointfree functional composition / Forth style stack execution engine", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/compose": "^1.4.22", - "@thi.ng/equiv": "^1.0.34", - "@thi.ng/errors": "^1.2.25" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/compose": "^1.4.23", + "@thi.ng/equiv": "^1.0.35", + "@thi.ng/errors": "^1.2.26" }, "files": [ "*.js", diff --git a/packages/poisson/CHANGELOG.md b/packages/poisson/CHANGELOG.md index 60346bc0b9..fd4129f2f5 100644 --- a/packages/poisson/CHANGELOG.md +++ b/packages/poisson/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.1.23](https://github.com/thi-ng/umbrella/compare/@thi.ng/poisson@1.1.22...@thi.ng/poisson@1.1.23) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/poisson + + + + + ## [1.1.22](https://github.com/thi-ng/umbrella/compare/@thi.ng/poisson@1.1.21...@thi.ng/poisson@1.1.22) (2020-12-22) **Note:** Version bump only for package @thi.ng/poisson diff --git a/packages/poisson/README.md b/packages/poisson/README.md index 6fb60e9dcb..4baa00a993 100644 --- a/packages/poisson/README.md +++ b/packages/poisson/README.md @@ -219,4 +219,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/poisson/package.json b/packages/poisson/package.json index 13b7d77524..2aea61b6ae 100644 --- a/packages/poisson/package.json +++ b/packages/poisson/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/poisson", - "version": "1.1.22", + "version": "1.1.23", "description": "nD Stratified grid and Poisson-disc sampling w/ support for spatial density functions and custom PRNGs", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,16 +45,16 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/geom-api": "^2.0.0", - "@thi.ng/random": "^2.1.3", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/geom-api": "^2.0.1", + "@thi.ng/random": "^2.1.4", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/porter-duff/CHANGELOG.md b/packages/porter-duff/CHANGELOG.md index 17ffd2189c..066f37ace2 100644 --- a/packages/porter-duff/CHANGELOG.md +++ b/packages/porter-duff/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.36](https://github.com/thi-ng/umbrella/compare/@thi.ng/porter-duff@0.1.35...@thi.ng/porter-duff@0.1.36) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/porter-duff + + + + + ## [0.1.35](https://github.com/thi-ng/umbrella/compare/@thi.ng/porter-duff@0.1.34...@thi.ng/porter-duff@0.1.35) (2020-12-22) **Note:** Version bump only for package @thi.ng/porter-duff diff --git a/packages/porter-duff/README.md b/packages/porter-duff/README.md index 1d857cc212..600bba3107 100644 --- a/packages/porter-duff/README.md +++ b/packages/porter-duff/README.md @@ -20,8 +20,8 @@ This project is part of the - [Basic usage](#basic-usage) - [Operators](#operators) - [Custom operators](#custom-operators) - - [Additional operators / modifiers](#additional-operators---modifiers) - - [Pre/post-multiplied colors](#pre-post-multiplied-colors) + - [Additional operators / modifiers](#additional-operators--modifiers) + - [Pre/post-multiplied colors](#prepost-multiplied-colors) - [Authors](#authors) - [License](#license) @@ -200,4 +200,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/porter-duff/package.json b/packages/porter-duff/package.json index 71b413671c..76654e623a 100644 --- a/packages/porter-duff/package.json +++ b/packages/porter-duff/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/porter-duff", - "version": "0.1.35", + "version": "0.1.36", "description": "Porter-Duff operators for packed ints & float-array alpha compositing", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,12 +45,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/math": "^3.0.0" + "@thi.ng/api": "^6.13.6", + "@thi.ng/math": "^3.0.1" }, "files": [ "*.js", diff --git a/packages/prefixes/CHANGELOG.md b/packages/prefixes/CHANGELOG.md index 6db966b969..bdacce802f 100644 --- a/packages/prefixes/CHANGELOG.md +++ b/packages/prefixes/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.10](https://github.com/thi-ng/umbrella/compare/@thi.ng/prefixes@0.1.9...@thi.ng/prefixes@0.1.10) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/prefixes + + + + + ## [0.1.9](https://github.com/thi-ng/umbrella/compare/@thi.ng/prefixes@0.1.8...@thi.ng/prefixes@0.1.9) (2020-12-22) **Note:** Version bump only for package @thi.ng/prefixes diff --git a/packages/prefixes/README.md b/packages/prefixes/README.md index bc30a37f32..eb9ee44aff 100644 --- a/packages/prefixes/README.md +++ b/packages/prefixes/README.md @@ -14,7 +14,7 @@ This project is part of the - [Installation](#installation) - [Dependencies](#dependencies) - [API](#api) - - [Usage with @thi.ng/hiccup](#usage-with-thing-hiccup) + - [Usage with @thi.ng/hiccup](#usage-with-thinghiccup) - [Authors](#authors) - [License](#license) @@ -123,4 +123,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/prefixes/package.json b/packages/prefixes/package.json index 1f0121ef07..a717ae5067 100644 --- a/packages/prefixes/package.json +++ b/packages/prefixes/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/prefixes", - "version": "0.1.9", + "version": "0.1.10", "description": "50+ Linked Data vocabulary prefixes and their namespace URLs", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -44,7 +44,7 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "files": [ diff --git a/packages/quad-edge/CHANGELOG.md b/packages/quad-edge/CHANGELOG.md index 043b57949e..d61c9efed3 100644 --- a/packages/quad-edge/CHANGELOG.md +++ b/packages/quad-edge/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.28](https://github.com/thi-ng/umbrella/compare/@thi.ng/quad-edge@0.2.27...@thi.ng/quad-edge@0.2.28) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/quad-edge + + + + + ## [0.2.27](https://github.com/thi-ng/umbrella/compare/@thi.ng/quad-edge@0.2.26...@thi.ng/quad-edge@0.2.27) (2020-12-22) **Note:** Version bump only for package @thi.ng/quad-edge diff --git a/packages/quad-edge/README.md b/packages/quad-edge/README.md index 22ef95b78b..bd6869b209 100644 --- a/packages/quad-edge/README.md +++ b/packages/quad-edge/README.md @@ -88,4 +88,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2015 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2015 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/quad-edge/package.json b/packages/quad-edge/package.json index 3aabc5debd..97f2121303 100644 --- a/packages/quad-edge/package.json +++ b/packages/quad-edge/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/quad-edge", - "version": "0.2.27", + "version": "0.2.28", "description": "Quadedge data structure after Guibas & Stolfi", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,7 +45,7 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "files": [ diff --git a/packages/ramp/CHANGELOG.md b/packages/ramp/CHANGELOG.md index cd3ef09b3a..021b1f1ed1 100644 --- a/packages/ramp/CHANGELOG.md +++ b/packages/ramp/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.41](https://github.com/thi-ng/umbrella/compare/@thi.ng/ramp@0.1.40...@thi.ng/ramp@0.1.41) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/ramp + + + + + ## [0.1.40](https://github.com/thi-ng/umbrella/compare/@thi.ng/ramp@0.1.39...@thi.ng/ramp@0.1.40) (2020-12-22) **Note:** Version bump only for package @thi.ng/ramp diff --git a/packages/ramp/README.md b/packages/ramp/README.md index 257d288f70..5fa17e203f 100644 --- a/packages/ramp/README.md +++ b/packages/ramp/README.md @@ -112,4 +112,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/ramp/package.json b/packages/ramp/package.json index 52c3ac9977..24f0620382 100644 --- a/packages/ramp/package.json +++ b/packages/ramp/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/ramp", - "version": "0.1.40", + "version": "0.1.41", "description": "Parametric interpolated 1D lookup tables for remapping values", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/arrays": "^0.8.5", - "@thi.ng/compare": "^1.3.21", - "@thi.ng/math": "^3.0.0", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/arrays": "^0.9.0", + "@thi.ng/compare": "^1.3.22", + "@thi.ng/math": "^3.0.1", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/random/CHANGELOG.md b/packages/random/CHANGELOG.md index f2886827a2..fa2eb801ee 100644 --- a/packages/random/CHANGELOG.md +++ b/packages/random/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.1.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/random@2.1.3...@thi.ng/random@2.1.4) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/random + + + + + ## [2.1.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/random@2.1.2...@thi.ng/random@2.1.3) (2020-12-22) **Note:** Version bump only for package @thi.ng/random diff --git a/packages/random/README.md b/packages/random/README.md index ec366258f9..6bd079e602 100644 --- a/packages/random/README.md +++ b/packages/random/README.md @@ -134,4 +134,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/random/package.json b/packages/random/package.json index 324ffd14e4..a87373163b 100644 --- a/packages/random/package.json +++ b/packages/random/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/random", - "version": "2.1.3", + "version": "2.1.4", "description": "Pseudo-random number generators w/ unified API", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib distributions", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/hex": "^0.1.2" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/hex": "^0.1.3" }, "files": [ "*.js", diff --git a/packages/range-coder/CHANGELOG.md b/packages/range-coder/CHANGELOG.md index 7a6ec16c13..de230803ff 100644 --- a/packages/range-coder/CHANGELOG.md +++ b/packages/range-coder/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.64](https://github.com/thi-ng/umbrella/compare/@thi.ng/range-coder@1.0.63...@thi.ng/range-coder@1.0.64) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/range-coder + + + + + ## [1.0.63](https://github.com/thi-ng/umbrella/compare/@thi.ng/range-coder@1.0.62...@thi.ng/range-coder@1.0.63) (2020-12-22) **Note:** Version bump only for package @thi.ng/range-coder diff --git a/packages/range-coder/README.md b/packages/range-coder/README.md index 8077be57b8..bd4f0bf990 100644 --- a/packages/range-coder/README.md +++ b/packages/range-coder/README.md @@ -95,4 +95,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2017 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2017 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/range-coder/package.json b/packages/range-coder/package.json index 37e1944a8f..fbcee368a8 100644 --- a/packages/range-coder/package.json +++ b/packages/range-coder/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/range-coder", - "version": "1.0.63", + "version": "1.0.64", "description": "Binary data range encoder / decoder", "module": "./index.js", "main": "./lib/index.js", @@ -33,24 +33,24 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.12.1", - "@thi.ng/transducers": "^7.5.3", + "@thi.ng/transducers": "^7.5.4", "@types/mocha": "^8.2.0", "@types/node": "^14.14.14", "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/bitstream": "^1.1.30" + "@thi.ng/bitstream": "^1.1.31" }, "files": [ "*.js", diff --git a/packages/rdom-canvas/CHANGELOG.md b/packages/rdom-canvas/CHANGELOG.md index 3741b40872..27c59950a7 100644 --- a/packages/rdom-canvas/CHANGELOG.md +++ b/packages/rdom-canvas/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.23](https://github.com/thi-ng/umbrella/compare/@thi.ng/rdom-canvas@0.1.22...@thi.ng/rdom-canvas@0.1.23) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/rdom-canvas + + + + + ## [0.1.22](https://github.com/thi-ng/umbrella/compare/@thi.ng/rdom-canvas@0.1.21...@thi.ng/rdom-canvas@0.1.22) (2020-12-22) **Note:** Version bump only for package @thi.ng/rdom-canvas diff --git a/packages/rdom-canvas/README.md b/packages/rdom-canvas/README.md index 76f9674996..5247fecc16 100644 --- a/packages/rdom-canvas/README.md +++ b/packages/rdom-canvas/README.md @@ -98,4 +98,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/rdom-canvas/package.json b/packages/rdom-canvas/package.json index 77f563914f..16225b47f2 100644 --- a/packages/rdom-canvas/package.json +++ b/packages/rdom-canvas/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/rdom-canvas", - "version": "0.1.22", + "version": "0.1.23", "description": "@thi.ng/rdom component wrapper for @thi.ng/hiccup-canvas and declarative canvas drawing", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -44,17 +44,17 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/adapt-dpi": "^1.0.12", - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/hiccup-canvas": "^1.1.14", - "@thi.ng/rdom": "^0.3.1", - "@thi.ng/rstream": "^5.0.11", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/adapt-dpi": "^1.0.13", + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/hiccup-canvas": "^1.1.15", + "@thi.ng/rdom": "^0.3.2", + "@thi.ng/rstream": "^5.0.12", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/rdom-components/CHANGELOG.md b/packages/rdom-components/CHANGELOG.md index e473a4bf66..b64f4e06aa 100644 --- a/packages/rdom-components/CHANGELOG.md +++ b/packages/rdom-components/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.20](https://github.com/thi-ng/umbrella/compare/@thi.ng/rdom-components@0.1.19...@thi.ng/rdom-components@0.1.20) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/rdom-components + + + + + ## [0.1.19](https://github.com/thi-ng/umbrella/compare/@thi.ng/rdom-components@0.1.18...@thi.ng/rdom-components@0.1.19) (2020-12-22) **Note:** Version bump only for package @thi.ng/rdom-components diff --git a/packages/rdom-components/README.md b/packages/rdom-components/README.md index cec1d413a9..560fb20268 100644 --- a/packages/rdom-components/README.md +++ b/packages/rdom-components/README.md @@ -97,4 +97,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/rdom-components/package.json b/packages/rdom-components/package.json index 6a8c7678e9..30e8c6d2b0 100644 --- a/packages/rdom-components/package.json +++ b/packages/rdom-components/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/rdom-components", - "version": "0.1.19", + "version": "0.1.20", "description": "Collection of unstyled, customizable components for @thi.ng/rdom", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -44,17 +44,17 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/associative": "^5.0.12", - "@thi.ng/hiccup-html": "^0.3.10", - "@thi.ng/rdom": "^0.3.1", - "@thi.ng/rstream": "^5.0.11", - "@thi.ng/strings": "^1.11.3", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/associative": "^5.0.13", + "@thi.ng/hiccup-html": "^0.3.11", + "@thi.ng/rdom": "^0.3.2", + "@thi.ng/rstream": "^5.0.12", + "@thi.ng/strings": "^1.11.4", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/rdom/CHANGELOG.md b/packages/rdom/CHANGELOG.md index d80d062307..5c595e9074 100644 --- a/packages/rdom/CHANGELOG.md +++ b/packages/rdom/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.3.2](https://github.com/thi-ng/umbrella/compare/@thi.ng/rdom@0.3.1...@thi.ng/rdom@0.3.2) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/rdom + + + + + ## [0.3.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/rdom@0.3.0...@thi.ng/rdom@0.3.1) (2020-12-22) **Note:** Version bump only for package @thi.ng/rdom diff --git a/packages/rdom/README.md b/packages/rdom/README.md index 87b4c69cf1..aa3d594ebb 100644 --- a/packages/rdom/README.md +++ b/packages/rdom/README.md @@ -12,7 +12,7 @@ This project is part of the - [About](#about) - [Status](#status) - [HIC SUNT DRACONES](#hic-sunt-dracones) - - [@thi.ng/atom integration](#thing-atom-integration) + - [@thi.ng/atom integration](#thingatom-integration) - [Support packages](#support-packages) - [Installation](#installation) - [Dependencies](#dependencies) @@ -171,4 +171,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/rdom/package.json b/packages/rdom/package.json index 460e106b75..2f6a2b9b78 100644 --- a/packages/rdom/package.json +++ b/packages/rdom/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/rdom", - "version": "0.3.1", + "version": "0.3.2", "description": "Lightweight, reactive, VDOM-less UI/DOM components with async lifecycle and @thi.ng/hiccup compatible", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public", "pub:wip": "yarn publish --access public --no-git-tag-version" }, @@ -45,18 +45,18 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/hiccup": "^3.6.5", - "@thi.ng/paths": "^4.1.11", - "@thi.ng/prefixes": "^0.1.9", - "@thi.ng/rstream": "^5.0.11", - "@thi.ng/strings": "^1.11.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/hiccup": "^3.6.6", + "@thi.ng/paths": "^4.1.12", + "@thi.ng/prefixes": "^0.1.10", + "@thi.ng/rstream": "^5.0.12", + "@thi.ng/strings": "^1.11.4" }, "files": [ "*.js", diff --git a/packages/resolve-map/CHANGELOG.md b/packages/resolve-map/CHANGELOG.md index e53e4b9d5d..0303e7d7e8 100644 --- a/packages/resolve-map/CHANGELOG.md +++ b/packages/resolve-map/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.2.11](https://github.com/thi-ng/umbrella/compare/@thi.ng/resolve-map@4.2.10...@thi.ng/resolve-map@4.2.11) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/resolve-map + + + + + ## [4.2.10](https://github.com/thi-ng/umbrella/compare/@thi.ng/resolve-map@4.2.9...@thi.ng/resolve-map@4.2.10) (2020-12-22) **Note:** Version bump only for package @thi.ng/resolve-map diff --git a/packages/resolve-map/README.md b/packages/resolve-map/README.md index 64495d2c77..e12d7bc912 100644 --- a/packages/resolve-map/README.md +++ b/packages/resolve-map/README.md @@ -299,4 +299,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/resolve-map/package.json b/packages/resolve-map/package.json index c381b9f93a..5dcee4a3ff 100644 --- a/packages/resolve-map/package.json +++ b/packages/resolve-map/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/resolve-map", - "version": "4.2.10", + "version": "4.2.11", "description": "DAG resolution of vanilla objects & arrays with internally linked values", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -44,14 +44,14 @@ "@types/node": "^14.14.14", "mocha": "^8.2.1", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/paths": "^4.1.11" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/paths": "^4.1.12" }, "files": [ "*.js", diff --git a/packages/rle-pack/CHANGELOG.md b/packages/rle-pack/CHANGELOG.md index d74f631f39..27bab68936 100644 --- a/packages/rle-pack/CHANGELOG.md +++ b/packages/rle-pack/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.1.31](https://github.com/thi-ng/umbrella/compare/@thi.ng/rle-pack@2.1.30...@thi.ng/rle-pack@2.1.31) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/rle-pack + + + + + ## [2.1.30](https://github.com/thi-ng/umbrella/compare/@thi.ng/rle-pack@2.1.29...@thi.ng/rle-pack@2.1.30) (2020-12-22) **Note:** Version bump only for package @thi.ng/rle-pack diff --git a/packages/rle-pack/README.md b/packages/rle-pack/README.md index ac1866f15d..6ae6dee3d5 100644 --- a/packages/rle-pack/README.md +++ b/packages/rle-pack/README.md @@ -124,4 +124,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2017 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2017 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/rle-pack/package.json b/packages/rle-pack/package.json index 7ba7d0fead..235b9517c4 100644 --- a/packages/rle-pack/package.json +++ b/packages/rle-pack/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/rle-pack", - "version": "2.1.30", + "version": "2.1.31", "description": "Binary run-length encoding packer w/ flexible repeat bit widths", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -46,12 +46,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/bitstream": "^1.1.30", - "@thi.ng/errors": "^1.2.25" + "@thi.ng/bitstream": "^1.1.31", + "@thi.ng/errors": "^1.2.26" }, "files": [ "*.js", diff --git a/packages/router/CHANGELOG.md b/packages/router/CHANGELOG.md index 17d74aa789..7901cfb159 100644 --- a/packages/router/CHANGELOG.md +++ b/packages/router/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.0.38](https://github.com/thi-ng/umbrella/compare/@thi.ng/router@2.0.37...@thi.ng/router@2.0.38) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/router + + + + + ## [2.0.37](https://github.com/thi-ng/umbrella/compare/@thi.ng/router@2.0.36...@thi.ng/router@2.0.37) (2020-12-22) **Note:** Version bump only for package @thi.ng/router diff --git a/packages/router/README.md b/packages/router/README.md index 76ed1780ad..48606794dc 100644 --- a/packages/router/README.md +++ b/packages/router/README.md @@ -190,4 +190,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2014 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2014 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/router/package.json b/packages/router/package.json index de9317bd46..c4a56cb20b 100644 --- a/packages/router/package.json +++ b/packages/router/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/router", - "version": "2.0.37", + "version": "2.0.38", "description": "Generic router for browser & non-browser based applications", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/equiv": "^1.0.34", - "@thi.ng/errors": "^1.2.25", + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/equiv": "^1.0.35", + "@thi.ng/errors": "^1.2.26", "tslib": "2.0.1" }, "files": [ diff --git a/packages/rstream-csp/CHANGELOG.md b/packages/rstream-csp/CHANGELOG.md index 308c4bed6b..489ad4fe48 100644 --- a/packages/rstream-csp/CHANGELOG.md +++ b/packages/rstream-csp/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.0.47](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-csp@2.0.46...@thi.ng/rstream-csp@2.0.47) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/rstream-csp + + + + + ## [2.0.46](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-csp@2.0.45...@thi.ng/rstream-csp@2.0.46) (2020-12-22) **Note:** Version bump only for package @thi.ng/rstream-csp diff --git a/packages/rstream-csp/README.md b/packages/rstream-csp/README.md index b7f12a3561..1eab3a7d73 100644 --- a/packages/rstream-csp/README.md +++ b/packages/rstream-csp/README.md @@ -102,4 +102,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/rstream-csp/package.json b/packages/rstream-csp/package.json index 08331a21b1..a1902fdc61 100644 --- a/packages/rstream-csp/package.json +++ b/packages/rstream-csp/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/rstream-csp", - "version": "2.0.46", + "version": "2.0.47", "description": "@thi.ng/csp bridge module for @thi.ng/rstream", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib from", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,12 +45,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/csp": "^1.1.44", - "@thi.ng/rstream": "^5.0.11" + "@thi.ng/csp": "^1.1.45", + "@thi.ng/rstream": "^5.0.12" }, "files": [ "*.js", diff --git a/packages/rstream-dot/CHANGELOG.md b/packages/rstream-dot/CHANGELOG.md index bb312966b2..cb95b68787 100644 --- a/packages/rstream-dot/CHANGELOG.md +++ b/packages/rstream-dot/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.1.54](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-dot@1.1.53...@thi.ng/rstream-dot@1.1.54) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/rstream-dot + + + + + ## [1.1.53](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-dot@1.1.52...@thi.ng/rstream-dot@1.1.53) (2020-12-22) **Note:** Version bump only for package @thi.ng/rstream-dot diff --git a/packages/rstream-dot/README.md b/packages/rstream-dot/README.md index fd67d31a4f..05e81a222f 100644 --- a/packages/rstream-dot/README.md +++ b/packages/rstream-dot/README.md @@ -125,4 +125,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/rstream-dot/package.json b/packages/rstream-dot/package.json index ec74b8c9b0..2ff98e0aed 100644 --- a/packages/rstream-dot/package.json +++ b/packages/rstream-dot/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/rstream-dot", - "version": "1.1.53", + "version": "1.1.54", "description": "Graphviz DOT conversion of @thi.ng/rstream dataflow graph topologies", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/rstream": "^5.0.11" + "@thi.ng/rstream": "^5.0.12" }, "files": [ "*.js", diff --git a/packages/rstream-gestures/CHANGELOG.md b/packages/rstream-gestures/CHANGELOG.md index c2fa6b0a1a..9d2322cd8b 100644 --- a/packages/rstream-gestures/CHANGELOG.md +++ b/packages/rstream-gestures/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [3.0.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-gestures@3.0.0...@thi.ng/rstream-gestures@3.0.1) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/rstream-gestures + + + + + # [3.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-gestures@2.0.45...@thi.ng/rstream-gestures@3.0.0) (2020-12-22) diff --git a/packages/rstream-gestures/README.md b/packages/rstream-gestures/README.md index cfe5400837..1fccc616a0 100644 --- a/packages/rstream-gestures/README.md +++ b/packages/rstream-gestures/README.md @@ -197,4 +197,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/rstream-gestures/package.json b/packages/rstream-gestures/package.json index 412f31c2b0..0b0b9085e4 100644 --- a/packages/rstream-gestures/package.json +++ b/packages/rstream-gestures/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/rstream-gestures", - "version": "3.0.0", + "version": "3.0.1", "description": "Unified mouse, mouse wheel & multi-touch event stream abstraction", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/math": "^3.0.0", - "@thi.ng/rstream": "^5.0.11", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/math": "^3.0.1", + "@thi.ng/rstream": "^5.0.12", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/rstream-graph/CHANGELOG.md b/packages/rstream-graph/CHANGELOG.md index 437ea7049b..539e119ee4 100644 --- a/packages/rstream-graph/CHANGELOG.md +++ b/packages/rstream-graph/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [3.2.48](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-graph@3.2.47...@thi.ng/rstream-graph@3.2.48) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/rstream-graph + + + + + ## [3.2.47](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-graph@3.2.46...@thi.ng/rstream-graph@3.2.47) (2020-12-22) **Note:** Version bump only for package @thi.ng/rstream-graph diff --git a/packages/rstream-graph/README.md b/packages/rstream-graph/README.md index 30d316c686..8173eaa33f 100644 --- a/packages/rstream-graph/README.md +++ b/packages/rstream-graph/README.md @@ -234,4 +234,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/rstream-graph/package.json b/packages/rstream-graph/package.json index 84cca953b1..7d0daf77a3 100644 --- a/packages/rstream-graph/package.json +++ b/packages/rstream-graph/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/rstream-graph", - "version": "3.2.47", + "version": "3.2.48", "description": "Declarative dataflow graph construction for @thi.ng/rstream", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib nodes", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,18 +45,18 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/atom": "^4.1.25", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/paths": "^4.1.11", - "@thi.ng/resolve-map": "^4.2.10", - "@thi.ng/rstream": "^5.0.11", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/atom": "^4.1.26", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/paths": "^4.1.12", + "@thi.ng/resolve-map": "^4.2.11", + "@thi.ng/rstream": "^5.0.12", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/rstream-log-file/CHANGELOG.md b/packages/rstream-log-file/CHANGELOG.md index 714b2337ad..59dae42821 100644 --- a/packages/rstream-log-file/CHANGELOG.md +++ b/packages/rstream-log-file/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.69](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-log-file@0.1.68...@thi.ng/rstream-log-file@0.1.69) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/rstream-log-file + + + + + ## [0.1.68](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-log-file@0.1.67...@thi.ng/rstream-log-file@0.1.68) (2020-12-22) **Note:** Version bump only for package @thi.ng/rstream-log-file diff --git a/packages/rstream-log-file/README.md b/packages/rstream-log-file/README.md index 7f5007a908..283114e3dc 100644 --- a/packages/rstream-log-file/README.md +++ b/packages/rstream-log-file/README.md @@ -89,4 +89,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2017 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2017 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/rstream-log-file/package.json b/packages/rstream-log-file/package.json index 51652135a6..1c284ce462 100644 --- a/packages/rstream-log-file/package.json +++ b/packages/rstream-log-file/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/rstream-log-file", - "version": "0.1.68", + "version": "0.1.69", "description": "File output handler for structured, multilevel & hierarchical loggers based on @thi.ng/rstream", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/rstream": "^5.0.11" + "@thi.ng/rstream": "^5.0.12" }, "files": [ "*.js", diff --git a/packages/rstream-log/CHANGELOG.md b/packages/rstream-log/CHANGELOG.md index b58a50b1f4..47aaa1665b 100644 --- a/packages/rstream-log/CHANGELOG.md +++ b/packages/rstream-log/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [3.1.54](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-log@3.1.53...@thi.ng/rstream-log@3.1.54) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/rstream-log + + + + + ## [3.1.53](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-log@3.1.52...@thi.ng/rstream-log@3.1.53) (2020-12-22) **Note:** Version bump only for package @thi.ng/rstream-log diff --git a/packages/rstream-log/README.md b/packages/rstream-log/README.md index c22b0cfb52..c515384549 100644 --- a/packages/rstream-log/README.md +++ b/packages/rstream-log/README.md @@ -123,4 +123,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2017 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2017 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/rstream-log/package.json b/packages/rstream-log/package.json index d569ea7ecc..45fe181beb 100644 --- a/packages/rstream-log/package.json +++ b/packages/rstream-log/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/rstream-log", - "version": "3.1.53", + "version": "3.1.54", "description": "Structured, multilevel & hierarchical loggers based on @thi.ng/rstream", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib output xform", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/rstream": "^5.0.11", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/rstream": "^5.0.12", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/rstream-query/CHANGELOG.md b/packages/rstream-query/CHANGELOG.md index 1e4aa12a4d..66fb30f2a7 100644 --- a/packages/rstream-query/CHANGELOG.md +++ b/packages/rstream-query/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.1.54](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-query@1.1.53...@thi.ng/rstream-query@1.1.54) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/rstream-query + + + + + ## [1.1.53](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-query@1.1.52...@thi.ng/rstream-query@1.1.53) (2020-12-22) **Note:** Version bump only for package @thi.ng/rstream-query diff --git a/packages/rstream-query/README.md b/packages/rstream-query/README.md index 145eec6284..6c510a1b89 100644 --- a/packages/rstream-query/README.md +++ b/packages/rstream-query/README.md @@ -238,4 +238,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/rstream-query/package.json b/packages/rstream-query/package.json index 6cd78d9fa7..610921b854 100644 --- a/packages/rstream-query/package.json +++ b/packages/rstream-query/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/rstream-query", - "version": "1.1.53", + "version": "1.1.54", "description": "@thi.ng/rstream based triple store & reactive query engine", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,19 +45,19 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/associative": "^5.0.12", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/equiv": "^1.0.34", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/math": "^3.0.0", - "@thi.ng/rstream": "^5.0.11", - "@thi.ng/rstream-dot": "^1.1.53", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/associative": "^5.0.13", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/equiv": "^1.0.35", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/math": "^3.0.1", + "@thi.ng/rstream": "^5.0.12", + "@thi.ng/rstream-dot": "^1.1.54", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/rstream/CHANGELOG.md b/packages/rstream/CHANGELOG.md index 33fb0d19bf..d174974bf8 100644 --- a/packages/rstream/CHANGELOG.md +++ b/packages/rstream/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [5.0.12](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream@5.0.11...@thi.ng/rstream@5.0.12) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/rstream + + + + + ## [5.0.11](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream@5.0.10...@thi.ng/rstream@5.0.11) (2020-12-22) **Note:** Version bump only for package @thi.ng/rstream diff --git a/packages/rstream/README.md b/packages/rstream/README.md index cda86e2284..0e99970b55 100644 --- a/packages/rstream/README.md +++ b/packages/rstream/README.md @@ -27,14 +27,14 @@ This project is part of the - [Other stream creation helpers](#other-stream-creation-helpers) - [Meta streams](#meta-streams) - [Stream merging](#stream-merging) - - [Unordered merge from multiple inputs (dynamic add/remove)](#unordered-merge-from-multiple-inputs-dynamic-add-remove) + - [Unordered merge from multiple inputs (dynamic add/remove)](#unordered-merge-from-multiple-inputs-dynamic-addremove) - [Synchronized merge and labeled tuple objects](#synchronized-merge-and-labeled-tuple-objects) - [Stream splitting](#stream-splitting) - [Topic based splitting](#topic-based-splitting) - [Splitting via predicate](#splitting-via-predicate) - [Side-chaining](#side-chaining) - - [Input chunking / buffering, controlled by sidechain](#input-chunking---buffering--controlled-by-sidechain) - - [Input toggling, controlled by sidechain](#input-toggling--controlled-by-sidechain) + - [Input chunking / buffering, controlled by sidechain](#input-chunking--buffering-controlled-by-sidechain) + - [Input toggling, controlled by sidechain](#input-toggling-controlled-by-sidechain) - [Worker support](#worker-support) - [Parallel stream processing via workers](#parallel-stream-processing-via-workers) - [Stream processing via workers](#stream-processing-via-workers) @@ -827,4 +827,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2017 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2017 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/rstream/package.json b/packages/rstream/package.json index dbb7e666cb..d1e4bb9e0f 100644 --- a/packages/rstream/package.json +++ b/packages/rstream/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/rstream", - "version": "5.0.11", + "version": "5.0.12", "description": "Reactive streams & subscription primitives for constructing dataflow graphs / pipelines", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib from subs utils", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,17 +45,17 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/arrays": "^0.8.5", - "@thi.ng/associative": "^5.0.12", - "@thi.ng/atom": "^4.1.25", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/arrays": "^0.9.0", + "@thi.ng/associative": "^5.0.13", + "@thi.ng/atom": "^4.1.26", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/sax/CHANGELOG.md b/packages/sax/CHANGELOG.md index 18e2b18254..c38f302867 100644 --- a/packages/sax/CHANGELOG.md +++ b/packages/sax/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.1.44](https://github.com/thi-ng/umbrella/compare/@thi.ng/sax@1.1.43...@thi.ng/sax@1.1.44) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/sax + + + + + ## [1.1.43](https://github.com/thi-ng/umbrella/compare/@thi.ng/sax@1.1.42...@thi.ng/sax@1.1.43) (2020-12-22) **Note:** Version bump only for package @thi.ng/sax diff --git a/packages/sax/README.md b/packages/sax/README.md index e023d66c9d..14ccc2bc8c 100644 --- a/packages/sax/README.md +++ b/packages/sax/README.md @@ -352,4 +352,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/sax/package.json b/packages/sax/package.json index ad8726324d..0f0880ad2b 100644 --- a/packages/sax/package.json +++ b/packages/sax/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/sax", - "version": "1.1.43", + "version": "1.1.44", "description": "Transducer-based, SAX-like, non-validating, speedy & tiny XML parser", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib internal", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/transducers-fsm": "^1.1.43" + "@thi.ng/api": "^6.13.6", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/transducers-fsm": "^1.1.44" }, "files": [ "*.js", diff --git a/packages/scenegraph/CHANGELOG.md b/packages/scenegraph/CHANGELOG.md index c6365c8704..401e5a2886 100644 --- a/packages/scenegraph/CHANGELOG.md +++ b/packages/scenegraph/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.3.13](https://github.com/thi-ng/umbrella/compare/@thi.ng/scenegraph@0.3.12...@thi.ng/scenegraph@0.3.13) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/scenegraph + + + + + ## [0.3.12](https://github.com/thi-ng/umbrella/compare/@thi.ng/scenegraph@0.3.11...@thi.ng/scenegraph@0.3.12) (2020-12-22) **Note:** Version bump only for package @thi.ng/scenegraph diff --git a/packages/scenegraph/README.md b/packages/scenegraph/README.md index fa86205f4b..3962507937 100644 --- a/packages/scenegraph/README.md +++ b/packages/scenegraph/README.md @@ -88,4 +88,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/scenegraph/package.json b/packages/scenegraph/package.json index 4adbde150a..94cb40fd94 100644 --- a/packages/scenegraph/package.json +++ b/packages/scenegraph/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/scenegraph", - "version": "0.3.12", + "version": "0.3.13", "description": "Extensible 2D/3D scene graph with @thi.ng/hiccup-canvas support", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/matrices": "^0.6.38", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/matrices": "^0.6.39", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/seq/CHANGELOG.md b/packages/seq/CHANGELOG.md index 575f813624..2bab81f850 100644 --- a/packages/seq/CHANGELOG.md +++ b/packages/seq/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.29](https://github.com/thi-ng/umbrella/compare/@thi.ng/seq@0.2.28...@thi.ng/seq@0.2.29) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/seq + + + + + ## [0.2.28](https://github.com/thi-ng/umbrella/compare/@thi.ng/seq@0.2.27...@thi.ng/seq@0.2.28) (2020-12-22) **Note:** Version bump only for package @thi.ng/seq diff --git a/packages/seq/README.md b/packages/seq/README.md index 65b0f31a5b..85584d11b4 100644 --- a/packages/seq/README.md +++ b/packages/seq/README.md @@ -221,4 +221,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/seq/package.json b/packages/seq/package.json index 251f4459d7..a0218de53e 100644 --- a/packages/seq/package.json +++ b/packages/seq/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/seq", - "version": "0.2.28", + "version": "0.2.29", "description": "Various implementations of the @thi.ng/api `ISeq` interface / sequence abstraction", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,12 +45,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13" }, "files": [ "*.js", diff --git a/packages/sexpr/CHANGELOG.md b/packages/sexpr/CHANGELOG.md index 2f1dfe97c1..0a4b4fd88c 100644 --- a/packages/sexpr/CHANGELOG.md +++ b/packages/sexpr/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.32](https://github.com/thi-ng/umbrella/compare/@thi.ng/sexpr@0.2.31...@thi.ng/sexpr@0.2.32) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/sexpr + + + + + ## [0.2.31](https://github.com/thi-ng/umbrella/compare/@thi.ng/sexpr@0.2.30...@thi.ng/sexpr@0.2.31) (2020-12-22) **Note:** Version bump only for package @thi.ng/sexpr diff --git a/packages/sexpr/README.md b/packages/sexpr/README.md index d06d6fd138..bc3e69d555 100644 --- a/packages/sexpr/README.md +++ b/packages/sexpr/README.md @@ -295,4 +295,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/sexpr/package.json b/packages/sexpr/package.json index 1e8b856174..8400a96534 100644 --- a/packages/sexpr/package.json +++ b/packages/sexpr/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/sexpr", - "version": "0.2.31", + "version": "0.2.32", "description": "Extensible S-Expression parser & runtime infrastructure", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/defmulti": "^1.3.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/defmulti": "^1.3.4" }, "files": [ "*.js", diff --git a/packages/shader-ast-glsl/CHANGELOG.md b/packages/shader-ast-glsl/CHANGELOG.md index dca1a813a3..8c530209d1 100644 --- a/packages/shader-ast-glsl/CHANGELOG.md +++ b/packages/shader-ast-glsl/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.16](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast-glsl@0.2.15...@thi.ng/shader-ast-glsl@0.2.16) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/shader-ast-glsl + + + + + ## [0.2.15](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast-glsl@0.2.14...@thi.ng/shader-ast-glsl@0.2.15) (2020-12-22) **Note:** Version bump only for package @thi.ng/shader-ast-glsl diff --git a/packages/shader-ast-glsl/README.md b/packages/shader-ast-glsl/README.md index cec5c8e118..930f0f6cc0 100644 --- a/packages/shader-ast-glsl/README.md +++ b/packages/shader-ast-glsl/README.md @@ -147,4 +147,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/shader-ast-glsl/package.json b/packages/shader-ast-glsl/package.json index 5d9fff9883..e9acabeb8c 100644 --- a/packages/shader-ast-glsl/package.json +++ b/packages/shader-ast-glsl/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/shader-ast-glsl", - "version": "0.2.15", + "version": "0.2.16", "description": "Customizable GLSL codegen for @thi.ng/shader-ast", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib codegen std", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/shader-ast": "^0.7.7" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/shader-ast": "^0.7.8" }, "files": [ "*.js", diff --git a/packages/shader-ast-js/CHANGELOG.md b/packages/shader-ast-js/CHANGELOG.md index 482d634be9..4a97abd548 100644 --- a/packages/shader-ast-js/CHANGELOG.md +++ b/packages/shader-ast-js/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.5.14](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast-js@0.5.13...@thi.ng/shader-ast-js@0.5.14) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/shader-ast-js + + + + + ## [0.5.13](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast-js@0.5.12...@thi.ng/shader-ast-js@0.5.13) (2020-12-22) **Note:** Version bump only for package @thi.ng/shader-ast-js diff --git a/packages/shader-ast-js/README.md b/packages/shader-ast-js/README.md index 35906b2dbb..f7728294bc 100644 --- a/packages/shader-ast-js/README.md +++ b/packages/shader-ast-js/README.md @@ -146,4 +146,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/shader-ast-js/package.json b/packages/shader-ast-js/package.json index 5b312865f8..807c6e9353 100644 --- a/packages/shader-ast-js/package.json +++ b/packages/shader-ast-js/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/shader-ast-js", - "version": "0.5.13", + "version": "0.5.14", "description": "Customizable JS codegen, compiler & runtime for @thi.ng/shader-ast", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib env", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,18 +45,18 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/math": "^3.0.0", - "@thi.ng/matrices": "^0.6.38", - "@thi.ng/pixel": "^0.4.10", - "@thi.ng/shader-ast": "^0.7.7", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/math": "^3.0.1", + "@thi.ng/matrices": "^0.6.39", + "@thi.ng/pixel": "^0.5.0", + "@thi.ng/shader-ast": "^0.7.8", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/shader-ast-stdlib/CHANGELOG.md b/packages/shader-ast-stdlib/CHANGELOG.md index 48ec7ce258..7c0720a77a 100644 --- a/packages/shader-ast-stdlib/CHANGELOG.md +++ b/packages/shader-ast-stdlib/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.5.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast-stdlib@0.5.7...@thi.ng/shader-ast-stdlib@0.5.8) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/shader-ast-stdlib + + + + + ## [0.5.7](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast-stdlib@0.5.6...@thi.ng/shader-ast-stdlib@0.5.7) (2020-12-22) **Note:** Version bump only for package @thi.ng/shader-ast-stdlib diff --git a/packages/shader-ast-stdlib/README.md b/packages/shader-ast-stdlib/README.md index db9d1465fa..5d9e68d63a 100644 --- a/packages/shader-ast-stdlib/README.md +++ b/packages/shader-ast-stdlib/README.md @@ -27,7 +27,7 @@ This project is part of the - [Lighting](#lighting) - [Math](#math) - [Matrix operations](#matrix-operations) - - [Noise / randomness](#noise---randomness) + - [Noise / randomness](#noise--randomness) - [Raymarching](#raymarching) - [Screen coordinates](#screen-coordinates) - [Signed Distance Fields](#signed-distance-fields) @@ -466,4 +466,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/shader-ast-stdlib/package.json b/packages/shader-ast-stdlib/package.json index efc9023ef6..bdd071fbb0 100644 --- a/packages/shader-ast-stdlib/package.json +++ b/packages/shader-ast-stdlib/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/shader-ast-stdlib", - "version": "0.5.7", + "version": "0.5.8", "description": "Function collection for modular GPGPU / shader programming with @thi.ng/shader-ast", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib color fog light math matrix noise raymarch screen sdf tex", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,12 +45,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/shader-ast": "^0.7.7" + "@thi.ng/api": "^6.13.6", + "@thi.ng/shader-ast": "^0.7.8" }, "files": [ "*.js", diff --git a/packages/shader-ast/CHANGELOG.md b/packages/shader-ast/CHANGELOG.md index 4f62f2daaa..b0a34c7833 100644 --- a/packages/shader-ast/CHANGELOG.md +++ b/packages/shader-ast/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast@0.7.7...@thi.ng/shader-ast@0.7.8) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/shader-ast + + + + + ## [0.7.7](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast@0.7.6...@thi.ng/shader-ast@0.7.7) (2020-12-22) **Note:** Version bump only for package @thi.ng/shader-ast diff --git a/packages/shader-ast/README.md b/packages/shader-ast/README.md index e241153666..64c087bb8e 100644 --- a/packages/shader-ast/README.md +++ b/packages/shader-ast/README.md @@ -10,9 +10,9 @@ This project is part of the [@thi.ng/umbrella](https://github.com/thi-ng/umbrella/) monorepo. - [About](#about) - - [Standard library of common, higher level operations](#standard-library-of-common--higher-level-operations) + - [Standard library of common, higher level operations](#standard-library-of-common-higher-level-operations) - [Benefits](#benefits) - - [Prior art / influences](#prior-art---influences) + - [Prior art / influences](#prior-art--influences) - [Future goals](#future-goals) - [Status](#status) - [Support packages](#support-packages) @@ -28,7 +28,7 @@ This project is part of the - [Bitwise](#bitwise) - [Swizzling](#swizzling) - [Array index lookups](#array-index-lookups) - - [Symbol definitions / assignments](#symbol-definitions---assignments) + - [Symbol definitions / assignments](#symbol-definitions--assignments) - [Control flow](#control-flow) - [If-Then-Else](#if-then-else) - [Ternary operator](#ternary-operator) @@ -39,7 +39,7 @@ This project is part of the - [Function arguments](#function-arguments) - [Inline functions](#inline-functions) - [Global scope](#global-scope) - - [Input / output variables / declarations](#input---output-variables---declarations) + - [Input / output variables / declarations](#input--output-variables--declarations) - [Program definition](#program-definition) - [Code generation](#code-generation) - [GLSL (ES)](#glsl-es) @@ -603,4 +603,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/shader-ast/package.json b/packages/shader-ast/package.json index 210299f259..f2fcef41f2 100644 --- a/packages/shader-ast/package.json +++ b/packages/shader-ast/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/shader-ast", - "version": "0.7.7", + "version": "0.7.8", "description": "DSL to define shader code in TypeScript and cross-compile to GLSL, JS and other targets", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib api ast builtin", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/defmulti": "^1.3.3", - "@thi.ng/dgraph": "^1.3.3", - "@thi.ng/errors": "^1.2.25" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/defmulti": "^1.3.4", + "@thi.ng/dgraph": "^1.3.4", + "@thi.ng/errors": "^1.2.26" }, "files": [ "*.js", diff --git a/packages/simd/CHANGELOG.md b/packages/simd/CHANGELOG.md index d6a93396b7..d309d4d179 100644 --- a/packages/simd/CHANGELOG.md +++ b/packages/simd/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.4.12](https://github.com/thi-ng/umbrella/compare/@thi.ng/simd@0.4.11...@thi.ng/simd@0.4.12) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/simd + + + + + ## [0.4.11](https://github.com/thi-ng/umbrella/compare/@thi.ng/simd@0.4.10...@thi.ng/simd@0.4.11) (2020-12-22) **Note:** Version bump only for package @thi.ng/simd diff --git a/packages/simd/README.md b/packages/simd/README.md index 169a47ee80..cc137b55a9 100644 --- a/packages/simd/README.md +++ b/packages/simd/README.md @@ -209,4 +209,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/simd/package.json b/packages/simd/package.json index 6e580ab4b8..c487479e1a 100644 --- a/packages/simd/package.json +++ b/packages/simd/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/simd", - "version": "0.4.11", + "version": "0.4.12", "description": "WASM based SIMD vector operations for batch processing", "module": "./index.js", "main": "./lib/index.js", @@ -35,7 +35,7 @@ "cover": "yarn build:test && nyc node --experimental-wasm-simd build/test/*.js && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -48,11 +48,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/transducers-binary": "^0.6.0" + "@thi.ng/transducers-binary": "^0.6.1" }, "files": [ "*.js", diff --git a/packages/soa/CHANGELOG.md b/packages/soa/CHANGELOG.md index addc1f46af..2e2f0816c2 100644 --- a/packages/soa/CHANGELOG.md +++ b/packages/soa/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.43](https://github.com/thi-ng/umbrella/compare/@thi.ng/soa@0.1.42...@thi.ng/soa@0.1.43) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/soa + + + + + ## [0.1.42](https://github.com/thi-ng/umbrella/compare/@thi.ng/soa@0.1.41...@thi.ng/soa@0.1.42) (2020-12-22) **Note:** Version bump only for package @thi.ng/soa diff --git a/packages/soa/README.md b/packages/soa/README.md index dabe0fe120..5388d31f46 100644 --- a/packages/soa/README.md +++ b/packages/soa/README.md @@ -100,4 +100,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/soa/package.json b/packages/soa/package.json index 80b136963f..93d3efb7e7 100644 --- a/packages/soa/package.json +++ b/packages/soa/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/soa", - "version": "0.1.42", + "version": "0.1.43", "description": "SOA & AOS memory mapped structured views with optional & extensible serialization", "module": "./index.js", "main": "./lib/index.js", @@ -33,27 +33,27 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.12.1", - "@thi.ng/equiv": "^1.0.34", + "@thi.ng/equiv": "^1.0.35", "@types/mocha": "^8.2.0", "@types/node": "^14.14.14", "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/binary": "^2.0.20", - "@thi.ng/transducers-binary": "^0.6.0", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/binary": "^2.0.21", + "@thi.ng/transducers-binary": "^0.6.1", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/sparse/CHANGELOG.md b/packages/sparse/CHANGELOG.md index 54a7183e4b..7dca1f7dc8 100644 --- a/packages/sparse/CHANGELOG.md +++ b/packages/sparse/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.60](https://github.com/thi-ng/umbrella/compare/@thi.ng/sparse@0.1.59...@thi.ng/sparse@0.1.60) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/sparse + + + + + ## [0.1.59](https://github.com/thi-ng/umbrella/compare/@thi.ng/sparse@0.1.58...@thi.ng/sparse@0.1.59) (2020-12-22) **Note:** Version bump only for package @thi.ng/sparse diff --git a/packages/sparse/README.md b/packages/sparse/README.md index 2578865623..986f0c862a 100644 --- a/packages/sparse/README.md +++ b/packages/sparse/README.md @@ -71,4 +71,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/sparse/package.json b/packages/sparse/package.json index fb8782709a..99b21f4411 100644 --- a/packages/sparse/package.json +++ b/packages/sparse/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/sparse", - "version": "0.1.59", + "version": "0.1.60", "description": "Sparse vector & matrix implementations", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,12 +45,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/strings/CHANGELOG.md b/packages/strings/CHANGELOG.md index ad341e18f1..51d7b70aaa 100644 --- a/packages/strings/CHANGELOG.md +++ b/packages/strings/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.11.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/strings@1.11.3...@thi.ng/strings@1.11.4) (2021-01-02) + + +### Bug Fixes + +* **strings:** update slugifyGH() replacements ([#174](https://github.com/thi-ng/umbrella/issues/174)) ([98a9135](https://github.com/thi-ng/umbrella/commit/98a91351728d730446f9654fc93317c1bece77ed)) + + + + + ## [1.11.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/strings@1.11.2...@thi.ng/strings@1.11.3) (2020-12-22) **Note:** Version bump only for package @thi.ng/strings diff --git a/packages/strings/README.md b/packages/strings/README.md index f2e6eb2e79..896f387262 100644 --- a/packages/strings/README.md +++ b/packages/strings/README.md @@ -19,7 +19,7 @@ This project is part of the - [General](#general) - [Case](#case) - [Numeric & radix-based](#numeric--radix-based) - - [Padding / truncation](#padding---truncation) + - [Padding / truncation](#padding--truncation) - [Units](#units) - [String creation & editing](#string-creation--editing) - [Authors](#authors) @@ -52,7 +52,7 @@ yarn add @thi.ng/strings ``` -Package sizes (gzipped, pre-treeshake): ESM: 2.87 KB / CJS: 3.10 KB / UMD: 2.98 KB +Package sizes (gzipped, pre-treeshake): ESM: 2.93 KB / CJS: 3.16 KB / UMD: 3.03 KB ## Dependencies @@ -174,4 +174,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2015 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2015 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/strings/package.json b/packages/strings/package.json index e58178ec0a..fef5c06307 100644 --- a/packages/strings/package.json +++ b/packages/strings/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/strings", - "version": "1.11.3", + "version": "1.11.4", "description": "Various string formatting & utility functions", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/hex": "^0.1.2", - "@thi.ng/memoize": "^2.1.7" + "@thi.ng/api": "^6.13.6", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/hex": "^0.1.3", + "@thi.ng/memoize": "^2.1.8" }, "files": [ "*.js", diff --git a/packages/strings/src/slugify.ts b/packages/strings/src/slugify.ts index 2b68307426..b02c60d4ec 100644 --- a/packages/strings/src/slugify.ts +++ b/packages/strings/src/slugify.ts @@ -34,16 +34,24 @@ export const slugify: Stringer = (str: string) => { * @example * ```ts * slugifyGH("Me, myself (& ëye)!") - * // "me--myself--eye" + * // "me-myself--ëye" * ``` * * @param str */ export const slugifyGH = (str: string) => { - return str - .toLowerCase() - .replace(/\s/g, "-") - .replace(re, (c) => dest[src.indexOf(c)]) - .replace(/[^\w\-]+/g, "") - .replace(/(^-+)|(-+$)/g, ""); + return ( + str + .toLowerCase() + // remove all punctuations: + // - ascii + // - https://www.unicode.org/charts/PDF/U2000.pdf (general) + // - https://www.unicode.org/charts/PDF/U2700.pdf (dingbats) + // - https://www.unicode.org/charts/PDF/U2E00.pdf (supplemental) + .replace( + /[!"#$%&'()*+,./:;<=>?@\[\\\]^`{|}~\u0000-\u001f\u2000-\u206f\u2700-\u27bf\u2e00-\u2e7f]/g, + "" + ) + .replace(/\s/g, "-") + ); }; diff --git a/packages/system/CHANGELOG.md b/packages/system/CHANGELOG.md index 3d0b491891..b949211f43 100644 --- a/packages/system/CHANGELOG.md +++ b/packages/system/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.33](https://github.com/thi-ng/umbrella/compare/@thi.ng/system@0.2.32...@thi.ng/system@0.2.33) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/system + + + + + ## [0.2.32](https://github.com/thi-ng/umbrella/compare/@thi.ng/system@0.2.31...@thi.ng/system@0.2.32) (2020-12-22) **Note:** Version bump only for package @thi.ng/system diff --git a/packages/system/README.md b/packages/system/README.md index 9f2f1cb92c..b64a16f115 100644 --- a/packages/system/README.md +++ b/packages/system/README.md @@ -225,4 +225,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/system/package.json b/packages/system/package.json index e54baae47b..2696bc5c4c 100644 --- a/packages/system/package.json +++ b/packages/system/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/system", - "version": "0.2.32", + "version": "0.2.33", "description": "Minimal DI / life cycle container for stateful app components", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,12 +45,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/dgraph": "^1.3.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/dgraph": "^1.3.4" }, "files": [ "*.js", diff --git a/packages/text-canvas/CHANGELOG.md b/packages/text-canvas/CHANGELOG.md index 9065a36254..5b6d0c2db4 100644 --- a/packages/text-canvas/CHANGELOG.md +++ b/packages/text-canvas/CHANGELOG.md @@ -3,6 +3,18 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [0.3.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/text-canvas@0.2.36...@thi.ng/text-canvas@0.3.0) (2021-01-02) + + +### Features + +* **text-canvas:** add ANSI256 & HTML_565 formatters ([1f2d35b](https://github.com/thi-ng/umbrella/commit/1f2d35b306c30bfecd168f25abd0ead18e2fdf2a)) +* **text-canvas:** add imageRaw(), update image() ([34037ad](https://github.com/thi-ng/umbrella/commit/34037ad4ec87027779c72b683c3a4194f1995e79)) + + + + + ## [0.2.36](https://github.com/thi-ng/umbrella/compare/@thi.ng/text-canvas@0.2.35...@thi.ng/text-canvas@0.2.36) (2020-12-22) **Note:** Version bump only for package @thi.ng/text-canvas diff --git a/packages/text-canvas/README.md b/packages/text-canvas/README.md index 62cd222ace..14f4db74b8 100644 --- a/packages/text-canvas/README.md +++ b/packages/text-canvas/README.md @@ -21,6 +21,8 @@ This project is part of the - [Variations](#variations) - [Combined formats](#combined-formats) - [String conversion format presets](#string-conversion-format-presets) + - [256 color ANSI format](#256-color-ansi-format) + - [16bit color HTML format](#16bit-color-html-format) - [Stroke styles](#stroke-styles) - [Clipping](#clipping) - [Drawing functions](#drawing-functions) @@ -56,7 +58,7 @@ yarn add @thi.ng/text-canvas ``` -Package sizes (gzipped, pre-treeshake): ESM: 5.35 KB / CJS: 5.66 KB / UMD: 5.41 KB +Package sizes (gzipped, pre-treeshake): ESM: 5.63 KB / CJS: 5.94 KB / UMD: 5.71 KB ## Dependencies @@ -77,9 +79,10 @@ directory are using this package. A selection: -| Screenshot | Description | Live demo | Source | -| ------------------------------------------------------------------------------------------------------------------ | -------------------------- | ------------------------------------------------- | ------------------------------------------------------------------------------ | -| | 3D wireframe textmode demo | [Demo](https://demo.thi.ng/umbrella/text-canvas/) | [Source](https://github.com/thi-ng/umbrella/tree/develop/examples/text-canvas) | +| Screenshot | Description | Live demo | Source | +| ------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------------------------------------ | +| | 3D wireframe textmode demo | [Demo](https://demo.thi.ng/umbrella/text-canvas/) | [Source](https://github.com/thi-ng/umbrella/tree/develop/examples/text-canvas) | +| | Textmode image warping w/ 16bit color output | [Demo](https://demo.thi.ng/umbrella/text-canvas-image/) | [Source](https://github.com/thi-ng/umbrella/tree/develop/examples/text-canvas-image) | ## API @@ -96,7 +99,7 @@ const c = canvas(width, height, format?, style?); The text canvas stores all characters in a `Uint32Array` with the lower 16 bits used for the UTF-16 code and the upper 16 bits for **abitrary** formatting data. The package [provides its own format -IDs](https://github.com/thi-ng/umbrella/blob/develop/packages/text-canvas/src/api.ts#L144) +IDs](https://github.com/thi-ng/umbrella/blob/develop/packages/text-canvas/src/api.ts#L146) which are tailored for the bundled ANSI & HTML formatters, but users are free to choose use any other system (but then will also need to implement a custom string formatter impl). @@ -108,7 +111,16 @@ The default format ID layout is as shown: Most drawing functions accept an optional `format` arg, but a default format can also be set via `setFormat(canvas, formatID)`. -List of built-in format IDs: +The following built-in format IDs are only compatible with these formatters: + +- `FMT_ANSI16` +- `FMT_HTML_INLINE_CSS` +- `FMT_HTML_TACHYONS` + +Custom formatters are discussed further below: + +- [`FMT_ANSI256`](#256-color-ansi-format) +- [`FMT_HTML_565`](#16bit-color-html-format) #### Colors @@ -150,10 +162,11 @@ setFormat(canvas, FG_BLACK | BG_LIGHT_CYAN | BOLD | UNDERLINE); Canvas-to-string conversion is completely customizable via the [`StringFormat` -interface](https://github.com/thi-ng/umbrella/blob/develop/packages/text-canvas/src/api.ts#L76) +interface](https://github.com/thi-ng/umbrella/blob/develop/packages/text-canvas/src/api.ts#L78) and the following presets are supplied: - `FMT_ANSI16` - translate built-in format IDs to 4bit ANSI escape sequences +- `FMT_ANSI256` - uses all 16 format bits for fg & bg colors (ANSI esc sequences) - `FMT_ANSI_RAW` - verbatim use of format IDs to ANSI sequences - `FMT_HTML_INLINE_CSS` - HTML `` elements with inline CSS - `FMT_HTML_TACHYONS` - HTML `` elements with [Tachyons @@ -162,12 +175,47 @@ and the following presets are supplied: ```ts // Terminal console.log(toString(canvas, FMT_ANSI16)); +// or +console.log(toString(canvas, FMT_ANSI256)); // Browser const el = document.createElement("pre"); el.innerHTML = toString(canvas, FMT_HTML_TACHYONS); ``` +### 256 color ANSI format + +If targeting this output format, all 16 bits available for formatting +information are used to encode 2x 8bit foreground/background colors. Therefore, +none of the above mentioned preset color names and/or any additional formatting +flags (e.g. bold, underline etc.) **cannot be used**. Instead, use the +`format256()` function to compute a format ID based on given FG, BG colors. + +```ts +// deep purple on yellow bg +textLine(canvas, 1, 1, "hello color!", format256(19, 226)); +``` + +![ANSI256 color pallette](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/text-canvas/ansi256.png) + +Source: [Wikipedia](https://en.wikipedia.org/wiki/ANSI_escape_code#8-bit) + +### 16bit color HTML format + +Similar to the above custom ANSI format, here all available 16 bits are used to +store color information, in the standard RGB565 format (5bits red, 6bits green, +5bits blue). This also means, only either the text or background color can be +controlled and no other formatting flag (bold, underline etc.) are available. + +```ts +const el = document.createElement("pre"); +// format and assign text colors +el.innerHTML = toString(canvas, FMT_HTML_565()); + +// assign bg colors +el.innerHTML = toString(canvas, FMT_HTML_565("background")); +``` + ### Stroke styles Built-in style presets: @@ -446,4 +494,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/text-canvas/package.json b/packages/text-canvas/package.json index bbc573c0f1..2e21c4a52d 100644 --- a/packages/text-canvas/package.json +++ b/packages/text-canvas/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/text-canvas", - "version": "0.2.36", + "version": "0.3.0", "description": "Text based canvas, drawing, tables with arbitrary formatting (incl. ANSI/HTML)", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,18 +45,18 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/arrays": "^0.8.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/geom-clip-line": "^1.2.14", - "@thi.ng/math": "^3.0.0", - "@thi.ng/memoize": "^2.1.7", - "@thi.ng/strings": "^1.11.3", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/arrays": "^0.9.0", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/geom-clip-line": "^1.2.15", + "@thi.ng/math": "^3.0.1", + "@thi.ng/memoize": "^2.1.8", + "@thi.ng/strings": "^1.11.4", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", @@ -68,13 +68,17 @@ "array", "ascii", "binary", + "bitmap", + "blit", "canvas", "circle", "datastructure", "drawing", "format", + "image", "line", "rect", + "rgb", "table", "text", "theme", diff --git a/packages/text-canvas/src/ansi.ts b/packages/text-canvas/src/ansi.ts index d1d87704c5..0e522b409f 100644 --- a/packages/text-canvas/src/ansi.ts +++ b/packages/text-canvas/src/ansi.ts @@ -26,3 +26,22 @@ export const FMT_ANSI16: StringFormat = { prefix: ANSI_RESET, suffix: "\n", }; + +export const FMT_ANSI256: StringFormat = { + start: (x: number) => `\x1b[38;5;${x & 0xff};48;5;${x >>> 16}m`, + end: ANSI_RESET, + prefix: ANSI_RESET, + suffix: "\n", +}; + +/** + * Takes 2 ANSI256 values and returns a combined 16bit format ID. + * + * @remarks + * https://en.wikipedia.org/wiki/ANSI_escape_code#8-bit + * + * @param fg + * @param bg + */ +export const format256 = (fg: number, bg = 0) => + ((bg & 0xff) << 8) | (fg & 0xff); diff --git a/packages/text-canvas/src/api.ts b/packages/text-canvas/src/api.ts index 624a33b509..0206c2051b 100644 --- a/packages/text-canvas/src/api.ts +++ b/packages/text-canvas/src/api.ts @@ -1,4 +1,4 @@ -import type { Fn, NumOrString } from "@thi.ng/api"; +import type { Fn, FnN, NumOrString } from "@thi.ng/api"; export enum Align { LEFT, @@ -40,9 +40,11 @@ export interface ImageOpts { */ chars: NumOrString[]; /** - * Format to apply to all chars. + * Format to apply to each pixel. If a function is given, it will be called + * for each pixel value, normalized to [0..1] interval (and after gamma + * correction). The function MUST return a valid format ID. */ - format: number; + format: number | FnN; /** * Gamma correction value / exponent. All source pixel values will * be raised by this exponent. diff --git a/packages/text-canvas/src/canvas.ts b/packages/text-canvas/src/canvas.ts index a0b8b5e4fa..20395aa028 100644 --- a/packages/text-canvas/src/canvas.ts +++ b/packages/text-canvas/src/canvas.ts @@ -21,8 +21,8 @@ export class Canvas { ) { this.width = width; this.height = height; - this.buf = new Uint32Array(width * height).fill(0x20); this.format = this.defaultFormat = format; + this.buf = new Uint32Array(width * height).fill(charCode(0x20, format)); this.styles = [style]; this.clipRects = [ { x1: 0, y1: 0, x2: width, y2: height, w: width, h: height }, diff --git a/packages/text-canvas/src/html.ts b/packages/text-canvas/src/html.ts index e13ae932f1..7474eace59 100644 --- a/packages/text-canvas/src/html.ts +++ b/packages/text-canvas/src/html.ts @@ -1,8 +1,10 @@ import { memoize1 } from "@thi.ng/memoize"; +import { U8 } from "@thi.ng/strings"; import type { HtmlFormatOpts, StringFormat } from "./api"; /** - * Constructs an HTML formatter using given config options. + * Constructs an HTML formatter using given config options and for use w/ + * default format IDs only. * * @param opts */ @@ -34,8 +36,8 @@ export const formatHtml = ({ }); /** - * Preset HTML string formatter, generating `` elements with - * inline CSS. + * Preset HTML string formatter for use w/ default format IDs, generating + * `` elements with inline CSS. */ export const FMT_HTML_INLINE_CSS = formatHtml({ colors: [ @@ -66,8 +68,8 @@ export const FMT_HTML_INLINE_CSS = formatHtml({ }); /** - * Preset HTML formatter, generating `` elements with Tachyons CSS - * classes. + * Preset HTML formatter for use w/ default format IDs, generating `` + * elements with Tachyons CSS classes. */ export const FMT_HTML_TACHYONS = formatHtml({ colors: [ @@ -96,3 +98,36 @@ export const FMT_HTML_TACHYONS = formatHtml({ dim: "o-50", underline: "underline", }); + +const S5 = 255 / 31; +const S6 = 255 / 63; + +/** + * Higher order custom HTML formatter for 16bit (RGB565) colors (without + * additional formatting flags). By default assigns text color, but can be + * assigned to any CSS property via given `prop` argument. + * + * @param prop + */ +export const FMT_HTML_565 = (prop = "color"): StringFormat => ({ + start: memoize1( + (x) => + `` + ), + end: "", + prefix: "", + suffix: "
", +}); + +/** + * Takes normalized RGB values ([0..1] range) and converts them into an RGB565 + * value. Does NOT perform clipping. + * + * @param r + * @param g + * @param b + */ +export const format565 = (r: number, g: number, b: number) => + ((r * 0x1f) << 11) | ((g * 0x3f) << 5) | (b * 0x1f); diff --git a/packages/text-canvas/src/image.ts b/packages/text-canvas/src/image.ts index bea6f0d463..399e1b074a 100644 --- a/packages/text-canvas/src/image.ts +++ b/packages/text-canvas/src/image.ts @@ -1,5 +1,6 @@ import { peek } from "@thi.ng/arrays"; -import { ImageOpts, SHADES_BLOCK } from "./api"; +import { isNumber } from "@thi.ng/checks"; +import { ClipRect, ImageOpts, SHADES_BLOCK } from "./api"; import { Canvas } from "./canvas"; import { charCode, intersectRect } from "./utils"; @@ -100,13 +101,14 @@ export const image = ( w |= 0; h |= 0; const { buf, width } = canvas; - const { x1, y1, x2, y2, w: iw, h: ih } = intersectRect( - { x1: x, y1: y, x2: x + w, y2: y + h, w, h }, - peek(canvas.clipRects) + const { x1, y1, x2, y2, sx, sy, w: iw, h: ih } = imgRect( + canvas, + x, + y, + w, + h ); if (!iw || !ih) return; - const sx = Math.max(0, x1 - x); - const sy = Math.max(0, y1 - y); const { chars, format, gamma, invert, bits } = { chars: SHADES_BLOCK, format: canvas.format, @@ -115,6 +117,7 @@ export const image = ( bits: 8, ...opts, }; + const fmt = isNumber(format) ? () => format : format; const max = (1 << bits) - 1; const mask = invert ? max : 0; const norm = 1 / max; @@ -123,14 +126,70 @@ export const image = ( let sidx = sx + yy * w; let didx = x1 + dy * width; for (let xx = sx, dx = x1; dx < x2; xx++, dx++) { - buf[didx++] = charCode( - chars[ - (Math.pow((pixels[sidx++] ^ mask) * norm, gamma) * num + - 0.5) | - 0 - ], - format - ); + const col = Math.pow((pixels[sidx++] ^ mask) * norm, gamma); + buf[didx++] = charCode(chars[(col * num + 0.5) | 0], fmt(col)); } } }; + +/** + * Optimized version of {@link image}, which only uses a single char for all + * pixels and applies pixel values directly as formatting data (for each pixel). + * + * @param canvas + * @param x + * @param y + * @param w + * @param h + * @param pixels + * @param char + */ +export const imageRaw = ( + canvas: Canvas, + x: number, + y: number, + w: number, + h: number, + pixels: ArrayLike, + char = "█" +) => { + x |= 0; + y |= 0; + w |= 0; + h |= 0; + const { buf, width } = canvas; + const { x1, y1, x2, y2, sx, sy, w: iw, h: ih } = imgRect( + canvas, + x, + y, + w, + h + ); + if (!iw || !ih) return; + const code = char.charCodeAt(0); + for (let yy = sy, dy = y1; dy < y2; yy++, dy++) { + let sidx = sx + yy * w; + let didx = x1 + dy * width; + for (let xx = sx, dx = x1; dx < x2; xx++, dx++) { + buf[didx++] = code | ((pixels[sidx++] & 0xffff) << 16); + } + } +}; + +const imgRect = ( + canvas: Canvas, + x: number, + y: number, + w: number, + h: number +) => { + const rect: ClipRect & { sx: number; sy: number } = ( + intersectRect( + { x1: x, y1: y, x2: x + w, y2: y + h, w, h }, + peek(canvas.clipRects) + ) + ); + rect.sx = Math.max(0, rect.x1 - x); + rect.sy = Math.max(0, rect.y1 - y); + return rect; +}; diff --git a/packages/text-canvas/tpl.readme.md b/packages/text-canvas/tpl.readme.md index 8a81236798..5ce79dbd95 100644 --- a/packages/text-canvas/tpl.readme.md +++ b/packages/text-canvas/tpl.readme.md @@ -48,7 +48,7 @@ const c = canvas(width, height, format?, style?); The text canvas stores all characters in a `Uint32Array` with the lower 16 bits used for the UTF-16 code and the upper 16 bits for **abitrary** formatting data. The package [provides its own format -IDs](https://github.com/thi-ng/umbrella/blob/develop/packages/text-canvas/src/api.ts#L144) +IDs](https://github.com/thi-ng/umbrella/blob/develop/packages/text-canvas/src/api.ts#L146) which are tailored for the bundled ANSI & HTML formatters, but users are free to choose use any other system (but then will also need to implement a custom string formatter impl). @@ -60,7 +60,16 @@ The default format ID layout is as shown: Most drawing functions accept an optional `format` arg, but a default format can also be set via `setFormat(canvas, formatID)`. -List of built-in format IDs: +The following built-in format IDs are only compatible with these formatters: + +- `FMT_ANSI16` +- `FMT_HTML_INLINE_CSS` +- `FMT_HTML_TACHYONS` + +Custom formatters are discussed further below: + +- [`FMT_ANSI256`](#256-color-ansi-format) +- [`FMT_HTML_565`](#16bit-color-html-format) #### Colors @@ -102,10 +111,11 @@ setFormat(canvas, FG_BLACK | BG_LIGHT_CYAN | BOLD | UNDERLINE); Canvas-to-string conversion is completely customizable via the [`StringFormat` -interface](https://github.com/thi-ng/umbrella/blob/develop/packages/text-canvas/src/api.ts#L76) +interface](https://github.com/thi-ng/umbrella/blob/develop/packages/text-canvas/src/api.ts#L78) and the following presets are supplied: - `FMT_ANSI16` - translate built-in format IDs to 4bit ANSI escape sequences +- `FMT_ANSI256` - uses all 16 format bits for fg & bg colors (ANSI esc sequences) - `FMT_ANSI_RAW` - verbatim use of format IDs to ANSI sequences - `FMT_HTML_INLINE_CSS` - HTML `` elements with inline CSS - `FMT_HTML_TACHYONS` - HTML `` elements with [Tachyons @@ -114,12 +124,47 @@ and the following presets are supplied: ```ts // Terminal console.log(toString(canvas, FMT_ANSI16)); +// or +console.log(toString(canvas, FMT_ANSI256)); // Browser const el = document.createElement("pre"); el.innerHTML = toString(canvas, FMT_HTML_TACHYONS); ``` +### 256 color ANSI format + +If targeting this output format, all 16 bits available for formatting +information are used to encode 2x 8bit foreground/background colors. Therefore, +none of the above mentioned preset color names and/or any additional formatting +flags (e.g. bold, underline etc.) **cannot be used**. Instead, use the +`format256()` function to compute a format ID based on given FG, BG colors. + +```ts +// deep purple on yellow bg +textLine(canvas, 1, 1, "hello color!", format256(19, 226)); +``` + +![ANSI256 color pallette](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/text-canvas/ansi256.png) + +Source: [Wikipedia](https://en.wikipedia.org/wiki/ANSI_escape_code#8-bit) + +### 16bit color HTML format + +Similar to the above custom ANSI format, here all available 16 bits are used to +store color information, in the standard RGB565 format (5bits red, 6bits green, +5bits blue). This also means, only either the text or background color can be +controlled and no other formatting flag (bold, underline etc.) are available. + +```ts +const el = document.createElement("pre"); +// format and assign text colors +el.innerHTML = toString(canvas, FMT_HTML_565()); + +// assign bg colors +el.innerHTML = toString(canvas, FMT_HTML_565("background")); +``` + ### Stroke styles Built-in style presets: diff --git a/packages/transducers-binary/CHANGELOG.md b/packages/transducers-binary/CHANGELOG.md index 84778b54fd..0d167f7064 100644 --- a/packages/transducers-binary/CHANGELOG.md +++ b/packages/transducers-binary/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.6.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-binary@0.6.0...@thi.ng/transducers-binary@0.6.1) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/transducers-binary + + + + + # [0.6.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-binary@0.5.33...@thi.ng/transducers-binary@0.6.0) (2020-12-22) diff --git a/packages/transducers-binary/README.md b/packages/transducers-binary/README.md index 48a1cbadcd..5a0c2ecf25 100644 --- a/packages/transducers-binary/README.md +++ b/packages/transducers-binary/README.md @@ -20,7 +20,7 @@ This project is part of the - [Streaming hexdump](#streaming-hexdump) - [Structured byte buffer construction](#structured-byte-buffer-construction) - [Bitstream](#bitstream) - - [Base64 & UTF-8 en/decoding](#base64--utf-8-en-decoding) + - [Base64 & UTF-8 en/decoding](#base64--utf-8-endecoding) - [Transducers](#transducers) - [Reducers](#reducers) - [Authors](#authors) @@ -311,4 +311,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/transducers-binary/package.json b/packages/transducers-binary/package.json index 1cefbc3716..c8905f7b54 100644 --- a/packages/transducers-binary/package.json +++ b/packages/transducers-binary/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/transducers-binary", - "version": "0.6.0", + "version": "0.6.1", "description": "Binary data related transducers & reducers", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,16 +45,16 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/binary": "^2.0.20", - "@thi.ng/compose": "^1.4.22", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/hex": "^0.1.2", - "@thi.ng/random": "^2.1.3", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/binary": "^2.0.21", + "@thi.ng/compose": "^1.4.23", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/hex": "^0.1.3", + "@thi.ng/random": "^2.1.4", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/transducers-fsm/CHANGELOG.md b/packages/transducers-fsm/CHANGELOG.md index b2f381c88b..612e6b6168 100644 --- a/packages/transducers-fsm/CHANGELOG.md +++ b/packages/transducers-fsm/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.1.44](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-fsm@1.1.43...@thi.ng/transducers-fsm@1.1.44) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/transducers-fsm + + + + + ## [1.1.43](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-fsm@1.1.42...@thi.ng/transducers-fsm@1.1.43) (2020-12-22) **Note:** Version bump only for package @thi.ng/transducers-fsm diff --git a/packages/transducers-fsm/README.md b/packages/transducers-fsm/README.md index ea711cac6d..11516a3411 100644 --- a/packages/transducers-fsm/README.md +++ b/packages/transducers-fsm/README.md @@ -208,4 +208,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/transducers-fsm/package.json b/packages/transducers-fsm/package.json index 322e028498..440e9b4df3 100644 --- a/packages/transducers-fsm/package.json +++ b/packages/transducers-fsm/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/transducers-fsm", - "version": "1.1.43", + "version": "1.1.44", "description": "Transducer-based Finite State Machine transformer", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,12 +45,12 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/transducers-hdom/CHANGELOG.md b/packages/transducers-hdom/CHANGELOG.md index aa46aa2448..eaee82f37c 100644 --- a/packages/transducers-hdom/CHANGELOG.md +++ b/packages/transducers-hdom/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.0.76](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-hdom@2.0.75...@thi.ng/transducers-hdom@2.0.76) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/transducers-hdom + + + + + ## [2.0.75](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-hdom@2.0.74...@thi.ng/transducers-hdom@2.0.75) (2020-12-22) **Note:** Version bump only for package @thi.ng/transducers-hdom diff --git a/packages/transducers-hdom/README.md b/packages/transducers-hdom/README.md index 6f189afa5c..6621f6ae01 100644 --- a/packages/transducers-hdom/README.md +++ b/packages/transducers-hdom/README.md @@ -170,4 +170,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/transducers-hdom/package.json b/packages/transducers-hdom/package.json index aec2488e49..182b7c1937 100644 --- a/packages/transducers-hdom/package.json +++ b/packages/transducers-hdom/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/transducers-hdom", - "version": "2.0.75", + "version": "2.0.76", "description": "Transducer based UI updater for @thi.ng/hdom", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/hdom": "^8.2.14", - "@thi.ng/hiccup": "^3.6.5", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/hdom": "^8.2.15", + "@thi.ng/hiccup": "^3.6.6", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/transducers-patch/CHANGELOG.md b/packages/transducers-patch/CHANGELOG.md index 5950dd97d7..d4d45f84fd 100644 --- a/packages/transducers-patch/CHANGELOG.md +++ b/packages/transducers-patch/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-patch@0.2.0...@thi.ng/transducers-patch@0.2.1) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/transducers-patch + + + + + # [0.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-patch@0.1.33...@thi.ng/transducers-patch@0.2.0) (2020-12-22) diff --git a/packages/transducers-patch/README.md b/packages/transducers-patch/README.md index 3b6643e267..8b943169d7 100644 --- a/packages/transducers-patch/README.md +++ b/packages/transducers-patch/README.md @@ -178,4 +178,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2020 Karsten Schmidt // Apache Software License 2.0 +© 2020 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/transducers-patch/package.json b/packages/transducers-patch/package.json index cfa1b894d1..8a30884071 100644 --- a/packages/transducers-patch/package.json +++ b/packages/transducers-patch/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/transducers-patch", - "version": "0.2.0", + "version": "0.2.1", "description": "Reducers for patch-based, immutable-by-default array & object editing", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,15 +45,15 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/paths": "^4.1.11", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/paths": "^4.1.12", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/transducers-stats/CHANGELOG.md b/packages/transducers-stats/CHANGELOG.md index c1f19d28a4..428b9171b7 100644 --- a/packages/transducers-stats/CHANGELOG.md +++ b/packages/transducers-stats/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.1.45](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-stats@1.1.44...@thi.ng/transducers-stats@1.1.45) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/transducers-stats + + + + + ## [1.1.44](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-stats@1.1.43...@thi.ng/transducers-stats@1.1.44) (2020-12-22) **Note:** Version bump only for package @thi.ng/transducers-stats diff --git a/packages/transducers-stats/README.md b/packages/transducers-stats/README.md index f0956afe30..578a45d07a 100644 --- a/packages/transducers-stats/README.md +++ b/packages/transducers-stats/README.md @@ -153,4 +153,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2017 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2017 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/transducers-stats/package.json b/packages/transducers-stats/package.json index cd4093ad57..3b25288e27 100644 --- a/packages/transducers-stats/package.json +++ b/packages/transducers-stats/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/transducers-stats", - "version": "1.1.44", + "version": "1.1.45", "description": "Transducers for statistical / technical analysis", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/checks": "^2.7.12", - "@thi.ng/dcons": "^2.3.4", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/checks": "^2.7.13", + "@thi.ng/dcons": "^2.3.5", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/transducers/CHANGELOG.md b/packages/transducers/CHANGELOG.md index e0c6048437..97f4bd416b 100644 --- a/packages/transducers/CHANGELOG.md +++ b/packages/transducers/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [7.5.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.5.3...@thi.ng/transducers@7.5.4) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/transducers + + + + + ## [7.5.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.5.2...@thi.ng/transducers@7.5.3) (2020-12-22) **Note:** Version bump only for package @thi.ng/transducers diff --git a/packages/transducers/README.md b/packages/transducers/README.md index 8a499f2b89..1204d439b6 100644 --- a/packages/transducers/README.md +++ b/packages/transducers/README.md @@ -25,11 +25,11 @@ This project is part of the - [Fuzzy search](#fuzzy-search) - [Histogram generation & result grouping](#histogram-generation--result-grouping) - [Pagination](#pagination) - - [Multiplexing / parallel transducer application](#multiplexing---parallel-transducer-application) + - [Multiplexing / parallel transducer application](#multiplexing--parallel-transducer-application) - [Moving average using sliding window](#moving-average-using-sliding-window) - [Benchmark function execution time](#benchmark-function-execution-time) - [Apply inspectors to debug transducer pipeline](#apply-inspectors-to-debug-transducer-pipeline) - - [Stream parsing / structuring](#stream-parsing---structuring) + - [Stream parsing / structuring](#stream-parsing--structuring) - [CSV parsing](#csv-parsing) - [Early termination](#early-termination) - [Scan operator](#scan-operator) @@ -52,7 +52,7 @@ This project is part of the - [transduceRight](#transduceright) - [run](#run) - [Transducers](#transducers) - - [Generators / Iterators](#generators---iterators) + - [Generators / Iterators](#generators--iterators) - [Reducers](#reducers) - [Authors](#authors) - [Maintainer](#maintainer) @@ -995,4 +995,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2016 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2016 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/transducers/package.json b/packages/transducers/package.json index 975cd6a2a5..720d885aae 100644 --- a/packages/transducers/package.json +++ b/packages/transducers/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/transducers", - "version": "7.5.3", + "version": "7.5.4", "description": "Lightweight transducer implementations for ES6 / TypeScript", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib func internal iter rfn xform", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,18 +45,18 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/arrays": "^0.8.5", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/compare": "^1.3.21", - "@thi.ng/compose": "^1.4.22", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/math": "^3.0.0", - "@thi.ng/random": "^2.1.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/arrays": "^0.9.0", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/compare": "^1.3.22", + "@thi.ng/compose": "^1.4.23", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/math": "^3.0.1", + "@thi.ng/random": "^2.1.4" }, "files": [ "*.js", diff --git a/packages/unionstruct/CHANGELOG.md b/packages/unionstruct/CHANGELOG.md index e33819fbe2..5254f1291b 100644 --- a/packages/unionstruct/CHANGELOG.md +++ b/packages/unionstruct/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.1.29](https://github.com/thi-ng/umbrella/compare/@thi.ng/unionstruct@1.1.28...@thi.ng/unionstruct@1.1.29) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/unionstruct + + + + + ## [1.1.28](https://github.com/thi-ng/umbrella/compare/@thi.ng/unionstruct@1.1.27...@thi.ng/unionstruct@1.1.28) (2020-12-22) **Note:** Version bump only for package @thi.ng/unionstruct diff --git a/packages/unionstruct/README.md b/packages/unionstruct/README.md index c20796f038..43011c0278 100644 --- a/packages/unionstruct/README.md +++ b/packages/unionstruct/README.md @@ -256,4 +256,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2017 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2017 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/unionstruct/package.json b/packages/unionstruct/package.json index c21002070b..b334246d0f 100644 --- a/packages/unionstruct/package.json +++ b/packages/unionstruct/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/unionstruct", - "version": "1.1.28", + "version": "1.1.29", "description": "C-style struct, union and bitfield read/write views of ArrayBuffers", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,7 +45,7 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "files": [ diff --git a/packages/vclock/CHANGELOG.md b/packages/vclock/CHANGELOG.md index b67839de75..7116ad48d7 100644 --- a/packages/vclock/CHANGELOG.md +++ b/packages/vclock/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/vclock@0.1.2...@thi.ng/vclock@0.1.3) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/vclock + + + + + ## [0.1.2](https://github.com/thi-ng/umbrella/compare/@thi.ng/vclock@0.1.1...@thi.ng/vclock@0.1.2) (2020-12-22) **Note:** Version bump only for package @thi.ng/vclock diff --git a/packages/vclock/README.md b/packages/vclock/README.md index 3d1e990b79..27aa88825e 100644 --- a/packages/vclock/README.md +++ b/packages/vclock/README.md @@ -109,4 +109,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/vclock/package.json b/packages/vclock/package.json index 95e7fe1a31..5afe46441d 100644 --- a/packages/vclock/package.json +++ b/packages/vclock/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/vclock", - "version": "0.1.2", + "version": "0.1.3", "description": "Vector clock functions for synchronizing distributed states & processes", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,11 +45,11 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5" + "@thi.ng/api": "^6.13.6" }, "files": [ "*.js", diff --git a/packages/vector-pools/CHANGELOG.md b/packages/vector-pools/CHANGELOG.md index 0b155da0e6..0499987256 100644 --- a/packages/vector-pools/CHANGELOG.md +++ b/packages/vector-pools/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.53](https://github.com/thi-ng/umbrella/compare/@thi.ng/vector-pools@1.0.52...@thi.ng/vector-pools@1.0.53) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/vector-pools + + + + + ## [1.0.52](https://github.com/thi-ng/umbrella/compare/@thi.ng/vector-pools@1.0.51...@thi.ng/vector-pools@1.0.52) (2020-12-22) **Note:** Version bump only for package @thi.ng/vector-pools diff --git a/packages/vector-pools/README.md b/packages/vector-pools/README.md index 4ab2def645..cb9a977708 100644 --- a/packages/vector-pools/README.md +++ b/packages/vector-pools/README.md @@ -16,7 +16,7 @@ This project is part of the - [Dependencies](#dependencies) - [Usage examples](#usage-examples) - [API](#api) - - [WebGL geometry definition / manipulation](#webgl-geometry-definition---manipulation) + - [WebGL geometry definition / manipulation](#webgl-geometry-definition--manipulation) - [WASM interop](#wasm-interop) - [Authors](#authors) - [License](#license) @@ -284,4 +284,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2018 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/vector-pools/package.json b/packages/vector-pools/package.json index 9be1c719f4..f6c981e84c 100644 --- a/packages/vector-pools/package.json +++ b/packages/vector-pools/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/vector-pools", - "version": "1.0.52", + "version": "1.0.53", "description": "Data structures for managing & working with strided, memory mapped vectors", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,16 +45,16 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/binary": "^2.0.20", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/malloc": "^4.2.4", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/binary": "^2.0.21", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/malloc": "^4.2.5", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/vectors/CHANGELOG.md b/packages/vectors/CHANGELOG.md index 0090fd5bbc..b3bc22e78e 100644 --- a/packages/vectors/CHANGELOG.md +++ b/packages/vectors/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.8.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/vectors@4.8.3...@thi.ng/vectors@4.8.4) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/vectors + + + + + ## [4.8.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/vectors@4.8.2...@thi.ng/vectors@4.8.3) (2020-12-22) **Note:** Version bump only for package @thi.ng/vectors diff --git a/packages/vectors/README.md b/packages/vectors/README.md index 74c67215ce..a43c3f1a1c 100644 --- a/packages/vectors/README.md +++ b/packages/vectors/README.md @@ -24,24 +24,24 @@ This project is part of the - [Component swizzling](#component-swizzling) - [Vector creation](#vector-creation) - [Basic vector math](#basic-vector-math) - - [Vector / vector](#vector---vector) - - [Vector / scalar](#vector---scalar) + - [Vector / vector](#vector--vector) + - [Vector / scalar](#vector--scalar) - [Combined operations](#combined-operations) - [Constraints](#constraints) - [Cross product](#cross-product) - [Dot product](#dot-product) - [Interpolation](#interpolation) - - [Normalization / magnitude](#normalization---magnitude) + - [Normalization / magnitude](#normalization--magnitude) - [Distances](#distances) - [Orientation](#orientation) - [Rotations](#rotations) - - [Polar / cartesian conversion](#polar---cartesian-conversion) + - [Polar / cartesian conversion](#polar--cartesian-conversion) - [Randomness](#randomness) - [Unary vector math ops](#unary-vector-math-ops) - [Vector array batch processing](#vector-array-batch-processing) - - [Comparison / equality](#comparison---equality) - - [Bitwise operations (int / uint vec)](#bitwise-operations-int---uint-vec) - - [Vector conversions / coercions](#vector-conversions---coercions) + - [Comparison / equality](#comparison--equality) + - [Bitwise operations (int / uint vec)](#bitwise-operations-int--uint-vec) + - [Vector conversions / coercions](#vector-conversions--coercions) - [Boolean vector logic](#boolean-vector-logic) - [Componentwise comparisons](#componentwise-comparisons) - [Hashing](#hashing) @@ -130,7 +130,7 @@ Partially ported from [thi.ng/geom-clj](http://thi.ng/geom-clj) (Clojure) and ### Related packages -- [@thi.ng/color](https://github.com/thi-ng/umbrella/tree/develop/packages/color) - Array-based color ops, conversions, multi-color gradients, presets +- [@thi.ng/color](https://github.com/thi-ng/umbrella/tree/develop/packages/color) - Array-based color types, conversions, transformations, declarative theme generation, multi-color gradients, presets - [@thi.ng/ecs](https://github.com/thi-ng/umbrella/tree/develop/packages/ecs) - Entity Component System based around typed arrays & sparse sets - [@thi.ng/geom](https://github.com/thi-ng/umbrella/tree/develop/packages/geom) - Functional, polymorphic API for 2D geometry types & SVG generation - [@thi.ng/hdom-canvas](https://github.com/thi-ng/umbrella/tree/develop/packages/hdom-canvas) - [@thi.ng/hdom](https://github.com/thi-ng/umbrella/tree/develop/packages/hdom) component wrapper for declarative canvas scenegraphs @@ -650,4 +650,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2015 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2015 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/vectors/package.json b/packages/vectors/package.json index 6e397a17b4..2b03ea6043 100644 --- a/packages/vectors/package.json +++ b/packages/vectors/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/vectors", - "version": "4.8.3", + "version": "4.8.4", "description": "Optimized 2d/3d/4d and arbitrary length vector operations", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib internal", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,19 +45,19 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/binary": "^2.0.20", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/equiv": "^1.0.34", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/math": "^3.0.0", - "@thi.ng/memoize": "^2.1.7", - "@thi.ng/random": "^2.1.3", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/binary": "^2.0.21", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/equiv": "^1.0.35", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/math": "^3.0.1", + "@thi.ng/memoize": "^2.1.8", + "@thi.ng/random": "^2.1.4", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/viz/CHANGELOG.md b/packages/viz/CHANGELOG.md index 8c28badacf..b469c86009 100644 --- a/packages/viz/CHANGELOG.md +++ b/packages/viz/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/viz@0.2.3...@thi.ng/viz@0.2.4) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/viz + + + + + ## [0.2.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/viz@0.2.2...@thi.ng/viz@0.2.3) (2020-12-22) **Note:** Version bump only for package @thi.ng/viz diff --git a/packages/viz/README.md b/packages/viz/README.md index 0a03b60059..efa6b19255 100644 --- a/packages/viz/README.md +++ b/packages/viz/README.md @@ -118,4 +118,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2014 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2014 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/viz/package.json b/packages/viz/package.json index db4303b331..e900abefa2 100644 --- a/packages/viz/package.json +++ b/packages/viz/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/viz", - "version": "0.2.3", + "version": "0.2.4", "description": "Declarative, functional & multi-format data visualization toolkit based around @thi.ng/hiccup", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib axis plot", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public", "tool:bars": "ts-node -P tools/tsconfig.json tools/bars.ts", "tool:covid": "ts-node -P tools/tsconfig.json tools/covid-bars.ts", @@ -46,23 +46,23 @@ "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.12.1", - "@thi.ng/date": "^0.2.4", + "@thi.ng/date": "^0.2.5", "@types/mocha": "^8.2.0", "@types/node": "^14.14.14", "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/arrays": "^0.8.5", - "@thi.ng/associative": "^5.0.12", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/math": "^3.0.0", - "@thi.ng/strings": "^1.11.3", - "@thi.ng/transducers": "^7.5.3" + "@thi.ng/api": "^6.13.6", + "@thi.ng/arrays": "^0.9.0", + "@thi.ng/associative": "^5.0.13", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/math": "^3.0.1", + "@thi.ng/strings": "^1.11.4", + "@thi.ng/transducers": "^7.5.4" }, "files": [ "*.js", diff --git a/packages/webgl-msdf/CHANGELOG.md b/packages/webgl-msdf/CHANGELOG.md index b6f19f9fad..7119e5a156 100644 --- a/packages/webgl-msdf/CHANGELOG.md +++ b/packages/webgl-msdf/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.67](https://github.com/thi-ng/umbrella/compare/@thi.ng/webgl-msdf@0.1.66...@thi.ng/webgl-msdf@0.1.67) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/webgl-msdf + + + + + ## [0.1.66](https://github.com/thi-ng/umbrella/compare/@thi.ng/webgl-msdf@0.1.65...@thi.ng/webgl-msdf@0.1.66) (2020-12-22) **Note:** Version bump only for package @thi.ng/webgl-msdf diff --git a/packages/webgl-msdf/README.md b/packages/webgl-msdf/README.md index 9e0777e9dd..b7af59ede2 100644 --- a/packages/webgl-msdf/README.md +++ b/packages/webgl-msdf/README.md @@ -101,4 +101,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/webgl-msdf/package.json b/packages/webgl-msdf/package.json index 57a4e28970..576c5010c9 100644 --- a/packages/webgl-msdf/package.json +++ b/packages/webgl-msdf/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/webgl-msdf", - "version": "0.1.66", + "version": "0.1.67", "description": "Multi-channel SDF font rendering & basic text layout for WebGL", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,16 +45,16 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/shader-ast": "^0.7.7", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vector-pools": "^1.0.52", - "@thi.ng/vectors": "^4.8.3", - "@thi.ng/webgl": "^3.3.9" + "@thi.ng/api": "^6.13.6", + "@thi.ng/shader-ast": "^0.7.8", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vector-pools": "^1.0.53", + "@thi.ng/vectors": "^4.8.4", + "@thi.ng/webgl": "^3.3.10" }, "files": [ "*.js", diff --git a/packages/webgl-shadertoy/CHANGELOG.md b/packages/webgl-shadertoy/CHANGELOG.md index 30b3819f88..841e049a42 100644 --- a/packages/webgl-shadertoy/CHANGELOG.md +++ b/packages/webgl-shadertoy/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.54](https://github.com/thi-ng/umbrella/compare/@thi.ng/webgl-shadertoy@0.2.53...@thi.ng/webgl-shadertoy@0.2.54) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/webgl-shadertoy + + + + + ## [0.2.53](https://github.com/thi-ng/umbrella/compare/@thi.ng/webgl-shadertoy@0.2.52...@thi.ng/webgl-shadertoy@0.2.53) (2020-12-22) **Note:** Version bump only for package @thi.ng/webgl-shadertoy diff --git a/packages/webgl-shadertoy/README.md b/packages/webgl-shadertoy/README.md index 8e8d54b905..84e294ccb5 100644 --- a/packages/webgl-shadertoy/README.md +++ b/packages/webgl-shadertoy/README.md @@ -156,4 +156,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2019 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/webgl-shadertoy/package.json b/packages/webgl-shadertoy/package.json index 8eafaa07a5..c0e75b2459 100644 --- a/packages/webgl-shadertoy/package.json +++ b/packages/webgl-shadertoy/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/webgl-shadertoy", - "version": "0.2.53", + "version": "0.2.54", "description": "Basic WebGL scaffolding for running interactive fragment shaders via @thi.ng/shader-ast", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build && yarn publish --access public" }, @@ -45,14 +45,14 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/shader-ast": "^0.7.7", - "@thi.ng/shader-ast-glsl": "^0.2.15", - "@thi.ng/webgl": "^3.3.9" + "@thi.ng/api": "^6.13.6", + "@thi.ng/shader-ast": "^0.7.8", + "@thi.ng/shader-ast-glsl": "^0.2.16", + "@thi.ng/webgl": "^3.3.10" }, "files": [ "*.js", diff --git a/packages/webgl/CHANGELOG.md b/packages/webgl/CHANGELOG.md index de45d727bb..8f0c25f4f3 100644 --- a/packages/webgl/CHANGELOG.md +++ b/packages/webgl/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [3.3.10](https://github.com/thi-ng/umbrella/compare/@thi.ng/webgl@3.3.9...@thi.ng/webgl@3.3.10) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/webgl + + + + + ## [3.3.9](https://github.com/thi-ng/umbrella/compare/@thi.ng/webgl@3.3.8...@thi.ng/webgl@3.3.9) (2020-12-22) **Note:** Version bump only for package @thi.ng/webgl diff --git a/packages/webgl/README.md b/packages/webgl/README.md index fd664b9928..08e782245d 100644 --- a/packages/webgl/README.md +++ b/packages/webgl/README.md @@ -166,4 +166,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2014 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2014 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/webgl/package.json b/packages/webgl/package.json index 16d7df95a8..ce66d8997d 100644 --- a/packages/webgl/package.json +++ b/packages/webgl/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/webgl", - "version": "3.3.9", + "version": "3.3.10", "description": "WebGL & GLSL abstraction layer", "module": "./index.js", "main": "./lib/index.js", @@ -33,7 +33,7 @@ "cover": "nyc mocha test && nyc report --reporter=lcov", "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib api geo shaders textures", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", "pub": "yarn build:release && yarn publish --access public" }, @@ -45,25 +45,25 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/adapt-dpi": "^1.0.12", - "@thi.ng/api": "^6.13.5", - "@thi.ng/associative": "^5.0.12", - "@thi.ng/checks": "^2.7.12", - "@thi.ng/equiv": "^1.0.34", - "@thi.ng/errors": "^1.2.25", - "@thi.ng/matrices": "^0.6.38", - "@thi.ng/memoize": "^2.1.7", - "@thi.ng/pixel": "^0.4.10", - "@thi.ng/shader-ast": "^0.7.7", - "@thi.ng/shader-ast-glsl": "^0.2.15", - "@thi.ng/shader-ast-stdlib": "^0.5.7", - "@thi.ng/transducers": "^7.5.3", - "@thi.ng/vector-pools": "^1.0.52", - "@thi.ng/vectors": "^4.8.3" + "@thi.ng/adapt-dpi": "^1.0.13", + "@thi.ng/api": "^6.13.6", + "@thi.ng/associative": "^5.0.13", + "@thi.ng/checks": "^2.7.13", + "@thi.ng/equiv": "^1.0.35", + "@thi.ng/errors": "^1.2.26", + "@thi.ng/matrices": "^0.6.39", + "@thi.ng/memoize": "^2.1.8", + "@thi.ng/pixel": "^0.5.0", + "@thi.ng/shader-ast": "^0.7.8", + "@thi.ng/shader-ast-glsl": "^0.2.16", + "@thi.ng/shader-ast-stdlib": "^0.5.8", + "@thi.ng/transducers": "^7.5.4", + "@thi.ng/vector-pools": "^1.0.53", + "@thi.ng/vectors": "^4.8.4" }, "files": [ "*.js", diff --git a/packages/zipper/CHANGELOG.md b/packages/zipper/CHANGELOG.md index ac9c8fffb6..3431b748bb 100644 --- a/packages/zipper/CHANGELOG.md +++ b/packages/zipper/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.1.31](https://github.com/thi-ng/umbrella/compare/@thi.ng/zipper@0.1.30...@thi.ng/zipper@0.1.31) (2021-01-02) + +**Note:** Version bump only for package @thi.ng/zipper + + + + + ## [0.1.30](https://github.com/thi-ng/umbrella/compare/@thi.ng/zipper@0.1.29...@thi.ng/zipper@0.1.30) (2020-12-22) **Note:** Version bump only for package @thi.ng/zipper diff --git a/packages/zipper/README.md b/packages/zipper/README.md index eed08f270f..e6c3662ac8 100644 --- a/packages/zipper/README.md +++ b/packages/zipper/README.md @@ -160,4 +160,4 @@ If this project contributes to an academic publication, please cite it as: ## License -© 2015 - 2020 Karsten Schmidt // Apache Software License 2.0 +© 2015 - 2021 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/zipper/package.json b/packages/zipper/package.json index 96fd692bd8..7f1b7c837e 100644 --- a/packages/zipper/package.json +++ b/packages/zipper/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/zipper", - "version": "0.1.30", + "version": "0.1.31", "description": "Functional tree editing, manipulation & navigation", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -45,13 +45,13 @@ "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.5", - "@thi.ng/arrays": "^0.8.5", - "@thi.ng/checks": "^2.7.12" + "@thi.ng/api": "^6.13.6", + "@thi.ng/arrays": "^0.9.0", + "@thi.ng/checks": "^2.7.13" }, "files": [ "*.js", diff --git a/scripts/deploy-docs b/scripts/deploy-docs new file mode 100755 index 0000000000..edbd7560f3 --- /dev/null +++ b/scripts/deploy-docs @@ -0,0 +1,108 @@ +#!/usr/bin/env node +const fs = require("fs"); +const execSync = require("child_process").execSync; + +const PKG = process.argv[2]; + +const BUCKET = "s3://docs.thi.ng"; +const PREFIX = "/umbrella"; +const S3_OPTS = `--profile thing-umbrella --acl public-read`; +const SYNC_OPTS = `${S3_OPTS} --include "*" --exclude "*.sass" --exclude "*.ts"`; + +const MINIFY_OPTS = + "--file-ext html --collapse-whitespace --remove-comments --remove-optional-tags --remove-redundant-attributes --remove-script-type-attributes --remove-tag-whitespace --use-short-doctype --minify-css true"; + +function* files(dir, ext) { + for (let f of fs.readdirSync(dir)) { + const curr = dir + "/" + f; + if (f.endsWith(ext)) { + yield curr; + } else if (fs.statSync(curr).isDirectory()) { + yield* files(curr, ext); + } + } +} + +const sanitizeFile = (f) => { + let updated = false; + const src = fs + .readFileSync(f, "utf-8") + .replace( + /\{@link @thi\.ng\/([a-z0-9-]+)(#(\w+))?\s*\|\s*([^\}]+)\}/g, + (_, id, label) => { + updated = true; + return `${label}`; + } + ) + .replace( + /\{@link @thi\.ng\/([a-z0-9-]+)#(\w+)?\s*\}/g, + (_, id, sym) => { + updated = true; + let path = `${PREFIX}/${id}/`; + if (sym.startsWith("I")) { + path += `interfaces/${sym.toLowerCase()}.html`; + } else if (/^[a-z]/.test(sym)) { + path += `modules.html#${sym.toLowerCase()}`; + } + return `${sym}`; + } + ) + .replace(/\{@link @thi\.ng\/([a-z0-9-]+)#?\s*\}/g, (_, id) => { + updated = true; + return `@thi.ng/${id}`; + }); + if (updated) { + console.log("sanitizing:", f); + fs.writeFileSync(f, src, "utf-8"); + } +}; + +const sanitizePackage = (root) => { + for (let f of files(root, ".html")) { + sanitizeFile(f); + } +}; + +const minifyPackage = (root) => { + console.log("minifying", root); + execSync( + `node_modules/.bin/html-minifier-terser ${MINIFY_OPTS} --input-dir ${root} --output-dir ${root}` + ); +}; + +const syncPackage = (id, root) => { + console.log("syncing", root); + console.log( + execSync( + `aws s3 sync ${root} ${BUCKET}${PREFIX}/${id} ${SYNC_OPTS}` + ).toString() + ); +}; + +const processPackage = (id) => { + console.log("processing", id); + const root = `packages/${id}/doc`; + try { + sanitizePackage(root); + minifyPackage(root); + syncPackage(id, root); + } catch (e) { + console.warn(e); + } +}; + +if (PKG) { + processPackage(PKG); +} else { + for (let pkg of fs.readdirSync("packages")) { + if (fs.statSync(`packages/${pkg}`).isDirectory()) { + processPackage(pkg); + } + } +} + +execSync( + `node_modules/.bin/ts-node -P tools/tsconfig.json tools/src/doc-table.ts` +); + +execSync(`aws s3 cp docs.html ${BUCKET}/index.html ${S3_OPTS}`); diff --git a/scripts/deploy b/scripts/deploy-example similarity index 98% rename from scripts/deploy rename to scripts/deploy-example index 4792905cff..78eda7848b 100755 --- a/scripts/deploy +++ b/scripts/deploy-example @@ -9,7 +9,7 @@ const BUILD = `examples/${EXAMPLE}/build/`; const DEST_DIR = `/umbrella/${EXAMPLE}`; const BUCKET = `s3://demo.thi.ng${DEST_DIR}`; const CF_DISTRO = "EL2F1HMDPZ2RL"; -const PROFILE = "toxi-full"; +const PROFILE = "thing-umbrella"; const OPTS = `--profile ${PROFILE} --acl public-read`; const GZOPTS = `${OPTS} --content-encoding gzip`; diff --git a/scripts/invalidate b/scripts/invalidate new file mode 100755 index 0000000000..8c9317f6d2 --- /dev/null +++ b/scripts/invalidate @@ -0,0 +1,5 @@ +#!/bin/sh +aws cloudfront create-invalidation \ + --distribution-id EL2F1HMDPZ2RL \ + --paths "/umbrella/$1/*" \ + --profile thing-umbrella diff --git a/scripts/make-module b/scripts/make-module index 5c140a6724..88d1eeac7a 100755 --- a/scripts/make-module +++ b/scripts/make-module @@ -79,7 +79,7 @@ cat << EOF > "$MODULE"/package.json "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib", "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts", "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", - "doc": "node_modules/.bin/typedoc --mode modules --out doc --theme ../../tools/doc/typedoc-theme src", + "doc": "node_modules/.bin/typedoc --out doc --theme ../../tools/doc/typedoc-theme src/index.ts", "pub": "yarn build:release && yarn publish --access public" }, "devDependencies": { @@ -90,11 +90,11 @@ cat << EOF > "$MODULE"/package.json "mocha": "^8.2.1", "nyc": "^15.1.0", "ts-node": "^9.1.1", - "typedoc": "^0.19.2", + "typedoc": "^0.20.4", "typescript": "^4.1.3" }, "dependencies": { - "@thi.ng/api": "^6.13.4" + "@thi.ng/api": "^6.13.5" }, "files": [ "*.js", @@ -110,7 +110,7 @@ cat << EOF > "$MODULE"/package.json "sideEffects": false, "thi.ng": { "status": "alpha", - "year": 2020 + "year": 2021 } } EOF diff --git a/scripts/upload-docs b/scripts/upload-docs deleted file mode 100755 index 7420256b98..0000000000 --- a/scripts/upload-docs +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh - -readonly OPTS='--file-ext html --collapse-whitespace --remove-comments --remove-optional-tags --remove-redundant-attributes --remove-script-type-attributes --remove-tag-whitespace --use-short-doctype --minify-css true' - -if [ $# = 1 ]; then - modules="packages/$1/" -else - modules="packages/*/" -fi - -for m in $modules; do - name=$(echo "$m" | cut -d '/' -f 2) - echo "sanitizing: $name" - find "$m"/doc -name "*.html" -exec sed -i '' -E "s/\/([a-zA-Z_0-9\/-]+)\/node_modules\///g" '{}' \; - echo "minifying..." - node_modules/.bin/html-minifier-terser $OPTS --input-dir $m/doc --output-dir $m/doc - echo "syncing..." - aws s3 sync "$m"/doc s3://docs.thi.ng/umbrella/"$name" --profile toxi-s3 --acl public-read --include "*" --exclude "*.sass" --exclude "*.ts" -done - -node_modules/.bin/ts-node -P tools/tsconfig.json tools/src/doc-table.ts - -aws s3 cp docs.html s3://docs.thi.ng/index.html --profile toxi-s3 --acl public-read diff --git a/tools/doc/typedoc-theme/assets/css/_constants.sass b/tools/doc/typedoc-theme/assets/css/_constants.sass deleted file mode 100644 index bb97b3f86a..0000000000 --- a/tools/doc/typedoc-theme/assets/css/_constants.sass +++ /dev/null @@ -1,39 +0,0 @@ -// Fonts -// -$FONT_FAMILY: 'Segoe UI', sans-serif -$FONT_FAMILY_MONO: Menlo, Monaco, Consolas, 'Courier New', monospace - -$FONT_SIZE: 16px -$FONT_SIZE_MONO: 14px - -$LINE_HEIGHT: 1.333em - - -// Colors -// -$COLOR_BACKGROUND: #fdfdfd -$COLOR_TEXT: #222 -$COLOR_TEXT_ASIDE: #808080 -$COLOR_LINK: #4da6ff - -$COLOR_MENU_DIVIDER: #eee -$COLOR_MENU_DIVIDER_FOCUS: #000 -$COLOR_MENU_LABEL: #808080 - -$COLOR_PANEL: #fff -$COLOR_PANEL_DIVIDER: #eee - -$COLOR_COMMENT_TAG: #808080 -$COLOR_COMMENT_TAG_TEXT: #fff - -$COLOR_CODE_BACKGROUND: rgba(#000, 0.04) - -$COLOR_TS: #9600ff -$COLOR_TS_INTERFACE: #7da01f -$COLOR_TS_ENUM: #cc9900 -$COLOR_TS_CLASS: #4da6ff -$COLOR_TS_PRIVATE: #808080 - -$TOOLBAR_COLOR: #fff -$TOOLBAR_TEXT_COLOR: #333 -$TOOLBAR_HEIGHT: 40px \ No newline at end of file diff --git a/tools/doc/typedoc-theme/assets/css/elements/_comment.sass b/tools/doc/typedoc-theme/assets/css/elements/_comment.sass deleted file mode 100644 index 2c40e61c05..0000000000 --- a/tools/doc/typedoc-theme/assets/css/elements/_comment.sass +++ /dev/null @@ -1,53 +0,0 @@ -// Displays all regular comment tags -// -//
-//
see
-//

Dispatcher.EVENT_BEGIN

-//
see
-//

Dispatcher.EVENT_BEGIN_RESOLVE

-//
see
-//

Dispatcher.EVENT_END_RESOLVE

-//
-// -dl.tsd-comment-tags - overflow: hidden - - dt - float: left - padding: 1px 5px - margin: 0 10px 0 0 - border-radius: 4px - border: 1px solid $COLOR_COMMENT_TAG - color: $COLOR_COMMENT_TAG - font-size: 0.8em - font-weight: normal - - dd - margin: 0 0 10px 0 - - &:before, &:after - display: table - content: " " - pre, &:after - clear: both - - p - margin: 0 - - -// Special formatting for the main reflection on each page. -// -//
-//
-//

The default TypeDoc main application class.

-//

This class holds the two main components of TypeDoc, the Dispatcher and the Renderer.

-//
-//
-// -.tsd-panel.tsd-comment .lead - font-size: 1.1em - line-height: $LINE_HEIGHT - margin-bottom: 2em - - &:last-child - margin-bottom: 0 \ No newline at end of file diff --git a/tools/doc/typedoc-theme/assets/css/elements/_filter.sass b/tools/doc/typedoc-theme/assets/css/elements/_filter.sass deleted file mode 100644 index 12541540a8..0000000000 --- a/tools/doc/typedoc-theme/assets/css/elements/_filter.sass +++ /dev/null @@ -1,65 +0,0 @@ -// Classes set on the body to control the visible state of the filtered elements -// -.toggle-protected .tsd-is-private - display: none - -.toggle-public .tsd-is-private, -.toggle-public .tsd-is-protected, -.toggle-public .tsd-is-private-protected - display: none - -.toggle-inherited .tsd-is-inherited - display: none - -.toggle-only-exported .tsd-is-not-exported - display: none - -.toggle-externals .tsd-is-external - display: none - - -// Filter Buttons in the toolbar -// -#tsd-filter - position: relative - display: inline-block - height: $TOOLBAR_HEIGHT - vertical-align: bottom - - .no-filter & - display: none - - .tsd-filter-group - display: inline-block - height: $TOOLBAR_HEIGHT - vertical-align: bottom - white-space: nowrap - - input - display: none - - +size-xs-sm - .tsd-filter-group - display: block - position: absolute - top: $TOOLBAR_HEIGHT - right: 20px - height: auto - background-color: $COLOR_PANEL - visibility: hidden - transform: translate(50%,0) - box-shadow: 0 0 4px rgba(#000, 0.25) - - .has-options & - visibility: visible - - .to-has-options & - animation: fade-in 0.2s - - .from-has-options & - animation: fade-out 0.2s - - label, - .tsd-select - display: block - padding-right: 20px \ No newline at end of file diff --git a/tools/doc/typedoc-theme/assets/css/elements/_footer.sass b/tools/doc/typedoc-theme/assets/css/elements/_footer.sass deleted file mode 100644 index 9dd5925ef1..0000000000 --- a/tools/doc/typedoc-theme/assets/css/elements/_footer.sass +++ /dev/null @@ -1,21 +0,0 @@ -footer - border-top: 1px solid $COLOR_PANEL_DIVIDER - background-color: $COLOR_PANEL - - &.with-border-bottom - border-bottom: 1px solid $COLOR_PANEL_DIVIDER - - .tsd-legend-group - font-size: 0 - - .tsd-legend - display: inline-block - width: 25% - padding: 0 - font-size: $FONT_SIZE - list-style: none - line-height: $LINE_HEIGHT - vertical-align: top - - +size-xs-sm - width: 50% \ No newline at end of file diff --git a/tools/doc/typedoc-theme/assets/css/elements/_hierarchy.sass b/tools/doc/typedoc-theme/assets/css/elements/_hierarchy.sass deleted file mode 100644 index 891b52bb4c..0000000000 --- a/tools/doc/typedoc-theme/assets/css/elements/_hierarchy.sass +++ /dev/null @@ -1,24 +0,0 @@ -// Displays the type hierarchy -// -// -// -.tsd-hierarchy - list-style: square - padding: 0 0 0 20px - margin: 0 - - .target - font-weight: bold diff --git a/tools/doc/typedoc-theme/assets/css/elements/_images.sass b/tools/doc/typedoc-theme/assets/css/elements/_images.sass deleted file mode 100644 index 1fa3f017e7..0000000000 --- a/tools/doc/typedoc-theme/assets/css/elements/_images.sass +++ /dev/null @@ -1,3 +0,0 @@ -// fixes issue with images in readme -img - max-width: 100% diff --git a/tools/doc/typedoc-theme/assets/css/elements/_index.sass b/tools/doc/typedoc-theme/assets/css/elements/_index.sass deleted file mode 100644 index 4d4a0fc4e6..0000000000 --- a/tools/doc/typedoc-theme/assets/css/elements/_index.sass +++ /dev/null @@ -1,79 +0,0 @@ -// Displays an index of grouped links. -// -//
-//
-//
-//

Constructor methods

-// -//
-// -//
-//
-// -.tsd-index-panel - .tsd-index-content - margin-bottom: -30px !important - - .tsd-index-section - margin-bottom: 30px !important - - h3 - @extend h4 - margin: 0 -20px 10px -20px - padding: 0 20px 10px 20px - border-bottom: 1px solid $COLOR_PANEL_DIVIDER - - ul.tsd-index-list - +vendors(column-count, 3) - +vendors(column-gap, 20px) - padding: 0 - list-style: none - line-height: $LINE_HEIGHT - - +size-xs-sm - +vendors(column-count, 1) - - +size-md - +vendors(column-count, 2) - - li - +vendors(page-break-inside, avoid) - - a, - .tsd-parent-kind-module a - color: $COLOR_TS - - .tsd-parent-kind-interface a - color: $COLOR_TS_INTERFACE - - .tsd-parent-kind-enum a - color: $COLOR_TS_ENUM - - .tsd-parent-kind-class a - color: $COLOR_TS_CLASS - - - .tsd-kind-module a - color: $COLOR_TS - - .tsd-kind-interface a - color: $COLOR_TS_INTERFACE - - .tsd-kind-enum a - color: $COLOR_TS_ENUM - - .tsd-kind-class a - color: $COLOR_TS_CLASS - - .tsd-is-private a - color: $COLOR_TS_PRIVATE diff --git a/tools/doc/typedoc-theme/assets/css/elements/_member.sass b/tools/doc/typedoc-theme/assets/css/elements/_member.sass deleted file mode 100644 index f351833614..0000000000 --- a/tools/doc/typedoc-theme/assets/css/elements/_member.sass +++ /dev/null @@ -1,21 +0,0 @@ -.tsd-flag - display: inline-block - padding: 1px 5px - border-radius: 4px - color: $COLOR_COMMENT_TAG_TEXT - background-color: $COLOR_COMMENT_TAG - text-indent: 0 - font-size: $FONT_SIZE_MONO - font-weight: normal - -.tsd-anchor - position: absolute - top: -100px - -.tsd-member - position: relative - - .tsd-anchor + h3 - margin-top: 0 - margin-bottom: 0 - border-bottom: none diff --git a/tools/doc/typedoc-theme/assets/css/elements/_navigation.sass b/tools/doc/typedoc-theme/assets/css/elements/_navigation.sass deleted file mode 100644 index 3f71a44023..0000000000 --- a/tools/doc/typedoc-theme/assets/css/elements/_navigation.sass +++ /dev/null @@ -1,148 +0,0 @@ -// Base format for the navigation parts. -// -=INDENT($DEPTH, $BASE, $STEP, $PROGRESS:$DEPTH) - @if $PROGRESS > 0 - & li - +INDENT($DEPTH, $BASE, $STEP, $PROGRESS - 1) - @else - & a - padding-left: #{($BASE + $STEP * ($DEPTH - 1))}px - -=INDENTS($COUNT, $BASE, $STEP) - @for $DEPTH from 1 through $COUNT - +INDENT($DEPTH, $BASE, $STEP) - -.tsd-navigation - margin: 0 0 0 40px - - a - display: block - padding-top: 2px - padding-bottom: 2px - border-left: 2px solid transparent - color: $COLOR_TEXT - text-decoration: none - transition: border-left-color 0.1s - - &:hover - text-decoration: underline - - ul - margin: 0 - padding: 0 - list-style: none - - li - padding: 0 - - -// Primary part of the navigation containing the available modules. -// -// -// -.tsd-navigation.primary - padding-bottom: 40px - - a - display: block - padding-top: 6px - padding-bottom: 6px - - ul - +INDENTS(6, 5, 20) - - > ul - border-bottom: 1px solid $COLOR_PANEL_DIVIDER - - li - border-top: 1px solid $COLOR_PANEL_DIVIDER - - &.current > a - font-weight: bold - - &.label span - display: block - padding: 20px 0 6px 5px - color: $COLOR_MENU_LABEL - - &.globals + li > span, - &.globals + li > a - padding-top: 20px - - -// Secondary part of the navigation containing the table of contents -// of the current module. -// Can be made sticky by `typedoc.MenuSticky` and will highlight current sticky with `typedoc.MenuHighlight`. -// -// -// -.tsd-navigation.secondary - max-height: calc(100vh - 1rem - #{$TOOLBAR_HEIGHT}) - overflow: auto - position: -webkit-sticky - position: sticky - top: calc(.5rem + #{$TOOLBAR_HEIGHT}) - transition: .3s - - &.tsd-navigation--toolbar-hide - max-height: calc(100vh - 1rem) - top: .5rem - - ul - +INDENTS(6, 25, 20) - transition: opacity 0.2s - - &.current a - border-left-color: $COLOR_PANEL_DIVIDER - - li.focus > a, - ul.current li.focus > a - border-left-color: $COLOR_MENU_DIVIDER_FOCUS - - li.current - margin-top: 20px - margin-bottom: 20px - border-left-color: $COLOR_PANEL_DIVIDER - - > a - font-weight: bold - - -// Sticky menu setup -// -.menu-sticky-wrap - +size-md-lg - position: static diff --git a/tools/doc/typedoc-theme/assets/css/elements/_panel.sass b/tools/doc/typedoc-theme/assets/css/elements/_panel.sass deleted file mode 100644 index 82ae3d5119..0000000000 --- a/tools/doc/typedoc-theme/assets/css/elements/_panel.sass +++ /dev/null @@ -1,70 +0,0 @@ -// Displays a panel, an organisation unit in TypeDoc used to group single entities -// like a method or a variable. -// -//
-//

Eirmod tempor invidunt

-//

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat.

-//
-// -.tsd-panel - @extend %prevent-children-margin - margin: 20px 0 - padding: 20px - background-color: $COLOR_PANEL - box-shadow: 0 0 4px rgba(#000, 0.25) - - &:empty - display: none - - > h1, > h2, > h3 - margin: 1.5em -20px 10px -20px - padding: 0 20px 10px 20px - border-bottom: 1px solid $COLOR_PANEL_DIVIDER - - &.tsd-before-signature - margin-bottom: 0 - border-bottom: 0 - - table - display: block - width: 100% - overflow: auto - margin-top: 10px - word-break: normal - word-break: keep-all - - th - font-weight: bold - - th, td - padding: 6px 13px - border: 1px solid #ddd - - tr - background-color: #fff - border-top: 1px solid #ccc - - &:nth-child(2n) - background-color: #f8f8f8 - - -// Holds a series of panels with an optional heading. -// -//
-//

Consetetur sadipscing elitr

-//
-//

Eirmod tempor invidunt

-//

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat.

-//
-//
-//

Eirmod tempor invidunt

-//

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat.

-//
-//
-// -.tsd-panel-group - margin: 60px 0 - - > h1, > h2, > h3 - padding-left: 20px - padding-right: 20px \ No newline at end of file diff --git a/tools/doc/typedoc-theme/assets/css/elements/_search.sass b/tools/doc/typedoc-theme/assets/css/elements/_search.sass deleted file mode 100644 index be33a9f9fc..0000000000 --- a/tools/doc/typedoc-theme/assets/css/elements/_search.sass +++ /dev/null @@ -1,89 +0,0 @@ -#tsd-search - transition: background-color 0.2s - - .title - position: relative - z-index: 2 - - .field - position: absolute - left: 0 - top: 0 - right: 40px - height: 40px - - input - box-sizing: border-box - position: relative - top: -50px - z-index: 1 - width: 100% - padding: 0 10px - opacity: 0 - outline: 0 - border: 0 - background: transparent - color: $COLOR_TEXT - - label - position: absolute - overflow: hidden - right: -40px - - .field input, - .title - transition: opacity 0.2s - - .results - position: absolute - visibility: hidden - top: 40px - width: 100% - margin: 0 - padding: 0 - list-style: none - box-shadow: 0 0 4px rgba(#000, 0.25) - - li - padding: 0 10px - background-color: $COLOR_BACKGROUND - - li:nth-child(even) - background-color: $COLOR_PANEL - - li.state - display: none - - li.current, - li:hover - background-color: $COLOR_PANEL_DIVIDER - - a - display: block - - &:before - top: 10px - - span.parent - color: $COLOR_TEXT_ASIDE - font-weight: normal - - &.has-focus - background-color: $COLOR_PANEL_DIVIDER - - .field input - top: 0 - opacity: 1 - - .title - z-index: 0 - opacity: 0 - - .results - visibility: visible - - &.loading .results li.state.loading - display: block - - &.failure .results li.state.failure - display: block diff --git a/tools/doc/typedoc-theme/assets/css/elements/_signatures.sass b/tools/doc/typedoc-theme/assets/css/elements/_signatures.sass deleted file mode 100644 index 73fb413b4e..0000000000 --- a/tools/doc/typedoc-theme/assets/css/elements/_signatures.sass +++ /dev/null @@ -1,152 +0,0 @@ -// Wraps a function signature. -// Changes its appearance when directly placed inside a `tsd-panel`. -// Can be combined with class `tsd-kind-icon` to display an icon in front of the signature. -// -//
-//
-// getChildByName( -// name: string -// ): -// DeclarationReflection -//
-//
-// -.tsd-signature - margin: 0 0 1em 0 - padding: 10px - border: 1px solid $COLOR_PANEL_DIVIDER - font-family: $FONT_FAMILY_MONO - font-size: $FONT_SIZE_MONO - overflow-x: auto - - &.tsd-kind-icon - padding-left: 30px - - &:before - top: 10px - left: 10px - - .tsd-panel > & - margin-left: -20px - margin-right: -20px - border-width: 1px 0 - - &.tsd-kind-icon - padding-left: 40px - - &:before - left: 20px - -.tsd-signature-symbol - color: $COLOR_TEXT_ASIDE - font-weight: normal - -.tsd-signature-type - font-style: italic - font-weight: normal - - -// Displays a list of signatures. -// Changes its appearance when directly placed inside a `tsd-panel`. -// Made interactive by JavaScript at `typedoc.Signature`. -// -//
    -//
  • getChildByName(name: string): DeclarationReflection
  • -//
  • getChildByName(names: Array<string>): DeclarationReflection
  • -//
-// -.tsd-signatures - padding: 0 - margin: 0 0 1em 0 - border: 1px solid $COLOR_PANEL_DIVIDER - - .tsd-signature - margin: 0 - border-width: 1px 0 0 0 - transition: background-color 0.1s - - &:first-child - border-top-width: 0 - - &.current - background-color: $COLOR_PANEL_DIVIDER - - &.active > .tsd-signature - cursor: pointer - - .tsd-panel > & - margin-left: -20px - margin-right: -20px - border-width: 1px 0 - - .tsd-signature.tsd-kind-icon - padding-left: 40px - - &:before - left: 20px - - .tsd-panel > a.anchor + & - border-top-width: 0 - margin-top: -20px - - -// Holds the descriptions related to a list of signatures. -// Made interactive by JavaScript at `typedoc.Signature`. -// -//
    -//
  • -//

    Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat.

    -//
  • -//
  • -//

    Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat.

    -//
  • -//
-// -ul.tsd-descriptions - position: relative - overflow: hidden - padding: 0 - list-style: none - - > li - @extend %prevent-children-margin - - &.active > .tsd-description - display: none - - &.current - display: block - - &.fade-in - animation: fade-in-delayed 0.3s - - &.fade-out - animation: fade-out-delayed 0.3s - position: absolute - display: block - top: 0 - left: 0 - right: 0 - opacity: 0 - visibility: hidden - - h4 - font-size: $FONT_SIZE - margin: 1em 0 0.5em 0 - -ul.tsd-parameters, -ul.tsd-type-parameters - list-style: square - margin: 0 - padding-left: 20px - - > li.tsd-parameter-signature - list-style: none - margin-left: -20px - - h5 - font-size: $FONT_SIZE - margin: 1em 0 0.5em 0 - - .tsd-comment - margin-top: -0.5em diff --git a/tools/doc/typedoc-theme/assets/css/elements/_sources.sass b/tools/doc/typedoc-theme/assets/css/elements/_sources.sass deleted file mode 100644 index 913193897e..0000000000 --- a/tools/doc/typedoc-theme/assets/css/elements/_sources.sass +++ /dev/null @@ -1,24 +0,0 @@ -// Displays the source and inheritance information -// -// -// -.tsd-sources - font-size: $FONT_SIZE_MONO - color: $COLOR_TEXT_ASIDE - margin: 0 0 1em 0 - - a - color: $COLOR_TEXT_ASIDE - text-decoration: underline - - ul, p - margin: 0 !important - - ul - list-style: none - padding: 0 \ No newline at end of file diff --git a/tools/doc/typedoc-theme/assets/css/elements/_toolbar.sass b/tools/doc/typedoc-theme/assets/css/elements/_toolbar.sass deleted file mode 100644 index 7d7784fe7f..0000000000 --- a/tools/doc/typedoc-theme/assets/css/elements/_toolbar.sass +++ /dev/null @@ -1,175 +0,0 @@ -// Displays the toolbar at the top of the page. -// -//
-//
-//
-// -//
-//
-//
-// -.tsd-page-toolbar - position: fixed - z-index: 1 - top: 0 - left: 0 - width: 100% - height: $TOOLBAR_HEIGHT - color: $TOOLBAR_TEXT_COLOR - background: $TOOLBAR_COLOR - border-bottom: 1px solid $COLOR_PANEL_DIVIDER - transition: transform .3s linear - - a - color: $TOOLBAR_TEXT_COLOR - text-decoration: none - - &.title - font-weight: bold - - &.title:hover - text-decoration: underline - - .table-wrap - display: table - width: 100% - height: $TOOLBAR_HEIGHT - - .table-cell - display: table-cell - position: relative - white-space: nowrap - line-height: $TOOLBAR_HEIGHT - - &:first-child - width: 100% - -.tsd-page-toolbar--hide - transform: translateY(-100%) - -%TSD_WIDGET_ICON - &:before - content: '' - display: inline-block - width: 40px - height: 40px - margin: 0 -8px 0 0 - background-image: url(../images/widgets.png) - background-repeat: no-repeat - text-indent: -1024px - vertical-align: bottom - - +retina - background-image: url(../images/widgets@2x.png) - background-size: 320px 40px - -.tsd-widget - @extend %TSD_WIDGET_ICON - display: inline-block - overflow: hidden - opacity: 0.6 - height: $TOOLBAR_HEIGHT - transition: opacity 0.1s, background-color 0.2s - vertical-align: bottom - cursor: pointer - - &:hover - opacity: 0.8 - - &.active - opacity: 1 - background-color: $COLOR_PANEL_DIVIDER - - &.no-caption - width: 40px - - &:before - margin: 0 - - &.search:before - background-position: 0 0 - - &.menu:before - background-position: -40px 0 - - &.options:before - background-position: -80px 0 - - &.options, - &.menu - display: none - - +size-xs-sm - display: inline-block - - input[type=checkbox] + &:before - background-position: -120px 0 - - input[type=checkbox]:checked + &:before - background-position: -160px 0 - -.tsd-select - position: relative - display: inline-block - height: $TOOLBAR_HEIGHT - transition: opacity 0.1s, background-color 0.2s - vertical-align: bottom - cursor: pointer - - .tsd-select-label - @extend %TSD_WIDGET_ICON - opacity: 0.6 - transition: opacity 0.2s - - &:before - background-position: -240px 0 - - &.active - .tsd-select-label - opacity: 0.8 - - .tsd-select-list - visibility: visible - opacity: 1 - transition-delay: 0s - - .tsd-select-list - position: absolute - visibility: hidden - top: $TOOLBAR_HEIGHT - left: 0 - margin: 0 - padding: 0 - opacity: 0 - list-style: none - box-shadow: 0 0 4px rgba(#000, 0.25) - transition: visibility 0s 0.2s, opacity 0.2s - - li - @extend %TSD_WIDGET_ICON - padding: 0 20px 0 0 - background-color: $COLOR_BACKGROUND - - &:before - background-position: 40px 0 - - &:nth-child(even) - background-color: $COLOR_PANEL - - &:hover - background-color: $COLOR_PANEL_DIVIDER - - &.selected:before - background-position: -200px 0 - - +size-xs-sm - .tsd-select-list - top: 0 - left: auto - right: 100% - margin-right: -5px - - .tsd-select-label:before - background-position: -280px 0 \ No newline at end of file diff --git a/tools/doc/typedoc-theme/assets/css/layouts/_default.sass b/tools/doc/typedoc-theme/assets/css/layouts/_default.sass deleted file mode 100644 index 9bf0249885..0000000000 --- a/tools/doc/typedoc-theme/assets/css/layouts/_default.sass +++ /dev/null @@ -1,113 +0,0 @@ -html.default - +size-md - .col-content - width: 72% - - .col-menu - width: 28% - - .tsd-navigation - padding-left: 10px - - +size-xs-sm - .col-content - float: none - width: 100% - - .col-menu - position: fixed !important - overflow: auto - -webkit-overflow-scrolling: touch - z-index: 1024 - top: 0 !important - bottom: 0 !important - left: auto !important - right: 0 !important - width: 100% - padding: 20px 20px 0 0 - max-width: 450px - visibility: hidden - background-color: $COLOR_PANEL - transform: translate(100%,0) - - > *:last-child - padding-bottom: 20px - - .overlay - content: '' - display: block - position: fixed - z-index: 1023 - top: 0 - left: 0 - right: 0 - bottom: 0 - background-color: rgba(#000, 0.75) - visibility: hidden - - &.to-has-menu - .overlay - animation: fade-in 0.4s - - header, - footer, - .col-content - animation: shift-to-left 0.4s - - .col-menu - animation: pop-in-from-right 0.4s - - &.from-has-menu - .overlay - animation: fade-out 0.4s - - header, - footer, - .col-content - animation: unshift-to-left 0.4s - - .col-menu - animation: pop-out-to-right 0.4s - - &.has-menu - body - overflow: hidden - - .overlay - visibility: visible - - header, - footer, - .col-content - transform: translate(-25%, 0) - - .col-menu - visibility: visible - transform: translate(0,0) - -.tsd-page-title - padding: 70px 0 20px 0 - margin: 0 0 40px 0 - background: $COLOR_PANEL - box-shadow: 0 0 5px rgba(#000, 0.35) - - h1 - margin: 0 - -.tsd-breadcrumb - margin: 0 - padding: 0 - color: $COLOR_TEXT_ASIDE - - a - color: $COLOR_TEXT_ASIDE - text-decoration: none - - &:hover - text-decoration: underline - - li - display: inline - - &:after - content: ' / ' diff --git a/tools/doc/typedoc-theme/assets/css/layouts/_minimal.sass b/tools/doc/typedoc-theme/assets/css/layouts/_minimal.sass deleted file mode 100644 index 37484f0d98..0000000000 --- a/tools/doc/typedoc-theme/assets/css/layouts/_minimal.sass +++ /dev/null @@ -1,49 +0,0 @@ -html.minimal - .container - margin: 0 - - .container-main - padding-top: 50px - padding-bottom: 0 - - .content-wrap - padding-left: 300px - - .tsd-navigation - position: fixed !important - overflow: auto - -webkit-overflow-scrolling: touch - box-sizing: border-box - z-index: 1 - left: 0 - top: 40px - bottom: 0 - width: 300px - padding: 20px - margin: 0 - - .tsd-member .tsd-member - margin-left: 0 - - .tsd-page-toolbar - position: fixed - z-index: 2 - - #tsd-filter .tsd-filter-group - right: 0 - transform: none - - footer - background-color: transparent - - .container - padding: 0 - - .tsd-generator - padding: 0 - - +size-xs-sm - .tsd-navigation - display: none - .content-wrap - padding-left: 0 diff --git a/tools/doc/typedoc-theme/assets/css/main.css b/tools/doc/typedoc-theme/assets/css/main.css new file mode 100644 index 0000000000..01cd747daf --- /dev/null +++ b/tools/doc/typedoc-theme/assets/css/main.css @@ -0,0 +1,2632 @@ +/*! normalize.css v1.1.3 | MIT License | git.io/normalize */ +/* ========================================================================== + * * HTML5 display definitions + * * ========================================================================== */ +/** + * * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3. */ +article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { + display: block; +} + +/** + * * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3. */ +audio, canvas, video { + display: inline-block; + *display: inline; + *zoom: 1; +} + +/** + * * Prevent modern browsers from displaying `audio` without controls. + * * Remove excess height in iOS 5 devices. */ +audio:not([controls]) { + display: none; + height: 0; +} + +/** + * * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4. + * * Known issue: no IE 6 support. */ +[hidden] { + display: none; +} + +/* ========================================================================== + * * Base + * * ========================================================================== */ +/** + * * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using + * * `em` units. + * * 2. Prevent iOS text size adjust after orientation change, without disabling + * * user zoom. */ +html { + font-size: 100%; + /* 1 */ + -ms-text-size-adjust: 100%; + /* 2 */ + -webkit-text-size-adjust: 100%; + /* 2 */ + font-family: sans-serif; +} + +/** + * * Address `font-family` inconsistency between `textarea` and other form + * * elements. */ +button, input, select, textarea { + font-family: sans-serif; +} + +/** + * * Address margins handled incorrectly in IE 6/7. */ +body { + margin: 0; +} + +/* ========================================================================== + * * Links + * * ========================================================================== */ +/** + * * Address `outline` inconsistency between Chrome and other browsers. */ +a:focus { + outline: thin dotted; +} +a:active, a:hover { + outline: 0; +} + +/** + * * Improve readability when focused and also mouse hovered in all browsers. */ +/* ========================================================================== + * * Typography + * * ========================================================================== */ +/** + * * Address font sizes and margins set differently in IE 6/7. + * * Address font sizes within `section` and `article` in Firefox 4+, Safari 5, + * * and Chrome. */ +h1 { + font-size: 2em; + margin: 0.67em 0; +} + +h2 { + font-size: 1.5em; + margin: 0.83em 0; +} + +h3 { + font-size: 1.17em; + margin: 1em 0; +} + +h4, .tsd-index-panel h3 { + font-size: 1em; + margin: 1.33em 0; +} + +h5 { + font-size: 0.83em; + margin: 1.67em 0; +} + +h6 { + font-size: 0.67em; + margin: 2.33em 0; +} + +/** + * * Address styling not present in IE 7/8/9, Safari 5, and Chrome. */ +abbr[title] { + border-bottom: 1px dotted; +} + +/** + * * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome. */ +b, strong { + font-weight: bold; +} + +blockquote { + margin: 1em 40px; +} + +/** + * * Address styling not present in Safari 5 and Chrome. */ +dfn { + font-style: italic; +} + +/** + * * Address differences between Firefox and other browsers. + * * Known issue: no IE 6/7 normalization. */ +hr { + -moz-box-sizing: content-box; + box-sizing: content-box; + height: 0; +} + +/** + * * Address styling not present in IE 6/7/8/9. */ +mark { + background: #ff0; + color: #000; +} + +/** + * * Address margins set differently in IE 6/7. */ +p, pre { + margin: 1em 0; +} + +/** + * * Correct font family set oddly in IE 6, Safari 4/5, and Chrome. */ +code, kbd, pre, samp { + font-family: monospace, serif; + _font-family: "courier new", monospace; + font-size: 1em; +} + +/** + * * Improve readability of pre-formatted text in all browsers. */ +pre { + white-space: pre; + white-space: pre-wrap; + word-wrap: break-word; +} + +/** + * * Address CSS quotes not supported in IE 6/7. */ +q { + quotes: none; +} +q:before, q:after { + content: ""; + content: none; +} + +/** + * * Address `quotes` property not supported in Safari 4. */ +/** + * * Address inconsistent and variable font size in all browsers. */ +small { + font-size: 80%; +} + +/** + * * Prevent `sub` and `sup` affecting `line-height` in all browsers. */ +sub { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +/* ========================================================================== + * * Lists + * * ========================================================================== */ +/** + * * Address margins set differently in IE 6/7. */ +dl, menu, ol, ul { + margin: 1em 0; +} + +dd { + margin: 0 0 0 40px; +} + +/** + * * Address paddings set differently in IE 6/7. */ +menu, ol, ul { + padding: 0 0 0 40px; +} + +/** + * * Correct list images handled incorrectly in IE 7. */ +nav ul, nav ol { + list-style: none; + list-style-image: none; +} + +/* ========================================================================== + * * Embedded content + * * ========================================================================== */ +/** + * * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3. + * * 2. Improve image quality when scaled in IE 7. */ +img { + border: 0; + /* 1 */ + -ms-interpolation-mode: bicubic; +} + +/* 2 */ +/** + * * Correct overflow displayed oddly in IE 9. */ +svg:not(:root) { + overflow: hidden; +} + +/* ========================================================================== + * * Figures + * * ========================================================================== */ +/** + * * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11. */ +figure, form { + margin: 0; +} + +/* ========================================================================== + * * Forms + * * ========================================================================== */ +/** + * * Correct margin displayed oddly in IE 6/7. */ +/** + * * Define consistent border, margin, and padding. */ +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} + +/** + * * 1. Correct color not being inherited in IE 6/7/8/9. + * * 2. Correct text not wrapping in Firefox 3. + * * 3. Correct alignment displayed oddly in IE 6/7. */ +legend { + border: 0; + /* 1 */ + padding: 0; + white-space: normal; + /* 2 */ + *margin-left: -7px; +} + +/* 3 */ +/** + * * 1. Correct font size not being inherited in all browsers. + * * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5, + * * and Chrome. + * * 3. Improve appearance and consistency in all browsers. */ +button, input, select, textarea { + font-size: 100%; + /* 1 */ + margin: 0; + /* 2 */ + vertical-align: baseline; + /* 3 */ + *vertical-align: middle; +} + +/* 3 */ +/** + * * Address Firefox 3+ setting `line-height` on `input` using `!important` in + * * the UA stylesheet. */ +button, input { + line-height: normal; +} + +/** + * * Address inconsistent `text-transform` inheritance for `button` and `select`. + * * All other form control elements do not inherit `text-transform` values. + * * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+. + * * Correct `select` style inheritance in Firefox 4+ and Opera. */ +button, select { + text-transform: none; +} + +/** + * * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` + * * and `video` controls. + * * 2. Correct inability to style clickable `input` types in iOS. + * * 3. Improve usability and consistency of cursor style between image-type + * * `input` and others. + * * 4. Remove inner spacing in IE 7 without affecting normal text inputs. + * * Known issue: inner spacing remains in IE 6. */ +button, html input[type=button] { + -webkit-appearance: button; + /* 2 */ + cursor: pointer; + /* 3 */ + *overflow: visible; +} + +/* 4 */ +input[type=reset], input[type=submit] { + -webkit-appearance: button; + /* 2 */ + cursor: pointer; + /* 3 */ + *overflow: visible; +} + +/* 4 */ +/** + * * Re-set default cursor for disabled elements. */ +button[disabled], html input[disabled] { + cursor: default; +} + +/** + * * 1. Address box sizing set to content-box in IE 8/9. + * * 2. Remove excess padding in IE 8/9. + * * 3. Remove excess padding in IE 7. + * * Known issue: excess padding remains in IE 6. */ +input { + /* 3 */ +} +input[type=checkbox], input[type=radio] { + box-sizing: border-box; + /* 1 */ + padding: 0; + /* 2 */ + *height: 13px; + /* 3 */ + *width: 13px; +} +input[type=search] { + -webkit-appearance: textfield; + /* 1 */ + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + /* 2 */ + box-sizing: content-box; +} +input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/** + * * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome. + * * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome + * * (include `-moz` to future-proof). */ +/** + * * Remove inner padding and search cancel button in Safari 5 and Chrome + * * on OS X. */ +/** + * * Remove inner padding and border in Firefox 3+. */ +button::-moz-focus-inner, input::-moz-focus-inner { + border: 0; + padding: 0; +} + +/** + * * 1. Remove default vertical scrollbar in IE 6/7/8/9. + * * 2. Improve readability and alignment in all browsers. */ +textarea { + overflow: auto; + /* 1 */ + vertical-align: top; +} + +/* 2 */ +/* ========================================================================== + * * Tables + * * ========================================================================== */ +/** + * * Remove most spacing between table cells. */ +table { + border-collapse: collapse; + border-spacing: 0; +} + +ul.tsd-descriptions > li > :first-child, .tsd-panel > :first-child, .col > :first-child, .col-11 > :first-child, .col-10 > :first-child, .col-9 > :first-child, .col-8 > :first-child, .col-7 > :first-child, .col-6 > :first-child, .col-5 > :first-child, .col-4 > :first-child, .col-3 > :first-child, .col-2 > :first-child, .col-1 > :first-child, +ul.tsd-descriptions > li > :first-child > :first-child, +.tsd-panel > :first-child > :first-child, +.col > :first-child > :first-child, +.col-11 > :first-child > :first-child, +.col-10 > :first-child > :first-child, +.col-9 > :first-child > :first-child, +.col-8 > :first-child > :first-child, +.col-7 > :first-child > :first-child, +.col-6 > :first-child > :first-child, +.col-5 > :first-child > :first-child, +.col-4 > :first-child > :first-child, +.col-3 > :first-child > :first-child, +.col-2 > :first-child > :first-child, +.col-1 > :first-child > :first-child, +ul.tsd-descriptions > li > :first-child > :first-child > :first-child, +.tsd-panel > :first-child > :first-child > :first-child, +.col > :first-child > :first-child > :first-child, +.col-11 > :first-child > :first-child > :first-child, +.col-10 > :first-child > :first-child > :first-child, +.col-9 > :first-child > :first-child > :first-child, +.col-8 > :first-child > :first-child > :first-child, +.col-7 > :first-child > :first-child > :first-child, +.col-6 > :first-child > :first-child > :first-child, +.col-5 > :first-child > :first-child > :first-child, +.col-4 > :first-child > :first-child > :first-child, +.col-3 > :first-child > :first-child > :first-child, +.col-2 > :first-child > :first-child > :first-child, +.col-1 > :first-child > :first-child > :first-child { + margin-top: 0; +} +ul.tsd-descriptions > li > :last-child, .tsd-panel > :last-child, .col > :last-child, .col-11 > :last-child, .col-10 > :last-child, .col-9 > :last-child, .col-8 > :last-child, .col-7 > :last-child, .col-6 > :last-child, .col-5 > :last-child, .col-4 > :last-child, .col-3 > :last-child, .col-2 > :last-child, .col-1 > :last-child, +ul.tsd-descriptions > li > :last-child > :last-child, +.tsd-panel > :last-child > :last-child, +.col > :last-child > :last-child, +.col-11 > :last-child > :last-child, +.col-10 > :last-child > :last-child, +.col-9 > :last-child > :last-child, +.col-8 > :last-child > :last-child, +.col-7 > :last-child > :last-child, +.col-6 > :last-child > :last-child, +.col-5 > :last-child > :last-child, +.col-4 > :last-child > :last-child, +.col-3 > :last-child > :last-child, +.col-2 > :last-child > :last-child, +.col-1 > :last-child > :last-child, +ul.tsd-descriptions > li > :last-child > :last-child > :last-child, +.tsd-panel > :last-child > :last-child > :last-child, +.col > :last-child > :last-child > :last-child, +.col-11 > :last-child > :last-child > :last-child, +.col-10 > :last-child > :last-child > :last-child, +.col-9 > :last-child > :last-child > :last-child, +.col-8 > :last-child > :last-child > :last-child, +.col-7 > :last-child > :last-child > :last-child, +.col-6 > :last-child > :last-child > :last-child, +.col-5 > :last-child > :last-child > :last-child, +.col-4 > :last-child > :last-child > :last-child, +.col-3 > :last-child > :last-child > :last-child, +.col-2 > :last-child > :last-child > :last-child, +.col-1 > :last-child > :last-child > :last-child { + margin-bottom: 0; +} + +.container { + max-width: 1200px; + margin: 0 auto; + padding: 0 40px; +} +@media (max-width: 640px) { + .container { + padding: 0 20px; + } +} + +.container-main { + padding-bottom: 200px; +} + +.row { + display: flex; + position: relative; + margin: 0 -10px; +} +.row:after { + visibility: hidden; + display: block; + content: ""; + clear: both; + height: 0; +} + +.col, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 { + box-sizing: border-box; + float: left; + padding: 0 10px; +} + +.col-1 { + width: 8.3333333333%; +} + +.offset-1 { + margin-left: 8.3333333333%; +} + +.col-2 { + width: 16.6666666667%; +} + +.offset-2 { + margin-left: 16.6666666667%; +} + +.col-3 { + width: 25%; +} + +.offset-3 { + margin-left: 25%; +} + +.col-4 { + width: 33.3333333333%; +} + +.offset-4 { + margin-left: 33.3333333333%; +} + +.col-5 { + width: 41.6666666667%; +} + +.offset-5 { + margin-left: 41.6666666667%; +} + +.col-6 { + width: 50%; +} + +.offset-6 { + margin-left: 50%; +} + +.col-7 { + width: 58.3333333333%; +} + +.offset-7 { + margin-left: 58.3333333333%; +} + +.col-8 { + width: 66.6666666667%; +} + +.offset-8 { + margin-left: 66.6666666667%; +} + +.col-9 { + width: 75%; +} + +.offset-9 { + margin-left: 75%; +} + +.col-10 { + width: 83.3333333333%; +} + +.offset-10 { + margin-left: 83.3333333333%; +} + +.col-11 { + width: 91.6666666667%; +} + +.offset-11 { + margin-left: 91.6666666667%; +} + +.tsd-kind-icon { + display: block; + position: relative; + padding-left: 20px; + text-indent: -20px; +} +.tsd-kind-icon:before { + content: ""; + display: inline-block; + vertical-align: middle; + width: 17px; + height: 17px; + margin: 0 3px 2px 0; + background-image: url(../images/icons.png); +} +@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) { + .tsd-kind-icon:before { + background-image: url(../images/icons@2x.png); + background-size: 238px 204px; + } +} + +.tsd-signature.tsd-kind-icon:before { + background-position: 0 -153px; +} + +.tsd-kind-object-literal > .tsd-kind-icon:before { + background-position: 0px -17px; +} +.tsd-kind-object-literal.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -17px; +} +.tsd-kind-object-literal.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -17px; +} + +.tsd-kind-class > .tsd-kind-icon:before { + background-position: 0px -34px; +} +.tsd-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -34px; +} +.tsd-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -34px; +} + +.tsd-kind-class.tsd-has-type-parameter > .tsd-kind-icon:before { + background-position: 0px -51px; +} +.tsd-kind-class.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -51px; +} +.tsd-kind-class.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -51px; +} + +.tsd-kind-interface > .tsd-kind-icon:before { + background-position: 0px -68px; +} +.tsd-kind-interface.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -68px; +} +.tsd-kind-interface.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -68px; +} + +.tsd-kind-interface.tsd-has-type-parameter > .tsd-kind-icon:before { + background-position: 0px -85px; +} +.tsd-kind-interface.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -85px; +} +.tsd-kind-interface.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -85px; +} + +.tsd-kind-namespace > .tsd-kind-icon:before { + background-position: 0px -102px; +} +.tsd-kind-namespace.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -102px; +} +.tsd-kind-namespace.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -102px; +} + +.tsd-kind-module > .tsd-kind-icon:before { + background-position: 0px -102px; +} +.tsd-kind-module.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -102px; +} +.tsd-kind-module.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -102px; +} + +.tsd-kind-enum > .tsd-kind-icon:before { + background-position: 0px -119px; +} +.tsd-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -119px; +} +.tsd-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -119px; +} + +.tsd-kind-enum-member > .tsd-kind-icon:before { + background-position: 0px -136px; +} +.tsd-kind-enum-member.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -136px; +} +.tsd-kind-enum-member.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -136px; +} + +.tsd-kind-signature > .tsd-kind-icon:before { + background-position: 0px -153px; +} +.tsd-kind-signature.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -153px; +} +.tsd-kind-signature.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -153px; +} + +.tsd-kind-type-alias > .tsd-kind-icon:before { + background-position: 0px -170px; +} +.tsd-kind-type-alias.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -170px; +} +.tsd-kind-type-alias.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -170px; +} + +.tsd-kind-type-alias.tsd-has-type-parameter > .tsd-kind-icon:before { + background-position: 0px -187px; +} +.tsd-kind-type-alias.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -187px; +} +.tsd-kind-type-alias.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -187px; +} + +.tsd-kind-variable > .tsd-kind-icon:before { + background-position: -136px -0px; +} +.tsd-kind-variable.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -0px; +} +.tsd-kind-variable.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -0px; +} +.tsd-kind-variable.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -0px; +} +.tsd-kind-variable.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -0px; +} +.tsd-kind-variable.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -0px; +} +.tsd-kind-variable.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -0px; +} +.tsd-kind-variable.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -0px; +} +.tsd-kind-variable.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -0px; +} +.tsd-kind-variable.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -0px; +} +.tsd-kind-variable.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -0px; +} +.tsd-kind-variable.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -0px; +} +.tsd-kind-variable.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -0px; +} + +.tsd-kind-property > .tsd-kind-icon:before { + background-position: -136px -0px; +} +.tsd-kind-property.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -0px; +} +.tsd-kind-property.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -0px; +} +.tsd-kind-property.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -0px; +} +.tsd-kind-property.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -0px; +} +.tsd-kind-property.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -0px; +} +.tsd-kind-property.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -0px; +} +.tsd-kind-property.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -0px; +} +.tsd-kind-property.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -0px; +} +.tsd-kind-property.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -0px; +} +.tsd-kind-property.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -0px; +} +.tsd-kind-property.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -0px; +} +.tsd-kind-property.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -0px; +} + +.tsd-kind-get-signature > .tsd-kind-icon:before { + background-position: -136px -17px; +} +.tsd-kind-get-signature.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -17px; +} +.tsd-kind-get-signature.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -17px; +} + +.tsd-kind-set-signature > .tsd-kind-icon:before { + background-position: -136px -34px; +} +.tsd-kind-set-signature.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -34px; +} +.tsd-kind-set-signature.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -34px; +} + +.tsd-kind-accessor > .tsd-kind-icon:before { + background-position: -136px -51px; +} +.tsd-kind-accessor.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -51px; +} +.tsd-kind-accessor.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -51px; +} + +.tsd-kind-function > .tsd-kind-icon:before { + background-position: -136px -68px; +} +.tsd-kind-function.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -68px; +} +.tsd-kind-function.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-function.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -68px; +} +.tsd-kind-function.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -68px; +} +.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -68px; +} +.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -68px; +} +.tsd-kind-function.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-function.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -68px; +} +.tsd-kind-function.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -68px; +} +.tsd-kind-function.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-function.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -68px; +} +.tsd-kind-function.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -68px; +} + +.tsd-kind-method > .tsd-kind-icon:before { + background-position: -136px -68px; +} +.tsd-kind-method.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -68px; +} +.tsd-kind-method.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-method.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -68px; +} +.tsd-kind-method.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -68px; +} +.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -68px; +} +.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -68px; +} +.tsd-kind-method.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-method.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -68px; +} +.tsd-kind-method.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -68px; +} +.tsd-kind-method.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-method.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -68px; +} +.tsd-kind-method.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -68px; +} + +.tsd-kind-call-signature > .tsd-kind-icon:before { + background-position: -136px -68px; +} +.tsd-kind-call-signature.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -68px; +} +.tsd-kind-call-signature.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -68px; +} + +.tsd-kind-function.tsd-has-type-parameter > .tsd-kind-icon:before { + background-position: -136px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -85px; +} + +.tsd-kind-method.tsd-has-type-parameter > .tsd-kind-icon:before { + background-position: -136px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -85px; +} + +.tsd-kind-constructor > .tsd-kind-icon:before { + background-position: -136px -102px; +} +.tsd-kind-constructor.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -102px; +} +.tsd-kind-constructor.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -102px; +} + +.tsd-kind-constructor-signature > .tsd-kind-icon:before { + background-position: -136px -102px; +} +.tsd-kind-constructor-signature.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -102px; +} +.tsd-kind-constructor-signature.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -102px; +} + +.tsd-kind-index-signature > .tsd-kind-icon:before { + background-position: -136px -119px; +} +.tsd-kind-index-signature.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -119px; +} +.tsd-kind-index-signature.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -119px; +} + +.tsd-kind-event > .tsd-kind-icon:before { + background-position: -136px -136px; +} +.tsd-kind-event.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -136px; +} +.tsd-kind-event.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -136px; +} +.tsd-kind-event.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -136px; +} +.tsd-kind-event.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -136px; +} +.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -136px; +} +.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -136px; +} +.tsd-kind-event.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -136px; +} +.tsd-kind-event.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -136px; +} +.tsd-kind-event.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -136px; +} +.tsd-kind-event.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -136px; +} +.tsd-kind-event.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -136px; +} +.tsd-kind-event.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -136px; +} + +.tsd-is-static > .tsd-kind-icon:before { + background-position: -136px -153px; +} +.tsd-is-static.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -153px; +} +.tsd-is-static.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -153px; +} +.tsd-is-static.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -153px; +} +.tsd-is-static.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -153px; +} +.tsd-is-static.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -153px; +} +.tsd-is-static.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -153px; +} +.tsd-is-static.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -153px; +} +.tsd-is-static.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -153px; +} +.tsd-is-static.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -153px; +} +.tsd-is-static.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -153px; +} +.tsd-is-static.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -153px; +} +.tsd-is-static.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -153px; +} + +.tsd-is-static.tsd-kind-function > .tsd-kind-icon:before { + background-position: -136px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -170px; +} + +.tsd-is-static.tsd-kind-method > .tsd-kind-icon:before { + background-position: -136px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -170px; +} + +.tsd-is-static.tsd-kind-call-signature > .tsd-kind-icon:before { + background-position: -136px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -170px; +} + +.tsd-is-static.tsd-kind-event > .tsd-kind-icon:before { + background-position: -136px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -102px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -221px -187px; +} + +@keyframes fade-in { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes fade-out { + from { + opacity: 1; + visibility: visible; + } + to { + opacity: 0; + } +} +@keyframes fade-in-delayed { + 0% { + opacity: 0; + } + 33% { + opacity: 0; + } + 100% { + opacity: 1; + } +} +@keyframes fade-out-delayed { + 0% { + opacity: 1; + visibility: visible; + } + 66% { + opacity: 0; + } + 100% { + opacity: 0; + } +} +@keyframes shift-to-left { + from { + transform: translate(0, 0); + } + to { + transform: translate(-25%, 0); + } +} +@keyframes unshift-to-left { + from { + transform: translate(-25%, 0); + } + to { + transform: translate(0, 0); + } +} +@keyframes pop-in-from-right { + from { + transform: translate(100%, 0); + } + to { + transform: translate(0, 0); + } +} +@keyframes pop-out-to-right { + from { + transform: translate(0, 0); + visibility: visible; + } + to { + transform: translate(100%, 0); + } +} +body { + background: #fdfdfd; + font-family: "Segoe UI", sans-serif; + font-size: 16px; + color: #222; +} + +a { + color: #4da6ff; + text-decoration: none; +} +a:hover { + text-decoration: underline; +} + +code, pre { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; + padding: 0.2em; + margin: 0; + font-size: 14px; + background-color: rgba(0, 0, 0, 0.04); +} + +pre { + padding: 10px; +} +pre code { + padding: 0; + font-size: 100%; + background-color: transparent; +} + +.tsd-typography { + line-height: 1.333em; +} +.tsd-typography ul { + list-style: square; + padding: 0 0 0 20px; + margin: 0; +} +.tsd-typography h4, .tsd-typography .tsd-index-panel h3, .tsd-index-panel .tsd-typography h3, .tsd-typography h5, .tsd-typography h6 { + font-size: 1em; + margin: 0; +} +.tsd-typography h5, .tsd-typography h6 { + font-weight: normal; +} +.tsd-typography p, .tsd-typography ul, .tsd-typography ol { + margin: 1em 0; +} + +@media (min-width: 901px) and (max-width: 1024px) { + html.default .col-content { + width: 72%; + } + html.default .col-menu { + width: 28%; + } + html.default .tsd-navigation { + padding-left: 10px; + } +} +@media (max-width: 900px) { + html.default .col-content { + float: none; + width: 100%; + } + html.default .col-menu { + position: fixed !important; + overflow: auto; + -webkit-overflow-scrolling: touch; + z-index: 1024; + top: 0 !important; + bottom: 0 !important; + left: auto !important; + right: 0 !important; + width: 100%; + padding: 20px 20px 0 0; + max-width: 450px; + visibility: hidden; + background-color: #fff; + transform: translate(100%, 0); + } + html.default .col-menu > *:last-child { + padding-bottom: 20px; + } + html.default .overlay { + content: ""; + display: block; + position: fixed; + z-index: 1023; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: rgba(0, 0, 0, 0.75); + visibility: hidden; + } + html.default.to-has-menu .overlay { + animation: fade-in 0.4s; + } + html.default.to-has-menu header, +html.default.to-has-menu footer, +html.default.to-has-menu .col-content { + animation: shift-to-left 0.4s; + } + html.default.to-has-menu .col-menu { + animation: pop-in-from-right 0.4s; + } + html.default.from-has-menu .overlay { + animation: fade-out 0.4s; + } + html.default.from-has-menu header, +html.default.from-has-menu footer, +html.default.from-has-menu .col-content { + animation: unshift-to-left 0.4s; + } + html.default.from-has-menu .col-menu { + animation: pop-out-to-right 0.4s; + } + html.default.has-menu body { + overflow: hidden; + } + html.default.has-menu .overlay { + visibility: visible; + } + html.default.has-menu header, +html.default.has-menu footer, +html.default.has-menu .col-content { + transform: translate(-25%, 0); + } + html.default.has-menu .col-menu { + visibility: visible; + transform: translate(0, 0); + } +} + +.tsd-page-title { + padding: 70px 0 20px 0; + margin: 0 0 40px 0; + background: #fff; + box-shadow: 0 0 5px rgba(0, 0, 0, 0.35); +} +.tsd-page-title h1 { + margin: 0; +} + +.tsd-breadcrumb { + margin: 0; + padding: 0; + color: #707070; +} +.tsd-breadcrumb a { + color: #707070; + text-decoration: none; +} +.tsd-breadcrumb a:hover { + text-decoration: underline; +} +.tsd-breadcrumb li { + display: inline; +} +.tsd-breadcrumb li:after { + content: " / "; +} + +html.minimal .container { + margin: 0; +} +html.minimal .container-main { + padding-top: 50px; + padding-bottom: 0; +} +html.minimal .content-wrap { + padding-left: 300px; +} +html.minimal .tsd-navigation { + position: fixed !important; + overflow: auto; + -webkit-overflow-scrolling: touch; + box-sizing: border-box; + z-index: 1; + left: 0; + top: 40px; + bottom: 0; + width: 300px; + padding: 20px; + margin: 0; +} +html.minimal .tsd-member .tsd-member { + margin-left: 0; +} +html.minimal .tsd-page-toolbar { + position: fixed; + z-index: 2; +} +html.minimal #tsd-filter .tsd-filter-group { + right: 0; + transform: none; +} +html.minimal footer { + background-color: transparent; +} +html.minimal footer .container { + padding: 0; +} +html.minimal .tsd-generator { + padding: 0; +} +@media (max-width: 900px) { + html.minimal .tsd-navigation { + display: none; + } + html.minimal .content-wrap { + padding-left: 0; + } +} + +dl.tsd-comment-tags { + overflow: hidden; +} +dl.tsd-comment-tags dt { + float: left; + padding: 1px 5px; + margin: 0 10px 0 0; + border-radius: 4px; + border: 1px solid #707070; + color: #707070; + font-size: 0.8em; + font-weight: normal; +} +dl.tsd-comment-tags dd { + margin: 0 0 10px 0; +} +dl.tsd-comment-tags dd:before, dl.tsd-comment-tags dd:after { + display: table; + content: " "; +} +dl.tsd-comment-tags dd pre, dl.tsd-comment-tags dd:after { + clear: both; +} +dl.tsd-comment-tags p { + margin: 0; +} + +.tsd-panel.tsd-comment .lead { + font-size: 1.1em; + line-height: 1.333em; + margin-bottom: 2em; +} +.tsd-panel.tsd-comment .lead:last-child { + margin-bottom: 0; +} + +.toggle-protected .tsd-is-private { + display: none; +} + +.toggle-public .tsd-is-private, +.toggle-public .tsd-is-protected, +.toggle-public .tsd-is-private-protected { + display: none; +} + +.toggle-inherited .tsd-is-inherited { + display: none; +} + +.toggle-externals .tsd-is-external { + display: none; +} + +#tsd-filter { + position: relative; + display: inline-block; + height: 40px; + vertical-align: bottom; +} +.no-filter #tsd-filter { + display: none; +} +#tsd-filter .tsd-filter-group { + display: inline-block; + height: 40px; + vertical-align: bottom; + white-space: nowrap; +} +#tsd-filter input { + display: none; +} +@media (max-width: 900px) { + #tsd-filter .tsd-filter-group { + display: block; + position: absolute; + top: 40px; + right: 20px; + height: auto; + background-color: #fff; + visibility: hidden; + transform: translate(50%, 0); + box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); + } + .has-options #tsd-filter .tsd-filter-group { + visibility: visible; + } + .to-has-options #tsd-filter .tsd-filter-group { + animation: fade-in 0.2s; + } + .from-has-options #tsd-filter .tsd-filter-group { + animation: fade-out 0.2s; + } + #tsd-filter label, +#tsd-filter .tsd-select { + display: block; + padding-right: 20px; + } +} + +footer { + border-top: 1px solid #eee; + background-color: #fff; +} +footer.with-border-bottom { + border-bottom: 1px solid #eee; +} +footer .tsd-legend-group { + font-size: 0; +} +footer .tsd-legend { + display: inline-block; + width: 25%; + padding: 0; + font-size: 16px; + list-style: none; + line-height: 1.333em; + vertical-align: top; +} +@media (max-width: 900px) { + footer .tsd-legend { + width: 50%; + } +} + +.tsd-hierarchy { + list-style: square; + padding: 0 0 0 20px; + margin: 0; +} +.tsd-hierarchy .target { + font-weight: bold; +} + +.tsd-index-panel .tsd-index-content { + margin-bottom: -30px !important; +} +.tsd-index-panel .tsd-index-section { + margin-bottom: 30px !important; +} +.tsd-index-panel h3 { + margin: 0 -20px 10px -20px; + padding: 0 20px 10px 20px; + border-bottom: 1px solid #eee; +} +.tsd-index-panel ul.tsd-index-list { + -webkit-column-count: 3; + -moz-column-count: 3; + -ms-column-count: 3; + -o-column-count: 3; + column-count: 3; + -webkit-column-gap: 20px; + -moz-column-gap: 20px; + -ms-column-gap: 20px; + -o-column-gap: 20px; + column-gap: 20px; + padding: 0; + list-style: none; + line-height: 1.333em; +} +@media (max-width: 900px) { + .tsd-index-panel ul.tsd-index-list { + -webkit-column-count: 1; + -moz-column-count: 1; + -ms-column-count: 1; + -o-column-count: 1; + column-count: 1; + } +} +@media (min-width: 901px) and (max-width: 1024px) { + .tsd-index-panel ul.tsd-index-list { + -webkit-column-count: 2; + -moz-column-count: 2; + -ms-column-count: 2; + -o-column-count: 2; + column-count: 2; + } +} +.tsd-index-panel ul.tsd-index-list li { + -webkit-page-break-inside: avoid; + -moz-page-break-inside: avoid; + -ms-page-break-inside: avoid; + -o-page-break-inside: avoid; + page-break-inside: avoid; +} +.tsd-index-panel a, +.tsd-index-panel .tsd-parent-kind-module a { + color: #9600ff; +} +.tsd-index-panel .tsd-parent-kind-interface a { + color: #647F1B; +} +.tsd-index-panel .tsd-parent-kind-enum a { + color: #937210; +} +.tsd-index-panel .tsd-parent-kind-class a { + color: #0672DE; +} +.tsd-index-panel .tsd-kind-module a { + color: #9600ff; +} +.tsd-index-panel .tsd-kind-interface a { + color: #647F1B; +} +.tsd-index-panel .tsd-kind-enum a { + color: #937210; +} +.tsd-index-panel .tsd-kind-class a { + color: #0672DE; +} +.tsd-index-panel .tsd-is-private a { + color: #707070; +} + +.tsd-flag { + display: inline-block; + padding: 1px 5px; + border-radius: 4px; + color: #fff; + background-color: #707070; + text-indent: 0; + font-size: 14px; + font-weight: normal; +} + +.tsd-anchor { + position: absolute; + top: -100px; +} + +.tsd-member { + position: relative; +} +.tsd-member .tsd-anchor + h3 { + margin-top: 0; + margin-bottom: 0; + border-bottom: none; +} +.tsd-member a[data-tsd-kind] { + color: #9600ff; +} +.tsd-member a[data-tsd-kind=Interface] { + color: #647F1B; +} +.tsd-member a[data-tsd-kind=Enum] { + color: #937210; +} +.tsd-member a[data-tsd-kind=Class] { + color: #0672DE; +} +.tsd-member a[data-tsd-kind=Private] { + color: #707070; +} + +.tsd-navigation { + margin: 0 0 0 40px; +} +.tsd-navigation a { + display: block; + padding-top: 2px; + padding-bottom: 2px; + border-left: 2px solid transparent; + color: #222; + text-decoration: none; + transition: border-left-color 0.1s; +} +.tsd-navigation a:hover { + text-decoration: underline; +} +.tsd-navigation ul { + margin: 0; + padding: 0; + list-style: none; +} +.tsd-navigation li { + padding: 0; +} + +.tsd-navigation.primary { + padding-bottom: 40px; +} +.tsd-navigation.primary a { + display: block; + padding-top: 6px; + padding-bottom: 6px; +} +.tsd-navigation.primary ul li a { + padding-left: 5px; +} +.tsd-navigation.primary ul li li a { + padding-left: 25px; +} +.tsd-navigation.primary ul li li li a { + padding-left: 45px; +} +.tsd-navigation.primary ul li li li li a { + padding-left: 65px; +} +.tsd-navigation.primary ul li li li li li a { + padding-left: 85px; +} +.tsd-navigation.primary ul li li li li li li a { + padding-left: 105px; +} +.tsd-navigation.primary > ul { + border-bottom: 1px solid #eee; +} +.tsd-navigation.primary li { + border-top: 1px solid #eee; +} +.tsd-navigation.primary li.current > a { + font-weight: bold; +} +.tsd-navigation.primary li.label span { + display: block; + padding: 20px 0 6px 5px; + color: #707070; +} +.tsd-navigation.primary li.globals + li > span, .tsd-navigation.primary li.globals + li > a { + padding-top: 20px; +} + +.tsd-navigation.secondary { + max-height: calc(100vh - 1rem - 40px); + overflow: auto; + position: -webkit-sticky; + position: sticky; + top: calc(.5rem + 40px); + transition: 0.3s; +} +.tsd-navigation.secondary.tsd-navigation--toolbar-hide { + max-height: calc(100vh - 1rem); + top: 0.5rem; +} +.tsd-navigation.secondary ul { + transition: opacity 0.2s; +} +.tsd-navigation.secondary ul li a { + padding-left: 25px; +} +.tsd-navigation.secondary ul li li a { + padding-left: 45px; +} +.tsd-navigation.secondary ul li li li a { + padding-left: 65px; +} +.tsd-navigation.secondary ul li li li li a { + padding-left: 85px; +} +.tsd-navigation.secondary ul li li li li li a { + padding-left: 105px; +} +.tsd-navigation.secondary ul li li li li li li a { + padding-left: 125px; +} +.tsd-navigation.secondary ul.current a { + border-left-color: #eee; +} +.tsd-navigation.secondary li.focus > a, +.tsd-navigation.secondary ul.current li.focus > a { + border-left-color: #000; +} +.tsd-navigation.secondary li.current { + margin-top: 20px; + margin-bottom: 20px; + border-left-color: #eee; +} +.tsd-navigation.secondary li.current > a { + font-weight: bold; +} + +@media (min-width: 901px) { + .menu-sticky-wrap { + position: static; + } +} + +.tsd-panel { + margin: 20px 0; + padding: 20px; + background-color: #fff; + box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); +} +.tsd-panel:empty { + display: none; +} +.tsd-panel > h1, .tsd-panel > h2, .tsd-panel > h3 { + margin: 1.5em -20px 10px -20px; + padding: 0 20px 10px 20px; + border-bottom: 1px solid #eee; +} +.tsd-panel > h1.tsd-before-signature, .tsd-panel > h2.tsd-before-signature, .tsd-panel > h3.tsd-before-signature { + margin-bottom: 0; + border-bottom: 0; +} +.tsd-panel table { + display: block; + width: 100%; + overflow: auto; + margin-top: 10px; + word-break: normal; + word-break: keep-all; +} +.tsd-panel table th { + font-weight: bold; +} +.tsd-panel table th, .tsd-panel table td { + padding: 6px 13px; + border: 1px solid #ddd; +} +.tsd-panel table tr { + background-color: #fff; + border-top: 1px solid #ccc; +} +.tsd-panel table tr:nth-child(2n) { + background-color: #f8f8f8; +} + +.tsd-panel-group { + margin: 60px 0; +} +.tsd-panel-group > h1, .tsd-panel-group > h2, .tsd-panel-group > h3 { + padding-left: 20px; + padding-right: 20px; +} + +#tsd-search { + transition: background-color 0.2s; +} +#tsd-search .title { + position: relative; + z-index: 2; +} +#tsd-search .field { + position: absolute; + left: 0; + top: 0; + right: 40px; + height: 40px; +} +#tsd-search .field input { + box-sizing: border-box; + position: relative; + top: -50px; + z-index: 1; + width: 100%; + padding: 0 10px; + opacity: 0; + outline: 0; + border: 0; + background: transparent; + color: #222; +} +#tsd-search .field label { + position: absolute; + overflow: hidden; + right: -40px; +} +#tsd-search .field input, +#tsd-search .title { + transition: opacity 0.2s; +} +#tsd-search .results { + position: absolute; + visibility: hidden; + top: 40px; + width: 100%; + margin: 0; + padding: 0; + list-style: none; + box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); +} +#tsd-search .results li { + padding: 0 10px; + background-color: #fdfdfd; +} +#tsd-search .results li:nth-child(even) { + background-color: #fff; +} +#tsd-search .results li.state { + display: none; +} +#tsd-search .results li.current, +#tsd-search .results li:hover { + background-color: #eee; +} +#tsd-search .results a { + display: block; +} +#tsd-search .results a:before { + top: 10px; +} +#tsd-search .results span.parent { + color: #707070; + font-weight: normal; +} +#tsd-search.has-focus { + background-color: #eee; +} +#tsd-search.has-focus .field input { + top: 0; + opacity: 1; +} +#tsd-search.has-focus .title { + z-index: 0; + opacity: 0; +} +#tsd-search.has-focus .results { + visibility: visible; +} +#tsd-search.loading .results li.state.loading { + display: block; +} +#tsd-search.failure .results li.state.failure { + display: block; +} + +.tsd-signature { + margin: 0 0 1em 0; + padding: 10px; + border: 1px solid #eee; + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; + font-size: 14px; + overflow-x: auto; +} +.tsd-signature.tsd-kind-icon { + padding-left: 30px; +} +.tsd-signature.tsd-kind-icon:before { + top: 10px; + left: 10px; +} +.tsd-panel > .tsd-signature { + margin-left: -20px; + margin-right: -20px; + border-width: 1px 0; +} +.tsd-panel > .tsd-signature.tsd-kind-icon { + padding-left: 40px; +} +.tsd-panel > .tsd-signature.tsd-kind-icon:before { + left: 20px; +} + +.tsd-signature-symbol { + color: #707070; + font-weight: normal; +} + +.tsd-signature-type { + font-style: italic; + font-weight: normal; +} + +.tsd-signatures { + padding: 0; + margin: 0 0 1em 0; + border: 1px solid #eee; +} +.tsd-signatures .tsd-signature { + margin: 0; + border-width: 1px 0 0 0; + transition: background-color 0.1s; +} +.tsd-signatures .tsd-signature:first-child { + border-top-width: 0; +} +.tsd-signatures .tsd-signature.current { + background-color: #eee; +} +.tsd-signatures.active > .tsd-signature { + cursor: pointer; +} +.tsd-panel > .tsd-signatures { + margin-left: -20px; + margin-right: -20px; + border-width: 1px 0; +} +.tsd-panel > .tsd-signatures .tsd-signature.tsd-kind-icon { + padding-left: 40px; +} +.tsd-panel > .tsd-signatures .tsd-signature.tsd-kind-icon:before { + left: 20px; +} +.tsd-panel > a.anchor + .tsd-signatures { + border-top-width: 0; + margin-top: -20px; +} + +ul.tsd-descriptions { + position: relative; + overflow: hidden; + padding: 0; + list-style: none; +} +ul.tsd-descriptions.active > .tsd-description { + display: none; +} +ul.tsd-descriptions.active > .tsd-description.current { + display: block; +} +ul.tsd-descriptions.active > .tsd-description.fade-in { + animation: fade-in-delayed 0.3s; +} +ul.tsd-descriptions.active > .tsd-description.fade-out { + animation: fade-out-delayed 0.3s; + position: absolute; + display: block; + top: 0; + left: 0; + right: 0; + opacity: 0; + visibility: hidden; +} +ul.tsd-descriptions h4, ul.tsd-descriptions .tsd-index-panel h3, .tsd-index-panel ul.tsd-descriptions h3 { + font-size: 16px; + margin: 1em 0 0.5em 0; +} + +ul.tsd-parameters, +ul.tsd-type-parameters { + list-style: square; + margin: 0; + padding-left: 20px; +} +ul.tsd-parameters > li.tsd-parameter-signature, +ul.tsd-type-parameters > li.tsd-parameter-signature { + list-style: none; + margin-left: -20px; +} +ul.tsd-parameters h5, +ul.tsd-type-parameters h5 { + font-size: 16px; + margin: 1em 0 0.5em 0; +} +ul.tsd-parameters .tsd-comment, +ul.tsd-type-parameters .tsd-comment { + margin-top: -0.5em; +} + +.tsd-sources { + font-size: 14px; + color: #707070; + margin: 0 0 1em 0; +} +.tsd-sources a { + color: #707070; + text-decoration: underline; +} +.tsd-sources ul, .tsd-sources p { + margin: 0 !important; +} +.tsd-sources ul { + list-style: none; + padding: 0; +} + +.tsd-page-toolbar { + position: fixed; + z-index: 1; + top: 0; + left: 0; + width: 100%; + height: 40px; + color: #333; + background: #fff; + border-bottom: 1px solid #eee; + transition: transform 0.3s linear; +} +.tsd-page-toolbar a { + color: #333; + text-decoration: none; +} +.tsd-page-toolbar a.title { + font-weight: bold; +} +.tsd-page-toolbar a.title:hover { + text-decoration: underline; +} +.tsd-page-toolbar .table-wrap { + display: table; + width: 100%; + height: 40px; +} +.tsd-page-toolbar .table-cell { + display: table-cell; + position: relative; + white-space: nowrap; + line-height: 40px; +} +.tsd-page-toolbar .table-cell:first-child { + width: 100%; +} + +.tsd-page-toolbar--hide { + transform: translateY(-100%); +} + +.tsd-select .tsd-select-list li:before, .tsd-select .tsd-select-label:before, .tsd-widget:before { + content: ""; + display: inline-block; + width: 40px; + height: 40px; + margin: 0 -8px 0 0; + background-image: url(../images/widgets.png); + background-repeat: no-repeat; + text-indent: -1024px; + vertical-align: bottom; +} +@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) { + .tsd-select .tsd-select-list li:before, .tsd-select .tsd-select-label:before, .tsd-widget:before { + background-image: url(../images/widgets@2x.png); + background-size: 320px 40px; + } +} + +.tsd-widget { + display: inline-block; + overflow: hidden; + opacity: 0.6; + height: 40px; + transition: opacity 0.1s, background-color 0.2s; + vertical-align: bottom; + cursor: pointer; +} +.tsd-widget:hover { + opacity: 0.8; +} +.tsd-widget.active { + opacity: 1; + background-color: #eee; +} +.tsd-widget.no-caption { + width: 40px; +} +.tsd-widget.no-caption:before { + margin: 0; +} +.tsd-widget.search:before { + background-position: 0 0; +} +.tsd-widget.menu:before { + background-position: -40px 0; +} +.tsd-widget.options:before { + background-position: -80px 0; +} +.tsd-widget.options, .tsd-widget.menu { + display: none; +} +@media (max-width: 900px) { + .tsd-widget.options, .tsd-widget.menu { + display: inline-block; + } +} +input[type=checkbox] + .tsd-widget:before { + background-position: -120px 0; +} +input[type=checkbox]:checked + .tsd-widget:before { + background-position: -160px 0; +} + +.tsd-select { + position: relative; + display: inline-block; + height: 40px; + transition: opacity 0.1s, background-color 0.2s; + vertical-align: bottom; + cursor: pointer; +} +.tsd-select .tsd-select-label { + opacity: 0.6; + transition: opacity 0.2s; +} +.tsd-select .tsd-select-label:before { + background-position: -240px 0; +} +.tsd-select.active .tsd-select-label { + opacity: 0.8; +} +.tsd-select.active .tsd-select-list { + visibility: visible; + opacity: 1; + transition-delay: 0s; +} +.tsd-select .tsd-select-list { + position: absolute; + visibility: hidden; + top: 40px; + left: 0; + margin: 0; + padding: 0; + opacity: 0; + list-style: none; + box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); + transition: visibility 0s 0.2s, opacity 0.2s; +} +.tsd-select .tsd-select-list li { + padding: 0 20px 0 0; + background-color: #fdfdfd; +} +.tsd-select .tsd-select-list li:before { + background-position: 40px 0; +} +.tsd-select .tsd-select-list li:nth-child(even) { + background-color: #fff; +} +.tsd-select .tsd-select-list li:hover { + background-color: #eee; +} +.tsd-select .tsd-select-list li.selected:before { + background-position: -200px 0; +} +@media (max-width: 900px) { + .tsd-select .tsd-select-list { + top: 0; + left: auto; + right: 100%; + margin-right: -5px; + } + .tsd-select .tsd-select-label:before { + background-position: -280px 0; + } +} + +img { + max-width: 100%; +} diff --git a/tools/doc/typedoc-theme/assets/css/main.sass b/tools/doc/typedoc-theme/assets/css/main.sass deleted file mode 100644 index 8fcf335292..0000000000 --- a/tools/doc/typedoc-theme/assets/css/main.sass +++ /dev/null @@ -1,27 +0,0 @@ -@import constants - -@import vendors/normalize -@import vendors/highlight.js - -@import setup/mixins -@import setup/grid -@import setup/icons -@import setup/animations -@import setup/typography - -@import layouts/default -@import layouts/minimal - -@import elements/comment -@import elements/filter -@import elements/footer -@import elements/hierarchy -@import elements/index -@import elements/member -@import elements/navigation -@import elements/panel -@import elements/search -@import elements/signatures -@import elements/sources -@import elements/toolbar -@import elements/images diff --git a/tools/doc/typedoc-theme/assets/css/setup/_animations.sass b/tools/doc/typedoc-theme/assets/css/setup/_animations.sass deleted file mode 100644 index cbfaf7c773..0000000000 --- a/tools/doc/typedoc-theme/assets/css/setup/_animations.sass +++ /dev/null @@ -1,54 +0,0 @@ -@keyframes fade-in - from - opacity: 0 - to - opacity: 1 - -@keyframes fade-out - from - opacity: 1 - visibility: visible - to - opacity: 0 - -@keyframes fade-in-delayed - 0% - opacity: 0 - 33% - opacity: 0 - 100% - opacity: 1 - -@keyframes fade-out-delayed - 0% - opacity: 1 - visibility: visible - 66% - opacity: 0 - 100% - opacity: 0 - -@keyframes shift-to-left - from - transform: translate(0,0) - to - transform: translate(-25%,0) - -@keyframes unshift-to-left - from - transform: translate(-25%,0) - to - transform: translate(0,0) - -@keyframes pop-in-from-right - from - transform: translate(100%,0) - to - transform: translate(0,0) - -@keyframes pop-out-to-right - from - transform: translate(0,0) - visibility: visible - to - transform: translate(100%,0) \ No newline at end of file diff --git a/tools/doc/typedoc-theme/assets/css/setup/_grid.sass b/tools/doc/typedoc-theme/assets/css/setup/_grid.sass deleted file mode 100644 index 5b9177e0cf..0000000000 --- a/tools/doc/typedoc-theme/assets/css/setup/_grid.sass +++ /dev/null @@ -1,60 +0,0 @@ -=size-xs - @media (max-width: 640px) - & - @content - -=size-sm - @media (min-width: 641px) and (max-width: 900px) - & - @content - -=size-md - @media (min-width: 901px) and (max-width: 1024px) - & - @content - -=size-lg - @media (min-width: 1025px) - & - @content - -=size-xs-sm - @media (max-width: 900px) - & - @content - -=size-md-lg - @media (min-width: 901px) - & - @content - -.container - max-width: 1200px - margin: 0 auto - padding: 0 40px - - +size-xs - padding: 0 20px - -.container-main - padding-bottom: 200px - -.row - +clearfix - display: flex - position: relative - margin: 0 -10px - -.col - @extend %prevent-children-margin - box-sizing: border-box - float: left - padding: 0 10px - -@for $width from 1 to 12 - .col-#{$width} - @extend .col - width: $width / 12 * 100% - - .offset-#{$width} - margin-left: $width / 12 * 100% \ No newline at end of file diff --git a/tools/doc/typedoc-theme/assets/css/setup/_icons.scss b/tools/doc/typedoc-theme/assets/css/setup/_icons.scss deleted file mode 100644 index e2f115c5dd..0000000000 --- a/tools/doc/typedoc-theme/assets/css/setup/_icons.scss +++ /dev/null @@ -1,166 +0,0 @@ -$type-icons: - (object-literal), - (class), - ('class.tsd-has-type-parameter'), - (interface), - ('interface.tsd-has-type-parameter'), - (namespace, module), - (enum), - (enum-member), - (signature), - (type-alias), - ('type-alias.tsd-has-type-parameter'); - -$member-icons: - (variable, property), - (get-signature), - (set-signature), - (accessor), - (function, method, call-signature), - ('function.tsd-has-type-parameter', 'method.tsd-has-type-parameter'), - (constructor, constructor-signature), - (index-signature), - (event), - (property), - (function, method, call-signature), - (event); - -// parameter -// type-literal -// type-parameter - -.tsd-kind-icon { - display: block; - position: relative; - padding-left: 20px; - text-indent: -20px; - - &:before { - content: ''; - display: inline-block; - vertical-align: middle; - width: 17px; - height: 17px; - margin: 0 3px 2px 0; - background-image: url(../images/icons.png); - - @include retina { - background-image: url(../images/icons@2x.png); - background-size: 238px 204px; - } - } -} - -.tsd-signature.tsd-kind-icon:before { - background-position: 0 -153px; -} - -$icon-size: 17px; -$type: -0 * $icon-size; -$type-protected: -1 * $icon-size; -$type-private: -2 * $icon-size; -$member-class-public: -3 * $icon-size; -$member-class-public-inherited: -4 * $icon-size; -$member-class-protected: -5 * $icon-size; -$member-class-protected-inherited: -6 * $icon-size; -$member-private: -7 * $icon-size; -$member: -8 * $icon-size; -$member-protected: -9 * $icon-size; -$member-enum: -10 * $icon-size; -$member-enum-protected: -11 * $icon-size; -$member-interface: -12 * $icon-size; -$member-interface-inherited: -13 * $icon-size; - - -@for $index from 1 through length($type-icons) { - @each $kind in nth($type-icons, $index) { - $selector: '.tsd-kind-' + $kind; - $offset: -#{17 * ($index)}px; - - #{$selector} { - > .tsd-kind-icon:before { - background-position: $type $offset; - } - - &.tsd-is-protected > .tsd-kind-icon:before { - background-position: $type-protected $offset; - } - - &.tsd-is-private > .tsd-kind-icon:before { - background-position: $type-private $offset; - } - } - } -} - -@for $index from 1 through length($member-icons) { - @each $kind in nth($member-icons, $index) { - $offset: -#{17 * ($index - 1)}px; - $selector: '.tsd-kind-' + $kind; - @if $index == 10 { - $selector: '.tsd-is-static'; - } @else if $index > 10 { - $selector: '.tsd-is-static.tsd-kind-' + $kind; - } - - #{$selector} { - > .tsd-kind-icon:before { - background-position: $member $offset; - } - - &.tsd-is-protected > .tsd-kind-icon:before { - background-position: $member-protected $offset; - } - - &.tsd-is-private > .tsd-kind-icon:before { - background-position: $member-private $offset; - } - - &.tsd-parent-kind-class { - > .tsd-kind-icon:before { - background-position: $member-class-public $offset; - } - - &.tsd-is-inherited > .tsd-kind-icon:before { - background-position: $member-class-public-inherited $offset; - } - - &.tsd-is-protected > .tsd-kind-icon:before { - background-position: $member-class-protected $offset; - } - - &.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { - background-position: $member-class-protected-inherited $offset; - } - - &.tsd-is-private > .tsd-kind-icon:before { - background-position: $member-private $offset; - } - } - - &.tsd-parent-kind-enum { - > .tsd-kind-icon:before { - background-position: $member-enum $offset; - } - - &.tsd-is-protected > .tsd-kind-icon:before { - background-position: $member-enum-protected $offset; - } - - &.tsd-is-private > .tsd-kind-icon:before { - background-position: $member-private $offset; - } - } - - &.tsd-parent-kind-interface { - > .tsd-kind-icon:before { - background-position: $member-interface $offset; - } - - &.tsd-is-inherited > .tsd-kind-icon:before { - background-position: $member-interface-inherited $offset; - } - } - } - } -} diff --git a/tools/doc/typedoc-theme/assets/css/setup/_mixins.sass b/tools/doc/typedoc-theme/assets/css/setup/_mixins.sass deleted file mode 100644 index 94cb8d21e2..0000000000 --- a/tools/doc/typedoc-theme/assets/css/setup/_mixins.sass +++ /dev/null @@ -1,30 +0,0 @@ -@mixin vendors($property, $value...) - -webkit-#{$property}: $value - -moz-#{$property}: $value - -ms-#{$property}: $value - -o-#{$property}: $value - #{$property}: $value - -@mixin clearfix - &:after - visibility: hidden - display: block - content: "" - clear: both - height: 0 - -@mixin retina - @media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) - & - @content - -%prevent-children-margin - > :first-child, - > :first-child > :first-child, - > :first-child > :first-child > :first-child - margin-top: 0 - - > :last-child, - > :last-child > :last-child, - > :last-child > :last-child > :last-child - margin-bottom: 0 diff --git a/tools/doc/typedoc-theme/assets/css/setup/_typography.sass b/tools/doc/typedoc-theme/assets/css/setup/_typography.sass deleted file mode 100644 index c05225d7d2..0000000000 --- a/tools/doc/typedoc-theme/assets/css/setup/_typography.sass +++ /dev/null @@ -1,45 +0,0 @@ -body - background: $COLOR_BACKGROUND - font-family: $FONT_FAMILY - font-size: $FONT_SIZE - color: $COLOR_TEXT - -a - color: $COLOR_LINK - text-decoration: none - - &:hover - text-decoration: underline - -code, pre - font-family: $FONT_FAMILY_MONO - padding: 0.2em - margin: 0 - font-size: $FONT_SIZE_MONO - background-color: $COLOR_CODE_BACKGROUND - -pre - padding: 10px - - code - padding: 0 - font-size: 100% - background-color: transparent - -.tsd-typography - line-height: $LINE_HEIGHT - - ul - list-style: square - padding: 0 0 0 20px - margin: 0 - - h4, h5, h6 - font-size: 1em - margin: 0 - - h5, h6 - font-weight: normal - - p, ul, ol - margin: 1em 0 \ No newline at end of file diff --git a/tools/doc/typedoc-theme/assets/css/vendors/_highlight.js.sass b/tools/doc/typedoc-theme/assets/css/vendors/_highlight.js.sass deleted file mode 100644 index d093f7a57c..0000000000 --- a/tools/doc/typedoc-theme/assets/css/vendors/_highlight.js.sass +++ /dev/null @@ -1,50 +0,0 @@ -/* - * - *Visual Studio-like style based on original C# coloring by Jason Diamond - -.hljs - display: inline-block - padding: 0.5em - background: white - color: black - -.hljs-comment, .hljs-annotation, .hljs-template_comment, .diff .hljs-header, .hljs-chunk, .apache .hljs-cbracket - color: #008000 - -.hljs-keyword, .hljs-id, .hljs-built_in, .css .smalltalk .hljs-class, .hljs-winutils, .bash .hljs-variable, .tex .hljs-command, .hljs-request, .hljs-status, .nginx .hljs-title - color: #00f - -.xml .hljs-tag - color: #00f - .hljs-value - color: #00f - -.hljs-string, .hljs-title, .hljs-parent, .hljs-tag .hljs-value, .hljs-rules .hljs-value - color: #a31515 - -.ruby .hljs-symbol - color: #a31515 - .hljs-string - color: #a31515 - -.hljs-template_tag, .django .hljs-variable, .hljs-addition, .hljs-flow, .hljs-stream, .apache .hljs-tag, .hljs-date, .tex .hljs-formula, .coffeescript .hljs-attribute - color: #a31515 - -.ruby .hljs-string, .hljs-decorator, .hljs-filter .hljs-argument, .hljs-localvars, .hljs-array, .hljs-attr_selector, .hljs-pseudo, .hljs-pi, .hljs-doctype, .hljs-deletion, .hljs-envvar, .hljs-shebang, .hljs-preprocessor, .hljs-pragma, .userType, .apache .hljs-sqbracket, .nginx .hljs-built_in, .tex .hljs-special, .hljs-prompt - color: #2b91af - -.hljs-phpdoc, .hljs-javadoc, .hljs-xmlDocTag - color: #808080 - -.vhdl - .hljs-typename - font-weight: bold - .hljs-string - color: #666666 - .hljs-literal - color: #a31515 - .hljs-attribute - color: #00b0e8 - -.xml .hljs-attribute - color: #f00 \ No newline at end of file diff --git a/tools/doc/typedoc-theme/assets/css/vendors/_normalize.sass b/tools/doc/typedoc-theme/assets/css/vendors/_normalize.sass deleted file mode 100644 index 6ce844af3a..0000000000 --- a/tools/doc/typedoc-theme/assets/css/vendors/_normalize.sass +++ /dev/null @@ -1,424 +0,0 @@ -/*! normalize.css v1.1.3 | MIT License | git.io/normalize - -/* ========================================================================== - * HTML5 display definitions - * ========================================================================== - -/** - * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3. - -article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary - display: block - -/** - * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3. - -audio, canvas, video - display: inline-block - *display: inline - *zoom: 1 - -/** - * Prevent modern browsers from displaying `audio` without controls. - * Remove excess height in iOS 5 devices. - -audio:not([controls]) - display: none - height: 0 - -/** - * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4. - * Known issue: no IE 6 support. - -[hidden] - display: none - -/* ========================================================================== - * Base - * ========================================================================== - -/** - * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using - * `em` units. - * 2. Prevent iOS text size adjust after orientation change, without disabling - * user zoom. - -html - font-size: 100% - /* 1 - -ms-text-size-adjust: 100% - /* 2 - -webkit-text-size-adjust: 100% - /* 2 - font-family: sans-serif - -/** - * Address `font-family` inconsistency between `textarea` and other form - * elements. - -button, input, select, textarea - font-family: sans-serif - -/** - * Address margins handled incorrectly in IE 6/7. - -body - margin: 0 - -/* ========================================================================== - * Links - * ========================================================================== - -/** - * Address `outline` inconsistency between Chrome and other browsers. - -a - &:focus - outline: thin dotted - &:active, &:hover - outline: 0 - -/** - * Improve readability when focused and also mouse hovered in all browsers. - -/* ========================================================================== - * Typography - * ========================================================================== - -/** - * Address font sizes and margins set differently in IE 6/7. - * Address font sizes within `section` and `article` in Firefox 4+, Safari 5, - * and Chrome. - -h1 - font-size: 2em - margin: 0.67em 0 - -h2 - font-size: 1.5em - margin: 0.83em 0 - -h3 - font-size: 1.17em - margin: 1em 0 - -h4 - font-size: 1em - margin: 1.33em 0 - -h5 - font-size: 0.83em - margin: 1.67em 0 - -h6 - font-size: 0.67em - margin: 2.33em 0 - -/** - * Address styling not present in IE 7/8/9, Safari 5, and Chrome. - -abbr[title] - border-bottom: 1px dotted - -/** - * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome. - -b, strong - font-weight: bold - -blockquote - margin: 1em 40px - -/** - * Address styling not present in Safari 5 and Chrome. - -dfn - font-style: italic - -/** - * Address differences between Firefox and other browsers. - * Known issue: no IE 6/7 normalization. - -hr - -moz-box-sizing: content-box - box-sizing: content-box - height: 0 - -/** - * Address styling not present in IE 6/7/8/9. - -mark - background: #ff0 - color: #000 - -/** - * Address margins set differently in IE 6/7. - -p, pre - margin: 1em 0 - -/** - * Correct font family set oddly in IE 6, Safari 4/5, and Chrome. - -code, kbd, pre, samp - font-family: monospace, serif - _font-family: 'courier new', monospace - font-size: 1em - -/** - * Improve readability of pre-formatted text in all browsers. - -pre - white-space: pre - white-space: pre-wrap - word-wrap: break-word - -/** - * Address CSS quotes not supported in IE 6/7. - -q - quotes: none - &:before, &:after - content: '' - content: none - -/** - * Address `quotes` property not supported in Safari 4. - -/** - * Address inconsistent and variable font size in all browsers. - -small - font-size: 80% - -/** - * Prevent `sub` and `sup` affecting `line-height` in all browsers. - -sub - font-size: 75% - line-height: 0 - position: relative - vertical-align: baseline - -sup - font-size: 75% - line-height: 0 - position: relative - vertical-align: baseline - top: -0.5em - -sub - bottom: -0.25em - -/* ========================================================================== - * Lists - * ========================================================================== - -/** - * Address margins set differently in IE 6/7. - -dl, menu, ol, ul - margin: 1em 0 - -dd - margin: 0 0 0 40px - -/** - * Address paddings set differently in IE 6/7. - -menu, ol, ul - padding: 0 0 0 40px - -/** - * Correct list images handled incorrectly in IE 7. - -nav - ul, ol - list-style: none - list-style-image: none - -/* ========================================================================== - * Embedded content - * ========================================================================== - -/** - * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3. - * 2. Improve image quality when scaled in IE 7. - -img - border: 0 - /* 1 - -ms-interpolation-mode: bicubic -/* 2 - -/** - * Correct overflow displayed oddly in IE 9. - -svg:not(:root) - overflow: hidden - -/* ========================================================================== - * Figures - * ========================================================================== - -/** - * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11. - -figure, form - margin: 0 - -/* ========================================================================== - * Forms - * ========================================================================== - -/** - * Correct margin displayed oddly in IE 6/7. - -/** - * Define consistent border, margin, and padding. - -fieldset - border: 1px solid #c0c0c0 - margin: 0 2px - padding: 0.35em 0.625em 0.75em - -/** - * 1. Correct color not being inherited in IE 6/7/8/9. - * 2. Correct text not wrapping in Firefox 3. - * 3. Correct alignment displayed oddly in IE 6/7. - -legend - border: 0 - /* 1 - padding: 0 - white-space: normal - /* 2 - *margin-left: -7px -/* 3 - -/** - * 1. Correct font size not being inherited in all browsers. - * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5, - * and Chrome. - * 3. Improve appearance and consistency in all browsers. - -button, input, select, textarea - font-size: 100% - /* 1 - margin: 0 - /* 2 - vertical-align: baseline - /* 3 - *vertical-align: middle -/* 3 - -/** - * Address Firefox 3+ setting `line-height` on `input` using `!important` in - * the UA stylesheet. - -button, input - line-height: normal - -/** - * Address inconsistent `text-transform` inheritance for `button` and `select`. - * All other form control elements do not inherit `text-transform` values. - * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+. - * Correct `select` style inheritance in Firefox 4+ and Opera. - -button, select - text-transform: none - -/** - * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` - * and `video` controls. - * 2. Correct inability to style clickable `input` types in iOS. - * 3. Improve usability and consistency of cursor style between image-type - * `input` and others. - * 4. Remove inner spacing in IE 7 without affecting normal text inputs. - * Known issue: inner spacing remains in IE 6. - -button, html input[type="button"] - -webkit-appearance: button - /* 2 - cursor: pointer - /* 3 - *overflow: visible -/* 4 - -input - &[type="reset"], &[type="submit"] - -webkit-appearance: button - /* 2 - cursor: pointer - /* 3 - *overflow: visible -/* 4 - -/** - * Re-set default cursor for disabled elements. - -button[disabled], html input[disabled] - cursor: default - -/** - * 1. Address box sizing set to content-box in IE 8/9. - * 2. Remove excess padding in IE 8/9. - * 3. Remove excess padding in IE 7. - * Known issue: excess padding remains in IE 6. - -input - &[type="checkbox"], &[type="radio"] - box-sizing: border-box - /* 1 - padding: 0 - /* 2 - *height: 13px - /* 3 - *width: 13px - /* 3 - &[type="search"] - -webkit-appearance: textfield - /* 1 - -moz-box-sizing: content-box - -webkit-box-sizing: content-box - /* 2 - box-sizing: content-box - &::-webkit-search-cancel-button, &::-webkit-search-decoration - -webkit-appearance: none - -/** - * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome. - * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome - * (include `-moz` to future-proof). - -/** - * Remove inner padding and search cancel button in Safari 5 and Chrome - * on OS X. - -/** - * Remove inner padding and border in Firefox 3+. - -button::-moz-focus-inner, input::-moz-focus-inner - border: 0 - padding: 0 - -/** - * 1. Remove default vertical scrollbar in IE 6/7/8/9. - * 2. Improve readability and alignment in all browsers. - -textarea - overflow: auto - /* 1 - vertical-align: top -/* 2 - -/* ========================================================================== - * Tables - * ========================================================================== - -/** - * Remove most spacing between table cells. - -table - border-collapse: collapse - border-spacing: 0 diff --git a/tools/doc/typedoc-theme/assets/js/main.js b/tools/doc/typedoc-theme/assets/js/main.js new file mode 100644 index 0000000000..f8f96a606b --- /dev/null +++ b/tools/doc/typedoc-theme/assets/js/main.js @@ -0,0 +1,248 @@ +/* + * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development"). + * This devtool is not neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +/******/ (() => { // webpackBootstrap +/******/ var __webpack_modules__ = ({ + +/***/ "../node_modules/lunr/lunr.js": +/*!************************************!*\ + !*** ../node_modules/lunr/lunr.js ***! + \************************************/ +/***/ ((module, exports, __webpack_require__) => { + +eval("var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\n * lunr - http://lunrjs.com - A bit like Solr, but much smaller and not as bright - 2.3.9\n * Copyright (C) 2020 Oliver Nightingale\n * @license MIT\n */\n\n;(function(){\n\n/**\n * A convenience function for configuring and constructing\n * a new lunr Index.\n *\n * A lunr.Builder instance is created and the pipeline setup\n * with a trimmer, stop word filter and stemmer.\n *\n * This builder object is yielded to the configuration function\n * that is passed as a parameter, allowing the list of fields\n * and other builder parameters to be customised.\n *\n * All documents _must_ be added within the passed config function.\n *\n * @example\n * var idx = lunr(function () {\n * this.field('title')\n * this.field('body')\n * this.ref('id')\n *\n * documents.forEach(function (doc) {\n * this.add(doc)\n * }, this)\n * })\n *\n * @see {@link lunr.Builder}\n * @see {@link lunr.Pipeline}\n * @see {@link lunr.trimmer}\n * @see {@link lunr.stopWordFilter}\n * @see {@link lunr.stemmer}\n * @namespace {function} lunr\n */\nvar lunr = function (config) {\n var builder = new lunr.Builder\n\n builder.pipeline.add(\n lunr.trimmer,\n lunr.stopWordFilter,\n lunr.stemmer\n )\n\n builder.searchPipeline.add(\n lunr.stemmer\n )\n\n config.call(builder, builder)\n return builder.build()\n}\n\nlunr.version = \"2.3.9\"\n/*!\n * lunr.utils\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * A namespace containing utils for the rest of the lunr library\n * @namespace lunr.utils\n */\nlunr.utils = {}\n\n/**\n * Print a warning message to the console.\n *\n * @param {String} message The message to be printed.\n * @memberOf lunr.utils\n * @function\n */\nlunr.utils.warn = (function (global) {\n /* eslint-disable no-console */\n return function (message) {\n if (global.console && console.warn) {\n console.warn(message)\n }\n }\n /* eslint-enable no-console */\n})(this)\n\n/**\n * Convert an object to a string.\n *\n * In the case of `null` and `undefined` the function returns\n * the empty string, in all other cases the result of calling\n * `toString` on the passed object is returned.\n *\n * @param {Any} obj The object to convert to a string.\n * @return {String} string representation of the passed object.\n * @memberOf lunr.utils\n */\nlunr.utils.asString = function (obj) {\n if (obj === void 0 || obj === null) {\n return \"\"\n } else {\n return obj.toString()\n }\n}\n\n/**\n * Clones an object.\n *\n * Will create a copy of an existing object such that any mutations\n * on the copy cannot affect the original.\n *\n * Only shallow objects are supported, passing a nested object to this\n * function will cause a TypeError.\n *\n * Objects with primitives, and arrays of primitives are supported.\n *\n * @param {Object} obj The object to clone.\n * @return {Object} a clone of the passed object.\n * @throws {TypeError} when a nested object is passed.\n * @memberOf Utils\n */\nlunr.utils.clone = function (obj) {\n if (obj === null || obj === undefined) {\n return obj\n }\n\n var clone = Object.create(null),\n keys = Object.keys(obj)\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i],\n val = obj[key]\n\n if (Array.isArray(val)) {\n clone[key] = val.slice()\n continue\n }\n\n if (typeof val === 'string' ||\n typeof val === 'number' ||\n typeof val === 'boolean') {\n clone[key] = val\n continue\n }\n\n throw new TypeError(\"clone is not deep and does not support nested objects\")\n }\n\n return clone\n}\nlunr.FieldRef = function (docRef, fieldName, stringValue) {\n this.docRef = docRef\n this.fieldName = fieldName\n this._stringValue = stringValue\n}\n\nlunr.FieldRef.joiner = \"/\"\n\nlunr.FieldRef.fromString = function (s) {\n var n = s.indexOf(lunr.FieldRef.joiner)\n\n if (n === -1) {\n throw \"malformed field ref string\"\n }\n\n var fieldRef = s.slice(0, n),\n docRef = s.slice(n + 1)\n\n return new lunr.FieldRef (docRef, fieldRef, s)\n}\n\nlunr.FieldRef.prototype.toString = function () {\n if (this._stringValue == undefined) {\n this._stringValue = this.fieldName + lunr.FieldRef.joiner + this.docRef\n }\n\n return this._stringValue\n}\n/*!\n * lunr.Set\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * A lunr set.\n *\n * @constructor\n */\nlunr.Set = function (elements) {\n this.elements = Object.create(null)\n\n if (elements) {\n this.length = elements.length\n\n for (var i = 0; i < this.length; i++) {\n this.elements[elements[i]] = true\n }\n } else {\n this.length = 0\n }\n}\n\n/**\n * A complete set that contains all elements.\n *\n * @static\n * @readonly\n * @type {lunr.Set}\n */\nlunr.Set.complete = {\n intersect: function (other) {\n return other\n },\n\n union: function () {\n return this\n },\n\n contains: function () {\n return true\n }\n}\n\n/**\n * An empty set that contains no elements.\n *\n * @static\n * @readonly\n * @type {lunr.Set}\n */\nlunr.Set.empty = {\n intersect: function () {\n return this\n },\n\n union: function (other) {\n return other\n },\n\n contains: function () {\n return false\n }\n}\n\n/**\n * Returns true if this set contains the specified object.\n *\n * @param {object} object - Object whose presence in this set is to be tested.\n * @returns {boolean} - True if this set contains the specified object.\n */\nlunr.Set.prototype.contains = function (object) {\n return !!this.elements[object]\n}\n\n/**\n * Returns a new set containing only the elements that are present in both\n * this set and the specified set.\n *\n * @param {lunr.Set} other - set to intersect with this set.\n * @returns {lunr.Set} a new set that is the intersection of this and the specified set.\n */\n\nlunr.Set.prototype.intersect = function (other) {\n var a, b, elements, intersection = []\n\n if (other === lunr.Set.complete) {\n return this\n }\n\n if (other === lunr.Set.empty) {\n return other\n }\n\n if (this.length < other.length) {\n a = this\n b = other\n } else {\n a = other\n b = this\n }\n\n elements = Object.keys(a.elements)\n\n for (var i = 0; i < elements.length; i++) {\n var element = elements[i]\n if (element in b.elements) {\n intersection.push(element)\n }\n }\n\n return new lunr.Set (intersection)\n}\n\n/**\n * Returns a new set combining the elements of this and the specified set.\n *\n * @param {lunr.Set} other - set to union with this set.\n * @return {lunr.Set} a new set that is the union of this and the specified set.\n */\n\nlunr.Set.prototype.union = function (other) {\n if (other === lunr.Set.complete) {\n return lunr.Set.complete\n }\n\n if (other === lunr.Set.empty) {\n return this\n }\n\n return new lunr.Set(Object.keys(this.elements).concat(Object.keys(other.elements)))\n}\n/**\n * A function to calculate the inverse document frequency for\n * a posting. This is shared between the builder and the index\n *\n * @private\n * @param {object} posting - The posting for a given term\n * @param {number} documentCount - The total number of documents.\n */\nlunr.idf = function (posting, documentCount) {\n var documentsWithTerm = 0\n\n for (var fieldName in posting) {\n if (fieldName == '_index') continue // Ignore the term index, its not a field\n documentsWithTerm += Object.keys(posting[fieldName]).length\n }\n\n var x = (documentCount - documentsWithTerm + 0.5) / (documentsWithTerm + 0.5)\n\n return Math.log(1 + Math.abs(x))\n}\n\n/**\n * A token wraps a string representation of a token\n * as it is passed through the text processing pipeline.\n *\n * @constructor\n * @param {string} [str=''] - The string token being wrapped.\n * @param {object} [metadata={}] - Metadata associated with this token.\n */\nlunr.Token = function (str, metadata) {\n this.str = str || \"\"\n this.metadata = metadata || {}\n}\n\n/**\n * Returns the token string that is being wrapped by this object.\n *\n * @returns {string}\n */\nlunr.Token.prototype.toString = function () {\n return this.str\n}\n\n/**\n * A token update function is used when updating or optionally\n * when cloning a token.\n *\n * @callback lunr.Token~updateFunction\n * @param {string} str - The string representation of the token.\n * @param {Object} metadata - All metadata associated with this token.\n */\n\n/**\n * Applies the given function to the wrapped string token.\n *\n * @example\n * token.update(function (str, metadata) {\n * return str.toUpperCase()\n * })\n *\n * @param {lunr.Token~updateFunction} fn - A function to apply to the token string.\n * @returns {lunr.Token}\n */\nlunr.Token.prototype.update = function (fn) {\n this.str = fn(this.str, this.metadata)\n return this\n}\n\n/**\n * Creates a clone of this token. Optionally a function can be\n * applied to the cloned token.\n *\n * @param {lunr.Token~updateFunction} [fn] - An optional function to apply to the cloned token.\n * @returns {lunr.Token}\n */\nlunr.Token.prototype.clone = function (fn) {\n fn = fn || function (s) { return s }\n return new lunr.Token (fn(this.str, this.metadata), this.metadata)\n}\n/*!\n * lunr.tokenizer\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * A function for splitting a string into tokens ready to be inserted into\n * the search index. Uses `lunr.tokenizer.separator` to split strings, change\n * the value of this property to change how strings are split into tokens.\n *\n * This tokenizer will convert its parameter to a string by calling `toString` and\n * then will split this string on the character in `lunr.tokenizer.separator`.\n * Arrays will have their elements converted to strings and wrapped in a lunr.Token.\n *\n * Optional metadata can be passed to the tokenizer, this metadata will be cloned and\n * added as metadata to every token that is created from the object to be tokenized.\n *\n * @static\n * @param {?(string|object|object[])} obj - The object to convert into tokens\n * @param {?object} metadata - Optional metadata to associate with every token\n * @returns {lunr.Token[]}\n * @see {@link lunr.Pipeline}\n */\nlunr.tokenizer = function (obj, metadata) {\n if (obj == null || obj == undefined) {\n return []\n }\n\n if (Array.isArray(obj)) {\n return obj.map(function (t) {\n return new lunr.Token(\n lunr.utils.asString(t).toLowerCase(),\n lunr.utils.clone(metadata)\n )\n })\n }\n\n var str = obj.toString().toLowerCase(),\n len = str.length,\n tokens = []\n\n for (var sliceEnd = 0, sliceStart = 0; sliceEnd <= len; sliceEnd++) {\n var char = str.charAt(sliceEnd),\n sliceLength = sliceEnd - sliceStart\n\n if ((char.match(lunr.tokenizer.separator) || sliceEnd == len)) {\n\n if (sliceLength > 0) {\n var tokenMetadata = lunr.utils.clone(metadata) || {}\n tokenMetadata[\"position\"] = [sliceStart, sliceLength]\n tokenMetadata[\"index\"] = tokens.length\n\n tokens.push(\n new lunr.Token (\n str.slice(sliceStart, sliceEnd),\n tokenMetadata\n )\n )\n }\n\n sliceStart = sliceEnd + 1\n }\n\n }\n\n return tokens\n}\n\n/**\n * The separator used to split a string into tokens. Override this property to change the behaviour of\n * `lunr.tokenizer` behaviour when tokenizing strings. By default this splits on whitespace and hyphens.\n *\n * @static\n * @see lunr.tokenizer\n */\nlunr.tokenizer.separator = /[\\s\\-]+/\n/*!\n * lunr.Pipeline\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * lunr.Pipelines maintain an ordered list of functions to be applied to all\n * tokens in documents entering the search index and queries being ran against\n * the index.\n *\n * An instance of lunr.Index created with the lunr shortcut will contain a\n * pipeline with a stop word filter and an English language stemmer. Extra\n * functions can be added before or after either of these functions or these\n * default functions can be removed.\n *\n * When run the pipeline will call each function in turn, passing a token, the\n * index of that token in the original list of all tokens and finally a list of\n * all the original tokens.\n *\n * The output of functions in the pipeline will be passed to the next function\n * in the pipeline. To exclude a token from entering the index the function\n * should return undefined, the rest of the pipeline will not be called with\n * this token.\n *\n * For serialisation of pipelines to work, all functions used in an instance of\n * a pipeline should be registered with lunr.Pipeline. Registered functions can\n * then be loaded. If trying to load a serialised pipeline that uses functions\n * that are not registered an error will be thrown.\n *\n * If not planning on serialising the pipeline then registering pipeline functions\n * is not necessary.\n *\n * @constructor\n */\nlunr.Pipeline = function () {\n this._stack = []\n}\n\nlunr.Pipeline.registeredFunctions = Object.create(null)\n\n/**\n * A pipeline function maps lunr.Token to lunr.Token. A lunr.Token contains the token\n * string as well as all known metadata. A pipeline function can mutate the token string\n * or mutate (or add) metadata for a given token.\n *\n * A pipeline function can indicate that the passed token should be discarded by returning\n * null, undefined or an empty string. This token will not be passed to any downstream pipeline\n * functions and will not be added to the index.\n *\n * Multiple tokens can be returned by returning an array of tokens. Each token will be passed\n * to any downstream pipeline functions and all will returned tokens will be added to the index.\n *\n * Any number of pipeline functions may be chained together using a lunr.Pipeline.\n *\n * @interface lunr.PipelineFunction\n * @param {lunr.Token} token - A token from the document being processed.\n * @param {number} i - The index of this token in the complete list of tokens for this document/field.\n * @param {lunr.Token[]} tokens - All tokens for this document/field.\n * @returns {(?lunr.Token|lunr.Token[])}\n */\n\n/**\n * Register a function with the pipeline.\n *\n * Functions that are used in the pipeline should be registered if the pipeline\n * needs to be serialised, or a serialised pipeline needs to be loaded.\n *\n * Registering a function does not add it to a pipeline, functions must still be\n * added to instances of the pipeline for them to be used when running a pipeline.\n *\n * @param {lunr.PipelineFunction} fn - The function to check for.\n * @param {String} label - The label to register this function with\n */\nlunr.Pipeline.registerFunction = function (fn, label) {\n if (label in this.registeredFunctions) {\n lunr.utils.warn('Overwriting existing registered function: ' + label)\n }\n\n fn.label = label\n lunr.Pipeline.registeredFunctions[fn.label] = fn\n}\n\n/**\n * Warns if the function is not registered as a Pipeline function.\n *\n * @param {lunr.PipelineFunction} fn - The function to check for.\n * @private\n */\nlunr.Pipeline.warnIfFunctionNotRegistered = function (fn) {\n var isRegistered = fn.label && (fn.label in this.registeredFunctions)\n\n if (!isRegistered) {\n lunr.utils.warn('Function is not registered with pipeline. This may cause problems when serialising the index.\\n', fn)\n }\n}\n\n/**\n * Loads a previously serialised pipeline.\n *\n * All functions to be loaded must already be registered with lunr.Pipeline.\n * If any function from the serialised data has not been registered then an\n * error will be thrown.\n *\n * @param {Object} serialised - The serialised pipeline to load.\n * @returns {lunr.Pipeline}\n */\nlunr.Pipeline.load = function (serialised) {\n var pipeline = new lunr.Pipeline\n\n serialised.forEach(function (fnName) {\n var fn = lunr.Pipeline.registeredFunctions[fnName]\n\n if (fn) {\n pipeline.add(fn)\n } else {\n throw new Error('Cannot load unregistered function: ' + fnName)\n }\n })\n\n return pipeline\n}\n\n/**\n * Adds new functions to the end of the pipeline.\n *\n * Logs a warning if the function has not been registered.\n *\n * @param {lunr.PipelineFunction[]} functions - Any number of functions to add to the pipeline.\n */\nlunr.Pipeline.prototype.add = function () {\n var fns = Array.prototype.slice.call(arguments)\n\n fns.forEach(function (fn) {\n lunr.Pipeline.warnIfFunctionNotRegistered(fn)\n this._stack.push(fn)\n }, this)\n}\n\n/**\n * Adds a single function after a function that already exists in the\n * pipeline.\n *\n * Logs a warning if the function has not been registered.\n *\n * @param {lunr.PipelineFunction} existingFn - A function that already exists in the pipeline.\n * @param {lunr.PipelineFunction} newFn - The new function to add to the pipeline.\n */\nlunr.Pipeline.prototype.after = function (existingFn, newFn) {\n lunr.Pipeline.warnIfFunctionNotRegistered(newFn)\n\n var pos = this._stack.indexOf(existingFn)\n if (pos == -1) {\n throw new Error('Cannot find existingFn')\n }\n\n pos = pos + 1\n this._stack.splice(pos, 0, newFn)\n}\n\n/**\n * Adds a single function before a function that already exists in the\n * pipeline.\n *\n * Logs a warning if the function has not been registered.\n *\n * @param {lunr.PipelineFunction} existingFn - A function that already exists in the pipeline.\n * @param {lunr.PipelineFunction} newFn - The new function to add to the pipeline.\n */\nlunr.Pipeline.prototype.before = function (existingFn, newFn) {\n lunr.Pipeline.warnIfFunctionNotRegistered(newFn)\n\n var pos = this._stack.indexOf(existingFn)\n if (pos == -1) {\n throw new Error('Cannot find existingFn')\n }\n\n this._stack.splice(pos, 0, newFn)\n}\n\n/**\n * Removes a function from the pipeline.\n *\n * @param {lunr.PipelineFunction} fn The function to remove from the pipeline.\n */\nlunr.Pipeline.prototype.remove = function (fn) {\n var pos = this._stack.indexOf(fn)\n if (pos == -1) {\n return\n }\n\n this._stack.splice(pos, 1)\n}\n\n/**\n * Runs the current list of functions that make up the pipeline against the\n * passed tokens.\n *\n * @param {Array} tokens The tokens to run through the pipeline.\n * @returns {Array}\n */\nlunr.Pipeline.prototype.run = function (tokens) {\n var stackLength = this._stack.length\n\n for (var i = 0; i < stackLength; i++) {\n var fn = this._stack[i]\n var memo = []\n\n for (var j = 0; j < tokens.length; j++) {\n var result = fn(tokens[j], j, tokens)\n\n if (result === null || result === void 0 || result === '') continue\n\n if (Array.isArray(result)) {\n for (var k = 0; k < result.length; k++) {\n memo.push(result[k])\n }\n } else {\n memo.push(result)\n }\n }\n\n tokens = memo\n }\n\n return tokens\n}\n\n/**\n * Convenience method for passing a string through a pipeline and getting\n * strings out. This method takes care of wrapping the passed string in a\n * token and mapping the resulting tokens back to strings.\n *\n * @param {string} str - The string to pass through the pipeline.\n * @param {?object} metadata - Optional metadata to associate with the token\n * passed to the pipeline.\n * @returns {string[]}\n */\nlunr.Pipeline.prototype.runString = function (str, metadata) {\n var token = new lunr.Token (str, metadata)\n\n return this.run([token]).map(function (t) {\n return t.toString()\n })\n}\n\n/**\n * Resets the pipeline by removing any existing processors.\n *\n */\nlunr.Pipeline.prototype.reset = function () {\n this._stack = []\n}\n\n/**\n * Returns a representation of the pipeline ready for serialisation.\n *\n * Logs a warning if the function has not been registered.\n *\n * @returns {Array}\n */\nlunr.Pipeline.prototype.toJSON = function () {\n return this._stack.map(function (fn) {\n lunr.Pipeline.warnIfFunctionNotRegistered(fn)\n\n return fn.label\n })\n}\n/*!\n * lunr.Vector\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * A vector is used to construct the vector space of documents and queries. These\n * vectors support operations to determine the similarity between two documents or\n * a document and a query.\n *\n * Normally no parameters are required for initializing a vector, but in the case of\n * loading a previously dumped vector the raw elements can be provided to the constructor.\n *\n * For performance reasons vectors are implemented with a flat array, where an elements\n * index is immediately followed by its value. E.g. [index, value, index, value]. This\n * allows the underlying array to be as sparse as possible and still offer decent\n * performance when being used for vector calculations.\n *\n * @constructor\n * @param {Number[]} [elements] - The flat list of element index and element value pairs.\n */\nlunr.Vector = function (elements) {\n this._magnitude = 0\n this.elements = elements || []\n}\n\n\n/**\n * Calculates the position within the vector to insert a given index.\n *\n * This is used internally by insert and upsert. If there are duplicate indexes then\n * the position is returned as if the value for that index were to be updated, but it\n * is the callers responsibility to check whether there is a duplicate at that index\n *\n * @param {Number} insertIdx - The index at which the element should be inserted.\n * @returns {Number}\n */\nlunr.Vector.prototype.positionForIndex = function (index) {\n // For an empty vector the tuple can be inserted at the beginning\n if (this.elements.length == 0) {\n return 0\n }\n\n var start = 0,\n end = this.elements.length / 2,\n sliceLength = end - start,\n pivotPoint = Math.floor(sliceLength / 2),\n pivotIndex = this.elements[pivotPoint * 2]\n\n while (sliceLength > 1) {\n if (pivotIndex < index) {\n start = pivotPoint\n }\n\n if (pivotIndex > index) {\n end = pivotPoint\n }\n\n if (pivotIndex == index) {\n break\n }\n\n sliceLength = end - start\n pivotPoint = start + Math.floor(sliceLength / 2)\n pivotIndex = this.elements[pivotPoint * 2]\n }\n\n if (pivotIndex == index) {\n return pivotPoint * 2\n }\n\n if (pivotIndex > index) {\n return pivotPoint * 2\n }\n\n if (pivotIndex < index) {\n return (pivotPoint + 1) * 2\n }\n}\n\n/**\n * Inserts an element at an index within the vector.\n *\n * Does not allow duplicates, will throw an error if there is already an entry\n * for this index.\n *\n * @param {Number} insertIdx - The index at which the element should be inserted.\n * @param {Number} val - The value to be inserted into the vector.\n */\nlunr.Vector.prototype.insert = function (insertIdx, val) {\n this.upsert(insertIdx, val, function () {\n throw \"duplicate index\"\n })\n}\n\n/**\n * Inserts or updates an existing index within the vector.\n *\n * @param {Number} insertIdx - The index at which the element should be inserted.\n * @param {Number} val - The value to be inserted into the vector.\n * @param {function} fn - A function that is called for updates, the existing value and the\n * requested value are passed as arguments\n */\nlunr.Vector.prototype.upsert = function (insertIdx, val, fn) {\n this._magnitude = 0\n var position = this.positionForIndex(insertIdx)\n\n if (this.elements[position] == insertIdx) {\n this.elements[position + 1] = fn(this.elements[position + 1], val)\n } else {\n this.elements.splice(position, 0, insertIdx, val)\n }\n}\n\n/**\n * Calculates the magnitude of this vector.\n *\n * @returns {Number}\n */\nlunr.Vector.prototype.magnitude = function () {\n if (this._magnitude) return this._magnitude\n\n var sumOfSquares = 0,\n elementsLength = this.elements.length\n\n for (var i = 1; i < elementsLength; i += 2) {\n var val = this.elements[i]\n sumOfSquares += val * val\n }\n\n return this._magnitude = Math.sqrt(sumOfSquares)\n}\n\n/**\n * Calculates the dot product of this vector and another vector.\n *\n * @param {lunr.Vector} otherVector - The vector to compute the dot product with.\n * @returns {Number}\n */\nlunr.Vector.prototype.dot = function (otherVector) {\n var dotProduct = 0,\n a = this.elements, b = otherVector.elements,\n aLen = a.length, bLen = b.length,\n aVal = 0, bVal = 0,\n i = 0, j = 0\n\n while (i < aLen && j < bLen) {\n aVal = a[i], bVal = b[j]\n if (aVal < bVal) {\n i += 2\n } else if (aVal > bVal) {\n j += 2\n } else if (aVal == bVal) {\n dotProduct += a[i + 1] * b[j + 1]\n i += 2\n j += 2\n }\n }\n\n return dotProduct\n}\n\n/**\n * Calculates the similarity between this vector and another vector.\n *\n * @param {lunr.Vector} otherVector - The other vector to calculate the\n * similarity with.\n * @returns {Number}\n */\nlunr.Vector.prototype.similarity = function (otherVector) {\n return this.dot(otherVector) / this.magnitude() || 0\n}\n\n/**\n * Converts the vector to an array of the elements within the vector.\n *\n * @returns {Number[]}\n */\nlunr.Vector.prototype.toArray = function () {\n var output = new Array (this.elements.length / 2)\n\n for (var i = 1, j = 0; i < this.elements.length; i += 2, j++) {\n output[j] = this.elements[i]\n }\n\n return output\n}\n\n/**\n * A JSON serializable representation of the vector.\n *\n * @returns {Number[]}\n */\nlunr.Vector.prototype.toJSON = function () {\n return this.elements\n}\n/* eslint-disable */\n/*!\n * lunr.stemmer\n * Copyright (C) 2020 Oliver Nightingale\n * Includes code from - http://tartarus.org/~martin/PorterStemmer/js.txt\n */\n\n/**\n * lunr.stemmer is an english language stemmer, this is a JavaScript\n * implementation of the PorterStemmer taken from http://tartarus.org/~martin\n *\n * @static\n * @implements {lunr.PipelineFunction}\n * @param {lunr.Token} token - The string to stem\n * @returns {lunr.Token}\n * @see {@link lunr.Pipeline}\n * @function\n */\nlunr.stemmer = (function(){\n var step2list = {\n \"ational\" : \"ate\",\n \"tional\" : \"tion\",\n \"enci\" : \"ence\",\n \"anci\" : \"ance\",\n \"izer\" : \"ize\",\n \"bli\" : \"ble\",\n \"alli\" : \"al\",\n \"entli\" : \"ent\",\n \"eli\" : \"e\",\n \"ousli\" : \"ous\",\n \"ization\" : \"ize\",\n \"ation\" : \"ate\",\n \"ator\" : \"ate\",\n \"alism\" : \"al\",\n \"iveness\" : \"ive\",\n \"fulness\" : \"ful\",\n \"ousness\" : \"ous\",\n \"aliti\" : \"al\",\n \"iviti\" : \"ive\",\n \"biliti\" : \"ble\",\n \"logi\" : \"log\"\n },\n\n step3list = {\n \"icate\" : \"ic\",\n \"ative\" : \"\",\n \"alize\" : \"al\",\n \"iciti\" : \"ic\",\n \"ical\" : \"ic\",\n \"ful\" : \"\",\n \"ness\" : \"\"\n },\n\n c = \"[^aeiou]\", // consonant\n v = \"[aeiouy]\", // vowel\n C = c + \"[^aeiouy]*\", // consonant sequence\n V = v + \"[aeiou]*\", // vowel sequence\n\n mgr0 = \"^(\" + C + \")?\" + V + C, // [C]VC... is m>0\n meq1 = \"^(\" + C + \")?\" + V + C + \"(\" + V + \")?$\", // [C]VC[V] is m=1\n mgr1 = \"^(\" + C + \")?\" + V + C + V + C, // [C]VCVC... is m>1\n s_v = \"^(\" + C + \")?\" + v; // vowel in stem\n\n var re_mgr0 = new RegExp(mgr0);\n var re_mgr1 = new RegExp(mgr1);\n var re_meq1 = new RegExp(meq1);\n var re_s_v = new RegExp(s_v);\n\n var re_1a = /^(.+?)(ss|i)es$/;\n var re2_1a = /^(.+?)([^s])s$/;\n var re_1b = /^(.+?)eed$/;\n var re2_1b = /^(.+?)(ed|ing)$/;\n var re_1b_2 = /.$/;\n var re2_1b_2 = /(at|bl|iz)$/;\n var re3_1b_2 = new RegExp(\"([^aeiouylsz])\\\\1$\");\n var re4_1b_2 = new RegExp(\"^\" + C + v + \"[^aeiouwxy]$\");\n\n var re_1c = /^(.+?[^aeiou])y$/;\n var re_2 = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/;\n\n var re_3 = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/;\n\n var re_4 = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/;\n var re2_4 = /^(.+?)(s|t)(ion)$/;\n\n var re_5 = /^(.+?)e$/;\n var re_5_1 = /ll$/;\n var re3_5 = new RegExp(\"^\" + C + v + \"[^aeiouwxy]$\");\n\n var porterStemmer = function porterStemmer(w) {\n var stem,\n suffix,\n firstch,\n re,\n re2,\n re3,\n re4;\n\n if (w.length < 3) { return w; }\n\n firstch = w.substr(0,1);\n if (firstch == \"y\") {\n w = firstch.toUpperCase() + w.substr(1);\n }\n\n // Step 1a\n re = re_1a\n re2 = re2_1a;\n\n if (re.test(w)) { w = w.replace(re,\"$1$2\"); }\n else if (re2.test(w)) { w = w.replace(re2,\"$1$2\"); }\n\n // Step 1b\n re = re_1b;\n re2 = re2_1b;\n if (re.test(w)) {\n var fp = re.exec(w);\n re = re_mgr0;\n if (re.test(fp[1])) {\n re = re_1b_2;\n w = w.replace(re,\"\");\n }\n } else if (re2.test(w)) {\n var fp = re2.exec(w);\n stem = fp[1];\n re2 = re_s_v;\n if (re2.test(stem)) {\n w = stem;\n re2 = re2_1b_2;\n re3 = re3_1b_2;\n re4 = re4_1b_2;\n if (re2.test(w)) { w = w + \"e\"; }\n else if (re3.test(w)) { re = re_1b_2; w = w.replace(re,\"\"); }\n else if (re4.test(w)) { w = w + \"e\"; }\n }\n }\n\n // Step 1c - replace suffix y or Y by i if preceded by a non-vowel which is not the first letter of the word (so cry -> cri, by -> by, say -> say)\n re = re_1c;\n if (re.test(w)) {\n var fp = re.exec(w);\n stem = fp[1];\n w = stem + \"i\";\n }\n\n // Step 2\n re = re_2;\n if (re.test(w)) {\n var fp = re.exec(w);\n stem = fp[1];\n suffix = fp[2];\n re = re_mgr0;\n if (re.test(stem)) {\n w = stem + step2list[suffix];\n }\n }\n\n // Step 3\n re = re_3;\n if (re.test(w)) {\n var fp = re.exec(w);\n stem = fp[1];\n suffix = fp[2];\n re = re_mgr0;\n if (re.test(stem)) {\n w = stem + step3list[suffix];\n }\n }\n\n // Step 4\n re = re_4;\n re2 = re2_4;\n if (re.test(w)) {\n var fp = re.exec(w);\n stem = fp[1];\n re = re_mgr1;\n if (re.test(stem)) {\n w = stem;\n }\n } else if (re2.test(w)) {\n var fp = re2.exec(w);\n stem = fp[1] + fp[2];\n re2 = re_mgr1;\n if (re2.test(stem)) {\n w = stem;\n }\n }\n\n // Step 5\n re = re_5;\n if (re.test(w)) {\n var fp = re.exec(w);\n stem = fp[1];\n re = re_mgr1;\n re2 = re_meq1;\n re3 = re3_5;\n if (re.test(stem) || (re2.test(stem) && !(re3.test(stem)))) {\n w = stem;\n }\n }\n\n re = re_5_1;\n re2 = re_mgr1;\n if (re.test(w) && re2.test(w)) {\n re = re_1b_2;\n w = w.replace(re,\"\");\n }\n\n // and turn initial Y back to y\n\n if (firstch == \"y\") {\n w = firstch.toLowerCase() + w.substr(1);\n }\n\n return w;\n };\n\n return function (token) {\n return token.update(porterStemmer);\n }\n})();\n\nlunr.Pipeline.registerFunction(lunr.stemmer, 'stemmer')\n/*!\n * lunr.stopWordFilter\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * lunr.generateStopWordFilter builds a stopWordFilter function from the provided\n * list of stop words.\n *\n * The built in lunr.stopWordFilter is built using this generator and can be used\n * to generate custom stopWordFilters for applications or non English languages.\n *\n * @function\n * @param {Array} token The token to pass through the filter\n * @returns {lunr.PipelineFunction}\n * @see lunr.Pipeline\n * @see lunr.stopWordFilter\n */\nlunr.generateStopWordFilter = function (stopWords) {\n var words = stopWords.reduce(function (memo, stopWord) {\n memo[stopWord] = stopWord\n return memo\n }, {})\n\n return function (token) {\n if (token && words[token.toString()] !== token.toString()) return token\n }\n}\n\n/**\n * lunr.stopWordFilter is an English language stop word list filter, any words\n * contained in the list will not be passed through the filter.\n *\n * This is intended to be used in the Pipeline. If the token does not pass the\n * filter then undefined will be returned.\n *\n * @function\n * @implements {lunr.PipelineFunction}\n * @params {lunr.Token} token - A token to check for being a stop word.\n * @returns {lunr.Token}\n * @see {@link lunr.Pipeline}\n */\nlunr.stopWordFilter = lunr.generateStopWordFilter([\n 'a',\n 'able',\n 'about',\n 'across',\n 'after',\n 'all',\n 'almost',\n 'also',\n 'am',\n 'among',\n 'an',\n 'and',\n 'any',\n 'are',\n 'as',\n 'at',\n 'be',\n 'because',\n 'been',\n 'but',\n 'by',\n 'can',\n 'cannot',\n 'could',\n 'dear',\n 'did',\n 'do',\n 'does',\n 'either',\n 'else',\n 'ever',\n 'every',\n 'for',\n 'from',\n 'get',\n 'got',\n 'had',\n 'has',\n 'have',\n 'he',\n 'her',\n 'hers',\n 'him',\n 'his',\n 'how',\n 'however',\n 'i',\n 'if',\n 'in',\n 'into',\n 'is',\n 'it',\n 'its',\n 'just',\n 'least',\n 'let',\n 'like',\n 'likely',\n 'may',\n 'me',\n 'might',\n 'most',\n 'must',\n 'my',\n 'neither',\n 'no',\n 'nor',\n 'not',\n 'of',\n 'off',\n 'often',\n 'on',\n 'only',\n 'or',\n 'other',\n 'our',\n 'own',\n 'rather',\n 'said',\n 'say',\n 'says',\n 'she',\n 'should',\n 'since',\n 'so',\n 'some',\n 'than',\n 'that',\n 'the',\n 'their',\n 'them',\n 'then',\n 'there',\n 'these',\n 'they',\n 'this',\n 'tis',\n 'to',\n 'too',\n 'twas',\n 'us',\n 'wants',\n 'was',\n 'we',\n 'were',\n 'what',\n 'when',\n 'where',\n 'which',\n 'while',\n 'who',\n 'whom',\n 'why',\n 'will',\n 'with',\n 'would',\n 'yet',\n 'you',\n 'your'\n])\n\nlunr.Pipeline.registerFunction(lunr.stopWordFilter, 'stopWordFilter')\n/*!\n * lunr.trimmer\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * lunr.trimmer is a pipeline function for trimming non word\n * characters from the beginning and end of tokens before they\n * enter the index.\n *\n * This implementation may not work correctly for non latin\n * characters and should either be removed or adapted for use\n * with languages with non-latin characters.\n *\n * @static\n * @implements {lunr.PipelineFunction}\n * @param {lunr.Token} token The token to pass through the filter\n * @returns {lunr.Token}\n * @see lunr.Pipeline\n */\nlunr.trimmer = function (token) {\n return token.update(function (s) {\n return s.replace(/^\\W+/, '').replace(/\\W+$/, '')\n })\n}\n\nlunr.Pipeline.registerFunction(lunr.trimmer, 'trimmer')\n/*!\n * lunr.TokenSet\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * A token set is used to store the unique list of all tokens\n * within an index. Token sets are also used to represent an\n * incoming query to the index, this query token set and index\n * token set are then intersected to find which tokens to look\n * up in the inverted index.\n *\n * A token set can hold multiple tokens, as in the case of the\n * index token set, or it can hold a single token as in the\n * case of a simple query token set.\n *\n * Additionally token sets are used to perform wildcard matching.\n * Leading, contained and trailing wildcards are supported, and\n * from this edit distance matching can also be provided.\n *\n * Token sets are implemented as a minimal finite state automata,\n * where both common prefixes and suffixes are shared between tokens.\n * This helps to reduce the space used for storing the token set.\n *\n * @constructor\n */\nlunr.TokenSet = function () {\n this.final = false\n this.edges = {}\n this.id = lunr.TokenSet._nextId\n lunr.TokenSet._nextId += 1\n}\n\n/**\n * Keeps track of the next, auto increment, identifier to assign\n * to a new tokenSet.\n *\n * TokenSets require a unique identifier to be correctly minimised.\n *\n * @private\n */\nlunr.TokenSet._nextId = 1\n\n/**\n * Creates a TokenSet instance from the given sorted array of words.\n *\n * @param {String[]} arr - A sorted array of strings to create the set from.\n * @returns {lunr.TokenSet}\n * @throws Will throw an error if the input array is not sorted.\n */\nlunr.TokenSet.fromArray = function (arr) {\n var builder = new lunr.TokenSet.Builder\n\n for (var i = 0, len = arr.length; i < len; i++) {\n builder.insert(arr[i])\n }\n\n builder.finish()\n return builder.root\n}\n\n/**\n * Creates a token set from a query clause.\n *\n * @private\n * @param {Object} clause - A single clause from lunr.Query.\n * @param {string} clause.term - The query clause term.\n * @param {number} [clause.editDistance] - The optional edit distance for the term.\n * @returns {lunr.TokenSet}\n */\nlunr.TokenSet.fromClause = function (clause) {\n if ('editDistance' in clause) {\n return lunr.TokenSet.fromFuzzyString(clause.term, clause.editDistance)\n } else {\n return lunr.TokenSet.fromString(clause.term)\n }\n}\n\n/**\n * Creates a token set representing a single string with a specified\n * edit distance.\n *\n * Insertions, deletions, substitutions and transpositions are each\n * treated as an edit distance of 1.\n *\n * Increasing the allowed edit distance will have a dramatic impact\n * on the performance of both creating and intersecting these TokenSets.\n * It is advised to keep the edit distance less than 3.\n *\n * @param {string} str - The string to create the token set from.\n * @param {number} editDistance - The allowed edit distance to match.\n * @returns {lunr.Vector}\n */\nlunr.TokenSet.fromFuzzyString = function (str, editDistance) {\n var root = new lunr.TokenSet\n\n var stack = [{\n node: root,\n editsRemaining: editDistance,\n str: str\n }]\n\n while (stack.length) {\n var frame = stack.pop()\n\n // no edit\n if (frame.str.length > 0) {\n var char = frame.str.charAt(0),\n noEditNode\n\n if (char in frame.node.edges) {\n noEditNode = frame.node.edges[char]\n } else {\n noEditNode = new lunr.TokenSet\n frame.node.edges[char] = noEditNode\n }\n\n if (frame.str.length == 1) {\n noEditNode.final = true\n }\n\n stack.push({\n node: noEditNode,\n editsRemaining: frame.editsRemaining,\n str: frame.str.slice(1)\n })\n }\n\n if (frame.editsRemaining == 0) {\n continue\n }\n\n // insertion\n if (\"*\" in frame.node.edges) {\n var insertionNode = frame.node.edges[\"*\"]\n } else {\n var insertionNode = new lunr.TokenSet\n frame.node.edges[\"*\"] = insertionNode\n }\n\n if (frame.str.length == 0) {\n insertionNode.final = true\n }\n\n stack.push({\n node: insertionNode,\n editsRemaining: frame.editsRemaining - 1,\n str: frame.str\n })\n\n // deletion\n // can only do a deletion if we have enough edits remaining\n // and if there are characters left to delete in the string\n if (frame.str.length > 1) {\n stack.push({\n node: frame.node,\n editsRemaining: frame.editsRemaining - 1,\n str: frame.str.slice(1)\n })\n }\n\n // deletion\n // just removing the last character from the str\n if (frame.str.length == 1) {\n frame.node.final = true\n }\n\n // substitution\n // can only do a substitution if we have enough edits remaining\n // and if there are characters left to substitute\n if (frame.str.length >= 1) {\n if (\"*\" in frame.node.edges) {\n var substitutionNode = frame.node.edges[\"*\"]\n } else {\n var substitutionNode = new lunr.TokenSet\n frame.node.edges[\"*\"] = substitutionNode\n }\n\n if (frame.str.length == 1) {\n substitutionNode.final = true\n }\n\n stack.push({\n node: substitutionNode,\n editsRemaining: frame.editsRemaining - 1,\n str: frame.str.slice(1)\n })\n }\n\n // transposition\n // can only do a transposition if there are edits remaining\n // and there are enough characters to transpose\n if (frame.str.length > 1) {\n var charA = frame.str.charAt(0),\n charB = frame.str.charAt(1),\n transposeNode\n\n if (charB in frame.node.edges) {\n transposeNode = frame.node.edges[charB]\n } else {\n transposeNode = new lunr.TokenSet\n frame.node.edges[charB] = transposeNode\n }\n\n if (frame.str.length == 1) {\n transposeNode.final = true\n }\n\n stack.push({\n node: transposeNode,\n editsRemaining: frame.editsRemaining - 1,\n str: charA + frame.str.slice(2)\n })\n }\n }\n\n return root\n}\n\n/**\n * Creates a TokenSet from a string.\n *\n * The string may contain one or more wildcard characters (*)\n * that will allow wildcard matching when intersecting with\n * another TokenSet.\n *\n * @param {string} str - The string to create a TokenSet from.\n * @returns {lunr.TokenSet}\n */\nlunr.TokenSet.fromString = function (str) {\n var node = new lunr.TokenSet,\n root = node\n\n /*\n * Iterates through all characters within the passed string\n * appending a node for each character.\n *\n * When a wildcard character is found then a self\n * referencing edge is introduced to continually match\n * any number of any characters.\n */\n for (var i = 0, len = str.length; i < len; i++) {\n var char = str[i],\n final = (i == len - 1)\n\n if (char == \"*\") {\n node.edges[char] = node\n node.final = final\n\n } else {\n var next = new lunr.TokenSet\n next.final = final\n\n node.edges[char] = next\n node = next\n }\n }\n\n return root\n}\n\n/**\n * Converts this TokenSet into an array of strings\n * contained within the TokenSet.\n *\n * This is not intended to be used on a TokenSet that\n * contains wildcards, in these cases the results are\n * undefined and are likely to cause an infinite loop.\n *\n * @returns {string[]}\n */\nlunr.TokenSet.prototype.toArray = function () {\n var words = []\n\n var stack = [{\n prefix: \"\",\n node: this\n }]\n\n while (stack.length) {\n var frame = stack.pop(),\n edges = Object.keys(frame.node.edges),\n len = edges.length\n\n if (frame.node.final) {\n /* In Safari, at this point the prefix is sometimes corrupted, see:\n * https://github.com/olivernn/lunr.js/issues/279 Calling any\n * String.prototype method forces Safari to \"cast\" this string to what\n * it's supposed to be, fixing the bug. */\n frame.prefix.charAt(0)\n words.push(frame.prefix)\n }\n\n for (var i = 0; i < len; i++) {\n var edge = edges[i]\n\n stack.push({\n prefix: frame.prefix.concat(edge),\n node: frame.node.edges[edge]\n })\n }\n }\n\n return words\n}\n\n/**\n * Generates a string representation of a TokenSet.\n *\n * This is intended to allow TokenSets to be used as keys\n * in objects, largely to aid the construction and minimisation\n * of a TokenSet. As such it is not designed to be a human\n * friendly representation of the TokenSet.\n *\n * @returns {string}\n */\nlunr.TokenSet.prototype.toString = function () {\n // NOTE: Using Object.keys here as this.edges is very likely\n // to enter 'hash-mode' with many keys being added\n //\n // avoiding a for-in loop here as it leads to the function\n // being de-optimised (at least in V8). From some simple\n // benchmarks the performance is comparable, but allowing\n // V8 to optimize may mean easy performance wins in the future.\n\n if (this._str) {\n return this._str\n }\n\n var str = this.final ? '1' : '0',\n labels = Object.keys(this.edges).sort(),\n len = labels.length\n\n for (var i = 0; i < len; i++) {\n var label = labels[i],\n node = this.edges[label]\n\n str = str + label + node.id\n }\n\n return str\n}\n\n/**\n * Returns a new TokenSet that is the intersection of\n * this TokenSet and the passed TokenSet.\n *\n * This intersection will take into account any wildcards\n * contained within the TokenSet.\n *\n * @param {lunr.TokenSet} b - An other TokenSet to intersect with.\n * @returns {lunr.TokenSet}\n */\nlunr.TokenSet.prototype.intersect = function (b) {\n var output = new lunr.TokenSet,\n frame = undefined\n\n var stack = [{\n qNode: b,\n output: output,\n node: this\n }]\n\n while (stack.length) {\n frame = stack.pop()\n\n // NOTE: As with the #toString method, we are using\n // Object.keys and a for loop instead of a for-in loop\n // as both of these objects enter 'hash' mode, causing\n // the function to be de-optimised in V8\n var qEdges = Object.keys(frame.qNode.edges),\n qLen = qEdges.length,\n nEdges = Object.keys(frame.node.edges),\n nLen = nEdges.length\n\n for (var q = 0; q < qLen; q++) {\n var qEdge = qEdges[q]\n\n for (var n = 0; n < nLen; n++) {\n var nEdge = nEdges[n]\n\n if (nEdge == qEdge || qEdge == '*') {\n var node = frame.node.edges[nEdge],\n qNode = frame.qNode.edges[qEdge],\n final = node.final && qNode.final,\n next = undefined\n\n if (nEdge in frame.output.edges) {\n // an edge already exists for this character\n // no need to create a new node, just set the finality\n // bit unless this node is already final\n next = frame.output.edges[nEdge]\n next.final = next.final || final\n\n } else {\n // no edge exists yet, must create one\n // set the finality bit and insert it\n // into the output\n next = new lunr.TokenSet\n next.final = final\n frame.output.edges[nEdge] = next\n }\n\n stack.push({\n qNode: qNode,\n output: next,\n node: node\n })\n }\n }\n }\n }\n\n return output\n}\nlunr.TokenSet.Builder = function () {\n this.previousWord = \"\"\n this.root = new lunr.TokenSet\n this.uncheckedNodes = []\n this.minimizedNodes = {}\n}\n\nlunr.TokenSet.Builder.prototype.insert = function (word) {\n var node,\n commonPrefix = 0\n\n if (word < this.previousWord) {\n throw new Error (\"Out of order word insertion\")\n }\n\n for (var i = 0; i < word.length && i < this.previousWord.length; i++) {\n if (word[i] != this.previousWord[i]) break\n commonPrefix++\n }\n\n this.minimize(commonPrefix)\n\n if (this.uncheckedNodes.length == 0) {\n node = this.root\n } else {\n node = this.uncheckedNodes[this.uncheckedNodes.length - 1].child\n }\n\n for (var i = commonPrefix; i < word.length; i++) {\n var nextNode = new lunr.TokenSet,\n char = word[i]\n\n node.edges[char] = nextNode\n\n this.uncheckedNodes.push({\n parent: node,\n char: char,\n child: nextNode\n })\n\n node = nextNode\n }\n\n node.final = true\n this.previousWord = word\n}\n\nlunr.TokenSet.Builder.prototype.finish = function () {\n this.minimize(0)\n}\n\nlunr.TokenSet.Builder.prototype.minimize = function (downTo) {\n for (var i = this.uncheckedNodes.length - 1; i >= downTo; i--) {\n var node = this.uncheckedNodes[i],\n childKey = node.child.toString()\n\n if (childKey in this.minimizedNodes) {\n node.parent.edges[node.char] = this.minimizedNodes[childKey]\n } else {\n // Cache the key for this node since\n // we know it can't change anymore\n node.child._str = childKey\n\n this.minimizedNodes[childKey] = node.child\n }\n\n this.uncheckedNodes.pop()\n }\n}\n/*!\n * lunr.Index\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * An index contains the built index of all documents and provides a query interface\n * to the index.\n *\n * Usually instances of lunr.Index will not be created using this constructor, instead\n * lunr.Builder should be used to construct new indexes, or lunr.Index.load should be\n * used to load previously built and serialized indexes.\n *\n * @constructor\n * @param {Object} attrs - The attributes of the built search index.\n * @param {Object} attrs.invertedIndex - An index of term/field to document reference.\n * @param {Object} attrs.fieldVectors - Field vectors\n * @param {lunr.TokenSet} attrs.tokenSet - An set of all corpus tokens.\n * @param {string[]} attrs.fields - The names of indexed document fields.\n * @param {lunr.Pipeline} attrs.pipeline - The pipeline to use for search terms.\n */\nlunr.Index = function (attrs) {\n this.invertedIndex = attrs.invertedIndex\n this.fieldVectors = attrs.fieldVectors\n this.tokenSet = attrs.tokenSet\n this.fields = attrs.fields\n this.pipeline = attrs.pipeline\n}\n\n/**\n * A result contains details of a document matching a search query.\n * @typedef {Object} lunr.Index~Result\n * @property {string} ref - The reference of the document this result represents.\n * @property {number} score - A number between 0 and 1 representing how similar this document is to the query.\n * @property {lunr.MatchData} matchData - Contains metadata about this match including which term(s) caused the match.\n */\n\n/**\n * Although lunr provides the ability to create queries using lunr.Query, it also provides a simple\n * query language which itself is parsed into an instance of lunr.Query.\n *\n * For programmatically building queries it is advised to directly use lunr.Query, the query language\n * is best used for human entered text rather than program generated text.\n *\n * At its simplest queries can just be a single term, e.g. `hello`, multiple terms are also supported\n * and will be combined with OR, e.g `hello world` will match documents that contain either 'hello'\n * or 'world', though those that contain both will rank higher in the results.\n *\n * Wildcards can be included in terms to match one or more unspecified characters, these wildcards can\n * be inserted anywhere within the term, and more than one wildcard can exist in a single term. Adding\n * wildcards will increase the number of documents that will be found but can also have a negative\n * impact on query performance, especially with wildcards at the beginning of a term.\n *\n * Terms can be restricted to specific fields, e.g. `title:hello`, only documents with the term\n * hello in the title field will match this query. Using a field not present in the index will lead\n * to an error being thrown.\n *\n * Modifiers can also be added to terms, lunr supports edit distance and boost modifiers on terms. A term\n * boost will make documents matching that term score higher, e.g. `foo^5`. Edit distance is also supported\n * to provide fuzzy matching, e.g. 'hello~2' will match documents with hello with an edit distance of 2.\n * Avoid large values for edit distance to improve query performance.\n *\n * Each term also supports a presence modifier. By default a term's presence in document is optional, however\n * this can be changed to either required or prohibited. For a term's presence to be required in a document the\n * term should be prefixed with a '+', e.g. `+foo bar` is a search for documents that must contain 'foo' and\n * optionally contain 'bar'. Conversely a leading '-' sets the terms presence to prohibited, i.e. it must not\n * appear in a document, e.g. `-foo bar` is a search for documents that do not contain 'foo' but may contain 'bar'.\n *\n * To escape special characters the backslash character '\\' can be used, this allows searches to include\n * characters that would normally be considered modifiers, e.g. `foo\\~2` will search for a term \"foo~2\" instead\n * of attempting to apply a boost of 2 to the search term \"foo\".\n *\n * @typedef {string} lunr.Index~QueryString\n * @example Simple single term query\n * hello\n * @example Multiple term query\n * hello world\n * @example term scoped to a field\n * title:hello\n * @example term with a boost of 10\n * hello^10\n * @example term with an edit distance of 2\n * hello~2\n * @example terms with presence modifiers\n * -foo +bar baz\n */\n\n/**\n * Performs a search against the index using lunr query syntax.\n *\n * Results will be returned sorted by their score, the most relevant results\n * will be returned first. For details on how the score is calculated, please see\n * the {@link https://lunrjs.com/guides/searching.html#scoring|guide}.\n *\n * For more programmatic querying use lunr.Index#query.\n *\n * @param {lunr.Index~QueryString} queryString - A string containing a lunr query.\n * @throws {lunr.QueryParseError} If the passed query string cannot be parsed.\n * @returns {lunr.Index~Result[]}\n */\nlunr.Index.prototype.search = function (queryString) {\n return this.query(function (query) {\n var parser = new lunr.QueryParser(queryString, query)\n parser.parse()\n })\n}\n\n/**\n * A query builder callback provides a query object to be used to express\n * the query to perform on the index.\n *\n * @callback lunr.Index~queryBuilder\n * @param {lunr.Query} query - The query object to build up.\n * @this lunr.Query\n */\n\n/**\n * Performs a query against the index using the yielded lunr.Query object.\n *\n * If performing programmatic queries against the index, this method is preferred\n * over lunr.Index#search so as to avoid the additional query parsing overhead.\n *\n * A query object is yielded to the supplied function which should be used to\n * express the query to be run against the index.\n *\n * Note that although this function takes a callback parameter it is _not_ an\n * asynchronous operation, the callback is just yielded a query object to be\n * customized.\n *\n * @param {lunr.Index~queryBuilder} fn - A function that is used to build the query.\n * @returns {lunr.Index~Result[]}\n */\nlunr.Index.prototype.query = function (fn) {\n // for each query clause\n // * process terms\n // * expand terms from token set\n // * find matching documents and metadata\n // * get document vectors\n // * score documents\n\n var query = new lunr.Query(this.fields),\n matchingFields = Object.create(null),\n queryVectors = Object.create(null),\n termFieldCache = Object.create(null),\n requiredMatches = Object.create(null),\n prohibitedMatches = Object.create(null)\n\n /*\n * To support field level boosts a query vector is created per\n * field. An empty vector is eagerly created to support negated\n * queries.\n */\n for (var i = 0; i < this.fields.length; i++) {\n queryVectors[this.fields[i]] = new lunr.Vector\n }\n\n fn.call(query, query)\n\n for (var i = 0; i < query.clauses.length; i++) {\n /*\n * Unless the pipeline has been disabled for this term, which is\n * the case for terms with wildcards, we need to pass the clause\n * term through the search pipeline. A pipeline returns an array\n * of processed terms. Pipeline functions may expand the passed\n * term, which means we may end up performing multiple index lookups\n * for a single query term.\n */\n var clause = query.clauses[i],\n terms = null,\n clauseMatches = lunr.Set.empty\n\n if (clause.usePipeline) {\n terms = this.pipeline.runString(clause.term, {\n fields: clause.fields\n })\n } else {\n terms = [clause.term]\n }\n\n for (var m = 0; m < terms.length; m++) {\n var term = terms[m]\n\n /*\n * Each term returned from the pipeline needs to use the same query\n * clause object, e.g. the same boost and or edit distance. The\n * simplest way to do this is to re-use the clause object but mutate\n * its term property.\n */\n clause.term = term\n\n /*\n * From the term in the clause we create a token set which will then\n * be used to intersect the indexes token set to get a list of terms\n * to lookup in the inverted index\n */\n var termTokenSet = lunr.TokenSet.fromClause(clause),\n expandedTerms = this.tokenSet.intersect(termTokenSet).toArray()\n\n /*\n * If a term marked as required does not exist in the tokenSet it is\n * impossible for the search to return any matches. We set all the field\n * scoped required matches set to empty and stop examining any further\n * clauses.\n */\n if (expandedTerms.length === 0 && clause.presence === lunr.Query.presence.REQUIRED) {\n for (var k = 0; k < clause.fields.length; k++) {\n var field = clause.fields[k]\n requiredMatches[field] = lunr.Set.empty\n }\n\n break\n }\n\n for (var j = 0; j < expandedTerms.length; j++) {\n /*\n * For each term get the posting and termIndex, this is required for\n * building the query vector.\n */\n var expandedTerm = expandedTerms[j],\n posting = this.invertedIndex[expandedTerm],\n termIndex = posting._index\n\n for (var k = 0; k < clause.fields.length; k++) {\n /*\n * For each field that this query term is scoped by (by default\n * all fields are in scope) we need to get all the document refs\n * that have this term in that field.\n *\n * The posting is the entry in the invertedIndex for the matching\n * term from above.\n */\n var field = clause.fields[k],\n fieldPosting = posting[field],\n matchingDocumentRefs = Object.keys(fieldPosting),\n termField = expandedTerm + \"/\" + field,\n matchingDocumentsSet = new lunr.Set(matchingDocumentRefs)\n\n /*\n * if the presence of this term is required ensure that the matching\n * documents are added to the set of required matches for this clause.\n *\n */\n if (clause.presence == lunr.Query.presence.REQUIRED) {\n clauseMatches = clauseMatches.union(matchingDocumentsSet)\n\n if (requiredMatches[field] === undefined) {\n requiredMatches[field] = lunr.Set.complete\n }\n }\n\n /*\n * if the presence of this term is prohibited ensure that the matching\n * documents are added to the set of prohibited matches for this field,\n * creating that set if it does not yet exist.\n */\n if (clause.presence == lunr.Query.presence.PROHIBITED) {\n if (prohibitedMatches[field] === undefined) {\n prohibitedMatches[field] = lunr.Set.empty\n }\n\n prohibitedMatches[field] = prohibitedMatches[field].union(matchingDocumentsSet)\n\n /*\n * Prohibited matches should not be part of the query vector used for\n * similarity scoring and no metadata should be extracted so we continue\n * to the next field\n */\n continue\n }\n\n /*\n * The query field vector is populated using the termIndex found for\n * the term and a unit value with the appropriate boost applied.\n * Using upsert because there could already be an entry in the vector\n * for the term we are working with. In that case we just add the scores\n * together.\n */\n queryVectors[field].upsert(termIndex, clause.boost, function (a, b) { return a + b })\n\n /**\n * If we've already seen this term, field combo then we've already collected\n * the matching documents and metadata, no need to go through all that again\n */\n if (termFieldCache[termField]) {\n continue\n }\n\n for (var l = 0; l < matchingDocumentRefs.length; l++) {\n /*\n * All metadata for this term/field/document triple\n * are then extracted and collected into an instance\n * of lunr.MatchData ready to be returned in the query\n * results\n */\n var matchingDocumentRef = matchingDocumentRefs[l],\n matchingFieldRef = new lunr.FieldRef (matchingDocumentRef, field),\n metadata = fieldPosting[matchingDocumentRef],\n fieldMatch\n\n if ((fieldMatch = matchingFields[matchingFieldRef]) === undefined) {\n matchingFields[matchingFieldRef] = new lunr.MatchData (expandedTerm, field, metadata)\n } else {\n fieldMatch.add(expandedTerm, field, metadata)\n }\n\n }\n\n termFieldCache[termField] = true\n }\n }\n }\n\n /**\n * If the presence was required we need to update the requiredMatches field sets.\n * We do this after all fields for the term have collected their matches because\n * the clause terms presence is required in _any_ of the fields not _all_ of the\n * fields.\n */\n if (clause.presence === lunr.Query.presence.REQUIRED) {\n for (var k = 0; k < clause.fields.length; k++) {\n var field = clause.fields[k]\n requiredMatches[field] = requiredMatches[field].intersect(clauseMatches)\n }\n }\n }\n\n /**\n * Need to combine the field scoped required and prohibited\n * matching documents into a global set of required and prohibited\n * matches\n */\n var allRequiredMatches = lunr.Set.complete,\n allProhibitedMatches = lunr.Set.empty\n\n for (var i = 0; i < this.fields.length; i++) {\n var field = this.fields[i]\n\n if (requiredMatches[field]) {\n allRequiredMatches = allRequiredMatches.intersect(requiredMatches[field])\n }\n\n if (prohibitedMatches[field]) {\n allProhibitedMatches = allProhibitedMatches.union(prohibitedMatches[field])\n }\n }\n\n var matchingFieldRefs = Object.keys(matchingFields),\n results = [],\n matches = Object.create(null)\n\n /*\n * If the query is negated (contains only prohibited terms)\n * we need to get _all_ fieldRefs currently existing in the\n * index. This is only done when we know that the query is\n * entirely prohibited terms to avoid any cost of getting all\n * fieldRefs unnecessarily.\n *\n * Additionally, blank MatchData must be created to correctly\n * populate the results.\n */\n if (query.isNegated()) {\n matchingFieldRefs = Object.keys(this.fieldVectors)\n\n for (var i = 0; i < matchingFieldRefs.length; i++) {\n var matchingFieldRef = matchingFieldRefs[i]\n var fieldRef = lunr.FieldRef.fromString(matchingFieldRef)\n matchingFields[matchingFieldRef] = new lunr.MatchData\n }\n }\n\n for (var i = 0; i < matchingFieldRefs.length; i++) {\n /*\n * Currently we have document fields that match the query, but we\n * need to return documents. The matchData and scores are combined\n * from multiple fields belonging to the same document.\n *\n * Scores are calculated by field, using the query vectors created\n * above, and combined into a final document score using addition.\n */\n var fieldRef = lunr.FieldRef.fromString(matchingFieldRefs[i]),\n docRef = fieldRef.docRef\n\n if (!allRequiredMatches.contains(docRef)) {\n continue\n }\n\n if (allProhibitedMatches.contains(docRef)) {\n continue\n }\n\n var fieldVector = this.fieldVectors[fieldRef],\n score = queryVectors[fieldRef.fieldName].similarity(fieldVector),\n docMatch\n\n if ((docMatch = matches[docRef]) !== undefined) {\n docMatch.score += score\n docMatch.matchData.combine(matchingFields[fieldRef])\n } else {\n var match = {\n ref: docRef,\n score: score,\n matchData: matchingFields[fieldRef]\n }\n matches[docRef] = match\n results.push(match)\n }\n }\n\n /*\n * Sort the results objects by score, highest first.\n */\n return results.sort(function (a, b) {\n return b.score - a.score\n })\n}\n\n/**\n * Prepares the index for JSON serialization.\n *\n * The schema for this JSON blob will be described in a\n * separate JSON schema file.\n *\n * @returns {Object}\n */\nlunr.Index.prototype.toJSON = function () {\n var invertedIndex = Object.keys(this.invertedIndex)\n .sort()\n .map(function (term) {\n return [term, this.invertedIndex[term]]\n }, this)\n\n var fieldVectors = Object.keys(this.fieldVectors)\n .map(function (ref) {\n return [ref, this.fieldVectors[ref].toJSON()]\n }, this)\n\n return {\n version: lunr.version,\n fields: this.fields,\n fieldVectors: fieldVectors,\n invertedIndex: invertedIndex,\n pipeline: this.pipeline.toJSON()\n }\n}\n\n/**\n * Loads a previously serialized lunr.Index\n *\n * @param {Object} serializedIndex - A previously serialized lunr.Index\n * @returns {lunr.Index}\n */\nlunr.Index.load = function (serializedIndex) {\n var attrs = {},\n fieldVectors = {},\n serializedVectors = serializedIndex.fieldVectors,\n invertedIndex = Object.create(null),\n serializedInvertedIndex = serializedIndex.invertedIndex,\n tokenSetBuilder = new lunr.TokenSet.Builder,\n pipeline = lunr.Pipeline.load(serializedIndex.pipeline)\n\n if (serializedIndex.version != lunr.version) {\n lunr.utils.warn(\"Version mismatch when loading serialised index. Current version of lunr '\" + lunr.version + \"' does not match serialized index '\" + serializedIndex.version + \"'\")\n }\n\n for (var i = 0; i < serializedVectors.length; i++) {\n var tuple = serializedVectors[i],\n ref = tuple[0],\n elements = tuple[1]\n\n fieldVectors[ref] = new lunr.Vector(elements)\n }\n\n for (var i = 0; i < serializedInvertedIndex.length; i++) {\n var tuple = serializedInvertedIndex[i],\n term = tuple[0],\n posting = tuple[1]\n\n tokenSetBuilder.insert(term)\n invertedIndex[term] = posting\n }\n\n tokenSetBuilder.finish()\n\n attrs.fields = serializedIndex.fields\n\n attrs.fieldVectors = fieldVectors\n attrs.invertedIndex = invertedIndex\n attrs.tokenSet = tokenSetBuilder.root\n attrs.pipeline = pipeline\n\n return new lunr.Index(attrs)\n}\n/*!\n * lunr.Builder\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * lunr.Builder performs indexing on a set of documents and\n * returns instances of lunr.Index ready for querying.\n *\n * All configuration of the index is done via the builder, the\n * fields to index, the document reference, the text processing\n * pipeline and document scoring parameters are all set on the\n * builder before indexing.\n *\n * @constructor\n * @property {string} _ref - Internal reference to the document reference field.\n * @property {string[]} _fields - Internal reference to the document fields to index.\n * @property {object} invertedIndex - The inverted index maps terms to document fields.\n * @property {object} documentTermFrequencies - Keeps track of document term frequencies.\n * @property {object} documentLengths - Keeps track of the length of documents added to the index.\n * @property {lunr.tokenizer} tokenizer - Function for splitting strings into tokens for indexing.\n * @property {lunr.Pipeline} pipeline - The pipeline performs text processing on tokens before indexing.\n * @property {lunr.Pipeline} searchPipeline - A pipeline for processing search terms before querying the index.\n * @property {number} documentCount - Keeps track of the total number of documents indexed.\n * @property {number} _b - A parameter to control field length normalization, setting this to 0 disabled normalization, 1 fully normalizes field lengths, the default value is 0.75.\n * @property {number} _k1 - A parameter to control how quickly an increase in term frequency results in term frequency saturation, the default value is 1.2.\n * @property {number} termIndex - A counter incremented for each unique term, used to identify a terms position in the vector space.\n * @property {array} metadataWhitelist - A list of metadata keys that have been whitelisted for entry in the index.\n */\nlunr.Builder = function () {\n this._ref = \"id\"\n this._fields = Object.create(null)\n this._documents = Object.create(null)\n this.invertedIndex = Object.create(null)\n this.fieldTermFrequencies = {}\n this.fieldLengths = {}\n this.tokenizer = lunr.tokenizer\n this.pipeline = new lunr.Pipeline\n this.searchPipeline = new lunr.Pipeline\n this.documentCount = 0\n this._b = 0.75\n this._k1 = 1.2\n this.termIndex = 0\n this.metadataWhitelist = []\n}\n\n/**\n * Sets the document field used as the document reference. Every document must have this field.\n * The type of this field in the document should be a string, if it is not a string it will be\n * coerced into a string by calling toString.\n *\n * The default ref is 'id'.\n *\n * The ref should _not_ be changed during indexing, it should be set before any documents are\n * added to the index. Changing it during indexing can lead to inconsistent results.\n *\n * @param {string} ref - The name of the reference field in the document.\n */\nlunr.Builder.prototype.ref = function (ref) {\n this._ref = ref\n}\n\n/**\n * A function that is used to extract a field from a document.\n *\n * Lunr expects a field to be at the top level of a document, if however the field\n * is deeply nested within a document an extractor function can be used to extract\n * the right field for indexing.\n *\n * @callback fieldExtractor\n * @param {object} doc - The document being added to the index.\n * @returns {?(string|object|object[])} obj - The object that will be indexed for this field.\n * @example Extracting a nested field\n * function (doc) { return doc.nested.field }\n */\n\n/**\n * Adds a field to the list of document fields that will be indexed. Every document being\n * indexed should have this field. Null values for this field in indexed documents will\n * not cause errors but will limit the chance of that document being retrieved by searches.\n *\n * All fields should be added before adding documents to the index. Adding fields after\n * a document has been indexed will have no effect on already indexed documents.\n *\n * Fields can be boosted at build time. This allows terms within that field to have more\n * importance when ranking search results. Use a field boost to specify that matches within\n * one field are more important than other fields.\n *\n * @param {string} fieldName - The name of a field to index in all documents.\n * @param {object} attributes - Optional attributes associated with this field.\n * @param {number} [attributes.boost=1] - Boost applied to all terms within this field.\n * @param {fieldExtractor} [attributes.extractor] - Function to extract a field from a document.\n * @throws {RangeError} fieldName cannot contain unsupported characters '/'\n */\nlunr.Builder.prototype.field = function (fieldName, attributes) {\n if (/\\//.test(fieldName)) {\n throw new RangeError (\"Field '\" + fieldName + \"' contains illegal character '/'\")\n }\n\n this._fields[fieldName] = attributes || {}\n}\n\n/**\n * A parameter to tune the amount of field length normalisation that is applied when\n * calculating relevance scores. A value of 0 will completely disable any normalisation\n * and a value of 1 will fully normalise field lengths. The default is 0.75. Values of b\n * will be clamped to the range 0 - 1.\n *\n * @param {number} number - The value to set for this tuning parameter.\n */\nlunr.Builder.prototype.b = function (number) {\n if (number < 0) {\n this._b = 0\n } else if (number > 1) {\n this._b = 1\n } else {\n this._b = number\n }\n}\n\n/**\n * A parameter that controls the speed at which a rise in term frequency results in term\n * frequency saturation. The default value is 1.2. Setting this to a higher value will give\n * slower saturation levels, a lower value will result in quicker saturation.\n *\n * @param {number} number - The value to set for this tuning parameter.\n */\nlunr.Builder.prototype.k1 = function (number) {\n this._k1 = number\n}\n\n/**\n * Adds a document to the index.\n *\n * Before adding fields to the index the index should have been fully setup, with the document\n * ref and all fields to index already having been specified.\n *\n * The document must have a field name as specified by the ref (by default this is 'id') and\n * it should have all fields defined for indexing, though null or undefined values will not\n * cause errors.\n *\n * Entire documents can be boosted at build time. Applying a boost to a document indicates that\n * this document should rank higher in search results than other documents.\n *\n * @param {object} doc - The document to add to the index.\n * @param {object} attributes - Optional attributes associated with this document.\n * @param {number} [attributes.boost=1] - Boost applied to all terms within this document.\n */\nlunr.Builder.prototype.add = function (doc, attributes) {\n var docRef = doc[this._ref],\n fields = Object.keys(this._fields)\n\n this._documents[docRef] = attributes || {}\n this.documentCount += 1\n\n for (var i = 0; i < fields.length; i++) {\n var fieldName = fields[i],\n extractor = this._fields[fieldName].extractor,\n field = extractor ? extractor(doc) : doc[fieldName],\n tokens = this.tokenizer(field, {\n fields: [fieldName]\n }),\n terms = this.pipeline.run(tokens),\n fieldRef = new lunr.FieldRef (docRef, fieldName),\n fieldTerms = Object.create(null)\n\n this.fieldTermFrequencies[fieldRef] = fieldTerms\n this.fieldLengths[fieldRef] = 0\n\n // store the length of this field for this document\n this.fieldLengths[fieldRef] += terms.length\n\n // calculate term frequencies for this field\n for (var j = 0; j < terms.length; j++) {\n var term = terms[j]\n\n if (fieldTerms[term] == undefined) {\n fieldTerms[term] = 0\n }\n\n fieldTerms[term] += 1\n\n // add to inverted index\n // create an initial posting if one doesn't exist\n if (this.invertedIndex[term] == undefined) {\n var posting = Object.create(null)\n posting[\"_index\"] = this.termIndex\n this.termIndex += 1\n\n for (var k = 0; k < fields.length; k++) {\n posting[fields[k]] = Object.create(null)\n }\n\n this.invertedIndex[term] = posting\n }\n\n // add an entry for this term/fieldName/docRef to the invertedIndex\n if (this.invertedIndex[term][fieldName][docRef] == undefined) {\n this.invertedIndex[term][fieldName][docRef] = Object.create(null)\n }\n\n // store all whitelisted metadata about this token in the\n // inverted index\n for (var l = 0; l < this.metadataWhitelist.length; l++) {\n var metadataKey = this.metadataWhitelist[l],\n metadata = term.metadata[metadataKey]\n\n if (this.invertedIndex[term][fieldName][docRef][metadataKey] == undefined) {\n this.invertedIndex[term][fieldName][docRef][metadataKey] = []\n }\n\n this.invertedIndex[term][fieldName][docRef][metadataKey].push(metadata)\n }\n }\n\n }\n}\n\n/**\n * Calculates the average document length for this index\n *\n * @private\n */\nlunr.Builder.prototype.calculateAverageFieldLengths = function () {\n\n var fieldRefs = Object.keys(this.fieldLengths),\n numberOfFields = fieldRefs.length,\n accumulator = {},\n documentsWithField = {}\n\n for (var i = 0; i < numberOfFields; i++) {\n var fieldRef = lunr.FieldRef.fromString(fieldRefs[i]),\n field = fieldRef.fieldName\n\n documentsWithField[field] || (documentsWithField[field] = 0)\n documentsWithField[field] += 1\n\n accumulator[field] || (accumulator[field] = 0)\n accumulator[field] += this.fieldLengths[fieldRef]\n }\n\n var fields = Object.keys(this._fields)\n\n for (var i = 0; i < fields.length; i++) {\n var fieldName = fields[i]\n accumulator[fieldName] = accumulator[fieldName] / documentsWithField[fieldName]\n }\n\n this.averageFieldLength = accumulator\n}\n\n/**\n * Builds a vector space model of every document using lunr.Vector\n *\n * @private\n */\nlunr.Builder.prototype.createFieldVectors = function () {\n var fieldVectors = {},\n fieldRefs = Object.keys(this.fieldTermFrequencies),\n fieldRefsLength = fieldRefs.length,\n termIdfCache = Object.create(null)\n\n for (var i = 0; i < fieldRefsLength; i++) {\n var fieldRef = lunr.FieldRef.fromString(fieldRefs[i]),\n fieldName = fieldRef.fieldName,\n fieldLength = this.fieldLengths[fieldRef],\n fieldVector = new lunr.Vector,\n termFrequencies = this.fieldTermFrequencies[fieldRef],\n terms = Object.keys(termFrequencies),\n termsLength = terms.length\n\n\n var fieldBoost = this._fields[fieldName].boost || 1,\n docBoost = this._documents[fieldRef.docRef].boost || 1\n\n for (var j = 0; j < termsLength; j++) {\n var term = terms[j],\n tf = termFrequencies[term],\n termIndex = this.invertedIndex[term]._index,\n idf, score, scoreWithPrecision\n\n if (termIdfCache[term] === undefined) {\n idf = lunr.idf(this.invertedIndex[term], this.documentCount)\n termIdfCache[term] = idf\n } else {\n idf = termIdfCache[term]\n }\n\n score = idf * ((this._k1 + 1) * tf) / (this._k1 * (1 - this._b + this._b * (fieldLength / this.averageFieldLength[fieldName])) + tf)\n score *= fieldBoost\n score *= docBoost\n scoreWithPrecision = Math.round(score * 1000) / 1000\n // Converts 1.23456789 to 1.234.\n // Reducing the precision so that the vectors take up less\n // space when serialised. Doing it now so that they behave\n // the same before and after serialisation. Also, this is\n // the fastest approach to reducing a number's precision in\n // JavaScript.\n\n fieldVector.insert(termIndex, scoreWithPrecision)\n }\n\n fieldVectors[fieldRef] = fieldVector\n }\n\n this.fieldVectors = fieldVectors\n}\n\n/**\n * Creates a token set of all tokens in the index using lunr.TokenSet\n *\n * @private\n */\nlunr.Builder.prototype.createTokenSet = function () {\n this.tokenSet = lunr.TokenSet.fromArray(\n Object.keys(this.invertedIndex).sort()\n )\n}\n\n/**\n * Builds the index, creating an instance of lunr.Index.\n *\n * This completes the indexing process and should only be called\n * once all documents have been added to the index.\n *\n * @returns {lunr.Index}\n */\nlunr.Builder.prototype.build = function () {\n this.calculateAverageFieldLengths()\n this.createFieldVectors()\n this.createTokenSet()\n\n return new lunr.Index({\n invertedIndex: this.invertedIndex,\n fieldVectors: this.fieldVectors,\n tokenSet: this.tokenSet,\n fields: Object.keys(this._fields),\n pipeline: this.searchPipeline\n })\n}\n\n/**\n * Applies a plugin to the index builder.\n *\n * A plugin is a function that is called with the index builder as its context.\n * Plugins can be used to customise or extend the behaviour of the index\n * in some way. A plugin is just a function, that encapsulated the custom\n * behaviour that should be applied when building the index.\n *\n * The plugin function will be called with the index builder as its argument, additional\n * arguments can also be passed when calling use. The function will be called\n * with the index builder as its context.\n *\n * @param {Function} plugin The plugin to apply.\n */\nlunr.Builder.prototype.use = function (fn) {\n var args = Array.prototype.slice.call(arguments, 1)\n args.unshift(this)\n fn.apply(this, args)\n}\n/**\n * Contains and collects metadata about a matching document.\n * A single instance of lunr.MatchData is returned as part of every\n * lunr.Index~Result.\n *\n * @constructor\n * @param {string} term - The term this match data is associated with\n * @param {string} field - The field in which the term was found\n * @param {object} metadata - The metadata recorded about this term in this field\n * @property {object} metadata - A cloned collection of metadata associated with this document.\n * @see {@link lunr.Index~Result}\n */\nlunr.MatchData = function (term, field, metadata) {\n var clonedMetadata = Object.create(null),\n metadataKeys = Object.keys(metadata || {})\n\n // Cloning the metadata to prevent the original\n // being mutated during match data combination.\n // Metadata is kept in an array within the inverted\n // index so cloning the data can be done with\n // Array#slice\n for (var i = 0; i < metadataKeys.length; i++) {\n var key = metadataKeys[i]\n clonedMetadata[key] = metadata[key].slice()\n }\n\n this.metadata = Object.create(null)\n\n if (term !== undefined) {\n this.metadata[term] = Object.create(null)\n this.metadata[term][field] = clonedMetadata\n }\n}\n\n/**\n * An instance of lunr.MatchData will be created for every term that matches a\n * document. However only one instance is required in a lunr.Index~Result. This\n * method combines metadata from another instance of lunr.MatchData with this\n * objects metadata.\n *\n * @param {lunr.MatchData} otherMatchData - Another instance of match data to merge with this one.\n * @see {@link lunr.Index~Result}\n */\nlunr.MatchData.prototype.combine = function (otherMatchData) {\n var terms = Object.keys(otherMatchData.metadata)\n\n for (var i = 0; i < terms.length; i++) {\n var term = terms[i],\n fields = Object.keys(otherMatchData.metadata[term])\n\n if (this.metadata[term] == undefined) {\n this.metadata[term] = Object.create(null)\n }\n\n for (var j = 0; j < fields.length; j++) {\n var field = fields[j],\n keys = Object.keys(otherMatchData.metadata[term][field])\n\n if (this.metadata[term][field] == undefined) {\n this.metadata[term][field] = Object.create(null)\n }\n\n for (var k = 0; k < keys.length; k++) {\n var key = keys[k]\n\n if (this.metadata[term][field][key] == undefined) {\n this.metadata[term][field][key] = otherMatchData.metadata[term][field][key]\n } else {\n this.metadata[term][field][key] = this.metadata[term][field][key].concat(otherMatchData.metadata[term][field][key])\n }\n\n }\n }\n }\n}\n\n/**\n * Add metadata for a term/field pair to this instance of match data.\n *\n * @param {string} term - The term this match data is associated with\n * @param {string} field - The field in which the term was found\n * @param {object} metadata - The metadata recorded about this term in this field\n */\nlunr.MatchData.prototype.add = function (term, field, metadata) {\n if (!(term in this.metadata)) {\n this.metadata[term] = Object.create(null)\n this.metadata[term][field] = metadata\n return\n }\n\n if (!(field in this.metadata[term])) {\n this.metadata[term][field] = metadata\n return\n }\n\n var metadataKeys = Object.keys(metadata)\n\n for (var i = 0; i < metadataKeys.length; i++) {\n var key = metadataKeys[i]\n\n if (key in this.metadata[term][field]) {\n this.metadata[term][field][key] = this.metadata[term][field][key].concat(metadata[key])\n } else {\n this.metadata[term][field][key] = metadata[key]\n }\n }\n}\n/**\n * A lunr.Query provides a programmatic way of defining queries to be performed\n * against a {@link lunr.Index}.\n *\n * Prefer constructing a lunr.Query using the {@link lunr.Index#query} method\n * so the query object is pre-initialized with the right index fields.\n *\n * @constructor\n * @property {lunr.Query~Clause[]} clauses - An array of query clauses.\n * @property {string[]} allFields - An array of all available fields in a lunr.Index.\n */\nlunr.Query = function (allFields) {\n this.clauses = []\n this.allFields = allFields\n}\n\n/**\n * Constants for indicating what kind of automatic wildcard insertion will be used when constructing a query clause.\n *\n * This allows wildcards to be added to the beginning and end of a term without having to manually do any string\n * concatenation.\n *\n * The wildcard constants can be bitwise combined to select both leading and trailing wildcards.\n *\n * @constant\n * @default\n * @property {number} wildcard.NONE - The term will have no wildcards inserted, this is the default behaviour\n * @property {number} wildcard.LEADING - Prepend the term with a wildcard, unless a leading wildcard already exists\n * @property {number} wildcard.TRAILING - Append a wildcard to the term, unless a trailing wildcard already exists\n * @see lunr.Query~Clause\n * @see lunr.Query#clause\n * @see lunr.Query#term\n * @example query term with trailing wildcard\n * query.term('foo', { wildcard: lunr.Query.wildcard.TRAILING })\n * @example query term with leading and trailing wildcard\n * query.term('foo', {\n * wildcard: lunr.Query.wildcard.LEADING | lunr.Query.wildcard.TRAILING\n * })\n */\n\nlunr.Query.wildcard = new String (\"*\")\nlunr.Query.wildcard.NONE = 0\nlunr.Query.wildcard.LEADING = 1\nlunr.Query.wildcard.TRAILING = 2\n\n/**\n * Constants for indicating what kind of presence a term must have in matching documents.\n *\n * @constant\n * @enum {number}\n * @see lunr.Query~Clause\n * @see lunr.Query#clause\n * @see lunr.Query#term\n * @example query term with required presence\n * query.term('foo', { presence: lunr.Query.presence.REQUIRED })\n */\nlunr.Query.presence = {\n /**\n * Term's presence in a document is optional, this is the default value.\n */\n OPTIONAL: 1,\n\n /**\n * Term's presence in a document is required, documents that do not contain\n * this term will not be returned.\n */\n REQUIRED: 2,\n\n /**\n * Term's presence in a document is prohibited, documents that do contain\n * this term will not be returned.\n */\n PROHIBITED: 3\n}\n\n/**\n * A single clause in a {@link lunr.Query} contains a term and details on how to\n * match that term against a {@link lunr.Index}.\n *\n * @typedef {Object} lunr.Query~Clause\n * @property {string[]} fields - The fields in an index this clause should be matched against.\n * @property {number} [boost=1] - Any boost that should be applied when matching this clause.\n * @property {number} [editDistance] - Whether the term should have fuzzy matching applied, and how fuzzy the match should be.\n * @property {boolean} [usePipeline] - Whether the term should be passed through the search pipeline.\n * @property {number} [wildcard=lunr.Query.wildcard.NONE] - Whether the term should have wildcards appended or prepended.\n * @property {number} [presence=lunr.Query.presence.OPTIONAL] - The terms presence in any matching documents.\n */\n\n/**\n * Adds a {@link lunr.Query~Clause} to this query.\n *\n * Unless the clause contains the fields to be matched all fields will be matched. In addition\n * a default boost of 1 is applied to the clause.\n *\n * @param {lunr.Query~Clause} clause - The clause to add to this query.\n * @see lunr.Query~Clause\n * @returns {lunr.Query}\n */\nlunr.Query.prototype.clause = function (clause) {\n if (!('fields' in clause)) {\n clause.fields = this.allFields\n }\n\n if (!('boost' in clause)) {\n clause.boost = 1\n }\n\n if (!('usePipeline' in clause)) {\n clause.usePipeline = true\n }\n\n if (!('wildcard' in clause)) {\n clause.wildcard = lunr.Query.wildcard.NONE\n }\n\n if ((clause.wildcard & lunr.Query.wildcard.LEADING) && (clause.term.charAt(0) != lunr.Query.wildcard)) {\n clause.term = \"*\" + clause.term\n }\n\n if ((clause.wildcard & lunr.Query.wildcard.TRAILING) && (clause.term.slice(-1) != lunr.Query.wildcard)) {\n clause.term = \"\" + clause.term + \"*\"\n }\n\n if (!('presence' in clause)) {\n clause.presence = lunr.Query.presence.OPTIONAL\n }\n\n this.clauses.push(clause)\n\n return this\n}\n\n/**\n * A negated query is one in which every clause has a presence of\n * prohibited. These queries require some special processing to return\n * the expected results.\n *\n * @returns boolean\n */\nlunr.Query.prototype.isNegated = function () {\n for (var i = 0; i < this.clauses.length; i++) {\n if (this.clauses[i].presence != lunr.Query.presence.PROHIBITED) {\n return false\n }\n }\n\n return true\n}\n\n/**\n * Adds a term to the current query, under the covers this will create a {@link lunr.Query~Clause}\n * to the list of clauses that make up this query.\n *\n * The term is used as is, i.e. no tokenization will be performed by this method. Instead conversion\n * to a token or token-like string should be done before calling this method.\n *\n * The term will be converted to a string by calling `toString`. Multiple terms can be passed as an\n * array, each term in the array will share the same options.\n *\n * @param {object|object[]} term - The term(s) to add to the query.\n * @param {object} [options] - Any additional properties to add to the query clause.\n * @returns {lunr.Query}\n * @see lunr.Query#clause\n * @see lunr.Query~Clause\n * @example adding a single term to a query\n * query.term(\"foo\")\n * @example adding a single term to a query and specifying search fields, term boost and automatic trailing wildcard\n * query.term(\"foo\", {\n * fields: [\"title\"],\n * boost: 10,\n * wildcard: lunr.Query.wildcard.TRAILING\n * })\n * @example using lunr.tokenizer to convert a string to tokens before using them as terms\n * query.term(lunr.tokenizer(\"foo bar\"))\n */\nlunr.Query.prototype.term = function (term, options) {\n if (Array.isArray(term)) {\n term.forEach(function (t) { this.term(t, lunr.utils.clone(options)) }, this)\n return this\n }\n\n var clause = options || {}\n clause.term = term.toString()\n\n this.clause(clause)\n\n return this\n}\nlunr.QueryParseError = function (message, start, end) {\n this.name = \"QueryParseError\"\n this.message = message\n this.start = start\n this.end = end\n}\n\nlunr.QueryParseError.prototype = new Error\nlunr.QueryLexer = function (str) {\n this.lexemes = []\n this.str = str\n this.length = str.length\n this.pos = 0\n this.start = 0\n this.escapeCharPositions = []\n}\n\nlunr.QueryLexer.prototype.run = function () {\n var state = lunr.QueryLexer.lexText\n\n while (state) {\n state = state(this)\n }\n}\n\nlunr.QueryLexer.prototype.sliceString = function () {\n var subSlices = [],\n sliceStart = this.start,\n sliceEnd = this.pos\n\n for (var i = 0; i < this.escapeCharPositions.length; i++) {\n sliceEnd = this.escapeCharPositions[i]\n subSlices.push(this.str.slice(sliceStart, sliceEnd))\n sliceStart = sliceEnd + 1\n }\n\n subSlices.push(this.str.slice(sliceStart, this.pos))\n this.escapeCharPositions.length = 0\n\n return subSlices.join('')\n}\n\nlunr.QueryLexer.prototype.emit = function (type) {\n this.lexemes.push({\n type: type,\n str: this.sliceString(),\n start: this.start,\n end: this.pos\n })\n\n this.start = this.pos\n}\n\nlunr.QueryLexer.prototype.escapeCharacter = function () {\n this.escapeCharPositions.push(this.pos - 1)\n this.pos += 1\n}\n\nlunr.QueryLexer.prototype.next = function () {\n if (this.pos >= this.length) {\n return lunr.QueryLexer.EOS\n }\n\n var char = this.str.charAt(this.pos)\n this.pos += 1\n return char\n}\n\nlunr.QueryLexer.prototype.width = function () {\n return this.pos - this.start\n}\n\nlunr.QueryLexer.prototype.ignore = function () {\n if (this.start == this.pos) {\n this.pos += 1\n }\n\n this.start = this.pos\n}\n\nlunr.QueryLexer.prototype.backup = function () {\n this.pos -= 1\n}\n\nlunr.QueryLexer.prototype.acceptDigitRun = function () {\n var char, charCode\n\n do {\n char = this.next()\n charCode = char.charCodeAt(0)\n } while (charCode > 47 && charCode < 58)\n\n if (char != lunr.QueryLexer.EOS) {\n this.backup()\n }\n}\n\nlunr.QueryLexer.prototype.more = function () {\n return this.pos < this.length\n}\n\nlunr.QueryLexer.EOS = 'EOS'\nlunr.QueryLexer.FIELD = 'FIELD'\nlunr.QueryLexer.TERM = 'TERM'\nlunr.QueryLexer.EDIT_DISTANCE = 'EDIT_DISTANCE'\nlunr.QueryLexer.BOOST = 'BOOST'\nlunr.QueryLexer.PRESENCE = 'PRESENCE'\n\nlunr.QueryLexer.lexField = function (lexer) {\n lexer.backup()\n lexer.emit(lunr.QueryLexer.FIELD)\n lexer.ignore()\n return lunr.QueryLexer.lexText\n}\n\nlunr.QueryLexer.lexTerm = function (lexer) {\n if (lexer.width() > 1) {\n lexer.backup()\n lexer.emit(lunr.QueryLexer.TERM)\n }\n\n lexer.ignore()\n\n if (lexer.more()) {\n return lunr.QueryLexer.lexText\n }\n}\n\nlunr.QueryLexer.lexEditDistance = function (lexer) {\n lexer.ignore()\n lexer.acceptDigitRun()\n lexer.emit(lunr.QueryLexer.EDIT_DISTANCE)\n return lunr.QueryLexer.lexText\n}\n\nlunr.QueryLexer.lexBoost = function (lexer) {\n lexer.ignore()\n lexer.acceptDigitRun()\n lexer.emit(lunr.QueryLexer.BOOST)\n return lunr.QueryLexer.lexText\n}\n\nlunr.QueryLexer.lexEOS = function (lexer) {\n if (lexer.width() > 0) {\n lexer.emit(lunr.QueryLexer.TERM)\n }\n}\n\n// This matches the separator used when tokenising fields\n// within a document. These should match otherwise it is\n// not possible to search for some tokens within a document.\n//\n// It is possible for the user to change the separator on the\n// tokenizer so it _might_ clash with any other of the special\n// characters already used within the search string, e.g. :.\n//\n// This means that it is possible to change the separator in\n// such a way that makes some words unsearchable using a search\n// string.\nlunr.QueryLexer.termSeparator = lunr.tokenizer.separator\n\nlunr.QueryLexer.lexText = function (lexer) {\n while (true) {\n var char = lexer.next()\n\n if (char == lunr.QueryLexer.EOS) {\n return lunr.QueryLexer.lexEOS\n }\n\n // Escape character is '\\'\n if (char.charCodeAt(0) == 92) {\n lexer.escapeCharacter()\n continue\n }\n\n if (char == \":\") {\n return lunr.QueryLexer.lexField\n }\n\n if (char == \"~\") {\n lexer.backup()\n if (lexer.width() > 0) {\n lexer.emit(lunr.QueryLexer.TERM)\n }\n return lunr.QueryLexer.lexEditDistance\n }\n\n if (char == \"^\") {\n lexer.backup()\n if (lexer.width() > 0) {\n lexer.emit(lunr.QueryLexer.TERM)\n }\n return lunr.QueryLexer.lexBoost\n }\n\n // \"+\" indicates term presence is required\n // checking for length to ensure that only\n // leading \"+\" are considered\n if (char == \"+\" && lexer.width() === 1) {\n lexer.emit(lunr.QueryLexer.PRESENCE)\n return lunr.QueryLexer.lexText\n }\n\n // \"-\" indicates term presence is prohibited\n // checking for length to ensure that only\n // leading \"-\" are considered\n if (char == \"-\" && lexer.width() === 1) {\n lexer.emit(lunr.QueryLexer.PRESENCE)\n return lunr.QueryLexer.lexText\n }\n\n if (char.match(lunr.QueryLexer.termSeparator)) {\n return lunr.QueryLexer.lexTerm\n }\n }\n}\n\nlunr.QueryParser = function (str, query) {\n this.lexer = new lunr.QueryLexer (str)\n this.query = query\n this.currentClause = {}\n this.lexemeIdx = 0\n}\n\nlunr.QueryParser.prototype.parse = function () {\n this.lexer.run()\n this.lexemes = this.lexer.lexemes\n\n var state = lunr.QueryParser.parseClause\n\n while (state) {\n state = state(this)\n }\n\n return this.query\n}\n\nlunr.QueryParser.prototype.peekLexeme = function () {\n return this.lexemes[this.lexemeIdx]\n}\n\nlunr.QueryParser.prototype.consumeLexeme = function () {\n var lexeme = this.peekLexeme()\n this.lexemeIdx += 1\n return lexeme\n}\n\nlunr.QueryParser.prototype.nextClause = function () {\n var completedClause = this.currentClause\n this.query.clause(completedClause)\n this.currentClause = {}\n}\n\nlunr.QueryParser.parseClause = function (parser) {\n var lexeme = parser.peekLexeme()\n\n if (lexeme == undefined) {\n return\n }\n\n switch (lexeme.type) {\n case lunr.QueryLexer.PRESENCE:\n return lunr.QueryParser.parsePresence\n case lunr.QueryLexer.FIELD:\n return lunr.QueryParser.parseField\n case lunr.QueryLexer.TERM:\n return lunr.QueryParser.parseTerm\n default:\n var errorMessage = \"expected either a field or a term, found \" + lexeme.type\n\n if (lexeme.str.length >= 1) {\n errorMessage += \" with value '\" + lexeme.str + \"'\"\n }\n\n throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)\n }\n}\n\nlunr.QueryParser.parsePresence = function (parser) {\n var lexeme = parser.consumeLexeme()\n\n if (lexeme == undefined) {\n return\n }\n\n switch (lexeme.str) {\n case \"-\":\n parser.currentClause.presence = lunr.Query.presence.PROHIBITED\n break\n case \"+\":\n parser.currentClause.presence = lunr.Query.presence.REQUIRED\n break\n default:\n var errorMessage = \"unrecognised presence operator'\" + lexeme.str + \"'\"\n throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)\n }\n\n var nextLexeme = parser.peekLexeme()\n\n if (nextLexeme == undefined) {\n var errorMessage = \"expecting term or field, found nothing\"\n throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)\n }\n\n switch (nextLexeme.type) {\n case lunr.QueryLexer.FIELD:\n return lunr.QueryParser.parseField\n case lunr.QueryLexer.TERM:\n return lunr.QueryParser.parseTerm\n default:\n var errorMessage = \"expecting term or field, found '\" + nextLexeme.type + \"'\"\n throw new lunr.QueryParseError (errorMessage, nextLexeme.start, nextLexeme.end)\n }\n}\n\nlunr.QueryParser.parseField = function (parser) {\n var lexeme = parser.consumeLexeme()\n\n if (lexeme == undefined) {\n return\n }\n\n if (parser.query.allFields.indexOf(lexeme.str) == -1) {\n var possibleFields = parser.query.allFields.map(function (f) { return \"'\" + f + \"'\" }).join(', '),\n errorMessage = \"unrecognised field '\" + lexeme.str + \"', possible fields: \" + possibleFields\n\n throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)\n }\n\n parser.currentClause.fields = [lexeme.str]\n\n var nextLexeme = parser.peekLexeme()\n\n if (nextLexeme == undefined) {\n var errorMessage = \"expecting term, found nothing\"\n throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)\n }\n\n switch (nextLexeme.type) {\n case lunr.QueryLexer.TERM:\n return lunr.QueryParser.parseTerm\n default:\n var errorMessage = \"expecting term, found '\" + nextLexeme.type + \"'\"\n throw new lunr.QueryParseError (errorMessage, nextLexeme.start, nextLexeme.end)\n }\n}\n\nlunr.QueryParser.parseTerm = function (parser) {\n var lexeme = parser.consumeLexeme()\n\n if (lexeme == undefined) {\n return\n }\n\n parser.currentClause.term = lexeme.str.toLowerCase()\n\n if (lexeme.str.indexOf(\"*\") != -1) {\n parser.currentClause.usePipeline = false\n }\n\n var nextLexeme = parser.peekLexeme()\n\n if (nextLexeme == undefined) {\n parser.nextClause()\n return\n }\n\n switch (nextLexeme.type) {\n case lunr.QueryLexer.TERM:\n parser.nextClause()\n return lunr.QueryParser.parseTerm\n case lunr.QueryLexer.FIELD:\n parser.nextClause()\n return lunr.QueryParser.parseField\n case lunr.QueryLexer.EDIT_DISTANCE:\n return lunr.QueryParser.parseEditDistance\n case lunr.QueryLexer.BOOST:\n return lunr.QueryParser.parseBoost\n case lunr.QueryLexer.PRESENCE:\n parser.nextClause()\n return lunr.QueryParser.parsePresence\n default:\n var errorMessage = \"Unexpected lexeme type '\" + nextLexeme.type + \"'\"\n throw new lunr.QueryParseError (errorMessage, nextLexeme.start, nextLexeme.end)\n }\n}\n\nlunr.QueryParser.parseEditDistance = function (parser) {\n var lexeme = parser.consumeLexeme()\n\n if (lexeme == undefined) {\n return\n }\n\n var editDistance = parseInt(lexeme.str, 10)\n\n if (isNaN(editDistance)) {\n var errorMessage = \"edit distance must be numeric\"\n throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)\n }\n\n parser.currentClause.editDistance = editDistance\n\n var nextLexeme = parser.peekLexeme()\n\n if (nextLexeme == undefined) {\n parser.nextClause()\n return\n }\n\n switch (nextLexeme.type) {\n case lunr.QueryLexer.TERM:\n parser.nextClause()\n return lunr.QueryParser.parseTerm\n case lunr.QueryLexer.FIELD:\n parser.nextClause()\n return lunr.QueryParser.parseField\n case lunr.QueryLexer.EDIT_DISTANCE:\n return lunr.QueryParser.parseEditDistance\n case lunr.QueryLexer.BOOST:\n return lunr.QueryParser.parseBoost\n case lunr.QueryLexer.PRESENCE:\n parser.nextClause()\n return lunr.QueryParser.parsePresence\n default:\n var errorMessage = \"Unexpected lexeme type '\" + nextLexeme.type + \"'\"\n throw new lunr.QueryParseError (errorMessage, nextLexeme.start, nextLexeme.end)\n }\n}\n\nlunr.QueryParser.parseBoost = function (parser) {\n var lexeme = parser.consumeLexeme()\n\n if (lexeme == undefined) {\n return\n }\n\n var boost = parseInt(lexeme.str, 10)\n\n if (isNaN(boost)) {\n var errorMessage = \"boost must be numeric\"\n throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)\n }\n\n parser.currentClause.boost = boost\n\n var nextLexeme = parser.peekLexeme()\n\n if (nextLexeme == undefined) {\n parser.nextClause()\n return\n }\n\n switch (nextLexeme.type) {\n case lunr.QueryLexer.TERM:\n parser.nextClause()\n return lunr.QueryParser.parseTerm\n case lunr.QueryLexer.FIELD:\n parser.nextClause()\n return lunr.QueryParser.parseField\n case lunr.QueryLexer.EDIT_DISTANCE:\n return lunr.QueryParser.parseEditDistance\n case lunr.QueryLexer.BOOST:\n return lunr.QueryParser.parseBoost\n case lunr.QueryLexer.PRESENCE:\n parser.nextClause()\n return lunr.QueryParser.parsePresence\n default:\n var errorMessage = \"Unexpected lexeme type '\" + nextLexeme.type + \"'\"\n throw new lunr.QueryParseError (errorMessage, nextLexeme.start, nextLexeme.end)\n }\n}\n\n /**\n * export the module via AMD, CommonJS or as a browser global\n * Export code from https://github.com/umdjs/umd/blob/master/returnExports.js\n */\n ;(function (root, factory) {\n if (true) {\n // AMD. Register as an anonymous module.\n !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__))\n } else {}\n }(this, function () {\n /**\n * Just return a value to define the module export.\n * This example returns an object, but the module\n * can return a function as the exported value.\n */\n return lunr\n }))\n})();\n\n\n//# sourceURL=webpack:///../node_modules/lunr/lunr.js?"); + +/***/ }), + +/***/ "./default/assets/css/main.sass": +/*!**************************************!*\ + !*** ./default/assets/css/main.sass ***! + \**************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n// extracted by mini-css-extract-plugin\n\n\n//# sourceURL=webpack:///./default/assets/css/main.sass?"); + +/***/ }), + +/***/ "./default/assets/js/src/bootstrap.ts": +/*!********************************************!*\ + !*** ./default/assets/js/src/bootstrap.ts ***! + \********************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _typedoc_Application__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typedoc/Application */ \"./default/assets/js/src/typedoc/Application.ts\");\n/* harmony import */ var _typedoc_components_MenuHighlight__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./typedoc/components/MenuHighlight */ \"./default/assets/js/src/typedoc/components/MenuHighlight.ts\");\n/* harmony import */ var _typedoc_components_Search__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./typedoc/components/Search */ \"./default/assets/js/src/typedoc/components/Search.ts\");\n/* harmony import */ var _typedoc_components_Signature__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./typedoc/components/Signature */ \"./default/assets/js/src/typedoc/components/Signature.ts\");\n/* harmony import */ var _typedoc_components_Toggle__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./typedoc/components/Toggle */ \"./default/assets/js/src/typedoc/components/Toggle.ts\");\n/* harmony import */ var _typedoc_components_Filter__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./typedoc/components/Filter */ \"./default/assets/js/src/typedoc/components/Filter.ts\");\n/* harmony import */ var _css_main_sass__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../css/main.sass */ \"./default/assets/css/main.sass\");\n\n\n\n\n\n\n\n(0,_typedoc_components_Search__WEBPACK_IMPORTED_MODULE_2__.initSearch)();\n(0,_typedoc_Application__WEBPACK_IMPORTED_MODULE_0__.registerComponent)(_typedoc_components_MenuHighlight__WEBPACK_IMPORTED_MODULE_1__.MenuHighlight, \".menu-highlight\");\n(0,_typedoc_Application__WEBPACK_IMPORTED_MODULE_0__.registerComponent)(_typedoc_components_Signature__WEBPACK_IMPORTED_MODULE_3__.Signature, \".tsd-signatures\");\n(0,_typedoc_Application__WEBPACK_IMPORTED_MODULE_0__.registerComponent)(_typedoc_components_Toggle__WEBPACK_IMPORTED_MODULE_4__.Toggle, \"a[data-toggle]\");\nif (_typedoc_components_Filter__WEBPACK_IMPORTED_MODULE_5__.Filter.isSupported()) {\n (0,_typedoc_Application__WEBPACK_IMPORTED_MODULE_0__.registerComponent)(_typedoc_components_Filter__WEBPACK_IMPORTED_MODULE_5__.Filter, \"#tsd-filter\");\n}\nelse {\n document.documentElement.classList.add(\"no-filter\");\n}\nvar app = new _typedoc_Application__WEBPACK_IMPORTED_MODULE_0__.Application();\nObject.defineProperty(window, \"app\", { value: app });\n\n\n//# sourceURL=webpack:///./default/assets/js/src/bootstrap.ts?"); + +/***/ }), + +/***/ "./default/assets/js/src/typedoc/Application.ts": +/*!******************************************************!*\ + !*** ./default/assets/js/src/typedoc/Application.ts ***! + \******************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"registerComponent\": () => /* binding */ registerComponent,\n/* harmony export */ \"Application\": () => /* binding */ Application\n/* harmony export */ });\n/**\n * List of all known components.\n */\nvar components = [];\n/**\n * Register a new component.\n */\nfunction registerComponent(constructor, selector) {\n components.push({\n selector: selector,\n constructor: constructor,\n });\n}\n/**\n * TypeDoc application class.\n */\nvar Application = /** @class */ (function () {\n /**\n * Create a new Application instance.\n */\n function Application() {\n this.createComponents(document.body);\n }\n /**\n * Create all components beneath the given jQuery element.\n */\n Application.prototype.createComponents = function (context) {\n components.forEach(function (c) {\n context.querySelectorAll(c.selector).forEach(function (el) {\n if (!el.dataset.hasInstance) {\n new c.constructor({ el: el });\n el.dataset.hasInstance = String(true);\n }\n });\n });\n };\n return Application;\n}());\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/Application.ts?"); + +/***/ }), + +/***/ "./default/assets/js/src/typedoc/Component.ts": +/*!****************************************************!*\ + !*** ./default/assets/js/src/typedoc/Component.ts ***! + \****************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Component\": () => /* binding */ Component\n/* harmony export */ });\n/**\n * TypeDoc component class.\n */\nvar Component = /** @class */ (function () {\n function Component(options) {\n this.el = options.el;\n }\n return Component;\n}());\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/Component.ts?"); + +/***/ }), + +/***/ "./default/assets/js/src/typedoc/EventTarget.ts": +/*!******************************************************!*\ + !*** ./default/assets/js/src/typedoc/EventTarget.ts ***! + \******************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"EventTarget\": () => /* binding */ EventTarget\n/* harmony export */ });\n/**\n * TypeDoc event target class.\n */\nvar EventTarget = /** @class */ (function () {\n function EventTarget() {\n this.listeners = {};\n }\n EventTarget.prototype.addEventListener = function (type, callback) {\n if (!(type in this.listeners)) {\n this.listeners[type] = [];\n }\n this.listeners[type].push(callback);\n };\n EventTarget.prototype.removeEventListener = function (type, callback) {\n if (!(type in this.listeners)) {\n return;\n }\n var stack = this.listeners[type];\n for (var i = 0, l = stack.length; i < l; i++) {\n if (stack[i] === callback) {\n stack.splice(i, 1);\n return;\n }\n }\n };\n EventTarget.prototype.dispatchEvent = function (event) {\n if (!(event.type in this.listeners)) {\n return true;\n }\n var stack = this.listeners[event.type].slice();\n for (var i = 0, l = stack.length; i < l; i++) {\n stack[i].call(this, event);\n }\n return !event.defaultPrevented;\n };\n return EventTarget;\n}());\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/EventTarget.ts?"); + +/***/ }), + +/***/ "./default/assets/js/src/typedoc/components/Filter.ts": +/*!************************************************************!*\ + !*** ./default/assets/js/src/typedoc/components/Filter.ts ***! + \************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Filter\": () => /* binding */ Filter\n/* harmony export */ });\n/* harmony import */ var _Component__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Component */ \"./default/assets/js/src/typedoc/Component.ts\");\n/* harmony import */ var _utils_pointer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/pointer */ \"./default/assets/js/src/typedoc/utils/pointer.ts\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\nvar FilterItem = /** @class */ (function () {\n function FilterItem(key, value) {\n this.key = key;\n this.value = value;\n this.defaultValue = value;\n this.initialize();\n if (window.localStorage[this.key]) {\n this.setValue(this.fromLocalStorage(window.localStorage[this.key]));\n }\n }\n FilterItem.prototype.initialize = function () { };\n FilterItem.prototype.setValue = function (value) {\n if (this.value == value)\n return;\n var oldValue = this.value;\n this.value = value;\n window.localStorage[this.key] = this.toLocalStorage(value);\n this.handleValueChange(oldValue, value);\n };\n return FilterItem;\n}());\nvar FilterItemCheckbox = /** @class */ (function (_super) {\n __extends(FilterItemCheckbox, _super);\n function FilterItemCheckbox() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n FilterItemCheckbox.prototype.initialize = function () {\n var _this = this;\n var checkbox = document.querySelector(\"#tsd-filter-\" + this.key);\n if (!checkbox)\n return;\n this.checkbox = checkbox;\n this.checkbox.addEventListener(\"change\", function () {\n _this.setValue(_this.checkbox.checked);\n });\n };\n FilterItemCheckbox.prototype.handleValueChange = function (oldValue, newValue) {\n if (!this.checkbox)\n return;\n this.checkbox.checked = this.value;\n document.documentElement.classList.toggle(\"toggle-\" + this.key, this.value != this.defaultValue);\n };\n FilterItemCheckbox.prototype.fromLocalStorage = function (value) {\n return value == \"true\";\n };\n FilterItemCheckbox.prototype.toLocalStorage = function (value) {\n return value ? \"true\" : \"false\";\n };\n return FilterItemCheckbox;\n}(FilterItem));\nvar FilterItemSelect = /** @class */ (function (_super) {\n __extends(FilterItemSelect, _super);\n function FilterItemSelect() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n FilterItemSelect.prototype.initialize = function () {\n var _this = this;\n document.documentElement.classList.add(\"toggle-\" + this.key + this.value);\n var select = document.querySelector(\"#tsd-filter-\" + this.key);\n if (!select)\n return;\n this.select = select;\n var onActivate = function () {\n _this.select.classList.add(\"active\");\n };\n var onDeactivate = function () {\n _this.select.classList.remove(\"active\");\n };\n this.select.addEventListener(_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.pointerDown, onActivate);\n this.select.addEventListener(\"mouseover\", onActivate);\n this.select.addEventListener(\"mouseleave\", onDeactivate);\n this.select.querySelectorAll(\"li\").forEach(function (el) {\n el.addEventListener(_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.pointerUp, function (e) {\n select.classList.remove(\"active\");\n _this.setValue(e.target.dataset.value || \"\");\n });\n });\n document.addEventListener(_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.pointerDown, function (e) {\n if (_this.select.contains(e.target))\n return;\n _this.select.classList.remove(\"active\");\n });\n };\n FilterItemSelect.prototype.handleValueChange = function (oldValue, newValue) {\n this.select.querySelectorAll(\"li.selected\").forEach(function (el) {\n el.classList.remove(\"selected\");\n });\n var selected = this.select.querySelector('li[data-value=\"' + newValue + '\"]');\n var label = this.select.querySelector(\".tsd-select-label\");\n if (selected && label) {\n selected.classList.add(\"selected\");\n label.textContent = selected.textContent;\n }\n document.documentElement.classList.remove(\"toggle-\" + oldValue);\n document.documentElement.classList.add(\"toggle-\" + newValue);\n };\n FilterItemSelect.prototype.fromLocalStorage = function (value) {\n return value;\n };\n FilterItemSelect.prototype.toLocalStorage = function (value) {\n return value;\n };\n return FilterItemSelect;\n}(FilterItem));\nvar Filter = /** @class */ (function (_super) {\n __extends(Filter, _super);\n function Filter(options) {\n var _this = _super.call(this, options) || this;\n _this.optionVisibility = new FilterItemSelect(\"visibility\", \"private\");\n _this.optionInherited = new FilterItemCheckbox(\"inherited\", true);\n _this.optionExternals = new FilterItemCheckbox(\"externals\", true);\n return _this;\n }\n Filter.isSupported = function () {\n try {\n return typeof window.localStorage != \"undefined\";\n }\n catch (e) {\n return false;\n }\n };\n return Filter;\n}(_Component__WEBPACK_IMPORTED_MODULE_0__.Component));\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/components/Filter.ts?"); + +/***/ }), + +/***/ "./default/assets/js/src/typedoc/components/MenuHighlight.ts": +/*!*******************************************************************!*\ + !*** ./default/assets/js/src/typedoc/components/MenuHighlight.ts ***! + \*******************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"MenuHighlight\": () => /* binding */ MenuHighlight\n/* harmony export */ });\n/* harmony import */ var _Component__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Component */ \"./default/assets/js/src/typedoc/Component.ts\");\n/* harmony import */ var _services_Viewport__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/Viewport */ \"./default/assets/js/src/typedoc/services/Viewport.ts\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\n/**\n * Manages the sticky state of the navigation and moves the highlight\n * to the current navigation item.\n */\nvar MenuHighlight = /** @class */ (function (_super) {\n __extends(MenuHighlight, _super);\n /**\n * Create a new MenuHighlight instance.\n *\n * @param options Backbone view constructor options.\n */\n function MenuHighlight(options) {\n var _this = _super.call(this, options) || this;\n /**\n * List of all discovered anchors.\n */\n _this.anchors = [];\n /**\n * Index of the currently highlighted anchor.\n */\n _this.index = -1;\n _services_Viewport__WEBPACK_IMPORTED_MODULE_1__.Viewport.instance.addEventListener(\"resize\", function () { return _this.onResize(); });\n _services_Viewport__WEBPACK_IMPORTED_MODULE_1__.Viewport.instance.addEventListener(\"scroll\", function (e) { return _this.onScroll(e); });\n _this.createAnchors();\n return _this;\n }\n /**\n * Find all anchors on the current page.\n */\n MenuHighlight.prototype.createAnchors = function () {\n var _this = this;\n var base = window.location.href;\n if (base.indexOf(\"#\") != -1) {\n base = base.substr(0, base.indexOf(\"#\"));\n }\n this.el.querySelectorAll(\"a\").forEach(function (el) {\n var href = el.href;\n if (href.indexOf(\"#\") == -1)\n return;\n if (href.substr(0, base.length) != base)\n return;\n var hash = href.substr(href.indexOf(\"#\") + 1);\n var anchor = document.querySelector(\"a.tsd-anchor[name=\" + hash + \"]\");\n var link = el.parentNode;\n if (!anchor || !link)\n return;\n _this.anchors.push({\n link: link,\n anchor: anchor,\n position: 0,\n });\n });\n this.onResize();\n };\n /**\n * Triggered after the viewport was resized.\n */\n MenuHighlight.prototype.onResize = function () {\n var anchor;\n for (var index = 0, count = this.anchors.length; index < count; index++) {\n anchor = this.anchors[index];\n var rect = anchor.anchor.getBoundingClientRect();\n anchor.position = rect.top + document.body.scrollTop;\n }\n this.anchors.sort(function (a, b) {\n return a.position - b.position;\n });\n var event = new CustomEvent(\"scroll\", {\n detail: {\n scrollTop: _services_Viewport__WEBPACK_IMPORTED_MODULE_1__.Viewport.instance.scrollTop,\n },\n });\n this.onScroll(event);\n };\n /**\n * Triggered after the viewport was scrolled.\n *\n * @param event The custom event with the current vertical scroll position.\n */\n MenuHighlight.prototype.onScroll = function (event) {\n var scrollTop = event.detail.scrollTop + 5;\n var anchors = this.anchors;\n var count = anchors.length - 1;\n var index = this.index;\n while (index > -1 && anchors[index].position > scrollTop) {\n index -= 1;\n }\n while (index < count && anchors[index + 1].position < scrollTop) {\n index += 1;\n }\n if (this.index != index) {\n if (this.index > -1)\n this.anchors[this.index].link.classList.remove(\"focus\");\n this.index = index;\n if (this.index > -1)\n this.anchors[this.index].link.classList.add(\"focus\");\n }\n };\n return MenuHighlight;\n}(_Component__WEBPACK_IMPORTED_MODULE_0__.Component));\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/components/MenuHighlight.ts?"); + +/***/ }), + +/***/ "./default/assets/js/src/typedoc/components/Search.ts": +/*!************************************************************!*\ + !*** ./default/assets/js/src/typedoc/components/Search.ts ***! + \************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"initSearch\": () => /* binding */ initSearch\n/* harmony export */ });\n/* harmony import */ var _utils_debounce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/debounce */ \"./default/assets/js/src/typedoc/utils/debounce.ts\");\n/* harmony import */ var lunr__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lunr */ \"../node_modules/lunr/lunr.js\");\n/* harmony import */ var lunr__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lunr__WEBPACK_IMPORTED_MODULE_1__);\n\n\nfunction initSearch() {\n var searchEl = document.getElementById(\"tsd-search\");\n if (!searchEl)\n return;\n var searchScript = document.getElementById(\"search-script\");\n if (searchScript) {\n searchScript.addEventListener(\"error\", function () {\n searchEl.classList.remove(\"loading\");\n searchEl.classList.add(\"failure\");\n });\n searchScript.addEventListener(\"load\", function () {\n searchEl.classList.remove(\"loading\");\n searchEl.classList.add(\"ready\");\n });\n }\n searchEl.classList.add(\"loading\");\n var field = document.querySelector(\"#tsd-search-field\");\n var results = document.querySelector(\".results\");\n if (!field || !results) {\n throw new Error(\"The input field or the result list wrapper was not found\");\n }\n field.addEventListener(\"focus\", function () { return searchEl.classList.add(\"has-focus\"); });\n field.addEventListener(\"blur\", function () {\n // Delay a bit so that mouse clicks don't get swallowed\n setTimeout(function () { return searchEl.classList.remove(\"has-focus\"); }, 100);\n });\n var state = {\n base: searchEl.dataset.base + \"/\",\n };\n bindEvents(searchEl, results, field, state);\n}\nfunction bindEvents(searchEl, results, field, state) {\n field.addEventListener(\"input\", (0,_utils_debounce__WEBPACK_IMPORTED_MODULE_0__.debounce)(function () {\n updateResults(searchEl, results, field, state);\n }, 200));\n var preventPress = false;\n field.addEventListener(\"keydown\", function (e) {\n preventPress = true;\n if (e.key == \"Enter\") {\n gotoCurrentResult(results, field);\n }\n else if (e.key == \"Escape\") {\n field.blur();\n }\n else if (e.key == \"ArrowUp\") {\n setCurrentResult(results, -1);\n }\n else if (e.key === \"ArrowDown\") {\n setCurrentResult(results, 1);\n }\n else {\n preventPress = false;\n }\n });\n field.addEventListener(\"keypress\", function (e) {\n if (preventPress)\n e.preventDefault();\n });\n /**\n * Start searching by pressing slash.\n */\n document.body.addEventListener(\"keydown\", function (e) {\n if (e.altKey || e.ctrlKey || e.metaKey)\n return;\n if (!field.matches(\":focus\") && e.key === \"/\") {\n field.focus();\n e.preventDefault();\n }\n });\n}\nfunction checkIndex(state, searchEl) {\n if (state.index)\n return;\n if (window.searchData) {\n searchEl.classList.remove(\"loading\");\n searchEl.classList.add(\"ready\");\n state.data = window.searchData;\n state.index = lunr__WEBPACK_IMPORTED_MODULE_1__.Index.load(window.searchData.index);\n }\n}\nfunction updateResults(searchEl, results, query, state) {\n checkIndex(state, searchEl);\n // Don't clear results if loading state is not ready,\n // because loading or error message can be removed.\n if (!state.index || !state.data)\n return;\n results.textContent = \"\";\n var searchText = query.value.trim();\n // Perform a wildcard search\n var res = state.index.search(\"*\" + searchText + \"*\");\n for (var i = 0, c = Math.min(10, res.length); i < c; i++) {\n var row = state.data.rows[Number(res[i].ref)];\n // Bold the matched part of the query in the search results\n var name_1 = boldMatches(row.name, searchText);\n if (row.parent) {\n name_1 = \"\" + boldMatches(row.parent, searchText) + \".\" + name_1;\n }\n var item = document.createElement(\"li\");\n item.classList.value = row.classes;\n var anchor = document.createElement(\"a\");\n anchor.href = state.base + row.url;\n anchor.classList.add(\"tsd-kind-icon\");\n anchor.innerHTML = name_1;\n item.append(anchor);\n results.appendChild(item);\n }\n}\n/**\n * Move the highlight within the result set.\n */\nfunction setCurrentResult(results, dir) {\n var current = results.querySelector(\".current\");\n if (!current) {\n current = results.querySelector(dir == 1 ? \"li:first-child\" : \"li:last-child\");\n if (current) {\n current.classList.add(\"current\");\n }\n }\n else {\n var rel = dir == 1\n ? current.nextElementSibling\n : current.previousElementSibling;\n if (rel) {\n current.classList.remove(\"current\");\n rel.classList.add(\"current\");\n }\n }\n}\n/**\n * Navigate to the highlighted result.\n */\nfunction gotoCurrentResult(results, field) {\n var current = results.querySelector(\".current\");\n if (!current) {\n current = results.querySelector(\"li:first-child\");\n }\n if (current) {\n var link = current.querySelector(\"a\");\n if (link) {\n window.location.href = link.href;\n }\n field.blur();\n }\n}\nfunction boldMatches(text, search) {\n if (search === \"\") {\n return text;\n }\n var lowerText = text.toLocaleLowerCase();\n var lowerSearch = search.toLocaleLowerCase();\n var parts = [];\n var lastIndex = 0;\n var index = lowerText.indexOf(lowerSearch);\n while (index != -1) {\n parts.push(escapeHtml(text.substring(lastIndex, index)), \"\" + escapeHtml(text.substring(index, index + lowerSearch.length)) + \"\");\n lastIndex = index + lowerSearch.length;\n index = lowerText.indexOf(lowerSearch, lastIndex);\n }\n parts.push(escapeHtml(text.substring(lastIndex)));\n return parts.join(\"\");\n}\nvar SPECIAL_HTML = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n \"'\": \"'\",\n '\"': \""\",\n};\nfunction escapeHtml(text) {\n return text.replace(/[&<>\"'\"]/g, function (match) { return SPECIAL_HTML[match]; });\n}\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/components/Search.ts?"); + +/***/ }), + +/***/ "./default/assets/js/src/typedoc/components/Signature.ts": +/*!***************************************************************!*\ + !*** ./default/assets/js/src/typedoc/components/Signature.ts ***! + \***************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Signature\": () => /* binding */ Signature\n/* harmony export */ });\n/* harmony import */ var _Component__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Component */ \"./default/assets/js/src/typedoc/Component.ts\");\n/* harmony import */ var _services_Viewport__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/Viewport */ \"./default/assets/js/src/typedoc/services/Viewport.ts\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\n/**\n * Holds a signature and its description.\n */\nvar SignatureGroup = /** @class */ (function () {\n /**\n * Create a new SignatureGroup instance.\n *\n * @param signature The target signature.\n * @param description The description for the signature.\n */\n function SignatureGroup(signature, description) {\n this.signature = signature;\n this.description = description;\n }\n /**\n * Add the given class to all elements of the group.\n *\n * @param className The class name to add.\n */\n SignatureGroup.prototype.addClass = function (className) {\n this.signature.classList.add(className);\n this.description.classList.add(className);\n return this;\n };\n /**\n * Remove the given class from all elements of the group.\n *\n * @param className The class name to remove.\n */\n SignatureGroup.prototype.removeClass = function (className) {\n this.signature.classList.remove(className);\n this.description.classList.remove(className);\n return this;\n };\n return SignatureGroup;\n}());\n/**\n * Controls the tab like behaviour of methods and functions with multiple signatures.\n */\nvar Signature = /** @class */ (function (_super) {\n __extends(Signature, _super);\n /**\n * Create a new Signature instance.\n *\n * @param options Backbone view constructor options.\n */\n function Signature(options) {\n var _this = _super.call(this, options) || this;\n /**\n * List of found signature groups.\n */\n _this.groups = [];\n /**\n * The index of the currently displayed signature.\n */\n _this.index = -1;\n _this.createGroups();\n if (_this.container) {\n _this.el.classList.add(\"active\");\n Array.from(_this.el.children).forEach(function (signature) {\n signature.addEventListener(\"touchstart\", function (event) {\n return _this.onClick(event);\n });\n signature.addEventListener(\"click\", function (event) {\n return _this.onClick(event);\n });\n });\n _this.container.classList.add(\"active\");\n _this.setIndex(0);\n }\n return _this;\n }\n /**\n * Set the index of the active signature.\n *\n * @param index The index of the signature to activate.\n */\n Signature.prototype.setIndex = function (index) {\n if (index < 0)\n index = 0;\n if (index > this.groups.length - 1)\n index = this.groups.length - 1;\n if (this.index == index)\n return;\n var to = this.groups[index];\n if (this.index > -1) {\n var from_1 = this.groups[this.index];\n from_1.removeClass(\"current\").addClass(\"fade-out\");\n to.addClass(\"current\");\n to.addClass(\"fade-in\");\n _services_Viewport__WEBPACK_IMPORTED_MODULE_1__.Viewport.instance.triggerResize();\n setTimeout(function () {\n from_1.removeClass(\"fade-out\");\n to.removeClass(\"fade-in\");\n }, 300);\n }\n else {\n to.addClass(\"current\");\n _services_Viewport__WEBPACK_IMPORTED_MODULE_1__.Viewport.instance.triggerResize();\n }\n this.index = index;\n };\n /**\n * Find all signature/description groups.\n */\n Signature.prototype.createGroups = function () {\n var signatures = this.el.children;\n if (signatures.length < 2)\n return;\n this.container = this.el.nextElementSibling;\n var descriptions = this.container.children;\n this.groups = [];\n for (var index = 0; index < signatures.length; index++) {\n this.groups.push(new SignatureGroup(signatures[index], descriptions[index]));\n }\n };\n /**\n * Triggered when the user clicks onto a signature header.\n *\n * @param e The related event object.\n */\n Signature.prototype.onClick = function (e) {\n var _this = this;\n this.groups.forEach(function (group, index) {\n if (group.signature === e.currentTarget) {\n _this.setIndex(index);\n }\n });\n };\n return Signature;\n}(_Component__WEBPACK_IMPORTED_MODULE_0__.Component));\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/components/Signature.ts?"); + +/***/ }), + +/***/ "./default/assets/js/src/typedoc/components/Toggle.ts": +/*!************************************************************!*\ + !*** ./default/assets/js/src/typedoc/components/Toggle.ts ***! + \************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Toggle\": () => /* binding */ Toggle\n/* harmony export */ });\n/* harmony import */ var _Component__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Component */ \"./default/assets/js/src/typedoc/Component.ts\");\n/* harmony import */ var _utils_pointer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/pointer */ \"./default/assets/js/src/typedoc/utils/pointer.ts\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\nvar Toggle = /** @class */ (function (_super) {\n __extends(Toggle, _super);\n function Toggle(options) {\n var _this = _super.call(this, options) || this;\n _this.className = _this.el.dataset.toggle || \"\";\n _this.el.addEventListener(_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.pointerUp, function (e) { return _this.onPointerUp(e); });\n _this.el.addEventListener(\"click\", function (e) { return e.preventDefault(); });\n document.addEventListener(_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.pointerDown, function (e) {\n return _this.onDocumentPointerDown(e);\n });\n document.addEventListener(_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.pointerUp, function (e) {\n return _this.onDocumentPointerUp(e);\n });\n return _this;\n }\n Toggle.prototype.setActive = function (value) {\n if (this.active == value)\n return;\n this.active = value;\n document.documentElement.classList.toggle(\"has-\" + this.className, value);\n this.el.classList.toggle(\"active\", value);\n var transition = (this.active ? \"to-has-\" : \"from-has-\") + this.className;\n document.documentElement.classList.add(transition);\n setTimeout(function () { return document.documentElement.classList.remove(transition); }, 500);\n };\n Toggle.prototype.onPointerUp = function (event) {\n if (_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.hasPointerMoved)\n return;\n this.setActive(true);\n event.preventDefault();\n };\n Toggle.prototype.onDocumentPointerDown = function (e) {\n if (this.active) {\n if (e.target.closest(\".col-menu, .tsd-filter-group\")) {\n return;\n }\n this.setActive(false);\n }\n };\n Toggle.prototype.onDocumentPointerUp = function (e) {\n var _this = this;\n if (_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.hasPointerMoved)\n return;\n if (this.active) {\n if (e.target.closest(\".col-menu\")) {\n var link = e.target.closest(\"a\");\n if (link) {\n var href = window.location.href;\n if (href.indexOf(\"#\") != -1) {\n href = href.substr(0, href.indexOf(\"#\"));\n }\n if (link.href.substr(0, href.length) == href) {\n setTimeout(function () { return _this.setActive(false); }, 250);\n }\n }\n }\n }\n };\n return Toggle;\n}(_Component__WEBPACK_IMPORTED_MODULE_0__.Component));\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/components/Toggle.ts?"); + +/***/ }), + +/***/ "./default/assets/js/src/typedoc/services/Viewport.ts": +/*!************************************************************!*\ + !*** ./default/assets/js/src/typedoc/services/Viewport.ts ***! + \************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Viewport\": () => /* binding */ Viewport\n/* harmony export */ });\n/* harmony import */ var _EventTarget__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../EventTarget */ \"./default/assets/js/src/typedoc/EventTarget.ts\");\n/* harmony import */ var _utils_trottle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/trottle */ \"./default/assets/js/src/typedoc/utils/trottle.ts\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\n/**\n * A global service that monitors the window size and scroll position.\n */\nvar Viewport = /** @class */ (function (_super) {\n __extends(Viewport, _super);\n /**\n * Create new Viewport instance.\n */\n function Viewport() {\n var _this = _super.call(this) || this;\n /**\n * The current scroll position.\n */\n _this.scrollTop = 0;\n /**\n * The previous scrollTop.\n */\n _this.lastY = 0;\n /**\n * The width of the window.\n */\n _this.width = 0;\n /**\n * The height of the window.\n */\n _this.height = 0;\n /**\n * Boolean indicating whether the toolbar is shown.\n */\n _this.showToolbar = true;\n _this.toolbar = (document.querySelector(\".tsd-page-toolbar\"));\n _this.secondaryNav = (document.querySelector(\".tsd-navigation.secondary\"));\n window.addEventListener(\"scroll\", (0,_utils_trottle__WEBPACK_IMPORTED_MODULE_1__.throttle)(function () { return _this.onScroll(); }, 10));\n window.addEventListener(\"resize\", (0,_utils_trottle__WEBPACK_IMPORTED_MODULE_1__.throttle)(function () { return _this.onResize(); }, 10));\n _this.onResize();\n _this.onScroll();\n return _this;\n }\n /**\n * Trigger a resize event.\n */\n Viewport.prototype.triggerResize = function () {\n var event = new CustomEvent(\"resize\", {\n detail: {\n width: this.width,\n height: this.height,\n },\n });\n this.dispatchEvent(event);\n };\n /**\n * Triggered when the size of the window has changed.\n */\n Viewport.prototype.onResize = function () {\n this.width = window.innerWidth || 0;\n this.height = window.innerHeight || 0;\n var event = new CustomEvent(\"resize\", {\n detail: {\n width: this.width,\n height: this.height,\n },\n });\n this.dispatchEvent(event);\n };\n /**\n * Triggered when the user scrolled the viewport.\n */\n Viewport.prototype.onScroll = function () {\n this.scrollTop = window.scrollY || 0;\n var event = new CustomEvent(\"scroll\", {\n detail: {\n scrollTop: this.scrollTop,\n },\n });\n this.dispatchEvent(event);\n this.hideShowToolbar();\n };\n /**\n * Handle hiding/showing of the toolbar.\n */\n Viewport.prototype.hideShowToolbar = function () {\n var isShown = this.showToolbar;\n this.showToolbar = this.lastY >= this.scrollTop || this.scrollTop === 0;\n if (isShown !== this.showToolbar) {\n this.toolbar.classList.toggle(\"tsd-page-toolbar--hide\");\n this.secondaryNav.classList.toggle(\"tsd-navigation--toolbar-hide\");\n }\n this.lastY = this.scrollTop;\n };\n Viewport.instance = new Viewport();\n return Viewport;\n}(_EventTarget__WEBPACK_IMPORTED_MODULE_0__.EventTarget));\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/services/Viewport.ts?"); + +/***/ }), + +/***/ "./default/assets/js/src/typedoc/utils/debounce.ts": +/*!*********************************************************!*\ + !*** ./default/assets/js/src/typedoc/utils/debounce.ts ***! + \*********************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"debounce\": () => /* binding */ debounce\n/* harmony export */ });\nvar debounce = function (fn, wait) {\n if (wait === void 0) { wait = 100; }\n var timeout;\n return function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n clearTimeout(timeout);\n timeout = setTimeout(function () { return fn(args); }, wait);\n };\n};\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/utils/debounce.ts?"); + +/***/ }), + +/***/ "./default/assets/js/src/typedoc/utils/pointer.ts": +/*!********************************************************!*\ + !*** ./default/assets/js/src/typedoc/utils/pointer.ts ***! + \********************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"pointerDown\": () => /* binding */ pointerDown,\n/* harmony export */ \"pointerMove\": () => /* binding */ pointerMove,\n/* harmony export */ \"pointerUp\": () => /* binding */ pointerUp,\n/* harmony export */ \"pointerDownPosition\": () => /* binding */ pointerDownPosition,\n/* harmony export */ \"preventNextClick\": () => /* binding */ preventNextClick,\n/* harmony export */ \"isPointerDown\": () => /* binding */ isPointerDown,\n/* harmony export */ \"isPointerTouch\": () => /* binding */ isPointerTouch,\n/* harmony export */ \"hasPointerMoved\": () => /* binding */ hasPointerMoved,\n/* harmony export */ \"isMobile\": () => /* binding */ isMobile\n/* harmony export */ });\n/**\n * Event name of the pointer down event.\n */\nvar pointerDown = \"mousedown\";\n/**\n * Event name of the pointer move event.\n */\nvar pointerMove = \"mousemove\";\n/**\n * Event name of the pointer up event.\n */\nvar pointerUp = \"mouseup\";\n/**\n * Position the pointer was pressed at.\n */\nvar pointerDownPosition = { x: 0, y: 0 };\n/**\n * Should the next click on the document be supressed?\n */\nvar preventNextClick = false;\n/**\n * Is the pointer down?\n */\nvar isPointerDown = false;\n/**\n * Is the pointer a touch point?\n */\nvar isPointerTouch = false;\n/**\n * Did the pointer move since the last down event?\n */\nvar hasPointerMoved = false;\n/**\n * Is the user agent a mobile agent?\n */\nvar isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\ndocument.documentElement.classList.add(isMobile ? \"is-mobile\" : \"not-mobile\");\nif (isMobile && \"ontouchstart\" in document.documentElement) {\n isPointerTouch = true;\n pointerDown = \"touchstart\";\n pointerMove = \"touchmove\";\n pointerUp = \"touchend\";\n}\ndocument.addEventListener(pointerDown, function (e) {\n isPointerDown = true;\n hasPointerMoved = false;\n var t = pointerDown == \"touchstart\"\n ? e.targetTouches[0]\n : e;\n pointerDownPosition.y = t.pageY || 0;\n pointerDownPosition.x = t.pageX || 0;\n});\ndocument.addEventListener(pointerMove, function (e) {\n if (!isPointerDown)\n return;\n if (!hasPointerMoved) {\n var t = pointerDown == \"touchstart\"\n ? e.targetTouches[0]\n : e;\n var x = pointerDownPosition.x - (t.pageX || 0);\n var y = pointerDownPosition.y - (t.pageY || 0);\n hasPointerMoved = Math.sqrt(x * x + y * y) > 10;\n }\n});\ndocument.addEventListener(pointerUp, function () {\n isPointerDown = false;\n});\ndocument.addEventListener(\"click\", function (e) {\n if (preventNextClick) {\n e.preventDefault();\n e.stopImmediatePropagation();\n preventNextClick = false;\n }\n});\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/utils/pointer.ts?"); + +/***/ }), + +/***/ "./default/assets/js/src/typedoc/utils/trottle.ts": +/*!********************************************************!*\ + !*** ./default/assets/js/src/typedoc/utils/trottle.ts ***! + \********************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"throttle\": () => /* binding */ throttle\n/* harmony export */ });\nvar throttle = function (fn, wait) {\n if (wait === void 0) { wait = 100; }\n var time = Date.now();\n return function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n if (time + wait - Date.now() < 0) {\n fn.apply(void 0, args);\n time = Date.now();\n }\n };\n};\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/utils/trottle.ts?"); + +/***/ }) + +/******/ }); +/************************************************************************/ +/******/ // The module cache +/******/ var __webpack_module_cache__ = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ // Check if module is in cache +/******/ if(__webpack_module_cache__[moduleId]) { +/******/ return __webpack_module_cache__[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = __webpack_module_cache__[moduleId] = { +/******/ // no module.id needed +/******/ // no module.loaded needed +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/************************************************************************/ +/******/ /* webpack/runtime/compat get default export */ +/******/ (() => { +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = (module) => { +/******/ var getter = module && module.__esModule ? +/******/ () => module['default'] : +/******/ () => module; +/******/ __webpack_require__.d(getter, { a: getter }); +/******/ return getter; +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/define property getters */ +/******/ (() => { +/******/ // define getter functions for harmony exports +/******/ __webpack_require__.d = (exports, definition) => { +/******/ for(var key in definition) { +/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { +/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); +/******/ } +/******/ } +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/hasOwnProperty shorthand */ +/******/ (() => { +/******/ __webpack_require__.o = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop) +/******/ })(); +/******/ +/******/ /* webpack/runtime/make namespace object */ +/******/ (() => { +/******/ // define __esModule on exports +/******/ __webpack_require__.r = (exports) => { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ })(); +/******/ +/************************************************************************/ +/******/ // startup +/******/ // Load entry module +/******/ __webpack_require__("./default/assets/js/src/bootstrap.ts"); +/******/ // This entry module used 'exports' so it can't be inlined +/******/ })() +; \ No newline at end of file diff --git a/tools/doc/typedoc-theme/assets/js/src/typedoc/Application.ts b/tools/doc/typedoc-theme/assets/js/src/typedoc/Application.ts deleted file mode 100644 index 085709b525..0000000000 --- a/tools/doc/typedoc-theme/assets/js/src/typedoc/Application.ts +++ /dev/null @@ -1,111 +0,0 @@ -namespace typedoc -{ - /** - * Service definition. - */ - export interface IService - { - constructor:any; - name:string; - instance:any; - priority:number; - } - - - /** - * Component definition. - */ - export interface IComponent - { - constructor:any; - selector:string; - priority:number; - namespace:string; - } - - - /** - * List of all known services. - */ - var services:IService[] = []; - - /** - * List of all known components. - */ - var components:IComponent[] = []; - - /** - * Register a new component. - */ - export function registerService(constructor:any, name:string, priority:number = 0) { - services.push({ - constructor: constructor, - name: name, - priority: priority, - instance: null - }); - - services.sort((a:IService, b:IService) => a.priority - b.priority); - } - - - /** - * Register a new component. - */ - export function registerComponent(constructor:any, selector:string, priority:number = 0, namespace:string = '*') - { - components.push({ - selector: selector, - constructor: constructor, - priority: priority, - namespace: namespace - }); - - components.sort((a:IComponent, b:IComponent) => a.priority - b.priority); - } - - - /** - * TypeDoc application class. - */ - export class Application - { - /** - * Create a new Application instance. - */ - constructor() { - this.createServices(); - this.createComponents(document.body); - } - - - /** - * Create all services. - */ - private createServices() { - services.forEach((c) => { - c.instance = new c.constructor(); - (typedoc as any)[c.name] = c.instance; - }); - } - - - /** - * Create all components beneath the given jQuery element. - */ - public createComponents(context:HTMLElement, namespace:string = 'default') { - components.forEach((c) => { - if (c.namespace != namespace && c.namespace != '*') { - return; - } - - context.querySelectorAll(c.selector).forEach((el) => { - if (!el.dataset.hasInstance) { - new c.constructor({el:el}); - el.dataset.hasInstance = String(true); - } - }); - }); - } - } -} diff --git a/tools/doc/typedoc-theme/assets/js/src/typedoc/Component.ts b/tools/doc/typedoc-theme/assets/js/src/typedoc/Component.ts deleted file mode 100644 index 8e8bf467cf..0000000000 --- a/tools/doc/typedoc-theme/assets/js/src/typedoc/Component.ts +++ /dev/null @@ -1,17 +0,0 @@ -namespace typedoc -{ - export interface IComponentOptions { - el: HTMLElement; - } - - /** - * TypeDoc component class. - */ - export class Component { - protected el: HTMLElement; - - constructor(options: IComponentOptions) { - this.el = options.el; - } - } -} diff --git a/tools/doc/typedoc-theme/assets/js/src/typedoc/EventTarget.ts b/tools/doc/typedoc-theme/assets/js/src/typedoc/EventTarget.ts deleted file mode 100644 index e63682b1ba..0000000000 --- a/tools/doc/typedoc-theme/assets/js/src/typedoc/EventTarget.ts +++ /dev/null @@ -1,45 +0,0 @@ -namespace typedoc -{ - export interface IEventListener { - (evt: CustomEvent): void; - } - - /** - * TypeDoc event target class. - */ - export class EventTarget { - private listeners: Record[]> = {}; - - public addEventListener(type: string, callback: IEventListener) { - if (!(type in this.listeners)) { - this.listeners[type] = []; - } - this.listeners[type].push(callback); - }; - - public removeEventListener(type: string, callback: IEventListener) { - if (!(type in this.listeners)) { - return; - } - const stack = this.listeners[type]; - for (let i = 0, l = stack.length; i < l; i++) { - if (stack[i] === callback){ - stack.splice(i, 1); - return; - } - } - }; - - public dispatchEvent(event: CustomEvent) { - if (!(event.type in this.listeners)) { - return true; - } - const stack = this.listeners[event.type].slice(); - - for (let i = 0, l = stack.length; i < l; i++) { - stack[i].call(this, event); - } - return !event.defaultPrevented; - }; - } -} diff --git a/tools/doc/typedoc-theme/assets/js/src/typedoc/components/Filter.ts b/tools/doc/typedoc-theme/assets/js/src/typedoc/components/Filter.ts deleted file mode 100644 index 3c6d01dbc6..0000000000 --- a/tools/doc/typedoc-theme/assets/js/src/typedoc/components/Filter.ts +++ /dev/null @@ -1,186 +0,0 @@ -/// -/// -/// - -namespace typedoc -{ - abstract class FilterItem - { - protected key:string; - - protected value:T; - - protected defaultValue:T; - - - constructor(key:string, value:T) { - this.key = key; - this.value = value; - this.defaultValue = value; - - this.initialize(); - - if (window.localStorage[this.key]) { - this.setValue(this.fromLocalStorage(window.localStorage[this.key])); - } - } - - - protected initialize() {} - - - protected abstract handleValueChange(oldValue:T, newValue:T): void; - - protected abstract fromLocalStorage(value: string): T; - - protected abstract toLocalStorage(value: T): string; - - - protected setValue(value:T) { - if (this.value == value) return; - - var oldValue = this.value; - this.value = value; - window.localStorage[this.key] = this.toLocalStorage(value); - - this.handleValueChange(oldValue, value); - } - } - - - class FilterItemCheckbox extends FilterItem - { - private checkbox!:HTMLInputElement; - - - protected initialize() { - const checkbox = document.querySelector('#tsd-filter-' + this.key); - if (!checkbox) return; - - this.checkbox = checkbox; - this.checkbox.addEventListener('change', () => { - this.setValue(this.checkbox.checked); - }); - } - - - protected handleValueChange(oldValue:boolean, newValue:boolean) { - if (!this.checkbox) return; - this.checkbox.checked = this.value; - document.documentElement.classList.toggle('toggle-' + this.key, this.value != this.defaultValue); - } - - - protected fromLocalStorage(value:string):boolean { - return value == 'true'; - } - - - protected toLocalStorage(value:boolean):string { - return value ? 'true' : 'false'; - } - } - - - class FilterItemSelect extends FilterItem - { - private select!:HTMLElement; - - - protected initialize() { - document.documentElement.classList.add('toggle-' + this.key + this.value); - - const select = document.querySelector('#tsd-filter-' + this.key); - if (!select) return; - - this.select = select; - const onActivate = () => { - this.select.classList.add('active'); - }; - const onDeactivate = () => { - this.select.classList.remove('active'); - }; - - this.select.addEventListener(pointerDown, onActivate); - this.select.addEventListener('mouseover', onActivate); - this.select.addEventListener('mouseleave', onDeactivate); - - this.select.querySelectorAll('li').forEach(el => { - el.addEventListener(pointerUp, (e) => { - select.classList.remove('active'); - this.setValue((e.target as HTMLElement).dataset.value || ''); - }) - }); - - document.addEventListener(pointerDown, (e) => { - if (this.select.contains(e.target as HTMLElement)) return; - - this.select.classList.remove('active'); - }); - } - - - protected handleValueChange(oldValue:string, newValue:string) { - this.select.querySelectorAll('li.selected').forEach(el => { - el.classList.remove('selected') - }); - - const selected = this.select.querySelector('li[data-value="' + newValue + '"]'); - const label = this.select.querySelector('.tsd-select-label'); - - if (selected && label) { - selected.classList.add('selected'); - label.textContent = selected.textContent; - } - - document.documentElement.classList.remove('toggle-' + oldValue); - document.documentElement.classList.add('toggle-' + newValue); - } - - protected fromLocalStorage(value: string): string { - return value; - } - - protected toLocalStorage(value: string): string { - return value; - } - } - - - class Filter extends Component - { - private optionVisibility:FilterItemSelect; - - private optionInherited:FilterItemCheckbox; - - private optionOnlyExported:FilterItemCheckbox; - - private optionExternals:FilterItemCheckbox; - - - constructor(options:IComponentOptions) { - super(options); - - this.optionVisibility = new FilterItemSelect('visibility', 'private'); - this.optionInherited = new FilterItemCheckbox('inherited', true); - this.optionExternals = new FilterItemCheckbox('externals', true); - this.optionOnlyExported = new FilterItemCheckbox('only-exported', false); - } - - - static isSupported():boolean { - try { - return typeof window.localStorage != 'undefined'; - } catch (e) { - return false; - } - } - } - - - if (Filter.isSupported()) { - registerComponent(Filter, '#tsd-filter'); - } else { - document.documentElement.classList.add('no-filter'); - } -} diff --git a/tools/doc/typedoc-theme/assets/js/src/typedoc/components/MenuHighlight.ts b/tools/doc/typedoc-theme/assets/js/src/typedoc/components/MenuHighlight.ts deleted file mode 100644 index 84dede980b..0000000000 --- a/tools/doc/typedoc-theme/assets/js/src/typedoc/components/MenuHighlight.ts +++ /dev/null @@ -1,147 +0,0 @@ -/// -/// -/// - -namespace typedoc -{ - /** - * Stored element and position data of a single anchor. - */ - interface IAnchorInfo - { - /** - * The anchor element. - */ - anchor: HTMLElement; - - /** - * The link element in the navigation representing this anchor. - */ - link: HTMLElement; - - /** - * The vertical offset of the anchor on the page. - */ - position: number; - } - - - /** - * Manages the sticky state of the navigation and moves the highlight - * to the current navigation item. - */ - export class MenuHighlight extends Component - { - /** - * List of all discovered anchors. - */ - private anchors:IAnchorInfo[] = []; - - /** - * Index of the currently highlighted anchor. - */ - private index:number = -1; - - - /** - * Create a new MenuHighlight instance. - * - * @param options Backbone view constructor options. - */ - constructor(options:IComponentOptions) { - super(options); - - viewport.addEventListener('resize', () => this.onResize()); - viewport.addEventListener<{ scrollTop:number }>('scroll', e => this.onScroll(e)); - - this.createAnchors(); - } - - - /** - * Find all anchors on the current page. - */ - private createAnchors() { - var base = window.location.href; - if (base.indexOf('#') != -1) { - base = base.substr(0, base.indexOf('#')); - } - - this.el.querySelectorAll('a').forEach(el => { - var href = el.href; - if (href.indexOf('#') == -1) return; - if (href.substr(0, base.length) != base) return; - - var hash = href.substr(href.indexOf('#') + 1); - var anchor = document.querySelector('a.tsd-anchor[name=' + hash + ']'); - var link = el.parentNode; - if (!anchor || !link) return; - - this.anchors.push({ - link: link as HTMLElement, - anchor: anchor, - position: 0 - }); - }); - - this.onResize(); - } - - - /** - * Triggered after the viewport was resized. - */ - private onResize() { - var anchor: IAnchorInfo; - for (var index = 0, count = this.anchors.length; index < count; index++) { - anchor = this.anchors[index]; - const rect = anchor.anchor.getBoundingClientRect(); - anchor.position = rect.top + document.body.scrollTop; - } - - this.anchors.sort((a, b) => { - return a.position - b.position; - }); - - const event = new CustomEvent('scroll', { - detail: { - scrollTop: viewport.scrollTop, - } - }); - this.onScroll(event); - } - - - /** - * Triggered after the viewport was scrolled. - * - * @param event The custom event with the current vertical scroll position. - */ - private onScroll(event: CustomEvent<{ scrollTop:number }>) { - const scrollTop = event.detail.scrollTop + 5; - const anchors = this.anchors; - const count = anchors.length - 1; - let index = this.index; - - while (index > -1 && anchors[index].position > scrollTop) { - index -= 1; - } - - while (index < count && anchors[index + 1].position < scrollTop) { - index += 1; - } - - if (this.index != index) { - if (this.index > -1) this.anchors[this.index].link.classList.remove('focus'); - this.index = index; - if (this.index > -1) this.anchors[this.index].link.classList.add('focus'); - } - } - } - - - /** - * Register this component. - */ - registerComponent(MenuHighlight, '.menu-highlight'); -} diff --git a/tools/doc/typedoc-theme/assets/js/src/typedoc/components/Search.ts b/tools/doc/typedoc-theme/assets/js/src/typedoc/components/Search.ts deleted file mode 100644 index 0c7c64ef37..0000000000 --- a/tools/doc/typedoc-theme/assets/js/src/typedoc/components/Search.ts +++ /dev/null @@ -1,336 +0,0 @@ -/// -/// - - -namespace typedoc.search -{ - interface IDocument { - id:number; - kind:number; - name:string; - url:string; - classes:string; - parent?:string; - } - - interface IData { - kinds:{[kind:number]:string}; - rows:IDocument[]; - index:object; - } - - /** - * Loading state definitions. - */ - enum SearchLoadingState - { - Idle, Loading, Ready, Failure - } - - /** - * Provides an indexed search on generated documentation - */ - export class Search extends Component { - /** - * The input field of the search widget. - */ - private field: HTMLInputElement; - - /** - * The result list wrapper. - */ - private results: HTMLElement; - - /** - * The base url that must be prepended to the indexed urls. - */ - private base: string; - - /** - * The current query string. - */ - private query: string = ''; - - /** - * The state the search is currently in. - */ - private loadingState: SearchLoadingState = SearchLoadingState.Idle; - - /** - * Is the input field focused? - */ - private hasFocus: boolean = false; - - /** - * Should the next key press be prevents? - */ - private preventPress: boolean = false; - - /** - * The search data - */ - private data: IData | null = null; - - /** - * The lunr index used to search the documentation. - */ - private index: lunr.Index | null = null; - - /** - * Has a search result been clicked? - * Used to stop the results hiding before a user can fully click on a result. - */ - private resultClicked: boolean = false; - - constructor(options: IComponentOptions) { - super(options); - - const field = document.querySelector('#tsd-search-field'); - const results = document.querySelector('.results'); - - if (!field || !results) { - throw new Error('The input field or the result list wrapper are not found'); - } - - this.field = field; - this.results = results; - - this.base = this.el.dataset.base + '/'; - - this.bindEvents(); - } - - /** - * Lazy load the search index and parse it. - */ - private loadIndex() { - if (this.loadingState != SearchLoadingState.Idle || this.data) return; - - setTimeout(() => { - if (this.loadingState == SearchLoadingState.Idle) { - this.setLoadingState(SearchLoadingState.Loading); - } - }, 500); - - const url = this.el.dataset.index; - if (!url) { - this.setLoadingState(SearchLoadingState.Failure); - return; - } - - fetch(url) - .then(response => { - if (!response.ok) { - throw new Error('The search index is missing'); - } - - return response.json(); - }) - .then((source: IData) => { - this.data = source; - this.index = lunr.Index.load(source.index); - - this.setLoadingState(SearchLoadingState.Ready); - }) - .catch((error) => { - console.error(error); - this.setLoadingState(SearchLoadingState.Failure); - }); - } - - - /** - * Update the visible state of the search control. - */ - private updateResults() { - // Don't clear results, if loading state is not ready, - // because loading or error message can be removed. - if (this.loadingState != SearchLoadingState.Ready) return; - - this.results.textContent = ''; - if (!this.query || !this.index || !this.data) return; - - // Perform a wildcard search - var res = this.index.search(`*${this.query}*`); - - // If still no results, try a fuzzy match search - if (res.length === 0) { - res = this.index.search(`*${this.query}~1*`); - } - - for (var i = 0, c = Math.min(10, res.length); i < c; i++) { - var row = this.data.rows[Number(res[i].ref)]; - - // Bold the matched part of the query in the search results - var name = row.name.replace(new RegExp(this.query, 'i'), (match: string) => `${match}`); - var parent = row.parent || ''; - parent = parent.replace(new RegExp(this.query, 'i'), (match: string) => `${match}`); - - if (parent) name = '' + parent + '.' + name; - const item = document.createElement('li'); - item.classList.value = row.classes; - item.innerHTML = ` - ${name} - `; - this.results.appendChild(item); - } - } - - - /** - * Set the loading state and update the visual state accordingly. - */ - private setLoadingState(value: SearchLoadingState) { - if (this.loadingState == value) return; - - this.el.classList.remove(SearchLoadingState[this.loadingState].toLowerCase()); - this.loadingState = value; - this.el.classList.add(SearchLoadingState[this.loadingState].toLowerCase()); - - this.updateResults(); - } - - - /** - * Set the focus state and update the visual state accordingly. - */ - private setHasFocus(value: boolean) { - if (this.hasFocus == value) return; - this.hasFocus = value; - this.el.classList.toggle('has-focus'); - - if (!value) { - this.field.value = this.query; - } else { - this.setQuery(''); - this.field.value = ''; - } - } - - - /** - * Set the query string and update the results. - */ - private setQuery(value: string) { - this.query = value.trim(); - this.updateResults(); - } - - - /** - * Move the highlight within the result set. - */ - private setCurrentResult(dir: number) { - var current = this.results.querySelector('.current'); - if (!current) { - current = this.results.querySelector(dir == 1 ? 'li:first-child' : 'li:last-child'); - if (current) { - current.classList.add('current') - } - } else { - var rel = dir == 1 ? current.nextElementSibling : current.previousElementSibling; - if (rel) { - current.classList.remove('current'); - rel.classList.add('current'); - } - } - } - - - /** - * Navigate to the highlighted result. - */ - private gotoCurrentResult() { - var current = this.results.querySelector('.current'); - - if (!current) { - current = this.results.querySelector('li:first-child'); - } - - if (current) { - const link = current.querySelector('a'); - if (link) { - window.location.href = link.href; - } - this.field.blur(); - } - } - - /** - * Bind events on result list wrapper, input field and document body. - */ - private bindEvents() { - /** - * Intercept mousedown and mouseup events so we can correctly - * handle clicking on search results. - */ - this.results.addEventListener('mousedown', () => { - this.resultClicked = true; - }); - this.results.addEventListener('mouseup', () => { - this.resultClicked = false; - this.setHasFocus(false); - }); - - - /** - * Bind all required events on the input field. - */ - this.field.addEventListener('focusin', () => { - this.setHasFocus(true); - this.loadIndex(); - }); - this.field.addEventListener('focusout', () => { - // If the user just clicked on a search result, then - // don't lose the focus straight away, as this prevents - // them from clicking the result and following the link - if (this.resultClicked) { - this.resultClicked = false; - return; - } - - setTimeout(() => this.setHasFocus(false), 100); - }); - this.field.addEventListener('input', () => { - this.setQuery(this.field.value); - }); - this.field.addEventListener('keydown', (e) => { - if (e.keyCode == 13 || e.keyCode == 27 || e.keyCode == 38 || e.keyCode == 40) { - this.preventPress = true; - e.preventDefault(); - - if (e.keyCode == 13) { - this.gotoCurrentResult(); - } else if (e.keyCode == 27) { - this.field.blur(); - } else if (e.keyCode == 38) { - this.setCurrentResult(-1); - } else if (e.keyCode == 40) { - this.setCurrentResult(1); - } - } else { - this.preventPress = false; - } - }); - this.field.addEventListener('keypress', (e) => { - if (this.preventPress) e.preventDefault(); - }); - - - /** - * Start searching by pressing a key on the body. - */ - document.body.addEventListener('keydown', e => { - if (e.altKey || e.ctrlKey || e.metaKey) return; - if (!this.hasFocus && e.keyCode > 47 && e.keyCode < 112) { - this.field.focus(); - } - }); - } - } - - /** - * Register this component. - */ - registerComponent(Search, '#tsd-search'); -} diff --git a/tools/doc/typedoc-theme/assets/js/src/typedoc/components/Signature.ts b/tools/doc/typedoc-theme/assets/js/src/typedoc/components/Signature.ts deleted file mode 100644 index d9dae1bfe6..0000000000 --- a/tools/doc/typedoc-theme/assets/js/src/typedoc/components/Signature.ts +++ /dev/null @@ -1,171 +0,0 @@ -/// -/// -/// - -namespace typedoc -{ - /** - * Holds a signature and its description. - */ - class SignatureGroup - { - /** - * The target signature. - */ - signature: Element; - - /** - * The description for the signature. - */ - description: Element; - - - /** - * Create a new SignatureGroup instance. - * - * @param signature The target signature. - * @param description The description for the signature. - */ - constructor(signature: Element, description: Element) { - this.signature = signature; - this.description = description; - } - - - /** - * Add the given class to all elements of the group. - * - * @param className The class name to add. - */ - addClass(className:string):SignatureGroup { - this.signature.classList.add(className); - this.description.classList.add(className); - return this; - } - - - /** - * Remove the given class from all elements of the group. - * - * @param className The class name to remove. - */ - removeClass(className:string):SignatureGroup { - this.signature.classList.remove(className); - this.description.classList.remove(className); - return this; - } - } - - - /** - * Controls the tab like behaviour of methods and functions with multiple signatures. - */ - class Signature extends Component - { - /** - * List of found signature groups. - */ - private groups: SignatureGroup[] = []; - - /** - * The container holding all the descriptions. - */ - private container?: HTMLElement; - - /** - * The index of the currently displayed signature. - */ - private index:number = -1; - - - /** - * Create a new Signature instance. - * - * @param options Backbone view constructor options. - */ - constructor(options:IComponentOptions) { - super(options); - - this.createGroups(); - - if (this.container) { - this.el.classList.add('active'); - Array.from(this.el.children).forEach(signature => { - signature.addEventListener('touchstart', (event) => this.onClick(event)); - signature.addEventListener('click', (event) => this.onClick(event)); - }); - this.container.classList.add('active'); - this.setIndex(0); - } - } - - - /** - * Set the index of the active signature. - * - * @param index The index of the signature to activate. - */ - private setIndex(index:number) { - if (index < 0) index = 0; - if (index > this.groups.length - 1) index = this.groups.length - 1; - if (this.index == index) return; - - const to = this.groups[index]; - if (this.index > -1) { - const from = this.groups[this.index]; - - from.removeClass('current').addClass('fade-out'); - to.addClass('current'); - to.addClass('fade-in'); - viewport.triggerResize(); - - setTimeout(() => { - from.removeClass('fade-out'); - to.removeClass('fade-in'); - }, 300); - } else { - to.addClass('current'); - viewport.triggerResize(); - } - - this.index = index; - } - - - /** - * Find all signature/description groups. - */ - private createGroups() { - const signatures = this.el.children; - if (signatures.length < 2) return; - - this.container = this.el.nextElementSibling as HTMLElement; - const descriptions = this.container.children; - - this.groups = []; - for (let index = 0; index < signatures.length; index++) { - this.groups.push(new SignatureGroup(signatures[index], descriptions[index])); - } - } - - - /** - * Triggered when the user clicks onto a signature header. - * - * @param e The related event object. - */ - private onClick(e: Event) { - this.groups.forEach((group, index) => { - if (group.signature === e.currentTarget) { - this.setIndex(index); - } - }); - } - } - - - /** - * Register this component. - */ - registerComponent(Signature, '.tsd-signatures'); -} diff --git a/tools/doc/typedoc-theme/assets/js/src/typedoc/components/Toggle.ts b/tools/doc/typedoc-theme/assets/js/src/typedoc/components/Toggle.ts deleted file mode 100644 index dd72266200..0000000000 --- a/tools/doc/typedoc-theme/assets/js/src/typedoc/components/Toggle.ts +++ /dev/null @@ -1,77 +0,0 @@ -/// -/// -/// - -namespace typedoc -{ - /** - * Enabled simple toggle buttons. - */ - class Toggle extends Component { - active?: boolean; - - className: string; - - constructor(options: IComponentOptions) { - super(options); - - this.className = this.el.dataset.toggle || ''; - this.el.addEventListener(pointerUp, (e) => this.onPointerUp(e)); - this.el.addEventListener('click', (e) => e.preventDefault()); - document.addEventListener(pointerDown, (e) => this.onDocumentPointerDown(e)); - document.addEventListener(pointerUp, (e) => this.onDocumentPointerUp(e)); - } - - setActive(value: boolean) { - if (this.active == value) return; - this.active = value; - - document.documentElement.classList.toggle('has-' + this.className, value); - this.el.classList.toggle('active', value); - - const transition = (this.active ? 'to-has-' : 'from-has-') + this.className; - document.documentElement.classList.add(transition); - setTimeout(() => document.documentElement.classList.remove(transition), 500); - } - - onPointerUp(event: Event) { - if (hasPointerMoved) return; - this.setActive(true); - event.preventDefault(); - } - - onDocumentPointerDown(e: Event) { - if (this.active) { - if ((e.target as HTMLElement).closest('.col-menu, .tsd-filter-group')) { - return; - } - - this.setActive(false); - } - } - - onDocumentPointerUp(e: Event) { - if (hasPointerMoved) return; - if (this.active) { - if ((e.target as HTMLElement).closest('.col-menu')) { - const link = (e.target as HTMLElement).closest('a'); - if (link) { - let href = window.location.href; - if (href.indexOf('#') != -1) { - href = href.substr(0, href.indexOf('#')); - } - if (link.href.substr(0, href.length) == href) { - setTimeout(() => this.setActive(false), 250); - } - } - } - } - } - } - - - /** - * Register this component. - */ - registerComponent(Toggle, 'a[data-toggle]'); -} diff --git a/tools/doc/typedoc-theme/assets/js/src/typedoc/services/Viewport.ts b/tools/doc/typedoc-theme/assets/js/src/typedoc/services/Viewport.ts deleted file mode 100644 index f7390e4966..0000000000 --- a/tools/doc/typedoc-theme/assets/js/src/typedoc/services/Viewport.ts +++ /dev/null @@ -1,135 +0,0 @@ -/// -/// -/// - -namespace typedoc -{ - /** - * A global service that monitors the window size and scroll position. - */ - export class Viewport extends EventTarget - { - /** - * The current scroll position. - */ - scrollTop:number = 0; - - /** - * The previous scrollTop. - */ - lastY:number = 0; - - /** - * The width of the window. - */ - width:number = 0; - - /** - * The height of the window. - */ - height:number = 0; - - /** - * The toolbar (contains the search input). - */ - toolbar:HTMLDivElement; - - /** - * Boolean indicating whether the toolbar is shown. - */ - showToolbar:boolean = true; - - /** - * The sticky side nav that contains members of the current page. - */ - secondaryNav:HTMLElement; - - - /** - * Create new Viewport instance. - */ - constructor() { - super(); - - this.toolbar = document.querySelector('.tsd-page-toolbar'); - this.secondaryNav = document.querySelector('.tsd-navigation.secondary'); - - window.addEventListener('scroll', throttle(() => this.onScroll(), 10)); - window.addEventListener('resize', throttle(() => this.onResize(), 10)); - - this.onResize(); - this.onScroll(); - } - - - /** - * Trigger a resize event. - */ - triggerResize() { - const event = new CustomEvent('resize', { - detail: { - width: this.width, - height: this.height, - } - }); - - this.dispatchEvent(event); - } - - - /** - * Triggered when the size of the window has changed. - */ - onResize() { - this.width = window.innerWidth || 0; - this.height = window.innerHeight || 0; - - const event = new CustomEvent('resize', { - detail: { - width: this.width, - height: this.height, - } - }); - - this.dispatchEvent(event); - } - - - /** - * Triggered when the user scrolled the viewport. - */ - onScroll() { - this.scrollTop = window.scrollY || 0; - - const event = new CustomEvent('scroll', { - detail: { - scrollTop: this.scrollTop, - } - }); - - this.dispatchEvent(event); - this.hideShowToolbar(); - } - - - /** - * Handle hiding/showing of the toolbar. - */ - hideShowToolbar() { - const isShown = this.showToolbar; - this.showToolbar = this.lastY >= this.scrollTop || this.scrollTop === 0; - if (isShown !== this.showToolbar) { - this.toolbar.classList.toggle('tsd-page-toolbar--hide'); - this.secondaryNav.classList.toggle('tsd-navigation--toolbar-hide'); - } - this.lastY = this.scrollTop; - } - } - - - /** - * Register service. - */ - export var viewport:Viewport; - registerService(Viewport, 'viewport'); -} diff --git a/tools/doc/typedoc-theme/assets/js/src/typedoc/utils/pointer.ts b/tools/doc/typedoc-theme/assets/js/src/typedoc/utils/pointer.ts deleted file mode 100644 index ef4828f718..0000000000 --- a/tools/doc/typedoc-theme/assets/js/src/typedoc/utils/pointer.ts +++ /dev/null @@ -1,96 +0,0 @@ -/// - -namespace typedoc -{ - /** - * Simple point interface. - */ - export interface Point { - x:number; - y:number; - } - - /** - * Event name of the pointer down event. - */ - export var pointerDown:string = 'mousedown'; - - /** - * Event name of the pointer move event. - */ - export var pointerMove:string = 'mousemove'; - - /** - * Event name of the pointer up event. - */ - export var pointerUp:string = 'mouseup'; - - /** - * Position the pointer was pressed at. - */ - export var pointerDownPosition:Point = {x:0, y:0}; - - /** - * Should the next click on the document be supressed? - */ - export var preventNextClick:boolean = false; - - /** - * Is the pointer down? - */ - export var isPointerDown:boolean = false; - - /** - * Is the pointer a touch point? - */ - export var isPointerTouch:boolean = false; - - /** - * Did the pointer move since the last down event? - */ - export var hasPointerMoved:boolean = false; - - /** - * Is the user agent a mobile agent? - */ - export var isMobile:boolean = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent); - document.documentElement.classList.add(isMobile ? 'is-mobile' : 'not-mobile'); - - - if (isMobile && 'ontouchstart' in document.documentElement) { - isPointerTouch = true; - pointerDown = 'touchstart'; - pointerMove = 'touchmove'; - pointerUp = 'touchend'; - } - - document.addEventListener(pointerDown, (e) => { - isPointerDown = true; - hasPointerMoved = false; - var t = (pointerDown == 'touchstart' ? (e as TouchEvent).targetTouches[0] : (e as MouseEvent)); - pointerDownPosition.y = t.pageY || 0; - pointerDownPosition.x = t.pageX || 0; - }); - - document.addEventListener(pointerMove, (e) => { - if (!isPointerDown) return; - if (!hasPointerMoved) { - var t = (pointerDown == 'touchstart' ? (e as TouchEvent).targetTouches[0] : (e as MouseEvent)); - var x = pointerDownPosition.x - (t.pageX || 0); - var y = pointerDownPosition.y - (t.pageY || 0); - hasPointerMoved = (Math.sqrt(x*x + y*y) > 10); - } - }); - - document.addEventListener(pointerUp, () => { - isPointerDown = false; - }); - - document.addEventListener('click', (e) => { - if (preventNextClick) { - e.preventDefault(); - e.stopImmediatePropagation(); - preventNextClick = false; - } - }); -} diff --git a/tools/doc/typedoc-theme/assets/js/src/typedoc/utils/trottle.ts b/tools/doc/typedoc-theme/assets/js/src/typedoc/utils/trottle.ts deleted file mode 100644 index 5bc6f8c8df..0000000000 --- a/tools/doc/typedoc-theme/assets/js/src/typedoc/utils/trottle.ts +++ /dev/null @@ -1,13 +0,0 @@ -namespace typedoc -{ - export const throttle = (fn: (...args: A) => void, wait = 100) => { - let time = Date.now(); - return (...args: A) => { - if ((time + wait - Date.now()) < 0) { - fn(...args); - time = Date.now(); - } - } - } - -} \ No newline at end of file diff --git a/tools/doc/typedoc-theme/assets/js/src/~bootstrap.ts b/tools/doc/typedoc-theme/assets/js/src/~bootstrap.ts deleted file mode 100644 index c03704da6a..0000000000 --- a/tools/doc/typedoc-theme/assets/js/src/~bootstrap.ts +++ /dev/null @@ -1,12 +0,0 @@ -/// -/// -/// -/// -/// -/// -/// - -namespace typedoc -{ - export var app: Application = new Application(); -} \ No newline at end of file diff --git a/tools/doc/typedoc-theme/layouts/default.hbs b/tools/doc/typedoc-theme/layouts/default.hbs index 7c3d71f16c..4ed1cac1a8 100644 --- a/tools/doc/typedoc-theme/layouts/default.hbs +++ b/tools/doc/typedoc-theme/layouts/default.hbs @@ -1,47 +1,52 @@ + - {{#ifCond model.name '==' project.name}}{{project.name}}{{else}}{{model.name}} | {{project.name}}{{/ifCond}} + {{#ifCond model.name '==' project.name}}{{project.name}}{{else}}{{model.name}} | {{project.name}}{{/ifCond}} + + + {{> analytics}} + -{{> header}} + {{> header}} -
-
-
- {{{contents}}} -
-
- - -{{> footer}} -
- + {{> footer}} +
+ - + + \ No newline at end of file diff --git a/tools/doc/typedoc-theme/partials/analytics.hbs b/tools/doc/typedoc-theme/partials/analytics.hbs index adf8a8f20e..6732c9cdfa 100644 --- a/tools/doc/typedoc-theme/partials/analytics.hbs +++ b/tools/doc/typedoc-theme/partials/analytics.hbs @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/tools/doc/typedoc-theme/partials/breadcrumb.hbs b/tools/doc/typedoc-theme/partials/breadcrumb.hbs index 319741831c..ad63bac7a1 100644 --- a/tools/doc/typedoc-theme/partials/breadcrumb.hbs +++ b/tools/doc/typedoc-theme/partials/breadcrumb.hbs @@ -10,7 +10,7 @@ {{else}} {{#if url}}
  • - Globals + {{ name }}
  • {{/if}} -{{/if}} \ No newline at end of file +{{/if}} diff --git a/tools/doc/typedoc-theme/partials/header.hbs b/tools/doc/typedoc-theme/partials/header.hbs index a15f828b1b..2e168a7283 100644 --- a/tools/doc/typedoc-theme/partials/header.hbs +++ b/tools/doc/typedoc-theme/partials/header.hbs @@ -36,11 +36,6 @@ {{/unless}} - - {{#unless settings.excludeNotExported}} - - - {{/unless}} @@ -51,9 +46,11 @@
    -
      - {{#with model}}{{> breadcrumb}}{{/with}} -
    + {{#if model.parent}} {{! Don't show breadcrumbs on main project page, it is the root page. !}} +
      + {{#with model}}{{> breadcrumb}}{{/with}} +
    + {{/if}}

    {{#compact}} {{model.kindString}}  {{model.name}} diff --git a/tools/doc/typedoc-theme/partials/index.hbs b/tools/doc/typedoc-theme/partials/index.hbs index 05d199d652..b667317cff 100644 --- a/tools/doc/typedoc-theme/partials/index.hbs +++ b/tools/doc/typedoc-theme/partials/index.hbs @@ -1,30 +1,50 @@ -{{#if groups}} -
    -

    Index

    -
    -
    - {{#each groups}} -
    - {{#if categories}} - {{#each categories}} -

    {{#if title}}{{title}} {{/if}}{{../title}}

    - - {{/each}} - {{else}} +{{#if categories}} +
    +

    Index

    +
    +
    + {{#each categories}} +

    {{title}}

    - {{/if}} -
    - {{/each}} -
    +
    + {{/each}} +
    +
    +
    +{{else}} + {{#if groups}} +
    +

    Index

    +
    +
    + {{#each groups}} +
    + {{#if categories}} + {{#each categories}} +

    {{#if title}}{{title}} {{/if}}{{../title}}

    + + {{/each}} + {{else}} +

    {{title}}

    + + {{/if}} +
    + {{/each}} +
    +
    - -{{/if}} \ No newline at end of file + {{/if}} +{{/if}} diff --git a/tools/doc/typedoc-theme/partials/type.hbs b/tools/doc/typedoc-theme/partials/type.hbs index f226d52e6f..b810933493 100644 --- a/tools/doc/typedoc-theme/partials/type.hbs +++ b/tools/doc/typedoc-theme/partials/type.hbs @@ -73,9 +73,54 @@ if an inner type may result in invalid output without them. For example: {{name}} {{/inline}} +{{#*inline 'literal'}} + {{stringify value}} +{{/inline}} + +{{#*inline 'mapped'}} + { + {{#ifCond readonlyModifier '===' '+'}} + readonly + {{else}} + {{#ifCond readonlyModifier '===' '-'}} + -readonly + {{/ifCond}} + {{/ifCond}} + + [ + {{parameter}} + in + + {{#with parameterType}} + {{>type}} + {{/with}} + + {{#with nameType}} + as + {{>type}} + {{/with}} + + ] + {{#ifCond readonlyModifier '===' '+'}} + ?: + {{else}} + {{#ifCond readonlyModifier '===' '-'}} + -?: + {{else}} + : + {{/ifCond}} + {{/ifCond}} + + {{#with templateType}} + {{>type}} + {{/with}} + + } +{{/inline}} + {{#*inline 'predicate'}} {{#if asserts}} - asserts + asserts {{/if}} {{name}} {{#if targetType}} @@ -94,13 +139,13 @@ if an inner type may result in invalid output without them. For example: {{/inline}} {{#*inline 'reference'}} - {{#if reflection}} - - {{reflection.name}} + {{#with getReflection }} + + {{name}} {{else}} {{name}} - {{/if}} + {{/with}} {{#if typeArguments}} < {{#each typeArguments}} @@ -159,10 +204,6 @@ if an inner type may result in invalid output without them. For example: {{/if}} {{/inline}} -{{#*inline 'stringLiteral'}} - "{{value}}" -{{/inline}} - {{#*inline 'tuple'}} [ {{#each elements}} @@ -174,6 +215,24 @@ if an inner type may result in invalid output without them. For example: ] {{/inline}} +{{#*inline 'template-literal'}} + ` + {{#if head}} + {{head}} + {{/if}} + {{#each tail}} + ${ + {{#with this.[0]}} + {{>type}} + {{/with}} + } + {{#if this.[1]}} + {{this.[1]}} + {{/if}} + {{/each}} + ` +{{/inline}} + {{#*inline 'typeOperator'}} {{operator}} {{#with target}} @@ -204,6 +263,18 @@ if an inner type may result in invalid output without them. For example: {{name}} {{/inline}} +{{#*inline 'named-tuple-member'}} + {{name}} + {{#if isOptional}} + ?: + {{else}} + : + {{/if}} + {{#with element}} + {{> type}} + {{/with}} +{{/inline}} + {{#if this}} {{> (lookup . 'type') }} {{else}} diff --git a/tools/doc/typedoc-theme/partials/typeParameters.hbs b/tools/doc/typedoc-theme/partials/typeParameters.hbs index a0adf80739..81a0e84847 100644 --- a/tools/doc/typedoc-theme/partials/typeParameters.hbs +++ b/tools/doc/typedoc-theme/partials/typeParameters.hbs @@ -7,6 +7,9 @@ {{#with type}}{{> type}}{{/with}} {{/if}} + {{#if default}} +  = {{#with default}}{{> type}}{{/with}} + {{/if}} {{/compact}}

    {{> comment}} diff --git a/tools/src/check-imports.ts b/tools/src/check-imports.ts index 4beb64ca4b..d56806c5d9 100644 --- a/tools/src/check-imports.ts +++ b/tools/src/check-imports.ts @@ -10,7 +10,7 @@ import { mapcat, transduce, } from "@thi.ng/transducers"; -import { readFileSync } from "fs"; +import { readdirSync, readFileSync, statSync } from "fs"; import { files, readJSON } from "./io"; import { shortName } from "./partials/package"; @@ -18,6 +18,7 @@ const RE_IMPORT = /\}? from "(?!\.)([a-z0-9@/.-]+)";/; const xform = comp( mapcat((f: string) => readFileSync(f).toString().split("\n")), + filter((line) => !line.startsWith(" * ")), map((line) => RE_IMPORT.exec(line)), filter((x) => !!x), map((x) => x![1]) @@ -26,9 +27,10 @@ const xform = comp( const usedDependencies = (rootDir: string) => transduce(xform, conj(), files(rootDir, ".ts")); -const updateImports = (project: string) => { - const pkgPath = project + "/package.json"; - const deps = usedDependencies(project + "/src"); +const updateImports = (root: string, latest = false) => { + console.log(root); + const pkgPath = root + "/package.json"; + const deps = usedDependencies(root + "/src"); const pkg = readJSON(pkgPath); !pkg.dependencies && (pkg.dependencies = {}); const mergedDeps = unionR([deps, keys(pkg.dependencies)]); @@ -38,7 +40,7 @@ const updateImports = (project: string) => { if (!d.startsWith("@thi.ng")) continue; if (deps.has(d) && !pkg.dependencies[d]) { const depPkg = readJSON(`packages/${shortName(d)}/package.json`); - pairs.push([d, `^${depPkg.version}`]); + pairs.push([d, latest ? "latest" : `^${depPkg.version}`]); edit = true; } else if (!deps.has(d)) { delete pkg.dependencies[d]; @@ -55,5 +57,19 @@ const updateImports = (project: string) => { } }; +const updateProjects = (parent: string, latest = false) => { + for (let pkg of readdirSync(parent)) { + pkg = `${parent}/${pkg}`; + if (statSync(pkg).isDirectory()) { + updateImports(pkg, latest); + } + } +}; + const project = process.argv[2]; -updateImports(project); + +project + ? project === "examples" + ? updateProjects("examples", true) + : updateImports(project) + : updateProjects("packages"); diff --git a/yarn.lock b/yarn.lock index eb45aca0d7..5653762ea6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3673,6 +3673,11 @@ colorette@^1.2.1: resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.1.tgz#4d0b921325c14faf92633086a536db6e89564b1b" integrity sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw== +colors@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" + integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== + colors@~1.2.1: version "1.2.5" resolved "https://registry.yarnpkg.com/colors/-/colors-1.2.5.tgz#89c7ad9a374bc030df8013241f68136ed8835afc" @@ -5595,11 +5600,6 @@ hex-color-regex@^1.1.0: resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== -highlight.js@^10.2.0: - version "10.4.1" - resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-10.4.1.tgz#d48fbcf4a9971c4361b3f95f302747afe19dbad0" - integrity sha512-yR5lWvNz7c85OhVAEAeFhVCc/GV4C30Fjzc/rCP0aCWzc1UUOPUk55dK/qdwTZHBvMZo+eZ2jpk62ndX/xMFlg== - hmac-drbg@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" @@ -6518,7 +6518,7 @@ json5@^1.0.1: dependencies: minimist "^1.2.0" -json5@^2.1.2: +json5@^2.1.0, json5@^2.1.2: version "2.1.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.3.tgz#c9b0f7fa9233bfe5807fe66fcf3a5617ed597d43" integrity sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA== @@ -6951,10 +6951,10 @@ map-visit@^1.0.0: dependencies: object-visit "^1.0.0" -marked@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/marked/-/marked-1.1.1.tgz#e5d61b69842210d5df57b05856e0c91572703e6a" - integrity sha512-mJzT8D2yPxoPh7h0UXkB+dBj4FykPJ2OIfxAWeIHrvoHDkFxukV/29QxoFQoPM6RLEwhIFdJpmKBlqVM3s2ZIw== +marked@^1.2.5: + version "1.2.7" + resolved "https://registry.yarnpkg.com/marked/-/marked-1.2.7.tgz#6e14b595581d2319cdcf033a24caaf41455a01fb" + integrity sha512-No11hFYcXr/zkBvL6qFmAp1z6BKY3zqLMHny/JN/ey+al7qwCM2+CMBL9BOgqMxZU36fz4cCWfn2poWIf7QRXA== md5.js@^1.3.4: version "1.3.5" @@ -7779,6 +7779,13 @@ onetime@^5.1.0: dependencies: mimic-fn "^2.1.0" +onigasm@^2.2.5: + version "2.2.5" + resolved "https://registry.yarnpkg.com/onigasm/-/onigasm-2.2.5.tgz#cc4d2a79a0fa0b64caec1f4c7ea367585a676892" + integrity sha512-F+th54mPc0l1lp1ZcFMyL/jTs2Tlq4SqIHKIXGZOR/VkHkF9A7Fr5rRr5+ZG/lWeRsyrClLYRq7s/yFQ/XhWCA== + dependencies: + lru-cache "^5.1.1" + open@^7.0.4: version "7.3.0" resolved "https://registry.yarnpkg.com/open/-/open-7.3.0.tgz#45461fdee46444f3645b6e14eb3ca94b82e1be69" @@ -9476,6 +9483,31 @@ shelljs@^0.8.4: interpret "^1.0.0" rechoir "^0.6.2" +shiki-languages@^0.2.7: + version "0.2.7" + resolved "https://registry.yarnpkg.com/shiki-languages/-/shiki-languages-0.2.7.tgz#7230b675b96d37a36ac1bf995525375ce69f3924" + integrity sha512-REmakh7pn2jCn9GDMRSK36oDgqhh+rSvJPo77sdWTOmk44C5b0XlYPwJZcFOMJWUZJE0c7FCbKclw4FLwUKLRw== + dependencies: + vscode-textmate "^5.2.0" + +shiki-themes@^0.2.7: + version "0.2.7" + resolved "https://registry.yarnpkg.com/shiki-themes/-/shiki-themes-0.2.7.tgz#6e04451d832152e0fc969876a7bd926b3963c1f2" + integrity sha512-ZMmboDYw5+SEpugM8KGUq3tkZ0vXg+k60XX6NngDK7gc1Sv6YLUlanpvG3evm57uKJvfXsky/S5MzSOTtYKLjA== + dependencies: + json5 "^2.1.0" + vscode-textmate "^5.2.0" + +shiki@^0.2.7: + version "0.2.7" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-0.2.7.tgz#d2547548ed8742673730e1e4bbe792a77c445540" + integrity sha512-bwVc7cdtYYHEO9O+XJ8aNOskKRfaQd5Y4ovLRfbQkmiLSUaR+bdlssbZUUhbQ0JAFMYcTcJ5tjG5KtnufttDHQ== + dependencies: + onigasm "^2.2.5" + shiki-languages "^0.2.7" + shiki-themes "^0.2.7" + vscode-textmate "^5.2.0" + signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" @@ -10418,27 +10450,27 @@ typedarray@^0.0.6: resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= -typedoc-default-themes@^0.11.4: - version "0.11.4" - resolved "https://registry.yarnpkg.com/typedoc-default-themes/-/typedoc-default-themes-0.11.4.tgz#1bc55b7c8d1132844616ff6f570e1e2cd0eb7343" - integrity sha512-Y4Lf+qIb9NTydrexlazAM46SSLrmrQRqWiD52593g53SsmUFioAsMWt8m834J6qsp+7wHRjxCXSZeiiW5cMUdw== +typedoc-default-themes@0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/typedoc-default-themes/-/typedoc-default-themes-0.12.0.tgz#42451948e55a148c1350eb2aa68829be5c2b06b3" + integrity sha512-0hHBxwmfxE0rkIslOiO39fJyYwaScQEhUIxcpqx3uS1BL3zhFW5oQfUaPx2cv2XLL/GXhYFxhdFLoVmNptbxEQ== -typedoc@^0.19.2: - version "0.19.2" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.19.2.tgz#842a63a581f4920f76b0346bb80eb2a49afc2c28" - integrity sha512-oDEg1BLEzi1qvgdQXc658EYgJ5qJLVSeZ0hQ57Eq4JXy6Vj2VX4RVo18qYxRWz75ifAaYuYNBUCnbhjd37TfOg== +typedoc@^0.20.4: + version "0.20.4" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.20.4.tgz#e91dd3a802a845a7119d9162c8fefdd72e7a9b2a" + integrity sha512-C5ogtMwNKTAg7GctTPzd4ndSVz24WhBYfxf4UMYnnQImgIARllmeHE/+NuYLNmXVJjOnnWpRcErga9sN4ynZdg== dependencies: + colors "^1.4.0" fs-extra "^9.0.1" handlebars "^4.7.6" - highlight.js "^10.2.0" lodash "^4.17.20" lunr "^2.3.9" - marked "^1.1.1" + marked "^1.2.5" minimatch "^3.0.0" progress "^2.0.3" - semver "^7.3.2" shelljs "^0.8.4" - typedoc-default-themes "^0.11.4" + shiki "^0.2.7" + typedoc-default-themes "0.12.0" typescript@^4.1.3, typescript@~4.0.5: version "4.1.3" @@ -10687,6 +10719,11 @@ vm2@^3.9.2: resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.9.2.tgz#a4085d2d88a808a1b3c06d5478c2db3222a9cc30" integrity sha512-nzyFmHdy2FMg7mYraRytc2jr4QBaUY3TEGe3q3bK8EgS9WC98wxn2jrPxS/ruWm+JGzrEIIeufKweQzVoQEd+Q== +vscode-textmate@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/vscode-textmate/-/vscode-textmate-5.2.0.tgz#01f01760a391e8222fe4f33fbccbd1ad71aed74e" + integrity sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ== + w3c-hr-time@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd"