diff --git a/.all-contributorsrc b/.all-contributorsrc index 657956c038..8e539240ff 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -13,7 +13,8 @@ "contributions": [ "code", "doc", - "maintenance" + "maintenance", + "financial" ] }, { @@ -24,7 +25,9 @@ "contributions": [ "code", "example", - "bug" + "bug", + "ideas", + "financial" ] }, { @@ -36,7 +39,8 @@ "code", "ideas", "example", - "blog" + "blog", + "financial" ] }, { @@ -69,7 +73,8 @@ "contributions": [ "doc", "bug", - "ideas" + "ideas", + "financial" ] }, { @@ -98,7 +103,8 @@ "contributions": [ "bug", "code", - "ideas" + "ideas", + "financial" ] }, { @@ -179,6 +185,42 @@ "contributions": [ "doc" ] + }, + { + "login": "mhuebert", + "name": "Matt Huebert", + "avatar_url": "https://avatars1.githubusercontent.com/u/165223?v=4", + "profile": "http://matt.is", + "contributions": [ + "financial" + ] + }, + { + "login": "raphaelsaunier", + "name": "Raphael Saunier", + "avatar_url": "https://avatars2.githubusercontent.com/u/170256?v=4", + "profile": "http://raphaelsaunier.com", + "contributions": [ + "financial" + ] + }, + { + "login": "eihli", + "name": "Eric Ihli", + "avatar_url": "https://avatars0.githubusercontent.com/u/1719584?v=4", + "profile": "http://owoga.com", + "contributions": [ + "financial" + ] + }, + { + "login": "davidpham87", + "name": "David Pham", + "avatar_url": "https://avatars3.githubusercontent.com/u/7083286?v=4", + "profile": "https://davidpham87.github.io", + "contributions": [ + "financial" + ] } ], "contributorsPerLine": 7, diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 06da5f6968..7cf593fb11 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1 +1,2 @@ +github: postspectacular patreon: thing_umbrella diff --git a/README.md b/README.md index bec56c68da..9cabe9d01b 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ > the composer of. Geared towards versatility, not any specific type of music." > — [@loganpowell](https://twitter.com/logantpowell/status/1186334119812304901) via Twitter -Mono-repository for ~125 thi.ng TypeScript/ES6 projects, a wide +Mono-repository for 125+ thi.ng TypeScript/ES6 projects, a wide collection of largely data transformation oriented packages and building blocks for: @@ -195,12 +195,15 @@ fairly detailed overview for contributors here: | Project | Version | Changelog | Description | |-----------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------|--------------------------------------------------| +| [`@thi.ng/adapt-dpi`](./packages/adapt-dpi) | [![version](https://img.shields.io/npm/v/@thi.ng/adapt-dpi.svg)](https://www.npmjs.com/package/@thi.ng/adapt-dpi) | [changelog](./packages/adapt-dpi/CHANGELOG.md) | HDPI canvas adaptation / styling util | | [`@thi.ng/dl-asset`](./packages/dl-asset) | [![version](https://img.shields.io/npm/v/@thi.ng/dl-asset.svg)](https://www.npmjs.com/package/@thi.ng/dl-asset) | [changelog](./packages/download/CHANGELOG.md) | Asset download trigger helper | +| [`@thi.ng/hdiff`](./packages/hdiff) | [![version](https://img.shields.io/npm/v/@thi.ng/hdiff.svg)](https://www.npmjs.com/package/@thi.ng/hdiff) | [changelog](./packages/hdiff/CHANGELOG.md) | String diffing w/ hiccup output (includes CLI) | | [`@thi.ng/hdom`](./packages/hdom) | [![version](https://img.shields.io/npm/v/@thi.ng/hdom.svg)](https://www.npmjs.com/package/@thi.ng/hdom) | [changelog](./packages/hdom/CHANGELOG.md) | Hiccup based VDOM & diffing | -| [`@thi.ng/hdom-canvas`](./packages/hdom-canvas) | [![version](https://img.shields.io/npm/v/@thi.ng/hdom-canvas.svg)](https://www.npmjs.com/package/@thi.ng/hdom-canvas) | [changelog](./packages/hdom-canvas/CHANGELOG.md) | hdom based declarative canvas drawing | +| [`@thi.ng/hdom-canvas`](./packages/hdom-canvas) | [![version](https://img.shields.io/npm/v/@thi.ng/hdom-canvas.svg)](https://www.npmjs.com/package/@thi.ng/hdom-canvas) | [changelog](./packages/hdom-canvas/CHANGELOG.md) | hdom adapter for hiccup-canvas | | [`@thi.ng/hdom-components`](./packages/hdom-components) | [![version](https://img.shields.io/npm/v/@thi.ng/hdom-components.svg)](https://www.npmjs.com/package/@thi.ng/hdom-components) | [changelog](./packages/hdom-components/CHANGELOG.md) | hdom based UI components | | [`@thi.ng/hdom-mock`](./packages/hdom-mock) | [![version](https://img.shields.io/npm/v/@thi.ng/hdom-mock.svg)](https://www.npmjs.com/package/@thi.ng/hdom-mock) | [changelog](./packages/hdom-mock/CHANGELOG.md) | hdom mock implementation (testing / prototyping) | | [`@thi.ng/hiccup`](./packages/hiccup) | [![version](https://img.shields.io/npm/v/@thi.ng/hiccup.svg)](https://www.npmjs.com/package/@thi.ng/hiccup) | [changelog](./packages/hiccup/CHANGELOG.md) | S-expression based HTML/XML serialization | +| [`@thi.ng/hiccup-canvas`](./packages/hiccup-canvas) | [![version](https://img.shields.io/npm/v/@thi.ng/hiccup-canvas.svg)](https://www.npmjs.com/package/@thi.ng/hiccup-canvas) | [changelog](./packages/hiccup-canvas/CHANGELOG.md) | hiccup interpreter for canvas api | | [`@thi.ng/hiccup-carbon-icons`](./packages/hiccup-carbon-icons) | [![version](https://img.shields.io/npm/v/@thi.ng/hiccup-carbon-icons.svg)](https://www.npmjs.com/package/@thi.ng/hiccup-carbon-icons) | [changelog](./packages/hiccup-carbon-icons/CHANGELOG.md) | IBM Carbon icons in hiccup format | | [`@thi.ng/hiccup-css`](./packages/hiccup-css) | [![version](https://img.shields.io/npm/v/@thi.ng/hiccup-css.svg)](https://www.npmjs.com/package/@thi.ng/hiccup-css) | [changelog](./packages/hiccup-css/CHANGELOG.md) | CSS from nested JS data structures | | [`@thi.ng/hiccup-markdown`](./packages/hiccup-markdown) | [![version](https://img.shields.io/npm/v/@thi.ng/hiccup-markdown.svg)](https://www.npmjs.com/package/@thi.ng/hiccup-markdown) | [changelog](./packages/hiccup-markdown/CHANGELOG.md) | Hiccup-to-Markdown serialization | @@ -347,17 +350,17 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d - - - + + + - + - + @@ -368,6 +371,10 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d + + + +

Karsten Schmidt

πŸ’» πŸ“– 🚧

Alberto

πŸ’» πŸ’‘ πŸ›

Arthur Carabott

πŸ’» πŸ€” πŸ’‘ πŸ“

Karsten Schmidt

πŸ’» πŸ“– 🚧 πŸ’΅

Alberto

πŸ’» πŸ’‘ πŸ› πŸ€” πŸ’΅

Arthur Carabott

πŸ’» πŸ€” πŸ’‘ πŸ“ πŸ’΅

AndrΓ© Wachter

πŸ’» πŸ€” πŸ›

Gavin Cannizzaro

πŸ’» πŸ› πŸ€”

Logan Powell

πŸ“– πŸ› πŸ€”

Logan Powell

πŸ“– πŸ› πŸ€” πŸ’΅

Marcin Ignac

πŸ›

arcticnoah

πŸ’»

allforabit

πŸ› πŸ’» πŸ€”

allforabit

πŸ› πŸ’» πŸ€” πŸ’΅

Yifan Wu

πŸ› πŸ“–

stwind

πŸ’» πŸ›

evilive

πŸ’»

Nik Shevchenko

πŸ› πŸ’»

Matei Adriel

πŸ’» πŸ› πŸ€”

Pierre Grimaud

πŸ“–

Matt Huebert

πŸ’΅

Raphael Saunier

πŸ’΅

Eric Ihli

πŸ’΅

David Pham

πŸ’΅
diff --git a/assets/hdiff/hdiff.png b/assets/hdiff/hdiff.png new file mode 100644 index 0000000000..2ca473cb57 Binary files /dev/null and b/assets/hdiff/hdiff.png differ diff --git a/examples/adaptive-threshold/src/events.ts b/examples/adaptive-threshold/src/events.ts index 3e76a00cf3..cfd325b0fa 100644 --- a/examples/adaptive-threshold/src/events.ts +++ b/examples/adaptive-threshold/src/events.ts @@ -1,11 +1,6 @@ import { setIn } from "@thi.ng/paths"; import { GRAY8, PackedBuffer } from "@thi.ng/pixel"; -import { - ISubscriber, - pubsub, - stream, - trace -} from "@thi.ng/rstream"; +import { ISubscriber, pubsub, stream, trace } from "@thi.ng/rstream"; import { state } from "./state"; import { adaptiveThreshold } from "./threshold"; import { diff --git a/examples/adaptive-threshold/src/index.ts b/examples/adaptive-threshold/src/index.ts index 0829dc7ec0..bc34d84ba9 100644 --- a/examples/adaptive-threshold/src/index.ts +++ b/examples/adaptive-threshold/src/index.ts @@ -8,7 +8,7 @@ import { Event, SET_IMAGE, SET_KERNEL_OFFSET, - SET_KERNEL_WIDTH + SET_KERNEL_WIDTH, } from "./api"; import { dispatch } from "./events"; import { state } from "./state"; @@ -29,10 +29,10 @@ const canvas = { "canvas.mv3.pa1.ba", { width: pix.width, - height: pix.height - } + height: pix.height, + }, ]; - } + }, }; /** @@ -46,9 +46,9 @@ const fileChooser = [ { type: "file", accept: "image/png, image/jpeg, image/webp", - onchange: (e: any) => dispatch([SET_IMAGE, e.target.files[0]]) - } - ] + onchange: (e: any) => dispatch([SET_IMAGE, e.target.files[0]]), + }, + ], ]; /** @@ -69,9 +69,9 @@ const param = (eventID: string, label: string, value: number, opts: any) => [ value, onchange: (e: any) => dispatch([eventID, parseInt(e.target.value)]), - ...opts - } - ] + ...opts, + }, + ], ]; /** @@ -85,14 +85,14 @@ const imageEditor = ({ destImg, threshold }: AppState) => [ param(SET_KERNEL_WIDTH, "Width", threshold.windowSize, { min: 3, max: 29, - step: 2 + step: 2, }), param(SET_KERNEL_OFFSET, "Offset", threshold.offset, { min: -20, max: 20, - step: 1 + step: 1, }), - [canvas, destImg] + [canvas, destImg], ]; /** @@ -105,7 +105,7 @@ const app = (state: AppState) => { "div", ["h1", "Adaptive thresholding"], fileChooser, - state.destImg ? imageEditor(state) : null + state.destImg ? imageEditor(state) : null, ]; }; diff --git a/examples/adaptive-threshold/src/threshold.ts b/examples/adaptive-threshold/src/threshold.ts index bcee0f5d7f..52fbd77943 100644 --- a/examples/adaptive-threshold/src/threshold.ts +++ b/examples/adaptive-threshold/src/threshold.ts @@ -8,7 +8,7 @@ import { multiplex, range2d, repeat, - transduce + transduce, } from "@thi.ng/transducers"; /** @@ -43,7 +43,7 @@ export const adaptiveThreshold = ( kheight: windowSize, wrap: false, border: 0, - reduce: mean + reduce: mean, }) ), map(([[x, y], mean]) => diff --git a/examples/async-effect/src/index.ts b/examples/async-effect/src/index.ts index 55f22c598d..ffc4eabdfe 100644 --- a/examples/async-effect/src/index.ts +++ b/examples/async-effect/src/index.ts @@ -5,7 +5,7 @@ import { EventDef, FX_DISPATCH_ASYNC, FX_DISPATCH_NOW, - valueSetter + valueSetter, } from "@thi.ng/interceptors"; import type { IObjectOf } from "@thi.ng/api"; @@ -37,7 +37,7 @@ const events: IObjectOf = { // the last items in the array are the event IDs for success & error outcomes [EV_LOAD_JSON]: (_, [__, url]) => ({ [FX_DISPATCH_NOW]: [EV_SET_STATUS, ["idle", `loading: ${url}...`]], - [FX_DISPATCH_ASYNC]: [FX_JSON, url, EV_RECEIVE_JSON, EV_ERROR] + [FX_DISPATCH_ASYNC]: [FX_JSON, url, EV_RECEIVE_JSON, EV_ERROR], }), // this event will be triggered after JSON data has been successfully loaded @@ -52,28 +52,28 @@ const events: IObjectOf = { () => ({ [FX_DISPATCH_NOW]: [ EV_SET_STATUS, - ["success", "JSON successfully loaded"] + ["success", "JSON successfully loaded"], ], [FX_DISPATCH_ASYNC]: [ FX_DELAY, [1000, ["idle", "done."]], EV_SET_STATUS, - EV_ERROR - ] - }) + EV_ERROR, + ], + }), ], // error event handler [EV_ERROR]: (_, [__, err]) => ({ - [FX_DISPATCH_NOW]: [EV_SET_STATUS, ["error", err.message]] - }) + [FX_DISPATCH_NOW]: [EV_SET_STATUS, ["error", err.message]], + }), }; const effects: IObjectOf = { // these are async side effects. ALWAYS MUST RETURN A PROMISE [FX_JSON]: (url) => fetch(url).then((res) => res.json()), [FX_DELAY]: ([x, msg]) => - new Promise((res) => setTimeout(() => res(msg), x)) + new Promise((res) => setTimeout(() => res(msg), x)), }; // main app component @@ -92,7 +92,7 @@ const app = () => { return [ "div", ["p#status", { class: status[0] }, `status: ${status[1]}`], - ["pre", json] + ["pre", json], ]; } }; diff --git a/examples/bitmap-font/src/font.ts b/examples/bitmap-font/src/font.ts index 2912a1a6d6..da3d15d9b3 100644 --- a/examples/bitmap-font/src/font.ts +++ b/examples/bitmap-font/src/font.ts @@ -99,5 +99,5 @@ export const FONT = [ [0x06, 0x0c, 0x0c, 0x30, 0x0c, 0x0c, 0x06, 0x00], [0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00], [0x60, 0x30, 0x30, 0x0c, 0x30, 0x30, 0x60, 0x00], - [0x00, 0x00, 0x60, 0x99, 0x06, 0x00, 0x00, 0x00] + [0x00, 0x00, 0x60, 0x99, 0x06, 0x00, 0x00, 0x00], ]; diff --git a/examples/bitmap-font/src/index.ts b/examples/bitmap-font/src/index.ts index 455ce60b66..efd1485172 100644 --- a/examples/bitmap-font/src/index.ts +++ b/examples/bitmap-font/src/index.ts @@ -1,11 +1,6 @@ import { dropdown } from "@thi.ng/hdom-components"; import { clamp } from "@thi.ng/math"; -import { - stream, - Stream, - Subscription, - sync -} from "@thi.ng/rstream"; +import { stream, Stream, Subscription, sync } from "@thi.ng/rstream"; import { comp, map, @@ -15,7 +10,7 @@ import { range, str, transduce, - zip + zip, } from "@thi.ng/transducers"; import { bits } from "@thi.ng/transducers-binary"; import { updateDOM } from "@thi.ng/transducers-hdom"; @@ -54,7 +49,7 @@ const banner = ({ input, on, off }: IObjectOf) => // dynamically create `xfChar` transducers for each char // and run them in parallel via `multiplex()` multiplex.apply(null, [ - ...map((i) => xfChar(i, on, off), range(input.length)) + ...map((i) => xfChar(i, on, off), range(input.length)), ]), // then join the results for each line xfJoin @@ -70,7 +65,7 @@ const charSelector = (stream: Stream) => [ dropdown, { class: "ml3", - onchange: emitOnStream(stream) + onchange: emitOnStream(stream), }, [ ["#", "#"], @@ -82,9 +77,9 @@ const charSelector = (stream: Stream) => [ ["-", "-"], ["^", "^"], [".", "."], - [" ", "space"] + [" ", "space"], ], - stream.deref() + stream.deref(), ]; // main UI root component @@ -96,13 +91,13 @@ const app = ({ raw, result }: any) => [ "input", { oninput: emitOnStream(input), - value: raw - } + value: raw, + }, ], charSelector(on), - charSelector(off) + charSelector(off), ], - ["pre.code.w-100.pa2.overflow-x-auto.bg-washed-yellow", result] + ["pre.code.w-100.pa2.overflow-x-auto.bg-washed-yellow", result], ]; // reactive stream setup diff --git a/examples/canvas-dial/src/dial.ts b/examples/canvas-dial/src/dial.ts index 7d26a481e9..54ef50f5e7 100644 --- a/examples/canvas-dial/src/dial.ts +++ b/examples/canvas-dial/src/dial.ts @@ -3,7 +3,11 @@ import { isString } from "@thi.ng/checks"; import { canvas2D } from "@thi.ng/hdom-components"; import { fitClamped } from "@thi.ng/math"; import { Subscription } from "@thi.ng/rstream"; -import { GestureEvent, gestureStream, GestureType } from "@thi.ng/rstream-gestures"; +import { + GestureEvent, + gestureStream, + GestureType, +} from "@thi.ng/rstream-gestures"; import { heading, sub2 } from "@thi.ng/vectors"; import type { Fn } from "@thi.ng/api"; @@ -126,7 +130,7 @@ export const dial = (_opts: Partial) => { labelColor: "black", labelYOffset: 0, font: "10px sans-serif", - ..._opts + ..._opts, }; let events: Subscription; let cx: number, cy: number; @@ -205,7 +209,7 @@ export const dial = (_opts: Partial) => { ) ); } - } + }, }); } }, @@ -230,6 +234,6 @@ export const dial = (_opts: Partial) => { ctx.fillStyle = opts.labelColor; ctx.fillText(opts.label(val), cx, cy + opts.labelYOffset); } - } + }, }); }; diff --git a/examples/canvas-dial/src/index.ts b/examples/canvas-dial/src/index.ts index d4b44c6336..24e8f72e0c 100644 --- a/examples/canvas-dial/src/index.ts +++ b/examples/canvas-dial/src/index.ts @@ -10,13 +10,13 @@ export const ctx = { streams: { a: stream(), b: stream(), - c: stream() + c: stream(), }, // component styling ui: { root: { class: "vh-100 flex justify-center items-center" }, - dial: { width: 100, height: 100, class: "pointer ma1" } - } + dial: { width: 100, height: 100, class: "pointer ma1" }, + }, }; /** @@ -31,10 +31,17 @@ export const ctx = { const app = () => { const dialA = dial({ r1: 0.5, - color: { from: [0, 0], to: [1, 1], stops: [[0, "#075"], [1, "#6f9"]] }, + color: { + from: [0, 0], + to: [1, 1], + stops: [ + [0, "#075"], + [1, "#6f9"], + ], + }, font: "20px Menlo", label: (x) => percent(0)(x), - onchange: (x) => ctx.streams.a.next(x) + onchange: (x) => ctx.streams.a.next(x), }); const dialB = dial({ r1: 0.66, @@ -43,33 +50,44 @@ const app = () => { color: { from: [0, 0], to: [1, 0.75], - stops: [[0, "#00f"], [0.5, "#f60"], [1, "#ff0"]] + stops: [ + [0, "#00f"], + [0.5, "#f60"], + [1, "#ff0"], + ], }, font: "20px Menlo", label: (x) => percent(1)(x), - onchange: (x) => ctx.streams.b.next(x) + onchange: (x) => ctx.streams.b.next(x), }); const dialC = dial({ r1: 0.75, gap: Math.PI, - color: { from: [0, 0], to: [1, 0], stops: [[0, "#407"], [1, "#09f"]] }, + color: { + from: [0, 0], + to: [1, 0], + stops: [ + [0, "#407"], + [1, "#09f"], + ], + }, font: "20px Menlo", label: (x) => percent(2)(x), - onchange: (x) => ctx.streams.c.next(x) + onchange: (x) => ctx.streams.c.next(x), }); return ({ a, b, c }: any) => [ "div", ctx.ui.root, [dialA, ctx.ui.dial, a], [dialB, ctx.ui.dial, b], - [dialC, ctx.ui.dial, c] + [dialC, ctx.ui.dial, c], ]; }; // stream combinator & reactive DOM update sync({ src: ctx.streams, - xform: comp(map(app()), updateDOM()) + xform: comp(map(app()), updateDOM()), }); // seed dials with initial values diff --git a/examples/cellular-automata/src/index.ts b/examples/cellular-automata/src/index.ts index 7e8297e2fe..773e9fa886 100644 --- a/examples/cellular-automata/src/index.ts +++ b/examples/cellular-automata/src/index.ts @@ -12,7 +12,7 @@ import { repeatedly, step, str, - transduce + transduce, } from "@thi.ng/transducers"; import { bits } from "@thi.ng/transducers-binary"; @@ -27,7 +27,7 @@ const presets: DropDownOption[] = [ ["000001111111111110", "dots"], ["000101111000001111", "growth"], ["000001111000011111", "organic"], - ["000010011000011111", "angular"] + ["000010011000011111", "angular"], ]; // container for cell states @@ -43,7 +43,10 @@ const setHash = () => (location.hash = rules.join("")); // build transducer to parse rules from string (e.g. location hash or preset) // (an older version used a preset format w/ "-" to separate rule groups) const parseRules = step( - comp(map((x: string) => parseInt(x.replace("-", ""), 2)), bits(18)) + comp( + map((x: string) => parseInt(x.replace("-", ""), 2)), + bits(18) + ) ); const applyRules = (raw: string) => { @@ -56,7 +59,7 @@ const applyRules = (raw: string) => { // create random bit sequence w/ ones appearing in given probability const randomSeq = (num: number, prob = 0.5) => [ - ...repeatedly(() => (Math.random() < prob ? 1 : 0), num) + ...repeatedly(() => (Math.random() < prob ? 1 : 0), num), ]; const randomizeGrid = (prob = 0.5) => (grid = randomSeq(W * H, prob)); @@ -110,7 +113,7 @@ const setRule = (i: number, j: number, s: boolean, rstride = 9) => { // single checkbox component const checkbox = (x: number, onchange: EventListener) => [ "input", - { type: "checkbox", checked: !!x, onchange } + { type: "checkbox", checked: !!x, onchange }, ]; // component for single CA rule group (alive / dead FSM) @@ -123,7 +126,7 @@ const ruleBoxes = (prefix: string, i: number, rstride = 9) => [ checkbox(rule, (e) => setRule(i, j, (e.target).checked) ) - ) + ), ]; const isPreset = (id: string) => presets.findIndex((x) => x[0] === id) !== -1; @@ -148,12 +151,12 @@ start(() => { dropdown, { onchange: (e: Event) => - applyRules((e.target).value) + applyRules((e.target).value), }, presets, - isPreset(id) ? id : "" - ] + isPreset(id) ? id : "", + ], ], - ["pre", format((grid = convolve(grid, rules, W, H)), W)] + ["pre", format((grid = convolve(grid, rules, W, H)), W)], ]; }); diff --git a/examples/commit-heatmap/src/index.ts b/examples/commit-heatmap/src/index.ts index 3233a81923..5fe236f6da 100644 --- a/examples/commit-heatmap/src/index.ts +++ b/examples/commit-heatmap/src/index.ts @@ -2,14 +2,7 @@ import { withoutKeysObj } from "@thi.ng/associative"; import { cosineGradient, GRADIENTS } from "@thi.ng/color"; import { threadLast } from "@thi.ng/compose"; import { serialize } from "@thi.ng/hiccup"; -import { - defs, - group, - line, - rect, - svg, - text -} from "@thi.ng/hiccup-svg"; +import { defs, group, line, rect, svg, text } from "@thi.ng/hiccup-svg"; import { fit } from "@thi.ng/math"; import { Z2 } from "@thi.ng/strings"; import { @@ -27,7 +20,7 @@ import { range, sortedKeys, transduce, - vals + vals, } from "@thi.ng/transducers"; import { execSync } from "child_process"; import * as fs from "fs"; @@ -58,7 +51,7 @@ const IGNORE_PACKAGES = [ "example", "exmples", "shadertoy", - "transducer" + "transducer", ]; // heatmap gradient @@ -69,7 +62,7 @@ const MAX_DATE = Date.now(); const enum LogItem { COMMIT, - STATS + STATS, } type ClassifiedCommit = [LogItem, string | string[]]; @@ -83,7 +76,7 @@ const gitLog = (repoPath: string) => execSync( `git log --pretty=format:"%ad${SEP}%s" --date=iso-strict --shortstat`, { - cwd: resolve(repoPath) + cwd: resolve(repoPath), } ) .toString() @@ -131,7 +124,7 @@ const parseCommitTuple = (tuple: ClassifiedCommit[]) => { ...map( (x: RegExpMatchArray) => parseInt(x[0]), stats.matchAll(/\d+/g) - ) + ), ]; return { name: match[1], @@ -140,7 +133,7 @@ const parseCommitTuple = (tuple: ClassifiedCommit[]) => { msg, files, adds, - dels + dels, }; } }; @@ -162,7 +155,7 @@ const commitsByPackage = withoutKeysObj( ), groupByObj({ group: pushSort((a, b) => a.epoch - b.epoch), - key: (x) => x.name + key: (x) => x.name, }), gitLog(BASE_DIR).split("\n") ), @@ -231,7 +224,7 @@ const timeLineLabels = () => {}, line([x, 0], [x, NUM_PKG * 10 + 20], { stroke: "#999", - "stroke-dasharray": 1 + "stroke-dasharray": 1, }), text([x + 5, 8], `${d.getFullYear()}-${Z2(d.getMonth() + 1)}`) ); @@ -248,13 +241,13 @@ const packageCommits = (i: number, pkg: string) => group( { transform: `translate(0, ${(i + 2) * 10})`, - "stroke-width": 2 + "stroke-width": 2, }, text([0, 8], pkg, { stroke: "none" }), map((commit) => { const x = mapEpoch(commit.epoch); return line([x, 0], [x, 8], { - stroke: mapColor(commit.adds, maxAdds) + stroke: mapColor(commit.adds, maxAdds), }); }, commitsByPackage[pkg]) ); @@ -262,7 +255,7 @@ const packageCommits = (i: number, pkg: string) => /** * Assemble & output full SVG document using hiccup-svg primitives. * - * See: https://github.com/thi-ng/umbrella/blob/master/packages/compose/src/thread-last.ts + * See: https://github.com/thi-ng/umbrella/blob/develop/packages/compose/src/thread-last.ts */ threadLast( commitsByPackage, @@ -276,16 +269,16 @@ threadLast( viewBox: `-10 -10 ${WIDTH + 20} ${HEIGHT + 20}`, "font-family": "Inconsolata", "font-size": 9, - fill: "white" + fill: "white", }, defs([ "style", { type: "text/css" }, - "" + "", ]), // background rect([-10, -10], WIDTH + 20, HEIGHT + 20, { fill: "black" }), - timeLineLabels() + timeLineLabels(), ], serialize, [fs.writeFileSync, "heatmap2.svg"] diff --git a/examples/commit-table-ssr/src/client/index.ts b/examples/commit-table-ssr/src/client/index.ts index 1ce5f61a7a..815c8473fc 100644 --- a/examples/commit-table-ssr/src/client/index.ts +++ b/examples/commit-table-ssr/src/client/index.ts @@ -3,7 +3,7 @@ import { fromInterval, resolve as resolvePromise, stream, - sync + sync, } from "@thi.ng/rstream"; import { add, @@ -11,7 +11,7 @@ import { map, pluck, throttleTime, - transduce + transduce, } from "@thi.ng/transducers"; import { updateDOM } from "@thi.ng/transducers-hdom"; import { header } from "../common/components/header"; @@ -28,7 +28,7 @@ const app = (state: any) => [ "div", [header, ctx.repo.name], [stats, state], - [repoTable, state.commits] + [repoTable, state.commits], ]; // stats container component @@ -41,13 +41,13 @@ const stats = (ctx: AppContext, state: any) => [ ctx.ui.stats.col, ["div", `Authors: ${state.authors}`], ["div", `Total adds: ${state.adds} (${state.avgAdds} avg / commit)`], - ["div", `Total dels: ${state.dels} (${state.avgDels} avg / commit)`] + ["div", `Total dels: ${state.dels} (${state.avgDels} avg / commit)`], ], [ "div.tr", ctx.ui.stats.col, - [link, { ...ctx.ui.stats.link, href: ctx.repo.url }, ctx.repo.url] - ] + [link, { ...ctx.ui.stats.link, href: ctx.repo.url }, ctx.repo.url], + ], ]; // search filter input component @@ -64,17 +64,17 @@ const searchFilter = ( type: "text", value: state.search, // emit changes on `search` stream - oninput: (e: any) => search.next(e.target.value.toLowerCase()) - } + oninput: (e: any) => search.next(e.target.value.toLowerCase()), + }, ], - `(${state.commits.length} commits)` + `(${state.commits.length} commits)`, ]; // transformation function to filter commits with search string // doesn't apply filter if search term is empty const filterCommits = ({ commits, - search + search, }: { commits: Commit[]; search: string; @@ -82,7 +82,7 @@ const filterCommits = ({ search, commits: search ? commits.filter((x) => x.msg.toLowerCase().indexOf(search) !== -1) - : commits + : commits, }); // transformation function to compute stats of filtered commits @@ -105,7 +105,7 @@ const computeStats = (state: any) => authors: ({ commits }: any) => transduce(pluck("author"), conj(), commits).size, avgAdds: ({ commits, adds }: any) => (adds / commits.length) | 0, - avgDels: ({ commits, dels }: any) => (dels / commits.length) | 0 + avgDels: ({ commits, dels }: any) => (dels / commits.length) | 0, }); // error stream & handler @@ -139,8 +139,8 @@ sync({ commits, // throttle search stream @ 10Hz (100ms) to minimize // UI lag for fast typists - search: search.transform(throttleTime(100)) - } + search: search.transform(throttleTime(100)), + }, }) // now transform the combined stream // each value is an object tuple of: `{ commits, search }` diff --git a/examples/commit-table-ssr/src/common/components/commit-link.ts b/examples/commit-table-ssr/src/common/components/commit-link.ts index 2121a77da0..63c67353e4 100644 --- a/examples/commit-table-ssr/src/common/components/commit-link.ts +++ b/examples/commit-table-ssr/src/common/components/commit-link.ts @@ -12,5 +12,5 @@ import type { AppContext } from "../api"; export const commitLink = (ctx: AppContext, sha: string, body: string) => [ link, { ...ctx.ui.link, href: `${ctx.repo.url}/commit/${sha}` }, - body + body, ]; diff --git a/examples/commit-table-ssr/src/common/components/header.ts b/examples/commit-table-ssr/src/common/components/header.ts index 6ed009050b..367e9e79a4 100644 --- a/examples/commit-table-ssr/src/common/components/header.ts +++ b/examples/commit-table-ssr/src/common/components/header.ts @@ -3,5 +3,5 @@ import type { AppContext } from "../api"; export const header = (ctx: AppContext, title: string) => [ "section", ctx.ui.header.root, - ["h1", ctx.ui.header.title, title] + ["h1", ctx.ui.header.title, title], ]; diff --git a/examples/commit-table-ssr/src/common/components/link.ts b/examples/commit-table-ssr/src/common/components/link.ts index 4b77b642b8..ad6944802d 100644 --- a/examples/commit-table-ssr/src/common/components/link.ts +++ b/examples/commit-table-ssr/src/common/components/link.ts @@ -10,5 +10,5 @@ import type { AppContext } from "../api"; export const link = (_: AppContext, attribs: any, body: string) => [ "a", attribs, - body + body, ]; diff --git a/examples/commit-table-ssr/src/common/components/repo-table.ts b/examples/commit-table-ssr/src/common/components/repo-table.ts index 09fd2e963a..a7523a5030 100644 --- a/examples/commit-table-ssr/src/common/components/repo-table.ts +++ b/examples/commit-table-ssr/src/common/components/repo-table.ts @@ -4,7 +4,7 @@ import { map, mapIndexed, partitionBy, - repeat + repeat, } from "@thi.ng/transducers"; import { commitLink } from "./commit-link"; import { table } from "./table"; @@ -30,16 +30,16 @@ export const repoTable = (_: AppContext, commits: Iterable) => [ [commitLink, x.sha, x.msg], x.files, x.add ? ["span.green", `+${x.add}`] : null, - x.del ? ["span.red", `-${x.del}`] : null + x.del ? ["span.red", `-${x.del}`] : null, ]), // partition rows by month partitionBy((row: any[]) => row[0].split("-")[1]), // insert month headers (but not in 1st chunk) mapIndexed((i, month) => [ i > 0 ? [month[0][0].substr(0, 7), ...repeat("", 5)] : null, - month + month, ]) ), commits - ) + ), ]; diff --git a/examples/commit-table-ssr/src/common/components/table.ts b/examples/commit-table-ssr/src/common/components/table.ts index a31aaec6a9..95c648ee41 100644 --- a/examples/commit-table-ssr/src/common/components/table.ts +++ b/examples/commit-table-ssr/src/common/components/table.ts @@ -6,14 +6,14 @@ const thead = (ctx: AppContext, head: Iterable) => [ [ row, ctx.ui.table.head.row, - map((x) => ["th", ctx.ui.table.head.cell, x], head) - ] + map((x) => ["th", ctx.ui.table.head.cell, x], head), + ], ]; const row = (ctx: AppContext, attribs: any, body: Iterable) => [ "tr", { ...ctx.ui.table.row, ...attribs }, - ...body + ...body, ]; /** @@ -66,12 +66,12 @@ export const table = ( (cols: any) => [ row, null, - map((x) => ["td", ctx.ui.table.cell, x], cols) + map((x) => ["td", ctx.ui.table.cell, x], cols), ], rows - ) - ] + ), + ], ], body - ) + ), ]; diff --git a/examples/commit-table-ssr/src/common/config.ts b/examples/commit-table-ssr/src/common/config.ts index 722b505a74..33a92a6045 100644 --- a/examples/commit-table-ssr/src/common/config.ts +++ b/examples/commit-table-ssr/src/common/config.ts @@ -5,25 +5,25 @@ export const DEFAULT_DOC: HTMLDoc = { meta: [ { "http-equiv": "Content-Type", - content: "text/html;charset=UTF-8" + content: "text/html;charset=UTF-8", }, - { "http-equiv": "X-UA-Compatible", content: "ie=edge" } + { "http-equiv": "X-UA-Compatible", content: "ie=edge" }, ], links: [ { rel: "stylesheet", - href: "https://unpkg.com/tachyons@4.11.1/css/tachyons.min.css" + href: "https://unpkg.com/tachyons@4.11.1/css/tachyons.min.css", }, { rel: "stylesheet", - href: "https://fonts.googleapis.com/css?family=Inconsolata" - } + href: "https://fonts.googleapis.com/css?family=Inconsolata", + }, ], scripts: [], styles: [], - title: "" + title: "", }, - body: [] + body: [], }; /** @@ -33,34 +33,34 @@ export const ctx: AppContext = { repo: { name: "thi.ng/umbrella", path: ".", - url: "https://github.com/thi-ng/umbrella" + url: "https://github.com/thi-ng/umbrella", }, ui: { body: { class: "sans-serif vh-100" }, link: { class: "link blue hover-light-blue" }, header: { root: { class: "bg-dark-gray white pa3 ma0 w-100" }, - title: { class: "tc ma0 pa0 fw1" } + title: { class: "tc ma0 pa0 fw1" }, }, table: { root: { class: "w-100 collapse ba br2 b--black-10 pv2 ph3 f7 f6-ns", - style: { "font-family": "Inconsolata, monospace" } + style: { "font-family": "Inconsolata, monospace" }, }, head: { row: { class: "tl bg-black white" }, - cell: { class: "pv1 pv2-ns ph2 ph3-ns" } + cell: { class: "pv1 pv2-ns ph2 ph3-ns" }, }, row: { class: "striped--light-gray" }, - cell: { class: "pv1 pv2-ns ph2 ph3-ns" } + cell: { class: "pv1 pv2-ns ph2 ph3-ns" }, }, stats: { root: { - class: "flex items-center pa2 bg-light-green dark-gray f7" + class: "flex items-center pa2 bg-light-green dark-gray f7", }, col: { class: "w-33" }, - link: { class: "link dark-gray" } + link: { class: "link dark-gray" }, }, - search: { class: "pa1 mh2" } - } + search: { class: "pa1 mh2" }, + }, }; diff --git a/examples/commit-table-ssr/src/server/build-table.ts b/examples/commit-table-ssr/src/server/build-table.ts index 645cdc653e..5595478370 100644 --- a/examples/commit-table-ssr/src/server/build-table.ts +++ b/examples/commit-table-ssr/src/server/build-table.ts @@ -11,5 +11,8 @@ import type { Commit } from "../common/api"; export const buildRepoTableHTML = (commits: Iterable) => html({ ctx, - body: [[header, ctx.repo.name], [repoTable, commits]] + body: [ + [header, ctx.repo.name], + [repoTable, commits], + ], }); diff --git a/examples/commit-table-ssr/src/server/git.ts b/examples/commit-table-ssr/src/server/git.ts index ed2f2cc166..90d35bc049 100644 --- a/examples/commit-table-ssr/src/server/git.ts +++ b/examples/commit-table-ssr/src/server/git.ts @@ -7,7 +7,7 @@ import { mapcat, partitionBy, transduce, - zip + zip, } from "@thi.ng/transducers"; import { execSync } from "child_process"; import { resolve } from "path"; @@ -84,7 +84,7 @@ export const repoCommits = (repoPath: string) => (commit) => { ...parseLog(commit), - ...parseStats(commit) + ...parseStats(commit), } ) ), diff --git a/examples/commit-table-ssr/src/server/html.ts b/examples/commit-table-ssr/src/server/html.ts index c0f889095e..db2721f50c 100644 --- a/examples/commit-table-ssr/src/server/html.ts +++ b/examples/commit-table-ssr/src/server/html.ts @@ -30,9 +30,9 @@ export const html = (doc: HTMLDoc) => { map((s) => script(null, s), doc.head!.scripts || []), map((link) => ["link", link], doc.head!.links || []), map((css) => ["style", css], doc.head!.styles || []), - ["title", doc.head!.title || ""] + ["title", doc.head!.title || ""], ], - ["body", doc.ctx!.ui.body, ...doc.body] + ["body", doc.ctx!.ui.body, ...doc.body], ], doc.ctx )}`; diff --git a/examples/commit-table-ssr/src/server/index.ts b/examples/commit-table-ssr/src/server/index.ts index b63b00544b..0601bcc93d 100644 --- a/examples/commit-table-ssr/src/server/index.ts +++ b/examples/commit-table-ssr/src/server/index.ts @@ -16,7 +16,7 @@ const htmlCache = new TLRUCache(null, { ttl: 60 * 60 * 1000 }); const bundler = new Bundler("index.html", { outDir: "./out", outFile: "index.html", - publicUrl: "/out" + publicUrl: "/out", }); const getCommits = async () => { diff --git a/examples/crypto-chart/src/index.ts b/examples/crypto-chart/src/index.ts index ebf8408a1b..fe33a053d4 100644 --- a/examples/crypto-chart/src/index.ts +++ b/examples/crypto-chart/src/index.ts @@ -6,7 +6,7 @@ import { polyline, rect, svg, - text + text, } from "@thi.ng/hiccup-svg"; import { fit } from "@thi.ng/math"; import { resolve } from "@thi.ng/resolve-map"; @@ -17,7 +17,7 @@ import { stream, Subscription, sync, - trace + trace, } from "@thi.ng/rstream"; import { padLeft } from "@thi.ng/strings"; import { @@ -33,15 +33,10 @@ import { push, range, transduce, - Transducer + Transducer, } from "@thi.ng/transducers"; import { updateDOM } from "@thi.ng/transducers-hdom"; -import { - ema, - hma, - sma, - wma -} from "@thi.ng/transducers-stats"; +import { ema, hma, sma, wma } from "@thi.ng/transducers-stats"; import type { Fn, IObjectOf } from "@thi.ng/api"; // this example demonstrates how to use @thi.ng/rstream & @@ -70,7 +65,7 @@ interface MarketResponse { const TIMEFRAMES: IObjectOf = { 1: "Minute", 60: "Hour", - 1440: "Day" + 1440: "Day", }; // supported symbol pairs @@ -80,7 +75,7 @@ const SYMBOL_PAIRS: DropDownOption[] = [ ["ETHUSD", "ETH-USD"], ["LTCUSD", "LTC-USD"], ["XLMUSD", "XLM-USD"], - ["XMRUSD", "XMR-USD"] + ["XMRUSD", "XMR-USD"], ]; const MA_MODES: IObjectOf<{ @@ -90,7 +85,7 @@ const MA_MODES: IObjectOf<{ ema: { fn: ema, label: "Exponential" }, hma: { fn: hma, label: "Hull" }, sma: { fn: sma, label: "Simple" }, - wma: { fn: wma, label: "Weighted" } + wma: { fn: wma, label: "Weighted" }, }; // chart settings @@ -101,7 +96,7 @@ const DAY = 60 * 60 * 24; const TIME_TICKS: IObjectOf = { 1: 15 * 60, 60: DAY, - 1440: DAY * 14 + 1440: DAY * 14, }; const TIME_FORMATS: IObjectOf> = { @@ -120,7 +115,7 @@ const TIME_FORMATS: IObjectOf> = { return `${d.getUTCFullYear()}-${Z2(d.getUTCMonth() + 1)}-${Z2( d.getUTCDate() )}`; - } + }, }; // UI theme presets @@ -141,8 +136,8 @@ const THEMES: any = { sma50: "#06f", sma72: "#00f", gridMajor: "#666", - gridMinor: "#ccc" - } + gridMinor: "#ccc", + }, }, dark: { id: "dark", @@ -160,9 +155,9 @@ const THEMES: any = { sma50: "#06f", sma72: "#00f", gridMajor: "#666", - gridMinor: "#333" - } - } + gridMinor: "#333", + }, + }, }; // constructs request URL from given inputs @@ -223,7 +218,7 @@ const response = sync({ (e) => error.next(e.message) ) .then((json) => ({ ...inst, ohlc: json ? json.Data : null })) - ) + ), }).subscribe(resolvePromise({ fail: (e) => error.next(e.message) })); // this stream combinator computes a number of statistics on incoming OHLC data @@ -231,7 +226,7 @@ const response = sync({ const data = sync({ src: { response, - avg: avgMode.transform(map((id: string) => MA_MODES[id].fn)) + avg: avgMode.transform(map((id: string) => MA_MODES[id].fn)), }, xform: comp( // bail if response value has no OHLC data @@ -246,7 +241,7 @@ const data = sync({ transduce(pluck("high"), max(), ohlc), tbounds: ({ ohlc }: MarketResponse) => [ ohlc[0].time, - ohlc[ohlc.length - 1].time + ohlc[ohlc.length - 1].time, ], sma: ({ ohlc }: MarketResponse) => transduce( @@ -256,14 +251,14 @@ const data = sync({ comp(pluck("close"), avg(period)), push(), ohlc - ) + ), ]), push(), [12, 24, 50, 72] - ) + ), }) ) - ) + ), }); // this stream combinator (re)computes the SVG chart @@ -274,7 +269,7 @@ const chart = sync({ theme, window: fromEvent(window, "resize").transform( map(() => [window.innerWidth, window.innerHeight]) - ) + ), }, xform: map(({ data, window, theme }) => { let [width, height] = window; @@ -292,7 +287,7 @@ const chart = sync({ polyline( vals.map((y, x) => [ mapX(x + (ohlc.length - vals.length) + 0.5), - mapY(y) + mapY(y), ]), { stroke: col, fill: "none" } ); @@ -331,7 +326,7 @@ const chart = sync({ { stroke: theme.chart.axis, fill: theme.chart.axis, - "text-anchor": "end" + "text-anchor": "end", }, line([MARGIN_X, MARGIN_Y], [MARGIN_X, by]), line([MARGIN_X, by], [width - MARGIN_X, by]), @@ -345,11 +340,11 @@ const chart = sync({ price % 100 < 1 ? theme.chart.gridMajor : theme.chart.gridMinor, - "stroke-dasharray": 2 + "stroke-dasharray": 2, }), text([MARGIN_X - 15, y + 4], price.toFixed(4), { - stroke: "none" - }) + stroke: "none", + }), ]; }, range(Math.ceil(data.min / tickY) * tickY, data.max, tickY)), // X axis ticks @@ -365,12 +360,12 @@ const chart = sync({ line([x, by], [x, by + 10]), line([x, MARGIN_Y], [x, by], { stroke: theme.chart.gridMinor, - "stroke-dasharray": 2 + "stroke-dasharray": 2, }), text([x, by + 20], fmtTime(t), { stroke: "none", - "text-anchor": "middle" - }) + "text-anchor": "middle", + }), ]; }, range(Math.ceil(data.tbounds[0] / tickX) * tickX, data.tbounds[1], tickX)) ), @@ -405,7 +400,7 @@ const chart = sync({ }, ohlc), // price line line([MARGIN_X, closeY], [closeX, closeY], { - stroke: theme.chart.price + stroke: theme.chart.price, }), // closing price tag polygon( @@ -414,15 +409,15 @@ const chart = sync({ [closeX + 10, closeY - 8], [width, closeY - 8], [width, closeY + 8], - [closeX + 10, closeY + 8] + [closeX + 10, closeY + 8], ], { fill: theme.chart.price } ), text([closeX + 12, closeY + 4], lastPrice.toFixed(4), { - fill: theme.chart.pricelabel + fill: theme.chart.pricelabel, }) ); - }) + }), }); // stream construct to perform UI update @@ -441,7 +436,7 @@ sync({ ...map( ([id, mode]) => [id, mode.label], pairs(MA_MODES) - ) + ), ]) ), themeSel: theme.transform( @@ -451,9 +446,9 @@ sync({ ([id, theme]: [string, any]) => [id, theme.label], pairs(THEMES) - ) + ), ]) - ) + ), }, xform: comp( // combines all inputs into a single root component @@ -467,8 +462,8 @@ sync({ style: { top: `1rem`, right: `${MARGIN_X}px`, - width: `calc(100vw - 2 * ${MARGIN_X}px)` - } + width: `calc(100vw - 2 * ${MARGIN_X}px)`, + }, }, [ "div.flex", @@ -476,9 +471,9 @@ sync({ symbol, period, avg, - themeSel - ]) - ] + themeSel, + ]), + ], ], [ "div.fixed.tc", @@ -486,31 +481,31 @@ sync({ style: { bottom: `1rem`, left: `${MARGIN_X}px`, - width: `calc(100vw - 2 * ${MARGIN_X}px)` - } + width: `calc(100vw - 2 * ${MARGIN_X}px)`, + }, }, [ "a", { class: `mr3 b link ${theme.body}`, - href: "https://min-api.cryptocompare.com/" + href: "https://min-api.cryptocompare.com/", }, - "Data by cyptocompare.com" + "Data by cyptocompare.com", ], [ "a", { class: `mr3 b link ${theme.body}`, href: - "https://github.com/thi-ng/umbrella/tree/develop/examples/crypto-chart/" + "https://github.com/thi-ng/umbrella/tree/develop/examples/crypto-chart/", }, - "Source" - ] - ] + "Source", + ], + ], ]), // perform hdom update / diffing updateDOM() - ) + ), }); // kick off dataflow diff --git a/examples/fft-synth/src/automode.ts b/examples/fft-synth/src/automode.ts index 928e3811c8..e3d9a997b1 100644 --- a/examples/fft-synth/src/automode.ts +++ b/examples/fft-synth/src/automode.ts @@ -9,7 +9,7 @@ const weights = [ ...map( (x) => 1 - Math.pow((x - 1) / NUM_BINS, 0.15) * 0.99, range(1, NUM_BINS) - ) + ), ]; const rnd = weightedRandom([...range(0, NUM_BINS)], weights); diff --git a/examples/fft-synth/src/config.ts b/examples/fft-synth/src/config.ts index 8adc922370..2e9833fa8c 100644 --- a/examples/fft-synth/src/config.ts +++ b/examples/fft-synth/src/config.ts @@ -1,11 +1,6 @@ import { binFreq } from "@thi.ng/dsp"; import { float, percent } from "@thi.ng/strings"; -import { - map, - mapcat, - range, - repeat -} from "@thi.ng/transducers"; +import { map, mapcat, range, repeat } from "@thi.ng/transducers"; export const NUM_BINS = 64; export const WINDOW_LEN = NUM_BINS * 2; @@ -17,12 +12,12 @@ export const FMT_PERCENT = percent(3); export const PRESETS: any[] = [ () => [0, 1, ...repeat(0, NUM_BINS - 2)], () => [0, ...map((i) => 1 / i, range(1, NUM_BINS))], - () => [...mapcat((i) => [0, 1 / i], range(1, NUM_BINS + 1, 2))] + () => [...mapcat((i) => [0, 1 / i], range(1, NUM_BINS + 1, 2))], ]; export const BIN_LABELS = [ ...map( (i) => (binFreq(i, 48000 / PITCH_SCALE, WINDOW_LEN) | 0) + " Hz", range(NUM_BINS) - ) + ), ]; diff --git a/examples/fft-synth/src/gui.ts b/examples/fft-synth/src/gui.ts index 3e9123d1d7..a0f181c15c 100644 --- a/examples/fft-synth/src/gui.ts +++ b/examples/fft-synth/src/gui.ts @@ -5,7 +5,7 @@ import { sliderH, sliderVGroup, textLabel, - toggle + toggle, } from "@thi.ng/imgui"; import { gridLayout, GridLayout } from "@thi.ng/layout"; import { initAudio, isAudioActive, stopAudio } from "./audio"; @@ -16,14 +16,14 @@ import { FMT_PERCENT, NUM_BINS, PITCH_SCALE, - WINDOW_LEN + WINDOW_LEN, } from "./config"; import { clearSpectrum, DB, setGain, setSpectrumPreset, - updateSpectrumBin + updateSpectrumBin, } from "./state"; export const gui = new IMGUI({ @@ -31,8 +31,8 @@ export const gui = new IMGUI({ ...DEFAULT_THEME, globalBg: "#ccc", font: "10px Inconsolata", - charWidth: 5 - } + charWidth: 5, + }, }); export const updateGUI = (draw: boolean) => { diff --git a/examples/fft-synth/src/index.ts b/examples/fft-synth/src/index.ts index 2b674d9bfd..084a0dacfb 100644 --- a/examples/fft-synth/src/index.ts +++ b/examples/fft-synth/src/index.ts @@ -6,7 +6,7 @@ import { fromRAF, merge, sidechainPartition, - sync + sync, } from "@thi.ng/rstream"; import { gestureStream } from "@thi.ng/rstream-gestures"; import { map, mapIndexed } from "@thi.ng/transducers"; @@ -17,8 +17,8 @@ import { DB } from "./state"; const main = sync({ src: { - state: fromAtom(DB) - } + state: fromAtom(DB), + }, }); const app = () => { @@ -31,7 +31,7 @@ const app = () => { gestureStream(canv, {}).subscribe({ next(e) { gui.setMouse(e.pos, e.buttons); - } + }, }), fromDOMEvent(window, "resize").subscribe({ next() { @@ -39,12 +39,12 @@ const app = () => { ["size"], [window.innerWidth, window.innerHeight] ); - } - }) - ] + }, + }), + ], }) ); - } + }, }; return () => { @@ -61,7 +61,7 @@ const app = () => { width, height, style: { background: gui.theme.globalBg, cursor: gui.cursor }, - ...gui.attribs + ...gui.attribs, }, gui, // waveform display @@ -72,12 +72,12 @@ const app = () => { ...mapIndexed( (i, y) => [ fit(i, 0, WINDOW_LEN - 1, 10, iwidth), - fitClamped(y, -1, 1, 490, 290) + fitClamped(y, -1, 1, 490, 290), ], DB.value.wave - ) - ] - ] + ), + ], + ], ]; }; }; diff --git a/examples/fft-synth/src/state.ts b/examples/fft-synth/src/state.ts index f18cf40cd5..b2ece0fdbf 100644 --- a/examples/fft-synth/src/state.ts +++ b/examples/fft-synth/src/state.ts @@ -12,7 +12,7 @@ export const DB = new Atom({ feedback: 0.66, bins: [...repeat(0, NUM_BINS)], wave: new Float64Array(NUM_BINS * 2), - size: [window.innerWidth, window.innerHeight] + size: [window.innerWidth, window.innerHeight], }); export const setGain = (gain: number) => { diff --git a/examples/geom-convex-hull/src/index.ts b/examples/geom-convex-hull/src/index.ts index e71d94984f..18f445b7d2 100644 --- a/examples/geom-convex-hull/src/index.ts +++ b/examples/geom-convex-hull/src/index.ts @@ -7,7 +7,7 @@ import { polygon, rect, scatter, - withAttribs + withAttribs, } from "@thi.ng/geom"; import { renderOnce } from "@thi.ng/hdom"; import { canvas } from "@thi.ng/hdom-canvas"; @@ -47,16 +47,16 @@ renderOnce([ withAttribs(clip, { fill: COL3(0.5), stroke: COL3(1), - weight: 3 + weight: 3, }), ...(<[IShape, string][]>[ [hull1, COL1(1)], [hull2, COL2(1)], - [clip, COL3(1)] + [clip, COL3(1)], ]).map(([shape, col]) => [ "text", { fill: col }, centroid(shape), - area(shape).toFixed(2) - ]) + area(shape).toFixed(2), + ]), ]); diff --git a/examples/geom-knn/src/index.ts b/examples/geom-knn/src/index.ts index 2769cbe8c5..ea92bb3963 100644 --- a/examples/geom-knn/src/index.ts +++ b/examples/geom-knn/src/index.ts @@ -17,7 +17,7 @@ const app = (main: StreamSync) => { const _canvas = { ...canvas, init: (el: HTMLCanvasElement) => - main.add(gestureStream(el).transform(map((g) => g.pos)), "mpos") + main.add(gestureStream(el).transform(map((g) => g.pos)), "mpos"), }; // initialize 1st point & store in tree for fast KNN searches const width = window.innerWidth; @@ -58,7 +58,7 @@ const app = (main: StreamSync) => { .queryKeys(p[0], width / 4, 8) .map((q) => ["line", {}, p[0], q]), selected - ) + ), ]); return [ "div.overflow-hidden.sans-serif.f7", @@ -67,7 +67,7 @@ const app = (main: StreamSync) => { "div", `Points: ${tree.size}, Sel: ${selected.length}, `, `Neighbors: ${neighbors.length}, Q1: ${t1}ms, Q2: ${t2}ms, `, - `Height: ${tree.height}, Ratio: ${tree.ratio.toFixed(2)}` + `Height: ${tree.height}, Ratio: ${tree.ratio.toFixed(2)}`, ], // visualize // the __diff & __normalize control attribs are used to optimize drawing perf @@ -81,11 +81,11 @@ const app = (main: StreamSync) => { [ "g", { fill: "rgba(0,192,255,0.5)" }, - ...selected.map((p) => ["circle", {}, p[0], p[1]]) + ...selected.map((p) => ["circle", {}, p[0], p[1]]), ], // secondary neighbor connections - ["g", { stroke: "rgba(0,0,0,0.25)" }, ...neighbors] - ] + ["g", { stroke: "rgba(0,0,0,0.25)" }, ...neighbors], + ], ]; }; }; diff --git a/examples/geom-tessel/src/index.ts b/examples/geom-tessel/src/index.ts index 3341c9690c..377c52862d 100644 --- a/examples/geom-tessel/src/index.ts +++ b/examples/geom-tessel/src/index.ts @@ -6,7 +6,7 @@ import { circle, Polygon, polygon, - tessellate + tessellate, } from "@thi.ng/geom"; import { edgeSplit, quadFan, triFan } from "@thi.ng/geom-tessellate"; import { canvas } from "@thi.ng/hdom-canvas"; @@ -58,7 +58,7 @@ const arclengthToHSL = (max: number, p: IShape) => const tintedPoly = (tint: Tint, points: Vec[]) => { const p = polygon(points); p.attribs = { - fill: tint(p) + fill: tint(p), // stroke: tint(p), }; return p; @@ -79,8 +79,8 @@ const tessellation = (t: number, tessel: Tessellator[], tint: Tint) => { const main = sync({ src: { - time: fromInterval(16) - } + time: fromInterval(16), + }, }).transform( // root component function map(({ time }) => { @@ -103,11 +103,11 @@ const main = sync({ translate: [300, 300], // rotate: (time / 10) % TAU, stroke: "#000", - weight: 0.25 + weight: 0.25, }, - ...cells - ] - ] + ...cells, + ], + ], ]; }), updateDOM() diff --git a/examples/geom-voronoi-mst/src/index.ts b/examples/geom-voronoi-mst/src/index.ts index 5d33520319..14da01520e 100644 --- a/examples/geom-voronoi-mst/src/index.ts +++ b/examples/geom-voronoi-mst/src/index.ts @@ -10,7 +10,7 @@ import { rect, scatter, star, - vertices + vertices, } from "@thi.ng/geom"; import { KdTreeMap, KdTreeSet } from "@thi.ng/geom-accel"; import { DVMesh } from "@thi.ng/geom-voronoi"; @@ -24,14 +24,9 @@ import { mapcat, mapIndexed, push, - transduce + transduce, } from "@thi.ng/transducers"; -import { - dist, - floor, - ReadonlyVec, - Vec -} from "@thi.ng/vectors"; +import { dist, floor, ReadonlyVec, Vec } from "@thi.ng/vectors"; const W = 500; const R = W / 2; @@ -45,7 +40,7 @@ const pts = timed(() => density: (p) => fit(dist(p, closestPoint(poly, p)!), 0, R, 1, 20), max: 10000, quality: 1000, - index: new KdTreeSet(2) + index: new KdTreeSet(2), }) ); @@ -57,9 +52,9 @@ const _mst = timed(() => { (e) => [floor(null, e[0]), floor(null, e[1])], mesh.edges(false, [ [-R, -R], - [R, R] + [R, R], ]) - ) + ), ]; const idx = new KdTreeMap(2); @@ -98,6 +93,6 @@ renderOnce([ mesh.voronoi(vertices(bounds)).map((p) => polygon(p)) ), points(pts, { fill: "#f09", size: 2 }), - group({ stroke: "#000", weight: 1 }, _mst) - ]) + group({ stroke: "#000", weight: 1 }, _mst), + ]), ]); diff --git a/examples/gesture-analysis/src/index.ts b/examples/gesture-analysis/src/index.ts index 853f7ae7c2..8134f1ad2a 100644 --- a/examples/gesture-analysis/src/index.ts +++ b/examples/gesture-analysis/src/index.ts @@ -1,14 +1,13 @@ import { peek } from "@thi.ng/arrays"; import { identity } from "@thi.ng/compose"; import { polyline as gPolyline, resample, vertices } from "@thi.ng/geom"; -import { - circle, - group, - polyline, - svg -} from "@thi.ng/hiccup-svg"; +import { circle, group, polyline, svg } from "@thi.ng/hiccup-svg"; import { fromIterable, merge, sync } from "@thi.ng/rstream"; -import { GestureEvent, gestureStream, GestureType } from "@thi.ng/rstream-gestures"; +import { + GestureEvent, + gestureStream, + GestureType, +} from "@thi.ng/rstream-gestures"; import { comp, filter, @@ -16,15 +15,10 @@ import { multiplexObj, partition, push, - transduce + transduce, } from "@thi.ng/transducers"; import { updateDOM } from "@thi.ng/transducers-hdom"; -import { - angleBetween2, - mixN2, - sub2, - Vec -} from "@thi.ng/vectors"; +import { angleBetween2, mixN2, sub2, Vec } from "@thi.ng/vectors"; import { CTA } from "./config"; /** @@ -36,7 +30,7 @@ import { CTA } from "./config"; */ const app = ({ raw, - processed + processed, }: { raw: Vec[]; processed: { path: Vec[]; corners: Vec[] }; @@ -47,7 +41,7 @@ const app = ({ width: window.innerWidth, height: window.innerHeight, stroke: "none", - fill: "none" + fill: "none", }, path(raw || [], processed.path, processed.corners || []) ), @@ -55,8 +49,8 @@ const app = ({ "div.fixed.top-0.left-0.ma3", ["div", `raw: ${(raw && raw.length) || 0}`], ["div", `resampled: ${(processed && processed.path.length) || 0}`], - ["div", `corners: ${(processed && processed.corners.length) || 0}`] - ] + ["div", `corners: ${(processed && processed.corners.length) || 0}`], + ], ]; /** @@ -148,8 +142,8 @@ const gesture = merge({ (g) => g.type != GestureType.MOVE && g.type != GestureType.ZOOM ), map(collectPath()) - ) - ] + ), + ], }); // main gesture processor @@ -177,11 +171,11 @@ sync({ push(), pts ) - ) + ), }) ) - ) - } + ), + }, }).transform( // transform result tuples into HDOM components map(app), diff --git a/examples/grid-iterators/src/index.ts b/examples/grid-iterators/src/index.ts index ab30a13f0c..7e58cd800f 100644 --- a/examples/grid-iterators/src/index.ts +++ b/examples/grid-iterators/src/index.ts @@ -9,7 +9,7 @@ import { zcurve2d, zigzagColumns2d, zigzagDiagonal2d, - zigzagRows2d + zigzagRows2d, } from "@thi.ng/grid-iterators"; import { createElement } from "@thi.ng/hdom"; import { concat, cycle } from "@thi.ng/transducers"; @@ -19,7 +19,7 @@ const H = 256; const canvas = ( createElement(document.getElementById("app")!, "canvas", { width: W, - height: H + height: H, }) ); const ctx = canvas.getContext("2d")!; diff --git a/examples/hdom-benchmark/src/index.ts b/examples/hdom-benchmark/src/index.ts index dc74a68536..30ed488c6f 100644 --- a/examples/hdom-benchmark/src/index.ts +++ b/examples/hdom-benchmark/src/index.ts @@ -9,7 +9,7 @@ import { mapIndexed, movingAverage, partition, - range + range, } from "@thi.ng/transducers"; /** @@ -23,10 +23,10 @@ const box = (index: number, id: number) => [ { key: index, style: { - background: "#" + U24(((id & 0x1ff) << 15) | (id << 10) | id) - } + background: "#" + U24(((id & 0x1ff) << 15) | (id << 10) | id), + }, }, - U16(id & 0xffff) + U16(id & 0xffff), ]; /** @@ -70,7 +70,7 @@ const fpsCounter = ( 2, height - 4 ); - } + }, }, // stream transducer to compute the windowed moving avarage comp( @@ -87,8 +87,8 @@ const fpsCounter = ( ctx.fillStyle = txtCol; ctx.fillText("sampling...", 2, height - 4); }, - render: () => ["canvas", { width, height }] - } + render: () => ["canvas", { width, height }], + }, ]; }; @@ -105,14 +105,14 @@ const app = () => { { onchange: (e: Event) => { num = parseInt((e.target).value); - } + }, }, [ [128, 128], [192, 192], [256, 256], [384, 384], - [512, 512] + [512, 512], ] ); @@ -121,7 +121,7 @@ const app = () => { return [ "div", ["div#stats", fps, menu], - ["grid", mapIndexed(box, range(j, j + num))] + ["grid", mapIndexed(box, range(j, j + num))], ]; }; }; diff --git a/examples/hdom-benchmark2/src/index.ts b/examples/hdom-benchmark2/src/index.ts index c1244bd946..18fe426304 100644 --- a/examples/hdom-benchmark2/src/index.ts +++ b/examples/hdom-benchmark2/src/index.ts @@ -10,7 +10,7 @@ import { partition, push, range, - transduce + transduce, } from "@thi.ng/transducers"; const SIZE = "0.5rem"; @@ -21,8 +21,8 @@ injectStyleSheet( (x: number) => [ `.cell-${x}`, { - background: `#${U24(splat4_24(x))}` - } + background: `#${U24(splat4_24(x))}`, + }, ], range(16) ), @@ -30,8 +30,8 @@ injectStyleSheet( (x: number) => [ `.xcell-${x}`, { - background: `#${U24(splat4_24(x) | 0x00ff00)}` - } + background: `#${U24(splat4_24(x) | 0x00ff00)}`, + }, ], range(16) ), @@ -40,15 +40,15 @@ injectStyleSheet( { display: "inline-block", width: SIZE, - height: SIZE - } + height: SIZE, + }, ], [ ".row", { - height: SIZE - } - ] + height: SIZE, + }, + ], ]) ); @@ -81,8 +81,8 @@ const grid = { "span", { key: "c" + i, - class: `cell ${changed.has(i) ? "xcell" : "cell"}-${x}` - } + class: `cell ${changed.has(i) ? "xcell" : "cell"}-${x}`, + }, ]), partition(w), mapIndexed((i, row) => [ @@ -91,9 +91,12 @@ const grid = { key: "r" + i, __skip: !isFirst && - !(this.prevChangedRows.has(i) || changedRows.has(i)) + !( + this.prevChangedRows.has(i) || + changedRows.has(i) + ), }, - row + row, ]) ), push(), @@ -115,12 +118,12 @@ const grid = { this.stats = { cells: mergedCells.size, rows: mergedRows.size, - total: mergedCells.size + mergedRows.size + total: mergedCells.size + mergedRows.size, }; this.prevChanged = changed; this.prevChangedRows = changedRows; return body; - } + }, }; const domStats = (_: any, grid: any, res: number, _static: number) => @@ -132,8 +135,8 @@ const domStats = (_: any, grid: any, res: number, _static: number) => [ "div", ["span.pink", res * res + res + _static], - " DOM nodes total" - ] + " DOM nodes total", + ], ] : null; @@ -152,10 +155,10 @@ const resOpts = [ [40, 40], [48, 48], [56, 56], - [64, 64] + [64, 64], ]; const deltaOpts = [ - ...map((i) => [i, i], [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]) + ...map((i) => [i, i], [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]), ]; const cancel = start(() => { @@ -166,7 +169,7 @@ const cancel = start(() => { "div.measure.lh-copy", `Each grid cell is one element. Each frame ${delta} random cell states will be updated (highlighted in green), resulting in approx. twice as many - DOM updates (due to resetting of updated cells from previous frame).` + DOM updates (due to resetting of updated cells from previous frame).`, ], ["div.mt3", [grid, cells, res, delta, frame]], ["div.mt3", [domStats, grid, res, 46]], @@ -182,11 +185,11 @@ const cancel = start(() => { (res = parseInt((e.target).value)), (frame = -1), (cells = newCells(res)) - ) + ), }, resOpts, - res - ] + res, + ], ], [ "div.mt3", @@ -196,11 +199,11 @@ const cancel = start(() => { { class: "w3 code", onchange: (e: Event) => - (delta = parseInt((e.target).value)) + (delta = parseInt((e.target).value)), }, deltaOpts, - delta - ] + delta, + ], ], [ "div.mt3", @@ -208,11 +211,11 @@ const cancel = start(() => { "a", { href: - "https://github.com/thi-ng/umbrella/tree/develop/examples/hdom-benchmark2" + "https://github.com/thi-ng/umbrella/tree/develop/examples/hdom-benchmark2", }, - "Source" - ] - ] + "Source", + ], + ], ]; }); diff --git a/examples/hdom-canvas-clock/src/index.ts b/examples/hdom-canvas-clock/src/index.ts index 50f174ab35..d5aad206e9 100644 --- a/examples/hdom-canvas-clock/src/index.ts +++ b/examples/hdom-canvas-clock/src/index.ts @@ -13,16 +13,16 @@ const tick = (i: number, r1: number, r2: number) => { "line", {}, cartesian2(null, [r1, theta]), - cartesian2(null, [r2, theta]) + cartesian2(null, [r2, theta]), ], i % 3 == 0 ? [ "text", { stroke: "none" }, cartesian2(null, [r1 - 10, theta]), - i > 0 ? i : 12 + i > 0 ? i : 12, ] - : null + : null, ]; }; @@ -40,8 +40,8 @@ const hand = ( [ [r1, theta - eps], [r2, theta], - [r1, theta + eps] - ].map((p) => cartesian2(null, p)) + [r1, theta + eps], + ].map((p) => cartesian2(null, p)), ]; }; @@ -70,7 +70,7 @@ const cancel = start(() => { // applied in a nested manner... // // see here for a list of all supported attribs: - // https://github.com/thi-ng/umbrella/blob/master/packages/hdom-canvas/src/index.ts#L35 + // https://github.com/thi-ng/umbrella/blob/develop/packages/hdom-canvas/src/index.ts#L35 [ "g", { @@ -79,7 +79,7 @@ const cancel = start(() => { fill: "none", align: "center", baseline: "middle", - __normalize: false + __normalize: false, }, // rim ["circle", {}, [0, 0], 99], @@ -94,8 +94,8 @@ const cancel = start(() => { "text", { stroke: "none" }, [55, 0], - WEEKDAYS[now.getDay()] - ] + WEEKDAYS[now.getDay()], + ], ], // hands [ @@ -108,20 +108,20 @@ const cancel = start(() => { shadowX: 2, shadowY: 2, shadowBlur: 5, - shadowColor: "rgba(0,0,0,0.4)" + shadowColor: "rgba(0,0,0,0.4)", }), - ["circle", {}, [0, 0], 5] - ] - ] + ["circle", {}, [0, 0], 5], + ], + ], ], [ "a.link", { href: - "https://github.com/thi-ng/umbrella/tree/develop/examples/hdom-canvas-clock" + "https://github.com/thi-ng/umbrella/tree/develop/examples/hdom-canvas-clock", }, - "Source code" - ] + "Source code", + ], ]; }); diff --git a/examples/hdom-canvas-draw/src/index.ts b/examples/hdom-canvas-draw/src/index.ts index f2e5ebd319..d0a1ea6b03 100644 --- a/examples/hdom-canvas-draw/src/index.ts +++ b/examples/hdom-canvas-draw/src/index.ts @@ -1,7 +1,11 @@ import { canvas } from "@thi.ng/hdom-canvas"; import { HALF_PI, PI } from "@thi.ng/math"; import { StreamSync, sync, trigger } from "@thi.ng/rstream"; -import { GestureEvent, gestureStream, GestureType } from "@thi.ng/rstream-gestures"; +import { + GestureEvent, + gestureStream, + GestureType, +} from "@thi.ng/rstream-gestures"; import { filter, map, @@ -9,7 +13,7 @@ import { normRange, partition, repeat, - zip + zip, } from "@thi.ng/transducers"; import { updateDOM } from "@thi.ng/transducers-hdom"; import { dist } from "@thi.ng/vectors"; @@ -23,7 +27,7 @@ const line = ([a, b]: number[][]) => (_: any, attribs: any) => [ "line", { ...attribs, weight: dist(a, b) / 4 }, a, - b + b, ]; // higher order root component function. takes a @thi.ng/rstream @@ -57,7 +61,7 @@ const app = (main: StreamSync) => { ), // name of the new input "gesture" - ) + ), }; // this root component function will produce the actual UI and // will be attached to the `main` stream combinator below and executes @@ -79,11 +83,11 @@ const app = (main: StreamSync) => { { fill: "rgba(255,255,255,0.1)", stroke: "black", - dash: [1, 1] + dash: [1, 1], }, [0, 0], W, - W + W, ], // use a group node to assign attributes common to all children [ @@ -102,11 +106,12 @@ const app = (main: StreamSync) => { [ gesture, { - stroke: `hsl(${h + - (delta - 0.5) * 40},100%,50%)`, + stroke: `hsl(${ + h + (delta - 0.5) * 40 + },100%,50%)`, rotate: theta + (delta - 0.5) * 0.3, - translate - } + translate, + }, ], // iterator which forms tuples of `[attribs, counter]` zip(repeat(attribs), normRange(6)) @@ -116,20 +121,20 @@ const app = (main: StreamSync) => { [30, [0, 0], 0], [120, [W, W], PI], [210, [W, 0], HALF_PI], - [300, [0, W], -HALF_PI] + [300, [0, W], -HALF_PI], ] - ) - ] + ), + ], ], // back in normal DOM [ "a.db.link", { href: - "https://github.com/thi-ng/umbrella/tree/develop/examples/hdom-canvas-draw" + "https://github.com/thi-ng/umbrella/tree/develop/examples/hdom-canvas-draw", }, - "Source code" - ] + "Source code", + ], ]; }; diff --git a/examples/hdom-canvas-particles/src/index.ts b/examples/hdom-canvas-particles/src/index.ts index eb0379390e..4cd05f868c 100644 --- a/examples/hdom-canvas-particles/src/index.ts +++ b/examples/hdom-canvas-particles/src/index.ts @@ -28,7 +28,7 @@ const makeCurve = (i: number) => ); const initCurves = () => [ - ...map(makeCurve, range(-(NUMC >> 1), (NUMC >> 1) + 1)) + ...map(makeCurve, range(-(NUMC >> 1), (NUMC >> 1) + 1)), ]; const updateCurves = (curves: Cubic[], t: number) => { @@ -48,7 +48,7 @@ const updateCurves = (curves: Cubic[], t: number) => { const makeParticle = (curves: Cubic[]) => ({ curve: curves[SYSTEM.int() % curves.length], pos: 0, - vel: SYSTEM.minmax(0.002, 0.01) + vel: SYSTEM.minmax(0.002, 0.01), }); const updateParticles = (particles: Particle[]) => { @@ -67,7 +67,7 @@ const particle = (p: Particle) => { { translate: pos }, // compute 2nd end point in local space sub2(null, pointAt(p.curve, p.pos - 0.05), pos), - ZERO2 + ZERO2, ]; }; @@ -81,8 +81,8 @@ const GRAD = [ { id: "curve", from: [0, 0], to: [600, 0] }, [ [0, [0.6, 0.01, 0]], - [1, [0.2, 0, 0.6]] - ] + [1, [0.2, 0, 0.6]], + ], ], // for particles [ @@ -90,9 +90,9 @@ const GRAD = [ { id: "part", from: [-20, 0], to: [0, 0] }, [ [0, [1, 0, 0, 0]], - [1, [1, 0.8, 0.5, 0.8]] - ] - ] + [1, [1, 0.8, 0.5, 0.8]], + ], + ], ]; const app = () => { @@ -115,15 +115,15 @@ const app = () => { translate: [0, height / 2], scale, stroke: "$curve", - compose: "screen" + compose: "screen", }, ...curves, [ "g", { stroke: "$part", weight: 2 }, - ...map(particle, particles) - ] - ] + ...map(particle, particles), + ], + ], ]; }; }; diff --git a/examples/hdom-canvas-shapes/src/index.ts b/examples/hdom-canvas-shapes/src/index.ts index 6b9e0a297b..92b64c565d 100644 --- a/examples/hdom-canvas-shapes/src/index.ts +++ b/examples/hdom-canvas-shapes/src/index.ts @@ -7,12 +7,7 @@ import { COMMENT, serialize } from "@thi.ng/hiccup"; import { convertTree, svg } from "@thi.ng/hiccup-svg"; import { sincos } from "@thi.ng/math"; import { concat, skewX23, translation23 } from "@thi.ng/matrices"; -import { - fromRAF, - stream, - Subscription, - sync -} from "@thi.ng/rstream"; +import { fromRAF, stream, Subscription, sync } from "@thi.ng/rstream"; import { map, range, repeatedly } from "@thi.ng/transducers"; import { updateDOM } from "@thi.ng/transducers-hdom"; import { addN } from "@thi.ng/vectors"; @@ -30,7 +25,7 @@ const randpos = () => [Math.random() * W - W2, Math.random() * W - W2]; const randdir = (n = 1) => [ Math.random() * n * 2 - n, - Math.random() * n * 2 - n + Math.random() * n * 2 - n, ]; // various tests for different shapes & canvas drawing options @@ -45,13 +40,13 @@ const TESTS: any = { stroke: "#000", weight: 3, dash: [4, 8], - dashOffset: (Date.now() * 0.01) % 12 + dashOffset: (Date.now() * 0.01) % 12, }) .moveTo([10, 10]) .quadraticTo([W2, W2], [W2, W - 10]) .quadraticTo([W2, W2], [W - 10, 10]) .quadraticTo([W2, W2], [10, 10]) - .current() + .current(), }, "shape morph": { @@ -69,14 +64,14 @@ const TESTS: any = { dash: [20, 20], dashOffset: (t * 5) % 40, translate: [W2, W2], - rotate: (t * 0.05) % (2 * Math.PI) + rotate: (t * 0.05) % (2 * Math.PI), }) .moveTo([-100, -100]) .quadraticTo([-a, 0], [0, 100]) .quadraticTo([a, 0], [100, -100]) .quadraticTo([0, -a], [-100, -100]) .current(); - } + }, }, "points 1k": { @@ -89,8 +84,8 @@ const TESTS: any = { size: 4, shape: "circle", translate: [W2, W2], - scale: 0.6 + 0.4 * Math.sin(Date.now() * 0.005) - }) + scale: 0.6 + 0.4 * Math.sin(Date.now() * 0.005), + }), }, "points 10k": { @@ -101,8 +96,8 @@ const TESTS: any = { fill: "#000", stroke: "none", translate: [W2, W2], - scale: 0.6 + 0.4 * Math.sin(Date.now() * 0.005) - }) + scale: 0.6 + 0.4 * Math.sin(Date.now() * 0.005), + }), }, "points 50k": { @@ -113,8 +108,8 @@ const TESTS: any = { fill: "#000", stroke: "none", translate: [W2, W2], - scale: 0.6 + 0.4 * Math.sin(Date.now() * 0.005) - }) + scale: 0.6 + 0.4 * Math.sin(Date.now() * 0.005), + }), }, "rounded rects": { @@ -131,16 +126,16 @@ const TESTS: any = { align: "center", baseline: "middle", font: "48px Menlo", - __normalize: false + __normalize: false, }, ...map( (i) => ["rect", null, [i, i], W - 2 * i, W - 2 * i, r], range(10, 50, 5) ), // ...map((i) => normalizedPath(roundedRect([i, i], [W - 2 * i, W - 2 * i], r)), range(10, 50, 5)), - ["text", {}, [W2, W2], Math.round(r)] + ["text", {}, [W2, W2], Math.round(r)], ]; - } + }, }, "linear gradient": { @@ -155,27 +150,27 @@ const TESTS: any = { { id: "grad1", from: [0, 0], to: [W, W] }, [ [0, "#fc0"], - [1, "#0ef"] - ] + [1, "#0ef"], + ], ], [ "linearGradient", { id: "grad2", from: [0, 0], - to: [W, W2 + W2 * Math.sin(Date.now() * 0.005)] + to: [W, W2 + W2 * Math.sin(Date.now() * 0.005)], }, [ [0, "#700"], [0.5, "#d0f"], - [1, "#fff"] - ] - ] + [1, "#fff"], + ], + ], ], ["circle", { fill: "$grad1" }, [W2, W2], W2 - 10], ["rect", { fill: "$grad2" }, [125, 0], 50, W], - ["rect", { fill: "$grad2" }, [0, 125], W, 50] - ] + ["rect", { fill: "$grad2" }, [0, 125], W, 50], + ], }, "radial gradient": { @@ -197,28 +192,28 @@ const TESTS: any = { from: [x, W - 20], to: [W2, W], r1: W, - r2: 100 + r2: 100, }, [ [0, "#07f"], [0.5, "#0ef"], [0.8, "#efe"], - [1, "#af0"] - ] + [1, "#af0"], + ], ], [ "radialGradient", { id: "sun", from: spos, to: spos, r1: 5, r2: 50 }, [ [0, [1, 1, 1]], - [1, [1, 1, 0.75, 0]] - ] - ] + [1, [1, 1, 0.75, 0]], + ], + ], ], ["circle", { fill: "$bg" }, [W2, y], W2 - 20], - ["circle", { fill: "$sun" }, spos, 50] + ["circle", { fill: "$sun" }, spos, 50], ]; - } + }, }, "images 1k": { @@ -245,7 +240,7 @@ const TESTS: any = { }; const body = ["g", {}, ...repeatedly(ball, 1000)]; return () => body; - })() + })(), }, static: { @@ -259,7 +254,7 @@ const TESTS: any = { [], translation23([], [150, 150]), skewX23([], -Math.PI / 6) - ) + ), }, ["rect", { fill: "#ff0" }, [-50, -50], 100, 100], [ @@ -268,14 +263,14 @@ const TESTS: any = { fill: "#00f", font: "18px Menlo", align: "center", - baseline: "middle" + baseline: "middle", }, [0, 0], - new Date().toISOString() - ] + new Date().toISOString(), + ], ]; return () => body; - })() + })(), }, ellipse: { @@ -292,13 +287,13 @@ const TESTS: any = { { stroke: hsva(x / 20, 1, 1) }, [150, 150], // pos addN(null, sincos(t + x * 0.1, 75), 75), // radii - Math.sin(t * 0.25) // axis + Math.sin(t * 0.25), // axis ], range(30) - ) + ), ]; - } - } + }, + }, }; // test case selection dropdown @@ -310,10 +305,10 @@ const choices = (_: any, target: Subscription, id: string) => [ const val = (e.target).value; window.location.hash = val.replace(/\s/g, "-"); target.next(val); - } + }, }, Object.keys(TESTS).map((k) => [k, k]), - id + id, ]; // event stream for triggering SVG conversion / export @@ -326,8 +321,8 @@ const selection = stream(); const scene = sync({ src: { id: selection, - time: fromRAF() - } + time: fromRAF(), + }, }).transform( map(({ id }) => ({ id, shapes: normalizeTree({}, TESTS[id].body()) })) ); @@ -342,8 +337,8 @@ scene.transform( [ "button.ml2", { onclick: () => trigger.next(true) }, - "convert & export" - ] + "convert & export", + ], ], // hdom-canvas component w/ injected `scene` subtree @@ -355,9 +350,9 @@ scene.transform( width: 300, height: 300, __normalize: false, - ...TESTS[id].attribs + ...TESTS[id].attribs, }, - shapes + shapes, ], ["div.ma2.tc", TESTS[id].desc], @@ -365,10 +360,10 @@ scene.transform( "a.link", { href: - "https://github.com/thi-ng/umbrella/tree/develop/examples/hdom-canvas-shapes" + "https://github.com/thi-ng/umbrella/tree/develop/examples/hdom-canvas-shapes", }, - "Source code" - ] + "Source code", + ], ]), updateDOM() ); @@ -386,13 +381,13 @@ sync({ { width: 300, height: 300, stroke: "none", fill: "none" }, [ COMMENT, - `generated by @thi.ng/hiccup-svg @ ${new Date()}` + `generated by @thi.ng/hiccup-svg @ ${new Date()}`, ], convertTree(scene.shapes) ) ) ) - ) + ), }); // seed initial test selection diff --git a/examples/hdom-dropdown-fuzzy/src/config.ts b/examples/hdom-dropdown-fuzzy/src/config.ts index 563c6f6611..7001dc5459 100644 --- a/examples/hdom-dropdown-fuzzy/src/config.ts +++ b/examples/hdom-dropdown-fuzzy/src/config.ts @@ -199,20 +199,20 @@ export const state = { "Vietnam", "Yemen", "Zambia", - "Zimbabwe" - ].map((x, i) => [i, x]) - } + "Zimbabwe", + ].map((x, i) => [i, x]), + }, }; export const theme = { root: { - class: "sans-serif" + class: "sans-serif", }, column: { - class: "fl w-100 w-50-ns w-33-l pa2" + class: "fl w-100 w-50-ns w-33-l pa2", }, input: { - class: "bg-transparent w-100 bn pa2" + class: "bg-transparent w-100 bn pa2", }, dd: { root: { class: "" }, @@ -220,28 +220,28 @@ export const theme = { style: { "max-height": 0, "overflow-y": "hidden", - opacity: 0 - } + opacity: 0, + }, }, bodyOpen: { style: { "max-height": "calc(11 * 1.8rem)", "overflow-y": "scroll", opacity: 1, - transition: "all 100ms ease-in" - } + transition: "all 100ms ease-in", + }, }, item: { class: - "pointer link db w-100 ph3 pv2 black hover-bg-washed-green bg-animate bb b--moon-gray" + "pointer link db w-100 ph3 pv2 black hover-bg-washed-green bg-animate bb b--moon-gray", }, itemSelected: { class: - "pointer link db w-100 ph3 pv2 black hover-bg-light-gray bg-animate bb b--moon-gray b" + "pointer link db w-100 ph3 pv2 black hover-bg-light-gray bg-animate bb b--moon-gray b", }, - itemDisabled: { class: "db w-100 ph3 pv2 gray bb b--moon-gray" } + itemDisabled: { class: "db w-100 ph3 pv2 gray bb b--moon-gray" }, }, fuzzy: { - class: "b underline" - } + class: "b underline", + }, }; diff --git a/examples/hdom-dropdown-fuzzy/src/fuzzy.ts b/examples/hdom-dropdown-fuzzy/src/fuzzy.ts index 8908da7636..aa5cc6b8ea 100644 --- a/examples/hdom-dropdown-fuzzy/src/fuzzy.ts +++ b/examples/hdom-dropdown-fuzzy/src/fuzzy.ts @@ -1,10 +1,5 @@ import { EV_SET_VALUE } from "@thi.ng/interceptors"; -import { - comp, - filterFuzzy, - iterator, - map -} from "@thi.ng/transducers"; +import { comp, filterFuzzy, iterator, map } from "@thi.ng/transducers"; import { DropdownItem, dropdownListeners, DropdownState } from "./dropdown"; import type { IView } from "@thi.ng/atom"; @@ -28,13 +23,13 @@ export const fuzzyDropdown = (ctx: any, opts: FuzzyArgs) => { oninput: (e: Event) => ctx.bus.dispatch([ EV_SET_VALUE, - [opts.filter.path, (e.target).value] + [opts.filter.path, (e.target).value], ]), onclear: () => ctx.bus.dispatch([EV_SET_VALUE, [opts.filter.path, ""]]), oncancel: close, - onconfirm: close - } + onconfirm: close, + }, ]; return () => { const state: any = { ...opts.state.deref() }; @@ -44,7 +39,7 @@ export const fuzzyDropdown = (ctx: any, opts: FuzzyArgs) => { ...iterator( comp( filterFuzzy(filter, { - key: (x: DropdownItem) => x[1].toLowerCase() + key: (x: DropdownItem) => x[1].toLowerCase(), }), map( ([id, x]) => @@ -54,12 +49,12 @@ export const fuzzyDropdown = (ctx: any, opts: FuzzyArgs) => { (y) => ["span", ctx.theme.fuzzy, y], x, filter - ) + ), ] ) ), state.items - ) + ), ]; } return [ @@ -69,8 +64,8 @@ export const fuzzyDropdown = (ctx: any, opts: FuzzyArgs) => { openLabel: filterInput, hoverLabel: opts.hoverLabel, noItems: "no matches", - state - } + state, + }, ]; }; }; diff --git a/examples/hdom-dropdown/src/config.ts b/examples/hdom-dropdown/src/config.ts index baaed9e4fa..cb0f2470de 100644 --- a/examples/hdom-dropdown/src/config.ts +++ b/examples/hdom-dropdown/src/config.ts @@ -16,8 +16,8 @@ export const state = { "Sport", "Thriller", "War", - "Western" - ].map((x, i) => [i, x]) + "Western", + ].map((x, i) => [i, x]), }, bar: { open: false, @@ -30,17 +30,17 @@ export const state = { "Middle East", "North America", "Oceania", - "South America" - ].map((x, i) => [i, x]) - } + "South America", + ].map((x, i) => [i, x]), + }, }; export const theme = { root: { - class: "sans-serif" + class: "sans-serif", }, column: { - class: "fl w-100 w-50-ns w-33-l pa2" + class: "fl w-100 w-50-ns w-33-l pa2", }, dd: { root: { class: "" }, @@ -48,24 +48,24 @@ export const theme = { style: { "max-height": 0, "overflow-y": "hidden", - opacity: 0 - } + opacity: 0, + }, }, bodyOpen: { style: { "max-height": "calc(11 * 1.8rem)", "overflow-y": "scroll", opacity: 1, - transition: "all 100ms ease-in" - } + transition: "all 100ms ease-in", + }, }, item: { class: - "pointer link db w-100 ph3 pv2 black hover-bg-washed-green bg-animate bb b--moon-gray" + "pointer link db w-100 ph3 pv2 black hover-bg-washed-green bg-animate bb b--moon-gray", }, itemSelected: { class: - "pointer link db w-100 ph3 pv2 black hover-bg-light-gray bg-animate bb b--moon-gray b" - } - } + "pointer link db w-100 ph3 pv2 black hover-bg-light-gray bg-animate bb b--moon-gray b", + }, + }, }; diff --git a/examples/hdom-dropdown/src/index.ts b/examples/hdom-dropdown/src/index.ts index b7a0c27420..1b08d1ac25 100644 --- a/examples/hdom-dropdown/src/index.ts +++ b/examples/hdom-dropdown/src/index.ts @@ -25,10 +25,10 @@ start( state: ctx.bus.state.deref().foo, hoverLabel: [ ["span", "Choose a genre..."], - ["i.fr.fas.fa-angle-down"] - ] - } - ] + ["i.fr.fas.fa-angle-down"], + ], + }, + ], ], [ "div", @@ -40,11 +40,11 @@ start( state: ctx.bus.state.deref().bar, hoverLabel: [ ["span", "Region..."], - ["i.fr.fas.fa-angle-down"] - ] - } - ] - ] + ["i.fr.fas.fa-angle-down"], + ], + }, + ], + ], ]; }, { ctx: { bus, theme } } diff --git a/examples/hdom-elm/src/elm.ts b/examples/hdom-elm/src/elm.ts index 269e52a405..89606dd2c1 100644 --- a/examples/hdom-elm/src/elm.ts +++ b/examples/hdom-elm/src/elm.ts @@ -2,7 +2,7 @@ import { DEFAULT_IMPL, HDOMImplementation, HDOMOpts, - resolveRoot + resolveRoot, } from "@thi.ng/hdom"; import { derefContext } from "@thi.ng/hiccup"; import type { Fn, Fn2 } from "@thi.ng/api"; diff --git a/examples/hdom-elm/src/index.ts b/examples/hdom-elm/src/index.ts index 1150051f19..b12a54775a 100644 --- a/examples/hdom-elm/src/index.ts +++ b/examples/hdom-elm/src/index.ts @@ -1,11 +1,6 @@ import { setIn, updateIn } from "@thi.ng/paths"; import { Z3 } from "@thi.ng/strings"; -import { - DEC, - DEFER, - INC, - RANDOM -} from "./api"; +import { DEC, DEFER, INC, RANDOM } from "./api"; import { mount } from "./elm"; mount( diff --git a/examples/hdom-inner-html/src/index.ts b/examples/hdom-inner-html/src/index.ts index cae69c1875..ee99bc234c 100644 --- a/examples/hdom-inner-html/src/index.ts +++ b/examples/hdom-inner-html/src/index.ts @@ -23,7 +23,7 @@ const innerHtmlWrapper = () => this.el.innerHTML = ""; delete this.prev; delete this.el; - } + }, }; /** @@ -36,7 +36,7 @@ const app = () => { wrapper, new Date().getSeconds() & 1 ? `
Time now:
` - : `
${new Date().toLocaleTimeString()}
` + : `
${new Date().toLocaleTimeString()}
`, ]; }; diff --git a/examples/hdom-local-render/src/index.ts b/examples/hdom-local-render/src/index.ts index 9e2df9e67e..cfb2adf422 100644 --- a/examples/hdom-local-render/src/index.ts +++ b/examples/hdom-local-render/src/index.ts @@ -76,9 +76,9 @@ class Foo extends LocalReRenderable { onclick: () => { this.col = COLORS.next().value; this.localRender(this.time); - } + }, }, - `${this.id}: ${time}` + `${this.id}: ${time}`, ]; } } @@ -105,7 +105,7 @@ const app = ({ time }: any) => [ // memoized...) [foo("a"), time], [foo("b"), time], - [foo("c"), time] + [foo("c"), time], ]; // trigger full DOM updates every 2 secs diff --git a/examples/hdom-skip-nested/src/index.ts b/examples/hdom-skip-nested/src/index.ts index bd42f5e27c..3c34e1fbce 100644 --- a/examples/hdom-skip-nested/src/index.ts +++ b/examples/hdom-skip-nested/src/index.ts @@ -35,14 +35,14 @@ const button = () => this.id++; this.enabled = true; }, 500); - } + }, }, - this.id + this.id, ]; this.previd = this.id; this.prevenabled = this.enabled; return body; - } + }, }; /** @@ -67,14 +67,14 @@ const wrapper = () => { onclick: () => { nextSkip = !nextSkip; requestAnimationFrame(() => (skip = nextSkip)); - } + }, }, - nextSkip ? "unskip!" : "skip!" + nextSkip ? "unskip!" : "skip!", ], [bt, id], nextSkip ? ["div.dib.mh3.f7.red", "(counter updates not shown)"] - : null + : null, ]; }; diff --git a/examples/hdom-skip/src/index.ts b/examples/hdom-skip/src/index.ts index 2f49fdfe58..d97026f6bf 100644 --- a/examples/hdom-skip/src/index.ts +++ b/examples/hdom-skip/src/index.ts @@ -27,7 +27,7 @@ const timer = (period: number, name = `${period}ms`) => { ? ["div.sans-serif", `${name} @ ${this.val++ || 0}`] : // dummy content (could be an empty div) ["div", { __skip: true }, "I should be never seen"]; - } + }, }; }; @@ -46,12 +46,12 @@ const app = { "a.db.mt3.link", { href: - "https://github.com/thi-ng/umbrella/tree/develop/examples/hdom-skip" + "https://github.com/thi-ng/umbrella/tree/develop/examples/hdom-skip", }, - "Source code" - ] + "Source code", + ], ]; - } + }, }; // kick off diff --git a/examples/hdom-theme-adr-0003/src/index.ts b/examples/hdom-theme-adr-0003/src/index.ts index fae71f836a..e2bf80c10b 100644 --- a/examples/hdom-theme-adr-0003/src/index.ts +++ b/examples/hdom-theme-adr-0003/src/index.ts @@ -180,7 +180,7 @@ const app = (ctx: any) => [ "Please see ", [ link, - "https://github.com/thi-ng/umbrella/blob/master/packages/hdom-components/adr/0003-component-configuration-via-context.md", + "https://github.com/thi-ng/umbrella/blob/develop/packages/hdom-components/adr/0003-component-configuration-via-context.md", "ADR-0003", ], " for details of this approach.", @@ -189,7 +189,7 @@ const app = (ctx: any) => [ "p", [ link, - "https://github.com/thi-ng/umbrella/blob/master/examples/hdom-theme-adr-0003", + "https://github.com/thi-ng/umbrella/blob/develop/examples/hdom-theme-adr-0003", "Source", ], ], diff --git a/examples/hdom-toggle/src/index.ts b/examples/hdom-toggle/src/index.ts index bc1aa42905..9a5f00df88 100644 --- a/examples/hdom-toggle/src/index.ts +++ b/examples/hdom-toggle/src/index.ts @@ -3,7 +3,7 @@ import { slideToggleDot, slideToggleRect, ToggleDotOpts, - ToggleRectOpts + ToggleRectOpts, } from "@thi.ng/hdom-components"; const state = [true, false, true, false, true]; @@ -13,21 +13,21 @@ const toggleState = (i: number) => (state[i] = !state[i]); const dotOpts: Partial = { r: 8, pad: 2, - margin: 2 + margin: 2, }; const rectOpts: Partial = { w: 16, h: 8, pad: 2, - margin: 2 + margin: 2, }; const strokeOpts = { bgOn: { stroke: "#00f", "stroke-width": 2, fill: "none" }, bgOff: { stroke: "#99f", "stroke-width": 2, fill: "none" }, fgOn: { fill: "#00f" }, - fgOff: { fill: "#99f" } + fgOff: { fill: "#99f" }, }; const toggleH = slideToggleDot(dotOpts); @@ -40,7 +40,7 @@ const toggleVStroke = slideToggleDot({ fgOff: { stroke: "#99f", fill: "none" }, vertical: true, pad: 3, - r: 7 + r: 7, }); const toggleHSq = slideToggleRect({ ...rectOpts }); @@ -51,7 +51,7 @@ const toggleVSqStroke = slideToggleRect({ ...strokeOpts, w: 8, h: 20, - vertical: true + vertical: true, }); const toggleGroup = (_: any, toggle: any) => [ @@ -62,12 +62,12 @@ const toggleGroup = (_: any, toggle: any) => [ toggle, { class: "pointer mr1", - onclick: () => toggleState(i) + onclick: () => toggleState(i), }, - x + x, ], - ["div.tc", i] - ]) + ["div.tc", i], + ]), ]; const cancel = start(() => [ @@ -79,7 +79,7 @@ const cancel = start(() => [ [toggleGroup, toggleHSq], [toggleGroup, toggleHSqStroke], [toggleGroup, toggleVSq], - [toggleGroup, toggleVSqStroke] + [toggleGroup, toggleVSqStroke], ]); if (process.env.NODE_ENV !== "production") { diff --git a/examples/hdom-vscroller/src/commits.json b/examples/hdom-vscroller/src/commits.json index 51aae4049b..169703464a 100644 --- a/examples/hdom-vscroller/src/commits.json +++ b/examples/hdom-vscroller/src/commits.json @@ -1 +1,7103 @@ -[["d990c3c2","2019-02-08","perf(geom-isoline): minor optimizations"],["3ed4ea12","2019-02-07","fix(hdom): fix #72, update normalizeElement()"],["2b3dd7f4","2019-02-05","feat(examples): dynamic chart width (package-stats)"],["0715665a","2019-02-05","docs(geom-voronoi): add example screenshot"],["74fb4d83","2019-02-05","Publish"],["3b7d8cee","2019-02-05","docs: update main readme"],["c4aaa82b","2019-02-05","build: update various geom packages (deps, tags & readmes)"],["134c353f","2019-02-05","Merge branch 'develop' of github.com:thi-ng/umbrella into develop"],["cf7dc3a3","2019-02-05","feat(bencode): re-import updated bencode pkg"],["f2612a6b","2019-02-05","feat(bencode): re-import updated bencode pkg"],["9d8dd32e","2019-02-05","refactor(vectors): update imports (zip)"],["7f4e3989","2019-02-05","refactor(geom-tessellate): update imports (zip)"],["5204a7fe","2019-02-05","refactor(geom): update imports (zip)"],["29045902","2019-02-05","refactor(color): update imports (zip)"],["f15ea5fc","2019-02-05","refactor(examples): update deps & imports in various examples"],["d1151cea","2019-02-05","refactor(transducers): deprecate & rename tuples() => zip()"],["a7c1ef7b","2019-02-05","refactor(transducers): migrate binary related ops to new package"],["02877c79","2019-02-05","feat(transducers-binary): extract as new pkg from @thi.ng/transducers"],["ae83bb29","2019-02-05","fix(transducers): ensure all vals in hexDump iterator version"],["57d4488a","2019-02-05","feat(math): add PHI const"],["8d61b710","2019-02-05","refactor(examples): minor update iso-plasma"],["678c3ff0","2019-02-02","refactor(examples): update iso-plasma"],["37fb295f","2019-02-02","feat(examples): add iso-plasma demo"],["bd1754d5","2019-02-01","feat(geom-accel): add selectVals() impl"],["4bde37e1","2019-02-01","feat(geom-api): add ISpatialAccel.selectVals()"],["13f655a6","2019-02-01","docs: update main readme"],["d7ccc887","2019-02-01","refactor(vector-pools): update AttribPool & VecPool ctors"],["6d15686a","2019-02-01","refactor(malloc): update MemPoolOpts & MemPool ctor args"],["e30b2111","2019-02-01","feat(geom-isoline): import package (ported from clojure)"],["b7d162fa","2019-02-01","feat(vector-pools): update & fix AttribPool resize logic"],["1b72d1d4","2019-01-31","build: update deps in unreleased packages"],["3529c2f3","2019-01-31","Merge branch 'master' into develop"],["50a5098a","2019-01-31","Publish"],["3adabc4d","2019-01-31","fix(strings): fix #70, replace kebab() regex w/ legacy version"],["a55f4770","2019-01-31","feat(malloc): add reallocArray(), update realloc() & compact(), tests"],["bf8b28fc","2019-01-31","feat(malloc): add realloc(), update free()"],["16b48b38","2019-01-31","fix(vector-pools): AttribPool opts & default handling"],["4acc8318","2019-01-30","feat(examples): update hdom-canvas-shapes (add ellipse test)"],["ea322265","2019-01-30","refactor(geom-isec): update/merge intersectRayRect/AABB"],["5f7dd635","2019-01-30","feat(geom): add ray-rect/aabb impls for intersects()"],["93e2ea65","2019-01-30","feat(geom-isec): add ray-rect/aabb tests, fix ray-line, add NONE, update docs"],["4d19aa20","2019-01-29","perf(geom-voronoi): update computeDual(), update isBoundary()"],["2ff68db7","2019-01-29","feat(geom-voronoi): add support for vertex user data, tolerances, refactor QE changes"],["426cd37f","2019-01-29","refactor(quad-edge): replace QuadEdge class w/ type alias, add docs"],["f249b7e1","2019-01-29","docs: update main readme"],["613ffeba","2019-01-29","Merge branch 'feature/geom-qe' into develop"],["b11837a2","2019-01-29","docs(geom): update readme"],["c903293f","2019-01-29","feat(geom-voronoi): re-import & update QE delaunay/voronoi pkg (MBP2010)"],["ee76797b","2019-01-29","feat(quad-edge): re-import & update quad edge impl (MBP2010)"],["4b852882","2019-01-29","refactor(geom): minor update clippedLine()"],["084883eb","2019-01-29","refactor(geom-clip): minor update liangBarsky"],["6d14f2b7","2019-01-28","refactor(geom): swap Group ctor & factory arg order"],["af099ee5","2019-01-28","build(geom): update geom-clip dep & refs"],["004d7f46","2019-01-28","build(geom-clip): rename pkg geom-clip-convex => geom-clip, update deps"],["6391d104","2019-01-28","refactor(geom-tessellate): update imports / deps"],["31e369bd","2019-01-28","feat(math): add simplifyRatio()"],["226645fd","2019-01-28","refactor(geom): update pointInside & classifyPoint impls (delegate)"],["895102d4","2019-01-28","feat(geom-poly-utils): add convexity(), remove obsolete/migrated point checks"],["6ee03ebc","2019-01-28","feat(geom-api): re-add Convexity enum"],["2b235461","2019-01-28","feat(geom-isec): migrate point intersection/containment checks"],["11bf7232","2019-01-28","minor(geom-closest-point): minor updates"],["f9dd3037","2019-01-28","docs(vectors): update docstrings"],["e2047df3","2019-01-25","Merge branch 'feature/geom-refactor' into develop"],["df8332d0","2019-01-25","refactor(geom): remove obsolete/migrated fns, update deps, readme"],["37741081","2019-01-25","fet(geom-hull): extract from geom as new package"],["68a26f44","2019-01-25","feat(geom-poly-utils): move barycentric fns from main geom pkg"],["74aa9543","2019-01-25","docs(geom): update readme"],["f6a621a3","2019-01-25","docs(geom-subdiv-curve): add docs, minor updates subdivide()"],["87fddb89","2019-01-25","refactor(geom-api): minor update SubdivKernel"],["598fca55","2019-01-25","refactor(poisson): minor optimizations, update PoissonOpts & defaults"],["bee1c89c","2019-01-24","feat(poisson): add geom-api dep, optimize search"],["9022d5bb","2019-01-24","perf(geom-accel): optimize single nearest point search, fix select()"],["18ce6c96","2019-01-24","refactor(geom-api): update ISpatialAccel"],["5c98ed70","2019-01-24","refactor(geom-api): split into separate files, add ISpatialAccel"],["03352e11","2019-01-23","refactor(examples): update geom-tessel demo"],["b223603d","2019-01-23","refactor(geom): update to use geom-api types"],["f7ad4d3b","2019-01-23","refactor(geom-tessellate): update to use geom-api types"],["0964a956","2019-01-23","refactor(geom-subdiv-curve): update to use geom-api types"],["5b674154","2019-01-23","refactor(geom-splines): update to use geom-api types"],["8d878b99","2019-01-23","refactor(geom-resample): update to use geom-api types, add douglas-peucker"],["27c4bf07","2019-01-23","refactor(geom-isec): update return types, use geom-api"],["47fb5e7b","2019-01-23","minor(geom-clip-convex): update imports"],["e36e2213","2019-01-23","refactor(geom-arc): update to use geom-api types"],["4e53293d","2019-01-23","feat(geom-api): extract from geom as new package"],["02231a3a","2019-01-23","build: update make-module script"],["407e9a54","2019-01-23","docs: update readmes"],["fb532b8c","2019-01-23","refactor(geom): remove obsolete/extracted internal ops, update publics"],["cb2429c4","2019-01-23","feat(geom-tessellate): extract from geom as new package"],["324a5162","2019-01-23","feat(geom-subdiv-curve): extract from geom as new package"],["5ef4c56d","2019-01-23","feat(geom-poly-utils): extract from geom as new package"],["798de06b","2019-01-23","feat(geom-closest-point): add more fns, update pkg"],["2054574a","2019-01-23","fix(geom-arc): add bounds return type, add missing re-export, update pkg"],["2440ffdd","2019-01-23","feat(vectors): add corner2, clockwise2, signedAreaC2, isInArray fns"],["9576920b","2019-01-23","build: simplify bundle-module script, update build cmds in all packages"],["58e0a05d","2019-01-23","feat(vectors): add VecPair type alias, add copyVectors()"],["15d67121","2019-01-23","feat(geom-clip-convex): extract from geom as new package"],["027150a6","2019-01-23","feat(geom-splines): extract from geom as new package"],["6cc8c738","2019-01-23","feat(geom-arc): extract from geom as new package (#69)"],["79abd0ba","2019-01-23","feat(geom-resample): extract from geom as new package"],["285dde49","2019-01-23","feat(geom-isec): extract from geom as new package"],["4ff5005a","2019-01-23","feat(geom-closest-point): extract from geom as new package"],["cae83948","2019-01-22","feat(math): add minError() search"],["e998610c","2019-01-22","Publish"],["35a0a59e","2019-01-22","fix(examples): update canvas examples due to recent package changes"],["c6023793","2019-01-22","feat(geom): add asPolyline() multi-fn"],["a017b10a","2019-01-22","feat(geom): add attrib support to PathBuilder"],["8c1df496","2019-01-22","fix(geom): update Rect.toHiccup() format (separate widht/height vals)"],["1d92c8c3","2019-01-22","feat(hdom-canvas): add color dep, update color attrib handling"],["783d9faf","2019-01-22","docs(hiccup-svg): update readme, add attrib conv notes, fix example"],["7f6011e7","2019-01-22","feat(hiccup-svg): add color dep, add attrib conversion for all elements"],["571fc704","2019-01-21","docs: update main readme"],["124acdb1","2019-01-21","docs(poisson): add/update doc strings, readme, example screenshot"],["d098aff5","2019-01-21","Publish"],["193f9d4a","2019-01-21","feat(poisson): re-import & update poisson package (MBP2010)"],["8fd5728b","2019-01-21","fix(geom-accel): add root null check for select/selectKeys()"],["3d499ad5","2019-01-21","refactor(geom): update tangentAt(), use direction() from vectors pkg"],["07d5f8fc","2019-01-21","feat(vectors): migrate direction(), normalLeft/Right2() from geom pkg"],["862ed083","2019-01-21","docs(color): update readme"],["4cd3850b","2019-01-21","docs(vectors): update readme"],["d7053813","2019-01-21","docs(vector-pools): update readme"],["0d10d507","2019-01-21","docs: prune changelogs"],["348e7303","2019-01-21","Publish"],["b9cea8cc","2019-01-21","refactor(vectors): update angleBetween*() fns, add absInner opt arg"],["a78bd87b","2019-01-21","feat(math): add absInnerAngle()"],["7c1bf047","2019-01-21","refactor(examples): update gesture-analysis demo"],["822d8fba","2019-01-21","docs: update readme links / package names"],["31595ebe","2019-01-20","Merge branch 'master' of github.com:thi-ng/umbrella"],["51723f99","2019-01-20","build(pointfree-lang): fix UMD identifier"],["15e4cb2d","2019-01-20","Merge branch 'feature/vec-refactor' into develop"],["b5842fa7","2019-01-20","docs(geom): update readme"],["74b7a38a","2019-01-20","build(vectors): refix version to previous"],["0779337d","2019-01-20","build: update vectors3 => vectors references everywhere"],["0fd2498e","2019-01-20","build(vectors): replace old vectors package w/ vectors3 (renamed back to vectors)"],["4bd77082","2019-01-20","build: update geom3 => geom references"],["682385a1","2019-01-20","build(geom): replace old geom package w/ geom3"],["ff503669","2019-01-20","build: update depgraph script to display per package deps/dependents"],["2f26cf68","2019-01-20","docs(hdom-canvas): fix readme example"],["8e2c8b5c","2019-01-20","refactor(geom): update withAttribs() return type"],["9a507694","2019-01-20","feat(hdom-canvas): add ellipse() / ellipticArc(), update readme"],["6f341c5c","2019-01-20","docs(vector-pools): fix AttribPool example layout"],["db4a2018","2019-01-20","feat(geom): re-add barycentric conversions, collation mappers (still unused)"],["08f7bd16","2019-01-20","docs(matrices): add docstrings for most fns"],["2aceab97","2019-01-20","feat(matrices): add m22 & m23 matrix converters"],["311b0074","2019-01-20","feat(vectors): add default output handling for set/setC/setS fns"],["12ad59a1","2019-01-20","refactor(examples): update geom-knn & geom-tessel demos"],["5ca58032","2019-01-19","refactor(color): remove circular dependencies, update parseCss()"],["5270143a","2019-01-19","refactor(defmulti): remove optional excess args from type sigs"],["5d087367","2019-01-19","refactor(examples): update geom-knn demo"],["485051db","2019-01-19","refactor(geom-accel): update to use new vectors package"],["46bb8730","2019-01-19","build: remove obsolete geom2 package"],["370f9280","2019-01-19","fix(hiccup-svg): convert path arc segment axis theta to degrees"],["63b3a5d9","2019-01-19","feat(geom): update closestPoint(), add support for Arc"],["0e5e7768","2019-01-19","feat(geom): add arcPointAt() helper, refactor Arc, minor other updates"],["62ec49fe","2019-01-19","fix(geom): update arcFrom2Points()"],["910529dd","2019-01-19","feat(geom): add splitNearPoint() for line & polyline, update Sampler"],["499e14b3","2019-01-18","refactor(geom): add tessellate() multi-fn, move/rename tessellators"],["1d754eb9","2019-01-18","feat(geom): add splitNearPoint(), Sampler.closestT(), internal restructure"],["0451f8f6","2019-01-18","docs: update main readme"],["9623b4e9","2019-01-18","build(geom): add @thi.ng/compose dependency"],["9a4570bf","2019-01-18","minor(geom): minor updates"],["56f60372","2019-01-18","feat(geom): add flip() impls"],["ebc9a981","2019-01-18","feat(geom): add pointAt() impls for Cubic/Quadratic"],["eaf1a1b0","2019-01-18","feat(geom): add closestPoint() impls for splines, line, polygons, polyline"],["627e20d4","2019-01-18","feat(geom): add transform() impls for Cubic/Quadratic"],["d763621c","2019-01-18","feat(geom): add clippedLine(), minor update liangBarsky()"],["cd59f664","2019-01-18","perf(geom): use squared dist for classifyPoint() (circle)"],["e834597c","2019-01-18","feat(geom): add/update edges(), pointInside() & classifyPoint() impls"],["f5a53ca0","2019-01-18","feat(geom): re-add vertices() impls for Cubic/Quadratic"],["3c9a7b0f","2019-01-18","feat(geom): re-add pathFromSvg()"],["66267e22","2019-01-18","feat(geom): add intersection checks & intersects() multi-fn"],["f1f428a2","2019-01-17","feat(geom): re-add tessellators"],["9f91cfa1","2019-01-17","fix(api): update assert(), re-export mixin()"],["5f873009","2019-01-17","feat(vectors): add randMinMax"],["d09cc795","2019-01-17","feat(geom): add clipConvex, scatter, warpPoints"],["61cfb0f1","2019-01-16","feat(geom): add path builder, path & arc op impls"],["e81d8c31","2019-01-16","feat(vectors): update/split angleBetween for 2d/3d"],["df49c71c","2019-01-16","Merge branch 'master' into develop"],["a6e6f2af","2019-01-16","Merge pull request #68 from evilive3000/fix-cache-ltru"],["c3762e97","2019-01-16","fix(cache): TLRU: expected behavior on getSet()"],["2cc682a6","2019-01-16","fix(examples): add release() lifecycle method (hdom-inner-html)"],["4effc0ec","2019-01-16","feat(examples): add hdom-inner-html demo #67"],["fea8fbe3","2019-01-16","feat(geom): re-add arc, cubic, quadratic ops, splitAt & other ops"],["18437026","2019-01-16","perf(vectors): update copy()"],["446a1832","2019-01-16","fix(vectors): minor update opt arg in VecOp*"],["66e45ccd","2019-01-15","build: update .npmignore files"],["253b1be9","2019-01-15","Merge branch 'develop' into feature/vec-refactor"],["a75f1920","2019-01-15","docs: update/fix various readmes"],["1cfefdab","2019-01-15","refactor(malloc): update imports"],["c8d8a37e","2019-01-15","refactor(malloc): add/extract types to api.ts"],["e04eb294","2019-01-11","refactor(defmulti): update imports, fix tests (cherry picked from cdd8659a)"],["89dafa45","2019-01-15","build: update bundle-module script, disable minification in UMD outputs"],["b63d2589","2019-01-15","docs(transducers): update cat() docstring"],["b70e84d7","2019-01-15","build: update .npmignore files (add .meta)"],["9eb6f2d2","2019-01-15","build: update rollup dev dep"],["491980c3","2019-01-15","Merge branch 'develop' into feature/vec-refactor"],["d118464b","2019-01-15","test(vectors): update tests (due to math eqDelta change in eps handling)"],["c0e3a0bc","2019-01-15","feat(geom): add temp geom3 package (another refactored version of geom2)"],["e28f56ec","2019-01-15","Merge branch 'develop' into feature/vec-refactor"],["50180096","2019-01-15","feat(math): update eqDelta w/ adaptive eps, rename old => eqDeltaFixed"],["a39811c6","2019-01-15","feat(hiccup-svg): add ellipse shape type, update convert()"],["d14c94b2","2019-01-15","build: disable minification for UMD outputs"],["c12ad1cc","2019-01-15","test(vectors): update eqDelta tests"],["18aeb49c","2019-01-15","build(vectors): add memoize dep"],["61e40638","2019-01-14","feat(vectors): add addm/addmN, subm/submN"],["d5ba06a4","2019-01-11","build: remove obsolete temp package vectors2"],["aa995682","2019-01-11","Merge branch 'develop' into feature/vec-refactor"],["507218aa","2019-01-11","minor(examples): update package-stats"],["fcbc0c27","2019-01-11","build: update bundle-module, strip comments, add source maps & dev deps"],["048bdb1c","2019-01-11","refactor(vectors2): update imports"],["f3a5e0ff","2019-01-11","refactor(malloc): update imports"],["c41b96fb","2019-01-11","refactor(geom): update imports, fix tests"],["cdd8659a","2019-01-11","refactor(defmulti): update imports, fix tests"],["c9da5485","2019-01-11","build(examples): update geom-tessel tsconfig"],["82f8ef27","2019-01-10","revert(hiccup-svg): undo merge mistake in convert.ts"],["a7ea1fc3","2019-01-10","build(vectors): build: update package scripts, outputs, imports"],["d4eddef2","2019-01-10","build(vectors2): build: update package scripts, outputs, imports"],["372c199c","2019-01-10","build(vector-pools): build: update package scripts, outputs, imports"],["5d25c1ae","2019-01-10","build(matrices): build: update package scripts, outputs, imports"],["e247386c","2019-01-10","build(geom): build: update package scripts, outputs, imports"],["4e48cb98","2019-01-10","build(color): build: update package scripts, outputs, imports"],["d7d237d0","2019-01-10","Merge branch 'develop' into feature/vec-refactor"],["ab159105","2019-01-10","test(api): fix import in mixin test"],["c91df5fc","2019-01-10","build: add test-only yarn script"],["6be3a871","2019-01-10","build: fix cjs output path in bundle-module script"],["3741663f","2019-01-10","Merge branch 'feature/multi-output' into develop"],["f6e3cdd5","2019-01-10","docs(examples): add troubleshooting notes"],["bbe636f4","2019-01-10","fix(examples): add quote escaping in xml-converter"],["bb3db27c","2019-01-10","build(examples): update tsconfig for commit-table-ssr"],["cc26ae98","2019-01-10","docs(examples): update readmes to refer to wiki build instructions"],["8f270dfa","2019-01-10","build: update project tpl scripts, ignore files"],["1f01bf8f","2019-01-10","build: update make-module script"],["4df9ec41","2019-01-10","build: update bundle-module outputs, emit meta data, update .gitignore"],["a894a24a","2019-01-10","fix(transducers): update juxt re-export"],["5c3080d7","2019-01-10","build: temporarily add webpack until parcel-bundler/parcel#2513 is fixed"],["bac59db6","2019-01-10","feat(examples): add package-stats charting example"],["27438f9c","2019-01-09","minor(examples): cleanup"],["4e28b5a6","2019-01-09","build(examples): update dev deps"],["1618c136","2019-01-09","build(examples): enable scope hoisting in `yarn build` scripts"],["d2d7952e","2019-01-08","minor: update imports in readme's / examples"],["3f1b79de","2019-01-08","build: update .gitignore"],["3747ad7b","2019-01-08","refactor(examples): update imports & deps of all examples"],["3b8576f3","2019-01-08","fix(csp): disable __State reverse enum lookup"],["d89f28fd","2019-01-08","fix(rstream-log): remove __Level reverse enum lookup, update Level (non const)"],["19449e8d","2019-01-08","fix(rstream-gestures): disable __GestureType reverse enum export"],["b238a3a9","2019-01-08","fix(rstream): disable __State reverse enum lookups"],["227be4b5","2019-01-08","fix(pointfree-lang): update NodeType handling"],["b198c195","2019-01-08","fix(hiccup-markdown): re-export TagFactories interface"],["f912a84a","2019-01-08","build: update package scripts, outputs, imports in remaining packages"],["b54b703d","2019-01-08","build: update package build scripts & outputs, imports in ~50 packages"],["f913d7bf","2019-01-08","build(api): update package build scripts / outputs"],["7fee8573","2019-01-08","build: update shared dev deps, rewrite bundle-module script"],["4e768394","2019-01-07","Merge branch 'develop' into feature/multi-output"],["d3944fb0","2019-01-07","build: switch travis to use node 10"],["a42b2e11","2019-01-07","refactor(rstream-query): use rstream nextID() util (fix regression)"],["3e1467fa","2019-01-07","refactor(rstream-log): use rstream nextID() util (fix regression)"],["c28ce64f","2019-01-07","Merge branch 'develop' into feature/multi-output"],["b31065bb","2019-01-07","Merge branch 'develop' of github.com:thi-ng/umbrella into develop"],["28f77e60","2019-01-07","build: update tsconfig & .npmignore files in all packages"],["4be67c59","2019-01-07","build: prep api, atom, bench, binary, checks, equiv, errors, paths for multi outputs"],["3df29305","2019-01-06","Merge pull request #66 from acarabott/feature/scaleWithCenter"],["92bce73d","2019-01-06","fix(vectors): fix NaNs in Mat23.scaleWithCenter"],["d1e275bd","2019-01-05","fix(rstream): avoid Subscription ctor to workaround parceljs build issue"],["e201ca8d","2019-01-05","refactor(rstream): replace Subscription.NEXT_ID w/ nextID() util"],["a313d830","2019-01-05","build: add/update dev deps, update build scripts in all packages"],["ce4b5283","2019-01-05","refactor(transducers-hdom): use arrow fns"],["e103d740","2019-01-05","refactor(transducers-fsm): use arrow fns"],["48670f58","2019-01-05","refactor(memoize): use arrow fns"],["5d530286","2019-01-05","refactor(csp): use arrow fns"],["e9f0542a","2019-01-05","refactor(transducers): use arrow fns"],["6eba2415","2019-01-05","refactor(rle-pack): use arrow fns"],["762db4e3","2019-01-05","refactor(rstream-csp): use arrow fns"],["8904cb4c","2019-01-05","refactor(rstream-gestures): use arrow fns"],["393d23ed","2019-01-05","minor(rstream-query): update formatting"],["14c00b29","2019-01-05","refactor(rstream-log): use arrow fns"],["ff9f8e0c","2019-01-05","minor(rstream-graph): update formatting"],["6c3ea083","2019-01-05","refactor(rstream): use arrow fns, update formatting"],["e0f7cb85","2019-01-05","minor(resolve-map): update formatting"],["560207a0","2019-01-05","refactor(math): use arrow fns"],["ad5574b9","2019-01-05","refactor(iterators): use arrow fns"],["3b74de92","2019-01-05","refactor(hiccup-css): use arrow fns"],["d9f4bd3f","2019-01-05","refactor(errors): use arrow fns"],["35377bd5","2019-01-05","refactor(compose): use arrow fns"],["025412a0","2019-01-05","refactor(compare): use arrow fns"],["aaf2723f","2019-01-05","refactor(associative): use arrow fns, update formatting"],["30c59fd5","2019-01-05","Merge branch 'feature/arrowfns' into develop"],["fc22a27e","2019-01-05","refactor(paths): update all as arrow fns"],["b70a3e1a","2019-01-05","refactor(checks): update all as arrow fns"],["3038a844","2019-01-04","docs(hiccup-markdown): update readme"],["634e2504","2019-01-04","Publish"],["343280d8","2019-01-04","refactor(examples): update MD demo, use parser from hiccup-markdown package"],["35db07fe","2019-01-04","feat(hiccup-markdown): add & refactor markdown parser (from example), update docs"],["5f09d3ec","2019-01-04","fix(examples): add missing return types"],["ffc68cef","2019-01-04","Merge branch 'develop' into feature/vec-refactor"],["6030753a","2019-01-04","Publish"],["492992d7","2019-01-04","docs: update package list in main readme"],["17c14b49","2019-01-04","docs(examples): update readmes"],["0a505c1a","2019-01-04","docs(fsm): update readme & package"],["98081e3a","2019-01-04","Merge branch 'feature/fsm' into develop"],["81e3fc79","2019-01-04","feat(fsm): add never(), optimize alts(), add docs for all matchers"],["297356dd","2019-01-04","docs(examples): update readme"],["120a7afd","2019-01-04","refactor(examples): remove 2nd table row in collectTable()"],["b60bf31a","2019-01-04","refactor(examples): cleanup parser & rules, tag handling, update readme"],["9585b86e","2019-01-04","feat(examples): add initial MD table support"],["a9336075","2019-01-04","feat(fsm): update not()"],["980d4888","2019-01-04","feat(examples): update MD parser, styles, readme"],["992f31ac","2019-01-04","feat(fsm): add always(), lit(), not(), cleanup imports"],["995a104b","2019-01-03","refactor(examples): update title & blockquote parsers/style"],["4a9bb3d6","2019-01-03","feat(fsm): add support for lookahead-1, add docs"],["f9cece70","2019-01-03","refactor(examples): update MD title parser"],["55671fc7","2019-01-03","feat(fsm): add repeat(), success(), refactor all matchers"],["36cadc96","2019-01-03","feat(examples): update tags, add hrule, blockquote, update CSS / readme"],["b04e0747","2019-01-03","feat(examples): update MD parser, add parse rules & custom tag support"],["9875cda8","2019-01-03","feat(examples): add markdown parser example"],["e03390b1","2019-01-03","feat(fsm): import fsm package"],["731ede02","2019-01-02","build: update deps (defmulti / transducers)"],["5b98d55e","2019-01-02","Merge branch 'develop' into feature/vec-refactor"],["26a29cf1","2019-01-02","Publish"],["1d29153c","2019-01-02","feat(defmulti): add opt fallback arg for defmultiN(), update docs"],["cd175866","2019-01-02","fix(transducers): add reduced() handling for cat()"],["161199f4","2019-01-02","feat(geom): add/rename type ids, add sphere, isec fns"],["2e6d1965","2019-01-02","fix(vectors): disable default prefix for random*() fns"],["2fb2aa32","2019-01-01","build: update deps"],["ba755f8a","2019-01-01","Merge branch 'develop' into feature/vec-refactor"],["7729d993","2019-01-01","Publish"],["488698a6","2019-01-01","feat(defmulti): add addAll(), add/update doc strings"],["d47798ed","2019-01-01","refactor(examples): update gesture analysis demo"],["b10c8d67","2019-01-01","refactor(geom): prep/update intersectShape() w/ new dispatch fn"],["c0008a7a","2018-12-31","minor(geom): update formatting"],["7cf5f7c4","2018-12-31","refactor(geom): update subdivKernel* fns"],["76c343c3","2018-12-31","feat(geom): add pointAt/tangentAt impls for circle/line"],["b9125168","2018-12-31","feat(geom): add ray skeleton impl"],["c7052171","2018-12-31","fix(vectors): cartesian2/3"],["52fb9399","2018-12-31","feat(matrices): add quatToMat33, update readme"],["4c6fe066","2018-12-31","fix(matrices): re-add persp divide in mulV344()"],["4f024918","2018-12-31","fix(matrices): scaleWithCenter* (add missing concat() arg)"],["6d58c309","2018-12-30","docs: rename pd image (because of GH CDN issues), update readme"],["cfc88744","2018-12-30","docs(color): add porterduff image"],["83a46311","2018-12-30","docs: fix readme links"],["0ee2be0a","2018-12-30","docs: update readmes"],["10fc9cc5","2018-12-30","docs(matrices): update readme (add full API list)"],["4f2f512c","2018-12-30","build(matrices): update deps"],["ae7a039e","2018-12-30","feat(matrices): add cwise matrix multiply, rename mul* => mulM*, move mulQ"],["c70189aa","2018-12-30","docs(vectors): update readme"],["7e19e7b4","2018-12-30","minor(vectors): minor update vop()"],["66036e6c","2018-12-30","fix(vectors): update gvec prop lookup & interning"],["6c9fe88e","2018-12-30","refactor(vectors): rename addWeighted*() => addW*(), update package kw"],["064d61c5","2018-12-30","docs(vectors): update readme & package keywords"],["d462ae0a","2018-12-30","perf(matrices): use setC6() for M23 ops"],["809383c9","2018-12-30","refactor(matrices): extract m33to44/m44to33() into own files, update re-exports"],["0ee306a2","2018-12-30","feat(vectors): add setC6()"],["0b07ac86","2018-12-30","fix(matrices): inject default output handling code"],["b5adea6f","2018-12-30","refactor(matrices): replace setValues*() w/ setC*(), update dotC*() use"],["b03b9192","2018-12-30","feat(matrices): add quaternion fns"],["06dd9634","2018-12-30","fix(vectors): result handling jitter()/project()"],["745053c5","2018-12-30","refactor(vector): minor updates arg/result handling"],["cfe333fe","2018-12-30","refactor(vectors): simplify various ops, improve tpl re-use"],["6b3608da","2018-12-30","fix(vectors): sum() impls"],["9b789bca","2018-12-30","refactor(vectors): simplify various ops, use setC*()"],["809bf9b9","2018-12-30","refactor(vectors): rename dotValues*() => dotC*()"],["6857f347","2018-12-30","feat(vectors): add clamp01(), clamp11() fns"],["dc6f4661","2018-12-30","refactor(vectors): add defMathOp()/defMathNOp(), update basic math ops"],["784f5c34","2018-12-29","build: update deps"],["b849bd1b","2018-12-29","feat(color): add alpha()/setAlpha(), add docs, re-exports, update readme"],["e7bb46b7","2018-12-29","feat(color): add Hue enum, closestHue*() fns, namedHueRgba()"],["172f5070","2018-12-29","docs(color): update readme"],["9d4fffa1","2018-12-29","build(color): add package keywords"],["aa303442","2018-12-29","feat(color): add convert() fallback, minor other updates"],["445b8c1f","2018-12-29","feat(color): add luminance defmulti"],["36b7d038","2018-12-29","refactor(color): rename, update matrix ops"],["f2cac286","2018-12-29","refactor(color): update type factory fns & ensureArgs()"],["a0f19956","2018-12-29","Merge branch 'develop' into feature/vec-refactor"],["b2cab4d0","2018-12-29","Publish"],["a90a712c","2018-12-29","fix(transducers): interpolate() interval selection, add minPos/maxPos"],["b0d28788","2018-12-29","refactor(color): update multiCosineGradient(), update readme"],["0546839d","2018-12-29","refactor(color): ColorMode const enum, update convert() dispatcher"],["a5c53c38","2018-12-29","fix(color): add/update conversions"],["04c38372","2018-12-28","refactor(color): update converters"],["4ca7a23d","2018-12-28","Merge branch 'feature/vec-refactor' into feature/color"],["a72562cf","2018-12-28","Merge branch 'develop' into feature/vec-refactor"],["eae8d140","2018-12-28","Publish"],["846ab5ca","2018-12-28","feat(transducers): add interpolate() iterator, update readme"],["dbbb26cf","2018-12-28","feat(color): add multiCosineGradient()"],["46013514","2018-12-28","refactor(color): update conversions"],["0a9456bf","2018-12-28","docs(color): update readme"],["1c28c22b","2018-12-28","fix(color): HCYA field names"],["e930d736","2018-12-28","feat(color): add more color spaces, refactor, rename, simplify"],["714381de","2018-12-27","perf(color): refactor porterDiff as HOF, update all PD ops, add docs"],["d0b1e60e","2018-12-27","refactor(color): add AColor, re-use for existing wrappers, update deps"],["f515f6cb","2018-12-27","Merge branch 'feature/vec-refactor' into feature/color"],["ef4562a2","2018-12-27","build: update deps"],["95ac1e86","2018-12-27","Merge branch 'feature/vec-refactor' into feature/color"],["5b49e70d","2018-12-27","Merge branch 'develop' into feature/vec-refactor"],["ea0dee0f","2018-12-27","Publish"],["3f9b2443","2018-12-27","refactor(pointfree): re-use comp() from thi.ng/compose"],["1ebfea95","2018-12-26","fix(compose): fix comp() for arities >10"],["0061b21f","2018-12-26","feat(compose): add threadFirst/Last, rename compI => compL"],["5788646f","2018-12-26","feat(color): add/update class wrappers"],["7a735f2d","2018-12-25","refactor(vectors): update gvec, Vec2/3/4, extract iterator impl"],["7bcd21ac","2018-12-24","Merge branch 'feature/vec-refactor' into feature/color"],["aa5ad976","2018-12-24","fix(vectors): update field names in declareIndex()"],["0caf599b","2018-12-24","Merge branch 'feature/vec-refactor' into feature/color"],["5620483b","2018-12-24","refactor(vector-pools): update IVector refs (new field names)"],["0c0fce6a","2018-12-24","feat(vectors): update gvec, add generic setS()"],["6e6a33ce","2018-12-24","refactor(vectors): update IVector (rename fields), add ICopyView"],["c2556c2e","2018-12-24","refactor(vectors): update declareIndices, extract single declareIndex fn"],["610699ab","2018-12-24","feat(color): add RGBA/HSLA wrapper types, update convert"],["404ac54b","2018-12-24","feat(color): add HSI converters, add clampH(), minor refactors"],["a5d2f98e","2018-12-23","feat(color): add Porter-Duff ops, pre/post-multiply, update types"],["8fa05c3d","2018-12-22","feat(math): add constants"],["eb5f6391","2018-12-22","feat(vectors): add setC()"],["0b51ef1c","2018-12-22","feat(color): add new package"],["946af71e","2018-12-21","Merge branch 'feature/vec-refactor' into feature/color"],["0099c27c","2018-12-21","Merge branch 'develop' into feature/vec-refactor"],["ec6084b5","2018-12-21","Publish"],["6618c226","2018-12-21","feat(hdom): add support for event listener options, update readme"],["696a0ce3","2018-12-21","Merge branch 'feature/vec-refactor' into feature/color"],["f617c7ec","2018-12-21","Merge branch 'develop' into feature/color"],["e49d3caa","2018-12-21","Merge branch 'develop' into feature/vec-refactor"],["62418f90","2018-12-21","Publish"],["9f48a760","2018-12-21","fix(hdom): fix #63 update removeChild() (IE11)"],["e2874932","2018-12-21","build(geom): update deps"],["c8e25bb0","2018-12-21","build(vectors): update deps"],["b130a944","2018-12-21","refactor(vectors): rename mapBufferV* fns => mapV*"],["8b582cb5","2018-12-21","refactor(vectors): extract & reuse Vec2/3/4 static fns, add copyView()"],["a916f3e7","2018-12-20","Merge branch 'develop' into feature/vec-refactor"],["802fab85","2018-12-20","Publish"],["61b7b117","2018-12-20","feat(iterators): add `children` arg for walk()/walkIterator()"],["f44070e4","2018-12-20","Publish"],["caad2d38","2018-12-20","docs: update package list"],["9984c51d","2018-12-20","Merge branch 'feature/hiccup-markdown' into develop"],["58f591e8","2018-12-20","feat(hiccup-markdown): add new package"],["df38394e","2018-12-20","refactor(hiccup): export normalize() fn"],["9884a67c","2018-12-19","build: update depgraph script"],["2a43bf37","2018-12-19","Publish"],["a78c6a7f","2018-12-19","feat(intervals): add Interval.parse(), update docs, readme, deps"],["6d753f98","2018-12-18","Merge branch 'develop' into feature/vec-refactor"],["47782618","2018-12-18","Publish"],["8545ded8","2018-12-18","Merge branch 'develop'"],["82814288","2018-12-18","docs: update package list"],["14a8a634","2018-12-18","docs: update package list"],["b0a31426","2018-12-18","feat(intervals): add new package"],["33bcd152","2018-12-17","Publish"],["04705053","2018-12-17","fix(transducers): add return type for range()"],["aa128298","2018-12-17","build: update deps"],["6201c9b8","2018-12-17","Merge branch 'develop' into feature/vec-refactor"],["1d5278f8","2018-12-16","Publish"],["6d85c626","2018-12-16","fix(hdom): life cycle init / release handling"],["159ce8f6","2018-12-15","Publish"],["a3290b08","2018-12-15","build: update deps in make-* scripts"],["32847a91","2018-12-15","build(examples): update deps"],["aac8b6f6","2018-12-15","feat(hiccup-css): add animation(), add test & update readme"],["3b3e5032","2018-12-14","fix(pointfree-lang): update parser stubs (TS3.2.x)"],["0436c506","2018-12-14","build: update dev deps in all packages"],["dae12057","2018-12-14","minor(hiccup-carbon-icons): fix repo link"],["a7491117","2018-12-14","Publish"],["d734b570","2018-12-14","docs: update package list (main readme)"],["da441c18","2018-12-14","feat(hdom-components): merge button & button group attribs"],["6b04e160","2018-12-14","feat(hiccup-carbon-icons): add new package"],["b86737a6","2018-12-14","feat(examples): update xml-converter cli arg handling (var name)"],["87e6cb31","2018-12-13","docs: update main readme"],["388c14b4","2018-12-13","Merge branch 'develop' into feature/vec-refactor"],["e36a7ee0","2018-12-13","Publish"],["151e1422","2018-12-13","docs(hdom): update readme"],["fbbf5f90","2018-12-13","minor(examples): update source links"],["582c69ff","2018-12-13","Merge branch 'feature/hdom-skip' into develop"],["fea3d777","2018-12-13","fix(examples): minor update hdom-benchmark2"],["8155bf4b","2018-12-13","feat(examples): add proper DOM stats calculation, remove interlacing (obsolete)"],["2ff75609","2018-12-13","perf(examples): update __skip handling in hdom-benchmark2"],["92c11107","2018-12-13","feat(examples): improve axis tick resolution estimate in crypto-chart"],["c3b1528f","2018-12-13","feat(examples): add more UI & controls to hdom-benchmark2"],["a40c0f5e","2018-12-13","minor(hdom-components): minor updates fpsCounter()"],["10afa0d5","2018-12-13","docs(examples): update hdom-skip comments"],["db4d0a58","2018-12-13","Merge branch 'develop' into feature/hdom-skip"],["1b298f76","2018-12-13","fix(strings): update kebab()"],["8dcc73a1","2018-12-13","feat(strings): add slugify()"],["ba0d5e5c","2018-12-13","docs(examples): update readme list"],["73a298df","2018-12-13","refactor(hdom-components): emit int coords for sparkline"],["baa1dfef","2018-12-13","feat(examples): add hdom-benchmark2 example"],["ebd33808","2018-12-13","feat(hdom-components): add FPS counter & sparkline components, update deps"],["c1fecc4d","2018-12-12","refactor(hdom-mock): update text node handling, tests, add readme"],["1dc6e721","2018-12-12","minor(hdom): intern strings"],["046ab206","2018-12-12","minor(hiccup): reformat"],["d3500df5","2018-12-12","feat(hiccup): add __skip support, add test, update readme"],["5609d24a","2018-12-11","feat(hdom-mock): add hdom-mock package and implementation, add initial tests"],["fe9a3120","2018-12-11","refactor(hdom): update createTextElement() sig, update docstrings"],["6db31708","2018-12-11","fix(transducers-hdom): integrate recent hdom updates"],["43327c9e","2018-12-11","refactor(hdom-canvas): update HDOMImplementation, add __skip support, reformat"],["69b29ad7","2018-12-11","docs(hdom): add __skip attrib docstring"],["6f2e8ee0","2018-12-11","refactor(hdom): extend & simplify HDOMImplementation, update DEFAULT_IMPL"],["8dc755d9","2018-12-10","minor(examples): fix typo"],["6d387dbd","2018-12-10","feat(examples): add hdom-skip example"],["a4e67362","2018-12-10","feat(hdom): add initial __skip ctrl attrib handling in diffTree()"],["42eab0bc","2018-12-09","Merge branch 'develop' into feature/vec-refactor"],["97bf837e","2018-12-09","doc(vectors): update readme (add note about vectors3 & matrices)"],["ceb404c4","2018-12-09","doc(geom): update readme (add note about geom2)"],["6726925b","2018-12-09","docs: add links to WIP packages"],["71300e92","2018-12-09","docs: update main readme"],["20e0884b","2018-12-09","Publish"],["19b0a554","2018-12-09","perf(diff): further array caching/reuse"],["cfdc4d76","2018-12-08","Merge branch 'develop' into feature/vec-refactor"],["6e361d62","2018-12-08","Publish"],["a7e9def5","2018-12-08","refactor(hdom-canvas): update diffArray call site"],["c3f6f98c","2018-12-08","refactor(hdom): minor update diff call sites"],["64feacfb","2018-12-08","refactor(diff): flatten linear edit logs, update readme & arg order"],["b627f60c","2018-12-08","Merge branch 'feature/hdom-perf' into develop"],["8165005c","2018-12-08","refactor(equiv): minor update (intern string consts)"],["899941f0","2018-12-08","perf(hdom-canvas): update diffTree() to compute edit dist only"],["e9b067b7","2018-12-08","refactor(hdom): update diffTree & diffAttributes (@thi.ng/diff updates)"],["e8356cd2","2018-12-08","perf(diff): flatten linear edit logs, rewrite diffObject(), add DiffMode"],["d1ee6d9e","2018-12-08","perf(diff): reduce amount of temp/internal array allocs (diffArray)"],["6c6da825","2018-12-08","feat(diff): add fast paths for simple cases, add tests, refactor as arrow fns"],["34b515b2","2018-12-08","Merge branch 'develop' into feature/vec-refactor"],["9878c556","2018-12-03","feat(examples): add ClojureX talk-slides example (presentation tool)"],["b08b8e55","2018-12-01","Merge branch 'develop' into feature/vec-refactor"],["88efaa91","2018-12-01","Publish"],["ba8bad68","2018-12-01","minor(transducers): manual array destructuring in reduce/iterator"],["0e77d2c6","2018-12-01","refactor(transducers): implement range() as class w/ IReducible impl"],["57836390","2018-12-01","refactor(examples): update geom-tessel example to use new geom lib"],["0b351e12","2018-12-01","refactor(examples): move gradient defs (mandelbrot)"],["896855de","2018-12-01","feat(geom): re-add arcLength() impls, update imports"],["d4172ee3","2018-12-01","refactor(geom): update everything to use new vectors package"],["68806d93","2018-11-30","feat(vectors): add 2d/3d constants, update Vec2/3"],["87510f74","2018-11-30","feat(vectors): add addWeighted, eqDeltaArray, mixCubic, mixQuadratic"],["9f36a681","2018-11-30","docs(vectors): update readme"],["84ab9b25","2018-11-30","docs(vectors): update readme"],["b415c803","2018-11-30","refactor(vector-pools): update AttribPool internals"],["21d107d9","2018-11-30","docs(vector-pools): update/fix readme"],["27ea8c4a","2018-11-30","minor(vector-pools): fix typos in readme"],["3a51a42d","2018-11-30","docs(vector-pools): fix readme links"],["fd54d323","2018-11-30","feat(vector-pools): update readme, add examples"],["4fe2047e","2018-11-30","feat(vector-pools): add GLType alias, AttribPoolOpts, update pool impls"],["019c0af3","2018-11-30","feat(vector-pools): add AttribPool, refactor lists"],["25b97891","2018-11-30","refactor(vectors): add StridedVec, update IVector, AVec"],["d381ace2","2018-11-29","feat(api): add assert()"],["c31ce8ad","2018-11-28","refactor(vector-pools): various minor updates & fixes"],["48d5d572","2018-11-28","feat(vector-pools): add VecPool, VecArrayList & VecLinkedList"],["ea6bafaf","2018-11-28","feat(malloc): expose SIZEOF, add wrap()"],["6cb3b92b","2018-11-28","feat(vectors): add IVector interface impls for gvec()"],["63458c2c","2018-11-28","feat(vectors): add proxied gvec(), update mapBuffer*() docs"],["1fe9650d","2018-11-27","feat(vectors): add mapBuffer*() fns"],["c3d19141","2018-11-27","feat(vectors): add Vec2/3/4.iterator()"],["4a8295b7","2018-11-27","feature(vectors): update swizzle*() to support in-place updates"],["27f65f9e","2018-11-27","feat(matrices): add rotationAroundAxis33/44()"],["28f04ac1","2018-11-27","feat(vectors): add project(), signedArea2(), update orthoNormal3()"],["a373e55b","2018-11-27","feat(vectors): update `out` default behavior & codegens, bugfixes"],["d9e1b2ec","2018-11-27","feat(matrices): add viewport(), project/unproject(), update invert()"],["16d56a37","2018-11-27","feat(matrices): add trace()"],["28fd0f1f","2018-11-27","feat(vectors): add sum()"],["f1a5cf12","2018-11-27","feat(matrices): add M44 factories"],["97ac629d","2018-11-27","feat(vectors): add/update ops, add docstrings"],["35babfc6","2018-11-27","feat(matrices): add more matrix ops"],["f04e79e9","2018-11-26","feat(matrices): add more matrix ops, optimize & simplify"],["e19f6223","2018-11-26","feat(vectors): add faceForward, invSqrt & dotValues* fns"],["b697fd5d","2018-11-26","refactor(vectors): update codegens"],["8e6ddca9","2018-11-26","Merge branch 'develop' into feature/vec-refactor"],["bb625eb0","2018-11-26","Publish"],["18ffdb79","2018-11-26","fix(vectors): update VecOpSRoVV & dotS impls"],["f940672e","2018-11-26","feat(matrices): extract matrix ops to own package"],["52273cde","2018-11-25","feat(vectors): re-add (some) strided ops, update codegens, simplify"],["b4fffe85","2018-11-25","feat(vectors): add cosh, sinh, tanh, round, jitter, wrap"],["7448c6b6","2018-11-25","feat(vectors): re-add Vec2/3/4, clamp, reflect, refract, restructure package"],["18d44342","2018-11-25","refactor(vectors): update eqDelta & compileHOF()"],["bfbaaa9b","2018-11-25","feat(vectors2): update rand codegen tpls & compileHOF/GHOF"],["26d41996","2018-11-25","feat(vectors): add yet another version of vectors package"],["bb7e003d","2018-11-25","Merge pull request #62 from acarabott/feature/hdom-canvas-text-maxWidth"],["97965d89","2018-11-24","fix(hdom-canvas): actually pass maxWidth argument to text function"],["3f7fe2ad","2018-11-24","build(vectors): update deps"],["82186aa6","2018-11-24","Merge branch 'develop' into feature/vec-refactor"],["bb18d7a2","2018-11-24","Publish"],["d210668e","2018-11-24","docs: update package list"],["4aea85d2","2018-11-24","feat(random): re-import, extend & refactor random package (MBP2010)"],["65ee909f","2018-11-24","Merge branch 'develop' into feature/vec-refactor"],["364f27e3","2018-11-24","Publish"],["02ec7a7a","2018-11-24","docs(hdom-canvas): update readme"],["3872e379","2018-11-24","assets: add mandelbrot screenshot"],["738091d5","2018-11-24","docs(examples): update list (readme)"],["ca47a885","2018-11-24","docs(rstream): update readme"],["9ef64f16","2018-11-23","Merge branch 'feature/rs-tunnel' into develop"],["c6eec4ef","2018-11-23","fix(examples): add download fn (mandelbrot)"],["46c2882e","2018-11-23","fix(rstream): make maxWorkers optional"],["a47edd53","2018-11-23","feat(examples): update mandelbrot demo"],["67a5b104","2018-11-23","feat(rstream): add support multiple workers in Tunnel & TunnelOpts"],["f24e69ea","2018-11-23","refactor(rstream): move tunnel to /subs, add docs"],["a39b98c0","2018-11-23","Merge branch 'develop' into feature/rs-tunnel"],["4592fbb5","2018-11-23","Merge pull request #61 from acarabott/feature/hdom-canvas-text-maxWidth"],["4d1fa1c5","2018-11-23","minor(hdom-canvas): add maxWidth param to text draw call"],["2a4bd412","2018-11-22","feat(examples): add gradients, simplify"],["1b567440","2018-11-22","refactor(examples): minor updates mandelbrot demo"],["70ea4bd6","2018-11-21","feat(examples): add key controls & wheel zoom to mandelbrot demo"],["bab55c3c","2018-11-21","feat(rstream-gestures): add absZoom option (abs vs. relative)"],["9549067e","2018-11-21","fix: update build-examples script (multiple js outputs)"],["a68b9f9a","2018-11-21","refactor(examples): update mandelbrot demo"],["4cab7080","2018-11-21","fix: upload-examples script (if multiple sources)"],["80679d3c","2018-11-21","feat(examples): add mandelbrot worker/tunnel example"],["ef0fe42c","2018-11-21","feat(rstream): add StreamSync.getSources() / getSourceForID()"],["4750e796","2018-11-21","feat(rstream): add worker tunnel() sub"],["7007d633","2018-11-19","Merge branch 'develop' into feature/vec-refactor"],["e044a6a2","2018-11-19","Publish"],["143c47cd","2018-11-19","fix(math): fix #60, add range check for norm()"],["71c568c3","2018-11-13","Publish"],["9334f833","2018-11-13","feat(interceptors): update forwardSideFx(), refactor iceps as arrow fns"],["62b3c312","2018-11-13","Publish"],["1d085bff","2018-11-13","refactor(router): update Route, RouteMatch & minor optimizations"],["9b4a7b45","2018-11-12","Merge branch 'develop' into feature/vec-refactor"],["4bf18805","2018-11-12","Publish"],["4048849d","2018-11-12","Merge branch 'develop' of github.com:thi-ng/umbrella into develop"],["068255f6","2018-11-12","Merge pull request #59 from acarabott/feature/linecap"],["734a1428","2018-11-12","minor(hdom-canvas): fix default key for lineCap"],["74827068","2018-11-09","Merge branch 'develop' into feature/vec-refactor"],["a4bc35bd","2018-11-08","Publish"],["33e915b4","2018-11-08","feat(strings): add configurable units() HOF & presets"],["6eaa5f5f","2018-11-07","Publish"],["b0a4b65e","2018-11-07","refactor(examples): update hdom-dyn-context demo"],["52a47f0f","2018-11-07","refactor(transducers-hdom): update auto-deref ctx behavior"],["30161166","2018-11-07","feat(hdom): update auto-deref ctx behavior"],["749925f0","2018-11-07","feat(hiccup): update derefContext() to only apply to selected keys"],["5a3b860e","2018-11-07","feat(vectors): update VecPool & NDArray1"],["34930b31","2018-11-07","refactor(malloc): update package structure, fix stats()"],["c3751198","2018-11-06","Merge branch 'develop' into feature/vec-refactor"],["d2797516","2018-11-06","feat(examples): add hdom-dyn-context demo"],["79a6a365","2018-11-06","Publish"],["e91dbbc1","2018-11-06","feat(transducers-hdom): add support for dynamic user context vals"],["6a3a8739","2018-11-06","feat(hdom): add support for dynamic user context vals"],["a9478732","2018-11-06","feat(hiccup): add support for dynamic user context values"],["dc2c487d","2018-11-06","refactor(geom): update implementations() call sites"],["a24715e7","2018-11-06","refactor(defmulti): merge relations() w/ implementations(), update readme"],["3713c02a","2018-11-06","refactor(hiccup-svg): update convertTransforms(), update formatting"],["9f03889b","2018-11-06","minor(geom): add/update edges()/vertices() arg types"],["9a18620d","2018-11-06","minor(hiccup-svg): update path conversion/creation"],["c0134fda","2018-11-06","minor(geom): update imports"],["94a40cc5","2018-11-06","fix(geom): Path2 transform() & translate(), add asCubic() impl"],["df9b9f9f","2018-11-06","fix(geom): asCubic() for arc"],["9d60ad09","2018-11-06","perf(geom): emit hline/vline segments if possible"],["c4db51aa","2018-11-06","feat(vectors): add IMatrix & impls for Mat23/33/44, add/update accessors"],["4066c80f","2018-11-06","feat(defmulti): add relations()"],["35bd0679","2018-11-06","feat(geom): add new / update all types / ops, add tests"],["c41d12c0","2018-11-03","feat(vectors): re-add quaternion, various refactorings"],["358169fd","2018-11-01","feat(geom): add/update shape types"],["e197f908","2018-11-01","feat(hiccup-svg): add toHiccup() support in convertTree()"],["30f61da5","2018-11-01","feat(vectors): add eqDeltaArray()"],["0043fb5d","2018-11-01","feat(math): add cossin(), add opt scale arg for sincos()"],["184d55da","2018-10-31","build(vectors): update deps"],["954e0c28","2018-10-31","feat(vectors): add generic impls for common vec ops"],["816c9c01","2018-10-31","feat(strings): add floatFixedWidth(), update float()"],["766fdee2","2018-10-31","feat(vectors): re-add vec4, mat23/33/44, nd arrays"],["e3727ce9","2018-10-27","refactor(malloc): add/extract types to api.ts"],["228e08a1","2018-10-27","Merge branch 'develop' into feature/vec-refactor"],["46bf1a73","2018-10-27","Publish"],["c5b0f2f5","2018-10-27","feat(malloc): add MemPoolOpts, fix top block alloc, update tests, readme"],["cfd88555","2018-10-27","feat(geom): re-add & update more types / shape ops"],["a070016c","2018-10-27","feat(vectors): add VecPool skeleton, add more types, export codegen fns"],["51c4a49f","2018-10-26","feat(vectors): add/update types, multi-methods, minor optimizations"],["125c784f","2018-10-26","feat(defmulti): add versions w/ 1 optional typed arg, add .impls()"],["252f66db","2018-10-25","feat(geom): re-add more classes & methods, add svg conversions"],["505ca49c","2018-10-25","feat(vectors): add vec2n/vec3n(), copy() methods, update deps"],["fde2db21","2018-10-25","feat(defmulti): add callable() & implementations(), update readme"],["fe14b791","2018-10-24","Merge branch 'develop' into feature/vec-refactor"],["accda790","2018-10-24","fix(rstream-gestures): Publish (0.5.16 had publish error)"],["673bf50f","2018-10-24","Publish"],["a8c38987","2018-10-24","feat(defmulti): add support for dispatch value relationships / hierarchy"],["7b740ab8","2018-10-24","docs(malloc): update readme"],["4f156b04","2018-10-24","Merge branch 'develop' of github.com:thi-ng/umbrella into develop"],["724fe28f","2018-10-24","feat: add temp geom2 & vectors2 packages (defmulti API)"],["f271b78b","2018-10-24","Merge pull request #57 from acarabott/feature/rstream-gesture-local"],["f1f6af4d","2018-10-23","fix(rstream-gestures): fix incorrect local position when scrolled"],["5bb51391","2018-10-21","Publish"],["abba2d62","2018-10-21","Merge branch 'feature/geom-accel' into develop"],["be7acc33","2018-10-21","refactor(examples): update geom-knn demo"],["b47e6413","2018-10-21","feat(geom-accel): add KV support, update select/selectKeys()"],["c387887d","2018-10-21","docs: update package list"],["51071ac7","2018-10-21","Merge branch 'develop' into feature/geom-accel"],["6f8a8963","2018-10-21","docs: update package list"],["b7457cef","2018-10-21","Merge branch 'feature/malloc' into develop"],["4b72cda6","2018-10-21","feat(malloc): add freeAll(), release(), tests & benchmarks, update docs"],["40f07876","2018-10-21","docs(malloc): add docs to readme"],["787102a4","2018-10-21","fix(malloc): add size check, update readme"],["89f2bc28","2018-10-21","feat(malloc): re-add block compaction & splitting, update readme"],["2cf20c90","2018-10-21","feat(malloc): initial import @thi.ng/malloc package"],["ce131d48","2018-10-19","feat(geom): add IToCubic, add/update impls"],["4a47daa4","2018-10-19","feat(math): migrate mixCubic()/mixQuadratic() from geom package"],["85426d98","2018-10-19","fix(hiccup-svg): fix arc segment handling"],["f891c419","2018-10-19","feat(math): add sincos() & roundEps()"],["2469992e","2018-10-18","build(geom-accel): update deps (add morton)"],["ac2f3e83","2018-10-18","feat(morton): update/add muxScaled2/3 versions, add error handling"],["971dfb45","2018-10-18","Merge pull request #55 from acarabott/feature/readme-arc"],["b9cfb56f","2018-10-18","minor(hdom-canvas): add arc, hline, vline to readme"],["1063fea9","2018-10-18","feat(heaps): add pushPopAll()"],["f0deebb9","2018-10-18","minor(examples): update geom-knn"],["b31b4807","2018-10-18","refactor(hdom-canvas): update points() to accept iterables"],["0c76c024","2018-10-18","refactor(geom-accel): move iterator into KdNode"],["aa01a2de","2018-10-18","build: update .gitignore"],["f82c8b16","2018-10-18","feat(examples): add geom-knn example"],["e14ac8b1","2018-10-18","feat(geom-accel): re-import geom-accel skeleton (MBP2010)"],["f7bbfde4","2018-10-18","refactor(heaps): public fields"],["0cf708f4","2018-10-18","feat(bench): add timedResult() / benchResult()"],["6e0972e9","2018-10-17","build: further updates dev deps in all packages"],["f01551ac","2018-10-17","build: update make-module/example scripts"],["e6cef6b3","2018-10-17","build(examples): update dev deps"],["1ebae947","2018-10-17","build: update dev deps (TS3.1, parcel etc.)"],["348cdd4e","2018-10-17","docs(examples): update table"],["3569d242","2018-10-17","feat(examples): add geom-tessel example"],["d4d44b32","2018-10-17","fix(examples): update @thi.ng/math occurrences"],["cf2970aa","2018-10-17","minor: update readme"],["6e563377","2018-10-17","Publish"],["39d414f5","2018-10-17","docs: update package list in main readme"],["940fc312","2018-10-17","build(dsp): update package"],["456a2ee3","2018-10-17","build(math): update package desc"],["10cf5646","2018-10-17","build: update gitignore & yarn.lock"],["83ef61a1","2018-10-17","docs(geom): update readme, add/move assets"],["ffea836f","2018-10-17","refactor(geom): update deps & @thi.ng/math imports"],["0967929f","2018-10-17","feat(vectors): replace math.ts w/ imports from @thi.ng/maths package"],["f257330e","2018-10-16","refactor(transducers): add ensureArrayLike(), update permutations()"],["1bd9fd43","2018-10-16","docs(heaps): update readme"],["501536b9","2018-10-16","feat(morton): import & update @thi.ng/morton package (MBP2010)"],["6851f2c4","2018-10-16","feat(compose): add partial(), update readme"],["405cf51a","2018-10-16","feat(dlogic): add @thi.ng/dlogic package"],["458d4a07","2018-10-16","feat(binary): add @thi.ng/binary package"],["889730f8","2018-10-16","feat(dsp): add oscillators as @thi.ng/dsp package (from synstack / VEX)"],["4af1fba3","2018-10-16","feat(math): extract maths fns from @thi.ng/vectors as new package"],["e085136b","2018-10-13","Merge branch 'develop' into feature/geom"],["2e9f0486","2018-10-13","refactor(geom): update arg handling, update readme"],["328a9b03","2018-10-13","Merge pull request #54 from acarabott/feature/transducer-links"],["08372abd","2018-10-13","minor(transducers): fix links to reducers in README"],["2546039a","2018-10-13","Merge pull request #53 from acarabott/feature/baseline"],["6a9747bf","2018-10-13","minor(hdom-canvas): baseLine -> baseline"],["fa87f1e9","2018-10-11","feat(geom): add/update tessellate() impls"],["555fc515","2018-10-10","feat(geom): add/update factory fns, arg handling, tessel, poly area"],["3a20ef34","2018-10-10","feat(geom): add/update various shape impls & ops"],["296e1e07","2018-10-08","refactor: update Infinity consts in various packages"],["d655ec29","2018-10-08","feat(geom): re-import & refactor partial port of thi.ng/geom (clojure)"],["ff435be6","2018-10-07","minor(hdom-canvas): rename arc() => circularArc()"],["b2f9af93","2018-10-07","refactor(vectors): replace static Vec2/3/4 methods w/ IVector impls"],["221fb7f6","2018-10-06","feat(vectors): add collate & eqDelta fns, update ctors"],["6094738e","2018-10-03","feat(defmulti): add varargs support"],["2657df66","2018-09-30","feat(geom): add/update interfaces & impls"],["775cc8a7","2018-09-30","fix(hdom-components): add Canvas2DContextAttributes (removed in TS3.1)"],["1ef23611","2018-09-30","fix(transducers): minor TS3.1 fixes"],["515e5ba5","2018-09-30","feat(transducers): update wrap*() fns to accept iterables"],["aa6b1206","2018-09-30","feat(geom): re-add Arc2, update Circle2, update helper fns"],["3b1bf647","2018-09-30","feat(geom): add ICollate & ICopy impls, re-add/update convexHull2"],["2ba99311","2018-09-30","build(geom): update dev deps & yarn.lock"],["473ec800","2018-09-30","feat(vectors): add axis consts, add/update ops"],["6a0f8aa9","2018-09-29","feat(vectors): add comparators & ICompare impls for vec2/3/4"],["9fb2091a","2018-09-29","refactor(geom): add interfaces, split out common.ts into /func folder"],["34312d8f","2018-09-29","feat(vectors): add IMinMax interface"],["9c27c77f","2018-09-29","feat(geom): update all shape types, add interfaces & ops, update tests"],["5c44ad98","2018-09-29","feat(vectors): add operation specific interfaces, rename Vec3.toPolar()"],["22f6aab4","2018-09-29","Merge branch 'develop' into feature/geom"],["4f15ea80","2018-09-28","Publish"],["8399ec2f","2018-09-28","docs(vectors): fix docstrings, hide CommonOpts type alias"],["f2114d52","2018-09-28","Merge branch 'feature/vec-codegen' into develop"],["247dec02","2018-09-28","refactor(vectors): generate more ops, move declareIndices() (#51)"],["719b27ac","2018-09-28","refactor(vectors): rewrite codegen, add more types & gen ops (#51)"],["9bee7f85","2018-09-28","refactor(vectors): use codegen for unary vec2/3/4 ops"],["b5ed2545","2018-09-28","feat(vectors): add vector ops codegen, update basic vec2/3/4 ops (#51)"],["d964865e","2018-09-28","docs(hdom): add xml-converter example link & screenshot"],["6db26c2b","2018-09-28","feat(examples): add copy-to-clipboard, extract UI config & components"],["5cfbf70d","2018-09-27","feat(examples): update css"],["71cbd19a","2018-09-27","fix(examples): fix attrib format"],["95ba4f6d","2018-09-27","feat(examples): extend xml-converter, add CLI version, update docs"],["2f014471","2018-09-26","Publish"],["4b78c8a3","2018-09-26","minor(examples): xml-converter"],["96367021","2018-09-26","docs(hdom): add/update docs (fix #47)"],["0a49d0a5","2018-09-25","fix: update .gitignore (fixes #46, fixes #50)"],["ad1bac8f","2018-09-25","refactor(examples): refactor hiccup formatter, minor fixes"],["823d828d","2018-09-25","fix(transducers): fix matchLast(), fix & update return match*() types"],["61af7e51","2018-09-25","Merge branch 'master' of github.com:thi-ng/umbrella"],["b8a93ea8","2018-09-25","fix(examples): add null check & parseAttrib() in transformCSS()"],["3abfc42c","2018-09-25","Merge pull request #49 from nkint/patch-1"],["a169d2df","2018-09-25","fix(examples): add missing index.html (#46)"],["04872dbe","2018-09-25","Publish"],["79cf49e1","2018-09-25","feat(examples): add value coercions & re-formatter (xml-converter)"],["0cce0488","2018-09-25","feat(strings): add splice(), refactor repeat(), add tests"],["8b8bf885","2018-09-25","typo"],["0cddc7d6","2018-09-25","feat(example): update xml-converter (add boolean attrib support)"],["5119b67e","2018-09-25","feat(sax): add opt support for boolean attribs, add tests"],["5a893d5b","2018-09-25","docs(examples): update table"],["436edc0f","2018-09-25","Publish"],["50fa6492","2018-09-25","fix(hdom): add DEFAULT_IMPL to re-exports (#47)"],["febe3c36","2018-09-25","Publish"],["cb263002","2018-09-25","feat(examples): add xml-converter example"],["8cbfb97e","2018-09-24","fix(strings): rename number parsers"],["888ea747","2018-09-24","fix(examples): rename `prepare` script aliases"],["c0a8926b","2018-09-24","fix(examples): rename `prepare` script alias, add commits.json (#46)"],["cf05efbf","2018-09-24","Publish"],["665564c7","2018-09-24","feat(sax): update parse() to return iterator if input given (optional)"],["fc6a4d32","2018-09-24","perf(rstream-log): `Level` => const enum"],["8e4fc902","2018-09-24","perf(rstream-gestures): `GestureType` => const enum"],["7ac83c6f","2018-09-24","perf(rstream): `State` => const enum"],["a7b9a427","2018-09-24","perf(pointfree-lang): `NodeType` => const enum"],["c3e8d689","2018-09-24","perf(csp): `State` => const enum"],["39f7fb0c","2018-09-24","build: add `preserveConstEnums` to global tsconfig"],["657a3088","2018-09-24","docs: fix twitter badges, update make-module script"],["89ab34a3","2018-09-24","Merge branch 'master' of github.com:thi-ng/umbrella"],["94f64698","2018-09-24","docs: update all readme files"],["56bfecbc","2018-09-23","Merge pull request #45 from rgtk/patch-1"],["b2a24f8c","2018-09-23","Fix links to @thi.ng/transducers"],["edf68556","2018-09-23","Publish"],["7cd08281","2018-09-23","docs(hdom): update readme"],["4a2f79b8","2018-09-23","refactor(hdom): minor refactoring, fix/update docs"],["1d8eeb4d","2018-09-23","feat(hiccup): emmet class & class attrib merging in normalize()"],["ff5e5550","2018-09-23","docs(rstream): re-org readme"],["ed3f10b5","2018-09-23","docs(hdom): fix/update changelog"],["bb224a75","2018-09-22","docs(examples): update readme"],["02548fd2","2018-09-22","Publish"],["70de921a","2018-09-22","build: add npm registry for publish script"],["ee0c2b96","2018-09-22","build: update yarn.lock"],["897f2b36","2018-09-22","docs: update branch links (all back to master now)"],["39d35d93","2018-09-22","chore(examples): add missing .gitignore"],["4bc64394","2018-09-22","chore: add HMR handling to make-example script"],["387376ed","2018-09-22","docs(hdom): major update readme"],["86bdd06d","2018-09-22","feat(examples): add svg-barchart demo"],["5ef9cf0e","2018-09-22","feat(hdom): add renderOnce()"],["06dccee4","2018-09-21","docs(hdom): update readme"],["8441afcb","2018-09-21","assets: add new diagram sources (hdom & interceptors)"],["bb5569f7","2018-09-21","build: update yarn.lock"],["0dcc1b86","2018-09-21","refactor(rstream): remove Stream.NEXT_ID, replace w/ Subscription field"],["8aa66055","2018-09-21","build: update example generator & build scripts"],["efcbe2de","2018-09-21","minor(examples): fix sort icon in triple-query"],["7c4dc3f0","2018-09-21","fix(examples): update commit-table-ssr to work w/ parceljs, update docs"],["22732421","2018-09-21","build(examples): update yarn build commands"],["1ee6c43a","2018-09-21","build: update typedoc dep"],["022101f3","2018-09-21","fix(transducers): add missing type annotation"],["78b1f4ac","2018-09-21","fix(transducers-hdom): add missing type annotation"],["3cd03bd7","2018-09-20","assets(examples): add gesture-analysis screenshot"],["288b68d9","2018-09-20","feat(rstream): add trigger() generics"],["75889156","2018-09-20","docs(rstream): update readme & doc strings"],["d5ec6fd8","2018-09-20","docs(rstream): add docs, update readme"],["dbdb72ec","2018-09-20","docs(rstream): add diagrams"],["bbb87f4a","2018-09-20","docs(hdom): update readme"],["1ac1110b","2018-09-20","feat(examples): rename interceptor-basics, add more simpler version"],["6d6fae33","2018-09-20","refactor(hdom): allow HDOMOpts extensions"],["74816eb0","2018-09-20","docs(hdom): update readme"],["46d851b6","2018-09-19","feat(examples): add hdom-canvas-draw demo"],["09a821b2","2018-09-19","refactor(hdom-canvas): switch canvas back to lifecycle object form"],["e390a54d","2018-09-19","feat(api): add `IToHiccup` interface"],["929c6f42","2018-09-19","feat(rstream): add trigger() utility stream"],["e82e3122","2018-09-19","feat(examples): add SVG export comment to hdom-canvas-shapes"],["de17db8f","2018-09-19","perf(hdom): minor updates"],["53a1d2c0","2018-09-19","refactor(hdom-canvas): add _serialize control attrib to root group"],["363c241c","2018-09-19","feat(hiccup): add control attrib handling, add comment support"],["bca4cc4b","2018-09-17","Publish"],["b488d2b3","2018-09-17","feat(transducers): add randomID()"],["f001314d","2018-09-17","fix(transducers): str() initial result handling"],["eb674268","2018-09-17","fix(transducers): update arg types for choices() & weightedRandom()"],["bd228110","2018-09-17","Publish"],["3e647a18","2018-09-17","fix(atom): add .value getter to IView"],["76309858","2018-09-17","minor(examples): update clock example"],["38125686","2018-09-17","docs: add hdom-canvas to package table"],["60f00590","2018-09-17","build(examples): fix deps, update readmes"],["7bbd1bcf","2018-09-17","docs(hdom-canvas): update links"],["95c462a5","2018-09-17","Publish"],["decc26b2","2018-09-17","build: update deps"],["b9738cc4","2018-09-17","v1.2.0"],["b43fcb39","2018-09-17","v2.0.0-alpha"],["f424fa92","2018-09-17","Publish"],["d4487066","2018-09-17","v1.1.0"],["3835cf43","2018-09-17","v2.2.0"],["ff919070","2018-09-17","v0.4.0"],["339342b3","2018-09-17","v0.1.9"],["7481df23","2018-09-17","v1.5.9"],["4297d649","2018-09-17","Merge branch 'feature/hdom-canvas' into develop"],["4fe6a742","2018-09-17","Merge branch 'feature/hdom-v5' into develop"],["eb4e6891","2018-09-17","refactor(examples): minor updates"],["ae4b6212","2018-09-16","perf(hdom-canvas): inline type checks, update deps & readme"],["a52f83c4","2018-09-16","fix(hdom-canvas): update __normalize handling, rename fns"],["382c45ca","2018-09-16","perf(hdom): update diffTree(), inline node type checks"],["224a537a","2018-09-16","perf(checks): inline checks in isNotStringAndIterable()"],["b93dc745","2018-09-16","feat(examples): add static canvas test"],["74547aa6","2018-09-16","feat(hdom-canvas): update canvas component & diffTree impl, update docs"],["3b628326","2018-09-16","refactor(hiccup-svg): update points(), minor fixes, add docs"],["ebfcf159","2018-09-16","refactor(hdom): export diff related fns"],["bb7e08a8","2018-09-16","refactor(examples): update canvas demo"],["5de02559","2018-09-16","feat(hdom-canvas): add HDPI auto-adjustment, update docs"],["b219d67a","2018-09-15","Merge branch 'feature/hdom-v5' into feature/hdom-canvas"],["d9af2e5f","2018-09-15","refactor(hdom): update custom equiv()"],["6c33901f","2018-09-15","fix(hdom): delegate diffTree() to branch impl"],["3de83bb7","2018-09-15","refactor(hiccup): add `button` to NO_SPANS elements"],["adaaa7a0","2018-09-15","feat(hdom-canvas): add warning msg for hydrateTree() impl"],["ae1371d8","2018-09-15","Merge branch 'feature/hdom-v5' into feature/hdom-canvas"],["05920636","2018-09-15","fix(hdom): exclude hdom control attribs in setAttrib()"],["4e230164","2018-09-15","feat(vectors): add random vector ops for Vec2/3/4 & GVec"],["8e796480","2018-09-15","Merge branch 'develop' into feature/geom"],["6a76bfd1","2018-09-15","Merge branch 'develop' into feature/hdom-canvas"],["442f14f4","2018-09-15","Merge branch 'develop' into feature/hdom-v5"],["7963e256","2018-09-15","feat(strings): add U24 hex preset"],["be25c48e","2018-09-15","feat(examples): add circles test"],["56b919d8","2018-09-15","Merge branch 'feature/hdom-canvas' into feature/geom"],["2bb41d45","2018-09-14","docs(examples): update crypto readme (replace diagram)"],["1d463ea6","2018-09-14","build(examples): update deps (hdom-canvas-shapes)"],["141e7c86","2018-09-14","docs(examples): add dflow diagram, update readme"],["42c1c403","2018-09-14","fix(examples): add missing file download.ts"],["7778c404","2018-09-14","Merge branch 'feature/hdom-canvas' into feature/geom"],["6e20e3e2","2018-09-14","feat(hiccup): add `.toHiccup()` interface support"],["8ecdd139","2018-09-14","feat(hdom-canvas): add `.toHiccup()` interface support"],["54ba0ce1","2018-09-14","feat(hdom): add `.toHiccup()` interface support"],["177855c3","2018-09-14","feat(examples): add geom circle test"],["c03259cb","2018-09-14","feat(geom): import (updated) old thi.ng/geom package (minus vectors)"],["f25db9a2","2018-09-14","docs(hdom-canvas): update readme"],["b8f79568","2018-09-14","feat(examples): add SVG conversion & export to hdom-canvas-shapes"],["3acb0dd8","2018-09-14","fix(hiccup-svg): update points() to use \"xlink:href\" (fix for safari)"],["7a6cf519","2018-09-14","feat(hiccup-svg): re-parse alpha colors in gradients (fix for safari)"],["d4122694","2018-09-14","feat(hdom-canvas): update points() to use circle or rect shapes"],["214cb62d","2018-09-14","feat(hiccup-svg): add custom shape support for points(), use instancing"],["cf4add3e","2018-09-14","refactor(hiccup-svg): update attrib conversion"],["a00761ba","2018-09-14","refactor(examples): update svg `text` arg order (hiccup-svg update)"],["f45f4ff0","2018-09-14","refactor(examples): update gradient def in svg-waveform"],["c20b24a7","2018-09-14","refactor(hdom-canvas): swap `img` args to be more consistent w/ others"],["4cb8cf72","2018-09-14","feat(hiccup-svg): add new elements, update convertTree(), refactor"],["0c4dddce","2018-09-14","feat(hiccup-svg): add convertTree() interop helpers (#44)"],["fb9c704d","2018-09-14","docs(hdom-canvas): update readme"],["de61c215","2018-09-14","feat(hdom-canvas): add `defs` node/group type"],["75002fad","2018-09-13","build: update upload-examples"],["17d13866","2018-09-13","feat(examples): use location.hash to select tests, update assets"],["c8d7a7c9","2018-09-13","feat(examples): update canvas image test"],["f7af43c1","2018-09-13","Merge branch 'feature/hdom-v5' into feature/hdom-canvas"],["c2859105","2018-09-13","perf(checks): update isPlainObject()"],["bde18d50","2018-09-13","refactor(hdom): use custom equiv also for diffAttributes()"],["481d9d34","2018-09-13","perf(diff): update diffObject() & add IOC support for custom equiv fn"],["a9e173e7","2018-09-13","test(hdom): update tests"],["96beaf38","2018-09-13","refactor(hdom): trial run of custom equiv() impl for diffTree()"],["ee55accd","2018-09-13","perf(equiv): inline & refactor type checks, add IOC support for helpers"],["360f15af","2018-09-13","feat(examples): add canvas image test"],["6b62067b","2018-09-13","docs(hdom-canvas): update readme"],["99020cad","2018-09-13","docs(hdom-canvas): update readme"],["5aa9d46a","2018-09-13","refactor(hdom-canvas): update attrib aliases"],["b6c1e42e","2018-09-13","docs(examples): update hdom-canvas-* build instructions"],["2b16d24d","2018-09-13","docs(examples): update readme"],["2fa4c56c","2018-09-13","refactor(examples): update hdom-canvas-shapes"],["6496e47b","2018-09-13","feat(hdom-canvas): add new shape types, add canvas attribs, refactor"],["5a3c3147","2018-09-13","refactor(examples): minor updates shape test"],["98735395","2018-09-13","docs(examples): update example table (readme)"],["7aae4333","2018-09-13","feat(examples): add hdom-canvas-shapes"],["81fe154d","2018-09-13","feat(hdom-canvas): fix #43, add gradient support"],["d5e01ff8","2018-09-12","Merge branch 'feature/hdom-v5' into feature/hdom-canvas"],["e4f780c7","2018-09-12","fix(hdom): minor fix (hydrateDOM)"],["81a39ba7","2018-09-12","refactor(hdom-canvas): update to reflect hdom api changes"],["700352de","2018-09-12","Merge branch 'feature/hdom-v5' into feature/hdom-canvas"],["832e419c","2018-09-12","fix(transducers-hdom): update to work w/ new @thi.ng/hdom v5 API"],["1ac245f8","2018-09-12","feat(hdom): reorg & extend HDOMImplementation"],["66c007de","2018-09-12","feat(checks): add isNotStringAndIterable()"],["764373a7","2018-09-12","feat(hdom-canvas): add rounded rect option (as path)"],["2a973fd1","2018-09-12","Merge branch 'feature/hdom-v5' into feature/hdom-canvas"],["1cfad519","2018-09-12","refactor(hdom-canvas): update canvas component, add docs"],["2e3fb660","2018-09-12","perf(hdom): add opt `__release` attrib to disable releaseDeep()"],["cfadbe3e","2018-09-12","refactor(examples): update clock main group attribs"],["1d24a166","2018-09-12","feat(hdom-canvas): add canvas-specific normalizeTree() impl"],["59bb19c2","2018-09-11","feat(hdom): update normalizeTree, add to HDOMImplementation"],["82cd9389","2018-09-11","feat(hdom-canvas): add path shape type, embedded fn & iterator handling"],["c69454b0","2018-09-11","refactor(examples): update attribs & scengraph in hdom-canvas-clock"],["ccbf53cf","2018-09-11","feat(hdom-canvas): implement drawing state inheritance & restoration"],["17060403","2018-09-11","build(examples): enable source maps in all examples, update make-example"],["d93efa86","2018-09-11","refactor(examples): minor updates hdom-canvas-clock, enable source map"],["d3acb707","2018-09-11","feat(hdom-canvas): add more shapes/prims, update transform handling"],["b4a37dd3","2018-09-10","Merge branch 'develop' into feature/hdom-canvas"],["685fd0bd","2018-09-10","Merge branch 'develop' into feature/hdom-v5"],["bdb57f83","2018-09-10","Publish"],["f4cc0dda","2018-09-10","refactor(vectors): Vec3/4 toString() impls"],["ae261ab5","2018-09-10","fix(vectors): GVec.copy() / get()"],["07d1ccfc","2018-09-10","fix(vectors): Mat23/33/44 toString() impls"],["3dd00725","2018-09-10","feat(vectors): add matrix index & property accessors"],["54e59a08","2018-09-10","fix(examples): re-enable HMR logic"],["dc618983","2018-09-10","refactor(hdom-canvas): rename types due to hdom update"],["5546c0d2","2018-09-10","Merge branch 'feature/hdom-v5' into feature/hdom-canvas"],["cc73c769","2018-09-10","refactor(hdom): rename HDOMOps => HDOMImplementation, add docs"],["ada7d34e","2018-09-10","build: add max-age cache header (upload-examples)"],["2fdcf104","2018-09-10","refactor(examples): update clock demo"],["689e775e","2018-09-10","feat(examples): add hdom-canvas-clock demo"],["f41014eb","2018-09-10","feat(hdom-canvas): rename package, add text support, refactor"],["60f12c5d","2018-09-10","feat(hiccup-canvas): add canvas comp, createTree impl, update deps"],["46c5cd2c","2018-09-10","Merge branch 'feature/hdom-v5' into feature/hiccup-canvas"],["525d90d5","2018-09-10","feat(hdom): generalize diffElement() (#4)"],["5cb4350f","2018-09-09","feat(hdom): add optional support for blocking normalize & diff"],["c47711f9","2018-09-09","refactor(hiccup-canvas): add notes"],["84a6f441","2018-09-09","Merge branch 'develop' into feature/hiccup-canvas"],["146868d1","2018-09-09","build: update make-module script"],["890eb97c","2018-09-09","docs(compose): add missing package desc"],["266d02b0","2018-09-09","docs: update badges in all readme files"],["eb284f01","2018-09-09","feat(hiccup-canvas): add hiccup-canvas package"],["9bde777a","2018-09-08","fix(examples): add missing html file"],["d003cab6","2018-09-08","docs(examples): update readme"],["6051439d","2018-09-08","feat(examples): add gesture-analysis example"],["bfd3c2f2","2018-09-08","Publish"],["06f61cf4","2018-09-08","fix: missing comma in make-example script"],["8856a18f","2018-09-08","test(rstream): add merge-only sync tests"],["1f22867f","2018-09-08","feat(transducers): rename window() => slidingWindow(), update readme"],["2916432d","2018-09-08","docs(transducers): update partitionSync() docs"],["162aa2d5","2018-09-08","feat(rstream): add merge-only mode for StreamSync, update docs"],["d8fdc018","2018-09-08","feat(transducers): update partitionSync() xform & PartitionSyncOpts"],["2f0f3d48","2018-09-08","feat(transducers): add window() xform"],["014bd980","2018-09-07","fix: update upload-examples script"],["b4c2e1c0","2018-09-07","build: update `yarn examples` command, update readme"],["81610117","2018-09-07","build: add build-examples, update make-example script"],["316ad6ae","2018-09-07","build(examples): update all examples to use parcel instead of webpack"],["b1ef187d","2018-09-07","build: update lerna, replace webpack deps w/ parcel"],["42d142dc","2018-09-06","Publish"],["d54dffb0","2018-09-06","docs(examples): update table"],["cf516aa5","2018-09-06","Merge branch 'feature/defonce' into develop"],["83fa7ade","2018-09-06","feat(examples): add hmr-basics demo (fixes #40)"],["61bed88b","2018-09-06","feat(memoize): add defonce()"],["e0f83c4a","2018-09-05","Publish"],["2eec7006","2018-09-05","feat(vectors): add/update transformVectors*(), update types"],["2d5d0c86","2018-09-05","refactor(vectors): rename immutable vec ops, update readme table"],["f7df4cba","2018-09-05","chore: update .gitignore (add gtm)"],["c4631533","2018-09-05","test(vectors): add benchmarks"],["2583380b","2018-09-04","docs(vectors): update readme"],["a3c04076","2018-09-04","feat(vectors): add immutable vec2/3/4 ops"],["be6ae489","2018-09-03","Publish"],["9510f01a","2018-09-03","feat(vectors): add new vector ops, update readme"],["a5b3f84c","2018-09-03","docs(vectors): add/update doc strings"],["7001b7a8","2018-09-03","refactor(vectors): update matrix factories"],["f0ccd0c5","2018-09-03","feat(vectors): add mixBilinear1/2/3/4"],["ad131513","2018-09-03","fix(vectors): update GVec method args (readonly)"],["25ea00ca","2018-09-03","fix(vectors): add opt normalize for angleBetween2/3"],["c0fbb4ed","2018-09-03","fix(vectors): add missing arg types"],["34ffe9d7","2018-09-03","docs(hdom): update/fix docs & readme"],["4a16bd56","2018-09-03","refactor(transducers): update normRange()"],["16aa0c46","2018-09-03","feat(vectors): add Vec*.intoBuffer() impls"],["ba386e52","2018-09-01","Publish"],["6acb05bb","2018-09-01","build(examples): fix deps"],["1795f187","2018-09-01","refactor(vectors): update Vec2/3/4 index signatures"],["fc7c670b","2018-09-01","Publish"],["e5662a0a","2018-09-01","docs(paths): update readme, add tests"],["a7104535","2018-09-01","fix(resolve-map): deep resolve of yet unknown path values"],["f0183530","2018-09-01","feat(paths): add exists() path checker & tests"],["e66a4929","2018-09-01","fix(hdom): fix local import"],["71ee43ca","2018-09-01","Publish"],["e7016b42","2018-09-01","docs(hdom): fix screenshot link"],["a8282925","2018-09-01","Publish"],["d2b4fafb","2018-09-01","fix(vectors): add missing deps"],["208e57d2","2018-09-01","docs: update various readme's, add/move screenshots"],["7fa3852a","2018-08-31","Publish"],["1060b2a3","2018-08-31","docs(hdom): update readme, add hydrate docs"],["473aadc1","2018-08-31","refactor(examples): update crypto-chart to use `updateDOM` xform"],["1a6741a1","2018-08-31","refactor(examples): update `updateDOM()` transducer call sites"],["0f396948","2018-08-31","feat(transducers-hdom): add DOM hydration support, rename (#39)"],["5e74a9c0","2018-08-31","feat(hdom): update HDOMOpts & start()"],["1e8b4efa","2018-08-31","fix(hiccup): serialize() args"],["52417e37","2018-08-31","fix(examples): minor update hydrate demo"],["e7607f53","2018-08-31","docs(examples): update readmes"],["0d34bb7d","2018-08-31","feat(examples): add hydrate-basics example"],["26bc7e74","2018-08-31","refactor(examples): update hdom start() call sites to new API"],["d55d9303","2018-08-31","refactor(hdom): minor update HDOMOpts & start()"],["9f8010db","2018-08-31","feat(hdom): add DOM hydration support (SSR), update start() (#39)"],["1b97a25a","2018-08-31","fix(hiccup): disable spans for certain element types"],["1b0deb22","2018-08-31","feat(hiccup): add optional support for spans & auto keying (#39)"],["b8d944eb","2018-08-31","refactor(vectors): update matrices & types"],["0a806011","2018-08-30","refactor(vectors): update mulV*() arg order"],["80f291b5","2018-08-30","Publish"],["461adeef","2018-08-30","docs(resolve-map): fix #35, update docs & tests"],["0673f0f4","2018-08-30","fix(examples): fix #38, add missing dep"],["75d6409e","2018-08-30","build: update yarn.lock"],["d1b77cfe","2018-08-30","docs(vectors): update readme"],["d5cec948","2018-08-30","feat(vectors): update types, update GVec, add maths fns, swap impls"],["bdb5d377","2018-08-29","feat(vectors): consolidate vector consts, add toJSON() impls"],["bb55adf3","2018-08-29","Merge branch 'develop' into feature/webgl"],["b82a22f5","2018-08-29","refactor(vectors): simplify prop accessors (DRY)"],["f5795eee","2018-08-28","Publish"],["cd834f82","2018-08-28","feat(vectors): add more vec2/3 ops"],["4a373674","2018-08-28","feat(bench): add opt prefix arg, update docs"],["39cced5f","2018-08-28","minor(examples): add cursor css for dial"],["986e954f","2018-08-27","Publish"],["5afb5791","2018-08-27","Merge pull request #34 from andrew8er/pr/fix-rstream-resolve-errors"],["34a97b47","2018-08-27","fix(rstream): Fix unbound this in method call expression"],["917d81d1","2018-08-27","Publish"],["dee0476d","2018-08-27","docs(examples): update list of examples"],["d7235a3e","2018-08-27","feat(examples): add mouse & touch events for canvas-dial, refactor"],["a0cbd2b8","2018-08-27","feat(atom): add .value accessor aliases (for deref()/reset())"],["cfb2b747","2018-08-27","feat(vectors): add mix1(), minor cleanups"],["ccc40a9d","2018-08-27","feat(rstream-gestures): add options for local & scaled positions"],["b25edbec","2018-08-27","fix(hdom-components): call canvas update from init()"],["3f27acd7","2018-08-27","docs(rstream): update merge() docs"],["b5633b18","2018-08-27","feat(examples): add canvas-dial example (WIP)"],["135d6f1b","2018-08-27","feat(hdom-components): add HDPI adaptation helper for canvas comps"],["9d542b92","2018-08-26","minor(examples): fix/update comments"],["80a5f300","2018-08-26","feat(examples): add client/browser version of commit-log"],["318401c0","2018-08-25","refactor(examples): update components, add docs"],["37718855","2018-08-25","refactor(examples): further DRY & readme updates"],["82db75b2","2018-08-25","docs: fix example table"],["0cd261cf","2018-08-25","docs(example): update example list"],["fca0b13d","2018-08-25","docs(examples): add more comments"],["ae383f8e","2018-08-25","refactor(examples): simplify date handling"],["4be74bae","2018-08-25","fix(examples): commit log parsing, minor update html()"],["d0b1a1e4","2018-08-25","feat(examples): add commit-table-ssr express server / git commit log demo"],["80cae22d","2018-08-25","chore: update make-module script"],["866f3cdd","2018-08-25","refactor(cache): update iterator methods"],["8e9ba347","2018-08-24","Publish"],["113b424b","2018-08-24","docs: fix links in readmes"],["f9a1cc2a","2018-08-24","docs(transducers-stats): fix screenshot link"],["89e1bd51","2018-08-24","docs(rle-pack): fix diagram link"],["1c92f223","2018-08-24","Publish"],["cff9d18a","2018-08-24","docs(transducers): update readme examples"],["7a5be213","2018-08-24","fix(transducers): arg handling in rename()"],["389aff82","2018-08-24","build: update yarn.lock"],["b3f94159","2018-08-24","Merge branch 'feature/tx-v2' into develop"],["3057237f","2018-08-24","refactor(iges): transducer imports & usage"],["28110726","2018-08-24","assets(examples): update crypto-chart screenshot"],["2a443a56","2018-08-24","docs(transducers-stats): update readme"],["024a4e96","2018-08-24","docs(transducers): update readme"],["832e57f1","2018-08-24","fix(transducers): copy&paste error (push)"],["d861bdd1","2018-08-24","fix(transducers): iterator1() final reduced value handling"],["599f2b66","2018-08-24","feat(transducers): update base64Encode() to return string if input given"],["1025996e","2018-08-24","docs(rle-pack): update readme & diagram"],["40415217","2018-08-24","feat(rle-pack): further update data format (non-repeats)"],["694a2537","2018-08-24","feat(rle-pack): update data format, custom repeat sizes, rename fns"],["89b4ad5d","2018-08-23","feat(transducers): update all reducers to accept opt iterables"],["2c3a1147","2018-08-23","feat(transducers): add GroupByOpts interface, update groupBy* reducers"],["8565edb8","2018-08-23","fix(rle-pack): fix initial repeat counts in encodeBytes(), update readme"],["0bd860e6","2018-08-23","feat(transducers): add fill() & fillN() reducers"],["fb3c04da","2018-08-23","refactor(vectors): make Vec & Mat type aliases of NumericArray"],["519394b3","2018-08-23","feat(api): add NumericArray and TypedArray types"],["ecfcdcd9","2018-08-23","build: update yarn.lock"],["116ede83","2018-08-23","docs(transducers): update readme"],["c716e4ac","2018-08-23","add(transducers): add IReducible support for transduce() & run()"],["1280cfd5","2018-08-22","feat(dcons): add IReducible impl, update deps & imports"],["f14f7ce5","2018-08-22","feat(associative): add IReducible impls for SortedMap & SortedSet"],["9d83255a","2018-08-22","perf(transducers): add IReducible, update reduce()"],["fd8e7614","2018-08-09","feat(rle-pack): add support for custom input word sizes"],["4fdd3c92","2018-08-09","docs(transducers): update readme"],["3e659181","2018-08-09","minor(transducers): fix comp import"],["1434b0ed","2018-08-09","refactor(hdom): remove thi.ng/iterators dependency"],["802c5b44","2018-08-09","build(memoize): update/fix dev deps"],["f3d46460","2018-08-09","refactor(rstream): use SEMAPHORE from thi.ng/api, not transducers"],["5d5c70ab","2018-08-09","Merge branch 'master' into feature/tx-v2"],["e9c8ddc6","2018-08-09","chore(strings): update exports, add docs"],["653a175a","2018-08-09","feat(strings): add case converters"],["5209c426","2018-08-09","fix(strings): buffer length (for null inputs) (`center()`)"],["1a20bc2f","2018-08-09","feat(strings): add truncateLeft() & wrap() stringers"],["3a8bd088","2018-08-09","refactor(transducers): replace local types w/ external defs"],["ca0a04e7","2018-08-09","feat(compose): extract comp() & juxt() to new @thi.ng/compose package"],["bea7a1fd","2018-08-09","refactor(resolve-map): replace SEMAPHORE const w/ thi.ng/api def"],["9b443cb4","2018-08-09","refactor(hdom): replace SEMAPHORE const w/ thi.ng/api def"],["c22ac3ce","2018-08-09","refactor(associative): replace Pair & SEMAPHORE w/ identical thi.ng/api defs"],["cf30ba26","2018-08-09","feat(api): add new/move type aliases into api.ts"],["c9ac981a","2018-08-09","feat(transducers-stats): make xforms iterable if input given"],["ab662d8a","2018-08-09","perf(transducers): add iterator1(), update various xforms"],["d130aaa1","2018-08-08","build: fix transducer versions"],["8a111efd","2018-08-08","refactor(transducers): add shared SortOpts, update xforms"],["3e6c4624","2018-08-08","chore: update .gitignore"],["afb267a0","2018-08-08","docs: add graphviz dot files"],["dcccbcba","2018-08-08","refactor(examples): simplify transducer usages"],["c17cb087","2018-08-08","refactor(hdom-components): update/replace deps (iterators => transducers)"],["420cfe37","2018-08-08","test(csp): fix regression to due transducers update"],["d6352267","2018-08-08","refactor(dgraph): update/replace deps (iterators => transducers)"],["78d0a844","2018-08-08","fix(iges): regression to due transducers update"],["065d78ba","2018-08-08","refactor(cache): update/replace deps (iterators => transducers)"],["abe1a886","2018-08-08","refactor(associative): update/replace deps (iterators => transducers)"],["eb1714f5","2018-08-08","refactor(rstream-query): simplify transducer uses"],["cd5c6ff1","2018-08-08","refactor(rstream): update StreamSync transducer init"],["bae8a1d8","2018-08-08","feat(transducers): update all xforms to also work as iterator"],["e713704f","2018-08-08","refactor(transducers): rename inspect() => trace()"],["45e49930","2018-08-08","refactor(transducers): add ReductionFn type alias, update Reducer"],["723da5bb","2018-08-08","fix(transducers): hex type decl"],["ea768ad0","2018-08-08","Publish"],["6a0db9c7","2018-08-08","refactor(examples): replace hex() => radix(), update deps"],["b1ea9a55","2018-08-08","refactor(transducers): deprecate hex(), update hexDump() xform & deps"],["5864f2cd","2018-08-08","feat(strings): add opt prefix arg for radix()"],["a5e2c28a","2018-08-08","feat(transducers): add partitionBits() xform & tests"],["6eb97b58","2018-08-08","Publish"],["b2ebbfc8","2018-08-08","fix(strings): float type decl"],["0f2cf77d","2018-08-08","Publish"],["a14e5b24","2018-08-08","docs: update readmes"],["56d64c50","2018-08-08","refactor(examples): update crypto-chart to use @thi.ng/strings"],["df067d84","2018-08-08","refactor(iges): update to use @thi.ng/strings"],["40781eb3","2018-08-08","feat(strings): re-import & update @thi.ng/strings from MBP2010"],["369f375d","2018-08-08","build(memoize): update deps"],["2bc092d4","2018-08-08","feat(memoize): add optional cache arg for memoizeJ()"],["adc49285","2018-08-07","feat(memoize): add @thi.ng/memoize package"],["252411aa","2018-08-06","Publish"],["46d02f34","2018-08-06","refactor(examples): update rstream examples"],["378772fb","2018-08-06","fix(rstream): add generics for stream()"],["ec777c09","2018-08-03","Publish"],["f7500359","2018-08-03","docs: add rootlevel license file"],["7c54c68f","2018-08-03","refactor(examples): minor update rstream examples"],["361f8b43","2018-08-03","refactor(rstream-query): remove obsolete `reset` in addJoin()"],["f9466317","2018-08-03","refactor(rstream-graph): remove obsolete `reset` in node() factory"],["32810900","2018-08-03","test(rstream): update tests"],["e1f4667c","2018-08-03","chore(rstream): remove obsolete file"],["9101e089","2018-08-03","docs(rstream): add/update docs for all remaining stream constructs"],["e97aac0d","2018-08-03","feat(rstream): add stream() & subscription() factories, add/update docs"],["55499cc4","2018-08-03","feat(rstream): update StreamSync to use `reset: false` by default, update docs"],["2f0235ea","2018-08-03","docs: update main readme"],["4a9b4cce","2018-08-03","Publish"],["c5afc7b3","2018-08-03","refactor(examples): simplify rstream-hdom example"],["fdc7630b","2018-08-03","refactor(iges): only expect ArrayLike points/vectors, minor other updates"],["9ea44beb","2018-08-03","test(transducers): add padLast() tests"],["e50fd10e","2018-08-03","feat(transducers): add peek() helper fn"],["ff91987f","2018-08-03","docs(transducers): add docs & examples for ~50% of all transducers"],["69d25c8c","2018-08-02","refactor(examples): update transducers-hdom example"],["949a5d46","2018-08-02","fix(transducers-hdom): support hdom user context"],["feae35b0","2018-08-02","Publish"],["8ee1b103","2018-08-02","Merge branch 'develop'"],["698bb60d","2018-08-02","fix(examples): add missing files (triple-query)"],["3e70c31a","2018-08-02","feat(examples): add transducers-hdom example"],["7efce7a7","2018-08-02","feat(transducers-hdom): add new package @thi.ng/transducers-hdom"],["d4aa5ea2","2018-08-02","refactor(examples): add new types for crypto-chart example"],["bc26fb33","2018-08-02","Publish"],["381ad971","2018-08-02","Merge branch 'develop'"],["4ce80e79","2018-08-02","docs(vectors): update readme"],["befc7785","2018-08-02","refactor(vectors): update cylindrical coord conversion, add Vec3 methods"],["74f939c3","2018-08-02","feat(vectors): add toCylindrical3() / fromCylindrical3()"],["3039a35a","2018-08-02","feat(vectors): make Vec2/3/4 array-like, add IEquiv impls, add tests"],["2a13f28c","2018-08-02","feat(vectors): add gvec size checks, add IEquiv & Iterable impls"],["d007a8ae","2018-08-02","docs(examples): update example table (add triple-query)"],["248150ee","2018-08-01","Publish"],["b1cf171f","2018-08-01","chore: update make-* scripts, add cloc stats script"],["748131a3","2018-08-01","chore: update .gitignore"],["cbfd65a3","2018-08-01","fix(examples): add utf meta to all example html files"],["1a8ff8a6","2018-08-01","refactor(examples): cleanup imports"],["4db3fa83","2018-08-01","refactor(rstream-query): cleanup imports"],["c1690170","2018-08-01","refactor(rstream-dot): cleanup imports"],["0f7e82ae","2018-08-01","refactor(rstream): cleanup imports"],["14672731","2018-08-01","refactor(hdom): cleanup imports"],["e0ce1061","2018-08-01","Publish"],["68f59f21","2018-08-01","refactor(vectors): add IVec to all vector class wrappers"],["3ca2cbf1","2018-08-01","refactor(iges): make fill mode optional for addPolyline2d()"],["2ac23a34","2018-08-01","Merge branch 'feature/iges' into develop"],["ee24ede1","2018-08-01","Merge branch 'feature/ts3' into develop"],["e7d2675d","2018-08-01","feat(examples): add triple-query example project"],["0f01cc36","2018-08-01","minor: markdown fixes in various readmes"],["542540f0","2018-08-01","build(examples): update webpack deps"],["2ecd5384","2018-08-01","refactor(router): TS3.0 PropertyKey handling"],["bf2a3074","2018-08-01","refactor(pointfree): TS3.0 PropertyKey handling"],["38372cc9","2018-08-01","refactor(interceptors): TS3.0 PropertyKey handling"],["30d65d4b","2018-08-01","refactor(defmulti): TS3.0 PropertyKey handling"],["2234313c","2018-08-01","refactor(associative): TS3.0 PropertyKey handling"],["20478072","2018-08-01","refactor(api): TS3.0 PropertyKey handling"],["c7f72440","2018-08-01","build: update dev dependencies in all packages & examples"],["56a1f0eb","2018-07-30","Publish"],["3534274a","2018-07-30","fix(vectors): get*() return types, refactor using set*()"],["0ca667a4","2018-07-30","Publish"],["3de5cea4","2018-07-30","fix(vectors): naming convention, add function overview tables"],["474f8df5","2018-07-29","Merge branch 'develop' into feature/iges"],["e82d97a7","2018-07-29","docs: update package list main readme"],["aef277f8","2018-07-29","Publish"],["ae1da134","2018-07-29","docs(vectors): update readme & package info"],["acedfae8","2018-07-29","Merge branch 'feature/geom' into develop"],["93b268a6","2018-07-29","docs(vectors): update readme"],["6571b8a3","2018-07-29","test(vectors): add gvec tests"],["d2bdf79e","2018-07-29","refactor(vector): update eqDelta impls, rename array transformers"],["54b3db2d","2018-07-29","feat(vectors): update get & copy fns to retain buffer types"],["f99cf3dc","2018-07-29","refactor(vectors): add gvec default length args"],["5bba592d","2018-07-29","feat(vectors): add swizzle fns, update/unify fn naming"],["e3c61675","2018-07-29","feat(vectors): add generic vec fns & class wrapper"],["1f0551d0","2018-07-28","refactor(vectors): various small fixes/additions (matrices)"],["1ec75e61","2018-07-27","feat(vectors): re-add matrix class wrappers, update vec classes"],["29500b6d","2018-07-26","build: add babel-minify dev dependency"],["21b04f06","2018-07-26","feat(vectors): re-import updated mat44, add orthoNormal3"],["eb3f66fb","2018-07-26","test(vectors): add tests"],["4fdda6a9","2018-07-26","feat(vectors): re-import updated mat23/33/44 functions"],["2a5a744d","2018-07-25","fix(vectors): copy/paste mistakes, add tests"],["e289db2b","2018-07-25","refactor(vectors): add op22/32, simplify various vec2/3 ops"],["b59fadfd","2018-07-25","feat(vectors): add vec4 ops & class wrapper"],["35af6a56","2018-07-25","feat(vectors): add minor/majorAxis(), minor/major2/3"],["5c52f771","2018-07-25","Merge branch 'develop' into feature/geom"],["5a3b9988","2018-07-25","Publish"],["a322e001","2018-07-25","fix(transducers-stats): fix naming of MACD results (#31)"],["03f94352","2018-07-25","Publish"],["d967f94e","2018-07-25","docs(transducers-stats): update docs & readme"],["c97cb75c","2018-07-25","feat(transducers-stats): add BollingerBand value interface"],["b92aaa58","2018-07-25","feat(transducers-stats): add MACD (fixes #31)"],["d1541539","2018-07-25","feat(vectors): re-import vector types from old thi.ng/geom TS version"],["f7a084ae","2018-07-24","feat(iges): add PolylineMode enum, update addPolyline2d()"],["e349cb6a","2018-07-23","docs(transducers): update readmes"],["e7772934","2018-07-21","Publish"],["0b0a7ca9","2018-07-21","feat(transducers-stats): add stochastic oscillator, refactor"],["2953caaa","2018-07-21","feat(examples): add MA mode dropdown, update crypto-chart dataflow"],["e3def294","2018-07-21","refactor(examples): switch to WMA plots in crypto-chart demo"],["fde777d0","2018-07-21","docs: update main readme"],["76dc450d","2018-07-21","feat(range-coder): re-import @thi.ng/range-coder package from MB2010"],["8389a2c7","2018-07-20","Publish"],["7cfb8e5a","2018-07-20","minor(rstream): remove obsolete args (pubsub)"],["a59c5c94","2018-07-20","perf(rstream): optimize dispatch if only single child"],["cd751fb4","2018-07-20","feat(rstream): add reset option for timeout()"],["7b10e0c9","2018-07-20","Merge pull request #30 from andrew8er/feature/rstream-add-timeout"],["e8009a68","2018-07-19","docs(transducers-stats): update readme links"],["52ce30c4","2018-07-19","docs: update main readme"],["7e497439","2018-07-19","build(transducers-stats): update package deps"],["1de746b2","2018-07-19","Merge branch 'feature/tx-stats' into develop"],["7df3ce04","2018-07-19","feat(transducers-stats): add other xforms"],["7a5812fb","2018-07-19","feat(transducers-stats): add @thi.ng/transducers-stats package"],["1fe612de","2018-07-19","docs(transducers): reapply MD fixes"],["3a2aa7a6","2018-07-19","Merge branch 'master' into develop"],["78701493","2018-07-19","feat(examples): update axis ticks, add more symbols, refactor SMAs"],["08db846b","2018-07-19","docs(transducers): update readme"],["64de94b5","2018-07-19","Publish"],["9874acec","2018-07-19","perf(transducers): update movingAverage() xform, add docs"],["482943c8","2018-07-18","docs(transducers): add/update doc strings"],["ccc37c67","2018-07-18","feat(transducer): add asIterable() helper"],["092154c7","2018-07-18","feat(transducers): allow key arrays for rename(), simplify call sites"],["9b07d12a","2018-07-18","feat(transducers): add juxtR() for multiplexed reductions from same src"],["aa55973e","2018-07-17","feat(rstream): Add a timeout() subscription"],["2733684e","2018-07-16","Publish"],["732a0967","2018-07-16","docs(examples): update readme & dataflow diagram"],["3edbaefc","2018-07-16","feat(examples): add auto-refresh, add data credits"],["9be20180","2018-07-16","fix(rstream): emit first value immediately in fromInterval()"],["0508e40a","2018-07-16","docs(examples): add/update types in rstream-hdom"],["694e6c64","2018-07-16","feat(examples): improve time labels on crypto-chart"],["3c1c29ac","2018-07-16","refactor(examples): remove atom usage from rstream-hdom demo, update docs"],["7cd78e03","2018-07-15","feat(examples): add theme support for crypto chart, update diagram"],["9ff8d352","2018-07-15","docs(examples): update list of demos"],["f1e3d081","2018-07-15","docs(examples): add dataflow graph to readme"],["6989b8db","2018-07-15","docs(examples): temp fix live demo link in readme"],["9b26c4b4","2018-07-15","Publish"],["24829454","2018-07-15","fix(resolve-map): add support for alt ES6 destructure form `{a: b}`"],["08a7600a","2018-07-15","build(hdom-components): update @types/webgl dep"],["2d7e7cdf","2018-07-15","build: update dev dependencies"],["c95a3701","2018-07-15","docs(example): add API ref link, update readme"],["a8487edc","2018-07-15","feat(examples): add crypto chart example"],["20b028c6","2018-07-13","chore: update make-module script"],["4f19be90","2018-07-13","docs: fix various markdown issues"],["973f1a42","2018-07-13","Publish"],["ee48a94c","2018-07-13","fix(rstream-gestures): touchevent check in safari"],["d636876d","2018-07-13","Publish"],["976a6d85","2018-07-13","refactor(iges): update formatParams(), optimize iges file size"],["81223dca","2018-07-13","feat(transducers): add wordWrap() xform"],["634de84d","2018-07-12","docs: add @thi.ng/iges to package list"],["3935d9a5","2018-07-12","Publish"],["eb6dfa9b","2018-07-12","build(iges): update package info"],["b841269a","2018-07-12","Merge branch 'feature/iges' into develop"],["087f3480","2018-07-12","refactor(iges): emit compressed globals section"],["7f1b2d46","2018-07-12","feat(iges): re-import & update IGES exporter (via MBP2010)"],["d061c7d0","2018-07-11","Publish"],["73c7b8ac","2018-07-11","perf(interceptors): update valueSetter()/valueUpdater()"],["ad4caad9","2018-07-11","feat(paths): add updater(), refactor updateIn(), update readme"],["fd23a34e","2018-07-11","docs(sax): minor update readme"],["ef161341","2018-07-11","docs(sax): add tests & DOM parsing example to readme"],["8cd279a8","2018-07-10","Publish"],["126103b3","2018-07-10","fix(hdom): always update \"value\" attrib last in diffAttributes()"],["fcfd4bf8","2018-07-09","docs(hiccup-css): fix #26, add pseudo-class & attrib selector docs"],["e4b62d8b","2018-07-09","Publish"],["22890961","2018-07-09","docs(rstream): add AUTHORS.md"],["d485bfa5","2018-07-09","Merge pull request #28 from andrew8er/pr/rstream-fix-transduce"],["03543ee9","2018-07-09","fix(transducers): revert mean() from regression introduced in 095e6ef"],["9513ddd8","2018-07-09","Merge branch 'master' into pr/rstream-fix-transduce"],["5ec61406","2018-07-09","build(examples): add missing html/webpack config for rstream-hdom demo"],["8321660c","2018-07-09","feat(examples): add rstream-hdom example"],["7f2d5dd2","2018-07-09","fix(rstream): Fix potential reference error in transduce()"],["84f23d35","2018-07-09","Publish"],["095e6ef3","2018-07-09","refactor(transducers): add reducer() helper, update existing reducers"],["0430c769","2018-07-04","Publish"],["dbbeffb3","2018-07-04","docs(paths): update docs & readme"],["c7f2f92d","2018-07-04","test(paths): add/update tests"],["3d9d6200","2018-07-04","feat(paths): update setter() to support arrays, optimize (~2.5x faster)"],["7fb407c0","2018-07-04","Publish"],["36165be8","2018-07-04","minor(rstream-graph): formatting"],["de17340a","2018-07-04","feat(rstream-gestures): add event & preventDefault opts, update docs"],["d5ac2643","2018-07-04","feat(rstream): add support for event listener opts in `fromEvent()`"],["9ffa346d","2018-07-03","Publish"],["677c7cc0","2018-07-03","feat(transducers): add ensureArray(), refactor reverse()"],["17d412af","2018-07-03","test(rstream-graph): increase timeout to avoid travis errors"],["a5942022","2018-07-03","Publish"],["33f0d197","2018-07-03","fix(associative): minor SortedSet fixes"],["1e185011","2018-06-29","Merge pull request #24 from andrew8er/pr/rstream-transduce-unsubscibe-on-error"],["8c7d9376","2018-06-28","fix(rstream): unsubscribe on error in transduce()"],["576f1da3","2018-06-25","Publish"],["c4fad707","2018-06-25","fix(rstream-graph): individual node outputs"],["eb2015df","2018-06-21","Publish"],["d0b1e5c4","2018-06-21","feat(rstream-graph): add stop(), fix `const` inputs, update docs/readme"],["cc5b7367","2018-06-21","feat(rstream): option to avoid auto-closing `fromInterval()`, add docs"],["4611e8e0","2018-06-21","chore: update repo & homepage fields in all packages"],["2223bded","2018-06-21","docs: fix package links in readmes"],["a3b245c8","2018-06-20","Publish"],["cd863214","2018-06-20","docs(transducers-fsm): fix readme (example)"],["60dca8ee","2018-06-20","Publish"],["882f3949","2018-06-20","feat(sax): add children & trim opts, add CDATA support"],["6cf0d915","2018-06-19","Publish"],["eed50b81","2018-06-19","docs: update main readme"],["343e07f1","2018-06-19","refactor(sax): wrap FSM handler results as arrays, update ELEM_SINGLE"],["a9ca1351","2018-06-19","feat(transducers-fsm): support multiple results, add tests, update readme"],["8959b938","2018-06-19","docs(sax): update readme (add SVG example)"],["bbd3b4ba","2018-06-19","docs(transducers-fsm): update readme, whitespace"],["bc261e57","2018-06-19","feat(transducers): add matchFirst()/matchLast() xforms, update readme"],["e824b6bb","2018-06-19","feat(sax): add support for escape seqs, minor optimizations"],["4e7fca56","2018-06-18","chore: update make-module script"],["30811ce5","2018-06-18","docs(transducers-fsm): update package keywords"],["cc11ade5","2018-06-18","Publish"],["0e4662d1","2018-06-18","fix(sax): correct docs in readme"],["278a86c2","2018-06-18","Publish"],["b5b26300","2018-06-18","docs: update package docs (bench / dot)"],["42e22921","2018-06-18","docs: update readmes (add/fix links)"],["10e807c5","2018-06-18","Merge branch 'feature/sax' into develop"],["3589e155","2018-06-18","fix(checks): isOdd() for negative values"],["23b9cc2e","2018-06-18","docs(transducers-fsm): update docs & readme"],["0f2fcdff","2018-06-18","feat(sax): add entity support, update result format, update states"],["56deb455","2018-06-17","refactor(sax): remove extracted FSM transducer & types, update readme"],["7c3c2903","2018-06-17","feat(transducers-fsm): inital import"],["64f23789","2018-06-17","feat(sax): update error handling, add parse() wrapper, add FSMOpts"],["a4766a54","2018-06-17","feat(sax): add support for proc & doctype elements, update `end` results"],["3dea9549","2018-06-17","feat(sax): emit child elements with `end` results, support comments"],["74f7d02e","2018-06-17","refactor(sax): extract parser sub-states"],["dce189f9","2018-06-17","feat(sax): initial import"],["f13138a4","2018-06-08","Publish"],["e1a8c915","2018-06-08","docs(hiccup-css): update readme"],["cffab49d","2018-06-08","Merge branch 'feature/hcss-inject' into develop"],["8d6e6c86","2018-06-08","feat(hiccup-css): add injectStyleSheet()"],["244bf213","2018-06-08","feat(hiccup-css): add class scoping support"],["b358c1a7","2018-06-07","Publish"],["e0535b4c","2018-06-07","docs(resolve-map): update readme"],["0beaffb1","2018-06-07","docs(resolve-map): update readme"],["0fc2305e","2018-06-07","fix(rstream-graph): rename `resolveMap` => `resolve` due to upstream changes"],["35deb3b8","2018-06-07","Merge branch 'feature/resolve-auto' into develop"],["e61c3b59","2018-06-07","feat(resolve-map): add cycle detection, fix edge cases"],["57f1ed5f","2018-06-06","feat(resolve-map): add ES6 destructuring shorthands for function vals"],["93b40b78","2018-06-06","Publish"],["720b1f18","2018-06-06","docs(rstream-graph): update api docs & readme"],["576668e3","2018-06-06","Merge branch 'feature/rs-graph-outputs' into develop"],["48c796f5","2018-06-06","fix(resolve-map): also use _resolvePath for plain lookups, optimize"],["dd2cbd44","2018-06-06","refactor(examples): update rstream-graph examples"],["1a09b61e","2018-06-06","minor(rstream-graph): minor fix exported types"],["558f4f8c","2018-06-06","fix(resolve-map): add private _resolveDeep"],["f2e0df25","2018-06-06","feat(rstream-graph): add full/optional support for multiple node outputs"],["dc6e0acc","2018-06-06","refactor(resolve-map): export absPath(), add LookupPath type alias"],["be21c4c2","2018-06-06","feat(rstream-graph): update NodeOutput, support multiple handlers"],["de48e134","2018-06-05","build: add yarn bootstrap"],["67c7e17d","2018-05-30","Publish"],["45785229","2018-05-30","Merge branch 'develop'"],["b267c999","2018-05-30","Merge branch 'feature/command' into develop"],["7ac6227d","2018-05-30","feat(atom): provide prev/curr states to history event listeners"],["94225989","2018-05-29","feat(atom): add INotify impl for History"],["44998ca0","2018-05-20","Publish"],["ad56421a","2018-05-20","refactor(rstream-graph): allow fn vals in GraphSpec too, update test"],["b7560989","2018-05-20","Publish"],["0818498a","2018-05-20","feat(rstream-graph): update types, initGraph(), node1(), add tests"],["c880a633","2018-05-20","Publish"],["773829e4","2018-05-20","minor(rstream): add alt subscribe() overrides (disabled)"],["846aaf97","2018-05-20","feat(rstream): re-implement bisect() using PubSub, update tests"],["cbc600e7","2018-05-20","fix(rstream): minor update PubSub topic fn return type"],["23fdd398","2018-05-19","feat(rstream): update resolve(), update subscribe() overrides"],["0e103c50","2018-05-16","Publish"],["0c292503","2018-05-16","feat(examples): add input clearing"],["7e1028a2","2018-05-15","fix(examples): tab handling in fuzzy dropdown"],["2482b16e","2018-05-15","fix(hdom): delay init() lifecycle call to ensure children are available"],["81b596f6","2018-05-15","refactor(examples): update highlightMatches()"],["db58ebc7","2018-05-15","feat(examples): add fuzzy match highlighting"],["09d531a7","2018-05-15","feat(exmples): add hdom-dropdown-fuzzy (unfinished)"],["577bdde8","2018-05-15","docs: add discord badge"],["7349ef43","2018-05-15","test(hdom): fix/update lifecycle test"],["5595cc2a","2018-05-14","Publish"],["4dd97abd","2018-05-14","docs: update readmes (compare / equiv)"],["4b94a1b9","2018-05-14","docs(api): update doc strings"],["f7b6b342","2018-05-14","Publish"],["191bc981","2018-05-14","chore: update package keywords"],["ade96f86","2018-05-14","fix(hdom): component obj lifecycle method thisArg handling"],["c54f7357","2018-05-14","test(transducers): remove obsolete test file"],["e238541f","2018-05-14","refactor(transducers): replace wrapBoth/Left/Right w/ wrap()"],["fbba5d27","2018-05-14","Publish"],["d59b0af3","2018-05-14","docs(transducers): update readme"],["37362dd2","2018-05-14","test(transducers): add fuzzy tests"],["fc6acd16","2018-05-14","chore(transducers): update deps, readme, re-exports"],["2bebba28","2018-05-14","feat(transducers): add filterFuzzy() xform"],["306625df","2018-05-14","feat(transducers): add wrap*() iterators"],["9efa5762","2018-05-14","docs(resolve-map): update readme"],["4591d5d5","2018-05-14","minor(examples): update dropdown html"],["2076d25b","2018-05-14","docs(resolve-map): add readme example"],["ea185897","2018-05-14","Publish"],["6661fc3a","2018-05-14","feat(examples): add hdom-dropdown example"],["5e729701","2018-05-14","feat(interceptors): update dispatch() / dispatchNow()"],["644d1ffe","2018-05-13","docs(hdom): update readme example"],["5d6e762d","2018-05-13","Publish"],["609d66dd","2018-05-13","docs(hdom): update readme"],["01f0fa56","2018-05-13","Merge branch 'feature/hiccup-context' into develop"],["f8fe5001","2018-05-13","docs(hiccup): update readme"],["67015ce9","2018-05-13","refactor(examples): update svg examples"],["dc775404","2018-05-13","docs(hiccup-svg): resolve #19, update readme, add invocation notes"],["373701b0","2018-05-13","feat(pointfree): add execjs for host calls, update readme"],["396faec8","2018-05-13","refactor(hiccup-svg): rename svgdoc => svg"],["765e7302","2018-05-13","docs(hiccup): update readme"],["b1cb7d9a","2018-05-12","perf(hiccup): update css()"],["feca5666","2018-05-12","refactor(hiccup): fix #19, add support for context object"],["4b8caec9","2018-05-12","docs: update main readme"],["2d4fd682","2018-05-12","docs: update all readme's (add deps links)"],["6ff48a41","2018-05-12","docs(defmulti): update readme"],["8b2e67ce","2018-05-12","Publish"],["41ce19c5","2018-05-12","test(csp): update IEnabled test impl"],["67f0e546","2018-05-12","refactor(dcons): update pop()"],["9b388604","2018-05-11","refactor(api): update interfaces, add docs"],["04b66b2f","2018-05-11","Publish"],["fbb721f8","2018-05-11","docs: remove dep graph from main readme, update package"],["eeed25ed","2018-05-11","feat(defmulti): add generics, update docs & readme"],["011519d7","2018-05-11","docs: update dep graph"],["2fd3d822","2018-05-11","Publish"],["126ecf36","2018-05-11","feat(defmulti): add defmultiN(), update readme, add tests"],["5391d986","2018-05-11","fix(pointfree): minor update error handling"],["5227dd1f","2018-05-11","refactor(errors): update return types (`never`)"],["790d0130","2018-05-11","test(defmulti): add tests"],["8c74a99d","2018-05-10","docs: update dep graph"],["08cef30e","2018-05-10","Publish"],["304669de","2018-05-10","Merge branch 'feature/defmulti' into develop"],["7ae718c5","2018-05-10","docs: update main readme"],["edc66bf2","2018-05-10","feat(defmulti): add @thi.ng/defmulti package"],["a818acd4","2018-05-10","docs(transducers): update readme"],["e6f2972b","2018-05-10","docs: update dep graph"],["051a05db","2018-05-10","Publish"],["55f29b8f","2018-05-10","feat(transducers): add normRange() iterator"],["bd1fba33","2018-05-10","docs: update dep graph"],["c72e81c3","2018-05-10","Publish"],["7af3ef86","2018-05-10","docs: update readmes"],["6349b918","2018-05-10","Merge branch 'feature/api-split' into develop"],["fc7c5c70","2018-05-10","refactor(examples): update imports"],["bdf5bf06","2018-05-10","refactor(examples): update imports"],["bc456364","2018-05-10","refactor: update deps & imports in all packages due to @thi.ng/api split"],["f051ca3c","2018-05-10","refactor(api): remove obsolete files from package"],["9466d4b2","2018-05-10","feat(bench): add new package @thi.ng/bench"],["e4a87c41","2018-05-10","feat(compare): add new package @thi.ng/compare"],["1e97856f","2018-05-10","feat(errors): add new package @thi.ng/errors"],["6d12ae08","2018-05-10","feat(equiv): add new package @thi.ng/equiv"],["aba06b0c","2018-05-10","docs(examples): fix link"],["34903210","2018-05-10","feat(examples): add icon button"],["a49e30cf","2018-05-10","Merge branch 'master' into develop"],["d5f1037a","2018-05-10","fix(examples): fix #22, update router-basics"],["7a8e43ea","2018-05-10","docs(examples): update readmes"],["cea77deb","2018-05-09","feat(examples): add hdom-theme-adr-0003 demo"],["5af437c1","2018-05-09","docs(hdom-components): add ADR-0003"],["b4476cb9","2018-05-09","refactor(hdom-components): add ButtonGroup type alias"],["1dd6e9a2","2018-05-09","docs: update dep graph"],["5da6c578","2018-05-09","Publish"],["6e7599ac","2018-05-09","docs(resolve-map): update/fix doc strings"],["5d2a3fe8","2018-05-09","refactor(resolve-map): fix #21"],["68ca46d2","2018-05-09","feat(dgraph): add leaves() & roots() iterators, update sort()"],["91a2b748","2018-05-09","docs: add @thi.ng/dot to main readme"],["b5132b3d","2018-05-09","docs: update dep graph"],["850716bc","2018-05-09","Publish"],["d8d9435e","2018-05-09","build: update deps in all packages, examples & scripts"],["68ea0864","2018-05-09","fix(hdom): native boolean attrib handling (e.g. \"checked\")"],["ede76916","2018-05-09","docs(hdom-components): update readme"],["053c8c6f","2018-05-09","feat(rstream-gestures): add zoom smooth config option, update readme"],["b52c503e","2018-05-09","docs: update readme's"],["5991be61","2018-05-09","feat(associative): add new functions, update arg & return types"],["c0950d65","2018-05-08","feat(hdom-components): add buttonGroup"],["5416887a","2018-05-07","doc(hdom-components): update ADR-0002"],["c0fef3d3","2018-05-07"," doc(hdom-components): update ADR-0002"],["a9574a0b","2018-05-07","feat(associative): add mapKeysObj() / mapKeysMap()"],["cefb1994","2018-05-07","refactor(hdom-components): remove CanvasOpts, update re-exports"],["4f8e7bab","2018-05-07","refactor(hdom-components): update notification & appLink comps"],["a11803c4","2018-05-07","feat(hdom-components): add notification component"],["ec41eb9c","2018-05-07","refactor(hdom-components): update button args"],["5e815256","2018-05-05","doc(hdom-components): add ADRs"],["cef3c6a8","2018-05-05","feat(hdom-components): add button component"],["334a4d24","2018-05-04","refactor(hdom-components): make pager more customizable"],["23b64517","2018-05-04","refactor(dot): replace NodeShape enum, minor other refactoring, add example"],["500dfa3b","2018-05-03","feat(dot): initial import @thi.ng/dot"],["f9a2daf2","2018-05-02","feat(hdom-components): add title component"],["6748515b","2018-05-02","feat(interceptors): add dispatch/dispatchNow() helper interceptors"],["5a6ce274","2018-05-02","build(examples): update packages"],["cbfa44b7","2018-05-02","build: update dev deps in all packages"],["efb288df","2018-05-01","feat(hdom-components): add pager component, add @thi.ng/iterators dep"],["b2806236","2018-05-01","docs: update dep graph"],["212e5013","2018-05-01","Publish"],["146fad62","2018-05-01","build: update upload-examples script"],["593654a7","2018-05-01","docs: update dep graph"],["a93cb98b","2018-05-01","fix(hdom): boolean attrib reset/removal"],["698438a5","2018-04-30","docs: update dep graph"],["f6e944c6","2018-04-30","Publish"],["7a543a50","2018-04-30","perf(hdom): only build linear diff edit log"],["431527a5","2018-04-30","perf(diff): add option to only build linear edit log"],["12b8dcb3","2018-04-30","fix(examples): CA dropdown"],["c2a5bcb3","2018-04-29","docs: update dep graph"],["5888f224","2018-04-29","Publish"],["95c57ec3","2018-04-29","Merge branch 'hotfix/arraylike'"],["491a6f85","2018-04-29","revert: b86d5b2"],["31ec3af4","2018-04-29","perf(hdom): update event handling in diffAttributes()"],["a7c5eafc","2018-04-29","refactor(examples): update todo list"],["b86d5b25","2018-04-29","refactor(examples): update hdom-basics"],["7fdf1721","2018-04-29","perf(api): major speedup equivObject(), update equivSet()"],["76920f75","2018-04-29","fix(checks): return type isMap()"],["ac60404e","2018-04-29","fix(checks): exclude functions in isArrayLike()"],["a6dc02e4","2018-04-28","docs: update dep graph"],["048632a4","2018-04-28","Publish"],["c4d8851d","2018-04-28","fix(interceptors): multiple sidefx value assignment"],["2aaa134a","2018-04-28","refactor(examples): minor update rstream-grid, add missing files"],["7c3faed2","2018-04-28","docs(interceptors): update readme"],["cba30e36","2018-04-28","docs(examples): update readme"],["1c469afa","2018-04-28","minor(examples): update rstream-grid sidebar"],["115dff2b","2018-04-28","docs: update dep graph"],["df55f40b","2018-04-28","Publish"],["661e34f5","2018-04-28","feat(examples): add rstream-grid dataflow demo"],["f4a095a5","2018-04-28","feat(interceptors): add dispatchLater()"],["f84fe450","2018-04-27","docs: update dep graph"],["8f5b3d91","2018-04-27","Publish"],["6f95bcb3","2018-04-27","feat(rstream-query): add obj->triple converter, update readme & example"],["d03520d8","2018-04-26","docs: update dep graph"],["085a81d9","2018-04-26","Publish"],["af6c807e","2018-04-26","style: reformat/sort imports in all packages"],["d36a5eaf","2018-04-26","refactor(rstream-query): simplify case selection in addPatternQuery()"],["2ab5af5d","2018-04-26","build: update/add upload scripts"],["5c048615","2018-04-26","docs: update dep graph"],["7fa54577","2018-04-26","Publish"],["ced200af","2018-04-26","docs(rstream-query): update readme, diag, add example"],["75f2af2e","2018-04-26","perf(rstream-query): optimize pattern queries, fix bindVars()"],["6bcd5dd4","2018-04-26","docs: update dep graph"],["6d261caa","2018-04-26","Publish"],["f5735a66","2018-04-26","Merge branch 'feature/rs-query' into develop"],["d093a5c8","2018-04-26","feat(rstream-query): add query spec types, addQueryFromSpec(), dedupe xforms"],["2ac8bff3","2018-04-26","feat(api): support more types in equiv(), add tests"],["a865f62b","2018-04-26","feat(checks): add date, map, nan, set checks"],["d057d954","2018-04-26","feat(rstream-dot): add option to include stream values in diag"],["76f00c36","2018-04-26","refactor(rstream): update ISubscribable (add IDeref parent)"],["679c4e08","2018-04-26","feat(rstream-query): add path query, multi-joins, pattern query reuse"],["9b5c58ac","2018-04-25","feat(rstream-query): rename TripleStore methods, use Set-like API"],["443ff8f6","2018-04-25","feat(rstream-query): add removeTriple(), simplify wildcard subqueries"],["c5f36a2d","2018-04-25","feat(rstream-query): add addQueryJoin(), add type aliases, update tests"],["7d927144","2018-04-25","docs: update dep graph"],["6215335f","2018-04-25","Publish"],["888f4e56","2018-04-25","build: update package keywords"],["cf388ddb","2018-04-25","docs: update rstream-* readmes"],["28cf39f9","2018-04-25","build: temporarily force node v9 for travis"],["72aa848a","2018-04-25","docs: update dep graph"],["a3e0cf82","2018-04-25","Publish"],["cc286e12","2018-04-25","fix(rstream): minor fix StreamSync.addAll()"],["fa36f989","2018-04-25","docs: update main readme"],["60bd67a4","2018-04-25","docs: update dep graph"],["8fc5fb40","2018-04-25","Publish"],["2f3bdaea","2018-04-25","build: update make-module script"],["b121c476","2018-04-25","refactor(rstream-query): rename types, update readme"],["97a6e945","2018-04-24","docs: update various readmes"],["781ae217","2018-04-24","test(rstream-query): add query tests"],["d9b845e0","2018-04-24","feat(rstream-query): add param queries w/ variables, update addPatternQuery"],["6368cd2d","2018-04-24","docs(rstream-dot): update readme, add diagram"],["3135da20","2018-04-24","docs(examples): update rs-dlow diagram & readme"],["a68eca0b","2018-04-24","feat(rstream-query): add IToDot impl for graphviz conversion/viz"],["7ffaa615","2018-04-24","feat(rstream-dot): add xform edge labels, extract types to api.ts"],["32fb7ff9","2018-04-24","docs(rstream-graph): update readme"],["2b9a8883","2018-04-24","refactor(rstream-graph): extract ensureInputs(), update docs"],["e11b9a80","2018-04-24","refactor(examples): update rstream-dataflow to use new specs"],["d564e109","2018-04-24","refactor(rstream-graph): update node input specs & node factories"],["3408c137","2018-04-24","feat(rstream-gestures): allows partial opts, add ID option"],["b3928174","2018-04-24","perf(rstream): support (re)named StreamSync inputs"],["66ec92fb","2018-04-24","feat(rstream-query): update index & sub-query caching/reuse"],["d35b5ff1","2018-04-24","feat(examples): add graphviz DOT output for rstream-dataflow"],["704025a9","2018-04-24","feat(rstream-dot): support multiple roots in walk()"],["0153903d","2018-04-24","feat(rstream-graph): add IDs for all generated nodes, rename factory type"],["e72478ab","2018-04-24","feat(rstream-dot): initial import @thi.ng/rstream-dot package"],["33f55b3e","2018-04-24","feat(rstream): add owner meta data & IDs for merge/sync inputs"],["16fabb8c","2018-04-23","refactor(rstream-query): simplify addQuery()"],["a4aa4cb3","2018-04-23","refactor(rstream-query): simplify query handling, optimize addFact()"],["ef3903e4","2018-04-23","feat(rstream-query): initial import"],["c73b0be9","2018-04-22","docs: update dep graph"],["d4423f2c","2018-04-22","Publish"],["03cee0fa","2018-04-22","build(heaps): update package desc"],["aa78d77e","2018-04-22","fix(cache): TLRUCache.get(), add tests, update package"],["7d38e5b0","2018-04-22","test(cache): add tests"],["9d53ae33","2018-04-22","feat(cache): add TLRUCache.prune(), fix ensureSize()"],["fa67252c","2018-04-22","docs: update dep graph"],["23e36a10","2018-04-22","Publish"],["944aaf6d","2018-04-22","test(heaps): add tests"],["fccb3af1","2018-04-22","feat(heaps): iterator now returns min() seq"],["58945727","2018-04-22","fix(heaps): add DHeap ICopy/IEmpty impls, fix return types"],["c4bbee0a","2018-04-22","feat(heaps): add min/max(), update heapify() and percolate methods"],["34996f23","2018-04-22","docs: update package list main readme"],["d6e175db","2018-04-22","docs: update dep graph"],["17ccbb1f","2018-04-22","Publish"],["05a68dbe","2018-04-22","Merge branch 'feature/lru' into develop"],["b83c0300","2018-04-22","minor(cache): cleanup"],["ab4abf55","2018-04-22","refactor(heaps): major update / simplify, fix DHeap, add accessors"],["24113b27","2018-04-21","docs(cache): update readme"],["574b5d96","2018-04-21","feat(cache): add TLRUCache"],["c4a9c074","2018-04-21","fix(cache): recompute size in LRUCache.delete(), extract removeEntry()"],["0ea0847d","2018-04-21","feat(heaps): import @thi.ng/heaps package"],["26c4cfd0","2018-04-21","feat(cache): add MRUCache, update package & readme"],["00ca831f","2018-04-21","refactor(cache): make LRU ops O(1), update/remove (some) interfaces"],["19f7e761","2018-04-21","feat(dcons): add asHead()/asTail()"],["3947419c","2018-04-21","fix(cache): don't insert new val if > maxsize"],["1c9d73f5","2018-04-21","docs(cache): update readme"],["d37a91eb","2018-04-21","refactor(cache): update/extend ICache & LRUCache, update readme"],["7bbbfa88","2018-04-20","feat(cache): initial import @thi.ng/cache package"],["dab48115","2018-04-20","docs: update dep graph"],["ff5705d4","2018-04-20","Publish"],["a335a66e","2018-04-20","docs(rstream): update readme"],["ba10907c","2018-04-20","feat(rstream): allow arbitrary PubSub topic vals, add @thi.ng/associative dep"],["bb11ddfb","2018-04-20","fix(associative): allow partial options arg for EquivMap ctor"],["27a098d7","2018-04-20","feat(rstream): add PubSub, add ISubscribableSubscriber, remove cache()"],["40903ea2","2018-04-19","docs: update dep graph"],["e0e95587","2018-04-19","Publish"],["d40f3a82","2018-04-19","docs: update dep graph"],["f77b443d","2018-04-19","Publish"],["87e3b488","2018-04-19","feat(interceptors): add EV_TOGGLE_VALUE handler, update EV_UNDO/REDO"],["920a3406","2018-04-19","docs(hdom): update readme"],["a2320ff2","2018-04-18","docs(paths): update readme"],["e0b41d81","2018-04-18","docs: update dep graph"],["59806881","2018-04-18","Publish"],["b7dff0ea","2018-04-18","fix(rstream-graph): import path"],["6fcc2358","2018-04-18","docs: update dep graph"],["adc2fb4a","2018-04-18","Publish"],["3b7c9d97","2018-04-18","fix(transducers): add generics for compR(), fix types in mapNth()"],["4c014b18","2018-04-18","Merge pull request #17 from andrew8er/pr/compr-types"],["c26fed40","2018-04-18","docs: update dep graph"],["88283db1","2018-04-18","Publish"],["3087776e","2018-04-18","fix(rstream-log): ID handling in Logger ctor"],["08af60af","2018-04-18","refactor(rstream-log): minor update matchID()"],["de474933","2018-04-18","docs(rstream-log): fix typo"],["0de3d200","2018-04-18","docs(examples): add undo info (svg-waveform)"],["c67607b7","2018-04-18","build(examples): update dev deps"],["bb60cb9f","2018-04-18","build: update dev deps"],["b8bb801a","2018-04-17","docs: update dep graph"],["7e585e2b","2018-04-17","Publish"],["8f3a3d10","2018-04-17","feat(paths): add setInMany() and mutInMany(), add @thi.ng/api dependency"],["78b998cb","2018-04-17","docs: update dep graph"],["fbe15446","2018-04-17","Publish"],["2e32c3b9","2018-04-17","feat(examples): add instrumentation to router-basics demo"],["1a6ac54d","2018-04-17","feat(interceptors): add event handler instrumentation"],["5107dcad","2018-04-17","docs: update dep graph"],["e5185cf2","2018-04-17","Publish"],["d7ff997b","2018-04-17","fix(interceptors): filter out undefined sidefx vals"],["de89f00d","2018-04-17","fix(transducers): Provide argument types for compR() and deepTransform()"],["a9a7bfae","2018-04-16","docs: update dep graph"],["b523e9ef","2018-04-16","Publish"],["5ddb19c6","2018-04-16","feat(rstream-graph): add addNode()/removeNode()"],["8bcc2870","2018-04-16","feat(rstream): add StreamMerge/Sync.removeID() & removeAllIDs()"],["a379d12d","2018-04-16","feat(resolve-map): support relative parent refs, update tests/readme"],["e643e7fe","2018-04-16","docs: update dep graph"],["df039db1","2018-04-16","Publish"],["144f2684","2018-04-16","Merge branch 'feature/rm-refactor' into develop"],["6992e82b","2018-04-16","feat(resolve-map): resolve each ref only once, re-use resolved results"],["4c1bd85c","2018-04-16","feat(paths): add mutator() & mutIn()"],["b00b5a28","2018-04-16","docs: update dep graph"],["dbb96fe2","2018-04-16","Publish"],["56d919c0","2018-04-16","fix(rstream-graph): create null sub for ID renaming"],["f5aba033","2018-04-16","docs: update dep graph"],["17584b5d","2018-04-16","Publish"],["9a83d4ef","2018-04-16","fix(interceptors): update undo handling to support history cursors"],["b856fecc","2018-04-15","docs(associative): update readme"],["c7e760ea","2018-04-15","docs: update dep graph"],["3111409c","2018-04-15","Publish"],["df32a59e","2018-04-15","docs(rstream-gestures): update package"],["e6c75b4a","2018-04-15","refactor(rstream-log): update package structure & readme example"],["2164ddfd","2018-04-15","feat(rstream): add Subscription.transform()"],["7cf93fc5","2018-04-15","docs(rstream): update readme"],["b667c88c","2018-04-15","docs(examples): update readme"],["f39affc1","2018-04-15","docs: update main readme"],["2942d1c3","2018-04-15","docs: update dep graph"],["f2ae6d24","2018-04-15","Publish"],["1479cd1e","2018-04-15","Merge branch 'feature/rstream-graph' into develop"],["a0063992","2018-04-15","refactor(examples): simplify rstream-dataflow example"],["619b4b37","2018-04-15","feat(rstream-graph): initial import @thi.ng/rstream-graph"],["937e5025","2018-04-15","docs: update dep graph"],["e6d7882d","2018-04-15","Publish"],["9ae2e035","2018-04-15","build(examples): update project structure for router-basics/svg-waveform"],["a597e728","2018-04-15","feat(examples): add undo/redo feature to svg-waveform, update components"],["a1d9ae68","2018-04-15","refactor(interceptors): refactor undo handling"],["cf42260c","2018-04-15","feat(atom): update History.record(), add IHistory interface"],["3c92f7e6","2018-04-15","feat(interceptors): add undo/redo handlers/fx & snapshot() interceptor"],["a102eb7c","2018-04-15","feat(interceptors): add default FX_UNDO/REDO side fx"],["ba0c876d","2018-04-14","refactor(interceptors): also pass ctx to sidefx handlers"],["183af614","2018-04-14","feat(interceptors): update processQueue(), expose full ctx to handlers"],["d539b4f3","2018-04-14","docs: update dep graph"],["83be0dce","2018-04-14","Publish"],["010f32e9","2018-04-14","docs: update readme files"],["9eec054a","2018-04-14","Merge branch 'develop'"],["85f5fdd4","2018-04-14","Merge branch 'feature/rs-gestures' into develop"],["885fcf15","2018-04-14","build: update make-module script"],["3f8dbc9e","2018-04-14","refactor(examples): update rs-dataflow demo"],["de1ac7bb","2018-04-14","feat(rstream-gestures): initial import @thi.ng/rstream-gestures"],["4755212f","2018-04-14","docs: update readme's"],["7b510487","2018-04-14","build(examples): add html & webpack config"],["6198899d","2018-04-14","docs: update dep graph"],["0243b44d","2018-04-14","Publish"],["c6b3025c","2018-04-14","build: import depgraph script"],["9e98ce12","2018-04-14","refactor(examples): update svg-waveform demo"],["1b21710a","2018-04-13","feat(examples): add svg-waveform example"],["584223ca","2018-04-13","refactor(examples): rename interceptors in interceptor-basics,"],["86883e3c","2018-04-13","feat(interceptors): add ensureStateRange() & ensureParamRange() iceps"],["6da2d397","2018-04-13","docs: update dep graph"],["816950a8","2018-04-13","Publish"],["07628f67","2018-04-13","build: fix package clean tasks"],["d798cee3","2018-04-13","refactor(dgraph): regression update due to @thi.ng/associative changes"],["bfabe802","2018-04-13","feat(associative): add renameKeysMap"],["1f8af6c4","2018-04-13","refactor(associative): update EquivMap, update SortedSet, add docs"],["d1178acf","2018-04-13","perf(associative): update equiv() impls"],["76e5c853","2018-04-13","docs: update dep graph"],["f4b4067e","2018-04-13","Publish"],["26361437","2018-04-13","refactor(dgraph): update ArrayMap/Set refs"],["2f33389a","2018-04-13","docs(associative): update readme"],["87560270","2018-04-13","refactor(associative): rename EquivMap/Set => ArrayMap/Set, export interfaces"],["a7698563","2018-04-13","refactor(associative): add private impls for EquivMap/Set"],["cb4976fe","2018-04-12","feat(associative): add SortedSet, update SortedMap"],["ae0eae8e","2018-04-12","feat(associative): add SortedMap & tests, minor refactor EquivMap"],["82be16d4","2018-04-11","docs: update dep graph"],["3c1e2dd7","2018-04-11","Publish"],["52c75085","2018-04-11","feat(transducers): add run() for executing side effects only, update readme"],["5f94efa0","2018-04-10","docs: update dep graph"],["fa794a6e","2018-04-10","Publish"],["675847b8","2018-04-10","fix(dgraph): update corrupted deps"],["9b1c7bdb","2018-04-10","docs: update dep graph"],["5dd34261","2018-04-10","Publish"],["26d8ed85","2018-04-10","v0.1.0"],["efe606e1","2018-04-10","build(dgraph): update package desc"],["e7a5c93e","2018-04-10","build(associative): update package desc"],["207dd992","2018-04-10","docs: update package list main readme"],["371cd42f","2018-04-10","build(associative): update deps (dcons)"],["3e90117a","2018-04-10","Merge branch 'feature/dgraph' into develop"],["0dc9f646","2018-04-10","feat(associative): add EquivSet.first()"],["e086be6b","2018-04-10","feat(dgraph): re-import DGraph impl & tests, update readme"],["10c089a3","2018-04-10","feat(dcons): add IEmpty impl, minor refactoring"],["cc70dbce","2018-04-10","feat(associative): initial import @thi.ng/associative"],["fd27a946","2018-04-09","build: update lerna"],["69efee12","2018-04-09","docs(hdom): add authors.md"],["2357355a","2018-04-09","docs: update dep graph"],["c2cd9fbc","2018-04-09","Publish"],["2a91e302","2018-04-09","perf(hdom): intern imported checks, update normalizeTree(), add docs, fix tests"],["7e3070a2","2018-04-09","docs: update dep graph"],["d9aeed47","2018-04-09","Publish"],["b9d9a493","2018-04-09","fix(hiccup-svg): path(), update add null check for points()"],["acc9c13b","2018-04-09","refactor(examples): update router demo"],["5dfcd1ad","2018-04-08","docs: update dep graph"],["179efc44","2018-04-08","Publish"],["6f45ec6d","2018-04-08","v0.1.0"],["2458b15f","2018-04-08","docs(hiccup-svg): update readme"],["fcf1404e","2018-04-08","refactor(hiccup): remove obsolete deref check"],["4ed84eb5","2018-04-08","docs(hdom): update readme"],["a904599c","2018-04-08","docs(hdom): update/fix readme"],["d832c9d2","2018-04-08","docs(hdom): update readme & doc strings"],["3e7e0256","2018-04-08","Merge branch 'feature/hdom-context' into develop"],["905467c1","2018-04-08","refactor(examples): update cellular-automata & hdom-benchmark"],["0873832d","2018-04-08","refactor(hdom-components): update dropdown components"],["4a18e884","2018-04-08","refactor(examples): update webgl demo to use new canvas component"],["8b0d6015","2018-04-08","build: update main yarn.lock"],["7c88a3fc","2018-04-08","feat(hdom-components): update canvas handlers, add webgl2 version"],["e06e5042","2018-04-08","refactor(examples): update todo-list"],["6faa38a0","2018-04-08","refactor(examples): update webgl demo"],["1e798ce7","2018-04-08","docs: add hiccup-svg to main readme"],["7e0aeb68","2018-04-08","refactor(examples): update pointfree-svg"],["afccabdc","2018-04-08","feat(hiccup-svg): re-add svg fns as new @thi.ng/hiccup-svg package"],["86d1f0d9","2018-04-08","refactor(hdom-components): remove svg, update canvas (hdom context support)"],["a8a55a4f","2018-04-08","refactor(examples): major update router-basics (hdom context usage)"],["14b9cecc","2018-04-08","refactor(examples): update dashboard, hdom-basics & hdom-benchmark"],["70cfe06c","2018-04-08","feat(hdom): fix #13, add support for user context and pass to components"],["40d706b6","2018-04-07","feat(checks): add hasPerformance() check (performance.now)"],["d310345f","2018-04-07","feat(api): add bench() & timed() utils"],["4d79f763","2018-04-07","refactor(examples): add GestureEvent (rs-dflow)"],["c1c81bd0","2018-04-07","refactor(interceptors): update Event id type (string => PropertyKey)"],["37ba4d17","2018-04-05","refactor(examples): update rstream-dflow"],["a19f8a4d","2018-04-05","feat(examples): update rstream-dflow example"],["dccfc827","2018-04-05","docs(rstream): update readme"],["8ce73078","2018-04-05","refactor(examples): minor updates rstream-dflow"],["fce54223","2018-04-05","build(dgraph): import dgraph package stub to avoid travis build errors"],["8eb7e68c","2018-04-05","fix(examples): update GH links in html files"],["f9bfc9d7","2018-04-05","docs(hdom): update readme"],["56f4a26a","2018-04-05","docs: update dep graph"],["45c7daf4","2018-04-05","Publish"],["48310a68","2018-04-05","fix(rstream): correct wrong isString() import"],["9ab15442","2018-04-05","docs(examples): update doc strings"],["04b9c087","2018-04-05","docs(examples): update readme"],["23327874","2018-04-05","docs(examples): update rs-dflow example"],["ae27bd65","2018-04-05","refactor(examples): update rstream-dflow example"],["218150a9","2018-04-04","docs(examples): update readme, add dflow graph viz"],["72a96130","2018-04-04","feat(examples): add rstream-dataflow example"],["1eb8b12c","2018-04-04","docs: update dep graph"],["343956d3","2018-04-04","Publish"],["bffc4430","2018-04-04","fix(checks): add prototype check for isPlainObject(), add tests"],["9c91dc34","2018-04-03","fix(examples): minor update pointfree-svg example"],["9621f1b1","2018-04-03","docs: update dep graph"],["5276322a","2018-04-03","Publish"],["68727859","2018-04-03","Merge branch 'feature/pointfree-lang' into develop"],["ca5dfd3c","2018-04-03","docs(pointfree-lang): update readme"],["3310ec3d","2018-04-03","feat(pointfree-lang): implement dynamic var scoping & local var grammar"],["1c899a18","2018-04-03","refactor(pointfree-lang): rename grammar rule / nodetype MAP=>OBJ, add docs"],["5450e507","2018-04-03","fix(pointfree-lang): update grammar (parse order), add tests"],["769e84da","2018-04-03","feat(pointfree-lang): overhaul visitor quote/array & map handling, grammar"],["2101e926","2018-04-03","feat(pointfree): add math ops, update load/loadkey, update tests"],["26905f09","2018-04-02","refactor(examples): update pf svg example"],["ee684c7b","2018-04-02","feat(pointfree-lang): update grammar, aliases, ASTNode, NodeType"],["92d2d685","2018-04-01","refactor(pointfree): update/rename storeat => setat, update tests"],["68a8dba6","2018-04-01","feat(pointfree): add copy() word"],["42cc7786","2018-04-01","docs: update dep graph"],["996b5ff7","2018-04-01","Publish"],["4c7e9068","2018-04-01","docs: update all package readme's"],["cb7276e6","2018-04-01","chore: update make-module/example scripts"],["d4951f5e","2018-04-01","docs(examples): update all example readme's"],["c7521980","2018-04-01","build: add missing package descriptions, update yarn.lock"],["c2d22337","2018-04-01","Merge branch 'feature/examples-webpack' into develop"],["e2ac1852","2018-04-01","build: update dev dependencies for all packages & examples"],["bc264d39","2018-03-31","build(examples): update tsconfig for all examples"],["8273674d","2018-03-31","build(examples): update all examples to use webpack 4.4.*"],["1022ab67","2018-03-31","fix(examples): update stack comment for write-file"],["89ea6331","2018-03-31","fix(examples): update readme (pf-svg)"],["f3477690","2018-03-31","docs(pointfree-lang): update readme"],["7b5a36fd","2018-03-31","docs(examples): update example list"],["3f33b651","2018-03-31","refactor(examples): update pointfree-svg demo/readme"],["208b5c39","2018-03-31","fix(pointfree-lang): object literal grammar rule (allow initial WS)"],["910b7187","2018-03-31","feat(examples): add pointfree-svg demo"],["a0e0a0ca","2018-03-31","docs: update dep graph"],["6d836772","2018-03-31","Publish"],["659cce91","2018-03-31","fix(pointfree-lang): add ensureEnv, update re-exports, update readme"],["a0bf7810","2018-03-31","fix(pointfree): reexport ensureStack fns"],["b16c8500","2018-03-31","docs(pointfree-lang): fix readme link"],["fbb17957","2018-03-31","docs(pointfree-lang): fix grammar link"],["f2a56266","2018-03-31","docs: update main readme"],["430caf03","2018-03-31","docs: update dep graph"],["6f743ae1","2018-03-31","Publish"],["9e43405a","2018-03-31","docs: update pointfree readme's"],["32e2da0d","2018-03-31","docs: update dep graph"],["82008c38","2018-03-31","v0.1.0"],["d838610f","2018-03-31","Merge branch 'feature/pointfree-lang' into develop"],["0623df69","2018-03-31","build: add pegjs dev dependency"],["3dec35a8","2018-03-31","feat(pointfree-lang): initial import @thi.ng/pointfree-lang"],["5db90c53","2018-03-31","feat(pointfree): add caseq()"],["0da93da6","2018-03-29","docs: update dep graph"],["fdfbe425","2018-03-29","Publish"],["d47d0b36","2018-03-29","docs(pointfree): update readme"],["b096e436","2018-03-29","feat(pointfree): add more dataflow combinators, words & tests"],["c0a653b6","2018-03-29","docs(pointfree): update readme"],["9f866da4","2018-03-29","docs(pointfree): update readme"],["3dc30a8e","2018-03-29","feat(pointfree): add combinators, update controlflow words, remove execq"],["39b59677","2018-03-29","docs: update dep graph"],["6b5033f0","2018-03-29","Publish"],["6cbacec7","2018-03-29","feat(hdom-components): add svg line()"],["0baf1f8a","2018-03-29","docs(pointfree): update readme & package"],["fe1f3a3a","2018-03-29","test(pointfree): add tests"],["943b4f9c","2018-03-29","feat(pointfree): add new words, constructs, aliases, fix re-exports"],["221ece65","2018-03-29","build: update make-module/make-example scripts"],["6904d440","2018-03-28","docs: update dep graph"],["aa9439ef","2018-03-28","Publish"],["9b00a25f","2018-03-28","build: add benchmark dev dep"],["e35a2ca1","2018-03-28","build(paths): update package"],["e52b8693","2018-03-28","feat(pointfree): major update readme, package"],["0f0c382f","2018-03-28","feat(pointfree): add new words, rename words, remove mapnth, pushl2"],["10d5a347","2018-03-28","fix(pointfree): add 0-arity comp() (identity fn)"],["ba0bcc21","2018-03-27","refactor(pointfree): rename core words & change case"],["1c4cd2f3","2018-03-27","feat(pointfree): add rstack, update StackContext"],["50cc65fe","2018-03-26","build: update yarn scripts / add missing nyc dev dep"],["2b7e99b9","2018-03-26","fix(api): illegalState() creates IllegalStateError"],["1a01f9a0","2018-03-26","fix(pointfree): wordU(), add tests"],["3252554f","2018-03-26","feat(pointfree): further restructure, perf, add tests"],["a48361d6","2018-03-25","feat(pointfree): major refactor & restructure"],["d1564bb1","2018-03-25","docs(pointfree): update readme"],["79b4ce32","2018-03-25","feat(pointfree): update all words to return stack"],["f3f0bec1","2018-03-24","feat(pointfree): update word/wordU, add append(), tuple(), join()"],["06987133","2018-03-23","docs: update dep graph"],["c5bcdafa","2018-03-23","Publish"],["be9ba2fd","2018-03-23","Merge branch 'hotfix/pointfree'"],["f211c397","2018-03-23","fix(pointfree): fix readme/docs"],["51a6e500","2018-03-23","docs: update dep graph"],["0e4858c9","2018-03-23","Publish"],["15ffd34d","2018-03-23","test(pointfree): add tests"],["6cac0c7d","2018-03-23","feat(pointfree): support data vals in program, add collect(), update readme"],["f75486d4","2018-03-23","feat(pointfree): add unwrap, quatations, math/bitops, array/obj access"],["884a8bfa","2018-03-23","docs: update main readme/depgraph"],["e635dafd","2018-03-23","Merge branch 'feature/pointfree' into develop"],["4d4e5e1b","2018-03-23","v0.1.0"],["6aef8807","2018-03-23","build(pointfree): update package info"],["58f5716c","2018-03-23","feat(pointfree): add dropIf, neg, nop, update cond,condM, add docs/readme"],["25bbf05c","2018-03-22","feat(pointfree): initial import of refactored @thi.ng/pointfree package"],["92e4ff8f","2018-03-21","docs: update main readme"],["b153067c","2018-03-21","docs: update dep graph"],["fb42cb5a","2018-03-21","Publish"],["218c2304","2018-03-21","Merge branch 'feature/iwatch' into develop"],["ca099e57","2018-03-21","refactor(transducers): update error handling"],["8a3e72ee","2018-03-21","feat(rstream-log): update error handling, add @thi.ng/api dep"],["1ce7054f","2018-03-21","feat(rstream): update error handling, add @thi.ng/api dep"],["adc559ae","2018-03-21","refactor(router): update error handling"],["9316a6ca","2018-03-21","feat(iterators): update error handling, add @thi.ng/api dep"],["501d56f8","2018-03-21","feat(interceptors): update error handling, add @thi.ng/api dep"],["0cfc2270","2018-03-21","refactor(hiccup-css): update error handling"],["a3238abf","2018-03-21","feat(hiccup): update error handling, add @thi.ng/api dep"],["f5173f1d","2018-03-21","feat(hdom): update error handling, add @thi.ng/api dep"],["a046b285","2018-03-21","refactor(dcons): update error handling"],["5087ffe3","2018-03-21","refactor(cso): update error handling"],["0fc10388","2018-03-21","feat(bitstream): update error handling, add @thi.ng/atom dep"],["ea7b1752","2018-03-21","refactor(atom): update error handling"],["4d3785f9","2018-03-21","feat(api): add error types & ctor fns"],["d93940a4","2018-03-21","feat(atom): consider parent validators in History update fns"],["3b1d563a","2018-03-21","feat(atom): add CursorOpts and cursor validation, update ctor, add tests"],["bae1647c","2018-03-21","feat(atom): add optional validation predicate for Atom, add tests"],["47643f96","2018-03-21","test(api): add INotify tests"],["b3287808","2018-03-21","refactor(router): update INotify dummy impl"],["fbb19acd","2018-03-21","refactor(api): update mixins, IEnable / INotify return types"],["0d67e73e","2018-03-21","build: limit travis build branches"],["96bb0198","2018-03-21","docs: update dep graph"],["b2778585","2018-03-21","Publish"],["2a1264a2","2018-03-21","refactor(rstream-log): update Logger ctor arg handling"],["e58c5e01","2018-03-21","Merge branch 'feature/rstream-refactor' into develop"],["deb59a15","2018-03-21","docs(rstream): update readme, add dataflow example"],["276ede6a","2018-03-20","docs(rstream): update readme"],["907d5995","2018-03-20","feat(rstream): add IDeref impl for Subscription"],["1fee7d5c","2018-03-20","feat(rstream): add merge()/sync() ctor wrappers"],["eec56dec","2018-03-20","feat(rstream): add transduce(), update re-exports"],["42b343aa","2018-03-20","test(rstream): add StreamSync & Subscription tests"],["26f15b23","2018-03-20","refactor(rstream): simplify unsubscribe() logic"],["a1c58418","2018-03-20","docs(rstream): add Cache deprecation docstring"],["6b87bca4","2018-03-20","feat(rstream): Subscription stores last value and passes to new subs"],["ebe222c9","2018-03-20","refactor(rstream): update & StreamMerge/SyncOpts, minor fixes StreamSync"],["80264093","2018-03-20","feat(rstream): fix #6 update StreamMerge to support transduced input streams"],["db61b0bd","2018-03-20","test(rstream): add/update sidechain* tests"],["d18a1158","2018-03-20","feat(rstream): update Sidechain*.next(), add unsubscribe()"],["7dce160c","2018-03-20","minor(rstream): fromPromise()"],["41bb385f","2018-03-20","feat(rstream): add fromView(), update fromAtom() docs, update re-exports"],["01a751e2","2018-03-20","feat(rstream): update Subscription.unsubscribe()"],["2ad2f485","2018-03-20","fix(rstream): bisect() add downstream impl checks, add tests"],["6f5ec040","2018-03-20","test(rstream): remove obsolete fromPromise error test case"],["47b6a924","2018-03-20","refactor(rstream): simplify Subscription, update all impls"],["64c16255","2018-03-19","Merge branch 'develop' into feature/rstream-refactor"],["5bf5ce61","2018-03-19","docs: update dep graph"],["1c5d96f7","2018-03-19","Publish"],["ff802a45","2018-03-19","refactor(rstream): simplify StreamMerge source handling"],["f7029efd","2018-03-19","refactor(rstream): minor cleanup/perf StreamSync"],["791a993f","2018-03-19","feat(rstream): add StreamSync"],["c7364334","2018-03-19","refactor(rstream): add/update Stream ctor arities"],["abc195a4","2018-03-19","feat(transducers): add mapVals() xform"],["3bc8d54a","2018-03-19","refactor(transducers): update labeled(), mapIndexed(), partition()"],["bebd1186","2018-03-19","feat(transducers): add partitionSync() xform"],["627dd7a4","2018-03-19","docs: update dep graph"],["b316114f","2018-03-19","Publish"],["76c5e0a4","2018-03-19","fix(interceptors): InterceptorPredicate args"],["dbb046e8","2018-03-18","docs: update dep graph"],["a69b5141","2018-03-18","Publish"],["c0ec2745","2018-03-18","feat(atom): add optional support for eager views, update tests/readme"],["f295a475","2018-03-18","build(examples): update all @thi.ng deps to use \"latest\""],["4e91374b","2018-03-18","docs: update dep graph"],["6b92bf67","2018-03-18","Publish"],["eaeccf47","2018-03-18","fix(paths): fix setter fast paths"],["e022cdf0","2018-03-18","docs: update dep graph"],["8cee5b5f","2018-03-18","Publish"],["92f0e27e","2018-03-18","fix(paths): fix setIn fast paths for path length 3/4"],["2376e02f","2018-03-18","build: fix changelogs for atom/interceptors/paths"],["4c0212fb","2018-03-18","docs(resolve-map): fix link in readme"],["b6a8da58","2018-03-18","build(examples): update deps & imports for all examples"],["2c1a85bc","2018-03-17","docs: update dep graph"],["c3cac0c0","2018-03-17","Publish"],["1e7ef2b6","2018-03-17","build: fix atom deps in downstream packages"],["8281609c","2018-03-17","minor(atom): fix typo in package"],["a41a208e","2018-03-17","v1.0.0"],["9a1cc521","2018-03-17","docs: update dep graph"],["c0c3e64c","2018-03-17","v1.0.0"],["0d13982c","2018-03-17","v0.1.0"],["95f6b392","2018-03-17","Merge branch 'feature/lazymap' into develop"],["d34bd146","2018-03-17","build: update make-module script (deps)"],["e1cf4aba","2018-03-17","docs(interceptors): update readme"],["9a651cd9","2018-03-17","docs(atom): update readme"],["1273efbd","2018-03-17","refactor(atom): extract @thi.ng/paths & @thi.ng/interceptors functionality"],["763ea89f","2018-03-17","docs: update package list in main readme"],["195a6ffd","2018-03-17","feat(interceptors): add/extract @thi.ng/interceptors package from @thi.ng/atom"],["422c2c4e","2018-03-17","feat(resolve-map): add @thi.ng/resolve-map package"],["f9f6eb1e","2018-03-17","feat(paths): add/extract @thi.ng/paths from @thi.ng/atom"],["d3d66436","2018-03-16","refactor(examples): update router-basics"],["f1bc74d2","2018-03-16","docs: update readme files (add create-hdom-app instructions)"],["8596cd07","2018-03-16","docs: update dep graph"],["6383233e","2018-03-16","Publish"],["357c46e0","2018-03-16","feat(atom): add forwardSideFx() interceptor"],["e52e7e51","2018-03-16","feat(atom): add FX_FETCH & FX_DELAY sidefx impl, update docs"],["6378eb0b","2018-03-15","fix(examples): re-add html"],["633093ea","2018-03-15","refactor(examples): update router-basics (create-hdom-app tpl)"],["6deb4e33","2018-03-14","build(examples): update hdom deps"],["c0432cb4","2018-03-14","docs: update dep graph"],["fff77886","2018-03-14","Publish"],["3a0e97d2","2018-03-14","test(hdom): add tests, update package"],["25d0c309","2018-03-14","test(hiccup): add deref tests"],["14356895","2018-03-14","Merge branch 'feature/hdom-deref' into develop"],["c85b1f81","2018-03-14","refactor(examples): remove obsolete .deref() calls"],["93343d63","2018-03-14","feat(hiccup): support fn values in style objects"],["28b0b578","2018-03-14","refactor(hdom): disable deref() for attrib objects"],["de839e89","2018-03-14","refactor(hiccup): disable deref() for attrib objects"],["0fe6c44c","2018-03-14","feat(hdom): add auto deref() support"],["0d2c16fc","2018-03-14","feat(hiccup): add auto deref() support"],["2351240d","2018-03-14","minor(examples): typo"],["c5cee483","2018-03-12","minor(examples): readme"],["15acdb5c","2018-03-12","minor(examples): typos"],["ee118999","2018-03-12","docs(examples): update readme"],["8eb0a610","2018-03-12","docs(examples): add README for example dir"],["fc61aae6","2018-03-12","minor(examples): add filesize info"],["777b1b05","2018-03-11","refactor(examples): more stateless components, add docs"],["49008ccf","2018-03-11","docs(examples): update readme"],["eb73ae93","2018-03-11","refactor(examples): update router demo"],["5b412e7d","2018-03-11","docs: update dep graph"],["a9b09f16","2018-03-11","Publish"],["10ea19f5","2018-03-11","docs(atom): update readme & doc strings"],["0ca0bf3e","2018-03-11","fix(atom): ignore side fx with null values"],["5e8cbc98","2018-03-11","docs: update dep graph"],["e62dace5","2018-03-11","Publish"],["bd8c8b1e","2018-03-11","Merge branch 'feature/router' into develop"],["eac0e96f","2018-03-11","docs(router): update readme & package"],["71b19a43","2018-03-10","feat(examples): major update router example app"],["d8b8d978","2018-03-10","docs: add router package links to main readme"],["51b02e2b","2018-03-10","feat(examples): add router-basics demo"],["07b4e060","2018-03-10","feat(router): re-import router package (MBP2010), minor refactor & fixes"],["019943e2","2018-03-09","docs: update dep graph"],["95d6a4e2","2018-03-09","Publish"],["c7e69def","2018-03-09","refactor(examples): minor updates"],["3fae2496","2018-03-09","feat(atom): add/extract StatelessEventBus"],["667691ce","2018-03-09","feat(atom): update EventBus ctor, add deref()"],["59085e0c","2018-03-09","fix(atom): add interceptors to re-exports"],["9b3d91e5","2018-03-09","feat(atom): add IRelease impls"],["3bf9fbaa","2018-03-09","docs(atom): update all doc strings"],["e96cc991","2018-03-09","refactor(atom): minor update event bus, add/update docs"],["15ae0643","2018-03-09","docs: update dep graph"],["a26e25cf","2018-03-09","Publish"],["a48b7762","2018-03-08","refactor(examples): update async-effect"],["4d7613d8","2018-03-08","refactor(examples): update interceptor-basics"],["fb9b19c4","2018-03-08","docs(atom): minor update View docs"],["359c4f5a","2018-03-08","feat(atom): add valueSetter/Updater() interceptors"],["443875c8","2018-03-08","refactor(atom): update InterceptorFn handling"],["1fd43d7c","2018-03-08","feat(atom): add default handlers, add/rename event/fx const values, add checks"],["c5d5ed56","2018-03-08","build(examples): update all deps"],["89a0b20d","2018-03-08","docs: update dep graph"],["f018fb12","2018-03-08","Publish"],["cb9c808e","2018-03-08","Merge branch 'feature/atom-async-dispatch' into develop"],["a6beda9d","2018-03-08","refactor(examples): update async & interceptor demos"],["3303c3b4","2018-03-08","docs(atom): update readme"],["56866e07","2018-03-08","feat(atom): add async dispatch effect, update event bus & api types"],["9900e991","2018-03-08","feat(checks): add isPromise() & isPromiseLike()"],["fb4f3095","2018-03-08","docs: update dep graph"],["99a87e6a","2018-03-08","Publish"],["52fff093","2018-03-08","docs(examples): update async readme & html"],["c9794acb","2018-03-07","feat(examples): add async fx example"],["9e5239bc","2018-03-07","fix(atom): add EventBus to module re-exports, minor cleanup"],["5b21c147","2018-03-07","build(examples): update interceptor deps"],["7dcfce05","2018-03-07","refactor(examples): update interceptor example"],["85e04957","2018-03-07","docs: update dep graph"],["851efd23","2018-03-07","Publish"],["1adb703a","2018-03-07","refactor(examples): update interceptor example"],["1ab803aa","2018-03-07","refactor(atom): update InterceptorFn, ensureXXX(), update deps, add docs"],["eec7bc4c","2018-03-07","docs: update dep graph"],["b877a069","2018-03-07","Publish"],["fb74b8a7","2018-03-07","Merge branch 'feature/iceps' into develop"],["4958606b","2018-03-07","feat(examples): add interceptors example"],["a0d662bb","2018-03-07","build(atom): add @thi.ng/dcons dep"],["e01bf733","2018-03-07","feat(atom): re-add refactored EventBus & interceptor handling"],["be46af3f","2018-03-06","feat(examples): add svg viz to devcards demo"],["79245a35","2018-03-05","minor(examples): typos"],["f40143be","2018-03-05","fix(examples): add/update devcard links"],["8019df82","2018-03-05","build(examples): add missing html/webpack files, update deps"],["9becd43d","2018-03-05","Merge branch 'master' of github.com:thi-ng/umbrella"],["58e75591","2018-03-05","docs: update dep graph"],["f38885de","2018-03-05","Publish"],["df4e98fb","2018-03-05","Merge branch 'feature/ex-mstates' into develop"],["1041d90c","2018-03-05","feat(examples): add devcards example"],["a200beb8","2018-03-05","feat(hdom): add support for frame skipping, add docs"],["a7e61a4e","2018-03-05","feat(atom): update IAtom, add resetIn() & swapIn() impls"],["17a11710","2018-03-05","Merge branch 'feature/hcss-refactor' into develop"],["22bc29c9","2018-03-05","docs(hiccup-css): add doc strings for attrib fns"],["721583a7","2018-03-05","refactor(hiccup-css): internal restructure"],["34d699fc","2018-03-05","chore: update issue tpl instructions"],["dd09f0bf","2018-03-05","docs: update dep graph"],["203a3a6e","2018-03-05","Publish"],["2e3942ac","2018-03-05","docs(hiccup-css): add doc strings, update readme"],["105bbf4e","2018-03-05","perf(hiccup-css): no empty Set() creation, change type check order in css()"],["870da99d","2018-03-05","docs: update readme"],["0c23d2b6","2018-03-05","docs: update dep graph"],["1e08ce24","2018-03-05","v0.1.0"],["69036ad1","2018-03-05","minor(hiccup-css): update package desc"],["5d946cb0","2018-03-05","Merge branch 'develop'"],["d6f8b066","2018-03-05","Merge branch 'feature/hiccup-css' into develop"],["8a665313","2018-03-05","build(hiccup-dom): update ignore files"],["bafb533e","2018-03-05","docs(hiccup-css): update readme"],["24983d37","2018-03-05","test(hiccup-css): update tests"],["0f416efe","2018-03-05","feat(hiccup-css): add comment() indentation support"],["f3190fff","2018-03-05","fix(hiccup-css): fn & auto-prefix handling"],["787d0aba","2018-03-05","feat(hiccup-css): add more unit types, update px/ms"],["02bff871","2018-03-05","feat(hiccup-css): add support for iterators as arg type to css()"],["cbb9b7f0","2018-03-04","test(hiccup-css): add/update tests"],["a6231172","2018-03-04","refactor(hiccup-css): format @keyframe stops, rename perc() => percent()"],["e347c292","2018-03-04","fix(hiccup-css): @import query separator"],["57533c76","2018-03-04","feat(hiccup-css): update conditional handling, add formatCond()"],["428de3c7","2018-03-04","feat(hiccup-css): update fn handling, add iterator support, units, comment"],["bdc63496","2018-03-04","minor: fix typos"],["c20f2df6","2018-03-04","Create CONTRIBUTING.md"],["6de6b279","2018-03-03","perf(hiccup-dom): minor optimizations"],["ebbc4910","2018-03-03","feat(hiccup-css): add attrib fn, at-rules, quoted fns, decl value arrays"],["e687230c","2018-03-03","feat(hiccup-css): add default vendor prefixes"],["a53d2a5f","2018-03-03","feat(hiccup-css): add keyframes(), split module into separate src files"],["d837199d","2018-03-03","feat(hiccup-css): add CSSOpts, mediaQuery(), fn expansion"],["5247b8f4","2018-03-03","feat(hiccup-css): add/fix class handling, update Format"],["3a4cf1e6","2018-03-03","feat(hiccup-css): add package @thi.ng/hiccup-css"],["92fb7b07","2018-03-03","chore(examples): update links in html files"],["b6d350b3","2018-03-03","docs: update dep graph"],["6c628213","2018-03-03","docs(hdom): fix diagram link"],["db98e5e5","2018-03-03","chore: update make-example"],["2f5f0b2e","2018-03-03","build(examples): update all example deps"],["45291b3d","2018-03-03","Publish"],["9099607d","2018-03-03","docs: update readme's"],["752a78bb","2018-03-03","feat(hdom-components): rename package hiccup-dom-component => hdom-components"],["79e1b097","2018-03-03","docs(hdom): update readme"],["f1c53150","2018-03-03","refactor(hdom): rename package hiccup-dom => hdom"],["ae47c4db","2018-03-03","docs: update dep graph"],["e405ebdf","2018-03-03","Publish"],["8c180bc6","2018-03-03","refactor(transducers): extract compR() into its own file, update refs, update readme"],["2f5abce3","2018-03-02","refactor(transducers): update swizzler() arg types"],["488462e1","2018-03-02","refactor(transducers): update permutations()/permutationsN(), add tests"],["91938ede","2018-03-02","feat(transducers): add permutations()/permutationsN() generators"],["aa042602","2018-03-02","docs: update dep graph"],["3d8a6d3c","2018-03-02","Publish"],["2316d4d1","2018-03-02","test(transducers): add flatten() tests"],["3d8aa324","2018-03-02","fix(transducers): flattenWith()"],["befaceb0","2018-03-01","docs(atom): update readme example"],["3dcc3cb8","2018-03-01","docs(atom): update example"],["dd665920","2018-03-01","feat(examples): add login-form demo to illustrate state handling"],["118cf92f","2018-03-01","docs: update dep graph"],["1f61f49d","2018-03-01","Publish"],["ae7c7f5d","2018-03-01","docs(atom): update readme, add View examples"],["3e55a058","2018-03-01","fix(atom): re-export api.ts"],["341255c9","2018-03-01","refactor(atom): include `path` in IView"],["0206f339","2018-03-01","docs: update dep graph"],["5308cab5","2018-03-01","Publish"],["a0ce6e76","2018-03-01","refactor(atom): update Path type references"],["9ad83b27","2018-03-01","feat(atom): add IView, IViewable, impl for Atom, Cursor, History"],["1fa829d6","2018-03-01","test(atom): add/update tests"],["8c0c621c","2018-03-01","feat(atom): add View type to create derrived views/value subscriptions"],["55c6a7d5","2018-03-01","perf(atom): add optimized setter() for path len < 5, fix toPath()"],["ed23376d","2018-03-01","perf(atom): add optimized getters for path len < 5"],["ff21d9f4","2018-02-28","docs: update dep graph"],["6779def4","2018-02-28","Publish"],["a86b6775","2018-02-28","docs(hiccup-dom): fix readme link"],["ca17389c","2018-02-28","feat(hiccup-dom): add support for function attribs, add docs"],["050a5656","2018-02-28","docs(hiccup-dom): update initial readme example"],["c7e2f816","2018-02-27","Merge branch 'master' of github.com:thi-ng/umbrella"],["eafc5dd6","2018-02-27","build(examples): update deps"],["4a8feffc","2018-02-27","docs(hiccup-dom): fix #7, update readme"],["61e87665","2018-02-27","docs(hiccup-dom): update readme"],["9593fd13","2018-02-27","docs: update dep graph"],["b8a6e1af","2018-02-27","Publish"],["70720a37","2018-02-27","refactor(examples): minor updates"],["8a070ff2","2018-02-27","feat(hiccup-dom): start(), add optional spans arg"],["9b2c1606","2018-02-27","minor(hiccup-dom): update arg types"],["f5b66753","2018-02-27","feat(hiccup-dom): fix #11, update normalizeTree/normalizeElement"],["6e0dfa1d","2018-02-27","feat(diff): update diffArray, generic types"],["621868b4","2018-02-26","docs: update dep graph"],["9ff8c0af","2018-02-26","Publish"],["45d63858","2018-02-26","refactor(hiccup): sort void tags"],["9824844a","2018-02-26","feat(transducers): add keys()/vals() iterators, refactor pairs()"],["061c9088","2018-02-26","Merge pull request #12 from jarvismartin/minor-fix"],["f6143eb7","2018-02-25","Merge branch 'master' of github.com:thi-ng/umbrella into minor-fix"],["c34271f7","2018-02-24","docs: update dep graph"],["1b16d920","2018-02-24","Publish"],["44f33dfc","2018-02-24","feat(hiccup): add support for more SVG tags (66 total)"],["214fe4d0","2018-02-23","feat(hiccup-dom-components): add gradient, group, path SVG funcs"],["8180e149","2018-02-23","spelling fix"],["68d9f838","2018-02-23","Merge branch 'master' of github.com:thi-ng/umbrella"],["ca68a978","2018-02-23","minor grammar fix"],["b3891d52","2018-02-23","refactor(examples): simplify json-components"],["1834f812","2018-02-23","docs: update dep graph"],["8a620583","2018-02-23","Publish"],["2a11ff6f","2018-02-23","refactor(transducers): add TransformSubSpec, fix test, minor update docs"],["223669b1","2018-02-23","test(transducers): add tests"],["f0fdfa10","2018-02-23","feat(transducers): add deepTransform & mapDeep xform"],["65f794f6","2018-02-19","build: add .gitignore gen for make-example script"],["f7c6e0c9","2018-02-19","Merge pull request #10 from jarvismartin/example-gitignores"],["955eecc4","2018-02-19","add .gitignore files to examples"],["e1f87d6b","2018-02-19","fix(examples): update packages & readme's (fix #9), deps in make-example"],["c2123e58","2018-02-19","Merge pull request #9 from jarvismartin/examples-work-on-debian"],["31a4710a","2018-02-19","build(examples): update CA deps (transducers)"],["9b664d25","2018-02-19","refactor(examples): simplify CA transducers, update rule format/handling"],["2c2030d2","2018-02-19","docs: update dep graph"],["afa74728","2018-02-19","Publish"],["193058d5","2018-02-19","feat(transducers): add lookup1d/2d/3d helpers, update re-exports"],["813b2cac","2018-02-19","make examples work on Debian systems"],["77c95322","2018-02-19","refactor(examples): update webgl demo"],["73dd1dc5","2018-02-19","docs: update dep graph"],["9c8e877a","2018-02-19","build(examples): update CA deps"],["7f8c6cd0","2018-02-19","Publish"],["3627087b","2018-02-19","docs: add hiccup-dom-components to main readme"],["ac831234","2018-02-19","build(hiccup-dom-components): add missing deps"],["9fe096a3","2018-02-19","build: update yarn.lock"],["2394396e","2018-02-19","feat(examples): add CA presets, refactor rule handling"],["511c4980","2018-02-19","feat(hiccup-dom-components): initial import"],["df93af6d","2018-02-18","feat(examples): add randomize buttons (CA)"],["fde83d59","2018-02-18","build(examples): update example deps"],["b8c03743","2018-02-18","docs: update dep graph"],["06830ce6","2018-02-18","Publish"],["69b3c6a4","2018-02-18","docs: update readme files"],["074f94ff","2018-02-18","build: update deps"],["5a728cb9","2018-02-18","refactor(rstream-log): update Logger ctor due to changes in StreamMerge"],["4942e2ea","2018-02-18","feat(rstream): fix #8, support infinite StreamMerge's, update ctor"],["ca1caae5","2018-02-18","refactor(rstream): don't throw in unsubscribe() if no parent"],["5c106cfa","2018-02-18","docs(examples): add more CA config links"],["d6d3310d","2018-02-18","feat(examples): add cellular automata example"],["d023bd5f","2018-02-18","chore(transducers): update re-exports, readme"],["ab8a8558","2018-02-18","feat(transducers): add convolve2d xform & types"],["d7b1d0df","2018-02-18","feat(transducers): add movingMedian() xform"],["48f8bb85","2018-02-18","fix(transducers): update imports `step()`"],["63a49530","2018-02-18","refactor(transducers): add/update range2d/range3d arity handling"],["e71a4c90","2018-02-17","docs(atom): update readme"],["2e34f389","2018-02-17","refactor(atom): update history reset/swap, record before applying val"],["b593a9b9","2018-02-17","feat(atom): add deleteIn()"],["fbc819ed","2018-02-17","fix(atom): empty path handling getter/setter"],["7d50c1ca","2018-02-17","refactor(examples): simplify todo atom handling"],["b5ee8e45","2018-02-17","refactor(atom): use @thi.ng/api/equiv as default History predicate"],["398c32af","2018-02-17","refactor(atom): don't mutate getter/setter path args, update updateIn"],["6f6e7e5b","2018-02-17","feat(atom): add getIn/setIn/updateIn"],["d38f47e0","2018-02-16","test(transducers): add range2d tests"],["722042b1","2018-02-16","feat(transducers): add range2d / range3d generators"],["47d5df09","2018-02-15","chore: update issue tpl"],["c9ec713f","2018-02-15","Create issue_template.md"],["4d1de860","2018-02-08","docs: update dep graph"],["3fc88b25","2018-02-08","Publish"],["445c8575","2018-02-08","refactor(transducers): re-use even/odd from @thi.ng/checks"],["68f8fc23","2018-02-08","feat(checks): add new predicates, refactor existing"],["080c2ee5","2018-02-07","fix(csp): fix #5, more example fixes (rfn calls)"],["a10a487c","2018-02-07","fix(csp): fix #5, example in readme"],["972a23e1","2018-02-05","style: update const/let assignments"],["623bc492","2018-02-05","refactor(examples): update webgl demo"],["5281d9a8","2018-02-05","feat(examples): add webgl example"],["eb12a165","2018-02-04","build: update upload-docs script"],["3ee6755f","2018-02-04","fix(examples): minor fixes index.html"],["855d8039","2018-02-04","feat(transducers): add page() xform, update readme"],["596ed7a2","2018-02-04","docs: update dep graph"],["17e447f6","2018-02-04","Publish"],["1f4f4b8c","2018-02-04","fix(hiccup-dom): support parent DOM ID as arg start()"],["d8fea714","2018-02-03","docs: update dep graph"],["3daf7962","2018-02-03","Publish"],["4edf45fc","2018-02-03","fix(hiccup-dom): fix #3, update start() to be cancellable, add docs"],["ae34f077","2018-02-03","docs(hiccup-dom): fix readme link"],["b6d95fbe","2018-02-03","feat(examples): add json demo theme support, update docs"],["83cd1a21","2018-02-03","refactor(examples): minor update json-components"],["edfaa6bd","2018-02-03","build(examples): update deps"],["07da7cca","2018-02-03","docs: update dep graph"],["c3b54f98","2018-02-03","Publish"],["b524145b","2018-02-03","feat(examples): add reactive json editor component"],["10c119b2","2018-02-03","refactor(hiccup-dom): minor update ILifeCycle"],["944cbb3b","2018-02-03","fix(hiccup-dom): add NO_SPANS config"],["d8fa4cae","2018-02-03","fix(examples): update index.html"],["d5460b70","2018-02-03","docs(hiccup-dom): update readme"],["5d8478e1","2018-02-03","fix(examples): add missing files"],["3156e888","2018-02-03","fix(examples): update deps"],["2e4e51c5","2018-02-03","feat(examples): add json component demo"],["f30579ce","2018-02-03","Merge branch 'master' of github.com:thi-ng/umbrella"],["adb04f07","2018-02-03","merge with #2"],["c09bb89d","2018-02-03","docs(hiccup-dom): add svg example links"],["aa48d3be","2018-02-03","feat(examples): add svg particles demo"],["1b007e69","2018-02-03","Merge pull request #2 from forresto/patch-1"],["7ae6af3b","2018-02-02","Is c 3 here?"],["96004efe","2018-02-03","docs(atom): fix readme example"],["8ebc6242","2018-02-03","docs(atom): update readme"],["ad62c56f","2018-02-03","build(examples): update deps"],["5aed12b6","2018-02-03","docs: update dep graph"],["99a943ac","2018-02-03","Publish"],["8106d16f","2018-02-02","build: update main package build commands, update make-example script, readme"],["309c7d7c","2018-02-02","build(examples): update example build commands"],["29267799","2018-02-02","refactor(examples): update event attribs"],["7cc5c93a","2018-02-02","refactor(hiccup-dom): update event attrib naming convention, update readme"],["7ae706eb","2018-02-02","feat(hiccup): skip fn exec for event attribs, update tests, readme"],["ab7154a8","2018-02-02","docs(hiccup-dom): update readme"],["38699b96","2018-02-02","docs(hiccup-dom): add diagram"],["62af1537","2018-02-02","docs: update dep graph"],["ec0132c6","2018-02-02","Publish"],["d134d5b7","2018-02-02","refactor(hiccup-dom): add interfaces (still unused)"],["324d2fa2","2018-02-02","docs(examples): add benchmark docs"],["448e8396","2018-02-02","perf(diff): add fail fasts"],["98485760","2018-02-02","refactor(checks): isPlainObject()"],["110a9deb","2018-02-02","fix(api): update compare() & equiv()"],["0f57ff90","2018-02-02","docs(atom): update readme, add history example"],["10d9ecbf","2018-02-02","docs(hiccup-dom): fix example link"],["17b43036","2018-02-02","docs(hiccup-dom): update readme"],["d573bc53","2018-02-02","docs: update hiccup* readme files"],["7cfca0d8","2018-02-02","docs: update main readme"],["e4f8fe16","2018-02-02","docs(hiccup-dom): update readme"],["c2fed170","2018-02-02","feat(examples): add hdom-basics example"],["5e6eb832","2018-02-02","chore: add make-example script"],["e69774df","2018-02-02","fix(examples): benchmark"],["e939586a","2018-02-02","feat(examples): add hdom benchmark"],["0a41be9e","2018-02-01","docs: fix readme"],["afb869b0","2018-02-01","docs: add/update readme files"],["d52630c6","2018-02-01","docs: update dep graph"],["10a4f910","2018-02-01","Publish"],["12590847","2018-02-01","docs: update dep graph"],["24ea4ca9","2018-02-01","docs: update readme files"],["25c9f785","2018-02-01","feat(atom,hiccup-dom): add example projects (todo list & dashboard)"],["1f6bb589","2018-02-01","fix(hiccup-dom): boolean attribs"],["8218814f","2018-02-01","fix(atom): truncate redo stack in record(), swap() return type"],["c5b6e0fa","2018-02-01","feat(atom): add History.canUndo/Redo()"],["36cc9561","2018-02-01","fix(atom): cursor swap() return type"],["094e4869","2018-02-01","docs(hiccup-dom): fix links in readme"],["d373cab1","2018-02-01","docs: update main readme"],["00ad5d84","2018-02-01","docs: update dep graph"],["794b1fd5","2018-02-01","Publish"],["326d3c31","2018-02-01","build: update .npmignore"],["3101698d","2018-02-01","feat(hiccup-dom): add start(), update readme"],["beebe435","2018-02-01","chore: update keywords for all packages"],["5d7c10a3","2018-02-01","test(rstream): fix tests (TS 2.7.*)"],["4cc4bbc0","2018-02-01","build: cleanup/update deps"],["30ffd009","2018-02-01","feat(hiccup-dom): re-import package (MBP2010)"],["4d0d437b","2018-02-01","feat(diff): re-import diff package (MBP2010)"],["0439d24b","2018-02-01","refactor(hiccup): update/add deps, restructure/split into sub-modules"],["febe39f1","2018-02-01","fix(transducers): update comp() for typescript 2.7.*"],["a580f722","2018-02-01","build: update deps (typescript & typedoc)"],["ea638bef","2018-02-01","feat(rstream): add Cache subscription class"],["1354e298","2018-02-01","fix(api): fix equiv string handling, update tests"],["878520e6","2018-02-01","feat(api): update equiv() null handling, add tests"],["03c1d97a","2018-01-31","docs: update dep graph"],["5a3c0cce","2018-01-31","Publish"],["59d2a8a1","2018-01-31","docs(rstream): add undo/redo example to readme"],["54cd5261","2018-01-31","fix(rstream): subscription unhandled error handling"],["4c703cd4","2018-01-31","docs: update dep graph"],["92a923cf","2018-01-31","Publish"],["365e0d2b","2018-01-31","build: update main package commands"],["d58cf70d","2018-01-31","feat(rstream): add changed predicate for fromAtom(), add tests"],["dd155dfd","2018-01-31","docs(atom): add docs for getter/setter"],["55383621","2018-01-31","feat(atom): add full IAtom impl for History, update tests"],["4753afb8","2018-01-31","refactor(transducers): use Predicate2"],["79989e52","2018-01-31","refactor(dcons): use Predicate"],["42bbb864","2018-01-31","refactor(iterators): use Predicate/Predicate2"],["fbf8453c","2018-01-31","feat(api): add Predicate2 & StatefulPredicate2 types"],["b180917c","2018-01-31","docs: update dep graph"],["2746e8b3","2018-01-31","Publish"],["911ff183","2018-01-31","test(atom): add/update tests"],["e1b57dea","2018-01-31","feat(atom): add IReset/ISwap impls for History"],["282d9896","2018-01-31","fix(atom): cursor ctor arg checks"],["74ecdf18","2018-01-31","refactor(atom): extract IReset, ISwap from IAtom"],["035c51a3","2018-01-31","feat(atom): add History, add/update tests"],["2c88537e","2018-01-30","fix: links in readme"],["bbbc869c","2018-01-30","deploy: add upload-docs script"],["dee5f53c","2018-01-30","docs: update readme"],["da037723","2018-01-30","docs: update dep graph"],["95c728e0","2018-01-30","Publish"],["7f345bcc","2018-01-30","chore: update make-module"],["22b02a2d","2018-01-29","build: add main package commands, update readme"],["768f2ea7","2018-01-29","chore: update ignore files"],["0b5ca037","2018-01-29","build: add nyc coverage dev deps & commands"],["dc0958b7","2018-01-29","chore: update ignore files"],["c863018c","2018-01-29","test(iterator): add/update tests"],["f6530225","2018-01-29","docs: update dep graph"],["a508b05e","2018-01-29","Publish"],["4c242c93","2018-01-29","test(rstream): remove sidechainPartition interval test due to unpredictable timing"],["382aa05e","2018-01-29","fix(rstream): fatal recursion w/ error handling"],["1a0004f7","2018-01-29","test(rstream): increase timeout for travis"],["7bdc5617","2018-01-29","docs(iterators): update readme"],["651d07c0","2018-01-29","refactor(iterators): remove default exports"],["1e9dc852","2018-01-29","docs: add links for badges"],["925645ae","2018-01-29","docs: add travis badge"],["2d42787c","2018-01-29","build: update travis.yml"],["dfbd7efe","2018-01-29","docs(transducers): update padLast docs"],["e6477679","2018-01-29","test: add travis.yml, update main package / readme"],["9c2db625","2018-01-29","chore: update make-module script"],["6a125e83","2018-01-29","test: add test stubs, fix existing"],["b952a357","2018-01-29","build: update/fix all tsconfig files"],["85b280bf","2018-01-29","build: update commands in all packages"],["94333dfd","2018-01-29","test(atom): add/update tests"],["17d5c999","2018-01-29","docs: update dep graph"],["83b6e1a1","2018-01-29","Publish"],["5dce8a2f","2018-01-29","feat(atom): add nested path getter / setter compilers"],["1ae5f635","2018-01-29","docs: update dep graph"],["1ef8b45d","2018-01-29","Publish"],["b526376c","2018-01-29","docs: update readme"],["71c40ad0","2018-01-29","docs: update readme"],["ccd8e820","2018-01-29","test(rstream): update tests (fromPromise())"],["822b297f","2018-01-29","fix(rstream): fix #1 update fromPromise(), add test"],["33b3e16c","2018-01-29","chore: update package cmds & make-module script"],["1abd3cd1","2018-01-29","chore: add license files"],["0abfc62d","2018-01-29","docs(all) update dep graph"],["435c771f","2018-01-29","Publish"],["cca801b7","2018-01-29","fix(atom): cursor IWatch impls (replace stubs)"],["318e62ba","2018-01-29","docs: update main readme"],["5ca9b983","2018-01-29","chore: update make-module script"],["e45f3bd7","2018-01-29","chore(all): update depgraph commit msg format"],["d774e324","2018-01-29","perf(transducers): avoid result object cloning in struct() xform"],["ac12051f","2018-01-29","update dep graph"],["28771016","2018-01-29","Publish"],["1bc6ee6f","2018-01-29","build(rstream-csp): minor fix package & readme"],["ca3994ad","2018-01-29","feat(rstream): add atom dep, add fromAtom() & docs"],["04c3d592","2018-01-29","feat(atom): add Cursor, update interfaces, types, readme"],["52c25a84","2018-01-28","build(all): add tslint workspace dev dependency"],["fefc2835","2018-01-28","feat(atom): re-import atom package from MBP2010, update main readme"],["bddd5ce7","2018-01-28","feat(api): update IWatch & mixin, boolean returns"],["55ba0e13","2018-01-28","feat(rstream): add fromPromises(), add docs"],["2247f72f","2018-01-28","feat(rstream): add trace() error handler"],["ababaa1c","2018-01-28","docs(all): update readme"],["68e38136","2018-01-28","update dep graph"],["a87badef","2018-01-28","Publish"],["f83bd18e","2018-01-28","docs(rstream-csp): fix readme example"],["a6e49b34","2018-01-28","build(all): fix depgraph command in main package"],["d376f872","2018-01-28","update dep graph"],["8b53d6e1","2018-01-28","Publish"],["079a052c","2018-01-28","docs(all): update main readme, add dep graph"],["03ad992a","2018-01-28","chore(all): update ignore files"],["eb49e575","2018-01-28","test(csp): update test examples"],["13f0bd12","2018-01-28","test(hiccup): refactor all tests"],["c677539f","2018-01-28","build(all): update lerna config, main package, add make-module script"],["fcd01ba6","2018-01-28","build(rstream-log): update deps"],["28eee5f3","2018-01-28","build(transducers): update deps"],["174aaba7","2018-01-28","docs(transducers): update readme & doc comments"],["c2211223","2018-01-28","docs(rstream): update readme & doc comments"],["e37f6a13","2018-01-28","feat(rstream-csp): add new package, remove CSP dep from rstream"],["c74353b1","2018-01-28","feat(api): add StatefulPredicate"],["7b21aa64","2018-01-27","feat(transducers): add noop() xform, update readme"],["44db970b","2018-01-27","fix(transducers): scan() complete handling"],["b7c62341","2018-01-27","docs(transducers): update readme, add docs"],["45d6bc66","2018-01-27","feat(transducers): update re-exports, extract throttleTime() into own file"],["8e5204d2","2018-01-27","fix(transducers): add \"complete\" step handling in scan()"],["e1a282cb","2018-01-27","feat(transducers): update throttle(), refactor take/dropNth"],["0b3c7860","2018-01-27","feat(transducers): add labeled() xform"],["931b67f7","2018-01-27","feat(transducers): add multiplexObj()"],["63344e45","2018-01-27","feat(transducers): add every(), some() rfns"],["e555ff55","2018-01-27","feat(transducers): update re-exports, minor update reductions()"],["4b8d037a","2018-01-27","feat(transducers): update frequencies() & groupByMap()"],["e268e356","2018-01-27","refactor(transducers): rename join() => str() rfn"],["beb2cee8","2018-01-27","feat(transducers): add multiplex() xform & docs"],["1f32fc0c","2018-01-27","feat(transducers): update step() to support multiple results"],["58f14775","2018-01-27","refactor(transducers): udate cat() to accept iterables, not just arrays"],["e50fa261","2018-01-27","feat(transducers): add utf8Encode()/utf8Decode() xforms"],["57ceecee","2018-01-26","Publish"],["76c67349","2018-01-26","fix(rstream-log): imports"],["eb31ec6a","2018-01-26","build(rstream): 0.5.1 publish"],["22f1b6af","2018-01-26","build(all): fix repo links in all packages"],["c776df18","2018-01-26","build(all): fix pub script aliases"],["32fc705a","2018-01-26","Publish"],["de4e8192","2018-01-26","refactor(rstream): allow extra props in ISubscriber"],["fdc08897","2018-01-26","test(rstream): update promise tests"],["4bb9f918","2018-01-26","fix(rstream): Resolver error/rejection handling"],["23e38f79","2018-01-26","fix(rstream): only handle done() in IDLE or ACTIVE states, else ignore"],["b4f87853","2018-01-26","test(rstream): add/update tests"],["3d2f8b91","2018-01-26","fix(rstream): fromPromise() error handling"],["a0647fed","2018-01-26","refactor(rstream): update/fix Subscription.error() handling"],["3172eb6d","2018-01-26","test(rstream): add transducer test"],["9cf95541","2018-01-26","refactor(rstream): change SidechainToggle ctor arg order, add tests"],["d36a9ff8","2018-01-26","feat(rstream): add fromIterableSync()"],["f1956922","2018-01-26","feat(rstream): Stream calls done() w/ last unsub"],["0039ef38","2018-01-26","test(rstream): add/update tests"],["ec985b33","2018-01-26","feat(rstream): make Stream source arg optional"],["d3cbda2a","2018-01-26","test(rstream): add/update tests"],["91e8cad5","2018-01-26","feat(rstream): update StreamMerge"],["887c29bb","2018-01-26","refactor(rstream): add Subscription.ensureState()"],["7d066773","2018-01-26","test(rstream): add tests for fromIterable()"],["8019422f","2018-01-26","feat(rstream): add DEBUG flag to toggle tracing"],["ad548627","2018-01-25","feat(rstream): allow partial ISubscriber's for subscribe()"],["55c3b041","2018-01-25","fix(rstream-log): update module re-exports"],["5c85ab9b","2018-01-25","fix(rstream): update fromPromise() cancellation"],["0f601d5c","2018-01-25","fix(rstream): Stream.cancel()"],["19f27b94","2018-01-25","refactor(rstream): update ISubscriber.error() impls"],["0acf4e22","2018-01-25","Publish"],["f6ca3f33","2018-01-25","feat(rstream): add sidechainToggle(), minor update sidechainPartition()"],["2557c3b3","2018-01-25","Publish"],["4048bec4","2018-01-25","feat(rstream-log): add support for body formatter (formatString()), add type aliases"],["bc26d097","2018-01-25","feat(rstream-log): add node check for writeFile()"],["8304c825","2018-01-25","feat(rstream-log): add ILogger"],["eef65b9e","2018-01-25","fix(rstream): don't throw resolve() error, only warning msg"],["4e5a2ee1","2018-01-25","feat(rstream): add fromRAF() fallback for node, add docs"],["592a2423","2018-01-25","fix(rstream): subscription generics if transducer is used"],["898be349","2018-01-25","Publish"],["007f361f","2018-01-25","docs(transducers): add/update docs"],["a2c3bc42","2018-01-25","refactor(transducers): update reverse(), add deps"],["0c116c1c","2018-01-25","refactor(transducers): simplify concat(), add docs"],["b3ce275b","2018-01-24","fix(transducers): include 1st val in benchmark()"],["75bb161c","2018-01-24","fix(transducers): base64 imports"],["e290d759","2018-01-24","fix(all): project links in readme files"],["dc145a55","2018-01-24","fix(main): readme"],["358d5abf","2018-01-24","Publish"],["00f9c12b","2018-01-24","update packages (npm publishConfig)"],["04ff6e9c","2018-01-24","feat(all): initial re-import as monorepo, update readme files, cleanup imports"]] \ No newline at end of file +[ + ["d990c3c2", "2019-02-08", "perf(geom-isoline): minor optimizations"], + ["3ed4ea12", "2019-02-07", "fix(hdom): fix #72, update normalizeElement()"], + [ + "2b3dd7f4", + "2019-02-05", + "feat(examples): dynamic chart width (package-stats)" + ], + ["0715665a", "2019-02-05", "docs(geom-voronoi): add example screenshot"], + ["74fb4d83", "2019-02-05", "Publish"], + ["3b7d8cee", "2019-02-05", "docs: update main readme"], + [ + "c4aaa82b", + "2019-02-05", + "build: update various geom packages (deps, tags & readmes)" + ], + [ + "134c353f", + "2019-02-05", + "Merge branch 'develop' of github.com:thi-ng/umbrella into develop" + ], + ["cf7dc3a3", "2019-02-05", "feat(bencode): re-import updated bencode pkg"], + ["f2612a6b", "2019-02-05", "feat(bencode): re-import updated bencode pkg"], + ["9d8dd32e", "2019-02-05", "refactor(vectors): update imports (zip)"], + [ + "7f4e3989", + "2019-02-05", + "refactor(geom-tessellate): update imports (zip)" + ], + ["5204a7fe", "2019-02-05", "refactor(geom): update imports (zip)"], + ["29045902", "2019-02-05", "refactor(color): update imports (zip)"], + [ + "f15ea5fc", + "2019-02-05", + "refactor(examples): update deps & imports in various examples" + ], + [ + "d1151cea", + "2019-02-05", + "refactor(transducers): deprecate & rename tuples() => zip()" + ], + [ + "a7c1ef7b", + "2019-02-05", + "refactor(transducers): migrate binary related ops to new package" + ], + [ + "02877c79", + "2019-02-05", + "feat(transducers-binary): extract as new pkg from @thi.ng/transducers" + ], + [ + "ae83bb29", + "2019-02-05", + "fix(transducers): ensure all vals in hexDump iterator version" + ], + ["57d4488a", "2019-02-05", "feat(math): add PHI const"], + ["8d61b710", "2019-02-05", "refactor(examples): minor update iso-plasma"], + ["678c3ff0", "2019-02-02", "refactor(examples): update iso-plasma"], + ["37fb295f", "2019-02-02", "feat(examples): add iso-plasma demo"], + ["bd1754d5", "2019-02-01", "feat(geom-accel): add selectVals() impl"], + [ + "4bde37e1", + "2019-02-01", + "feat(geom-api): add ISpatialAccel.selectVals()" + ], + ["13f655a6", "2019-02-01", "docs: update main readme"], + [ + "d7ccc887", + "2019-02-01", + "refactor(vector-pools): update AttribPool & VecPool ctors" + ], + [ + "6d15686a", + "2019-02-01", + "refactor(malloc): update MemPoolOpts & MemPool ctor args" + ], + [ + "e30b2111", + "2019-02-01", + "feat(geom-isoline): import package (ported from clojure)" + ], + [ + "b7d162fa", + "2019-02-01", + "feat(vector-pools): update & fix AttribPool resize logic" + ], + ["1b72d1d4", "2019-01-31", "build: update deps in unreleased packages"], + ["3529c2f3", "2019-01-31", "Merge branch 'master' into develop"], + ["50a5098a", "2019-01-31", "Publish"], + [ + "3adabc4d", + "2019-01-31", + "fix(strings): fix #70, replace kebab() regex w/ legacy version" + ], + [ + "a55f4770", + "2019-01-31", + "feat(malloc): add reallocArray(), update realloc() & compact(), tests" + ], + ["bf8b28fc", "2019-01-31", "feat(malloc): add realloc(), update free()"], + [ + "16b48b38", + "2019-01-31", + "fix(vector-pools): AttribPool opts & default handling" + ], + [ + "4acc8318", + "2019-01-30", + "feat(examples): update hdom-canvas-shapes (add ellipse test)" + ], + [ + "ea322265", + "2019-01-30", + "refactor(geom-isec): update/merge intersectRayRect/AABB" + ], + [ + "5f7dd635", + "2019-01-30", + "feat(geom): add ray-rect/aabb impls for intersects()" + ], + [ + "93e2ea65", + "2019-01-30", + "feat(geom-isec): add ray-rect/aabb tests, fix ray-line, add NONE, update docs" + ], + [ + "4d19aa20", + "2019-01-29", + "perf(geom-voronoi): update computeDual(), update isBoundary()" + ], + [ + "2ff68db7", + "2019-01-29", + "feat(geom-voronoi): add support for vertex user data, tolerances, refactor QE changes" + ], + [ + "426cd37f", + "2019-01-29", + "refactor(quad-edge): replace QuadEdge class w/ type alias, add docs" + ], + ["f249b7e1", "2019-01-29", "docs: update main readme"], + ["613ffeba", "2019-01-29", "Merge branch 'feature/geom-qe' into develop"], + ["b11837a2", "2019-01-29", "docs(geom): update readme"], + [ + "c903293f", + "2019-01-29", + "feat(geom-voronoi): re-import & update QE delaunay/voronoi pkg (MBP2010)" + ], + [ + "ee76797b", + "2019-01-29", + "feat(quad-edge): re-import & update quad edge impl (MBP2010)" + ], + ["4b852882", "2019-01-29", "refactor(geom): minor update clippedLine()"], + ["084883eb", "2019-01-29", "refactor(geom-clip): minor update liangBarsky"], + [ + "6d14f2b7", + "2019-01-28", + "refactor(geom): swap Group ctor & factory arg order" + ], + ["af099ee5", "2019-01-28", "build(geom): update geom-clip dep & refs"], + [ + "004d7f46", + "2019-01-28", + "build(geom-clip): rename pkg geom-clip-convex => geom-clip, update deps" + ], + [ + "6391d104", + "2019-01-28", + "refactor(geom-tessellate): update imports / deps" + ], + ["31e369bd", "2019-01-28", "feat(math): add simplifyRatio()"], + [ + "226645fd", + "2019-01-28", + "refactor(geom): update pointInside & classifyPoint impls (delegate)" + ], + [ + "895102d4", + "2019-01-28", + "feat(geom-poly-utils): add convexity(), remove obsolete/migrated point checks" + ], + ["6ee03ebc", "2019-01-28", "feat(geom-api): re-add Convexity enum"], + [ + "2b235461", + "2019-01-28", + "feat(geom-isec): migrate point intersection/containment checks" + ], + ["11bf7232", "2019-01-28", "minor(geom-closest-point): minor updates"], + ["f9dd3037", "2019-01-28", "docs(vectors): update docstrings"], + [ + "e2047df3", + "2019-01-25", + "Merge branch 'feature/geom-refactor' into develop" + ], + [ + "df8332d0", + "2019-01-25", + "refactor(geom): remove obsolete/migrated fns, update deps, readme" + ], + [ + "37741081", + "2019-01-25", + "fet(geom-hull): extract from geom as new package" + ], + [ + "68a26f44", + "2019-01-25", + "feat(geom-poly-utils): move barycentric fns from main geom pkg" + ], + ["74aa9543", "2019-01-25", "docs(geom): update readme"], + [ + "f6a621a3", + "2019-01-25", + "docs(geom-subdiv-curve): add docs, minor updates subdivide()" + ], + ["87fddb89", "2019-01-25", "refactor(geom-api): minor update SubdivKernel"], + [ + "598fca55", + "2019-01-25", + "refactor(poisson): minor optimizations, update PoissonOpts & defaults" + ], + [ + "bee1c89c", + "2019-01-24", + "feat(poisson): add geom-api dep, optimize search" + ], + [ + "9022d5bb", + "2019-01-24", + "perf(geom-accel): optimize single nearest point search, fix select()" + ], + ["18ce6c96", "2019-01-24", "refactor(geom-api): update ISpatialAccel"], + [ + "5c98ed70", + "2019-01-24", + "refactor(geom-api): split into separate files, add ISpatialAccel" + ], + ["03352e11", "2019-01-23", "refactor(examples): update geom-tessel demo"], + ["b223603d", "2019-01-23", "refactor(geom): update to use geom-api types"], + [ + "f7ad4d3b", + "2019-01-23", + "refactor(geom-tessellate): update to use geom-api types" + ], + [ + "0964a956", + "2019-01-23", + "refactor(geom-subdiv-curve): update to use geom-api types" + ], + [ + "5b674154", + "2019-01-23", + "refactor(geom-splines): update to use geom-api types" + ], + [ + "8d878b99", + "2019-01-23", + "refactor(geom-resample): update to use geom-api types, add douglas-peucker" + ], + [ + "27c4bf07", + "2019-01-23", + "refactor(geom-isec): update return types, use geom-api" + ], + ["47fb5e7b", "2019-01-23", "minor(geom-clip-convex): update imports"], + [ + "e36e2213", + "2019-01-23", + "refactor(geom-arc): update to use geom-api types" + ], + [ + "4e53293d", + "2019-01-23", + "feat(geom-api): extract from geom as new package" + ], + ["02231a3a", "2019-01-23", "build: update make-module script"], + ["407e9a54", "2019-01-23", "docs: update readmes"], + [ + "fb532b8c", + "2019-01-23", + "refactor(geom): remove obsolete/extracted internal ops, update publics" + ], + [ + "cb2429c4", + "2019-01-23", + "feat(geom-tessellate): extract from geom as new package" + ], + [ + "324a5162", + "2019-01-23", + "feat(geom-subdiv-curve): extract from geom as new package" + ], + [ + "5ef4c56d", + "2019-01-23", + "feat(geom-poly-utils): extract from geom as new package" + ], + [ + "798de06b", + "2019-01-23", + "feat(geom-closest-point): add more fns, update pkg" + ], + [ + "2054574a", + "2019-01-23", + "fix(geom-arc): add bounds return type, add missing re-export, update pkg" + ], + [ + "2440ffdd", + "2019-01-23", + "feat(vectors): add corner2, clockwise2, signedAreaC2, isInArray fns" + ], + [ + "9576920b", + "2019-01-23", + "build: simplify bundle-module script, update build cmds in all packages" + ], + [ + "58e0a05d", + "2019-01-23", + "feat(vectors): add VecPair type alias, add copyVectors()" + ], + [ + "15d67121", + "2019-01-23", + "feat(geom-clip-convex): extract from geom as new package" + ], + [ + "027150a6", + "2019-01-23", + "feat(geom-splines): extract from geom as new package" + ], + [ + "6cc8c738", + "2019-01-23", + "feat(geom-arc): extract from geom as new package (#69)" + ], + [ + "79abd0ba", + "2019-01-23", + "feat(geom-resample): extract from geom as new package" + ], + [ + "285dde49", + "2019-01-23", + "feat(geom-isec): extract from geom as new package" + ], + [ + "4ff5005a", + "2019-01-23", + "feat(geom-closest-point): extract from geom as new package" + ], + ["cae83948", "2019-01-22", "feat(math): add minError() search"], + ["e998610c", "2019-01-22", "Publish"], + [ + "35a0a59e", + "2019-01-22", + "fix(examples): update canvas examples due to recent package changes" + ], + ["c6023793", "2019-01-22", "feat(geom): add asPolyline() multi-fn"], + ["a017b10a", "2019-01-22", "feat(geom): add attrib support to PathBuilder"], + [ + "8c1df496", + "2019-01-22", + "fix(geom): update Rect.toHiccup() format (separate widht/height vals)" + ], + [ + "1d92c8c3", + "2019-01-22", + "feat(hdom-canvas): add color dep, update color attrib handling" + ], + [ + "783d9faf", + "2019-01-22", + "docs(hiccup-svg): update readme, add attrib conv notes, fix example" + ], + [ + "7f6011e7", + "2019-01-22", + "feat(hiccup-svg): add color dep, add attrib conversion for all elements" + ], + ["571fc704", "2019-01-21", "docs: update main readme"], + [ + "124acdb1", + "2019-01-21", + "docs(poisson): add/update doc strings, readme, example screenshot" + ], + ["d098aff5", "2019-01-21", "Publish"], + [ + "193f9d4a", + "2019-01-21", + "feat(poisson): re-import & update poisson package (MBP2010)" + ], + [ + "8fd5728b", + "2019-01-21", + "fix(geom-accel): add root null check for select/selectKeys()" + ], + [ + "3d499ad5", + "2019-01-21", + "refactor(geom): update tangentAt(), use direction() from vectors pkg" + ], + [ + "07d5f8fc", + "2019-01-21", + "feat(vectors): migrate direction(), normalLeft/Right2() from geom pkg" + ], + ["862ed083", "2019-01-21", "docs(color): update readme"], + ["4cd3850b", "2019-01-21", "docs(vectors): update readme"], + ["d7053813", "2019-01-21", "docs(vector-pools): update readme"], + ["0d10d507", "2019-01-21", "docs: prune changelogs"], + ["348e7303", "2019-01-21", "Publish"], + [ + "b9cea8cc", + "2019-01-21", + "refactor(vectors): update angleBetween*() fns, add absInner opt arg" + ], + ["a78bd87b", "2019-01-21", "feat(math): add absInnerAngle()"], + [ + "7c1bf047", + "2019-01-21", + "refactor(examples): update gesture-analysis demo" + ], + ["822d8fba", "2019-01-21", "docs: update readme links / package names"], + [ + "31595ebe", + "2019-01-20", + "Merge branch 'master' of github.com:thi-ng/umbrella" + ], + ["51723f99", "2019-01-20", "build(pointfree-lang): fix UMD identifier"], + [ + "15e4cb2d", + "2019-01-20", + "Merge branch 'feature/vec-refactor' into develop" + ], + ["b5842fa7", "2019-01-20", "docs(geom): update readme"], + ["74b7a38a", "2019-01-20", "build(vectors): refix version to previous"], + [ + "0779337d", + "2019-01-20", + "build: update vectors3 => vectors references everywhere" + ], + [ + "0fd2498e", + "2019-01-20", + "build(vectors): replace old vectors package w/ vectors3 (renamed back to vectors)" + ], + ["4bd77082", "2019-01-20", "build: update geom3 => geom references"], + [ + "682385a1", + "2019-01-20", + "build(geom): replace old geom package w/ geom3" + ], + [ + "ff503669", + "2019-01-20", + "build: update depgraph script to display per package deps/dependents" + ], + ["2f26cf68", "2019-01-20", "docs(hdom-canvas): fix readme example"], + [ + "8e2c8b5c", + "2019-01-20", + "refactor(geom): update withAttribs() return type" + ], + [ + "9a507694", + "2019-01-20", + "feat(hdom-canvas): add ellipse() / ellipticArc(), update readme" + ], + [ + "6f341c5c", + "2019-01-20", + "docs(vector-pools): fix AttribPool example layout" + ], + [ + "db4a2018", + "2019-01-20", + "feat(geom): re-add barycentric conversions, collation mappers (still unused)" + ], + ["08f7bd16", "2019-01-20", "docs(matrices): add docstrings for most fns"], + [ + "2aceab97", + "2019-01-20", + "feat(matrices): add m22 & m23 matrix converters" + ], + [ + "311b0074", + "2019-01-20", + "feat(vectors): add default output handling for set/setC/setS fns" + ], + [ + "12ad59a1", + "2019-01-20", + "refactor(examples): update geom-knn & geom-tessel demos" + ], + [ + "5ca58032", + "2019-01-19", + "refactor(color): remove circular dependencies, update parseCss()" + ], + [ + "5270143a", + "2019-01-19", + "refactor(defmulti): remove optional excess args from type sigs" + ], + ["5d087367", "2019-01-19", "refactor(examples): update geom-knn demo"], + [ + "485051db", + "2019-01-19", + "refactor(geom-accel): update to use new vectors package" + ], + ["46bb8730", "2019-01-19", "build: remove obsolete geom2 package"], + [ + "370f9280", + "2019-01-19", + "fix(hiccup-svg): convert path arc segment axis theta to degrees" + ], + [ + "63b3a5d9", + "2019-01-19", + "feat(geom): update closestPoint(), add support for Arc" + ], + [ + "0e5e7768", + "2019-01-19", + "feat(geom): add arcPointAt() helper, refactor Arc, minor other updates" + ], + ["62ec49fe", "2019-01-19", "fix(geom): update arcFrom2Points()"], + [ + "910529dd", + "2019-01-19", + "feat(geom): add splitNearPoint() for line & polyline, update Sampler" + ], + [ + "499e14b3", + "2019-01-18", + "refactor(geom): add tessellate() multi-fn, move/rename tessellators" + ], + [ + "1d754eb9", + "2019-01-18", + "feat(geom): add splitNearPoint(), Sampler.closestT(), internal restructure" + ], + ["0451f8f6", "2019-01-18", "docs: update main readme"], + ["9623b4e9", "2019-01-18", "build(geom): add @thi.ng/compose dependency"], + ["9a4570bf", "2019-01-18", "minor(geom): minor updates"], + ["56f60372", "2019-01-18", "feat(geom): add flip() impls"], + [ + "ebc9a981", + "2019-01-18", + "feat(geom): add pointAt() impls for Cubic/Quadratic" + ], + [ + "eaf1a1b0", + "2019-01-18", + "feat(geom): add closestPoint() impls for splines, line, polygons, polyline" + ], + [ + "627e20d4", + "2019-01-18", + "feat(geom): add transform() impls for Cubic/Quadratic" + ], + [ + "d763621c", + "2019-01-18", + "feat(geom): add clippedLine(), minor update liangBarsky()" + ], + [ + "cd59f664", + "2019-01-18", + "perf(geom): use squared dist for classifyPoint() (circle)" + ], + [ + "e834597c", + "2019-01-18", + "feat(geom): add/update edges(), pointInside() & classifyPoint() impls" + ], + [ + "f5a53ca0", + "2019-01-18", + "feat(geom): re-add vertices() impls for Cubic/Quadratic" + ], + ["3c9a7b0f", "2019-01-18", "feat(geom): re-add pathFromSvg()"], + [ + "66267e22", + "2019-01-18", + "feat(geom): add intersection checks & intersects() multi-fn" + ], + ["f1f428a2", "2019-01-17", "feat(geom): re-add tessellators"], + ["9f91cfa1", "2019-01-17", "fix(api): update assert(), re-export mixin()"], + ["5f873009", "2019-01-17", "feat(vectors): add randMinMax"], + [ + "d09cc795", + "2019-01-17", + "feat(geom): add clipConvex, scatter, warpPoints" + ], + [ + "61cfb0f1", + "2019-01-16", + "feat(geom): add path builder, path & arc op impls" + ], + [ + "e81d8c31", + "2019-01-16", + "feat(vectors): update/split angleBetween for 2d/3d" + ], + ["df49c71c", "2019-01-16", "Merge branch 'master' into develop"], + [ + "a6e6f2af", + "2019-01-16", + "Merge pull request #68 from evilive3000/fix-cache-ltru" + ], + [ + "c3762e97", + "2019-01-16", + "fix(cache): TLRU: expected behavior on getSet()" + ], + [ + "2cc682a6", + "2019-01-16", + "fix(examples): add release() lifecycle method (hdom-inner-html)" + ], + ["4effc0ec", "2019-01-16", "feat(examples): add hdom-inner-html demo #67"], + [ + "fea8fbe3", + "2019-01-16", + "feat(geom): re-add arc, cubic, quadratic ops, splitAt & other ops" + ], + ["18437026", "2019-01-16", "perf(vectors): update copy()"], + ["446a1832", "2019-01-16", "fix(vectors): minor update opt arg in VecOp*"], + ["66e45ccd", "2019-01-15", "build: update .npmignore files"], + [ + "253b1be9", + "2019-01-15", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["a75f1920", "2019-01-15", "docs: update/fix various readmes"], + ["1cfefdab", "2019-01-15", "refactor(malloc): update imports"], + ["c8d8a37e", "2019-01-15", "refactor(malloc): add/extract types to api.ts"], + [ + "e04eb294", + "2019-01-11", + "refactor(defmulti): update imports, fix tests (cherry picked from cdd8659a)" + ], + [ + "89dafa45", + "2019-01-15", + "build: update bundle-module script, disable minification in UMD outputs" + ], + ["b63d2589", "2019-01-15", "docs(transducers): update cat() docstring"], + ["b70e84d7", "2019-01-15", "build: update .npmignore files (add .meta)"], + ["9eb6f2d2", "2019-01-15", "build: update rollup dev dep"], + [ + "491980c3", + "2019-01-15", + "Merge branch 'develop' into feature/vec-refactor" + ], + [ + "d118464b", + "2019-01-15", + "test(vectors): update tests (due to math eqDelta change in eps handling)" + ], + [ + "c0e3a0bc", + "2019-01-15", + "feat(geom): add temp geom3 package (another refactored version of geom2)" + ], + [ + "e28f56ec", + "2019-01-15", + "Merge branch 'develop' into feature/vec-refactor" + ], + [ + "50180096", + "2019-01-15", + "feat(math): update eqDelta w/ adaptive eps, rename old => eqDeltaFixed" + ], + [ + "a39811c6", + "2019-01-15", + "feat(hiccup-svg): add ellipse shape type, update convert()" + ], + ["d14c94b2", "2019-01-15", "build: disable minification for UMD outputs"], + ["c12ad1cc", "2019-01-15", "test(vectors): update eqDelta tests"], + ["18aeb49c", "2019-01-15", "build(vectors): add memoize dep"], + ["61e40638", "2019-01-14", "feat(vectors): add addm/addmN, subm/submN"], + ["d5ba06a4", "2019-01-11", "build: remove obsolete temp package vectors2"], + [ + "aa995682", + "2019-01-11", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["507218aa", "2019-01-11", "minor(examples): update package-stats"], + [ + "fcbc0c27", + "2019-01-11", + "build: update bundle-module, strip comments, add source maps & dev deps" + ], + ["048bdb1c", "2019-01-11", "refactor(vectors2): update imports"], + ["f3a5e0ff", "2019-01-11", "refactor(malloc): update imports"], + ["c41b96fb", "2019-01-11", "refactor(geom): update imports, fix tests"], + ["cdd8659a", "2019-01-11", "refactor(defmulti): update imports, fix tests"], + ["c9da5485", "2019-01-11", "build(examples): update geom-tessel tsconfig"], + [ + "82f8ef27", + "2019-01-10", + "revert(hiccup-svg): undo merge mistake in convert.ts" + ], + [ + "a7ea1fc3", + "2019-01-10", + "build(vectors): build: update package scripts, outputs, imports" + ], + [ + "d4eddef2", + "2019-01-10", + "build(vectors2): build: update package scripts, outputs, imports" + ], + [ + "372c199c", + "2019-01-10", + "build(vector-pools): build: update package scripts, outputs, imports" + ], + [ + "5d25c1ae", + "2019-01-10", + "build(matrices): build: update package scripts, outputs, imports" + ], + [ + "e247386c", + "2019-01-10", + "build(geom): build: update package scripts, outputs, imports" + ], + [ + "4e48cb98", + "2019-01-10", + "build(color): build: update package scripts, outputs, imports" + ], + [ + "d7d237d0", + "2019-01-10", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["ab159105", "2019-01-10", "test(api): fix import in mixin test"], + ["c91df5fc", "2019-01-10", "build: add test-only yarn script"], + [ + "6be3a871", + "2019-01-10", + "build: fix cjs output path in bundle-module script" + ], + [ + "3741663f", + "2019-01-10", + "Merge branch 'feature/multi-output' into develop" + ], + ["f6e3cdd5", "2019-01-10", "docs(examples): add troubleshooting notes"], + [ + "bbe636f4", + "2019-01-10", + "fix(examples): add quote escaping in xml-converter" + ], + [ + "bb3db27c", + "2019-01-10", + "build(examples): update tsconfig for commit-table-ssr" + ], + [ + "cc26ae98", + "2019-01-10", + "docs(examples): update readmes to refer to wiki build instructions" + ], + [ + "8f270dfa", + "2019-01-10", + "build: update project tpl scripts, ignore files" + ], + ["1f01bf8f", "2019-01-10", "build: update make-module script"], + [ + "4df9ec41", + "2019-01-10", + "build: update bundle-module outputs, emit meta data, update .gitignore" + ], + ["a894a24a", "2019-01-10", "fix(transducers): update juxt re-export"], + [ + "5c3080d7", + "2019-01-10", + "build: temporarily add webpack until parcel-bundler/parcel#2513 is fixed" + ], + [ + "bac59db6", + "2019-01-10", + "feat(examples): add package-stats charting example" + ], + ["27438f9c", "2019-01-09", "minor(examples): cleanup"], + ["4e28b5a6", "2019-01-09", "build(examples): update dev deps"], + [ + "1618c136", + "2019-01-09", + "build(examples): enable scope hoisting in `yarn build` scripts" + ], + ["d2d7952e", "2019-01-08", "minor: update imports in readme's / examples"], + ["3f1b79de", "2019-01-08", "build: update .gitignore"], + [ + "3747ad7b", + "2019-01-08", + "refactor(examples): update imports & deps of all examples" + ], + ["3b8576f3", "2019-01-08", "fix(csp): disable __State reverse enum lookup"], + [ + "d89f28fd", + "2019-01-08", + "fix(rstream-log): remove __Level reverse enum lookup, update Level (non const)" + ], + [ + "19449e8d", + "2019-01-08", + "fix(rstream-gestures): disable __GestureType reverse enum export" + ], + [ + "b238a3a9", + "2019-01-08", + "fix(rstream): disable __State reverse enum lookups" + ], + ["227be4b5", "2019-01-08", "fix(pointfree-lang): update NodeType handling"], + [ + "b198c195", + "2019-01-08", + "fix(hiccup-markdown): re-export TagFactories interface" + ], + [ + "f912a84a", + "2019-01-08", + "build: update package scripts, outputs, imports in remaining packages" + ], + [ + "b54b703d", + "2019-01-08", + "build: update package build scripts & outputs, imports in ~50 packages" + ], + [ + "f913d7bf", + "2019-01-08", + "build(api): update package build scripts / outputs" + ], + [ + "7fee8573", + "2019-01-08", + "build: update shared dev deps, rewrite bundle-module script" + ], + [ + "4e768394", + "2019-01-07", + "Merge branch 'develop' into feature/multi-output" + ], + ["d3944fb0", "2019-01-07", "build: switch travis to use node 10"], + [ + "a42b2e11", + "2019-01-07", + "refactor(rstream-query): use rstream nextID() util (fix regression)" + ], + [ + "3e1467fa", + "2019-01-07", + "refactor(rstream-log): use rstream nextID() util (fix regression)" + ], + [ + "c28ce64f", + "2019-01-07", + "Merge branch 'develop' into feature/multi-output" + ], + [ + "b31065bb", + "2019-01-07", + "Merge branch 'develop' of github.com:thi-ng/umbrella into develop" + ], + [ + "28f77e60", + "2019-01-07", + "build: update tsconfig & .npmignore files in all packages" + ], + [ + "4be67c59", + "2019-01-07", + "build: prep api, atom, bench, binary, checks, equiv, errors, paths for multi outputs" + ], + [ + "3df29305", + "2019-01-06", + "Merge pull request #66 from acarabott/feature/scaleWithCenter" + ], + [ + "92bce73d", + "2019-01-06", + "fix(vectors): fix NaNs in Mat23.scaleWithCenter" + ], + [ + "d1e275bd", + "2019-01-05", + "fix(rstream): avoid Subscription ctor to workaround parceljs build issue" + ], + [ + "e201ca8d", + "2019-01-05", + "refactor(rstream): replace Subscription.NEXT_ID w/ nextID() util" + ], + [ + "a313d830", + "2019-01-05", + "build: add/update dev deps, update build scripts in all packages" + ], + ["ce4b5283", "2019-01-05", "refactor(transducers-hdom): use arrow fns"], + ["e103d740", "2019-01-05", "refactor(transducers-fsm): use arrow fns"], + ["48670f58", "2019-01-05", "refactor(memoize): use arrow fns"], + ["5d530286", "2019-01-05", "refactor(csp): use arrow fns"], + ["e9f0542a", "2019-01-05", "refactor(transducers): use arrow fns"], + ["6eba2415", "2019-01-05", "refactor(rle-pack): use arrow fns"], + ["762db4e3", "2019-01-05", "refactor(rstream-csp): use arrow fns"], + ["8904cb4c", "2019-01-05", "refactor(rstream-gestures): use arrow fns"], + ["393d23ed", "2019-01-05", "minor(rstream-query): update formatting"], + ["14c00b29", "2019-01-05", "refactor(rstream-log): use arrow fns"], + ["ff9f8e0c", "2019-01-05", "minor(rstream-graph): update formatting"], + [ + "6c3ea083", + "2019-01-05", + "refactor(rstream): use arrow fns, update formatting" + ], + ["e0f7cb85", "2019-01-05", "minor(resolve-map): update formatting"], + ["560207a0", "2019-01-05", "refactor(math): use arrow fns"], + ["ad5574b9", "2019-01-05", "refactor(iterators): use arrow fns"], + ["3b74de92", "2019-01-05", "refactor(hiccup-css): use arrow fns"], + ["d9f4bd3f", "2019-01-05", "refactor(errors): use arrow fns"], + ["35377bd5", "2019-01-05", "refactor(compose): use arrow fns"], + ["025412a0", "2019-01-05", "refactor(compare): use arrow fns"], + [ + "aaf2723f", + "2019-01-05", + "refactor(associative): use arrow fns, update formatting" + ], + ["30c59fd5", "2019-01-05", "Merge branch 'feature/arrowfns' into develop"], + ["fc22a27e", "2019-01-05", "refactor(paths): update all as arrow fns"], + ["b70a3e1a", "2019-01-05", "refactor(checks): update all as arrow fns"], + ["3038a844", "2019-01-04", "docs(hiccup-markdown): update readme"], + ["634e2504", "2019-01-04", "Publish"], + [ + "343280d8", + "2019-01-04", + "refactor(examples): update MD demo, use parser from hiccup-markdown package" + ], + [ + "35db07fe", + "2019-01-04", + "feat(hiccup-markdown): add & refactor markdown parser (from example), update docs" + ], + ["5f09d3ec", "2019-01-04", "fix(examples): add missing return types"], + [ + "ffc68cef", + "2019-01-04", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["6030753a", "2019-01-04", "Publish"], + ["492992d7", "2019-01-04", "docs: update package list in main readme"], + ["17c14b49", "2019-01-04", "docs(examples): update readmes"], + ["0a505c1a", "2019-01-04", "docs(fsm): update readme & package"], + ["98081e3a", "2019-01-04", "Merge branch 'feature/fsm' into develop"], + [ + "81e3fc79", + "2019-01-04", + "feat(fsm): add never(), optimize alts(), add docs for all matchers" + ], + ["297356dd", "2019-01-04", "docs(examples): update readme"], + [ + "120a7afd", + "2019-01-04", + "refactor(examples): remove 2nd table row in collectTable()" + ], + [ + "b60bf31a", + "2019-01-04", + "refactor(examples): cleanup parser & rules, tag handling, update readme" + ], + ["9585b86e", "2019-01-04", "feat(examples): add initial MD table support"], + ["a9336075", "2019-01-04", "feat(fsm): update not()"], + [ + "980d4888", + "2019-01-04", + "feat(examples): update MD parser, styles, readme" + ], + [ + "992f31ac", + "2019-01-04", + "feat(fsm): add always(), lit(), not(), cleanup imports" + ], + [ + "995a104b", + "2019-01-03", + "refactor(examples): update title & blockquote parsers/style" + ], + [ + "4a9bb3d6", + "2019-01-03", + "feat(fsm): add support for lookahead-1, add docs" + ], + ["f9cece70", "2019-01-03", "refactor(examples): update MD title parser"], + [ + "55671fc7", + "2019-01-03", + "feat(fsm): add repeat(), success(), refactor all matchers" + ], + [ + "36cadc96", + "2019-01-03", + "feat(examples): update tags, add hrule, blockquote, update CSS / readme" + ], + [ + "b04e0747", + "2019-01-03", + "feat(examples): update MD parser, add parse rules & custom tag support" + ], + ["9875cda8", "2019-01-03", "feat(examples): add markdown parser example"], + ["e03390b1", "2019-01-03", "feat(fsm): import fsm package"], + ["731ede02", "2019-01-02", "build: update deps (defmulti / transducers)"], + [ + "5b98d55e", + "2019-01-02", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["26a29cf1", "2019-01-02", "Publish"], + [ + "1d29153c", + "2019-01-02", + "feat(defmulti): add opt fallback arg for defmultiN(), update docs" + ], + [ + "cd175866", + "2019-01-02", + "fix(transducers): add reduced() handling for cat()" + ], + [ + "161199f4", + "2019-01-02", + "feat(geom): add/rename type ids, add sphere, isec fns" + ], + [ + "2e6d1965", + "2019-01-02", + "fix(vectors): disable default prefix for random*() fns" + ], + ["2fb2aa32", "2019-01-01", "build: update deps"], + [ + "ba755f8a", + "2019-01-01", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["7729d993", "2019-01-01", "Publish"], + [ + "488698a6", + "2019-01-01", + "feat(defmulti): add addAll(), add/update doc strings" + ], + [ + "d47798ed", + "2019-01-01", + "refactor(examples): update gesture analysis demo" + ], + [ + "b10c8d67", + "2019-01-01", + "refactor(geom): prep/update intersectShape() w/ new dispatch fn" + ], + ["c0008a7a", "2018-12-31", "minor(geom): update formatting"], + ["7cf5f7c4", "2018-12-31", "refactor(geom): update subdivKernel* fns"], + [ + "76c343c3", + "2018-12-31", + "feat(geom): add pointAt/tangentAt impls for circle/line" + ], + ["b9125168", "2018-12-31", "feat(geom): add ray skeleton impl"], + ["c7052171", "2018-12-31", "fix(vectors): cartesian2/3"], + [ + "52fb9399", + "2018-12-31", + "feat(matrices): add quatToMat33, update readme" + ], + [ + "4c6fe066", + "2018-12-31", + "fix(matrices): re-add persp divide in mulV344()" + ], + [ + "4f024918", + "2018-12-31", + "fix(matrices): scaleWithCenter* (add missing concat() arg)" + ], + [ + "6d58c309", + "2018-12-30", + "docs: rename pd image (because of GH CDN issues), update readme" + ], + ["cfc88744", "2018-12-30", "docs(color): add porterduff image"], + ["83a46311", "2018-12-30", "docs: fix readme links"], + ["0ee2be0a", "2018-12-30", "docs: update readmes"], + [ + "10fc9cc5", + "2018-12-30", + "docs(matrices): update readme (add full API list)" + ], + ["4f2f512c", "2018-12-30", "build(matrices): update deps"], + [ + "ae7a039e", + "2018-12-30", + "feat(matrices): add cwise matrix multiply, rename mul* => mulM*, move mulQ" + ], + ["c70189aa", "2018-12-30", "docs(vectors): update readme"], + ["7e19e7b4", "2018-12-30", "minor(vectors): minor update vop()"], + [ + "66036e6c", + "2018-12-30", + "fix(vectors): update gvec prop lookup & interning" + ], + [ + "6c9fe88e", + "2018-12-30", + "refactor(vectors): rename addWeighted*() => addW*(), update package kw" + ], + [ + "064d61c5", + "2018-12-30", + "docs(vectors): update readme & package keywords" + ], + ["d462ae0a", "2018-12-30", "perf(matrices): use setC6() for M23 ops"], + [ + "809383c9", + "2018-12-30", + "refactor(matrices): extract m33to44/m44to33() into own files, update re-exports" + ], + ["0ee306a2", "2018-12-30", "feat(vectors): add setC6()"], + [ + "0b07ac86", + "2018-12-30", + "fix(matrices): inject default output handling code" + ], + [ + "b5adea6f", + "2018-12-30", + "refactor(matrices): replace setValues*() w/ setC*(), update dotC*() use" + ], + ["b03b9192", "2018-12-30", "feat(matrices): add quaternion fns"], + [ + "06dd9634", + "2018-12-30", + "fix(vectors): result handling jitter()/project()" + ], + [ + "745053c5", + "2018-12-30", + "refactor(vector): minor updates arg/result handling" + ], + [ + "cfe333fe", + "2018-12-30", + "refactor(vectors): simplify various ops, improve tpl re-use" + ], + ["6b3608da", "2018-12-30", "fix(vectors): sum() impls"], + [ + "9b789bca", + "2018-12-30", + "refactor(vectors): simplify various ops, use setC*()" + ], + [ + "809bf9b9", + "2018-12-30", + "refactor(vectors): rename dotValues*() => dotC*()" + ], + ["6857f347", "2018-12-30", "feat(vectors): add clamp01(), clamp11() fns"], + [ + "dc6f4661", + "2018-12-30", + "refactor(vectors): add defMathOp()/defMathNOp(), update basic math ops" + ], + ["784f5c34", "2018-12-29", "build: update deps"], + [ + "b849bd1b", + "2018-12-29", + "feat(color): add alpha()/setAlpha(), add docs, re-exports, update readme" + ], + [ + "e7bb46b7", + "2018-12-29", + "feat(color): add Hue enum, closestHue*() fns, namedHueRgba()" + ], + ["172f5070", "2018-12-29", "docs(color): update readme"], + ["9d4fffa1", "2018-12-29", "build(color): add package keywords"], + [ + "aa303442", + "2018-12-29", + "feat(color): add convert() fallback, minor other updates" + ], + ["445b8c1f", "2018-12-29", "feat(color): add luminance defmulti"], + ["36b7d038", "2018-12-29", "refactor(color): rename, update matrix ops"], + [ + "f2cac286", + "2018-12-29", + "refactor(color): update type factory fns & ensureArgs()" + ], + [ + "a0f19956", + "2018-12-29", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["b2cab4d0", "2018-12-29", "Publish"], + [ + "a90a712c", + "2018-12-29", + "fix(transducers): interpolate() interval selection, add minPos/maxPos" + ], + [ + "b0d28788", + "2018-12-29", + "refactor(color): update multiCosineGradient(), update readme" + ], + [ + "0546839d", + "2018-12-29", + "refactor(color): ColorMode const enum, update convert() dispatcher" + ], + ["a5c53c38", "2018-12-29", "fix(color): add/update conversions"], + ["04c38372", "2018-12-28", "refactor(color): update converters"], + [ + "4ca7a23d", + "2018-12-28", + "Merge branch 'feature/vec-refactor' into feature/color" + ], + [ + "a72562cf", + "2018-12-28", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["eae8d140", "2018-12-28", "Publish"], + [ + "846ab5ca", + "2018-12-28", + "feat(transducers): add interpolate() iterator, update readme" + ], + ["dbbb26cf", "2018-12-28", "feat(color): add multiCosineGradient()"], + ["46013514", "2018-12-28", "refactor(color): update conversions"], + ["0a9456bf", "2018-12-28", "docs(color): update readme"], + ["1c28c22b", "2018-12-28", "fix(color): HCYA field names"], + [ + "e930d736", + "2018-12-28", + "feat(color): add more color spaces, refactor, rename, simplify" + ], + [ + "714381de", + "2018-12-27", + "perf(color): refactor porterDiff as HOF, update all PD ops, add docs" + ], + [ + "d0b1e60e", + "2018-12-27", + "refactor(color): add AColor, re-use for existing wrappers, update deps" + ], + [ + "f515f6cb", + "2018-12-27", + "Merge branch 'feature/vec-refactor' into feature/color" + ], + ["ef4562a2", "2018-12-27", "build: update deps"], + [ + "95ac1e86", + "2018-12-27", + "Merge branch 'feature/vec-refactor' into feature/color" + ], + [ + "5b49e70d", + "2018-12-27", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["ea0dee0f", "2018-12-27", "Publish"], + [ + "3f9b2443", + "2018-12-27", + "refactor(pointfree): re-use comp() from thi.ng/compose" + ], + ["1ebfea95", "2018-12-26", "fix(compose): fix comp() for arities >10"], + [ + "0061b21f", + "2018-12-26", + "feat(compose): add threadFirst/Last, rename compI => compL" + ], + ["5788646f", "2018-12-26", "feat(color): add/update class wrappers"], + [ + "7a735f2d", + "2018-12-25", + "refactor(vectors): update gvec, Vec2/3/4, extract iterator impl" + ], + [ + "7bcd21ac", + "2018-12-24", + "Merge branch 'feature/vec-refactor' into feature/color" + ], + [ + "aa5ad976", + "2018-12-24", + "fix(vectors): update field names in declareIndex()" + ], + [ + "0caf599b", + "2018-12-24", + "Merge branch 'feature/vec-refactor' into feature/color" + ], + [ + "5620483b", + "2018-12-24", + "refactor(vector-pools): update IVector refs (new field names)" + ], + [ + "0c0fce6a", + "2018-12-24", + "feat(vectors): update gvec, add generic setS()" + ], + [ + "6e6a33ce", + "2018-12-24", + "refactor(vectors): update IVector (rename fields), add ICopyView" + ], + [ + "c2556c2e", + "2018-12-24", + "refactor(vectors): update declareIndices, extract single declareIndex fn" + ], + [ + "610699ab", + "2018-12-24", + "feat(color): add RGBA/HSLA wrapper types, update convert" + ], + [ + "404ac54b", + "2018-12-24", + "feat(color): add HSI converters, add clampH(), minor refactors" + ], + [ + "a5d2f98e", + "2018-12-23", + "feat(color): add Porter-Duff ops, pre/post-multiply, update types" + ], + ["8fa05c3d", "2018-12-22", "feat(math): add constants"], + ["eb5f6391", "2018-12-22", "feat(vectors): add setC()"], + ["0b51ef1c", "2018-12-22", "feat(color): add new package"], + [ + "946af71e", + "2018-12-21", + "Merge branch 'feature/vec-refactor' into feature/color" + ], + [ + "0099c27c", + "2018-12-21", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["ec6084b5", "2018-12-21", "Publish"], + [ + "6618c226", + "2018-12-21", + "feat(hdom): add support for event listener options, update readme" + ], + [ + "696a0ce3", + "2018-12-21", + "Merge branch 'feature/vec-refactor' into feature/color" + ], + ["f617c7ec", "2018-12-21", "Merge branch 'develop' into feature/color"], + [ + "e49d3caa", + "2018-12-21", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["62418f90", "2018-12-21", "Publish"], + [ + "9f48a760", + "2018-12-21", + "fix(hdom): fix #63 update removeChild() (IE11)" + ], + ["e2874932", "2018-12-21", "build(geom): update deps"], + ["c8e25bb0", "2018-12-21", "build(vectors): update deps"], + [ + "b130a944", + "2018-12-21", + "refactor(vectors): rename mapBufferV* fns => mapV*" + ], + [ + "8b582cb5", + "2018-12-21", + "refactor(vectors): extract & reuse Vec2/3/4 static fns, add copyView()" + ], + [ + "a916f3e7", + "2018-12-20", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["802fab85", "2018-12-20", "Publish"], + [ + "61b7b117", + "2018-12-20", + "feat(iterators): add `children` arg for walk()/walkIterator()" + ], + ["f44070e4", "2018-12-20", "Publish"], + ["caad2d38", "2018-12-20", "docs: update package list"], + [ + "9984c51d", + "2018-12-20", + "Merge branch 'feature/hiccup-markdown' into develop" + ], + ["58f591e8", "2018-12-20", "feat(hiccup-markdown): add new package"], + ["df38394e", "2018-12-20", "refactor(hiccup): export normalize() fn"], + ["9884a67c", "2018-12-19", "build: update depgraph script"], + ["2a43bf37", "2018-12-19", "Publish"], + [ + "a78c6a7f", + "2018-12-19", + "feat(intervals): add Interval.parse(), update docs, readme, deps" + ], + [ + "6d753f98", + "2018-12-18", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["47782618", "2018-12-18", "Publish"], + ["8545ded8", "2018-12-18", "Merge branch 'develop'"], + ["82814288", "2018-12-18", "docs: update package list"], + ["14a8a634", "2018-12-18", "docs: update package list"], + ["b0a31426", "2018-12-18", "feat(intervals): add new package"], + ["33bcd152", "2018-12-17", "Publish"], + ["04705053", "2018-12-17", "fix(transducers): add return type for range()"], + ["aa128298", "2018-12-17", "build: update deps"], + [ + "6201c9b8", + "2018-12-17", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["1d5278f8", "2018-12-16", "Publish"], + ["6d85c626", "2018-12-16", "fix(hdom): life cycle init / release handling"], + ["159ce8f6", "2018-12-15", "Publish"], + ["a3290b08", "2018-12-15", "build: update deps in make-* scripts"], + ["32847a91", "2018-12-15", "build(examples): update deps"], + [ + "aac8b6f6", + "2018-12-15", + "feat(hiccup-css): add animation(), add test & update readme" + ], + [ + "3b3e5032", + "2018-12-14", + "fix(pointfree-lang): update parser stubs (TS3.2.x)" + ], + ["0436c506", "2018-12-14", "build: update dev deps in all packages"], + ["dae12057", "2018-12-14", "minor(hiccup-carbon-icons): fix repo link"], + ["a7491117", "2018-12-14", "Publish"], + ["d734b570", "2018-12-14", "docs: update package list (main readme)"], + [ + "da441c18", + "2018-12-14", + "feat(hdom-components): merge button & button group attribs" + ], + ["6b04e160", "2018-12-14", "feat(hiccup-carbon-icons): add new package"], + [ + "b86737a6", + "2018-12-14", + "feat(examples): update xml-converter cli arg handling (var name)" + ], + ["87e6cb31", "2018-12-13", "docs: update main readme"], + [ + "388c14b4", + "2018-12-13", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["e36a7ee0", "2018-12-13", "Publish"], + ["151e1422", "2018-12-13", "docs(hdom): update readme"], + ["fbbf5f90", "2018-12-13", "minor(examples): update source links"], + ["582c69ff", "2018-12-13", "Merge branch 'feature/hdom-skip' into develop"], + ["fea3d777", "2018-12-13", "fix(examples): minor update hdom-benchmark2"], + [ + "8155bf4b", + "2018-12-13", + "feat(examples): add proper DOM stats calculation, remove interlacing (obsolete)" + ], + [ + "2ff75609", + "2018-12-13", + "perf(examples): update __skip handling in hdom-benchmark2" + ], + [ + "92c11107", + "2018-12-13", + "feat(examples): improve axis tick resolution estimate in crypto-chart" + ], + [ + "c3b1528f", + "2018-12-13", + "feat(examples): add more UI & controls to hdom-benchmark2" + ], + [ + "a40c0f5e", + "2018-12-13", + "minor(hdom-components): minor updates fpsCounter()" + ], + ["10afa0d5", "2018-12-13", "docs(examples): update hdom-skip comments"], + ["db4d0a58", "2018-12-13", "Merge branch 'develop' into feature/hdom-skip"], + ["1b298f76", "2018-12-13", "fix(strings): update kebab()"], + ["8dcc73a1", "2018-12-13", "feat(strings): add slugify()"], + ["ba0d5e5c", "2018-12-13", "docs(examples): update readme list"], + [ + "73a298df", + "2018-12-13", + "refactor(hdom-components): emit int coords for sparkline" + ], + ["baa1dfef", "2018-12-13", "feat(examples): add hdom-benchmark2 example"], + [ + "ebd33808", + "2018-12-13", + "feat(hdom-components): add FPS counter & sparkline components, update deps" + ], + [ + "c1fecc4d", + "2018-12-12", + "refactor(hdom-mock): update text node handling, tests, add readme" + ], + ["1dc6e721", "2018-12-12", "minor(hdom): intern strings"], + ["046ab206", "2018-12-12", "minor(hiccup): reformat"], + [ + "d3500df5", + "2018-12-12", + "feat(hiccup): add __skip support, add test, update readme" + ], + [ + "5609d24a", + "2018-12-11", + "feat(hdom-mock): add hdom-mock package and implementation, add initial tests" + ], + [ + "fe9a3120", + "2018-12-11", + "refactor(hdom): update createTextElement() sig, update docstrings" + ], + [ + "6db31708", + "2018-12-11", + "fix(transducers-hdom): integrate recent hdom updates" + ], + [ + "43327c9e", + "2018-12-11", + "refactor(hdom-canvas): update HDOMImplementation, add __skip support, reformat" + ], + ["69b29ad7", "2018-12-11", "docs(hdom): add __skip attrib docstring"], + [ + "6f2e8ee0", + "2018-12-11", + "refactor(hdom): extend & simplify HDOMImplementation, update DEFAULT_IMPL" + ], + ["8dc755d9", "2018-12-10", "minor(examples): fix typo"], + ["6d387dbd", "2018-12-10", "feat(examples): add hdom-skip example"], + [ + "a4e67362", + "2018-12-10", + "feat(hdom): add initial __skip ctrl attrib handling in diffTree()" + ], + [ + "42eab0bc", + "2018-12-09", + "Merge branch 'develop' into feature/vec-refactor" + ], + [ + "97bf837e", + "2018-12-09", + "doc(vectors): update readme (add note about vectors3 & matrices)" + ], + [ + "ceb404c4", + "2018-12-09", + "doc(geom): update readme (add note about geom2)" + ], + ["6726925b", "2018-12-09", "docs: add links to WIP packages"], + ["71300e92", "2018-12-09", "docs: update main readme"], + ["20e0884b", "2018-12-09", "Publish"], + ["19b0a554", "2018-12-09", "perf(diff): further array caching/reuse"], + [ + "cfdc4d76", + "2018-12-08", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["6e361d62", "2018-12-08", "Publish"], + [ + "a7e9def5", + "2018-12-08", + "refactor(hdom-canvas): update diffArray call site" + ], + ["c3f6f98c", "2018-12-08", "refactor(hdom): minor update diff call sites"], + [ + "64feacfb", + "2018-12-08", + "refactor(diff): flatten linear edit logs, update readme & arg order" + ], + ["b627f60c", "2018-12-08", "Merge branch 'feature/hdom-perf' into develop"], + [ + "8165005c", + "2018-12-08", + "refactor(equiv): minor update (intern string consts)" + ], + [ + "899941f0", + "2018-12-08", + "perf(hdom-canvas): update diffTree() to compute edit dist only" + ], + [ + "e9b067b7", + "2018-12-08", + "refactor(hdom): update diffTree & diffAttributes (@thi.ng/diff updates)" + ], + [ + "e8356cd2", + "2018-12-08", + "perf(diff): flatten linear edit logs, rewrite diffObject(), add DiffMode" + ], + [ + "d1ee6d9e", + "2018-12-08", + "perf(diff): reduce amount of temp/internal array allocs (diffArray)" + ], + [ + "6c6da825", + "2018-12-08", + "feat(diff): add fast paths for simple cases, add tests, refactor as arrow fns" + ], + [ + "34b515b2", + "2018-12-08", + "Merge branch 'develop' into feature/vec-refactor" + ], + [ + "9878c556", + "2018-12-03", + "feat(examples): add ClojureX talk-slides example (presentation tool)" + ], + [ + "b08b8e55", + "2018-12-01", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["88efaa91", "2018-12-01", "Publish"], + [ + "ba8bad68", + "2018-12-01", + "minor(transducers): manual array destructuring in reduce/iterator" + ], + [ + "0e77d2c6", + "2018-12-01", + "refactor(transducers): implement range() as class w/ IReducible impl" + ], + [ + "57836390", + "2018-12-01", + "refactor(examples): update geom-tessel example to use new geom lib" + ], + [ + "0b351e12", + "2018-12-01", + "refactor(examples): move gradient defs (mandelbrot)" + ], + [ + "896855de", + "2018-12-01", + "feat(geom): re-add arcLength() impls, update imports" + ], + [ + "d4172ee3", + "2018-12-01", + "refactor(geom): update everything to use new vectors package" + ], + [ + "68806d93", + "2018-11-30", + "feat(vectors): add 2d/3d constants, update Vec2/3" + ], + [ + "87510f74", + "2018-11-30", + "feat(vectors): add addWeighted, eqDeltaArray, mixCubic, mixQuadratic" + ], + ["9f36a681", "2018-11-30", "docs(vectors): update readme"], + ["84ab9b25", "2018-11-30", "docs(vectors): update readme"], + [ + "b415c803", + "2018-11-30", + "refactor(vector-pools): update AttribPool internals" + ], + ["21d107d9", "2018-11-30", "docs(vector-pools): update/fix readme"], + ["27ea8c4a", "2018-11-30", "minor(vector-pools): fix typos in readme"], + ["3a51a42d", "2018-11-30", "docs(vector-pools): fix readme links"], + [ + "fd54d323", + "2018-11-30", + "feat(vector-pools): update readme, add examples" + ], + [ + "4fe2047e", + "2018-11-30", + "feat(vector-pools): add GLType alias, AttribPoolOpts, update pool impls" + ], + [ + "019c0af3", + "2018-11-30", + "feat(vector-pools): add AttribPool, refactor lists" + ], + [ + "25b97891", + "2018-11-30", + "refactor(vectors): add StridedVec, update IVector, AVec" + ], + ["d381ace2", "2018-11-29", "feat(api): add assert()"], + [ + "c31ce8ad", + "2018-11-28", + "refactor(vector-pools): various minor updates & fixes" + ], + [ + "48d5d572", + "2018-11-28", + "feat(vector-pools): add VecPool, VecArrayList & VecLinkedList" + ], + ["ea6bafaf", "2018-11-28", "feat(malloc): expose SIZEOF, add wrap()"], + [ + "6cb3b92b", + "2018-11-28", + "feat(vectors): add IVector interface impls for gvec()" + ], + [ + "63458c2c", + "2018-11-28", + "feat(vectors): add proxied gvec(), update mapBuffer*() docs" + ], + ["1fe9650d", "2018-11-27", "feat(vectors): add mapBuffer*() fns"], + ["c3d19141", "2018-11-27", "feat(vectors): add Vec2/3/4.iterator()"], + [ + "4a8295b7", + "2018-11-27", + "feature(vectors): update swizzle*() to support in-place updates" + ], + ["27f65f9e", "2018-11-27", "feat(matrices): add rotationAroundAxis33/44()"], + [ + "28f04ac1", + "2018-11-27", + "feat(vectors): add project(), signedArea2(), update orthoNormal3()" + ], + [ + "a373e55b", + "2018-11-27", + "feat(vectors): update `out` default behavior & codegens, bugfixes" + ], + [ + "d9e1b2ec", + "2018-11-27", + "feat(matrices): add viewport(), project/unproject(), update invert()" + ], + ["16d56a37", "2018-11-27", "feat(matrices): add trace()"], + ["28fd0f1f", "2018-11-27", "feat(vectors): add sum()"], + ["f1a5cf12", "2018-11-27", "feat(matrices): add M44 factories"], + ["97ac629d", "2018-11-27", "feat(vectors): add/update ops, add docstrings"], + ["35babfc6", "2018-11-27", "feat(matrices): add more matrix ops"], + [ + "f04e79e9", + "2018-11-26", + "feat(matrices): add more matrix ops, optimize & simplify" + ], + [ + "e19f6223", + "2018-11-26", + "feat(vectors): add faceForward, invSqrt & dotValues* fns" + ], + ["b697fd5d", "2018-11-26", "refactor(vectors): update codegens"], + [ + "8e6ddca9", + "2018-11-26", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["bb625eb0", "2018-11-26", "Publish"], + ["18ffdb79", "2018-11-26", "fix(vectors): update VecOpSRoVV & dotS impls"], + [ + "f940672e", + "2018-11-26", + "feat(matrices): extract matrix ops to own package" + ], + [ + "52273cde", + "2018-11-25", + "feat(vectors): re-add (some) strided ops, update codegens, simplify" + ], + [ + "b4fffe85", + "2018-11-25", + "feat(vectors): add cosh, sinh, tanh, round, jitter, wrap" + ], + [ + "7448c6b6", + "2018-11-25", + "feat(vectors): re-add Vec2/3/4, clamp, reflect, refract, restructure package" + ], + [ + "18d44342", + "2018-11-25", + "refactor(vectors): update eqDelta & compileHOF()" + ], + [ + "bfbaaa9b", + "2018-11-25", + "feat(vectors2): update rand codegen tpls & compileHOF/GHOF" + ], + [ + "26d41996", + "2018-11-25", + "feat(vectors): add yet another version of vectors package" + ], + [ + "bb7e003d", + "2018-11-25", + "Merge pull request #62 from acarabott/feature/hdom-canvas-text-maxWidth" + ], + [ + "97965d89", + "2018-11-24", + "fix(hdom-canvas): actually pass maxWidth argument to text function" + ], + ["3f7fe2ad", "2018-11-24", "build(vectors): update deps"], + [ + "82186aa6", + "2018-11-24", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["bb18d7a2", "2018-11-24", "Publish"], + ["d210668e", "2018-11-24", "docs: update package list"], + [ + "4aea85d2", + "2018-11-24", + "feat(random): re-import, extend & refactor random package (MBP2010)" + ], + [ + "65ee909f", + "2018-11-24", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["364f27e3", "2018-11-24", "Publish"], + ["02ec7a7a", "2018-11-24", "docs(hdom-canvas): update readme"], + ["3872e379", "2018-11-24", "assets: add mandelbrot screenshot"], + ["738091d5", "2018-11-24", "docs(examples): update list (readme)"], + ["ca47a885", "2018-11-24", "docs(rstream): update readme"], + ["9ef64f16", "2018-11-23", "Merge branch 'feature/rs-tunnel' into develop"], + ["c6eec4ef", "2018-11-23", "fix(examples): add download fn (mandelbrot)"], + ["46c2882e", "2018-11-23", "fix(rstream): make maxWorkers optional"], + ["a47edd53", "2018-11-23", "feat(examples): update mandelbrot demo"], + [ + "67a5b104", + "2018-11-23", + "feat(rstream): add support multiple workers in Tunnel & TunnelOpts" + ], + [ + "f24e69ea", + "2018-11-23", + "refactor(rstream): move tunnel to /subs, add docs" + ], + ["a39b98c0", "2018-11-23", "Merge branch 'develop' into feature/rs-tunnel"], + [ + "4592fbb5", + "2018-11-23", + "Merge pull request #61 from acarabott/feature/hdom-canvas-text-maxWidth" + ], + [ + "4d1fa1c5", + "2018-11-23", + "minor(hdom-canvas): add maxWidth param to text draw call" + ], + ["2a4bd412", "2018-11-22", "feat(examples): add gradients, simplify"], + [ + "1b567440", + "2018-11-22", + "refactor(examples): minor updates mandelbrot demo" + ], + [ + "70ea4bd6", + "2018-11-21", + "feat(examples): add key controls & wheel zoom to mandelbrot demo" + ], + [ + "bab55c3c", + "2018-11-21", + "feat(rstream-gestures): add absZoom option (abs vs. relative)" + ], + [ + "9549067e", + "2018-11-21", + "fix: update build-examples script (multiple js outputs)" + ], + ["a68b9f9a", "2018-11-21", "refactor(examples): update mandelbrot demo"], + [ + "4cab7080", + "2018-11-21", + "fix: upload-examples script (if multiple sources)" + ], + [ + "80679d3c", + "2018-11-21", + "feat(examples): add mandelbrot worker/tunnel example" + ], + [ + "ef0fe42c", + "2018-11-21", + "feat(rstream): add StreamSync.getSources() / getSourceForID()" + ], + ["4750e796", "2018-11-21", "feat(rstream): add worker tunnel() sub"], + [ + "7007d633", + "2018-11-19", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["e044a6a2", "2018-11-19", "Publish"], + [ + "143c47cd", + "2018-11-19", + "fix(math): fix #60, add range check for norm()" + ], + ["71c568c3", "2018-11-13", "Publish"], + [ + "9334f833", + "2018-11-13", + "feat(interceptors): update forwardSideFx(), refactor iceps as arrow fns" + ], + ["62b3c312", "2018-11-13", "Publish"], + [ + "1d085bff", + "2018-11-13", + "refactor(router): update Route, RouteMatch & minor optimizations" + ], + [ + "9b4a7b45", + "2018-11-12", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["4bf18805", "2018-11-12", "Publish"], + [ + "4048849d", + "2018-11-12", + "Merge branch 'develop' of github.com:thi-ng/umbrella into develop" + ], + [ + "068255f6", + "2018-11-12", + "Merge pull request #59 from acarabott/feature/linecap" + ], + [ + "734a1428", + "2018-11-12", + "minor(hdom-canvas): fix default key for lineCap" + ], + [ + "74827068", + "2018-11-09", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["a4bc35bd", "2018-11-08", "Publish"], + [ + "33e915b4", + "2018-11-08", + "feat(strings): add configurable units() HOF & presets" + ], + ["6eaa5f5f", "2018-11-07", "Publish"], + [ + "b0a4b65e", + "2018-11-07", + "refactor(examples): update hdom-dyn-context demo" + ], + [ + "52a47f0f", + "2018-11-07", + "refactor(transducers-hdom): update auto-deref ctx behavior" + ], + ["30161166", "2018-11-07", "feat(hdom): update auto-deref ctx behavior"], + [ + "749925f0", + "2018-11-07", + "feat(hiccup): update derefContext() to only apply to selected keys" + ], + ["5a3b860e", "2018-11-07", "feat(vectors): update VecPool & NDArray1"], + [ + "34930b31", + "2018-11-07", + "refactor(malloc): update package structure, fix stats()" + ], + [ + "c3751198", + "2018-11-06", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["d2797516", "2018-11-06", "feat(examples): add hdom-dyn-context demo"], + ["79a6a365", "2018-11-06", "Publish"], + [ + "e91dbbc1", + "2018-11-06", + "feat(transducers-hdom): add support for dynamic user context vals" + ], + [ + "6a3a8739", + "2018-11-06", + "feat(hdom): add support for dynamic user context vals" + ], + [ + "a9478732", + "2018-11-06", + "feat(hiccup): add support for dynamic user context values" + ], + [ + "dc2c487d", + "2018-11-06", + "refactor(geom): update implementations() call sites" + ], + [ + "a24715e7", + "2018-11-06", + "refactor(defmulti): merge relations() w/ implementations(), update readme" + ], + [ + "3713c02a", + "2018-11-06", + "refactor(hiccup-svg): update convertTransforms(), update formatting" + ], + [ + "9f03889b", + "2018-11-06", + "minor(geom): add/update edges()/vertices() arg types" + ], + [ + "9a18620d", + "2018-11-06", + "minor(hiccup-svg): update path conversion/creation" + ], + ["c0134fda", "2018-11-06", "minor(geom): update imports"], + [ + "94a40cc5", + "2018-11-06", + "fix(geom): Path2 transform() & translate(), add asCubic() impl" + ], + ["df9b9f9f", "2018-11-06", "fix(geom): asCubic() for arc"], + [ + "9d60ad09", + "2018-11-06", + "perf(geom): emit hline/vline segments if possible" + ], + [ + "c4db51aa", + "2018-11-06", + "feat(vectors): add IMatrix & impls for Mat23/33/44, add/update accessors" + ], + ["4066c80f", "2018-11-06", "feat(defmulti): add relations()"], + [ + "35bd0679", + "2018-11-06", + "feat(geom): add new / update all types / ops, add tests" + ], + [ + "c41d12c0", + "2018-11-03", + "feat(vectors): re-add quaternion, various refactorings" + ], + ["358169fd", "2018-11-01", "feat(geom): add/update shape types"], + [ + "e197f908", + "2018-11-01", + "feat(hiccup-svg): add toHiccup() support in convertTree()" + ], + ["30f61da5", "2018-11-01", "feat(vectors): add eqDeltaArray()"], + [ + "0043fb5d", + "2018-11-01", + "feat(math): add cossin(), add opt scale arg for sincos()" + ], + ["184d55da", "2018-10-31", "build(vectors): update deps"], + [ + "954e0c28", + "2018-10-31", + "feat(vectors): add generic impls for common vec ops" + ], + [ + "816c9c01", + "2018-10-31", + "feat(strings): add floatFixedWidth(), update float()" + ], + [ + "766fdee2", + "2018-10-31", + "feat(vectors): re-add vec4, mat23/33/44, nd arrays" + ], + ["e3727ce9", "2018-10-27", "refactor(malloc): add/extract types to api.ts"], + [ + "228e08a1", + "2018-10-27", + "Merge branch 'develop' into feature/vec-refactor" + ], + ["46bf1a73", "2018-10-27", "Publish"], + [ + "c5b0f2f5", + "2018-10-27", + "feat(malloc): add MemPoolOpts, fix top block alloc, update tests, readme" + ], + [ + "cfd88555", + "2018-10-27", + "feat(geom): re-add & update more types / shape ops" + ], + [ + "a070016c", + "2018-10-27", + "feat(vectors): add VecPool skeleton, add more types, export codegen fns" + ], + [ + "51c4a49f", + "2018-10-26", + "feat(vectors): add/update types, multi-methods, minor optimizations" + ], + [ + "125c784f", + "2018-10-26", + "feat(defmulti): add versions w/ 1 optional typed arg, add .impls()" + ], + [ + "252f66db", + "2018-10-25", + "feat(geom): re-add more classes & methods, add svg conversions" + ], + [ + "505ca49c", + "2018-10-25", + "feat(vectors): add vec2n/vec3n(), copy() methods, update deps" + ], + [ + "fde2db21", + "2018-10-25", + "feat(defmulti): add callable() & implementations(), update readme" + ], + [ + "fe14b791", + "2018-10-24", + "Merge branch 'develop' into feature/vec-refactor" + ], + [ + "accda790", + "2018-10-24", + "fix(rstream-gestures): Publish (0.5.16 had publish error)" + ], + ["673bf50f", "2018-10-24", "Publish"], + [ + "a8c38987", + "2018-10-24", + "feat(defmulti): add support for dispatch value relationships / hierarchy" + ], + ["7b740ab8", "2018-10-24", "docs(malloc): update readme"], + [ + "4f156b04", + "2018-10-24", + "Merge branch 'develop' of github.com:thi-ng/umbrella into develop" + ], + [ + "724fe28f", + "2018-10-24", + "feat: add temp geom2 & vectors2 packages (defmulti API)" + ], + [ + "f271b78b", + "2018-10-24", + "Merge pull request #57 from acarabott/feature/rstream-gesture-local" + ], + [ + "f1f6af4d", + "2018-10-23", + "fix(rstream-gestures): fix incorrect local position when scrolled" + ], + ["5bb51391", "2018-10-21", "Publish"], + [ + "abba2d62", + "2018-10-21", + "Merge branch 'feature/geom-accel' into develop" + ], + ["be7acc33", "2018-10-21", "refactor(examples): update geom-knn demo"], + [ + "b47e6413", + "2018-10-21", + "feat(geom-accel): add KV support, update select/selectKeys()" + ], + ["c387887d", "2018-10-21", "docs: update package list"], + [ + "51071ac7", + "2018-10-21", + "Merge branch 'develop' into feature/geom-accel" + ], + ["6f8a8963", "2018-10-21", "docs: update package list"], + ["b7457cef", "2018-10-21", "Merge branch 'feature/malloc' into develop"], + [ + "4b72cda6", + "2018-10-21", + "feat(malloc): add freeAll(), release(), tests & benchmarks, update docs" + ], + ["40f07876", "2018-10-21", "docs(malloc): add docs to readme"], + ["787102a4", "2018-10-21", "fix(malloc): add size check, update readme"], + [ + "89f2bc28", + "2018-10-21", + "feat(malloc): re-add block compaction & splitting, update readme" + ], + [ + "2cf20c90", + "2018-10-21", + "feat(malloc): initial import @thi.ng/malloc package" + ], + ["ce131d48", "2018-10-19", "feat(geom): add IToCubic, add/update impls"], + [ + "4a47daa4", + "2018-10-19", + "feat(math): migrate mixCubic()/mixQuadratic() from geom package" + ], + ["85426d98", "2018-10-19", "fix(hiccup-svg): fix arc segment handling"], + ["f891c419", "2018-10-19", "feat(math): add sincos() & roundEps()"], + ["2469992e", "2018-10-18", "build(geom-accel): update deps (add morton)"], + [ + "ac2f3e83", + "2018-10-18", + "feat(morton): update/add muxScaled2/3 versions, add error handling" + ], + [ + "971dfb45", + "2018-10-18", + "Merge pull request #55 from acarabott/feature/readme-arc" + ], + [ + "b9cfb56f", + "2018-10-18", + "minor(hdom-canvas): add arc, hline, vline to readme" + ], + ["1063fea9", "2018-10-18", "feat(heaps): add pushPopAll()"], + ["f0deebb9", "2018-10-18", "minor(examples): update geom-knn"], + [ + "b31b4807", + "2018-10-18", + "refactor(hdom-canvas): update points() to accept iterables" + ], + [ + "0c76c024", + "2018-10-18", + "refactor(geom-accel): move iterator into KdNode" + ], + ["aa01a2de", "2018-10-18", "build: update .gitignore"], + ["f82c8b16", "2018-10-18", "feat(examples): add geom-knn example"], + [ + "e14ac8b1", + "2018-10-18", + "feat(geom-accel): re-import geom-accel skeleton (MBP2010)" + ], + ["f7bbfde4", "2018-10-18", "refactor(heaps): public fields"], + [ + "0cf708f4", + "2018-10-18", + "feat(bench): add timedResult() / benchResult()" + ], + [ + "6e0972e9", + "2018-10-17", + "build: further updates dev deps in all packages" + ], + ["f01551ac", "2018-10-17", "build: update make-module/example scripts"], + ["e6cef6b3", "2018-10-17", "build(examples): update dev deps"], + ["1ebae947", "2018-10-17", "build: update dev deps (TS3.1, parcel etc.)"], + ["348cdd4e", "2018-10-17", "docs(examples): update table"], + ["3569d242", "2018-10-17", "feat(examples): add geom-tessel example"], + [ + "d4d44b32", + "2018-10-17", + "fix(examples): update @thi.ng/math occurrences" + ], + ["cf2970aa", "2018-10-17", "minor: update readme"], + ["6e563377", "2018-10-17", "Publish"], + ["39d414f5", "2018-10-17", "docs: update package list in main readme"], + ["940fc312", "2018-10-17", "build(dsp): update package"], + ["456a2ee3", "2018-10-17", "build(math): update package desc"], + ["10cf5646", "2018-10-17", "build: update gitignore & yarn.lock"], + ["83ef61a1", "2018-10-17", "docs(geom): update readme, add/move assets"], + [ + "ffea836f", + "2018-10-17", + "refactor(geom): update deps & @thi.ng/math imports" + ], + [ + "0967929f", + "2018-10-17", + "feat(vectors): replace math.ts w/ imports from @thi.ng/maths package" + ], + [ + "f257330e", + "2018-10-16", + "refactor(transducers): add ensureArrayLike(), update permutations()" + ], + ["1bd9fd43", "2018-10-16", "docs(heaps): update readme"], + [ + "501536b9", + "2018-10-16", + "feat(morton): import & update @thi.ng/morton package (MBP2010)" + ], + ["6851f2c4", "2018-10-16", "feat(compose): add partial(), update readme"], + ["405cf51a", "2018-10-16", "feat(dlogic): add @thi.ng/dlogic package"], + ["458d4a07", "2018-10-16", "feat(binary): add @thi.ng/binary package"], + [ + "889730f8", + "2018-10-16", + "feat(dsp): add oscillators as @thi.ng/dsp package (from synstack / VEX)" + ], + [ + "4af1fba3", + "2018-10-16", + "feat(math): extract maths fns from @thi.ng/vectors as new package" + ], + ["e085136b", "2018-10-13", "Merge branch 'develop' into feature/geom"], + [ + "2e9f0486", + "2018-10-13", + "refactor(geom): update arg handling, update readme" + ], + [ + "328a9b03", + "2018-10-13", + "Merge pull request #54 from acarabott/feature/transducer-links" + ], + [ + "08372abd", + "2018-10-13", + "minor(transducers): fix links to reducers in README" + ], + [ + "2546039a", + "2018-10-13", + "Merge pull request #53 from acarabott/feature/baseline" + ], + ["6a9747bf", "2018-10-13", "minor(hdom-canvas): baseLine -> baseline"], + ["fa87f1e9", "2018-10-11", "feat(geom): add/update tessellate() impls"], + [ + "555fc515", + "2018-10-10", + "feat(geom): add/update factory fns, arg handling, tessel, poly area" + ], + [ + "3a20ef34", + "2018-10-10", + "feat(geom): add/update various shape impls & ops" + ], + [ + "296e1e07", + "2018-10-08", + "refactor: update Infinity consts in various packages" + ], + [ + "d655ec29", + "2018-10-08", + "feat(geom): re-import & refactor partial port of thi.ng/geom (clojure)" + ], + [ + "ff435be6", + "2018-10-07", + "minor(hdom-canvas): rename arc() => circularArc()" + ], + [ + "b2f9af93", + "2018-10-07", + "refactor(vectors): replace static Vec2/3/4 methods w/ IVector impls" + ], + [ + "221fb7f6", + "2018-10-06", + "feat(vectors): add collate & eqDelta fns, update ctors" + ], + ["6094738e", "2018-10-03", "feat(defmulti): add varargs support"], + ["2657df66", "2018-09-30", "feat(geom): add/update interfaces & impls"], + [ + "775cc8a7", + "2018-09-30", + "fix(hdom-components): add Canvas2DContextAttributes (removed in TS3.1)" + ], + ["1ef23611", "2018-09-30", "fix(transducers): minor TS3.1 fixes"], + [ + "515e5ba5", + "2018-09-30", + "feat(transducers): update wrap*() fns to accept iterables" + ], + [ + "aa6b1206", + "2018-09-30", + "feat(geom): re-add Arc2, update Circle2, update helper fns" + ], + [ + "3b1bf647", + "2018-09-30", + "feat(geom): add ICollate & ICopy impls, re-add/update convexHull2" + ], + ["2ba99311", "2018-09-30", "build(geom): update dev deps & yarn.lock"], + [ + "473ec800", + "2018-09-30", + "feat(vectors): add axis consts, add/update ops" + ], + [ + "6a0f8aa9", + "2018-09-29", + "feat(vectors): add comparators & ICompare impls for vec2/3/4" + ], + [ + "9fb2091a", + "2018-09-29", + "refactor(geom): add interfaces, split out common.ts into /func folder" + ], + ["34312d8f", "2018-09-29", "feat(vectors): add IMinMax interface"], + [ + "9c27c77f", + "2018-09-29", + "feat(geom): update all shape types, add interfaces & ops, update tests" + ], + [ + "5c44ad98", + "2018-09-29", + "feat(vectors): add operation specific interfaces, rename Vec3.toPolar()" + ], + ["22f6aab4", "2018-09-29", "Merge branch 'develop' into feature/geom"], + ["4f15ea80", "2018-09-28", "Publish"], + [ + "8399ec2f", + "2018-09-28", + "docs(vectors): fix docstrings, hide CommonOpts type alias" + ], + [ + "f2114d52", + "2018-09-28", + "Merge branch 'feature/vec-codegen' into develop" + ], + [ + "247dec02", + "2018-09-28", + "refactor(vectors): generate more ops, move declareIndices() (#51)" + ], + [ + "719b27ac", + "2018-09-28", + "refactor(vectors): rewrite codegen, add more types & gen ops (#51)" + ], + [ + "9bee7f85", + "2018-09-28", + "refactor(vectors): use codegen for unary vec2/3/4 ops" + ], + [ + "b5ed2545", + "2018-09-28", + "feat(vectors): add vector ops codegen, update basic vec2/3/4 ops (#51)" + ], + [ + "d964865e", + "2018-09-28", + "docs(hdom): add xml-converter example link & screenshot" + ], + [ + "6db26c2b", + "2018-09-28", + "feat(examples): add copy-to-clipboard, extract UI config & components" + ], + ["5cfbf70d", "2018-09-27", "feat(examples): update css"], + ["71cbd19a", "2018-09-27", "fix(examples): fix attrib format"], + [ + "95ba4f6d", + "2018-09-27", + "feat(examples): extend xml-converter, add CLI version, update docs" + ], + ["2f014471", "2018-09-26", "Publish"], + ["4b78c8a3", "2018-09-26", "minor(examples): xml-converter"], + ["96367021", "2018-09-26", "docs(hdom): add/update docs (fix #47)"], + ["0a49d0a5", "2018-09-25", "fix: update .gitignore (fixes #46, fixes #50)"], + [ + "ad1bac8f", + "2018-09-25", + "refactor(examples): refactor hiccup formatter, minor fixes" + ], + [ + "823d828d", + "2018-09-25", + "fix(transducers): fix matchLast(), fix & update return match*() types" + ], + [ + "61af7e51", + "2018-09-25", + "Merge branch 'master' of github.com:thi-ng/umbrella" + ], + [ + "b8a93ea8", + "2018-09-25", + "fix(examples): add null check & parseAttrib() in transformCSS()" + ], + ["3abfc42c", "2018-09-25", "Merge pull request #49 from nkint/patch-1"], + ["a169d2df", "2018-09-25", "fix(examples): add missing index.html (#46)"], + ["04872dbe", "2018-09-25", "Publish"], + [ + "79cf49e1", + "2018-09-25", + "feat(examples): add value coercions & re-formatter (xml-converter)" + ], + [ + "0cce0488", + "2018-09-25", + "feat(strings): add splice(), refactor repeat(), add tests" + ], + ["8b8bf885", "2018-09-25", "typo"], + [ + "0cddc7d6", + "2018-09-25", + "feat(example): update xml-converter (add boolean attrib support)" + ], + [ + "5119b67e", + "2018-09-25", + "feat(sax): add opt support for boolean attribs, add tests" + ], + ["5a893d5b", "2018-09-25", "docs(examples): update table"], + ["436edc0f", "2018-09-25", "Publish"], + [ + "50fa6492", + "2018-09-25", + "fix(hdom): add DEFAULT_IMPL to re-exports (#47)" + ], + ["febe3c36", "2018-09-25", "Publish"], + ["cb263002", "2018-09-25", "feat(examples): add xml-converter example"], + ["8cbfb97e", "2018-09-24", "fix(strings): rename number parsers"], + [ + "888ea747", + "2018-09-24", + "fix(examples): rename `prepare` script aliases" + ], + [ + "c0a8926b", + "2018-09-24", + "fix(examples): rename `prepare` script alias, add commits.json (#46)" + ], + ["cf05efbf", "2018-09-24", "Publish"], + [ + "665564c7", + "2018-09-24", + "feat(sax): update parse() to return iterator if input given (optional)" + ], + ["fc6a4d32", "2018-09-24", "perf(rstream-log): `Level` => const enum"], + [ + "8e4fc902", + "2018-09-24", + "perf(rstream-gestures): `GestureType` => const enum" + ], + ["7ac83c6f", "2018-09-24", "perf(rstream): `State` => const enum"], + [ + "a7b9a427", + "2018-09-24", + "perf(pointfree-lang): `NodeType` => const enum" + ], + ["c3e8d689", "2018-09-24", "perf(csp): `State` => const enum"], + [ + "39f7fb0c", + "2018-09-24", + "build: add `preserveConstEnums` to global tsconfig" + ], + [ + "657a3088", + "2018-09-24", + "docs: fix twitter badges, update make-module script" + ], + [ + "89ab34a3", + "2018-09-24", + "Merge branch 'master' of github.com:thi-ng/umbrella" + ], + ["94f64698", "2018-09-24", "docs: update all readme files"], + ["56bfecbc", "2018-09-23", "Merge pull request #45 from rgtk/patch-1"], + ["b2a24f8c", "2018-09-23", "Fix links to @thi.ng/transducers"], + ["edf68556", "2018-09-23", "Publish"], + ["7cd08281", "2018-09-23", "docs(hdom): update readme"], + [ + "4a2f79b8", + "2018-09-23", + "refactor(hdom): minor refactoring, fix/update docs" + ], + [ + "1d8eeb4d", + "2018-09-23", + "feat(hiccup): emmet class & class attrib merging in normalize()" + ], + ["ff5e5550", "2018-09-23", "docs(rstream): re-org readme"], + ["ed3f10b5", "2018-09-23", "docs(hdom): fix/update changelog"], + ["bb224a75", "2018-09-22", "docs(examples): update readme"], + ["02548fd2", "2018-09-22", "Publish"], + ["70de921a", "2018-09-22", "build: add npm registry for publish script"], + ["ee0c2b96", "2018-09-22", "build: update yarn.lock"], + [ + "897f2b36", + "2018-09-22", + "docs: update branch links (all back to master now)" + ], + ["39d35d93", "2018-09-22", "chore(examples): add missing .gitignore"], + [ + "4bc64394", + "2018-09-22", + "chore: add HMR handling to make-example script" + ], + ["387376ed", "2018-09-22", "docs(hdom): major update readme"], + ["86bdd06d", "2018-09-22", "feat(examples): add svg-barchart demo"], + ["5ef9cf0e", "2018-09-22", "feat(hdom): add renderOnce()"], + ["06dccee4", "2018-09-21", "docs(hdom): update readme"], + [ + "8441afcb", + "2018-09-21", + "assets: add new diagram sources (hdom & interceptors)" + ], + ["bb5569f7", "2018-09-21", "build: update yarn.lock"], + [ + "0dcc1b86", + "2018-09-21", + "refactor(rstream): remove Stream.NEXT_ID, replace w/ Subscription field" + ], + [ + "8aa66055", + "2018-09-21", + "build: update example generator & build scripts" + ], + [ + "efcbe2de", + "2018-09-21", + "minor(examples): fix sort icon in triple-query" + ], + [ + "7c4dc3f0", + "2018-09-21", + "fix(examples): update commit-table-ssr to work w/ parceljs, update docs" + ], + ["22732421", "2018-09-21", "build(examples): update yarn build commands"], + ["1ee6c43a", "2018-09-21", "build: update typedoc dep"], + ["022101f3", "2018-09-21", "fix(transducers): add missing type annotation"], + [ + "78b1f4ac", + "2018-09-21", + "fix(transducers-hdom): add missing type annotation" + ], + [ + "3cd03bd7", + "2018-09-20", + "assets(examples): add gesture-analysis screenshot" + ], + ["288b68d9", "2018-09-20", "feat(rstream): add trigger() generics"], + ["75889156", "2018-09-20", "docs(rstream): update readme & doc strings"], + ["d5ec6fd8", "2018-09-20", "docs(rstream): add docs, update readme"], + ["dbdb72ec", "2018-09-20", "docs(rstream): add diagrams"], + ["bbb87f4a", "2018-09-20", "docs(hdom): update readme"], + [ + "1ac1110b", + "2018-09-20", + "feat(examples): rename interceptor-basics, add more simpler version" + ], + ["6d6fae33", "2018-09-20", "refactor(hdom): allow HDOMOpts extensions"], + ["74816eb0", "2018-09-20", "docs(hdom): update readme"], + ["46d851b6", "2018-09-19", "feat(examples): add hdom-canvas-draw demo"], + [ + "09a821b2", + "2018-09-19", + "refactor(hdom-canvas): switch canvas back to lifecycle object form" + ], + ["e390a54d", "2018-09-19", "feat(api): add `IToHiccup` interface"], + ["929c6f42", "2018-09-19", "feat(rstream): add trigger() utility stream"], + [ + "e82e3122", + "2018-09-19", + "feat(examples): add SVG export comment to hdom-canvas-shapes" + ], + ["de17db8f", "2018-09-19", "perf(hdom): minor updates"], + [ + "53a1d2c0", + "2018-09-19", + "refactor(hdom-canvas): add _serialize control attrib to root group" + ], + [ + "363c241c", + "2018-09-19", + "feat(hiccup): add control attrib handling, add comment support" + ], + ["bca4cc4b", "2018-09-17", "Publish"], + ["b488d2b3", "2018-09-17", "feat(transducers): add randomID()"], + [ + "f001314d", + "2018-09-17", + "fix(transducers): str() initial result handling" + ], + [ + "eb674268", + "2018-09-17", + "fix(transducers): update arg types for choices() & weightedRandom()" + ], + ["bd228110", "2018-09-17", "Publish"], + ["3e647a18", "2018-09-17", "fix(atom): add .value getter to IView"], + ["76309858", "2018-09-17", "minor(examples): update clock example"], + ["38125686", "2018-09-17", "docs: add hdom-canvas to package table"], + ["60f00590", "2018-09-17", "build(examples): fix deps, update readmes"], + ["7bbd1bcf", "2018-09-17", "docs(hdom-canvas): update links"], + ["95c462a5", "2018-09-17", "Publish"], + ["decc26b2", "2018-09-17", "build: update deps"], + ["b9738cc4", "2018-09-17", "v1.2.0"], + ["b43fcb39", "2018-09-17", "v2.0.0-alpha"], + ["f424fa92", "2018-09-17", "Publish"], + ["d4487066", "2018-09-17", "v1.1.0"], + ["3835cf43", "2018-09-17", "v2.2.0"], + ["ff919070", "2018-09-17", "v0.4.0"], + ["339342b3", "2018-09-17", "v0.1.9"], + ["7481df23", "2018-09-17", "v1.5.9"], + [ + "4297d649", + "2018-09-17", + "Merge branch 'feature/hdom-canvas' into develop" + ], + ["4fe6a742", "2018-09-17", "Merge branch 'feature/hdom-v5' into develop"], + ["eb4e6891", "2018-09-17", "refactor(examples): minor updates"], + [ + "ae4b6212", + "2018-09-16", + "perf(hdom-canvas): inline type checks, update deps & readme" + ], + [ + "a52f83c4", + "2018-09-16", + "fix(hdom-canvas): update __normalize handling, rename fns" + ], + [ + "382c45ca", + "2018-09-16", + "perf(hdom): update diffTree(), inline node type checks" + ], + [ + "224a537a", + "2018-09-16", + "perf(checks): inline checks in isNotStringAndIterable()" + ], + ["b93dc745", "2018-09-16", "feat(examples): add static canvas test"], + [ + "74547aa6", + "2018-09-16", + "feat(hdom-canvas): update canvas component & diffTree impl, update docs" + ], + [ + "3b628326", + "2018-09-16", + "refactor(hiccup-svg): update points(), minor fixes, add docs" + ], + ["ebfcf159", "2018-09-16", "refactor(hdom): export diff related fns"], + ["bb7e08a8", "2018-09-16", "refactor(examples): update canvas demo"], + [ + "5de02559", + "2018-09-16", + "feat(hdom-canvas): add HDPI auto-adjustment, update docs" + ], + [ + "b219d67a", + "2018-09-15", + "Merge branch 'feature/hdom-v5' into feature/hdom-canvas" + ], + ["d9af2e5f", "2018-09-15", "refactor(hdom): update custom equiv()"], + ["6c33901f", "2018-09-15", "fix(hdom): delegate diffTree() to branch impl"], + [ + "3de83bb7", + "2018-09-15", + "refactor(hiccup): add `button` to NO_SPANS elements" + ], + [ + "adaaa7a0", + "2018-09-15", + "feat(hdom-canvas): add warning msg for hydrateTree() impl" + ], + [ + "ae1371d8", + "2018-09-15", + "Merge branch 'feature/hdom-v5' into feature/hdom-canvas" + ], + [ + "05920636", + "2018-09-15", + "fix(hdom): exclude hdom control attribs in setAttrib()" + ], + [ + "4e230164", + "2018-09-15", + "feat(vectors): add random vector ops for Vec2/3/4 & GVec" + ], + ["8e796480", "2018-09-15", "Merge branch 'develop' into feature/geom"], + [ + "6a76bfd1", + "2018-09-15", + "Merge branch 'develop' into feature/hdom-canvas" + ], + ["442f14f4", "2018-09-15", "Merge branch 'develop' into feature/hdom-v5"], + ["7963e256", "2018-09-15", "feat(strings): add U24 hex preset"], + ["be25c48e", "2018-09-15", "feat(examples): add circles test"], + [ + "56b919d8", + "2018-09-15", + "Merge branch 'feature/hdom-canvas' into feature/geom" + ], + [ + "2bb41d45", + "2018-09-14", + "docs(examples): update crypto readme (replace diagram)" + ], + [ + "1d463ea6", + "2018-09-14", + "build(examples): update deps (hdom-canvas-shapes)" + ], + [ + "141e7c86", + "2018-09-14", + "docs(examples): add dflow diagram, update readme" + ], + ["42c1c403", "2018-09-14", "fix(examples): add missing file download.ts"], + [ + "7778c404", + "2018-09-14", + "Merge branch 'feature/hdom-canvas' into feature/geom" + ], + [ + "6e20e3e2", + "2018-09-14", + "feat(hiccup): add `.toHiccup()` interface support" + ], + [ + "8ecdd139", + "2018-09-14", + "feat(hdom-canvas): add `.toHiccup()` interface support" + ], + [ + "54ba0ce1", + "2018-09-14", + "feat(hdom): add `.toHiccup()` interface support" + ], + ["177855c3", "2018-09-14", "feat(examples): add geom circle test"], + [ + "c03259cb", + "2018-09-14", + "feat(geom): import (updated) old thi.ng/geom package (minus vectors)" + ], + ["f25db9a2", "2018-09-14", "docs(hdom-canvas): update readme"], + [ + "b8f79568", + "2018-09-14", + "feat(examples): add SVG conversion & export to hdom-canvas-shapes" + ], + [ + "3acb0dd8", + "2018-09-14", + "fix(hiccup-svg): update points() to use \"xlink:href\" (fix for safari)" + ], + [ + "7a6cf519", + "2018-09-14", + "feat(hiccup-svg): re-parse alpha colors in gradients (fix for safari)" + ], + [ + "d4122694", + "2018-09-14", + "feat(hdom-canvas): update points() to use circle or rect shapes" + ], + [ + "214cb62d", + "2018-09-14", + "feat(hiccup-svg): add custom shape support for points(), use instancing" + ], + [ + "cf4add3e", + "2018-09-14", + "refactor(hiccup-svg): update attrib conversion" + ], + [ + "a00761ba", + "2018-09-14", + "refactor(examples): update svg `text` arg order (hiccup-svg update)" + ], + [ + "f45f4ff0", + "2018-09-14", + "refactor(examples): update gradient def in svg-waveform" + ], + [ + "c20b24a7", + "2018-09-14", + "refactor(hdom-canvas): swap `img` args to be more consistent w/ others" + ], + [ + "4cb8cf72", + "2018-09-14", + "feat(hiccup-svg): add new elements, update convertTree(), refactor" + ], + [ + "0c4dddce", + "2018-09-14", + "feat(hiccup-svg): add convertTree() interop helpers (#44)" + ], + ["fb9c704d", "2018-09-14", "docs(hdom-canvas): update readme"], + ["de61c215", "2018-09-14", "feat(hdom-canvas): add `defs` node/group type"], + ["75002fad", "2018-09-13", "build: update upload-examples"], + [ + "17d13866", + "2018-09-13", + "feat(examples): use location.hash to select tests, update assets" + ], + ["c8d7a7c9", "2018-09-13", "feat(examples): update canvas image test"], + [ + "f7af43c1", + "2018-09-13", + "Merge branch 'feature/hdom-v5' into feature/hdom-canvas" + ], + ["c2859105", "2018-09-13", "perf(checks): update isPlainObject()"], + [ + "bde18d50", + "2018-09-13", + "refactor(hdom): use custom equiv also for diffAttributes()" + ], + [ + "481d9d34", + "2018-09-13", + "perf(diff): update diffObject() & add IOC support for custom equiv fn" + ], + ["a9e173e7", "2018-09-13", "test(hdom): update tests"], + [ + "96beaf38", + "2018-09-13", + "refactor(hdom): trial run of custom equiv() impl for diffTree()" + ], + [ + "ee55accd", + "2018-09-13", + "perf(equiv): inline & refactor type checks, add IOC support for helpers" + ], + ["360f15af", "2018-09-13", "feat(examples): add canvas image test"], + ["6b62067b", "2018-09-13", "docs(hdom-canvas): update readme"], + ["99020cad", "2018-09-13", "docs(hdom-canvas): update readme"], + ["5aa9d46a", "2018-09-13", "refactor(hdom-canvas): update attrib aliases"], + [ + "b6c1e42e", + "2018-09-13", + "docs(examples): update hdom-canvas-* build instructions" + ], + ["2b16d24d", "2018-09-13", "docs(examples): update readme"], + ["2fa4c56c", "2018-09-13", "refactor(examples): update hdom-canvas-shapes"], + [ + "6496e47b", + "2018-09-13", + "feat(hdom-canvas): add new shape types, add canvas attribs, refactor" + ], + ["5a3c3147", "2018-09-13", "refactor(examples): minor updates shape test"], + ["98735395", "2018-09-13", "docs(examples): update example table (readme)"], + ["7aae4333", "2018-09-13", "feat(examples): add hdom-canvas-shapes"], + [ + "81fe154d", + "2018-09-13", + "feat(hdom-canvas): fix #43, add gradient support" + ], + [ + "d5e01ff8", + "2018-09-12", + "Merge branch 'feature/hdom-v5' into feature/hdom-canvas" + ], + ["e4f780c7", "2018-09-12", "fix(hdom): minor fix (hydrateDOM)"], + [ + "81a39ba7", + "2018-09-12", + "refactor(hdom-canvas): update to reflect hdom api changes" + ], + [ + "700352de", + "2018-09-12", + "Merge branch 'feature/hdom-v5' into feature/hdom-canvas" + ], + [ + "832e419c", + "2018-09-12", + "fix(transducers-hdom): update to work w/ new @thi.ng/hdom v5 API" + ], + ["1ac245f8", "2018-09-12", "feat(hdom): reorg & extend HDOMImplementation"], + ["66c007de", "2018-09-12", "feat(checks): add isNotStringAndIterable()"], + [ + "764373a7", + "2018-09-12", + "feat(hdom-canvas): add rounded rect option (as path)" + ], + [ + "2a973fd1", + "2018-09-12", + "Merge branch 'feature/hdom-v5' into feature/hdom-canvas" + ], + [ + "1cfad519", + "2018-09-12", + "refactor(hdom-canvas): update canvas component, add docs" + ], + [ + "2e3fb660", + "2018-09-12", + "perf(hdom): add opt `__release` attrib to disable releaseDeep()" + ], + [ + "cfadbe3e", + "2018-09-12", + "refactor(examples): update clock main group attribs" + ], + [ + "1d24a166", + "2018-09-12", + "feat(hdom-canvas): add canvas-specific normalizeTree() impl" + ], + [ + "59bb19c2", + "2018-09-11", + "feat(hdom): update normalizeTree, add to HDOMImplementation" + ], + [ + "82cd9389", + "2018-09-11", + "feat(hdom-canvas): add path shape type, embedded fn & iterator handling" + ], + [ + "c69454b0", + "2018-09-11", + "refactor(examples): update attribs & scengraph in hdom-canvas-clock" + ], + [ + "ccbf53cf", + "2018-09-11", + "feat(hdom-canvas): implement drawing state inheritance & restoration" + ], + [ + "17060403", + "2018-09-11", + "build(examples): enable source maps in all examples, update make-example" + ], + [ + "d93efa86", + "2018-09-11", + "refactor(examples): minor updates hdom-canvas-clock, enable source map" + ], + [ + "d3acb707", + "2018-09-11", + "feat(hdom-canvas): add more shapes/prims, update transform handling" + ], + [ + "b4a37dd3", + "2018-09-10", + "Merge branch 'develop' into feature/hdom-canvas" + ], + ["685fd0bd", "2018-09-10", "Merge branch 'develop' into feature/hdom-v5"], + ["bdb57f83", "2018-09-10", "Publish"], + ["f4cc0dda", "2018-09-10", "refactor(vectors): Vec3/4 toString() impls"], + ["ae261ab5", "2018-09-10", "fix(vectors): GVec.copy() / get()"], + ["07d1ccfc", "2018-09-10", "fix(vectors): Mat23/33/44 toString() impls"], + [ + "3dd00725", + "2018-09-10", + "feat(vectors): add matrix index & property accessors" + ], + ["54e59a08", "2018-09-10", "fix(examples): re-enable HMR logic"], + [ + "dc618983", + "2018-09-10", + "refactor(hdom-canvas): rename types due to hdom update" + ], + [ + "5546c0d2", + "2018-09-10", + "Merge branch 'feature/hdom-v5' into feature/hdom-canvas" + ], + [ + "cc73c769", + "2018-09-10", + "refactor(hdom): rename HDOMOps => HDOMImplementation, add docs" + ], + [ + "ada7d34e", + "2018-09-10", + "build: add max-age cache header (upload-examples)" + ], + ["2fdcf104", "2018-09-10", "refactor(examples): update clock demo"], + ["689e775e", "2018-09-10", "feat(examples): add hdom-canvas-clock demo"], + [ + "f41014eb", + "2018-09-10", + "feat(hdom-canvas): rename package, add text support, refactor" + ], + [ + "60f12c5d", + "2018-09-10", + "feat(hiccup-canvas): add canvas comp, createTree impl, update deps" + ], + [ + "46c5cd2c", + "2018-09-10", + "Merge branch 'feature/hdom-v5' into feature/hiccup-canvas" + ], + ["525d90d5", "2018-09-10", "feat(hdom): generalize diffElement() (#4)"], + [ + "5cb4350f", + "2018-09-09", + "feat(hdom): add optional support for blocking normalize & diff" + ], + ["c47711f9", "2018-09-09", "refactor(hiccup-canvas): add notes"], + [ + "84a6f441", + "2018-09-09", + "Merge branch 'develop' into feature/hiccup-canvas" + ], + ["146868d1", "2018-09-09", "build: update make-module script"], + ["890eb97c", "2018-09-09", "docs(compose): add missing package desc"], + ["266d02b0", "2018-09-09", "docs: update badges in all readme files"], + [ + "eb284f01", + "2018-09-09", + "feat(hiccup-canvas): add hiccup-canvas package" + ], + ["9bde777a", "2018-09-08", "fix(examples): add missing html file"], + ["d003cab6", "2018-09-08", "docs(examples): update readme"], + ["6051439d", "2018-09-08", "feat(examples): add gesture-analysis example"], + ["bfd3c2f2", "2018-09-08", "Publish"], + ["06f61cf4", "2018-09-08", "fix: missing comma in make-example script"], + ["8856a18f", "2018-09-08", "test(rstream): add merge-only sync tests"], + [ + "1f22867f", + "2018-09-08", + "feat(transducers): rename window() => slidingWindow(), update readme" + ], + [ + "2916432d", + "2018-09-08", + "docs(transducers): update partitionSync() docs" + ], + [ + "162aa2d5", + "2018-09-08", + "feat(rstream): add merge-only mode for StreamSync, update docs" + ], + [ + "d8fdc018", + "2018-09-08", + "feat(transducers): update partitionSync() xform & PartitionSyncOpts" + ], + ["2f0f3d48", "2018-09-08", "feat(transducers): add window() xform"], + ["014bd980", "2018-09-07", "fix: update upload-examples script"], + [ + "b4c2e1c0", + "2018-09-07", + "build: update `yarn examples` command, update readme" + ], + [ + "81610117", + "2018-09-07", + "build: add build-examples, update make-example script" + ], + [ + "316ad6ae", + "2018-09-07", + "build(examples): update all examples to use parcel instead of webpack" + ], + [ + "b1ef187d", + "2018-09-07", + "build: update lerna, replace webpack deps w/ parcel" + ], + ["42d142dc", "2018-09-06", "Publish"], + ["d54dffb0", "2018-09-06", "docs(examples): update table"], + ["cf516aa5", "2018-09-06", "Merge branch 'feature/defonce' into develop"], + [ + "83fa7ade", + "2018-09-06", + "feat(examples): add hmr-basics demo (fixes #40)" + ], + ["61bed88b", "2018-09-06", "feat(memoize): add defonce()"], + ["e0f83c4a", "2018-09-05", "Publish"], + [ + "2eec7006", + "2018-09-05", + "feat(vectors): add/update transformVectors*(), update types" + ], + [ + "2d5d0c86", + "2018-09-05", + "refactor(vectors): rename immutable vec ops, update readme table" + ], + ["f7df4cba", "2018-09-05", "chore: update .gitignore (add gtm)"], + ["c4631533", "2018-09-05", "test(vectors): add benchmarks"], + ["2583380b", "2018-09-04", "docs(vectors): update readme"], + ["a3c04076", "2018-09-04", "feat(vectors): add immutable vec2/3/4 ops"], + ["be6ae489", "2018-09-03", "Publish"], + [ + "9510f01a", + "2018-09-03", + "feat(vectors): add new vector ops, update readme" + ], + ["a5b3f84c", "2018-09-03", "docs(vectors): add/update doc strings"], + ["7001b7a8", "2018-09-03", "refactor(vectors): update matrix factories"], + ["f0ccd0c5", "2018-09-03", "feat(vectors): add mixBilinear1/2/3/4"], + [ + "ad131513", + "2018-09-03", + "fix(vectors): update GVec method args (readonly)" + ], + [ + "25ea00ca", + "2018-09-03", + "fix(vectors): add opt normalize for angleBetween2/3" + ], + ["c0fbb4ed", "2018-09-03", "fix(vectors): add missing arg types"], + ["34ffe9d7", "2018-09-03", "docs(hdom): update/fix docs & readme"], + ["4a16bd56", "2018-09-03", "refactor(transducers): update normRange()"], + ["16aa0c46", "2018-09-03", "feat(vectors): add Vec*.intoBuffer() impls"], + ["ba386e52", "2018-09-01", "Publish"], + ["6acb05bb", "2018-09-01", "build(examples): fix deps"], + [ + "1795f187", + "2018-09-01", + "refactor(vectors): update Vec2/3/4 index signatures" + ], + ["fc7c670b", "2018-09-01", "Publish"], + ["e5662a0a", "2018-09-01", "docs(paths): update readme, add tests"], + [ + "a7104535", + "2018-09-01", + "fix(resolve-map): deep resolve of yet unknown path values" + ], + [ + "f0183530", + "2018-09-01", + "feat(paths): add exists() path checker & tests" + ], + ["e66a4929", "2018-09-01", "fix(hdom): fix local import"], + ["71ee43ca", "2018-09-01", "Publish"], + ["e7016b42", "2018-09-01", "docs(hdom): fix screenshot link"], + ["a8282925", "2018-09-01", "Publish"], + ["d2b4fafb", "2018-09-01", "fix(vectors): add missing deps"], + [ + "208e57d2", + "2018-09-01", + "docs: update various readme's, add/move screenshots" + ], + ["7fa3852a", "2018-08-31", "Publish"], + ["1060b2a3", "2018-08-31", "docs(hdom): update readme, add hydrate docs"], + [ + "473aadc1", + "2018-08-31", + "refactor(examples): update crypto-chart to use `updateDOM` xform" + ], + [ + "1a6741a1", + "2018-08-31", + "refactor(examples): update `updateDOM()` transducer call sites" + ], + [ + "0f396948", + "2018-08-31", + "feat(transducers-hdom): add DOM hydration support, rename (#39)" + ], + ["5e74a9c0", "2018-08-31", "feat(hdom): update HDOMOpts & start()"], + ["1e8b4efa", "2018-08-31", "fix(hiccup): serialize() args"], + ["52417e37", "2018-08-31", "fix(examples): minor update hydrate demo"], + ["e7607f53", "2018-08-31", "docs(examples): update readmes"], + ["0d34bb7d", "2018-08-31", "feat(examples): add hydrate-basics example"], + [ + "26bc7e74", + "2018-08-31", + "refactor(examples): update hdom start() call sites to new API" + ], + [ + "d55d9303", + "2018-08-31", + "refactor(hdom): minor update HDOMOpts & start()" + ], + [ + "9f8010db", + "2018-08-31", + "feat(hdom): add DOM hydration support (SSR), update start() (#39)" + ], + [ + "1b97a25a", + "2018-08-31", + "fix(hiccup): disable spans for certain element types" + ], + [ + "1b0deb22", + "2018-08-31", + "feat(hiccup): add optional support for spans & auto keying (#39)" + ], + ["b8d944eb", "2018-08-31", "refactor(vectors): update matrices & types"], + ["0a806011", "2018-08-30", "refactor(vectors): update mulV*() arg order"], + ["80f291b5", "2018-08-30", "Publish"], + [ + "461adeef", + "2018-08-30", + "docs(resolve-map): fix #35, update docs & tests" + ], + ["0673f0f4", "2018-08-30", "fix(examples): fix #38, add missing dep"], + ["75d6409e", "2018-08-30", "build: update yarn.lock"], + ["d1b77cfe", "2018-08-30", "docs(vectors): update readme"], + [ + "d5cec948", + "2018-08-30", + "feat(vectors): update types, update GVec, add maths fns, swap impls" + ], + [ + "bdb5d377", + "2018-08-29", + "feat(vectors): consolidate vector consts, add toJSON() impls" + ], + ["bb55adf3", "2018-08-29", "Merge branch 'develop' into feature/webgl"], + [ + "b82a22f5", + "2018-08-29", + "refactor(vectors): simplify prop accessors (DRY)" + ], + ["f5795eee", "2018-08-28", "Publish"], + ["cd834f82", "2018-08-28", "feat(vectors): add more vec2/3 ops"], + ["4a373674", "2018-08-28", "feat(bench): add opt prefix arg, update docs"], + ["39cced5f", "2018-08-28", "minor(examples): add cursor css for dial"], + ["986e954f", "2018-08-27", "Publish"], + [ + "5afb5791", + "2018-08-27", + "Merge pull request #34 from andrew8er/pr/fix-rstream-resolve-errors" + ], + [ + "34a97b47", + "2018-08-27", + "fix(rstream): Fix unbound this in method call expression" + ], + ["917d81d1", "2018-08-27", "Publish"], + ["dee0476d", "2018-08-27", "docs(examples): update list of examples"], + [ + "d7235a3e", + "2018-08-27", + "feat(examples): add mouse & touch events for canvas-dial, refactor" + ], + [ + "a0cbd2b8", + "2018-08-27", + "feat(atom): add .value accessor aliases (for deref()/reset())" + ], + ["cfb2b747", "2018-08-27", "feat(vectors): add mix1(), minor cleanups"], + [ + "ccc40a9d", + "2018-08-27", + "feat(rstream-gestures): add options for local & scaled positions" + ], + [ + "b25edbec", + "2018-08-27", + "fix(hdom-components): call canvas update from init()" + ], + ["3f27acd7", "2018-08-27", "docs(rstream): update merge() docs"], + ["b5633b18", "2018-08-27", "feat(examples): add canvas-dial example (WIP)"], + [ + "135d6f1b", + "2018-08-27", + "feat(hdom-components): add HDPI adaptation helper for canvas comps" + ], + ["9d542b92", "2018-08-26", "minor(examples): fix/update comments"], + [ + "80a5f300", + "2018-08-26", + "feat(examples): add client/browser version of commit-log" + ], + [ + "318401c0", + "2018-08-25", + "refactor(examples): update components, add docs" + ], + [ + "37718855", + "2018-08-25", + "refactor(examples): further DRY & readme updates" + ], + ["82db75b2", "2018-08-25", "docs: fix example table"], + ["0cd261cf", "2018-08-25", "docs(example): update example list"], + ["fca0b13d", "2018-08-25", "docs(examples): add more comments"], + ["ae383f8e", "2018-08-25", "refactor(examples): simplify date handling"], + [ + "4be74bae", + "2018-08-25", + "fix(examples): commit log parsing, minor update html()" + ], + [ + "d0b1a1e4", + "2018-08-25", + "feat(examples): add commit-table-ssr express server / git commit log demo" + ], + ["80cae22d", "2018-08-25", "chore: update make-module script"], + ["866f3cdd", "2018-08-25", "refactor(cache): update iterator methods"], + ["8e9ba347", "2018-08-24", "Publish"], + ["113b424b", "2018-08-24", "docs: fix links in readmes"], + ["f9a1cc2a", "2018-08-24", "docs(transducers-stats): fix screenshot link"], + ["89e1bd51", "2018-08-24", "docs(rle-pack): fix diagram link"], + ["1c92f223", "2018-08-24", "Publish"], + ["cff9d18a", "2018-08-24", "docs(transducers): update readme examples"], + ["7a5be213", "2018-08-24", "fix(transducers): arg handling in rename()"], + ["389aff82", "2018-08-24", "build: update yarn.lock"], + ["b3f94159", "2018-08-24", "Merge branch 'feature/tx-v2' into develop"], + ["3057237f", "2018-08-24", "refactor(iges): transducer imports & usage"], + [ + "28110726", + "2018-08-24", + "assets(examples): update crypto-chart screenshot" + ], + ["2a443a56", "2018-08-24", "docs(transducers-stats): update readme"], + ["024a4e96", "2018-08-24", "docs(transducers): update readme"], + ["832e57f1", "2018-08-24", "fix(transducers): copy&paste error (push)"], + [ + "d861bdd1", + "2018-08-24", + "fix(transducers): iterator1() final reduced value handling" + ], + [ + "599f2b66", + "2018-08-24", + "feat(transducers): update base64Encode() to return string if input given" + ], + ["1025996e", "2018-08-24", "docs(rle-pack): update readme & diagram"], + [ + "40415217", + "2018-08-24", + "feat(rle-pack): further update data format (non-repeats)" + ], + [ + "694a2537", + "2018-08-24", + "feat(rle-pack): update data format, custom repeat sizes, rename fns" + ], + [ + "89b4ad5d", + "2018-08-23", + "feat(transducers): update all reducers to accept opt iterables" + ], + [ + "2c3a1147", + "2018-08-23", + "feat(transducers): add GroupByOpts interface, update groupBy* reducers" + ], + [ + "8565edb8", + "2018-08-23", + "fix(rle-pack): fix initial repeat counts in encodeBytes(), update readme" + ], + [ + "0bd860e6", + "2018-08-23", + "feat(transducers): add fill() & fillN() reducers" + ], + [ + "fb3c04da", + "2018-08-23", + "refactor(vectors): make Vec & Mat type aliases of NumericArray" + ], + [ + "519394b3", + "2018-08-23", + "feat(api): add NumericArray and TypedArray types" + ], + ["ecfcdcd9", "2018-08-23", "build: update yarn.lock"], + ["116ede83", "2018-08-23", "docs(transducers): update readme"], + [ + "c716e4ac", + "2018-08-23", + "add(transducers): add IReducible support for transduce() & run()" + ], + [ + "1280cfd5", + "2018-08-22", + "feat(dcons): add IReducible impl, update deps & imports" + ], + [ + "f14f7ce5", + "2018-08-22", + "feat(associative): add IReducible impls for SortedMap & SortedSet" + ], + [ + "9d83255a", + "2018-08-22", + "perf(transducers): add IReducible, update reduce()" + ], + [ + "fd8e7614", + "2018-08-09", + "feat(rle-pack): add support for custom input word sizes" + ], + ["4fdd3c92", "2018-08-09", "docs(transducers): update readme"], + ["3e659181", "2018-08-09", "minor(transducers): fix comp import"], + [ + "1434b0ed", + "2018-08-09", + "refactor(hdom): remove thi.ng/iterators dependency" + ], + ["802c5b44", "2018-08-09", "build(memoize): update/fix dev deps"], + [ + "f3d46460", + "2018-08-09", + "refactor(rstream): use SEMAPHORE from thi.ng/api, not transducers" + ], + ["5d5c70ab", "2018-08-09", "Merge branch 'master' into feature/tx-v2"], + ["e9c8ddc6", "2018-08-09", "chore(strings): update exports, add docs"], + ["653a175a", "2018-08-09", "feat(strings): add case converters"], + [ + "5209c426", + "2018-08-09", + "fix(strings): buffer length (for null inputs) (`center()`)" + ], + [ + "1a20bc2f", + "2018-08-09", + "feat(strings): add truncateLeft() & wrap() stringers" + ], + [ + "3a8bd088", + "2018-08-09", + "refactor(transducers): replace local types w/ external defs" + ], + [ + "ca0a04e7", + "2018-08-09", + "feat(compose): extract comp() & juxt() to new @thi.ng/compose package" + ], + [ + "bea7a1fd", + "2018-08-09", + "refactor(resolve-map): replace SEMAPHORE const w/ thi.ng/api def" + ], + [ + "9b443cb4", + "2018-08-09", + "refactor(hdom): replace SEMAPHORE const w/ thi.ng/api def" + ], + [ + "c22ac3ce", + "2018-08-09", + "refactor(associative): replace Pair & SEMAPHORE w/ identical thi.ng/api defs" + ], + [ + "cf30ba26", + "2018-08-09", + "feat(api): add new/move type aliases into api.ts" + ], + [ + "c9ac981a", + "2018-08-09", + "feat(transducers-stats): make xforms iterable if input given" + ], + [ + "ab662d8a", + "2018-08-09", + "perf(transducers): add iterator1(), update various xforms" + ], + ["d130aaa1", "2018-08-08", "build: fix transducer versions"], + [ + "8a111efd", + "2018-08-08", + "refactor(transducers): add shared SortOpts, update xforms" + ], + ["3e6c4624", "2018-08-08", "chore: update .gitignore"], + ["afb267a0", "2018-08-08", "docs: add graphviz dot files"], + [ + "dcccbcba", + "2018-08-08", + "refactor(examples): simplify transducer usages" + ], + [ + "c17cb087", + "2018-08-08", + "refactor(hdom-components): update/replace deps (iterators => transducers)" + ], + [ + "420cfe37", + "2018-08-08", + "test(csp): fix regression to due transducers update" + ], + [ + "d6352267", + "2018-08-08", + "refactor(dgraph): update/replace deps (iterators => transducers)" + ], + [ + "78d0a844", + "2018-08-08", + "fix(iges): regression to due transducers update" + ], + [ + "065d78ba", + "2018-08-08", + "refactor(cache): update/replace deps (iterators => transducers)" + ], + [ + "abe1a886", + "2018-08-08", + "refactor(associative): update/replace deps (iterators => transducers)" + ], + [ + "eb1714f5", + "2018-08-08", + "refactor(rstream-query): simplify transducer uses" + ], + [ + "cd5c6ff1", + "2018-08-08", + "refactor(rstream): update StreamSync transducer init" + ], + [ + "bae8a1d8", + "2018-08-08", + "feat(transducers): update all xforms to also work as iterator" + ], + [ + "e713704f", + "2018-08-08", + "refactor(transducers): rename inspect() => trace()" + ], + [ + "45e49930", + "2018-08-08", + "refactor(transducers): add ReductionFn type alias, update Reducer" + ], + ["723da5bb", "2018-08-08", "fix(transducers): hex type decl"], + ["ea768ad0", "2018-08-08", "Publish"], + [ + "6a0db9c7", + "2018-08-08", + "refactor(examples): replace hex() => radix(), update deps" + ], + [ + "b1ea9a55", + "2018-08-08", + "refactor(transducers): deprecate hex(), update hexDump() xform & deps" + ], + ["5864f2cd", "2018-08-08", "feat(strings): add opt prefix arg for radix()"], + [ + "a5e2c28a", + "2018-08-08", + "feat(transducers): add partitionBits() xform & tests" + ], + ["6eb97b58", "2018-08-08", "Publish"], + ["b2ebbfc8", "2018-08-08", "fix(strings): float type decl"], + ["0f2cf77d", "2018-08-08", "Publish"], + ["a14e5b24", "2018-08-08", "docs: update readmes"], + [ + "56d64c50", + "2018-08-08", + "refactor(examples): update crypto-chart to use @thi.ng/strings" + ], + ["df067d84", "2018-08-08", "refactor(iges): update to use @thi.ng/strings"], + [ + "40781eb3", + "2018-08-08", + "feat(strings): re-import & update @thi.ng/strings from MBP2010" + ], + ["369f375d", "2018-08-08", "build(memoize): update deps"], + [ + "2bc092d4", + "2018-08-08", + "feat(memoize): add optional cache arg for memoizeJ()" + ], + ["adc49285", "2018-08-07", "feat(memoize): add @thi.ng/memoize package"], + ["252411aa", "2018-08-06", "Publish"], + ["46d02f34", "2018-08-06", "refactor(examples): update rstream examples"], + ["378772fb", "2018-08-06", "fix(rstream): add generics for stream()"], + ["ec777c09", "2018-08-03", "Publish"], + ["f7500359", "2018-08-03", "docs: add rootlevel license file"], + [ + "7c54c68f", + "2018-08-03", + "refactor(examples): minor update rstream examples" + ], + [ + "361f8b43", + "2018-08-03", + "refactor(rstream-query): remove obsolete `reset` in addJoin()" + ], + [ + "f9466317", + "2018-08-03", + "refactor(rstream-graph): remove obsolete `reset` in node() factory" + ], + ["32810900", "2018-08-03", "test(rstream): update tests"], + ["e1f4667c", "2018-08-03", "chore(rstream): remove obsolete file"], + [ + "9101e089", + "2018-08-03", + "docs(rstream): add/update docs for all remaining stream constructs" + ], + [ + "e97aac0d", + "2018-08-03", + "feat(rstream): add stream() & subscription() factories, add/update docs" + ], + [ + "55499cc4", + "2018-08-03", + "feat(rstream): update StreamSync to use `reset: false` by default, update docs" + ], + ["2f0235ea", "2018-08-03", "docs: update main readme"], + ["4a9b4cce", "2018-08-03", "Publish"], + [ + "c5afc7b3", + "2018-08-03", + "refactor(examples): simplify rstream-hdom example" + ], + [ + "fdc7630b", + "2018-08-03", + "refactor(iges): only expect ArrayLike points/vectors, minor other updates" + ], + ["9ea44beb", "2018-08-03", "test(transducers): add padLast() tests"], + ["e50fd10e", "2018-08-03", "feat(transducers): add peek() helper fn"], + [ + "ff91987f", + "2018-08-03", + "docs(transducers): add docs & examples for ~50% of all transducers" + ], + [ + "69d25c8c", + "2018-08-02", + "refactor(examples): update transducers-hdom example" + ], + [ + "949a5d46", + "2018-08-02", + "fix(transducers-hdom): support hdom user context" + ], + ["feae35b0", "2018-08-02", "Publish"], + ["8ee1b103", "2018-08-02", "Merge branch 'develop'"], + [ + "698bb60d", + "2018-08-02", + "fix(examples): add missing files (triple-query)" + ], + ["3e70c31a", "2018-08-02", "feat(examples): add transducers-hdom example"], + [ + "7efce7a7", + "2018-08-02", + "feat(transducers-hdom): add new package @thi.ng/transducers-hdom" + ], + [ + "d4aa5ea2", + "2018-08-02", + "refactor(examples): add new types for crypto-chart example" + ], + ["bc26fb33", "2018-08-02", "Publish"], + ["381ad971", "2018-08-02", "Merge branch 'develop'"], + ["4ce80e79", "2018-08-02", "docs(vectors): update readme"], + [ + "befc7785", + "2018-08-02", + "refactor(vectors): update cylindrical coord conversion, add Vec3 methods" + ], + [ + "74f939c3", + "2018-08-02", + "feat(vectors): add toCylindrical3() / fromCylindrical3()" + ], + [ + "3039a35a", + "2018-08-02", + "feat(vectors): make Vec2/3/4 array-like, add IEquiv impls, add tests" + ], + [ + "2a13f28c", + "2018-08-02", + "feat(vectors): add gvec size checks, add IEquiv & Iterable impls" + ], + [ + "d007a8ae", + "2018-08-02", + "docs(examples): update example table (add triple-query)" + ], + ["248150ee", "2018-08-01", "Publish"], + [ + "b1cf171f", + "2018-08-01", + "chore: update make-* scripts, add cloc stats script" + ], + ["748131a3", "2018-08-01", "chore: update .gitignore"], + [ + "cbfd65a3", + "2018-08-01", + "fix(examples): add utf meta to all example html files" + ], + ["1a8ff8a6", "2018-08-01", "refactor(examples): cleanup imports"], + ["4db3fa83", "2018-08-01", "refactor(rstream-query): cleanup imports"], + ["c1690170", "2018-08-01", "refactor(rstream-dot): cleanup imports"], + ["0f7e82ae", "2018-08-01", "refactor(rstream): cleanup imports"], + ["14672731", "2018-08-01", "refactor(hdom): cleanup imports"], + ["e0ce1061", "2018-08-01", "Publish"], + [ + "68f59f21", + "2018-08-01", + "refactor(vectors): add IVec to all vector class wrappers" + ], + [ + "3ca2cbf1", + "2018-08-01", + "refactor(iges): make fill mode optional for addPolyline2d()" + ], + ["2ac23a34", "2018-08-01", "Merge branch 'feature/iges' into develop"], + ["ee24ede1", "2018-08-01", "Merge branch 'feature/ts3' into develop"], + [ + "e7d2675d", + "2018-08-01", + "feat(examples): add triple-query example project" + ], + ["0f01cc36", "2018-08-01", "minor: markdown fixes in various readmes"], + ["542540f0", "2018-08-01", "build(examples): update webpack deps"], + ["2ecd5384", "2018-08-01", "refactor(router): TS3.0 PropertyKey handling"], + [ + "bf2a3074", + "2018-08-01", + "refactor(pointfree): TS3.0 PropertyKey handling" + ], + [ + "38372cc9", + "2018-08-01", + "refactor(interceptors): TS3.0 PropertyKey handling" + ], + [ + "30d65d4b", + "2018-08-01", + "refactor(defmulti): TS3.0 PropertyKey handling" + ], + [ + "2234313c", + "2018-08-01", + "refactor(associative): TS3.0 PropertyKey handling" + ], + ["20478072", "2018-08-01", "refactor(api): TS3.0 PropertyKey handling"], + [ + "c7f72440", + "2018-08-01", + "build: update dev dependencies in all packages & examples" + ], + ["56a1f0eb", "2018-07-30", "Publish"], + [ + "3534274a", + "2018-07-30", + "fix(vectors): get*() return types, refactor using set*()" + ], + ["0ca667a4", "2018-07-30", "Publish"], + [ + "3de5cea4", + "2018-07-30", + "fix(vectors): naming convention, add function overview tables" + ], + ["474f8df5", "2018-07-29", "Merge branch 'develop' into feature/iges"], + ["e82d97a7", "2018-07-29", "docs: update package list main readme"], + ["aef277f8", "2018-07-29", "Publish"], + ["ae1da134", "2018-07-29", "docs(vectors): update readme & package info"], + ["acedfae8", "2018-07-29", "Merge branch 'feature/geom' into develop"], + ["93b268a6", "2018-07-29", "docs(vectors): update readme"], + ["6571b8a3", "2018-07-29", "test(vectors): add gvec tests"], + [ + "d2bdf79e", + "2018-07-29", + "refactor(vector): update eqDelta impls, rename array transformers" + ], + [ + "54b3db2d", + "2018-07-29", + "feat(vectors): update get & copy fns to retain buffer types" + ], + [ + "f99cf3dc", + "2018-07-29", + "refactor(vectors): add gvec default length args" + ], + [ + "5bba592d", + "2018-07-29", + "feat(vectors): add swizzle fns, update/unify fn naming" + ], + [ + "e3c61675", + "2018-07-29", + "feat(vectors): add generic vec fns & class wrapper" + ], + [ + "1f0551d0", + "2018-07-28", + "refactor(vectors): various small fixes/additions (matrices)" + ], + [ + "1ec75e61", + "2018-07-27", + "feat(vectors): re-add matrix class wrappers, update vec classes" + ], + ["29500b6d", "2018-07-26", "build: add babel-minify dev dependency"], + [ + "21b04f06", + "2018-07-26", + "feat(vectors): re-import updated mat44, add orthoNormal3" + ], + ["eb3f66fb", "2018-07-26", "test(vectors): add tests"], + [ + "4fdda6a9", + "2018-07-26", + "feat(vectors): re-import updated mat23/33/44 functions" + ], + ["2a5a744d", "2018-07-25", "fix(vectors): copy/paste mistakes, add tests"], + [ + "e289db2b", + "2018-07-25", + "refactor(vectors): add op22/32, simplify various vec2/3 ops" + ], + ["b59fadfd", "2018-07-25", "feat(vectors): add vec4 ops & class wrapper"], + [ + "35af6a56", + "2018-07-25", + "feat(vectors): add minor/majorAxis(), minor/major2/3" + ], + ["5c52f771", "2018-07-25", "Merge branch 'develop' into feature/geom"], + ["5a3b9988", "2018-07-25", "Publish"], + [ + "a322e001", + "2018-07-25", + "fix(transducers-stats): fix naming of MACD results (#31)" + ], + ["03f94352", "2018-07-25", "Publish"], + ["d967f94e", "2018-07-25", "docs(transducers-stats): update docs & readme"], + [ + "c97cb75c", + "2018-07-25", + "feat(transducers-stats): add BollingerBand value interface" + ], + ["b92aaa58", "2018-07-25", "feat(transducers-stats): add MACD (fixes #31)"], + [ + "d1541539", + "2018-07-25", + "feat(vectors): re-import vector types from old thi.ng/geom TS version" + ], + [ + "f7a084ae", + "2018-07-24", + "feat(iges): add PolylineMode enum, update addPolyline2d()" + ], + ["e349cb6a", "2018-07-23", "docs(transducers): update readmes"], + ["e7772934", "2018-07-21", "Publish"], + [ + "0b0a7ca9", + "2018-07-21", + "feat(transducers-stats): add stochastic oscillator, refactor" + ], + [ + "2953caaa", + "2018-07-21", + "feat(examples): add MA mode dropdown, update crypto-chart dataflow" + ], + [ + "e3def294", + "2018-07-21", + "refactor(examples): switch to WMA plots in crypto-chart demo" + ], + ["fde777d0", "2018-07-21", "docs: update main readme"], + [ + "76dc450d", + "2018-07-21", + "feat(range-coder): re-import @thi.ng/range-coder package from MB2010" + ], + ["8389a2c7", "2018-07-20", "Publish"], + ["7cfb8e5a", "2018-07-20", "minor(rstream): remove obsolete args (pubsub)"], + [ + "a59c5c94", + "2018-07-20", + "perf(rstream): optimize dispatch if only single child" + ], + ["cd751fb4", "2018-07-20", "feat(rstream): add reset option for timeout()"], + [ + "7b10e0c9", + "2018-07-20", + "Merge pull request #30 from andrew8er/feature/rstream-add-timeout" + ], + ["e8009a68", "2018-07-19", "docs(transducers-stats): update readme links"], + ["52ce30c4", "2018-07-19", "docs: update main readme"], + ["7e497439", "2018-07-19", "build(transducers-stats): update package deps"], + ["1de746b2", "2018-07-19", "Merge branch 'feature/tx-stats' into develop"], + ["7df3ce04", "2018-07-19", "feat(transducers-stats): add other xforms"], + [ + "7a5812fb", + "2018-07-19", + "feat(transducers-stats): add @thi.ng/transducers-stats package" + ], + ["1fe612de", "2018-07-19", "docs(transducers): reapply MD fixes"], + ["3a2aa7a6", "2018-07-19", "Merge branch 'master' into develop"], + [ + "78701493", + "2018-07-19", + "feat(examples): update axis ticks, add more symbols, refactor SMAs" + ], + ["08db846b", "2018-07-19", "docs(transducers): update readme"], + ["64de94b5", "2018-07-19", "Publish"], + [ + "9874acec", + "2018-07-19", + "perf(transducers): update movingAverage() xform, add docs" + ], + ["482943c8", "2018-07-18", "docs(transducers): add/update doc strings"], + ["ccc37c67", "2018-07-18", "feat(transducer): add asIterable() helper"], + [ + "092154c7", + "2018-07-18", + "feat(transducers): allow key arrays for rename(), simplify call sites" + ], + [ + "9b07d12a", + "2018-07-18", + "feat(transducers): add juxtR() for multiplexed reductions from same src" + ], + ["aa55973e", "2018-07-17", "feat(rstream): Add a timeout() subscription"], + ["2733684e", "2018-07-16", "Publish"], + [ + "732a0967", + "2018-07-16", + "docs(examples): update readme & dataflow diagram" + ], + [ + "3edbaefc", + "2018-07-16", + "feat(examples): add auto-refresh, add data credits" + ], + [ + "9be20180", + "2018-07-16", + "fix(rstream): emit first value immediately in fromInterval()" + ], + [ + "0508e40a", + "2018-07-16", + "docs(examples): add/update types in rstream-hdom" + ], + [ + "694e6c64", + "2018-07-16", + "feat(examples): improve time labels on crypto-chart" + ], + [ + "3c1c29ac", + "2018-07-16", + "refactor(examples): remove atom usage from rstream-hdom demo, update docs" + ], + [ + "7cd78e03", + "2018-07-15", + "feat(examples): add theme support for crypto chart, update diagram" + ], + ["9ff8d352", "2018-07-15", "docs(examples): update list of demos"], + ["f1e3d081", "2018-07-15", "docs(examples): add dataflow graph to readme"], + [ + "6989b8db", + "2018-07-15", + "docs(examples): temp fix live demo link in readme" + ], + ["9b26c4b4", "2018-07-15", "Publish"], + [ + "24829454", + "2018-07-15", + "fix(resolve-map): add support for alt ES6 destructure form `{a: b}`" + ], + [ + "08a7600a", + "2018-07-15", + "build(hdom-components): update @types/webgl dep" + ], + ["2d7e7cdf", "2018-07-15", "build: update dev dependencies"], + [ + "c95a3701", + "2018-07-15", + "docs(example): add API ref link, update readme" + ], + ["a8487edc", "2018-07-15", "feat(examples): add crypto chart example"], + ["20b028c6", "2018-07-13", "chore: update make-module script"], + ["4f19be90", "2018-07-13", "docs: fix various markdown issues"], + ["973f1a42", "2018-07-13", "Publish"], + [ + "ee48a94c", + "2018-07-13", + "fix(rstream-gestures): touchevent check in safari" + ], + ["d636876d", "2018-07-13", "Publish"], + [ + "976a6d85", + "2018-07-13", + "refactor(iges): update formatParams(), optimize iges file size" + ], + ["81223dca", "2018-07-13", "feat(transducers): add wordWrap() xform"], + ["634de84d", "2018-07-12", "docs: add @thi.ng/iges to package list"], + ["3935d9a5", "2018-07-12", "Publish"], + ["eb6dfa9b", "2018-07-12", "build(iges): update package info"], + ["b841269a", "2018-07-12", "Merge branch 'feature/iges' into develop"], + [ + "087f3480", + "2018-07-12", + "refactor(iges): emit compressed globals section" + ], + [ + "7f1b2d46", + "2018-07-12", + "feat(iges): re-import & update IGES exporter (via MBP2010)" + ], + ["d061c7d0", "2018-07-11", "Publish"], + [ + "73c7b8ac", + "2018-07-11", + "perf(interceptors): update valueSetter()/valueUpdater()" + ], + [ + "ad4caad9", + "2018-07-11", + "feat(paths): add updater(), refactor updateIn(), update readme" + ], + ["fd23a34e", "2018-07-11", "docs(sax): minor update readme"], + [ + "ef161341", + "2018-07-11", + "docs(sax): add tests & DOM parsing example to readme" + ], + ["8cd279a8", "2018-07-10", "Publish"], + [ + "126103b3", + "2018-07-10", + "fix(hdom): always update \"value\" attrib last in diffAttributes()" + ], + [ + "fcfd4bf8", + "2018-07-09", + "docs(hiccup-css): fix #26, add pseudo-class & attrib selector docs" + ], + ["e4b62d8b", "2018-07-09", "Publish"], + ["22890961", "2018-07-09", "docs(rstream): add AUTHORS.md"], + [ + "d485bfa5", + "2018-07-09", + "Merge pull request #28 from andrew8er/pr/rstream-fix-transduce" + ], + [ + "03543ee9", + "2018-07-09", + "fix(transducers): revert mean() from regression introduced in 095e6ef" + ], + [ + "9513ddd8", + "2018-07-09", + "Merge branch 'master' into pr/rstream-fix-transduce" + ], + [ + "5ec61406", + "2018-07-09", + "build(examples): add missing html/webpack config for rstream-hdom demo" + ], + ["8321660c", "2018-07-09", "feat(examples): add rstream-hdom example"], + [ + "7f2d5dd2", + "2018-07-09", + "fix(rstream): Fix potential reference error in transduce()" + ], + ["84f23d35", "2018-07-09", "Publish"], + [ + "095e6ef3", + "2018-07-09", + "refactor(transducers): add reducer() helper, update existing reducers" + ], + ["0430c769", "2018-07-04", "Publish"], + ["dbbeffb3", "2018-07-04", "docs(paths): update docs & readme"], + ["c7f2f92d", "2018-07-04", "test(paths): add/update tests"], + [ + "3d9d6200", + "2018-07-04", + "feat(paths): update setter() to support arrays, optimize (~2.5x faster)" + ], + ["7fb407c0", "2018-07-04", "Publish"], + ["36165be8", "2018-07-04", "minor(rstream-graph): formatting"], + [ + "de17340a", + "2018-07-04", + "feat(rstream-gestures): add event & preventDefault opts, update docs" + ], + [ + "d5ac2643", + "2018-07-04", + "feat(rstream): add support for event listener opts in `fromEvent()`" + ], + ["9ffa346d", "2018-07-03", "Publish"], + [ + "677c7cc0", + "2018-07-03", + "feat(transducers): add ensureArray(), refactor reverse()" + ], + [ + "17d412af", + "2018-07-03", + "test(rstream-graph): increase timeout to avoid travis errors" + ], + ["a5942022", "2018-07-03", "Publish"], + ["33f0d197", "2018-07-03", "fix(associative): minor SortedSet fixes"], + [ + "1e185011", + "2018-06-29", + "Merge pull request #24 from andrew8er/pr/rstream-transduce-unsubscibe-on-error" + ], + [ + "8c7d9376", + "2018-06-28", + "fix(rstream): unsubscribe on error in transduce()" + ], + ["576f1da3", "2018-06-25", "Publish"], + ["c4fad707", "2018-06-25", "fix(rstream-graph): individual node outputs"], + ["eb2015df", "2018-06-21", "Publish"], + [ + "d0b1e5c4", + "2018-06-21", + "feat(rstream-graph): add stop(), fix `const` inputs, update docs/readme" + ], + [ + "cc5b7367", + "2018-06-21", + "feat(rstream): option to avoid auto-closing `fromInterval()`, add docs" + ], + [ + "4611e8e0", + "2018-06-21", + "chore: update repo & homepage fields in all packages" + ], + ["2223bded", "2018-06-21", "docs: fix package links in readmes"], + ["a3b245c8", "2018-06-20", "Publish"], + ["cd863214", "2018-06-20", "docs(transducers-fsm): fix readme (example)"], + ["60dca8ee", "2018-06-20", "Publish"], + [ + "882f3949", + "2018-06-20", + "feat(sax): add children & trim opts, add CDATA support" + ], + ["6cf0d915", "2018-06-19", "Publish"], + ["eed50b81", "2018-06-19", "docs: update main readme"], + [ + "343e07f1", + "2018-06-19", + "refactor(sax): wrap FSM handler results as arrays, update ELEM_SINGLE" + ], + [ + "a9ca1351", + "2018-06-19", + "feat(transducers-fsm): support multiple results, add tests, update readme" + ], + ["8959b938", "2018-06-19", "docs(sax): update readme (add SVG example)"], + [ + "bbd3b4ba", + "2018-06-19", + "docs(transducers-fsm): update readme, whitespace" + ], + [ + "bc261e57", + "2018-06-19", + "feat(transducers): add matchFirst()/matchLast() xforms, update readme" + ], + [ + "e824b6bb", + "2018-06-19", + "feat(sax): add support for escape seqs, minor optimizations" + ], + ["4e7fca56", "2018-06-18", "chore: update make-module script"], + [ + "30811ce5", + "2018-06-18", + "docs(transducers-fsm): update package keywords" + ], + ["cc11ade5", "2018-06-18", "Publish"], + ["0e4662d1", "2018-06-18", "fix(sax): correct docs in readme"], + ["278a86c2", "2018-06-18", "Publish"], + ["b5b26300", "2018-06-18", "docs: update package docs (bench / dot)"], + ["42e22921", "2018-06-18", "docs: update readmes (add/fix links)"], + ["10e807c5", "2018-06-18", "Merge branch 'feature/sax' into develop"], + ["3589e155", "2018-06-18", "fix(checks): isOdd() for negative values"], + ["23b9cc2e", "2018-06-18", "docs(transducers-fsm): update docs & readme"], + [ + "0f2fcdff", + "2018-06-18", + "feat(sax): add entity support, update result format, update states" + ], + [ + "56deb455", + "2018-06-17", + "refactor(sax): remove extracted FSM transducer & types, update readme" + ], + ["7c3c2903", "2018-06-17", "feat(transducers-fsm): inital import"], + [ + "64f23789", + "2018-06-17", + "feat(sax): update error handling, add parse() wrapper, add FSMOpts" + ], + [ + "a4766a54", + "2018-06-17", + "feat(sax): add support for proc & doctype elements, update `end` results" + ], + [ + "3dea9549", + "2018-06-17", + "feat(sax): emit child elements with `end` results, support comments" + ], + ["74f7d02e", "2018-06-17", "refactor(sax): extract parser sub-states"], + ["dce189f9", "2018-06-17", "feat(sax): initial import"], + ["f13138a4", "2018-06-08", "Publish"], + ["e1a8c915", "2018-06-08", "docs(hiccup-css): update readme"], + [ + "cffab49d", + "2018-06-08", + "Merge branch 'feature/hcss-inject' into develop" + ], + ["8d6e6c86", "2018-06-08", "feat(hiccup-css): add injectStyleSheet()"], + ["244bf213", "2018-06-08", "feat(hiccup-css): add class scoping support"], + ["b358c1a7", "2018-06-07", "Publish"], + ["e0535b4c", "2018-06-07", "docs(resolve-map): update readme"], + ["0beaffb1", "2018-06-07", "docs(resolve-map): update readme"], + [ + "0fc2305e", + "2018-06-07", + "fix(rstream-graph): rename `resolveMap` => `resolve` due to upstream changes" + ], + [ + "35deb3b8", + "2018-06-07", + "Merge branch 'feature/resolve-auto' into develop" + ], + [ + "e61c3b59", + "2018-06-07", + "feat(resolve-map): add cycle detection, fix edge cases" + ], + [ + "57f1ed5f", + "2018-06-06", + "feat(resolve-map): add ES6 destructuring shorthands for function vals" + ], + ["93b40b78", "2018-06-06", "Publish"], + ["720b1f18", "2018-06-06", "docs(rstream-graph): update api docs & readme"], + [ + "576668e3", + "2018-06-06", + "Merge branch 'feature/rs-graph-outputs' into develop" + ], + [ + "48c796f5", + "2018-06-06", + "fix(resolve-map): also use _resolvePath for plain lookups, optimize" + ], + [ + "dd2cbd44", + "2018-06-06", + "refactor(examples): update rstream-graph examples" + ], + [ + "1a09b61e", + "2018-06-06", + "minor(rstream-graph): minor fix exported types" + ], + ["558f4f8c", "2018-06-06", "fix(resolve-map): add private _resolveDeep"], + [ + "f2e0df25", + "2018-06-06", + "feat(rstream-graph): add full/optional support for multiple node outputs" + ], + [ + "dc6e0acc", + "2018-06-06", + "refactor(resolve-map): export absPath(), add LookupPath type alias" + ], + [ + "be21c4c2", + "2018-06-06", + "feat(rstream-graph): update NodeOutput, support multiple handlers" + ], + ["de48e134", "2018-06-05", "build: add yarn bootstrap"], + ["67c7e17d", "2018-05-30", "Publish"], + ["45785229", "2018-05-30", "Merge branch 'develop'"], + ["b267c999", "2018-05-30", "Merge branch 'feature/command' into develop"], + [ + "7ac6227d", + "2018-05-30", + "feat(atom): provide prev/curr states to history event listeners" + ], + ["94225989", "2018-05-29", "feat(atom): add INotify impl for History"], + ["44998ca0", "2018-05-20", "Publish"], + [ + "ad56421a", + "2018-05-20", + "refactor(rstream-graph): allow fn vals in GraphSpec too, update test" + ], + ["b7560989", "2018-05-20", "Publish"], + [ + "0818498a", + "2018-05-20", + "feat(rstream-graph): update types, initGraph(), node1(), add tests" + ], + ["c880a633", "2018-05-20", "Publish"], + [ + "773829e4", + "2018-05-20", + "minor(rstream): add alt subscribe() overrides (disabled)" + ], + [ + "846aaf97", + "2018-05-20", + "feat(rstream): re-implement bisect() using PubSub, update tests" + ], + [ + "cbc600e7", + "2018-05-20", + "fix(rstream): minor update PubSub topic fn return type" + ], + [ + "23fdd398", + "2018-05-19", + "feat(rstream): update resolve(), update subscribe() overrides" + ], + ["0e103c50", "2018-05-16", "Publish"], + ["0c292503", "2018-05-16", "feat(examples): add input clearing"], + ["7e1028a2", "2018-05-15", "fix(examples): tab handling in fuzzy dropdown"], + [ + "2482b16e", + "2018-05-15", + "fix(hdom): delay init() lifecycle call to ensure children are available" + ], + ["81b596f6", "2018-05-15", "refactor(examples): update highlightMatches()"], + ["db58ebc7", "2018-05-15", "feat(examples): add fuzzy match highlighting"], + [ + "09d531a7", + "2018-05-15", + "feat(exmples): add hdom-dropdown-fuzzy (unfinished)" + ], + ["577bdde8", "2018-05-15", "docs: add discord badge"], + ["7349ef43", "2018-05-15", "test(hdom): fix/update lifecycle test"], + ["5595cc2a", "2018-05-14", "Publish"], + ["4dd97abd", "2018-05-14", "docs: update readmes (compare / equiv)"], + ["4b94a1b9", "2018-05-14", "docs(api): update doc strings"], + ["f7b6b342", "2018-05-14", "Publish"], + ["191bc981", "2018-05-14", "chore: update package keywords"], + [ + "ade96f86", + "2018-05-14", + "fix(hdom): component obj lifecycle method thisArg handling" + ], + ["c54f7357", "2018-05-14", "test(transducers): remove obsolete test file"], + [ + "e238541f", + "2018-05-14", + "refactor(transducers): replace wrapBoth/Left/Right w/ wrap()" + ], + ["fbba5d27", "2018-05-14", "Publish"], + ["d59b0af3", "2018-05-14", "docs(transducers): update readme"], + ["37362dd2", "2018-05-14", "test(transducers): add fuzzy tests"], + [ + "fc6acd16", + "2018-05-14", + "chore(transducers): update deps, readme, re-exports" + ], + ["2bebba28", "2018-05-14", "feat(transducers): add filterFuzzy() xform"], + ["306625df", "2018-05-14", "feat(transducers): add wrap*() iterators"], + ["9efa5762", "2018-05-14", "docs(resolve-map): update readme"], + ["4591d5d5", "2018-05-14", "minor(examples): update dropdown html"], + ["2076d25b", "2018-05-14", "docs(resolve-map): add readme example"], + ["ea185897", "2018-05-14", "Publish"], + ["6661fc3a", "2018-05-14", "feat(examples): add hdom-dropdown example"], + [ + "5e729701", + "2018-05-14", + "feat(interceptors): update dispatch() / dispatchNow()" + ], + ["644d1ffe", "2018-05-13", "docs(hdom): update readme example"], + ["5d6e762d", "2018-05-13", "Publish"], + ["609d66dd", "2018-05-13", "docs(hdom): update readme"], + [ + "01f0fa56", + "2018-05-13", + "Merge branch 'feature/hiccup-context' into develop" + ], + ["f8fe5001", "2018-05-13", "docs(hiccup): update readme"], + ["67015ce9", "2018-05-13", "refactor(examples): update svg examples"], + [ + "dc775404", + "2018-05-13", + "docs(hiccup-svg): resolve #19, update readme, add invocation notes" + ], + [ + "373701b0", + "2018-05-13", + "feat(pointfree): add execjs for host calls, update readme" + ], + ["396faec8", "2018-05-13", "refactor(hiccup-svg): rename svgdoc => svg"], + ["765e7302", "2018-05-13", "docs(hiccup): update readme"], + ["b1cb7d9a", "2018-05-12", "perf(hiccup): update css()"], + [ + "feca5666", + "2018-05-12", + "refactor(hiccup): fix #19, add support for context object" + ], + ["4b8caec9", "2018-05-12", "docs: update main readme"], + ["2d4fd682", "2018-05-12", "docs: update all readme's (add deps links)"], + ["6ff48a41", "2018-05-12", "docs(defmulti): update readme"], + ["8b2e67ce", "2018-05-12", "Publish"], + ["41ce19c5", "2018-05-12", "test(csp): update IEnabled test impl"], + ["67f0e546", "2018-05-12", "refactor(dcons): update pop()"], + ["9b388604", "2018-05-11", "refactor(api): update interfaces, add docs"], + ["04b66b2f", "2018-05-11", "Publish"], + [ + "fbb721f8", + "2018-05-11", + "docs: remove dep graph from main readme, update package" + ], + [ + "eeed25ed", + "2018-05-11", + "feat(defmulti): add generics, update docs & readme" + ], + ["011519d7", "2018-05-11", "docs: update dep graph"], + ["2fd3d822", "2018-05-11", "Publish"], + [ + "126ecf36", + "2018-05-11", + "feat(defmulti): add defmultiN(), update readme, add tests" + ], + ["5391d986", "2018-05-11", "fix(pointfree): minor update error handling"], + [ + "5227dd1f", + "2018-05-11", + "refactor(errors): update return types (`never`)" + ], + ["790d0130", "2018-05-11", "test(defmulti): add tests"], + ["8c74a99d", "2018-05-10", "docs: update dep graph"], + ["08cef30e", "2018-05-10", "Publish"], + ["304669de", "2018-05-10", "Merge branch 'feature/defmulti' into develop"], + ["7ae718c5", "2018-05-10", "docs: update main readme"], + ["edc66bf2", "2018-05-10", "feat(defmulti): add @thi.ng/defmulti package"], + ["a818acd4", "2018-05-10", "docs(transducers): update readme"], + ["e6f2972b", "2018-05-10", "docs: update dep graph"], + ["051a05db", "2018-05-10", "Publish"], + ["55f29b8f", "2018-05-10", "feat(transducers): add normRange() iterator"], + ["bd1fba33", "2018-05-10", "docs: update dep graph"], + ["c72e81c3", "2018-05-10", "Publish"], + ["7af3ef86", "2018-05-10", "docs: update readmes"], + ["6349b918", "2018-05-10", "Merge branch 'feature/api-split' into develop"], + ["fc7c5c70", "2018-05-10", "refactor(examples): update imports"], + ["bdf5bf06", "2018-05-10", "refactor(examples): update imports"], + [ + "bc456364", + "2018-05-10", + "refactor: update deps & imports in all packages due to @thi.ng/api split" + ], + [ + "f051ca3c", + "2018-05-10", + "refactor(api): remove obsolete files from package" + ], + ["9466d4b2", "2018-05-10", "feat(bench): add new package @thi.ng/bench"], + [ + "e4a87c41", + "2018-05-10", + "feat(compare): add new package @thi.ng/compare" + ], + ["1e97856f", "2018-05-10", "feat(errors): add new package @thi.ng/errors"], + ["6d12ae08", "2018-05-10", "feat(equiv): add new package @thi.ng/equiv"], + ["aba06b0c", "2018-05-10", "docs(examples): fix link"], + ["34903210", "2018-05-10", "feat(examples): add icon button"], + ["a49e30cf", "2018-05-10", "Merge branch 'master' into develop"], + ["d5f1037a", "2018-05-10", "fix(examples): fix #22, update router-basics"], + ["7a8e43ea", "2018-05-10", "docs(examples): update readmes"], + ["cea77deb", "2018-05-09", "feat(examples): add hdom-theme-adr-0003 demo"], + ["5af437c1", "2018-05-09", "docs(hdom-components): add ADR-0003"], + [ + "b4476cb9", + "2018-05-09", + "refactor(hdom-components): add ButtonGroup type alias" + ], + ["1dd6e9a2", "2018-05-09", "docs: update dep graph"], + ["5da6c578", "2018-05-09", "Publish"], + ["6e7599ac", "2018-05-09", "docs(resolve-map): update/fix doc strings"], + ["5d2a3fe8", "2018-05-09", "refactor(resolve-map): fix #21"], + [ + "68ca46d2", + "2018-05-09", + "feat(dgraph): add leaves() & roots() iterators, update sort()" + ], + ["91a2b748", "2018-05-09", "docs: add @thi.ng/dot to main readme"], + ["b5132b3d", "2018-05-09", "docs: update dep graph"], + ["850716bc", "2018-05-09", "Publish"], + [ + "d8d9435e", + "2018-05-09", + "build: update deps in all packages, examples & scripts" + ], + [ + "68ea0864", + "2018-05-09", + "fix(hdom): native boolean attrib handling (e.g. \"checked\")" + ], + ["ede76916", "2018-05-09", "docs(hdom-components): update readme"], + [ + "053c8c6f", + "2018-05-09", + "feat(rstream-gestures): add zoom smooth config option, update readme" + ], + ["b52c503e", "2018-05-09", "docs: update readme's"], + [ + "5991be61", + "2018-05-09", + "feat(associative): add new functions, update arg & return types" + ], + ["c0950d65", "2018-05-08", "feat(hdom-components): add buttonGroup"], + ["5416887a", "2018-05-07", "doc(hdom-components): update ADR-0002"], + ["c0fef3d3", "2018-05-07", " doc(hdom-components): update ADR-0002"], + [ + "a9574a0b", + "2018-05-07", + "feat(associative): add mapKeysObj() / mapKeysMap()" + ], + [ + "cefb1994", + "2018-05-07", + "refactor(hdom-components): remove CanvasOpts, update re-exports" + ], + [ + "4f8e7bab", + "2018-05-07", + "refactor(hdom-components): update notification & appLink comps" + ], + [ + "a11803c4", + "2018-05-07", + "feat(hdom-components): add notification component" + ], + ["ec41eb9c", "2018-05-07", "refactor(hdom-components): update button args"], + ["5e815256", "2018-05-05", "doc(hdom-components): add ADRs"], + ["cef3c6a8", "2018-05-05", "feat(hdom-components): add button component"], + [ + "334a4d24", + "2018-05-04", + "refactor(hdom-components): make pager more customizable" + ], + [ + "23b64517", + "2018-05-04", + "refactor(dot): replace NodeShape enum, minor other refactoring, add example" + ], + ["500dfa3b", "2018-05-03", "feat(dot): initial import @thi.ng/dot"], + ["f9a2daf2", "2018-05-02", "feat(hdom-components): add title component"], + [ + "6748515b", + "2018-05-02", + "feat(interceptors): add dispatch/dispatchNow() helper interceptors" + ], + ["5a6ce274", "2018-05-02", "build(examples): update packages"], + ["cbfa44b7", "2018-05-02", "build: update dev deps in all packages"], + [ + "efb288df", + "2018-05-01", + "feat(hdom-components): add pager component, add @thi.ng/iterators dep" + ], + ["b2806236", "2018-05-01", "docs: update dep graph"], + ["212e5013", "2018-05-01", "Publish"], + ["146fad62", "2018-05-01", "build: update upload-examples script"], + ["593654a7", "2018-05-01", "docs: update dep graph"], + ["a93cb98b", "2018-05-01", "fix(hdom): boolean attrib reset/removal"], + ["698438a5", "2018-04-30", "docs: update dep graph"], + ["f6e944c6", "2018-04-30", "Publish"], + ["7a543a50", "2018-04-30", "perf(hdom): only build linear diff edit log"], + [ + "431527a5", + "2018-04-30", + "perf(diff): add option to only build linear edit log" + ], + ["12b8dcb3", "2018-04-30", "fix(examples): CA dropdown"], + ["c2a5bcb3", "2018-04-29", "docs: update dep graph"], + ["5888f224", "2018-04-29", "Publish"], + ["95c57ec3", "2018-04-29", "Merge branch 'hotfix/arraylike'"], + ["491a6f85", "2018-04-29", "revert: b86d5b2"], + [ + "31ec3af4", + "2018-04-29", + "perf(hdom): update event handling in diffAttributes()" + ], + ["a7c5eafc", "2018-04-29", "refactor(examples): update todo list"], + ["b86d5b25", "2018-04-29", "refactor(examples): update hdom-basics"], + [ + "7fdf1721", + "2018-04-29", + "perf(api): major speedup equivObject(), update equivSet()" + ], + ["76920f75", "2018-04-29", "fix(checks): return type isMap()"], + [ + "ac60404e", + "2018-04-29", + "fix(checks): exclude functions in isArrayLike()" + ], + ["a6dc02e4", "2018-04-28", "docs: update dep graph"], + ["048632a4", "2018-04-28", "Publish"], + [ + "c4d8851d", + "2018-04-28", + "fix(interceptors): multiple sidefx value assignment" + ], + [ + "2aaa134a", + "2018-04-28", + "refactor(examples): minor update rstream-grid, add missing files" + ], + ["7c3faed2", "2018-04-28", "docs(interceptors): update readme"], + ["cba30e36", "2018-04-28", "docs(examples): update readme"], + ["1c469afa", "2018-04-28", "minor(examples): update rstream-grid sidebar"], + ["115dff2b", "2018-04-28", "docs: update dep graph"], + ["df55f40b", "2018-04-28", "Publish"], + [ + "661e34f5", + "2018-04-28", + "feat(examples): add rstream-grid dataflow demo" + ], + ["f4a095a5", "2018-04-28", "feat(interceptors): add dispatchLater()"], + ["f84fe450", "2018-04-27", "docs: update dep graph"], + ["8f5b3d91", "2018-04-27", "Publish"], + [ + "6f95bcb3", + "2018-04-27", + "feat(rstream-query): add obj->triple converter, update readme & example" + ], + ["d03520d8", "2018-04-26", "docs: update dep graph"], + ["085a81d9", "2018-04-26", "Publish"], + ["af6c807e", "2018-04-26", "style: reformat/sort imports in all packages"], + [ + "d36a5eaf", + "2018-04-26", + "refactor(rstream-query): simplify case selection in addPatternQuery()" + ], + ["2ab5af5d", "2018-04-26", "build: update/add upload scripts"], + ["5c048615", "2018-04-26", "docs: update dep graph"], + ["7fa54577", "2018-04-26", "Publish"], + [ + "ced200af", + "2018-04-26", + "docs(rstream-query): update readme, diag, add example" + ], + [ + "75f2af2e", + "2018-04-26", + "perf(rstream-query): optimize pattern queries, fix bindVars()" + ], + ["6bcd5dd4", "2018-04-26", "docs: update dep graph"], + ["6d261caa", "2018-04-26", "Publish"], + ["f5735a66", "2018-04-26", "Merge branch 'feature/rs-query' into develop"], + [ + "d093a5c8", + "2018-04-26", + "feat(rstream-query): add query spec types, addQueryFromSpec(), dedupe xforms" + ], + [ + "2ac8bff3", + "2018-04-26", + "feat(api): support more types in equiv(), add tests" + ], + ["a865f62b", "2018-04-26", "feat(checks): add date, map, nan, set checks"], + [ + "d057d954", + "2018-04-26", + "feat(rstream-dot): add option to include stream values in diag" + ], + [ + "76f00c36", + "2018-04-26", + "refactor(rstream): update ISubscribable (add IDeref parent)" + ], + [ + "679c4e08", + "2018-04-26", + "feat(rstream-query): add path query, multi-joins, pattern query reuse" + ], + [ + "9b5c58ac", + "2018-04-25", + "feat(rstream-query): rename TripleStore methods, use Set-like API" + ], + [ + "443ff8f6", + "2018-04-25", + "feat(rstream-query): add removeTriple(), simplify wildcard subqueries" + ], + [ + "c5f36a2d", + "2018-04-25", + "feat(rstream-query): add addQueryJoin(), add type aliases, update tests" + ], + ["7d927144", "2018-04-25", "docs: update dep graph"], + ["6215335f", "2018-04-25", "Publish"], + ["888f4e56", "2018-04-25", "build: update package keywords"], + ["cf388ddb", "2018-04-25", "docs: update rstream-* readmes"], + ["28cf39f9", "2018-04-25", "build: temporarily force node v9 for travis"], + ["72aa848a", "2018-04-25", "docs: update dep graph"], + ["a3e0cf82", "2018-04-25", "Publish"], + ["cc286e12", "2018-04-25", "fix(rstream): minor fix StreamSync.addAll()"], + ["fa36f989", "2018-04-25", "docs: update main readme"], + ["60bd67a4", "2018-04-25", "docs: update dep graph"], + ["8fc5fb40", "2018-04-25", "Publish"], + ["2f3bdaea", "2018-04-25", "build: update make-module script"], + [ + "b121c476", + "2018-04-25", + "refactor(rstream-query): rename types, update readme" + ], + ["97a6e945", "2018-04-24", "docs: update various readmes"], + ["781ae217", "2018-04-24", "test(rstream-query): add query tests"], + [ + "d9b845e0", + "2018-04-24", + "feat(rstream-query): add param queries w/ variables, update addPatternQuery" + ], + ["6368cd2d", "2018-04-24", "docs(rstream-dot): update readme, add diagram"], + [ + "3135da20", + "2018-04-24", + "docs(examples): update rs-dlow diagram & readme" + ], + [ + "a68eca0b", + "2018-04-24", + "feat(rstream-query): add IToDot impl for graphviz conversion/viz" + ], + [ + "7ffaa615", + "2018-04-24", + "feat(rstream-dot): add xform edge labels, extract types to api.ts" + ], + ["32fb7ff9", "2018-04-24", "docs(rstream-graph): update readme"], + [ + "2b9a8883", + "2018-04-24", + "refactor(rstream-graph): extract ensureInputs(), update docs" + ], + [ + "e11b9a80", + "2018-04-24", + "refactor(examples): update rstream-dataflow to use new specs" + ], + [ + "d564e109", + "2018-04-24", + "refactor(rstream-graph): update node input specs & node factories" + ], + [ + "3408c137", + "2018-04-24", + "feat(rstream-gestures): allows partial opts, add ID option" + ], + [ + "b3928174", + "2018-04-24", + "perf(rstream): support (re)named StreamSync inputs" + ], + [ + "66ec92fb", + "2018-04-24", + "feat(rstream-query): update index & sub-query caching/reuse" + ], + [ + "d35b5ff1", + "2018-04-24", + "feat(examples): add graphviz DOT output for rstream-dataflow" + ], + [ + "704025a9", + "2018-04-24", + "feat(rstream-dot): support multiple roots in walk()" + ], + [ + "0153903d", + "2018-04-24", + "feat(rstream-graph): add IDs for all generated nodes, rename factory type" + ], + [ + "e72478ab", + "2018-04-24", + "feat(rstream-dot): initial import @thi.ng/rstream-dot package" + ], + [ + "33f55b3e", + "2018-04-24", + "feat(rstream): add owner meta data & IDs for merge/sync inputs" + ], + ["16fabb8c", "2018-04-23", "refactor(rstream-query): simplify addQuery()"], + [ + "a4aa4cb3", + "2018-04-23", + "refactor(rstream-query): simplify query handling, optimize addFact()" + ], + ["ef3903e4", "2018-04-23", "feat(rstream-query): initial import"], + ["c73b0be9", "2018-04-22", "docs: update dep graph"], + ["d4423f2c", "2018-04-22", "Publish"], + ["03cee0fa", "2018-04-22", "build(heaps): update package desc"], + [ + "aa78d77e", + "2018-04-22", + "fix(cache): TLRUCache.get(), add tests, update package" + ], + ["7d38e5b0", "2018-04-22", "test(cache): add tests"], + [ + "9d53ae33", + "2018-04-22", + "feat(cache): add TLRUCache.prune(), fix ensureSize()" + ], + ["fa67252c", "2018-04-22", "docs: update dep graph"], + ["23e36a10", "2018-04-22", "Publish"], + ["944aaf6d", "2018-04-22", "test(heaps): add tests"], + ["fccb3af1", "2018-04-22", "feat(heaps): iterator now returns min() seq"], + [ + "58945727", + "2018-04-22", + "fix(heaps): add DHeap ICopy/IEmpty impls, fix return types" + ], + [ + "c4bbee0a", + "2018-04-22", + "feat(heaps): add min/max(), update heapify() and percolate methods" + ], + ["34996f23", "2018-04-22", "docs: update package list main readme"], + ["d6e175db", "2018-04-22", "docs: update dep graph"], + ["17ccbb1f", "2018-04-22", "Publish"], + ["05a68dbe", "2018-04-22", "Merge branch 'feature/lru' into develop"], + ["b83c0300", "2018-04-22", "minor(cache): cleanup"], + [ + "ab4abf55", + "2018-04-22", + "refactor(heaps): major update / simplify, fix DHeap, add accessors" + ], + ["24113b27", "2018-04-21", "docs(cache): update readme"], + ["574b5d96", "2018-04-21", "feat(cache): add TLRUCache"], + [ + "c4a9c074", + "2018-04-21", + "fix(cache): recompute size in LRUCache.delete(), extract removeEntry()" + ], + ["0ea0847d", "2018-04-21", "feat(heaps): import @thi.ng/heaps package"], + [ + "26c4cfd0", + "2018-04-21", + "feat(cache): add MRUCache, update package & readme" + ], + [ + "00ca831f", + "2018-04-21", + "refactor(cache): make LRU ops O(1), update/remove (some) interfaces" + ], + ["19f7e761", "2018-04-21", "feat(dcons): add asHead()/asTail()"], + ["3947419c", "2018-04-21", "fix(cache): don't insert new val if > maxsize"], + ["1c9d73f5", "2018-04-21", "docs(cache): update readme"], + [ + "d37a91eb", + "2018-04-21", + "refactor(cache): update/extend ICache & LRUCache, update readme" + ], + [ + "7bbbfa88", + "2018-04-20", + "feat(cache): initial import @thi.ng/cache package" + ], + ["dab48115", "2018-04-20", "docs: update dep graph"], + ["ff5705d4", "2018-04-20", "Publish"], + ["a335a66e", "2018-04-20", "docs(rstream): update readme"], + [ + "ba10907c", + "2018-04-20", + "feat(rstream): allow arbitrary PubSub topic vals, add @thi.ng/associative dep" + ], + [ + "bb11ddfb", + "2018-04-20", + "fix(associative): allow partial options arg for EquivMap ctor" + ], + [ + "27a098d7", + "2018-04-20", + "feat(rstream): add PubSub, add ISubscribableSubscriber, remove cache()" + ], + ["40903ea2", "2018-04-19", "docs: update dep graph"], + ["e0e95587", "2018-04-19", "Publish"], + ["d40f3a82", "2018-04-19", "docs: update dep graph"], + ["f77b443d", "2018-04-19", "Publish"], + [ + "87e3b488", + "2018-04-19", + "feat(interceptors): add EV_TOGGLE_VALUE handler, update EV_UNDO/REDO" + ], + ["920a3406", "2018-04-19", "docs(hdom): update readme"], + ["a2320ff2", "2018-04-18", "docs(paths): update readme"], + ["e0b41d81", "2018-04-18", "docs: update dep graph"], + ["59806881", "2018-04-18", "Publish"], + ["b7dff0ea", "2018-04-18", "fix(rstream-graph): import path"], + ["6fcc2358", "2018-04-18", "docs: update dep graph"], + ["adc2fb4a", "2018-04-18", "Publish"], + [ + "3b7c9d97", + "2018-04-18", + "fix(transducers): add generics for compR(), fix types in mapNth()" + ], + [ + "4c014b18", + "2018-04-18", + "Merge pull request #17 from andrew8er/pr/compr-types" + ], + ["c26fed40", "2018-04-18", "docs: update dep graph"], + ["88283db1", "2018-04-18", "Publish"], + ["3087776e", "2018-04-18", "fix(rstream-log): ID handling in Logger ctor"], + ["08af60af", "2018-04-18", "refactor(rstream-log): minor update matchID()"], + ["de474933", "2018-04-18", "docs(rstream-log): fix typo"], + ["0de3d200", "2018-04-18", "docs(examples): add undo info (svg-waveform)"], + ["c67607b7", "2018-04-18", "build(examples): update dev deps"], + ["bb60cb9f", "2018-04-18", "build: update dev deps"], + ["b8bb801a", "2018-04-17", "docs: update dep graph"], + ["7e585e2b", "2018-04-17", "Publish"], + [ + "8f3a3d10", + "2018-04-17", + "feat(paths): add setInMany() and mutInMany(), add @thi.ng/api dependency" + ], + ["78b998cb", "2018-04-17", "docs: update dep graph"], + ["fbe15446", "2018-04-17", "Publish"], + [ + "2e32c3b9", + "2018-04-17", + "feat(examples): add instrumentation to router-basics demo" + ], + [ + "1a6ac54d", + "2018-04-17", + "feat(interceptors): add event handler instrumentation" + ], + ["5107dcad", "2018-04-17", "docs: update dep graph"], + ["e5185cf2", "2018-04-17", "Publish"], + [ + "d7ff997b", + "2018-04-17", + "fix(interceptors): filter out undefined sidefx vals" + ], + [ + "de89f00d", + "2018-04-17", + "fix(transducers): Provide argument types for compR() and deepTransform()" + ], + ["a9a7bfae", "2018-04-16", "docs: update dep graph"], + ["b523e9ef", "2018-04-16", "Publish"], + [ + "5ddb19c6", + "2018-04-16", + "feat(rstream-graph): add addNode()/removeNode()" + ], + [ + "8bcc2870", + "2018-04-16", + "feat(rstream): add StreamMerge/Sync.removeID() & removeAllIDs()" + ], + [ + "a379d12d", + "2018-04-16", + "feat(resolve-map): support relative parent refs, update tests/readme" + ], + ["e643e7fe", "2018-04-16", "docs: update dep graph"], + ["df039db1", "2018-04-16", "Publish"], + [ + "144f2684", + "2018-04-16", + "Merge branch 'feature/rm-refactor' into develop" + ], + [ + "6992e82b", + "2018-04-16", + "feat(resolve-map): resolve each ref only once, re-use resolved results" + ], + ["4c1bd85c", "2018-04-16", "feat(paths): add mutator() & mutIn()"], + ["b00b5a28", "2018-04-16", "docs: update dep graph"], + ["dbb96fe2", "2018-04-16", "Publish"], + [ + "56d919c0", + "2018-04-16", + "fix(rstream-graph): create null sub for ID renaming" + ], + ["f5aba033", "2018-04-16", "docs: update dep graph"], + ["17584b5d", "2018-04-16", "Publish"], + [ + "9a83d4ef", + "2018-04-16", + "fix(interceptors): update undo handling to support history cursors" + ], + ["b856fecc", "2018-04-15", "docs(associative): update readme"], + ["c7e760ea", "2018-04-15", "docs: update dep graph"], + ["3111409c", "2018-04-15", "Publish"], + ["df32a59e", "2018-04-15", "docs(rstream-gestures): update package"], + [ + "e6c75b4a", + "2018-04-15", + "refactor(rstream-log): update package structure & readme example" + ], + ["2164ddfd", "2018-04-15", "feat(rstream): add Subscription.transform()"], + ["7cf93fc5", "2018-04-15", "docs(rstream): update readme"], + ["b667c88c", "2018-04-15", "docs(examples): update readme"], + ["f39affc1", "2018-04-15", "docs: update main readme"], + ["2942d1c3", "2018-04-15", "docs: update dep graph"], + ["f2ae6d24", "2018-04-15", "Publish"], + [ + "1479cd1e", + "2018-04-15", + "Merge branch 'feature/rstream-graph' into develop" + ], + [ + "a0063992", + "2018-04-15", + "refactor(examples): simplify rstream-dataflow example" + ], + [ + "619b4b37", + "2018-04-15", + "feat(rstream-graph): initial import @thi.ng/rstream-graph" + ], + ["937e5025", "2018-04-15", "docs: update dep graph"], + ["e6d7882d", "2018-04-15", "Publish"], + [ + "9ae2e035", + "2018-04-15", + "build(examples): update project structure for router-basics/svg-waveform" + ], + [ + "a597e728", + "2018-04-15", + "feat(examples): add undo/redo feature to svg-waveform, update components" + ], + [ + "a1d9ae68", + "2018-04-15", + "refactor(interceptors): refactor undo handling" + ], + [ + "cf42260c", + "2018-04-15", + "feat(atom): update History.record(), add IHistory interface" + ], + [ + "3c92f7e6", + "2018-04-15", + "feat(interceptors): add undo/redo handlers/fx & snapshot() interceptor" + ], + [ + "a102eb7c", + "2018-04-15", + "feat(interceptors): add default FX_UNDO/REDO side fx" + ], + [ + "ba0c876d", + "2018-04-14", + "refactor(interceptors): also pass ctx to sidefx handlers" + ], + [ + "183af614", + "2018-04-14", + "feat(interceptors): update processQueue(), expose full ctx to handlers" + ], + ["d539b4f3", "2018-04-14", "docs: update dep graph"], + ["83be0dce", "2018-04-14", "Publish"], + ["010f32e9", "2018-04-14", "docs: update readme files"], + ["9eec054a", "2018-04-14", "Merge branch 'develop'"], + [ + "85f5fdd4", + "2018-04-14", + "Merge branch 'feature/rs-gestures' into develop" + ], + ["885fcf15", "2018-04-14", "build: update make-module script"], + ["3f8dbc9e", "2018-04-14", "refactor(examples): update rs-dataflow demo"], + [ + "de1ac7bb", + "2018-04-14", + "feat(rstream-gestures): initial import @thi.ng/rstream-gestures" + ], + ["4755212f", "2018-04-14", "docs: update readme's"], + ["7b510487", "2018-04-14", "build(examples): add html & webpack config"], + ["6198899d", "2018-04-14", "docs: update dep graph"], + ["0243b44d", "2018-04-14", "Publish"], + ["c6b3025c", "2018-04-14", "build: import depgraph script"], + ["9e98ce12", "2018-04-14", "refactor(examples): update svg-waveform demo"], + ["1b21710a", "2018-04-13", "feat(examples): add svg-waveform example"], + [ + "584223ca", + "2018-04-13", + "refactor(examples): rename interceptors in interceptor-basics," + ], + [ + "86883e3c", + "2018-04-13", + "feat(interceptors): add ensureStateRange() & ensureParamRange() iceps" + ], + ["6da2d397", "2018-04-13", "docs: update dep graph"], + ["816950a8", "2018-04-13", "Publish"], + ["07628f67", "2018-04-13", "build: fix package clean tasks"], + [ + "d798cee3", + "2018-04-13", + "refactor(dgraph): regression update due to @thi.ng/associative changes" + ], + ["bfabe802", "2018-04-13", "feat(associative): add renameKeysMap"], + [ + "1f8af6c4", + "2018-04-13", + "refactor(associative): update EquivMap, update SortedSet, add docs" + ], + ["d1178acf", "2018-04-13", "perf(associative): update equiv() impls"], + ["76e5c853", "2018-04-13", "docs: update dep graph"], + ["f4b4067e", "2018-04-13", "Publish"], + ["26361437", "2018-04-13", "refactor(dgraph): update ArrayMap/Set refs"], + ["2f33389a", "2018-04-13", "docs(associative): update readme"], + [ + "87560270", + "2018-04-13", + "refactor(associative): rename EquivMap/Set => ArrayMap/Set, export interfaces" + ], + [ + "a7698563", + "2018-04-13", + "refactor(associative): add private impls for EquivMap/Set" + ], + [ + "cb4976fe", + "2018-04-12", + "feat(associative): add SortedSet, update SortedMap" + ], + [ + "ae0eae8e", + "2018-04-12", + "feat(associative): add SortedMap & tests, minor refactor EquivMap" + ], + ["82be16d4", "2018-04-11", "docs: update dep graph"], + ["3c1e2dd7", "2018-04-11", "Publish"], + [ + "52c75085", + "2018-04-11", + "feat(transducers): add run() for executing side effects only, update readme" + ], + ["5f94efa0", "2018-04-10", "docs: update dep graph"], + ["fa794a6e", "2018-04-10", "Publish"], + ["675847b8", "2018-04-10", "fix(dgraph): update corrupted deps"], + ["9b1c7bdb", "2018-04-10", "docs: update dep graph"], + ["5dd34261", "2018-04-10", "Publish"], + ["26d8ed85", "2018-04-10", "v0.1.0"], + ["efe606e1", "2018-04-10", "build(dgraph): update package desc"], + ["e7a5c93e", "2018-04-10", "build(associative): update package desc"], + ["207dd992", "2018-04-10", "docs: update package list main readme"], + ["371cd42f", "2018-04-10", "build(associative): update deps (dcons)"], + ["3e90117a", "2018-04-10", "Merge branch 'feature/dgraph' into develop"], + ["0dc9f646", "2018-04-10", "feat(associative): add EquivSet.first()"], + [ + "e086be6b", + "2018-04-10", + "feat(dgraph): re-import DGraph impl & tests, update readme" + ], + [ + "10c089a3", + "2018-04-10", + "feat(dcons): add IEmpty impl, minor refactoring" + ], + [ + "cc70dbce", + "2018-04-10", + "feat(associative): initial import @thi.ng/associative" + ], + ["fd27a946", "2018-04-09", "build: update lerna"], + ["69efee12", "2018-04-09", "docs(hdom): add authors.md"], + ["2357355a", "2018-04-09", "docs: update dep graph"], + ["c2cd9fbc", "2018-04-09", "Publish"], + [ + "2a91e302", + "2018-04-09", + "perf(hdom): intern imported checks, update normalizeTree(), add docs, fix tests" + ], + ["7e3070a2", "2018-04-09", "docs: update dep graph"], + ["d9aeed47", "2018-04-09", "Publish"], + [ + "b9d9a493", + "2018-04-09", + "fix(hiccup-svg): path(), update add null check for points()" + ], + ["acc9c13b", "2018-04-09", "refactor(examples): update router demo"], + ["5dfcd1ad", "2018-04-08", "docs: update dep graph"], + ["179efc44", "2018-04-08", "Publish"], + ["6f45ec6d", "2018-04-08", "v0.1.0"], + ["2458b15f", "2018-04-08", "docs(hiccup-svg): update readme"], + ["fcf1404e", "2018-04-08", "refactor(hiccup): remove obsolete deref check"], + ["4ed84eb5", "2018-04-08", "docs(hdom): update readme"], + ["a904599c", "2018-04-08", "docs(hdom): update/fix readme"], + ["d832c9d2", "2018-04-08", "docs(hdom): update readme & doc strings"], + [ + "3e7e0256", + "2018-04-08", + "Merge branch 'feature/hdom-context' into develop" + ], + [ + "905467c1", + "2018-04-08", + "refactor(examples): update cellular-automata & hdom-benchmark" + ], + [ + "0873832d", + "2018-04-08", + "refactor(hdom-components): update dropdown components" + ], + [ + "4a18e884", + "2018-04-08", + "refactor(examples): update webgl demo to use new canvas component" + ], + ["8b0d6015", "2018-04-08", "build: update main yarn.lock"], + [ + "7c88a3fc", + "2018-04-08", + "feat(hdom-components): update canvas handlers, add webgl2 version" + ], + ["e06e5042", "2018-04-08", "refactor(examples): update todo-list"], + ["6faa38a0", "2018-04-08", "refactor(examples): update webgl demo"], + ["1e798ce7", "2018-04-08", "docs: add hiccup-svg to main readme"], + ["7e0aeb68", "2018-04-08", "refactor(examples): update pointfree-svg"], + [ + "afccabdc", + "2018-04-08", + "feat(hiccup-svg): re-add svg fns as new @thi.ng/hiccup-svg package" + ], + [ + "86d1f0d9", + "2018-04-08", + "refactor(hdom-components): remove svg, update canvas (hdom context support)" + ], + [ + "a8a55a4f", + "2018-04-08", + "refactor(examples): major update router-basics (hdom context usage)" + ], + [ + "14b9cecc", + "2018-04-08", + "refactor(examples): update dashboard, hdom-basics & hdom-benchmark" + ], + [ + "70cfe06c", + "2018-04-08", + "feat(hdom): fix #13, add support for user context and pass to components" + ], + [ + "40d706b6", + "2018-04-07", + "feat(checks): add hasPerformance() check (performance.now)" + ], + ["d310345f", "2018-04-07", "feat(api): add bench() & timed() utils"], + [ + "4d79f763", + "2018-04-07", + "refactor(examples): add GestureEvent (rs-dflow)" + ], + [ + "c1c81bd0", + "2018-04-07", + "refactor(interceptors): update Event id type (string => PropertyKey)" + ], + ["37ba4d17", "2018-04-05", "refactor(examples): update rstream-dflow"], + ["a19f8a4d", "2018-04-05", "feat(examples): update rstream-dflow example"], + ["dccfc827", "2018-04-05", "docs(rstream): update readme"], + [ + "8ce73078", + "2018-04-05", + "refactor(examples): minor updates rstream-dflow" + ], + [ + "fce54223", + "2018-04-05", + "build(dgraph): import dgraph package stub to avoid travis build errors" + ], + ["8eb7e68c", "2018-04-05", "fix(examples): update GH links in html files"], + ["f9bfc9d7", "2018-04-05", "docs(hdom): update readme"], + ["56f4a26a", "2018-04-05", "docs: update dep graph"], + ["45c7daf4", "2018-04-05", "Publish"], + ["48310a68", "2018-04-05", "fix(rstream): correct wrong isString() import"], + ["9ab15442", "2018-04-05", "docs(examples): update doc strings"], + ["04b9c087", "2018-04-05", "docs(examples): update readme"], + ["23327874", "2018-04-05", "docs(examples): update rs-dflow example"], + [ + "ae27bd65", + "2018-04-05", + "refactor(examples): update rstream-dflow example" + ], + [ + "218150a9", + "2018-04-04", + "docs(examples): update readme, add dflow graph viz" + ], + ["72a96130", "2018-04-04", "feat(examples): add rstream-dataflow example"], + ["1eb8b12c", "2018-04-04", "docs: update dep graph"], + ["343956d3", "2018-04-04", "Publish"], + [ + "bffc4430", + "2018-04-04", + "fix(checks): add prototype check for isPlainObject(), add tests" + ], + [ + "9c91dc34", + "2018-04-03", + "fix(examples): minor update pointfree-svg example" + ], + ["9621f1b1", "2018-04-03", "docs: update dep graph"], + ["5276322a", "2018-04-03", "Publish"], + [ + "68727859", + "2018-04-03", + "Merge branch 'feature/pointfree-lang' into develop" + ], + ["ca5dfd3c", "2018-04-03", "docs(pointfree-lang): update readme"], + [ + "3310ec3d", + "2018-04-03", + "feat(pointfree-lang): implement dynamic var scoping & local var grammar" + ], + [ + "1c899a18", + "2018-04-03", + "refactor(pointfree-lang): rename grammar rule / nodetype MAP=>OBJ, add docs" + ], + [ + "5450e507", + "2018-04-03", + "fix(pointfree-lang): update grammar (parse order), add tests" + ], + [ + "769e84da", + "2018-04-03", + "feat(pointfree-lang): overhaul visitor quote/array & map handling, grammar" + ], + [ + "2101e926", + "2018-04-03", + "feat(pointfree): add math ops, update load/loadkey, update tests" + ], + ["26905f09", "2018-04-02", "refactor(examples): update pf svg example"], + [ + "ee684c7b", + "2018-04-02", + "feat(pointfree-lang): update grammar, aliases, ASTNode, NodeType" + ], + [ + "92d2d685", + "2018-04-01", + "refactor(pointfree): update/rename storeat => setat, update tests" + ], + ["68a8dba6", "2018-04-01", "feat(pointfree): add copy() word"], + ["42cc7786", "2018-04-01", "docs: update dep graph"], + ["996b5ff7", "2018-04-01", "Publish"], + ["4c7e9068", "2018-04-01", "docs: update all package readme's"], + ["cb7276e6", "2018-04-01", "chore: update make-module/example scripts"], + ["d4951f5e", "2018-04-01", "docs(examples): update all example readme's"], + [ + "c7521980", + "2018-04-01", + "build: add missing package descriptions, update yarn.lock" + ], + [ + "c2d22337", + "2018-04-01", + "Merge branch 'feature/examples-webpack' into develop" + ], + [ + "e2ac1852", + "2018-04-01", + "build: update dev dependencies for all packages & examples" + ], + [ + "bc264d39", + "2018-03-31", + "build(examples): update tsconfig for all examples" + ], + [ + "8273674d", + "2018-03-31", + "build(examples): update all examples to use webpack 4.4.*" + ], + [ + "1022ab67", + "2018-03-31", + "fix(examples): update stack comment for write-file" + ], + ["89ea6331", "2018-03-31", "fix(examples): update readme (pf-svg)"], + ["f3477690", "2018-03-31", "docs(pointfree-lang): update readme"], + ["7b5a36fd", "2018-03-31", "docs(examples): update example list"], + [ + "3f33b651", + "2018-03-31", + "refactor(examples): update pointfree-svg demo/readme" + ], + [ + "208b5c39", + "2018-03-31", + "fix(pointfree-lang): object literal grammar rule (allow initial WS)" + ], + ["910b7187", "2018-03-31", "feat(examples): add pointfree-svg demo"], + ["a0e0a0ca", "2018-03-31", "docs: update dep graph"], + ["6d836772", "2018-03-31", "Publish"], + [ + "659cce91", + "2018-03-31", + "fix(pointfree-lang): add ensureEnv, update re-exports, update readme" + ], + ["a0bf7810", "2018-03-31", "fix(pointfree): reexport ensureStack fns"], + ["b16c8500", "2018-03-31", "docs(pointfree-lang): fix readme link"], + ["fbb17957", "2018-03-31", "docs(pointfree-lang): fix grammar link"], + ["f2a56266", "2018-03-31", "docs: update main readme"], + ["430caf03", "2018-03-31", "docs: update dep graph"], + ["6f743ae1", "2018-03-31", "Publish"], + ["9e43405a", "2018-03-31", "docs: update pointfree readme's"], + ["32e2da0d", "2018-03-31", "docs: update dep graph"], + ["82008c38", "2018-03-31", "v0.1.0"], + [ + "d838610f", + "2018-03-31", + "Merge branch 'feature/pointfree-lang' into develop" + ], + ["0623df69", "2018-03-31", "build: add pegjs dev dependency"], + [ + "3dec35a8", + "2018-03-31", + "feat(pointfree-lang): initial import @thi.ng/pointfree-lang" + ], + ["5db90c53", "2018-03-31", "feat(pointfree): add caseq()"], + ["0da93da6", "2018-03-29", "docs: update dep graph"], + ["fdfbe425", "2018-03-29", "Publish"], + ["d47d0b36", "2018-03-29", "docs(pointfree): update readme"], + [ + "b096e436", + "2018-03-29", + "feat(pointfree): add more dataflow combinators, words & tests" + ], + ["c0a653b6", "2018-03-29", "docs(pointfree): update readme"], + ["9f866da4", "2018-03-29", "docs(pointfree): update readme"], + [ + "3dc30a8e", + "2018-03-29", + "feat(pointfree): add combinators, update controlflow words, remove execq" + ], + ["39b59677", "2018-03-29", "docs: update dep graph"], + ["6b5033f0", "2018-03-29", "Publish"], + ["6cbacec7", "2018-03-29", "feat(hdom-components): add svg line()"], + ["0baf1f8a", "2018-03-29", "docs(pointfree): update readme & package"], + ["fe1f3a3a", "2018-03-29", "test(pointfree): add tests"], + [ + "943b4f9c", + "2018-03-29", + "feat(pointfree): add new words, constructs, aliases, fix re-exports" + ], + [ + "221ece65", + "2018-03-29", + "build: update make-module/make-example scripts" + ], + ["6904d440", "2018-03-28", "docs: update dep graph"], + ["aa9439ef", "2018-03-28", "Publish"], + ["9b00a25f", "2018-03-28", "build: add benchmark dev dep"], + ["e35a2ca1", "2018-03-28", "build(paths): update package"], + ["e52b8693", "2018-03-28", "feat(pointfree): major update readme, package"], + [ + "0f0c382f", + "2018-03-28", + "feat(pointfree): add new words, rename words, remove mapnth, pushl2" + ], + [ + "10d5a347", + "2018-03-28", + "fix(pointfree): add 0-arity comp() (identity fn)" + ], + [ + "ba0bcc21", + "2018-03-27", + "refactor(pointfree): rename core words & change case" + ], + [ + "1c4cd2f3", + "2018-03-27", + "feat(pointfree): add rstack, update StackContext" + ], + [ + "50cc65fe", + "2018-03-26", + "build: update yarn scripts / add missing nyc dev dep" + ], + [ + "2b7e99b9", + "2018-03-26", + "fix(api): illegalState() creates IllegalStateError" + ], + ["1a01f9a0", "2018-03-26", "fix(pointfree): wordU(), add tests"], + [ + "3252554f", + "2018-03-26", + "feat(pointfree): further restructure, perf, add tests" + ], + ["a48361d6", "2018-03-25", "feat(pointfree): major refactor & restructure"], + ["d1564bb1", "2018-03-25", "docs(pointfree): update readme"], + [ + "79b4ce32", + "2018-03-25", + "feat(pointfree): update all words to return stack" + ], + [ + "f3f0bec1", + "2018-03-24", + "feat(pointfree): update word/wordU, add append(), tuple(), join()" + ], + ["06987133", "2018-03-23", "docs: update dep graph"], + ["c5bcdafa", "2018-03-23", "Publish"], + ["be9ba2fd", "2018-03-23", "Merge branch 'hotfix/pointfree'"], + ["f211c397", "2018-03-23", "fix(pointfree): fix readme/docs"], + ["51a6e500", "2018-03-23", "docs: update dep graph"], + ["0e4858c9", "2018-03-23", "Publish"], + ["15ffd34d", "2018-03-23", "test(pointfree): add tests"], + [ + "6cac0c7d", + "2018-03-23", + "feat(pointfree): support data vals in program, add collect(), update readme" + ], + [ + "f75486d4", + "2018-03-23", + "feat(pointfree): add unwrap, quatations, math/bitops, array/obj access" + ], + ["884a8bfa", "2018-03-23", "docs: update main readme/depgraph"], + ["e635dafd", "2018-03-23", "Merge branch 'feature/pointfree' into develop"], + ["4d4e5e1b", "2018-03-23", "v0.1.0"], + ["6aef8807", "2018-03-23", "build(pointfree): update package info"], + [ + "58f5716c", + "2018-03-23", + "feat(pointfree): add dropIf, neg, nop, update cond,condM, add docs/readme" + ], + [ + "25bbf05c", + "2018-03-22", + "feat(pointfree): initial import of refactored @thi.ng/pointfree package" + ], + ["92e4ff8f", "2018-03-21", "docs: update main readme"], + ["b153067c", "2018-03-21", "docs: update dep graph"], + ["fb42cb5a", "2018-03-21", "Publish"], + ["218c2304", "2018-03-21", "Merge branch 'feature/iwatch' into develop"], + ["ca099e57", "2018-03-21", "refactor(transducers): update error handling"], + [ + "8a3e72ee", + "2018-03-21", + "feat(rstream-log): update error handling, add @thi.ng/api dep" + ], + [ + "1ce7054f", + "2018-03-21", + "feat(rstream): update error handling, add @thi.ng/api dep" + ], + ["adc559ae", "2018-03-21", "refactor(router): update error handling"], + [ + "9316a6ca", + "2018-03-21", + "feat(iterators): update error handling, add @thi.ng/api dep" + ], + [ + "501d56f8", + "2018-03-21", + "feat(interceptors): update error handling, add @thi.ng/api dep" + ], + ["0cfc2270", "2018-03-21", "refactor(hiccup-css): update error handling"], + [ + "a3238abf", + "2018-03-21", + "feat(hiccup): update error handling, add @thi.ng/api dep" + ], + [ + "f5173f1d", + "2018-03-21", + "feat(hdom): update error handling, add @thi.ng/api dep" + ], + ["a046b285", "2018-03-21", "refactor(dcons): update error handling"], + ["5087ffe3", "2018-03-21", "refactor(cso): update error handling"], + [ + "0fc10388", + "2018-03-21", + "feat(bitstream): update error handling, add @thi.ng/atom dep" + ], + ["ea7b1752", "2018-03-21", "refactor(atom): update error handling"], + ["4d3785f9", "2018-03-21", "feat(api): add error types & ctor fns"], + [ + "d93940a4", + "2018-03-21", + "feat(atom): consider parent validators in History update fns" + ], + [ + "3b1d563a", + "2018-03-21", + "feat(atom): add CursorOpts and cursor validation, update ctor, add tests" + ], + [ + "bae1647c", + "2018-03-21", + "feat(atom): add optional validation predicate for Atom, add tests" + ], + ["47643f96", "2018-03-21", "test(api): add INotify tests"], + ["b3287808", "2018-03-21", "refactor(router): update INotify dummy impl"], + [ + "fbb19acd", + "2018-03-21", + "refactor(api): update mixins, IEnable / INotify return types" + ], + ["0d67e73e", "2018-03-21", "build: limit travis build branches"], + ["96bb0198", "2018-03-21", "docs: update dep graph"], + ["b2778585", "2018-03-21", "Publish"], + [ + "2a1264a2", + "2018-03-21", + "refactor(rstream-log): update Logger ctor arg handling" + ], + [ + "e58c5e01", + "2018-03-21", + "Merge branch 'feature/rstream-refactor' into develop" + ], + [ + "deb59a15", + "2018-03-21", + "docs(rstream): update readme, add dataflow example" + ], + ["276ede6a", "2018-03-20", "docs(rstream): update readme"], + [ + "907d5995", + "2018-03-20", + "feat(rstream): add IDeref impl for Subscription" + ], + [ + "1fee7d5c", + "2018-03-20", + "feat(rstream): add merge()/sync() ctor wrappers" + ], + [ + "eec56dec", + "2018-03-20", + "feat(rstream): add transduce(), update re-exports" + ], + [ + "42b343aa", + "2018-03-20", + "test(rstream): add StreamSync & Subscription tests" + ], + [ + "26f15b23", + "2018-03-20", + "refactor(rstream): simplify unsubscribe() logic" + ], + [ + "a1c58418", + "2018-03-20", + "docs(rstream): add Cache deprecation docstring" + ], + [ + "6b87bca4", + "2018-03-20", + "feat(rstream): Subscription stores last value and passes to new subs" + ], + [ + "ebe222c9", + "2018-03-20", + "refactor(rstream): update & StreamMerge/SyncOpts, minor fixes StreamSync" + ], + [ + "80264093", + "2018-03-20", + "feat(rstream): fix #6 update StreamMerge to support transduced input streams" + ], + ["db61b0bd", "2018-03-20", "test(rstream): add/update sidechain* tests"], + [ + "d18a1158", + "2018-03-20", + "feat(rstream): update Sidechain*.next(), add unsubscribe()" + ], + ["7dce160c", "2018-03-20", "minor(rstream): fromPromise()"], + [ + "41bb385f", + "2018-03-20", + "feat(rstream): add fromView(), update fromAtom() docs, update re-exports" + ], + [ + "01a751e2", + "2018-03-20", + "feat(rstream): update Subscription.unsubscribe()" + ], + [ + "2ad2f485", + "2018-03-20", + "fix(rstream): bisect() add downstream impl checks, add tests" + ], + [ + "6f5ec040", + "2018-03-20", + "test(rstream): remove obsolete fromPromise error test case" + ], + [ + "47b6a924", + "2018-03-20", + "refactor(rstream): simplify Subscription, update all impls" + ], + [ + "64c16255", + "2018-03-19", + "Merge branch 'develop' into feature/rstream-refactor" + ], + ["5bf5ce61", "2018-03-19", "docs: update dep graph"], + ["1c5d96f7", "2018-03-19", "Publish"], + [ + "ff802a45", + "2018-03-19", + "refactor(rstream): simplify StreamMerge source handling" + ], + [ + "f7029efd", + "2018-03-19", + "refactor(rstream): minor cleanup/perf StreamSync" + ], + ["791a993f", "2018-03-19", "feat(rstream): add StreamSync"], + [ + "c7364334", + "2018-03-19", + "refactor(rstream): add/update Stream ctor arities" + ], + ["abc195a4", "2018-03-19", "feat(transducers): add mapVals() xform"], + [ + "3bc8d54a", + "2018-03-19", + "refactor(transducers): update labeled(), mapIndexed(), partition()" + ], + ["bebd1186", "2018-03-19", "feat(transducers): add partitionSync() xform"], + ["627dd7a4", "2018-03-19", "docs: update dep graph"], + ["b316114f", "2018-03-19", "Publish"], + ["76c5e0a4", "2018-03-19", "fix(interceptors): InterceptorPredicate args"], + ["dbb046e8", "2018-03-18", "docs: update dep graph"], + ["a69b5141", "2018-03-18", "Publish"], + [ + "c0ec2745", + "2018-03-18", + "feat(atom): add optional support for eager views, update tests/readme" + ], + [ + "f295a475", + "2018-03-18", + "build(examples): update all @thi.ng deps to use \"latest\"" + ], + ["4e91374b", "2018-03-18", "docs: update dep graph"], + ["6b92bf67", "2018-03-18", "Publish"], + ["eaeccf47", "2018-03-18", "fix(paths): fix setter fast paths"], + ["e022cdf0", "2018-03-18", "docs: update dep graph"], + ["8cee5b5f", "2018-03-18", "Publish"], + [ + "92f0e27e", + "2018-03-18", + "fix(paths): fix setIn fast paths for path length 3/4" + ], + [ + "2376e02f", + "2018-03-18", + "build: fix changelogs for atom/interceptors/paths" + ], + ["4c0212fb", "2018-03-18", "docs(resolve-map): fix link in readme"], + [ + "b6a8da58", + "2018-03-18", + "build(examples): update deps & imports for all examples" + ], + ["2c1a85bc", "2018-03-17", "docs: update dep graph"], + ["c3cac0c0", "2018-03-17", "Publish"], + ["1e7ef2b6", "2018-03-17", "build: fix atom deps in downstream packages"], + ["8281609c", "2018-03-17", "minor(atom): fix typo in package"], + ["a41a208e", "2018-03-17", "v1.0.0"], + ["9a1cc521", "2018-03-17", "docs: update dep graph"], + ["c0c3e64c", "2018-03-17", "v1.0.0"], + ["0d13982c", "2018-03-17", "v0.1.0"], + ["95f6b392", "2018-03-17", "Merge branch 'feature/lazymap' into develop"], + ["d34bd146", "2018-03-17", "build: update make-module script (deps)"], + ["e1cf4aba", "2018-03-17", "docs(interceptors): update readme"], + ["9a651cd9", "2018-03-17", "docs(atom): update readme"], + [ + "1273efbd", + "2018-03-17", + "refactor(atom): extract @thi.ng/paths & @thi.ng/interceptors functionality" + ], + ["763ea89f", "2018-03-17", "docs: update package list in main readme"], + [ + "195a6ffd", + "2018-03-17", + "feat(interceptors): add/extract @thi.ng/interceptors package from @thi.ng/atom" + ], + [ + "422c2c4e", + "2018-03-17", + "feat(resolve-map): add @thi.ng/resolve-map package" + ], + [ + "f9f6eb1e", + "2018-03-17", + "feat(paths): add/extract @thi.ng/paths from @thi.ng/atom" + ], + ["d3d66436", "2018-03-16", "refactor(examples): update router-basics"], + [ + "f1bc74d2", + "2018-03-16", + "docs: update readme files (add create-hdom-app instructions)" + ], + ["8596cd07", "2018-03-16", "docs: update dep graph"], + ["6383233e", "2018-03-16", "Publish"], + ["357c46e0", "2018-03-16", "feat(atom): add forwardSideFx() interceptor"], + [ + "e52e7e51", + "2018-03-16", + "feat(atom): add FX_FETCH & FX_DELAY sidefx impl, update docs" + ], + ["6378eb0b", "2018-03-15", "fix(examples): re-add html"], + [ + "633093ea", + "2018-03-15", + "refactor(examples): update router-basics (create-hdom-app tpl)" + ], + ["6deb4e33", "2018-03-14", "build(examples): update hdom deps"], + ["c0432cb4", "2018-03-14", "docs: update dep graph"], + ["fff77886", "2018-03-14", "Publish"], + ["3a0e97d2", "2018-03-14", "test(hdom): add tests, update package"], + ["25d0c309", "2018-03-14", "test(hiccup): add deref tests"], + [ + "14356895", + "2018-03-14", + "Merge branch 'feature/hdom-deref' into develop" + ], + [ + "c85b1f81", + "2018-03-14", + "refactor(examples): remove obsolete .deref() calls" + ], + [ + "93343d63", + "2018-03-14", + "feat(hiccup): support fn values in style objects" + ], + [ + "28b0b578", + "2018-03-14", + "refactor(hdom): disable deref() for attrib objects" + ], + [ + "de839e89", + "2018-03-14", + "refactor(hiccup): disable deref() for attrib objects" + ], + ["0fe6c44c", "2018-03-14", "feat(hdom): add auto deref() support"], + ["0d2c16fc", "2018-03-14", "feat(hiccup): add auto deref() support"], + ["2351240d", "2018-03-14", "minor(examples): typo"], + ["c5cee483", "2018-03-12", "minor(examples): readme"], + ["15acdb5c", "2018-03-12", "minor(examples): typos"], + ["ee118999", "2018-03-12", "docs(examples): update readme"], + ["8eb0a610", "2018-03-12", "docs(examples): add README for example dir"], + ["fc61aae6", "2018-03-12", "minor(examples): add filesize info"], + [ + "777b1b05", + "2018-03-11", + "refactor(examples): more stateless components, add docs" + ], + ["49008ccf", "2018-03-11", "docs(examples): update readme"], + ["eb73ae93", "2018-03-11", "refactor(examples): update router demo"], + ["5b412e7d", "2018-03-11", "docs: update dep graph"], + ["a9b09f16", "2018-03-11", "Publish"], + ["10ea19f5", "2018-03-11", "docs(atom): update readme & doc strings"], + ["0ca0bf3e", "2018-03-11", "fix(atom): ignore side fx with null values"], + ["5e8cbc98", "2018-03-11", "docs: update dep graph"], + ["e62dace5", "2018-03-11", "Publish"], + ["bd8c8b1e", "2018-03-11", "Merge branch 'feature/router' into develop"], + ["eac0e96f", "2018-03-11", "docs(router): update readme & package"], + [ + "71b19a43", + "2018-03-10", + "feat(examples): major update router example app" + ], + ["d8b8d978", "2018-03-10", "docs: add router package links to main readme"], + ["51b02e2b", "2018-03-10", "feat(examples): add router-basics demo"], + [ + "07b4e060", + "2018-03-10", + "feat(router): re-import router package (MBP2010), minor refactor & fixes" + ], + ["019943e2", "2018-03-09", "docs: update dep graph"], + ["95d6a4e2", "2018-03-09", "Publish"], + ["c7e69def", "2018-03-09", "refactor(examples): minor updates"], + ["3fae2496", "2018-03-09", "feat(atom): add/extract StatelessEventBus"], + ["667691ce", "2018-03-09", "feat(atom): update EventBus ctor, add deref()"], + ["59085e0c", "2018-03-09", "fix(atom): add interceptors to re-exports"], + ["9b3d91e5", "2018-03-09", "feat(atom): add IRelease impls"], + ["3bf9fbaa", "2018-03-09", "docs(atom): update all doc strings"], + [ + "e96cc991", + "2018-03-09", + "refactor(atom): minor update event bus, add/update docs" + ], + ["15ae0643", "2018-03-09", "docs: update dep graph"], + ["a26e25cf", "2018-03-09", "Publish"], + ["a48b7762", "2018-03-08", "refactor(examples): update async-effect"], + ["4d7613d8", "2018-03-08", "refactor(examples): update interceptor-basics"], + ["fb9b19c4", "2018-03-08", "docs(atom): minor update View docs"], + [ + "359c4f5a", + "2018-03-08", + "feat(atom): add valueSetter/Updater() interceptors" + ], + ["443875c8", "2018-03-08", "refactor(atom): update InterceptorFn handling"], + [ + "1fd43d7c", + "2018-03-08", + "feat(atom): add default handlers, add/rename event/fx const values, add checks" + ], + ["c5d5ed56", "2018-03-08", "build(examples): update all deps"], + ["89a0b20d", "2018-03-08", "docs: update dep graph"], + ["f018fb12", "2018-03-08", "Publish"], + [ + "cb9c808e", + "2018-03-08", + "Merge branch 'feature/atom-async-dispatch' into develop" + ], + [ + "a6beda9d", + "2018-03-08", + "refactor(examples): update async & interceptor demos" + ], + ["3303c3b4", "2018-03-08", "docs(atom): update readme"], + [ + "56866e07", + "2018-03-08", + "feat(atom): add async dispatch effect, update event bus & api types" + ], + [ + "9900e991", + "2018-03-08", + "feat(checks): add isPromise() & isPromiseLike()" + ], + ["fb4f3095", "2018-03-08", "docs: update dep graph"], + ["99a87e6a", "2018-03-08", "Publish"], + ["52fff093", "2018-03-08", "docs(examples): update async readme & html"], + ["c9794acb", "2018-03-07", "feat(examples): add async fx example"], + [ + "9e5239bc", + "2018-03-07", + "fix(atom): add EventBus to module re-exports, minor cleanup" + ], + ["5b21c147", "2018-03-07", "build(examples): update interceptor deps"], + [ + "7dcfce05", + "2018-03-07", + "refactor(examples): update interceptor example" + ], + ["85e04957", "2018-03-07", "docs: update dep graph"], + ["851efd23", "2018-03-07", "Publish"], + [ + "1adb703a", + "2018-03-07", + "refactor(examples): update interceptor example" + ], + [ + "1ab803aa", + "2018-03-07", + "refactor(atom): update InterceptorFn, ensureXXX(), update deps, add docs" + ], + ["eec7bc4c", "2018-03-07", "docs: update dep graph"], + ["b877a069", "2018-03-07", "Publish"], + ["fb74b8a7", "2018-03-07", "Merge branch 'feature/iceps' into develop"], + ["4958606b", "2018-03-07", "feat(examples): add interceptors example"], + ["a0d662bb", "2018-03-07", "build(atom): add @thi.ng/dcons dep"], + [ + "e01bf733", + "2018-03-07", + "feat(atom): re-add refactored EventBus & interceptor handling" + ], + ["be46af3f", "2018-03-06", "feat(examples): add svg viz to devcards demo"], + ["79245a35", "2018-03-05", "minor(examples): typos"], + ["f40143be", "2018-03-05", "fix(examples): add/update devcard links"], + [ + "8019df82", + "2018-03-05", + "build(examples): add missing html/webpack files, update deps" + ], + [ + "9becd43d", + "2018-03-05", + "Merge branch 'master' of github.com:thi-ng/umbrella" + ], + ["58e75591", "2018-03-05", "docs: update dep graph"], + ["f38885de", "2018-03-05", "Publish"], + [ + "df4e98fb", + "2018-03-05", + "Merge branch 'feature/ex-mstates' into develop" + ], + ["1041d90c", "2018-03-05", "feat(examples): add devcards example"], + [ + "a200beb8", + "2018-03-05", + "feat(hdom): add support for frame skipping, add docs" + ], + [ + "a7e61a4e", + "2018-03-05", + "feat(atom): update IAtom, add resetIn() & swapIn() impls" + ], + [ + "17a11710", + "2018-03-05", + "Merge branch 'feature/hcss-refactor' into develop" + ], + [ + "22bc29c9", + "2018-03-05", + "docs(hiccup-css): add doc strings for attrib fns" + ], + ["721583a7", "2018-03-05", "refactor(hiccup-css): internal restructure"], + ["34d699fc", "2018-03-05", "chore: update issue tpl instructions"], + ["dd09f0bf", "2018-03-05", "docs: update dep graph"], + ["203a3a6e", "2018-03-05", "Publish"], + [ + "2e3942ac", + "2018-03-05", + "docs(hiccup-css): add doc strings, update readme" + ], + [ + "105bbf4e", + "2018-03-05", + "perf(hiccup-css): no empty Set() creation, change type check order in css()" + ], + ["870da99d", "2018-03-05", "docs: update readme"], + ["0c23d2b6", "2018-03-05", "docs: update dep graph"], + ["1e08ce24", "2018-03-05", "v0.1.0"], + ["69036ad1", "2018-03-05", "minor(hiccup-css): update package desc"], + ["5d946cb0", "2018-03-05", "Merge branch 'develop'"], + [ + "d6f8b066", + "2018-03-05", + "Merge branch 'feature/hiccup-css' into develop" + ], + ["8a665313", "2018-03-05", "build(hiccup-dom): update ignore files"], + ["bafb533e", "2018-03-05", "docs(hiccup-css): update readme"], + ["24983d37", "2018-03-05", "test(hiccup-css): update tests"], + [ + "0f416efe", + "2018-03-05", + "feat(hiccup-css): add comment() indentation support" + ], + ["f3190fff", "2018-03-05", "fix(hiccup-css): fn & auto-prefix handling"], + [ + "787d0aba", + "2018-03-05", + "feat(hiccup-css): add more unit types, update px/ms" + ], + [ + "02bff871", + "2018-03-05", + "feat(hiccup-css): add support for iterators as arg type to css()" + ], + ["cbb9b7f0", "2018-03-04", "test(hiccup-css): add/update tests"], + [ + "a6231172", + "2018-03-04", + "refactor(hiccup-css): format @keyframe stops, rename perc() => percent()" + ], + ["e347c292", "2018-03-04", "fix(hiccup-css): @import query separator"], + [ + "57533c76", + "2018-03-04", + "feat(hiccup-css): update conditional handling, add formatCond()" + ], + [ + "428de3c7", + "2018-03-04", + "feat(hiccup-css): update fn handling, add iterator support, units, comment" + ], + ["bdc63496", "2018-03-04", "minor: fix typos"], + ["c20f2df6", "2018-03-04", "Create CONTRIBUTING.md"], + ["6de6b279", "2018-03-03", "perf(hiccup-dom): minor optimizations"], + [ + "ebbc4910", + "2018-03-03", + "feat(hiccup-css): add attrib fn, at-rules, quoted fns, decl value arrays" + ], + ["e687230c", "2018-03-03", "feat(hiccup-css): add default vendor prefixes"], + [ + "a53d2a5f", + "2018-03-03", + "feat(hiccup-css): add keyframes(), split module into separate src files" + ], + [ + "d837199d", + "2018-03-03", + "feat(hiccup-css): add CSSOpts, mediaQuery(), fn expansion" + ], + [ + "5247b8f4", + "2018-03-03", + "feat(hiccup-css): add/fix class handling, update Format" + ], + [ + "3a4cf1e6", + "2018-03-03", + "feat(hiccup-css): add package @thi.ng/hiccup-css" + ], + ["92fb7b07", "2018-03-03", "chore(examples): update links in html files"], + ["b6d350b3", "2018-03-03", "docs: update dep graph"], + ["6c628213", "2018-03-03", "docs(hdom): fix diagram link"], + ["db98e5e5", "2018-03-03", "chore: update make-example"], + ["2f5f0b2e", "2018-03-03", "build(examples): update all example deps"], + ["45291b3d", "2018-03-03", "Publish"], + ["9099607d", "2018-03-03", "docs: update readme's"], + [ + "752a78bb", + "2018-03-03", + "feat(hdom-components): rename package hiccup-dom-component => hdom-components" + ], + ["79e1b097", "2018-03-03", "docs(hdom): update readme"], + [ + "f1c53150", + "2018-03-03", + "refactor(hdom): rename package hiccup-dom => hdom" + ], + ["ae47c4db", "2018-03-03", "docs: update dep graph"], + ["e405ebdf", "2018-03-03", "Publish"], + [ + "8c180bc6", + "2018-03-03", + "refactor(transducers): extract compR() into its own file, update refs, update readme" + ], + [ + "2f5abce3", + "2018-03-02", + "refactor(transducers): update swizzler() arg types" + ], + [ + "488462e1", + "2018-03-02", + "refactor(transducers): update permutations()/permutationsN(), add tests" + ], + [ + "91938ede", + "2018-03-02", + "feat(transducers): add permutations()/permutationsN() generators" + ], + ["aa042602", "2018-03-02", "docs: update dep graph"], + ["3d8a6d3c", "2018-03-02", "Publish"], + ["2316d4d1", "2018-03-02", "test(transducers): add flatten() tests"], + ["3d8aa324", "2018-03-02", "fix(transducers): flattenWith()"], + ["befaceb0", "2018-03-01", "docs(atom): update readme example"], + ["3dcc3cb8", "2018-03-01", "docs(atom): update example"], + [ + "dd665920", + "2018-03-01", + "feat(examples): add login-form demo to illustrate state handling" + ], + ["118cf92f", "2018-03-01", "docs: update dep graph"], + ["1f61f49d", "2018-03-01", "Publish"], + ["ae7c7f5d", "2018-03-01", "docs(atom): update readme, add View examples"], + ["3e55a058", "2018-03-01", "fix(atom): re-export api.ts"], + ["341255c9", "2018-03-01", "refactor(atom): include `path` in IView"], + ["0206f339", "2018-03-01", "docs: update dep graph"], + ["5308cab5", "2018-03-01", "Publish"], + ["a0ce6e76", "2018-03-01", "refactor(atom): update Path type references"], + [ + "9ad83b27", + "2018-03-01", + "feat(atom): add IView, IViewable, impl for Atom, Cursor, History" + ], + ["1fa829d6", "2018-03-01", "test(atom): add/update tests"], + [ + "8c0c621c", + "2018-03-01", + "feat(atom): add View type to create derrived views/value subscriptions" + ], + [ + "55c6a7d5", + "2018-03-01", + "perf(atom): add optimized setter() for path len < 5, fix toPath()" + ], + [ + "ed23376d", + "2018-03-01", + "perf(atom): add optimized getters for path len < 5" + ], + ["ff21d9f4", "2018-02-28", "docs: update dep graph"], + ["6779def4", "2018-02-28", "Publish"], + ["a86b6775", "2018-02-28", "docs(hiccup-dom): fix readme link"], + [ + "ca17389c", + "2018-02-28", + "feat(hiccup-dom): add support for function attribs, add docs" + ], + [ + "050a5656", + "2018-02-28", + "docs(hiccup-dom): update initial readme example" + ], + [ + "c7e2f816", + "2018-02-27", + "Merge branch 'master' of github.com:thi-ng/umbrella" + ], + ["eafc5dd6", "2018-02-27", "build(examples): update deps"], + ["4a8feffc", "2018-02-27", "docs(hiccup-dom): fix #7, update readme"], + ["61e87665", "2018-02-27", "docs(hiccup-dom): update readme"], + ["9593fd13", "2018-02-27", "docs: update dep graph"], + ["b8a6e1af", "2018-02-27", "Publish"], + ["70720a37", "2018-02-27", "refactor(examples): minor updates"], + [ + "8a070ff2", + "2018-02-27", + "feat(hiccup-dom): start(), add optional spans arg" + ], + ["9b2c1606", "2018-02-27", "minor(hiccup-dom): update arg types"], + [ + "f5b66753", + "2018-02-27", + "feat(hiccup-dom): fix #11, update normalizeTree/normalizeElement" + ], + ["6e0dfa1d", "2018-02-27", "feat(diff): update diffArray, generic types"], + ["621868b4", "2018-02-26", "docs: update dep graph"], + ["9ff8c0af", "2018-02-26", "Publish"], + ["45d63858", "2018-02-26", "refactor(hiccup): sort void tags"], + [ + "9824844a", + "2018-02-26", + "feat(transducers): add keys()/vals() iterators, refactor pairs()" + ], + [ + "061c9088", + "2018-02-26", + "Merge pull request #12 from jarvismartin/minor-fix" + ], + [ + "f6143eb7", + "2018-02-25", + "Merge branch 'master' of github.com:thi-ng/umbrella into minor-fix" + ], + ["c34271f7", "2018-02-24", "docs: update dep graph"], + ["1b16d920", "2018-02-24", "Publish"], + [ + "44f33dfc", + "2018-02-24", + "feat(hiccup): add support for more SVG tags (66 total)" + ], + [ + "214fe4d0", + "2018-02-23", + "feat(hiccup-dom-components): add gradient, group, path SVG funcs" + ], + ["8180e149", "2018-02-23", "spelling fix"], + [ + "68d9f838", + "2018-02-23", + "Merge branch 'master' of github.com:thi-ng/umbrella" + ], + ["ca68a978", "2018-02-23", "minor grammar fix"], + ["b3891d52", "2018-02-23", "refactor(examples): simplify json-components"], + ["1834f812", "2018-02-23", "docs: update dep graph"], + ["8a620583", "2018-02-23", "Publish"], + [ + "2a11ff6f", + "2018-02-23", + "refactor(transducers): add TransformSubSpec, fix test, minor update docs" + ], + ["223669b1", "2018-02-23", "test(transducers): add tests"], + [ + "f0fdfa10", + "2018-02-23", + "feat(transducers): add deepTransform & mapDeep xform" + ], + [ + "65f794f6", + "2018-02-19", + "build: add .gitignore gen for make-example script" + ], + [ + "f7c6e0c9", + "2018-02-19", + "Merge pull request #10 from jarvismartin/example-gitignores" + ], + ["955eecc4", "2018-02-19", "add .gitignore files to examples"], + [ + "e1f87d6b", + "2018-02-19", + "fix(examples): update packages & readme's (fix #9), deps in make-example" + ], + [ + "c2123e58", + "2018-02-19", + "Merge pull request #9 from jarvismartin/examples-work-on-debian" + ], + ["31a4710a", "2018-02-19", "build(examples): update CA deps (transducers)"], + [ + "9b664d25", + "2018-02-19", + "refactor(examples): simplify CA transducers, update rule format/handling" + ], + ["2c2030d2", "2018-02-19", "docs: update dep graph"], + ["afa74728", "2018-02-19", "Publish"], + [ + "193058d5", + "2018-02-19", + "feat(transducers): add lookup1d/2d/3d helpers, update re-exports" + ], + ["813b2cac", "2018-02-19", "make examples work on Debian systems"], + ["77c95322", "2018-02-19", "refactor(examples): update webgl demo"], + ["73dd1dc5", "2018-02-19", "docs: update dep graph"], + ["9c8e877a", "2018-02-19", "build(examples): update CA deps"], + ["7f8c6cd0", "2018-02-19", "Publish"], + [ + "3627087b", + "2018-02-19", + "docs: add hiccup-dom-components to main readme" + ], + [ + "ac831234", + "2018-02-19", + "build(hiccup-dom-components): add missing deps" + ], + ["9fe096a3", "2018-02-19", "build: update yarn.lock"], + [ + "2394396e", + "2018-02-19", + "feat(examples): add CA presets, refactor rule handling" + ], + ["511c4980", "2018-02-19", "feat(hiccup-dom-components): initial import"], + ["df93af6d", "2018-02-18", "feat(examples): add randomize buttons (CA)"], + ["fde83d59", "2018-02-18", "build(examples): update example deps"], + ["b8c03743", "2018-02-18", "docs: update dep graph"], + ["06830ce6", "2018-02-18", "Publish"], + ["69b3c6a4", "2018-02-18", "docs: update readme files"], + ["074f94ff", "2018-02-18", "build: update deps"], + [ + "5a728cb9", + "2018-02-18", + "refactor(rstream-log): update Logger ctor due to changes in StreamMerge" + ], + [ + "4942e2ea", + "2018-02-18", + "feat(rstream): fix #8, support infinite StreamMerge's, update ctor" + ], + [ + "ca1caae5", + "2018-02-18", + "refactor(rstream): don't throw in unsubscribe() if no parent" + ], + ["5c106cfa", "2018-02-18", "docs(examples): add more CA config links"], + ["d6d3310d", "2018-02-18", "feat(examples): add cellular automata example"], + ["d023bd5f", "2018-02-18", "chore(transducers): update re-exports, readme"], + [ + "ab8a8558", + "2018-02-18", + "feat(transducers): add convolve2d xform & types" + ], + ["d7b1d0df", "2018-02-18", "feat(transducers): add movingMedian() xform"], + ["48f8bb85", "2018-02-18", "fix(transducers): update imports `step()`"], + [ + "63a49530", + "2018-02-18", + "refactor(transducers): add/update range2d/range3d arity handling" + ], + ["e71a4c90", "2018-02-17", "docs(atom): update readme"], + [ + "2e34f389", + "2018-02-17", + "refactor(atom): update history reset/swap, record before applying val" + ], + ["b593a9b9", "2018-02-17", "feat(atom): add deleteIn()"], + ["fbc819ed", "2018-02-17", "fix(atom): empty path handling getter/setter"], + [ + "7d50c1ca", + "2018-02-17", + "refactor(examples): simplify todo atom handling" + ], + [ + "b5ee8e45", + "2018-02-17", + "refactor(atom): use @thi.ng/api/equiv as default History predicate" + ], + [ + "398c32af", + "2018-02-17", + "refactor(atom): don't mutate getter/setter path args, update updateIn" + ], + ["6f6e7e5b", "2018-02-17", "feat(atom): add getIn/setIn/updateIn"], + ["d38f47e0", "2018-02-16", "test(transducers): add range2d tests"], + [ + "722042b1", + "2018-02-16", + "feat(transducers): add range2d / range3d generators" + ], + ["47d5df09", "2018-02-15", "chore: update issue tpl"], + ["c9ec713f", "2018-02-15", "Create issue_template.md"], + ["4d1de860", "2018-02-08", "docs: update dep graph"], + ["3fc88b25", "2018-02-08", "Publish"], + [ + "445c8575", + "2018-02-08", + "refactor(transducers): re-use even/odd from @thi.ng/checks" + ], + [ + "68f8fc23", + "2018-02-08", + "feat(checks): add new predicates, refactor existing" + ], + [ + "080c2ee5", + "2018-02-07", + "fix(csp): fix #5, more example fixes (rfn calls)" + ], + ["a10a487c", "2018-02-07", "fix(csp): fix #5, example in readme"], + ["972a23e1", "2018-02-05", "style: update const/let assignments"], + ["623bc492", "2018-02-05", "refactor(examples): update webgl demo"], + ["5281d9a8", "2018-02-05", "feat(examples): add webgl example"], + ["eb12a165", "2018-02-04", "build: update upload-docs script"], + ["3ee6755f", "2018-02-04", "fix(examples): minor fixes index.html"], + [ + "855d8039", + "2018-02-04", + "feat(transducers): add page() xform, update readme" + ], + ["596ed7a2", "2018-02-04", "docs: update dep graph"], + ["17e447f6", "2018-02-04", "Publish"], + [ + "1f4f4b8c", + "2018-02-04", + "fix(hiccup-dom): support parent DOM ID as arg start()" + ], + ["d8fea714", "2018-02-03", "docs: update dep graph"], + ["3daf7962", "2018-02-03", "Publish"], + [ + "4edf45fc", + "2018-02-03", + "fix(hiccup-dom): fix #3, update start() to be cancellable, add docs" + ], + ["ae34f077", "2018-02-03", "docs(hiccup-dom): fix readme link"], + [ + "b6d95fbe", + "2018-02-03", + "feat(examples): add json demo theme support, update docs" + ], + [ + "83cd1a21", + "2018-02-03", + "refactor(examples): minor update json-components" + ], + ["edfaa6bd", "2018-02-03", "build(examples): update deps"], + ["07da7cca", "2018-02-03", "docs: update dep graph"], + ["c3b54f98", "2018-02-03", "Publish"], + [ + "b524145b", + "2018-02-03", + "feat(examples): add reactive json editor component" + ], + ["10c119b2", "2018-02-03", "refactor(hiccup-dom): minor update ILifeCycle"], + ["944cbb3b", "2018-02-03", "fix(hiccup-dom): add NO_SPANS config"], + ["d8fa4cae", "2018-02-03", "fix(examples): update index.html"], + ["d5460b70", "2018-02-03", "docs(hiccup-dom): update readme"], + ["5d8478e1", "2018-02-03", "fix(examples): add missing files"], + ["3156e888", "2018-02-03", "fix(examples): update deps"], + ["2e4e51c5", "2018-02-03", "feat(examples): add json component demo"], + [ + "f30579ce", + "2018-02-03", + "Merge branch 'master' of github.com:thi-ng/umbrella" + ], + ["adb04f07", "2018-02-03", "merge with #2"], + ["c09bb89d", "2018-02-03", "docs(hiccup-dom): add svg example links"], + ["aa48d3be", "2018-02-03", "feat(examples): add svg particles demo"], + ["1b007e69", "2018-02-03", "Merge pull request #2 from forresto/patch-1"], + ["7ae6af3b", "2018-02-02", "Is c 3 here?"], + ["96004efe", "2018-02-03", "docs(atom): fix readme example"], + ["8ebc6242", "2018-02-03", "docs(atom): update readme"], + ["ad62c56f", "2018-02-03", "build(examples): update deps"], + ["5aed12b6", "2018-02-03", "docs: update dep graph"], + ["99a943ac", "2018-02-03", "Publish"], + [ + "8106d16f", + "2018-02-02", + "build: update main package build commands, update make-example script, readme" + ], + [ + "309c7d7c", + "2018-02-02", + "build(examples): update example build commands" + ], + ["29267799", "2018-02-02", "refactor(examples): update event attribs"], + [ + "7cc5c93a", + "2018-02-02", + "refactor(hiccup-dom): update event attrib naming convention, update readme" + ], + [ + "7ae706eb", + "2018-02-02", + "feat(hiccup): skip fn exec for event attribs, update tests, readme" + ], + ["ab7154a8", "2018-02-02", "docs(hiccup-dom): update readme"], + ["38699b96", "2018-02-02", "docs(hiccup-dom): add diagram"], + ["62af1537", "2018-02-02", "docs: update dep graph"], + ["ec0132c6", "2018-02-02", "Publish"], + [ + "d134d5b7", + "2018-02-02", + "refactor(hiccup-dom): add interfaces (still unused)" + ], + ["324d2fa2", "2018-02-02", "docs(examples): add benchmark docs"], + ["448e8396", "2018-02-02", "perf(diff): add fail fasts"], + ["98485760", "2018-02-02", "refactor(checks): isPlainObject()"], + ["110a9deb", "2018-02-02", "fix(api): update compare() & equiv()"], + [ + "0f57ff90", + "2018-02-02", + "docs(atom): update readme, add history example" + ], + ["10d9ecbf", "2018-02-02", "docs(hiccup-dom): fix example link"], + ["17b43036", "2018-02-02", "docs(hiccup-dom): update readme"], + ["d573bc53", "2018-02-02", "docs: update hiccup* readme files"], + ["7cfca0d8", "2018-02-02", "docs: update main readme"], + ["e4f8fe16", "2018-02-02", "docs(hiccup-dom): update readme"], + ["c2fed170", "2018-02-02", "feat(examples): add hdom-basics example"], + ["5e6eb832", "2018-02-02", "chore: add make-example script"], + ["e69774df", "2018-02-02", "fix(examples): benchmark"], + ["e939586a", "2018-02-02", "feat(examples): add hdom benchmark"], + ["0a41be9e", "2018-02-01", "docs: fix readme"], + ["afb869b0", "2018-02-01", "docs: add/update readme files"], + ["d52630c6", "2018-02-01", "docs: update dep graph"], + ["10a4f910", "2018-02-01", "Publish"], + ["12590847", "2018-02-01", "docs: update dep graph"], + ["24ea4ca9", "2018-02-01", "docs: update readme files"], + [ + "25c9f785", + "2018-02-01", + "feat(atom,hiccup-dom): add example projects (todo list & dashboard)" + ], + ["1f6bb589", "2018-02-01", "fix(hiccup-dom): boolean attribs"], + [ + "8218814f", + "2018-02-01", + "fix(atom): truncate redo stack in record(), swap() return type" + ], + ["c5b6e0fa", "2018-02-01", "feat(atom): add History.canUndo/Redo()"], + ["36cc9561", "2018-02-01", "fix(atom): cursor swap() return type"], + ["094e4869", "2018-02-01", "docs(hiccup-dom): fix links in readme"], + ["d373cab1", "2018-02-01", "docs: update main readme"], + ["00ad5d84", "2018-02-01", "docs: update dep graph"], + ["794b1fd5", "2018-02-01", "Publish"], + ["326d3c31", "2018-02-01", "build: update .npmignore"], + ["3101698d", "2018-02-01", "feat(hiccup-dom): add start(), update readme"], + ["beebe435", "2018-02-01", "chore: update keywords for all packages"], + ["5d7c10a3", "2018-02-01", "test(rstream): fix tests (TS 2.7.*)"], + ["4cc4bbc0", "2018-02-01", "build: cleanup/update deps"], + ["30ffd009", "2018-02-01", "feat(hiccup-dom): re-import package (MBP2010)"], + ["4d0d437b", "2018-02-01", "feat(diff): re-import diff package (MBP2010)"], + [ + "0439d24b", + "2018-02-01", + "refactor(hiccup): update/add deps, restructure/split into sub-modules" + ], + [ + "febe39f1", + "2018-02-01", + "fix(transducers): update comp() for typescript 2.7.*" + ], + ["a580f722", "2018-02-01", "build: update deps (typescript & typedoc)"], + ["ea638bef", "2018-02-01", "feat(rstream): add Cache subscription class"], + [ + "1354e298", + "2018-02-01", + "fix(api): fix equiv string handling, update tests" + ], + [ + "878520e6", + "2018-02-01", + "feat(api): update equiv() null handling, add tests" + ], + ["03c1d97a", "2018-01-31", "docs: update dep graph"], + ["5a3c0cce", "2018-01-31", "Publish"], + [ + "59d2a8a1", + "2018-01-31", + "docs(rstream): add undo/redo example to readme" + ], + [ + "54cd5261", + "2018-01-31", + "fix(rstream): subscription unhandled error handling" + ], + ["4c703cd4", "2018-01-31", "docs: update dep graph"], + ["92a923cf", "2018-01-31", "Publish"], + ["365e0d2b", "2018-01-31", "build: update main package commands"], + [ + "d58cf70d", + "2018-01-31", + "feat(rstream): add changed predicate for fromAtom(), add tests" + ], + ["dd155dfd", "2018-01-31", "docs(atom): add docs for getter/setter"], + [ + "55383621", + "2018-01-31", + "feat(atom): add full IAtom impl for History, update tests" + ], + ["4753afb8", "2018-01-31", "refactor(transducers): use Predicate2"], + ["79989e52", "2018-01-31", "refactor(dcons): use Predicate"], + ["42bbb864", "2018-01-31", "refactor(iterators): use Predicate/Predicate2"], + [ + "fbf8453c", + "2018-01-31", + "feat(api): add Predicate2 & StatefulPredicate2 types" + ], + ["b180917c", "2018-01-31", "docs: update dep graph"], + ["2746e8b3", "2018-01-31", "Publish"], + ["911ff183", "2018-01-31", "test(atom): add/update tests"], + [ + "e1b57dea", + "2018-01-31", + "feat(atom): add IReset/ISwap impls for History" + ], + ["282d9896", "2018-01-31", "fix(atom): cursor ctor arg checks"], + [ + "74ecdf18", + "2018-01-31", + "refactor(atom): extract IReset, ISwap from IAtom" + ], + ["035c51a3", "2018-01-31", "feat(atom): add History, add/update tests"], + ["2c88537e", "2018-01-30", "fix: links in readme"], + ["bbbc869c", "2018-01-30", "deploy: add upload-docs script"], + ["dee5f53c", "2018-01-30", "docs: update readme"], + ["da037723", "2018-01-30", "docs: update dep graph"], + ["95c728e0", "2018-01-30", "Publish"], + ["7f345bcc", "2018-01-30", "chore: update make-module"], + [ + "22b02a2d", + "2018-01-29", + "build: add main package commands, update readme" + ], + ["768f2ea7", "2018-01-29", "chore: update ignore files"], + ["0b5ca037", "2018-01-29", "build: add nyc coverage dev deps & commands"], + ["dc0958b7", "2018-01-29", "chore: update ignore files"], + ["c863018c", "2018-01-29", "test(iterator): add/update tests"], + ["f6530225", "2018-01-29", "docs: update dep graph"], + ["a508b05e", "2018-01-29", "Publish"], + [ + "4c242c93", + "2018-01-29", + "test(rstream): remove sidechainPartition interval test due to unpredictable timing" + ], + [ + "382aa05e", + "2018-01-29", + "fix(rstream): fatal recursion w/ error handling" + ], + ["1a0004f7", "2018-01-29", "test(rstream): increase timeout for travis"], + ["7bdc5617", "2018-01-29", "docs(iterators): update readme"], + ["651d07c0", "2018-01-29", "refactor(iterators): remove default exports"], + ["1e9dc852", "2018-01-29", "docs: add links for badges"], + ["925645ae", "2018-01-29", "docs: add travis badge"], + ["2d42787c", "2018-01-29", "build: update travis.yml"], + ["dfbd7efe", "2018-01-29", "docs(transducers): update padLast docs"], + [ + "e6477679", + "2018-01-29", + "test: add travis.yml, update main package / readme" + ], + ["9c2db625", "2018-01-29", "chore: update make-module script"], + ["6a125e83", "2018-01-29", "test: add test stubs, fix existing"], + ["b952a357", "2018-01-29", "build: update/fix all tsconfig files"], + ["85b280bf", "2018-01-29", "build: update commands in all packages"], + ["94333dfd", "2018-01-29", "test(atom): add/update tests"], + ["17d5c999", "2018-01-29", "docs: update dep graph"], + ["83b6e1a1", "2018-01-29", "Publish"], + [ + "5dce8a2f", + "2018-01-29", + "feat(atom): add nested path getter / setter compilers" + ], + ["1ae5f635", "2018-01-29", "docs: update dep graph"], + ["1ef8b45d", "2018-01-29", "Publish"], + ["b526376c", "2018-01-29", "docs: update readme"], + ["71c40ad0", "2018-01-29", "docs: update readme"], + ["ccd8e820", "2018-01-29", "test(rstream): update tests (fromPromise())"], + [ + "822b297f", + "2018-01-29", + "fix(rstream): fix #1 update fromPromise(), add test" + ], + [ + "33b3e16c", + "2018-01-29", + "chore: update package cmds & make-module script" + ], + ["1abd3cd1", "2018-01-29", "chore: add license files"], + ["0abfc62d", "2018-01-29", "docs(all) update dep graph"], + ["435c771f", "2018-01-29", "Publish"], + [ + "cca801b7", + "2018-01-29", + "fix(atom): cursor IWatch impls (replace stubs)" + ], + ["318e62ba", "2018-01-29", "docs: update main readme"], + ["5ca9b983", "2018-01-29", "chore: update make-module script"], + ["e45f3bd7", "2018-01-29", "chore(all): update depgraph commit msg format"], + [ + "d774e324", + "2018-01-29", + "perf(transducers): avoid result object cloning in struct() xform" + ], + ["ac12051f", "2018-01-29", "update dep graph"], + ["28771016", "2018-01-29", "Publish"], + [ + "1bc6ee6f", + "2018-01-29", + "build(rstream-csp): minor fix package & readme" + ], + [ + "ca3994ad", + "2018-01-29", + "feat(rstream): add atom dep, add fromAtom() & docs" + ], + [ + "04c3d592", + "2018-01-29", + "feat(atom): add Cursor, update interfaces, types, readme" + ], + [ + "52c25a84", + "2018-01-28", + "build(all): add tslint workspace dev dependency" + ], + [ + "fefc2835", + "2018-01-28", + "feat(atom): re-import atom package from MBP2010, update main readme" + ], + [ + "bddd5ce7", + "2018-01-28", + "feat(api): update IWatch & mixin, boolean returns" + ], + ["55ba0e13", "2018-01-28", "feat(rstream): add fromPromises(), add docs"], + ["2247f72f", "2018-01-28", "feat(rstream): add trace() error handler"], + ["ababaa1c", "2018-01-28", "docs(all): update readme"], + ["68e38136", "2018-01-28", "update dep graph"], + ["a87badef", "2018-01-28", "Publish"], + ["f83bd18e", "2018-01-28", "docs(rstream-csp): fix readme example"], + [ + "a6e49b34", + "2018-01-28", + "build(all): fix depgraph command in main package" + ], + ["d376f872", "2018-01-28", "update dep graph"], + ["8b53d6e1", "2018-01-28", "Publish"], + ["079a052c", "2018-01-28", "docs(all): update main readme, add dep graph"], + ["03ad992a", "2018-01-28", "chore(all): update ignore files"], + ["eb49e575", "2018-01-28", "test(csp): update test examples"], + ["13f0bd12", "2018-01-28", "test(hiccup): refactor all tests"], + [ + "c677539f", + "2018-01-28", + "build(all): update lerna config, main package, add make-module script" + ], + ["fcd01ba6", "2018-01-28", "build(rstream-log): update deps"], + ["28eee5f3", "2018-01-28", "build(transducers): update deps"], + [ + "174aaba7", + "2018-01-28", + "docs(transducers): update readme & doc comments" + ], + ["c2211223", "2018-01-28", "docs(rstream): update readme & doc comments"], + [ + "e37f6a13", + "2018-01-28", + "feat(rstream-csp): add new package, remove CSP dep from rstream" + ], + ["c74353b1", "2018-01-28", "feat(api): add StatefulPredicate"], + [ + "7b21aa64", + "2018-01-27", + "feat(transducers): add noop() xform, update readme" + ], + ["44db970b", "2018-01-27", "fix(transducers): scan() complete handling"], + ["b7c62341", "2018-01-27", "docs(transducers): update readme, add docs"], + [ + "45d6bc66", + "2018-01-27", + "feat(transducers): update re-exports, extract throttleTime() into own file" + ], + [ + "8e5204d2", + "2018-01-27", + "fix(transducers): add \"complete\" step handling in scan()" + ], + [ + "e1a282cb", + "2018-01-27", + "feat(transducers): update throttle(), refactor take/dropNth" + ], + ["0b3c7860", "2018-01-27", "feat(transducers): add labeled() xform"], + ["931b67f7", "2018-01-27", "feat(transducers): add multiplexObj()"], + ["63344e45", "2018-01-27", "feat(transducers): add every(), some() rfns"], + [ + "e555ff55", + "2018-01-27", + "feat(transducers): update re-exports, minor update reductions()" + ], + [ + "4b8d037a", + "2018-01-27", + "feat(transducers): update frequencies() & groupByMap()" + ], + [ + "e268e356", + "2018-01-27", + "refactor(transducers): rename join() => str() rfn" + ], + [ + "beb2cee8", + "2018-01-27", + "feat(transducers): add multiplex() xform & docs" + ], + [ + "1f32fc0c", + "2018-01-27", + "feat(transducers): update step() to support multiple results" + ], + [ + "58f14775", + "2018-01-27", + "refactor(transducers): udate cat() to accept iterables, not just arrays" + ], + [ + "e50fa261", + "2018-01-27", + "feat(transducers): add utf8Encode()/utf8Decode() xforms" + ], + ["57ceecee", "2018-01-26", "Publish"], + ["76c67349", "2018-01-26", "fix(rstream-log): imports"], + ["eb31ec6a", "2018-01-26", "build(rstream): 0.5.1 publish"], + ["22f1b6af", "2018-01-26", "build(all): fix repo links in all packages"], + ["c776df18", "2018-01-26", "build(all): fix pub script aliases"], + ["32fc705a", "2018-01-26", "Publish"], + [ + "de4e8192", + "2018-01-26", + "refactor(rstream): allow extra props in ISubscriber" + ], + ["fdc08897", "2018-01-26", "test(rstream): update promise tests"], + [ + "4bb9f918", + "2018-01-26", + "fix(rstream): Resolver error/rejection handling" + ], + [ + "23e38f79", + "2018-01-26", + "fix(rstream): only handle done() in IDLE or ACTIVE states, else ignore" + ], + ["b4f87853", "2018-01-26", "test(rstream): add/update tests"], + ["3d2f8b91", "2018-01-26", "fix(rstream): fromPromise() error handling"], + [ + "a0647fed", + "2018-01-26", + "refactor(rstream): update/fix Subscription.error() handling" + ], + ["3172eb6d", "2018-01-26", "test(rstream): add transducer test"], + [ + "9cf95541", + "2018-01-26", + "refactor(rstream): change SidechainToggle ctor arg order, add tests" + ], + ["d36a9ff8", "2018-01-26", "feat(rstream): add fromIterableSync()"], + [ + "f1956922", + "2018-01-26", + "feat(rstream): Stream calls done() w/ last unsub" + ], + ["0039ef38", "2018-01-26", "test(rstream): add/update tests"], + [ + "ec985b33", + "2018-01-26", + "feat(rstream): make Stream source arg optional" + ], + ["d3cbda2a", "2018-01-26", "test(rstream): add/update tests"], + ["91e8cad5", "2018-01-26", "feat(rstream): update StreamMerge"], + [ + "887c29bb", + "2018-01-26", + "refactor(rstream): add Subscription.ensureState()" + ], + ["7d066773", "2018-01-26", "test(rstream): add tests for fromIterable()"], + [ + "8019422f", + "2018-01-26", + "feat(rstream): add DEBUG flag to toggle tracing" + ], + [ + "ad548627", + "2018-01-25", + "feat(rstream): allow partial ISubscriber's for subscribe()" + ], + ["55c3b041", "2018-01-25", "fix(rstream-log): update module re-exports"], + [ + "5c85ab9b", + "2018-01-25", + "fix(rstream): update fromPromise() cancellation" + ], + ["0f601d5c", "2018-01-25", "fix(rstream): Stream.cancel()"], + [ + "19f27b94", + "2018-01-25", + "refactor(rstream): update ISubscriber.error() impls" + ], + ["0acf4e22", "2018-01-25", "Publish"], + [ + "f6ca3f33", + "2018-01-25", + "feat(rstream): add sidechainToggle(), minor update sidechainPartition()" + ], + ["2557c3b3", "2018-01-25", "Publish"], + [ + "4048bec4", + "2018-01-25", + "feat(rstream-log): add support for body formatter (formatString()), add type aliases" + ], + [ + "bc26d097", + "2018-01-25", + "feat(rstream-log): add node check for writeFile()" + ], + ["8304c825", "2018-01-25", "feat(rstream-log): add ILogger"], + [ + "eef65b9e", + "2018-01-25", + "fix(rstream): don't throw resolve() error, only warning msg" + ], + [ + "4e5a2ee1", + "2018-01-25", + "feat(rstream): add fromRAF() fallback for node, add docs" + ], + [ + "592a2423", + "2018-01-25", + "fix(rstream): subscription generics if transducer is used" + ], + ["898be349", "2018-01-25", "Publish"], + ["007f361f", "2018-01-25", "docs(transducers): add/update docs"], + [ + "a2c3bc42", + "2018-01-25", + "refactor(transducers): update reverse(), add deps" + ], + [ + "0c116c1c", + "2018-01-25", + "refactor(transducers): simplify concat(), add docs" + ], + [ + "b3ce275b", + "2018-01-24", + "fix(transducers): include 1st val in benchmark()" + ], + ["75bb161c", "2018-01-24", "fix(transducers): base64 imports"], + ["e290d759", "2018-01-24", "fix(all): project links in readme files"], + ["dc145a55", "2018-01-24", "fix(main): readme"], + ["358d5abf", "2018-01-24", "Publish"], + ["00f9c12b", "2018-01-24", "update packages (npm publishConfig)"], + [ + "04ff6e9c", + "2018-01-24", + "feat(all): initial re-import as monorepo, update readme files, cleanup imports" + ] +] diff --git a/examples/hdom-vscroller/src/index.ts b/examples/hdom-vscroller/src/index.ts index 3cfe6422b9..627f697859 100644 --- a/examples/hdom-vscroller/src/index.ts +++ b/examples/hdom-vscroller/src/index.ts @@ -36,19 +36,19 @@ const queryFilter = (_: any, query: EventListener, items: any[]) => [ "div.pv2.ph3.bg-black.white", "Filter: ", ["input", { type: "text", oninput: setQuery, value: query }], - ` (${items.length})` + ` (${items.length})`, ]; const repoLink = (_: any, sha: string, body: any) => [ "a.link.blue", { href: `${REPO_BASE}commit/${sha}` }, - body + body, ]; const packageLink = (_: any, name: any) => [ "a.link.blue", { href: `${REPO_BASE}tree/develop/packages/${name.substr(8)}` }, - name + name, ]; const commit = (i: number, [sha, date, msg]: Commit) => [ @@ -56,15 +56,15 @@ const commit = (i: number, [sha, date, msg]: Commit) => [ ["div.dib.w-30.w-20-m.w-10-l.ph3", date], [ "div.dib.w-70.w-80-m.w-90-l.ph3.overflow-x-hidden.nowrap", - [repoLink, sha, msg] - ] + [repoLink, sha, msg], + ], ]; const pkgSummary = ([name, desc]: Package) => [ "div.flex.items-center.lh-copy.pa3.ph0-l.bb.b--black-10", { style: { height: "96px" } }, ["img.w2.h2", { src: LOGO }], - ["div.pl3.flex-auto.f7", ["h3.ma0", [packageLink, name]], desc] + ["div.pl3.flex-auto.f7", ["h3.ma0", [packageLink, name]], desc], ]; const app = () => [ @@ -80,7 +80,7 @@ const app = () => [ numVisible: 10, numItems: filtered.length, itemHeight: 31, - items: mapIndexed(commit, 0, filtered) + items: mapIndexed(commit, 0, filtered), }), ["h3.ph2", "Packages"], virtualScroller({ @@ -93,8 +93,8 @@ const app = () => [ numVisible: 2, numItems: PACKAGES.length, itemHeight: 96, - items: map(pkgSummary, PACKAGES) - }) + items: map(pkgSummary, PACKAGES), + }), ]; const cancel = start(app); diff --git a/examples/hdom-vscroller/src/packages.json b/examples/hdom-vscroller/src/packages.json index 8b070eaa3f..170e47c293 100644 --- a/examples/hdom-vscroller/src/packages.json +++ b/examples/hdom-vscroller/src/packages.json @@ -1 +1,245 @@ -[["@thi.ng/api","Common, generic types & interfaces for thi.ng projects"],["@thi.ng/associative","Alternative Set & Map data type implementations with customizable equality semantics & supporting operations"],["@thi.ng/atom","Mutable wrappers for nested immutable values w/ optional undo/redo history"],["@thi.ng/bench","Basic benchmarking helpers"],["@thi.ng/bencode","TODO"],["@thi.ng/binary","Assorted binary / bitwise operations, conversions, utilities."],["@thi.ng/bitstream","ES6 iterator based read/write bit streams & support for variable word widths"],["@thi.ng/cache","In-memory cache implementations with ES6 Map-like API and different eviction strategies"],["@thi.ng/checks","Single-function sub-modules for type, feature & value checks"],["@thi.ng/color","TODO"],["@thi.ng/compare","Comparator with optional delegation for types implementing @thi.ng/api/ICompare interface"],["@thi.ng/compose","Arity-optimized functional composition helpers"],["@thi.ng/csp","ES6 promise based CSP implementation"],["@thi.ng/dcons","Comprehensive doubly linked list structure w/ iterator support"],["@thi.ng/defmulti","Dynamically extensible multiple dispatch via user supplied dispatch function."],["@thi.ng/dgraph","Type-agnostic directed acyclic graph (DAG) & graph operations"],["@thi.ng/diff","Array & object Diff"],["@thi.ng/dlogic","Assorted digital logic ops / constructs."],["@thi.ng/dot","Graphviz DOM abstraction as vanilla JS objects & serialization to DOT format"],["@thi.ng/dsp","Assorted DSP utils, oscillators etc."],["@thi.ng/equiv","Extensible deep equivalence checking for any data types"],["@thi.ng/errors","Custom error types and helper fns."],["@thi.ng/fsm","Composable primitives for building declarative, transducer based Finite-State machines & parsers for arbitrary data streams"],["@thi.ng/geom","TODO"],["@thi.ng/geom-accel","nD spatial indexing data structures"],["@thi.ng/geom-api","Shared type & interface declarations for @thi.ng/geom packages"],["@thi.ng/geom-arc","2D circular / elliptic arc operations"],["@thi.ng/geom-clip","2D line & convex polygon clipping (Liang-Barsky / Sutherland-Hodgeman)"],["@thi.ng/geom-closest-point","Closest point / proximity helpers"],["@thi.ng/geom-hull","Fast 2D convex hull (Graham Scan)"],["@thi.ng/geom-isec","2D/3D shape intersection checks"],["@thi.ng/geom-isoline","Fast 2D contour line extraction / generation"],["@thi.ng/geom-poly-utils","Polygon / triangle analysis & processing utilities"],["@thi.ng/geom-resample","Customizable nD polyline interpolation, re-sampling, splitting & nearest point computation"],["@thi.ng/geom-splines","nD cubic & quadratic curve analysis, conversion, interpolation, splitting"],["@thi.ng/geom-subdiv-curve","Freely customizable, iterative subdivision curves for open / closed input geometries"],["@thi.ng/geom-tessellate","2D/3D polygon tessellators"],["@thi.ng/geom-voronoi","Fast, incremental 2D Delaunay & Voronoi mesh implementation"],["@thi.ng/hdom","Lightweight vanilla ES6 UI component trees with customizable branch-local behaviors"],["@thi.ng/hdom-canvas","Declarative canvas scenegraph & visualization for @thi.ng/hdom"],["@thi.ng/hdom-components","Raw, skinnable UI & SVG components for @thi.ng/hdom"],["@thi.ng/hdom-mock","Mock base implementation for @thi.ng/hdom API"],["@thi.ng/heaps","Generic binary heap & d-ary heap implementations with customizable ordering"],["@thi.ng/hiccup","HTML/SVG/XML serialization of nested data structures, iterables & closures"],["@thi.ng/hiccup-carbon-icons","TODO"],["@thi.ng/hiccup-css","CSS from nested JS data structures"],["@thi.ng/hiccup-markdown","Markdown serialization of hiccup DOM trees"],["@thi.ng/hiccup-svg","SVG element functions for @thi.ng/hiccup & @thi.ng/hdom"],["@thi.ng/iges","IGES 5.3 serializer for (currently only) polygonal geometry, both open & closed"],["@thi.ng/interceptors","Interceptor based event bus, side effect & immutable state handling"],["@thi.ng/intervals","Closed/open/semi-open interval data type, queries & operations"],["@thi.ng/iterators","clojure.core inspired, composable ES6 iterators & generators"],["@thi.ng/malloc","ArrayBuffer based malloc() impl for hybrid JS/WASM use cases, based on thi.ng/tinyalloc"],["@thi.ng/math","Assorted common math functions & utilities"],["@thi.ng/matrices","Matrix & quaternion operations for 2D/3D geometry processing"],["@thi.ng/memoize","Function memoization with configurable caches"],["@thi.ng/morton","Z-order-curve / Morton encoding & decoding for 1D, 2D, 3D"],["@thi.ng/paths","immutable, optimized path-based object property / array accessors"],["@thi.ng/pointfree","Pointfree functional composition / Forth style stack execution engine"],["@thi.ng/pointfree-lang","Forth style syntax layer/compiler for the @thi.ng/pointfree DSL"],["@thi.ng/poisson","nD Poisson-disc sampling w/ support for spatial density functions and custom PRNGs"],["@thi.ng/quad-edge","Quadedge data structure after Guibas & Stolfi"],["@thi.ng/random","Pseudo-random number generators w/ unified API"],["@thi.ng/range-coder","Binary data range encoder / decoder"],["@thi.ng/resolve-map","DAG resolution of vanilla objects & arrays with internally linked values"],["@thi.ng/rle-pack","Binary run-length encoding packer w/ flexible repeat bit widths"],["@thi.ng/router","Generic router for browser & non-browser based applications"],["@thi.ng/rstream","Reactive multi-tap streams, dataflow & transformation pipeline constructs"],["@thi.ng/rstream-csp","@thi.ng/csp bridge module for @thi.ng/rstream"],["@thi.ng/rstream-dot","Graphviz DOT conversion of @thi.ng/rstream dataflow graph topologies"],["@thi.ng/rstream-gestures","Unified mouse, mouse wheel & single-touch event stream abstraction"],["@thi.ng/rstream-graph","Declarative dataflow graph construction for @thi.ng/rstream"],["@thi.ng/rstream-log","Structured, multilevel & hierarchical loggers based on @thi.ng/rstream"],["@thi.ng/rstream-query","@thi.ng/rstream based triple store & reactive query engine"],["@thi.ng/sax","Transducer-based, SAX-like, non-validating, speedy & tiny XML parser"],["@thi.ng/strings","Various string formatting & utility functions"],["@thi.ng/transducers","Lightweight transducer implementations for ES6 / TypeScript"],["@thi.ng/transducers-binary","TODO"],["@thi.ng/transducers-fsm","Transducer-based Finite State Machine transformer"],["@thi.ng/transducers-hdom","Transducer based UI updater for @thi.ng/hdom"],["@thi.ng/transducers-stats","Transducers for statistical / technical analysis"],["@thi.ng/unionstruct","C-style struct, union and bitfield views of ArrayBuffers"],["@thi.ng/vector-pools","TODO"],["@thi.ng/vectors","Optimized 2d/3d/4d and arbitrary length vector operations"]] \ No newline at end of file +[ + ["@thi.ng/api", "Common, generic types & interfaces for thi.ng projects"], + [ + "@thi.ng/associative", + "Alternative Set & Map data type implementations with customizable equality semantics & supporting operations" + ], + [ + "@thi.ng/atom", + "Mutable wrappers for nested immutable values w/ optional undo/redo history" + ], + ["@thi.ng/bench", "Basic benchmarking helpers"], + ["@thi.ng/bencode", "TODO"], + [ + "@thi.ng/binary", + "Assorted binary / bitwise operations, conversions, utilities." + ], + [ + "@thi.ng/bitstream", + "ES6 iterator based read/write bit streams & support for variable word widths" + ], + [ + "@thi.ng/cache", + "In-memory cache implementations with ES6 Map-like API and different eviction strategies" + ], + [ + "@thi.ng/checks", + "Single-function sub-modules for type, feature & value checks" + ], + ["@thi.ng/color", "TODO"], + [ + "@thi.ng/compare", + "Comparator with optional delegation for types implementing @thi.ng/api/ICompare interface" + ], + ["@thi.ng/compose", "Arity-optimized functional composition helpers"], + ["@thi.ng/csp", "ES6 promise based CSP implementation"], + [ + "@thi.ng/dcons", + "Comprehensive doubly linked list structure w/ iterator support" + ], + [ + "@thi.ng/defmulti", + "Dynamically extensible multiple dispatch via user supplied dispatch function." + ], + [ + "@thi.ng/dgraph", + "Type-agnostic directed acyclic graph (DAG) & graph operations" + ], + ["@thi.ng/diff", "Array & object Diff"], + ["@thi.ng/dlogic", "Assorted digital logic ops / constructs."], + [ + "@thi.ng/dot", + "Graphviz DOM abstraction as vanilla JS objects & serialization to DOT format" + ], + ["@thi.ng/dsp", "Assorted DSP utils, oscillators etc."], + [ + "@thi.ng/equiv", + "Extensible deep equivalence checking for any data types" + ], + ["@thi.ng/errors", "Custom error types and helper fns."], + [ + "@thi.ng/fsm", + "Composable primitives for building declarative, transducer based Finite-State machines & parsers for arbitrary data streams" + ], + ["@thi.ng/geom", "TODO"], + ["@thi.ng/geom-accel", "nD spatial indexing data structures"], + [ + "@thi.ng/geom-api", + "Shared type & interface declarations for @thi.ng/geom packages" + ], + ["@thi.ng/geom-arc", "2D circular / elliptic arc operations"], + [ + "@thi.ng/geom-clip", + "2D line & convex polygon clipping (Liang-Barsky / Sutherland-Hodgeman)" + ], + ["@thi.ng/geom-closest-point", "Closest point / proximity helpers"], + ["@thi.ng/geom-hull", "Fast 2D convex hull (Graham Scan)"], + ["@thi.ng/geom-isec", "2D/3D shape intersection checks"], + ["@thi.ng/geom-isoline", "Fast 2D contour line extraction / generation"], + [ + "@thi.ng/geom-poly-utils", + "Polygon / triangle analysis & processing utilities" + ], + [ + "@thi.ng/geom-resample", + "Customizable nD polyline interpolation, re-sampling, splitting & nearest point computation" + ], + [ + "@thi.ng/geom-splines", + "nD cubic & quadratic curve analysis, conversion, interpolation, splitting" + ], + [ + "@thi.ng/geom-subdiv-curve", + "Freely customizable, iterative subdivision curves for open / closed input geometries" + ], + ["@thi.ng/geom-tessellate", "2D/3D polygon tessellators"], + [ + "@thi.ng/geom-voronoi", + "Fast, incremental 2D Delaunay & Voronoi mesh implementation" + ], + [ + "@thi.ng/hdom", + "Lightweight vanilla ES6 UI component trees with customizable branch-local behaviors" + ], + [ + "@thi.ng/hdom-canvas", + "Declarative canvas scenegraph & visualization for @thi.ng/hdom" + ], + [ + "@thi.ng/hdom-components", + "Raw, skinnable UI & SVG components for @thi.ng/hdom" + ], + ["@thi.ng/hdom-mock", "Mock base implementation for @thi.ng/hdom API"], + [ + "@thi.ng/heaps", + "Generic binary heap & d-ary heap implementations with customizable ordering" + ], + [ + "@thi.ng/hiccup", + "HTML/SVG/XML serialization of nested data structures, iterables & closures" + ], + ["@thi.ng/hiccup-carbon-icons", "TODO"], + ["@thi.ng/hiccup-css", "CSS from nested JS data structures"], + ["@thi.ng/hiccup-markdown", "Markdown serialization of hiccup DOM trees"], + [ + "@thi.ng/hiccup-svg", + "SVG element functions for @thi.ng/hiccup & @thi.ng/hdom" + ], + [ + "@thi.ng/iges", + "IGES 5.3 serializer for (currently only) polygonal geometry, both open & closed" + ], + [ + "@thi.ng/interceptors", + "Interceptor based event bus, side effect & immutable state handling" + ], + [ + "@thi.ng/intervals", + "Closed/open/semi-open interval data type, queries & operations" + ], + [ + "@thi.ng/iterators", + "clojure.core inspired, composable ES6 iterators & generators" + ], + [ + "@thi.ng/malloc", + "ArrayBuffer based malloc() impl for hybrid JS/WASM use cases, based on thi.ng/tinyalloc" + ], + ["@thi.ng/math", "Assorted common math functions & utilities"], + [ + "@thi.ng/matrices", + "Matrix & quaternion operations for 2D/3D geometry processing" + ], + ["@thi.ng/memoize", "Function memoization with configurable caches"], + [ + "@thi.ng/morton", + "Z-order-curve / Morton encoding & decoding for 1D, 2D, 3D" + ], + [ + "@thi.ng/paths", + "immutable, optimized path-based object property / array accessors" + ], + [ + "@thi.ng/pointfree", + "Pointfree functional composition / Forth style stack execution engine" + ], + [ + "@thi.ng/pointfree-lang", + "Forth style syntax layer/compiler for the @thi.ng/pointfree DSL" + ], + [ + "@thi.ng/poisson", + "nD Poisson-disc sampling w/ support for spatial density functions and custom PRNGs" + ], + ["@thi.ng/quad-edge", "Quadedge data structure after Guibas & Stolfi"], + ["@thi.ng/random", "Pseudo-random number generators w/ unified API"], + ["@thi.ng/range-coder", "Binary data range encoder / decoder"], + [ + "@thi.ng/resolve-map", + "DAG resolution of vanilla objects & arrays with internally linked values" + ], + [ + "@thi.ng/rle-pack", + "Binary run-length encoding packer w/ flexible repeat bit widths" + ], + [ + "@thi.ng/router", + "Generic router for browser & non-browser based applications" + ], + [ + "@thi.ng/rstream", + "Reactive multi-tap streams, dataflow & transformation pipeline constructs" + ], + ["@thi.ng/rstream-csp", "@thi.ng/csp bridge module for @thi.ng/rstream"], + [ + "@thi.ng/rstream-dot", + "Graphviz DOT conversion of @thi.ng/rstream dataflow graph topologies" + ], + [ + "@thi.ng/rstream-gestures", + "Unified mouse, mouse wheel & single-touch event stream abstraction" + ], + [ + "@thi.ng/rstream-graph", + "Declarative dataflow graph construction for @thi.ng/rstream" + ], + [ + "@thi.ng/rstream-log", + "Structured, multilevel & hierarchical loggers based on @thi.ng/rstream" + ], + [ + "@thi.ng/rstream-query", + "@thi.ng/rstream based triple store & reactive query engine" + ], + [ + "@thi.ng/sax", + "Transducer-based, SAX-like, non-validating, speedy & tiny XML parser" + ], + ["@thi.ng/strings", "Various string formatting & utility functions"], + [ + "@thi.ng/transducers", + "Lightweight transducer implementations for ES6 / TypeScript" + ], + ["@thi.ng/transducers-binary", "TODO"], + [ + "@thi.ng/transducers-fsm", + "Transducer-based Finite State Machine transformer" + ], + [ + "@thi.ng/transducers-hdom", + "Transducer based UI updater for @thi.ng/hdom" + ], + [ + "@thi.ng/transducers-stats", + "Transducers for statistical / technical analysis" + ], + [ + "@thi.ng/unionstruct", + "C-style struct, union and bitfield views of ArrayBuffers" + ], + ["@thi.ng/vector-pools", "TODO"], + [ + "@thi.ng/vectors", + "Optimized 2d/3d/4d and arbitrary length vector operations" + ] +] diff --git a/examples/hdom-vscroller/src/vscroller.ts b/examples/hdom-vscroller/src/vscroller.ts index c7c23efa54..089e11abc1 100644 --- a/examples/hdom-vscroller/src/vscroller.ts +++ b/examples/hdom-vscroller/src/vscroller.ts @@ -1,10 +1,5 @@ import { Fn2 } from "@thi.ng/api"; -import { - comp, - drop, - iterator, - take -} from "@thi.ng/transducers"; +import { comp, drop, iterator, take } from "@thi.ng/transducers"; interface VScrollOpts { /** @@ -45,7 +40,7 @@ export const virtualScroller = ({ numVisible, numItems, itemHeight, - items + items, }: VScrollOpts) => [ "div.overflow-y-scroll", { @@ -59,18 +54,19 @@ export const virtualScroller = ({ }, scrollTop: top, style: { - height: `${numVisible * itemHeight}px` - } + height: `${numVisible * itemHeight}px`, + }, }, [ "div", { style: { height: `${numItems * itemHeight}px`, - "padding-top": `${Math.min(start, numItems - numVisible) * - itemHeight}px` - } + "padding-top": `${ + Math.min(start, numItems - numVisible) * itemHeight + }px`, + }, }, - iterator(comp(drop(start), take(numVisible + 1)), items) - ] + iterator(comp(drop(start), take(numVisible + 1)), items), + ], ]; diff --git a/examples/hmr-basics/src/app.ts b/examples/hmr-basics/src/app.ts index 281c654525..a9123b8cdc 100644 --- a/examples/hmr-basics/src/app.ts +++ b/examples/hmr-basics/src/app.ts @@ -11,26 +11,26 @@ export const app = ({ now, state }: any) => [ "ul.ma0.pv3.bb", [item, "Now:", now], [item, "Launched at:", state.launched], - [item, "Seed:", state.seed] + [item, "Seed:", state.seed], ], [ "div.mt3", "Edit ", [repoLink, "src/app.ts"], - " to see hot module replacement in action." - ] + " to see hot module replacement in action.", + ], ]; const item = (_: any, label: string, value: any) => [ "li", ["span.dib.b.w4", label], - value + value, ]; const repoLink = (_: any, file: string) => [ "a.pa1.link.black.bg-light-gray", { - href: `https://github.com/thi-ng/umbrella/tree/develop/examples/hmr-basics/${file}` + href: `https://github.com/thi-ng/umbrella/tree/develop/examples/hmr-basics/${file}`, }, - file + file, ]; diff --git a/examples/hmr-basics/src/index.ts b/examples/hmr-basics/src/index.ts index 224542117d..0ccd288af8 100644 --- a/examples/hmr-basics/src/index.ts +++ b/examples/hmr-basics/src/index.ts @@ -8,8 +8,8 @@ import { state } from "./state"; const ui = sync({ src: { state: fromAtom(state), - now: fromInterval(1000).transform(map((_) => new Date())) - } + now: fromInterval(1000).transform(map((_) => new Date())), + }, }); // then transform using root component function // and hdom differential DOM updater diff --git a/examples/hmr-basics/src/state.ts b/examples/hmr-basics/src/state.ts index b3c7dbc027..a41ea7c0b3 100644 --- a/examples/hmr-basics/src/state.ts +++ b/examples/hmr-basics/src/state.ts @@ -10,6 +10,6 @@ export const state = defonce( () => new Atom({ launched: new Date(), - seed: (Math.random() * 100) | 0 + seed: (Math.random() * 100) | 0, }) ); diff --git a/examples/hydrate-basics/src/index.ts b/examples/hydrate-basics/src/index.ts index f909e33471..b4603aa323 100644 --- a/examples/hydrate-basics/src/index.ts +++ b/examples/hydrate-basics/src/index.ts @@ -7,7 +7,7 @@ import type { IDeref } from "@thi.ng/api"; // basic state container const state = new Atom({ bg: "red", - freq: 0.01 + freq: 0.01, }); // state updates @@ -18,7 +18,7 @@ const setFreq = (x: number) => state.resetIn(["freq"], x); const app = () => { // HOF canvas component w/ life cycle methods see for further // reference: - // https://github.com/thi-ng/umbrella/blob/master/packages/hdom-components/src/canvas.ts + // https://github.com/thi-ng/umbrella/blob/develop/packages/hdom-components/src/canvas.ts // // when serializing to html only the component's `render` method // will be invoked. the component's `init` is invoked later when @@ -36,7 +36,7 @@ const app = () => { ctx.lineTo(x, y + y * Math.sin((time + x) * freq)); } ctx.stroke(); - } + }, }); // when serializing to HTML all event attributes w/ function values // will be excluded, however the event listeners will be attached @@ -49,7 +49,7 @@ const app = () => { "div#root.w-50-ns.flex.ma2.sans-serif", [ "div.w-50-ns", - [canvas, { width: 200, height: 200 }, state.bg, state.freq] + [canvas, { width: 200, height: 200 }, state.bg, state.freq], ], [ "div.w-50-ns", @@ -63,16 +63,16 @@ const app = () => { id: "bg", class: "w-100", onchange: (e: Event) => - setBg((e.target).value) + setBg((e.target).value), }, [ ["", "Choose..."], ["red", "Red"], ["green", "Green"], - ["blue", "Blue"] + ["blue", "Blue"], ], - state.bg - ] + state.bg, + ], ], [ "label.db.mb3", @@ -93,11 +93,11 @@ const app = () => { parseFloat( (e.target).value ) - ) - } - ] - ] - ] + ), + }, + ], + ], + ], ]; }; }; diff --git a/examples/imgui/src/index.ts b/examples/imgui/src/index.ts index 5b15bcc63b..0d8c6d4b51 100644 --- a/examples/imgui/src/index.ts +++ b/examples/imgui/src/index.ts @@ -8,24 +8,10 @@ import { clamp, PI } from "@thi.ng/math"; import { setInManyUnsafe } from "@thi.ng/paths"; import { gestureStream } from "@thi.ng/rstream-gestures"; import { float } from "@thi.ng/strings"; -import { - comp, - iterator, - map, - mapcat, - step -} from "@thi.ng/transducers"; +import { comp, iterator, map, mapcat, step } from "@thi.ng/transducers"; import { updateDOM } from "@thi.ng/transducers-hdom"; import { sma } from "@thi.ng/transducers-stats"; -import { - add2, - hash, - min2, - setC2, - Vec, - vecOf, - ZERO2 -} from "@thi.ng/vectors"; +import { add2, hash, min2, setC2, Vec, vecOf, ZERO2 } from "@thi.ng/vectors"; import { buttonH, buttonV, diff --git a/examples/interceptor-basics/src/index.ts b/examples/interceptor-basics/src/index.ts index ba64e4b571..c6f77cbd6d 100644 --- a/examples/interceptor-basics/src/index.ts +++ b/examples/interceptor-basics/src/index.ts @@ -4,7 +4,7 @@ import { dispatchNow, EventBus, FX_STATE, - valueUpdater + valueUpdater, } from "@thi.ng/interceptors"; import { choices } from "@thi.ng/transducers"; @@ -18,13 +18,13 @@ const db = new Atom({}); // see @thi.ng/interceptors for more details const bus = new EventBus(db, { init: () => ({ - [FX_STATE]: { clicks: 0, color: "grey" } + [FX_STATE]: { clicks: 0, color: "grey" }, }), "inc-counter": [ valueUpdater("clicks", (x: number) => x + 1), - dispatchNow(["randomize-color"]) + dispatchNow(["randomize-color"]), ], - "randomize-color": valueUpdater("color", () => colors.next().value) + "randomize-color": valueUpdater("color", () => colors.next().value), }); start( @@ -38,11 +38,11 @@ start( { style: { padding: "1rem", - background: ctx.db.value.color + background: ctx.db.value.color, }, - onclick: () => ctx.bus.dispatch(["inc-counter"]) + onclick: () => ctx.bus.dispatch(["inc-counter"]), }, - `clicks: ${ctx.db.value.clicks}` + `clicks: ${ctx.db.value.clicks}`, ] : null, // hdom options incl. diff --git a/examples/iso-plasma/src/index.ts b/examples/iso-plasma/src/index.ts index 787b21066e..fced25d15f 100644 --- a/examples/iso-plasma/src/index.ts +++ b/examples/iso-plasma/src/index.ts @@ -10,7 +10,7 @@ import { mapcat, mapIndexed, range, - range2d + range2d, } from "@thi.ng/transducers"; import type { Fn } from "@thi.ng/api"; import type { Vec } from "@thi.ng/vectors"; @@ -55,7 +55,7 @@ const app = () => { return [ canvas, { width: 600, height: 600 }, - ["g", { scale: 600 / W, weight: 0.05, __diff: false }, contours] + ["g", { scale: 600 / W, weight: 0.05, __diff: false }, contours], ]; }; diff --git a/examples/json-components/src/index.ts b/examples/json-components/src/index.ts index 3cd7e6a86e..a1bffaf63d 100644 --- a/examples/json-components/src/index.ts +++ b/examples/json-components/src/index.ts @@ -7,28 +7,28 @@ let db = [ meta: { author: { name: "Alice Bobbera", - email: "a@b.it" + email: "a@b.it", }, created: "2018-02-03T12:13:14Z", - tags: ["drama", "queen"] + tags: ["drama", "queen"], }, title: "UI components for Dummies", content: - "Sed doloribus molestias voluptatem ut delectus vitae quo eum. Ut praesentium sed omnis sequi rerum praesentium aperiam modi. Occaecati voluptatum quis vel facere quis quisquam." + "Sed doloribus molestias voluptatem ut delectus vitae quo eum. Ut praesentium sed omnis sequi rerum praesentium aperiam modi. Occaecati voluptatum quis vel facere quis quisquam.", }, { meta: { author: { name: "Charlie Doran", - email: "c@d.es" + email: "c@d.es", }, created: "2018-02-02T01:23:45Z", - tags: ["simplicity", "rules"] + tags: ["simplicity", "rules"], }, title: "Look ma, so simple", content: - "Ratione necessitatibus doloremque itaque. Nihil hic alias cumque beatae esse sapiente incidunt. Illum vel eveniet officia." - } + "Ratione necessitatibus doloremque itaque. Nihil hic alias cumque beatae esse sapiente incidunt. Illum vel eveniet officia.", + }, ]; // component functions for individual keys in the JSON objects @@ -39,18 +39,18 @@ const item = (theme: any) => (item: any) => [ `div.item.${theme}`, item.title, item.meta, - item.content + item.content, ]; const meta = (meta: any) => ["div.meta", meta.author, meta.created, meta.tags]; const author = (author: any) => [ "div", ["strong", "author: "], - link(`mailto:${author.email}`, author.name) + link(`mailto:${author.email}`, author.name), ]; const date = (iso: string) => [ "div", ["strong", "date: "], - new Date(Date.parse(iso)).toLocaleString() + new Date(Date.parse(iso)).toLocaleString(), ]; const link = (href: string, body: any) => ["a", { href }, body]; const tag = (tag: string) => ["li", link("#", tag)]; @@ -74,11 +74,11 @@ const itemSpec: TransformSubSpec = { { author, tags, - created: date - } + created: date, + }, ], title, - content + content, }; // build themed component instances using @thi.ng/tranducers' deepTransform() @@ -101,9 +101,9 @@ const editor = (() => { try { db = JSON.parse((e.target).value); } catch (_) {} - } + }, }, - body + body, ]; })(); @@ -114,6 +114,6 @@ start(() => [ [ "div", ["div", ["h2", "Light theme"], ...db.map(itemLight)], - ["div", ["h2", "Dark theme"], ...db.map(itemDark)] - ] + ["div", ["h2", "Dark theme"], ...db.map(itemDark)], + ], ]); diff --git a/examples/login-form/src/index.ts b/examples/login-form/src/index.ts index fc714751ca..5535b89558 100644 --- a/examples/login-form/src/index.ts +++ b/examples/login-form/src/index.ts @@ -92,9 +92,10 @@ const uiViews: any = { const currView = defView( db, ["state"], - (state) => uiViews[state] || ["div", ["h1", `No component for state: ${state}`]] + (state) => + uiViews[state] || ["div", ["h1", `No component for state: ${state}`]] ); // app root component // embedded view (will auto-deref) -start(() => ["div", currView]); \ No newline at end of file +start(() => ["div", currView]); diff --git a/examples/mandelbrot/src/gradient.ts b/examples/mandelbrot/src/gradient.ts index 66ea0220cd..92e83593d4 100644 --- a/examples/mandelbrot/src/gradient.ts +++ b/examples/mandelbrot/src/gradient.ts @@ -6,7 +6,7 @@ import { normRange, push, transduce, - zip + zip, } from "@thi.ng/transducers"; // see http://dev.thi.ng/gradients/ @@ -49,30 +49,30 @@ export const GRADIENTS = [ [0.5, 0.5, 0.5], [0.5, 0.5, 0.5], [-1.0, -1.0, -1.0], - [0.0, 0.1, 0.2] + [0.0, 0.1, 0.2], ], [ [0.5, 0.5, 0.5], [0.5, 0.5, 0.5], [0.5, 0.618, 0.5], - [-1.0, 0.828, -0.152] + [-1.0, 0.828, -0.152], ], [ [0.402, 0.654, 0.247], [0.835, 0.668, 0.42], [1.226, 1.553, 1.445], - [2.684, 6.256, 4.065] + [2.684, 6.256, 4.065], ], [ [0.5, 0.5, 0.5], [0.5, 0.5, 0.5], [0.5, 0.5, 0.5], - [0.5, 0.5, 0.5] + [0.5, 0.5, 0.5], ], [ [0.5, 0.5, 0.5], [1.0, 1.0, 1.0], [10.0, 10.0, 10.0], - [0.0, 0.0, 0.0] - ] + [0.0, 0.0, 0.0], + ], ].map(partial(cosineGradient, 256)); diff --git a/examples/mandelbrot/src/index.ts b/examples/mandelbrot/src/index.ts index 21bbc1a734..9e60f8f2ac 100644 --- a/examples/mandelbrot/src/index.ts +++ b/examples/mandelbrot/src/index.ts @@ -2,12 +2,7 @@ import { download } from "@thi.ng/dl-asset"; import { equiv } from "@thi.ng/equiv"; import { canvas2D } from "@thi.ng/hdom-components"; import { fit, mix } from "@thi.ng/math"; -import { - stream, - Stream, - sync, - tunnel -} from "@thi.ng/rstream"; +import { stream, Stream, sync, tunnel } from "@thi.ng/rstream"; import { gestureStream, GestureType } from "@thi.ng/rstream-gestures"; import { padLeft } from "@thi.ng/strings"; import { map } from "@thi.ng/transducers"; @@ -40,7 +35,7 @@ const sel2 = stream(); // main stream combinator const main = sync({ - src: { x1, y1, x2, y2, iter, gradient, sel1, sel2 } + src: { x1, y1, x2, y2, iter, gradient, sel1, sel2 }, }); // URL hash updater @@ -48,7 +43,7 @@ main.subscribe({ next: ({ x1, y1, x2, y2, iter, gradient }) => (location.hash = `${ff(x1)};${ff(y1)};${ff(x2)};${ff( y2 - )};${iter};${gradient}`) + )};${iter};${gradient}`), }); // update param streams to trigger new render @@ -124,14 +119,14 @@ const app = () => { ); setTimeout(() => updateZoom(-0.02), 100); } - } + }, }); // also initialize gesture stream for allowing users to draw // target zoom rectangle gestureStream(el, { scale: true, absZoom: false, - smooth: 1e-3 + smooth: 1e-3, }).subscribe({ next(e) { const _x1 = x1.deref()!; @@ -178,7 +173,7 @@ const app = () => { break; default: } - } + }, }); // key controls fine tuning region window.addEventListener("keydown", (e) => { @@ -223,7 +218,7 @@ const app = () => { ctx.strokeStyle = "red"; ctx.strokeRect(a[0], a[1], b[0] - a[0], b[1] - a[1]); } - } + }, }); // return actual root component function return ({ sel1, sel2 }: any) => { @@ -243,9 +238,9 @@ const app = () => { "button", { onclick: () => - newRender.apply(null, DEFAULT_CONFIG) + newRender.apply(null, DEFAULT_CONFIG), }, - "reset" + "reset", ], [ "div", @@ -255,11 +250,11 @@ const app = () => { ["li", "Mouse wheel to zoom in / out"], [ "li", - "Cursor keys to fine tune region (+ Shift for bigger steps)" - ] - ] - ] - ] + "Cursor keys to fine tune region (+ Shift for bigger steps)", + ], + ], + ], + ], ]; }; }; @@ -285,9 +280,9 @@ const slider = ( step, value: stream.deref(), oninput: (e: Event) => - stream.next(parseFloat((e.target).value)) - } - ] + stream.next(parseFloat((e.target).value)), + }, + ], ]; // attach root component & DOM update to main stream @@ -296,12 +291,11 @@ main.transform(map(app()), updateDOM()); // init parameter streams, if possible from location.hash newRender.apply( null, - (location.hash.length > 1 - ? location.hash - .substr(1) - .split(";") - .map(parseFloat) - : DEFAULT_CONFIG) + ( + (location.hash.length > 1 + ? location.hash.substr(1).split(";").map(parseFloat) + : DEFAULT_CONFIG) + ) ); // HMR handling diff --git a/examples/markdown/src/index.ts b/examples/markdown/src/index.ts index 3c5084616c..d4013fa6ba 100644 --- a/examples/markdown/src/index.ts +++ b/examples/markdown/src/index.ts @@ -16,23 +16,23 @@ const CUSTOM_TAGS: Partial = { codeblock: (lang, body) => [ "pre.bg-washed-yellow.pa3.f7.overflow-x-scroll", { lang: lang || "code" }, - ["code", body] + ["code", body], ], link: (href, body) => [ "a.link.dark-blue.hover-white.hover-bg-dark-blue.b", { href }, - body + body, ], strike: (body) => ["del.bg-washed-red", body], table: (xs) => ["table.w-100.collapse.ba.b--black-10", ["tbody", ...xs]], tr: (_, xs) => ["tr.striped--near-white", ...xs], - td: (i, xs) => [i < 1 ? "th.pa2.ttu.tl" : "td.pa2", ...xs] + td: (i, xs) => [i < 1 ? "th.pa2.ttu.tl" : "td.pa2", ...xs], }; // UI root component const app = (input: Stream) => ({ src, - parsed: [hiccup, time] + parsed: [hiccup, time], }: any) => [ "div.flex.vh-100.sans-serif.flex-column.flex-row-l", [ @@ -42,18 +42,18 @@ const app = (input: Stream) => ({ { value: src, oninput: (e: Event) => - input.next((e.target).value) - } - ] + input.next((e.target).value), + }, + ], ], [ "div.w-100.h-50.w-50-l.vh-100-l.overflow-y-scroll.pa3.lh-copy", [ "div.pa2.bg-yellow.purple.f7", - `Parsed ${src.length} chars in ${time}ms` + `Parsed ${src.length} chars in ${time}ms`, ], - ...hiccup - ] + ...hiccup, + ], ]; // markdown input stream @@ -64,7 +64,9 @@ src.transform( map((src) => ({ src, // append exta newline to force last paragraph (see readme) - parsed: timedResult(() => [...iterator(parse(CUSTOM_TAGS), src + "\n")]) + parsed: timedResult(() => [ + ...iterator(parse(CUSTOM_TAGS), src + "\n"), + ]), })), map(app(src)), updateDOM() diff --git a/examples/multitouch/src/index.ts b/examples/multitouch/src/index.ts index b775e8e30f..03ac3fee54 100644 --- a/examples/multitouch/src/index.ts +++ b/examples/multitouch/src/index.ts @@ -1,7 +1,11 @@ import { canvas } from "@thi.ng/hdom-canvas"; import { memoize1 } from "@thi.ng/memoize"; import { CloseMode, sync, trigger } from "@thi.ng/rstream"; -import { GestureEvent, GestureInfo, gestureStream } from "@thi.ng/rstream-gestures"; +import { + GestureEvent, + GestureInfo, + gestureStream, +} from "@thi.ng/rstream-gestures"; import { map, mapcat } from "@thi.ng/transducers"; import { updateDOM } from "@thi.ng/transducers-hdom"; @@ -13,7 +17,7 @@ const MTCanvas = memoize1((id: string) => { ...canvas, init(el: HTMLElement) { main.add(gestureStream(el), el.id); - } + }, }; return (attribs: any, gesture?: GestureEvent) => [ _canvas, @@ -28,18 +32,18 @@ const MTCanvas = memoize1((id: string) => { ["circle", {}, i.pos, 20 * (gesture?.zoom || 1)], i.start ? ["line", { stroke: "#333" }, i.start, i.pos] - : null + : null, ], gesture?.active || [] - ) - ] + ), + ], ]; }); // main stream w/ initial trigger input const main = sync({ src: { temp: trigger() }, - closeIn: CloseMode.NEVER + closeIn: CloseMode.NEVER, }); main.transform( @@ -48,7 +52,7 @@ main.transform( ["h1", "Multitouch"], [ "p", - "Click/touch & drag in the yellow area below. Multiple cursors only supported via touch." + "Click/touch & drag in the yellow area below. Multiple cursors only supported via touch.", ], MTCanvas("main")({ width: 480, height: 360 }, main || {}), [ @@ -56,9 +60,9 @@ main.transform( [ "textarea.code.f7", { cols: 60, rows: 25 }, - JSON.stringify(main, null, 2) - ] - ] + JSON.stringify(main, null, 2), + ], + ], ]), updateDOM() ); diff --git a/examples/package-stats/src/dep-chart.ts b/examples/package-stats/src/dep-chart.ts index 71a93920d4..ee7b9c5018 100644 --- a/examples/package-stats/src/dep-chart.ts +++ b/examples/package-stats/src/dep-chart.ts @@ -14,7 +14,7 @@ import { reducer, repeat, transduce, - zip + zip, } from "@thi.ng/transducers"; import * as fs from "fs"; import { barChart, labeledTickX, labeledTickY } from "./viz"; @@ -35,7 +35,7 @@ const packages: { id: string; v: string; deps: string[] }[] = transduce( map((p) => ({ id: p.name, v: p.version, - deps: p.dependencies ? Object.keys(p.dependencies) : [] + deps: p.dependencies ? Object.keys(p.dependencies) : [], })) ), push(), @@ -44,7 +44,10 @@ const packages: { id: string; v: string; deps: string[] }[] = transduce( const graph = transduce( mapcat((p: any) => zip(repeat(p.id), p.deps)), - reducer(() => new DGraph(), (g, [p, d]: any) => g.addDependency(p, d)), + reducer( + () => new DGraph(), + (g, [p, d]: any) => g.addDependency(p, d) + ), packages ); @@ -65,29 +68,29 @@ fs.writeFileSync( width: width, height: 260, "font-size": "10px", - "font-family": "Iosevka-Term-Light, Menlo, sans-serif" + "font-family": "Iosevka-Term-Light, Menlo, sans-serif", }, x: { axis: [50, width - 15, 170], domain: [0, packageDeps.length, 1], range: [50, width - 5], ticks: [...map((x) => x[0].substr(8), packageDeps)], - label: labeledTickX + label: labeledTickX, }, y: { axis: [170, 10, 35], domain: [0, maxDeps, 10], range: [160, 20], - label: labeledTickY(width - 15) + label: labeledTickY(width - 15), }, axis: "#666", - fill: "#0cc" + fill: "#0cc", }, mapIndexed((i, m) => [i, m[1]], packageDeps), group( { "font-size": "20px", "text-anchor": "middle" }, text([width / 2 + 25, 28], "@thi.ng/umbrella internal re-use"), text([width / 2 + 25, 56], "(transitive dependents)") - ) + ), ]) ); diff --git a/examples/package-stats/src/viz.ts b/examples/package-stats/src/viz.ts index e32f53ab23..7fb4fe2ac9 100644 --- a/examples/package-stats/src/viz.ts +++ b/examples/package-stats/src/viz.ts @@ -1,17 +1,6 @@ -import { - group, - line, - rect, - svg, - text -} from "@thi.ng/hiccup-svg"; +import { group, line, rect, svg, text } from "@thi.ng/hiccup-svg"; import { fit, fit01 } from "@thi.ng/math"; -import { - map, - mapcat, - mapIndexed, - range -} from "@thi.ng/transducers"; +import { map, mapcat, mapIndexed, range } from "@thi.ng/transducers"; // iterator of range mapped tuples: `[mapped, orig]` const mappedRange = ( @@ -49,15 +38,15 @@ export const labeledTickX = (y: number) => ([x, n]: any[]) => [ text([x, y + 15], n, { stroke: "none", "text-anchor": "end", - transform: `rotate(-45 ${x} ${y + 15})` - }) + transform: `rotate(-45 ${x} ${y + 15})`, + }), ]; export const labeledTickY = (width: number, fmt = (x: number) => String(x)) => ( x: number ) => ([y, n]: [number, any]) => [ ...tick(x - 5, y, x, y, x - 10, y + 4, n > 0 ? fmt(n) : 0), - n > 0 ? line([x + 20, y], [width, y], { "stroke-dasharray": "1 3" }) : null + n > 0 ? line([x + 20, y], [width, y], { "stroke-dasharray": "1 3" }) : null, ]; // x-axis with ticks as SVG group @@ -70,7 +59,7 @@ export const axisX = ({ axis: a, domain: d, range: r, label, ticks }: any) => [ ticks ? mappedTicks(r[0], r[1], ticks) : mappedRange(d[0], d[1], d[2], r[0], r[1]) - ) + ), ]; // y-axis with ticks as SVG group @@ -83,7 +72,7 @@ export const axisY = ({ axis: a, domain: d, range: r, label, ticks }: any) => [ ticks ? mappedTicks(r[0], r[1], ticks) : mappedRange(d[0], d[1], d[2], r[0], r[1]) - ) + ), ]; // mapping fn to create a single bar from `[domainPos, value]` diff --git a/examples/pixel-basics/src/index.ts b/examples/pixel-basics/src/index.ts index 2ef8e384f4..800840742d 100644 --- a/examples/pixel-basics/src/index.ts +++ b/examples/pixel-basics/src/index.ts @@ -4,7 +4,7 @@ import { GRAY8, imagePromise, PackedBuffer, - RGB565 + RGB565, } from "@thi.ng/pixel"; import { SRC_OVER_I } from "@thi.ng/porter-duff"; import IMG from "../assets/haystack.jpg"; @@ -21,7 +21,7 @@ Promise.all([IMG, LOGO].map(imagePromise)).then(([img, logo]) => { .premultiply() .blend(SRC_OVER_I, buf, { dx: 10, - dy: 10 + dy: 10, }); // extract sub-image diff --git a/examples/pointfree-svg/src/index.ts b/examples/pointfree-svg/src/index.ts index 90647e1a4f..f2f9a05d24 100644 --- a/examples/pointfree-svg/src/index.ts +++ b/examples/pointfree-svg/src/index.ts @@ -79,7 +79,7 @@ const env = ffi( "svg.line": svg.line, "svg.circle": svg.circle, "svg.svg": svg.svg, - shapes: [] + shapes: [], }, // foreign function interface (FFI) // custom words usable by the DSL @@ -92,7 +92,7 @@ const env = ffi( ensureStack(stack, 2); fs.writeFileSync(stack.pop(), stack.pop()); return ctx; - } + }, } ); // compile lib (resulting words are stored in env) diff --git a/examples/poly-spline/src/index.ts b/examples/poly-spline/src/index.ts index e4e3ca79a8..33a3618595 100644 --- a/examples/poly-spline/src/index.ts +++ b/examples/poly-spline/src/index.ts @@ -7,15 +7,10 @@ import { pathFromCubics, star, svgDoc, - withAttribs + withAttribs, } from "@thi.ng/geom"; import { convertTree } from "@thi.ng/hiccup-svg"; -import { - fromRAF, - stream, - Stream, - sync -} from "@thi.ng/rstream"; +import { fromRAF, stream, Stream, sync } from "@thi.ng/rstream"; import { comp, iterator, @@ -23,13 +18,13 @@ import { mapcat, partition, reducer, - scan + scan, } from "@thi.ng/transducers"; import { updateDOM } from "@thi.ng/transducers-hdom"; const BUTTONS = { blue: "bg-blue white hover-bg-light-blue hover-navy", - green: "bg-green white hover-bg-light-green hover-dark-green" + green: "bg-green white hover-bg-light-green hover-dark-green", }; // HOF event listener to emit a value on given stream @@ -46,9 +41,9 @@ const button = ( { href: "#", onclick, - class: "dib w4 mr2 pa2 link " + clazz + class: "dib w4 mr2 pa2 link " + clazz, }, - label + label, ]; // slider UI component @@ -66,10 +61,10 @@ const slider = ( type: "range", value: stream.deref(), oninput: (e: any) => stream.next(parseFloat(e.target.value)), - ...attribs - } + ...attribs, + }, ], - stream.deref()!.toFixed(1) + stream.deref()!.toFixed(1), ]; // main app component / stream transformer @@ -86,7 +81,7 @@ const app = ( const cubics = asCubic(poly, { breakPoints: mode, scale: scale * (uniform ? uniScale : 1), - uniform + uniform, }); // visualize control points as circles const controlPoints = iterator( @@ -114,26 +109,26 @@ const app = ( button, BUTTONS.blue, emitOnStream(_mode, true), - mode ? "break points" : "control points" + mode ? "break points" : "control points", ], [ button, BUTTONS.green, emitOnStream(_uniform, true), - uniform ? "uniform" : "non-uniform" + uniform ? "uniform" : "non-uniform", ], [ slider, { min: -1.3, max: 1.3, step: 0.1 }, _scale, - "tangent scale" + "tangent scale", ], [ slider, { min: 0, max: 100, step: 1, disabled: !uniform }, _uniScale, - "uniform scale" - ] + "uniform scale", + ], ], [ "div", @@ -143,7 +138,7 @@ const app = ( // using SVG and hence will need to call `convertTree()` to // transform the hiccup format into a SVG compatible format // see: - // https://github.com/thi-ng/umbrella/blob/master/packages/hiccup-svg/src/convert.ts#L34 + // https://github.com/thi-ng/umbrella/blob/develop/packages/hiccup-svg/src/convert.ts#L34 convertTree( svgDoc( { @@ -152,17 +147,17 @@ const app = ( viewBox: "-150 -150 300 300", fill: "none", stroke: "#ccc", - "stroke-width": 0.25 + "stroke-width": 0.25, }, poly, withAttribs(pathFromCubics(cubics), { stroke: mode ? "blue" : "red", - "stroke-width": 1 + "stroke-width": 1, }), group({ stroke: "#333" }, [...controlPoints, ...handles]) ) - ) - ] + ), + ], ]; }; @@ -195,8 +190,8 @@ const main = sync({ mode: mode.transform(toggle), uniform: uniform.transform(toggle), scale, - uniScale - } + uniScale, + }, }); // transform to create & apply UI diff --git a/examples/porter-duff/src/index.ts b/examples/porter-duff/src/index.ts index 2f6b305491..d21c60f6b6 100644 --- a/examples/porter-duff/src/index.ts +++ b/examples/porter-duff/src/index.ts @@ -1,9 +1,4 @@ -import { - ABGR8888, - canvas2d, - imagePromise, - PackedBuffer -} from "@thi.ng/pixel"; +import { ABGR8888, canvas2d, imagePromise, PackedBuffer } from "@thi.ng/pixel"; import { DEST_ATOP_I, DEST_I, @@ -16,7 +11,7 @@ import { SRC_IN_I, SRC_OUT_I, SRC_OVER_I, - XOR_I + XOR_I, } from "@thi.ng/porter-duff"; import IMG2 from "../assets/plus.png"; import IMG from "../assets/ring.png"; @@ -33,7 +28,7 @@ const MODES: any = { SRC_ATOP: SRC_ATOP_I, DEST_ATOP: DEST_ATOP_I, XOR: XOR_I, - PLUS: PLUS_I + PLUS: PLUS_I, }; const IDS = Object.keys(MODES); diff --git a/examples/ramp-synth/src/api.ts b/examples/ramp-synth/src/api.ts index c76933363f..c984c3bf91 100644 --- a/examples/ramp-synth/src/api.ts +++ b/examples/ramp-synth/src/api.ts @@ -13,14 +13,14 @@ export const PRESETS: Vec[][] = [ [ [0, 0], [0.98, 1], - [1, 0] + [1, 0], ], [ [0.25, 0.5], [0.5, 1], [0.625, 0.1], - [0.75, 0.5] + [0.75, 0.5], ], [...map((i) => [i / 20, i & 1 ? i / 20 : 0], range(21))], - [...map((i) => [i / 12, i % 3 ? 1 : 0.25], range(13))] + [...map((i) => [i / 12, i % 3 ? 1 : 0.25], range(13))], ]; diff --git a/examples/ramp-synth/src/components.ts b/examples/ramp-synth/src/components.ts index fc58d04107..bf3e7fa8f7 100644 --- a/examples/ramp-synth/src/components.ts +++ b/examples/ramp-synth/src/components.ts @@ -10,8 +10,8 @@ const tick = (x: number) => [ [0, -2], [4, 3], [4, 9], - [-4, 9] - ] + [-4, 9], + ], ]; export const rampViz = (ramp: IRamp, width: number, height: number) => { @@ -27,13 +27,13 @@ export const rampViz = (ramp: IRamp, width: number, height: number) => { [0, 1 - cp[0][1]], ...map((p) => [p[0], 1 - p[1]], ramp.interpolatedPoints()), [1, 1 - peek(cp)[1]], - [1, 1] - ] + [1, 1], + ], ], [ "g", { translate: [0, height] }, - ...ramp.stops.map((p) => tick(width * p[0])) - ] + ...ramp.stops.map((p) => tick(width * p[0])), + ], ]; }; diff --git a/examples/ramp-synth/src/index.ts b/examples/ramp-synth/src/index.ts index 05031403ac..f9977b51dd 100644 --- a/examples/ramp-synth/src/index.ts +++ b/examples/ramp-synth/src/index.ts @@ -12,14 +12,9 @@ import { PAD, PRESETS, SNAP, - WIDTH + WIDTH, } from "./api"; -import { - initAudio, - isAudioActive, - stopAudio, - updateAudio -} from "./audio"; +import { initAudio, isAudioActive, stopAudio, updateAudio } from "./audio"; import { rampViz } from "./components"; const timeForPos = (x: number) => fitClamped(x, PAD, WIDTH - PAD, 0, 1); @@ -75,13 +70,13 @@ const gradient = [ { id: "ramp", from: [0, 0], - to: [0, 1] + to: [0, 1], }, [ [0, "#99b"], - [1, "#111"] - ] - ] + [1, "#111"], + ], + ], ]; start(() => { @@ -117,14 +112,14 @@ start(() => { currID = editRamp(mpos, currID); } } - } + }, }, gradient, [ "g", { translate: [PAD, PAD], - __diff: false + __diff: false, }, rampViz(ramp, CWIDTH, CHEIGHT), [ @@ -135,9 +130,9 @@ start(() => { "circle", { fill: "red" }, [0, (1 - ramp.at(currT)) * CHEIGHT], - 3 - ] - ] + 3, + ], + ], ], selID !== -1 || currID !== -1 || @@ -148,9 +143,9 @@ start(() => { ["line", {}, [mpos[0], PAD], [mpos[0], PAD + CHEIGHT]], mpos[1] < HEIGHT - PAD ? ["line", {}, [PAD, mpos[1]], [PAD + CWIDTH, mpos[1]]] - : null + : null, ] - : null + : null, ]; }); @@ -180,7 +175,7 @@ window.addEventListener("keydown", (e) => { ...repeatedly( () => [Math.random(), Math.random()], Math.random() * 37 + 3 - ) + ), ]; ramp.sort(); updateAudio(ramp); diff --git a/examples/rotating-voronoi/src/controllers.ts b/examples/rotating-voronoi/src/controllers.ts index 77cc68d348..666c01fb1e 100644 --- a/examples/rotating-voronoi/src/controllers.ts +++ b/examples/rotating-voronoi/src/controllers.ts @@ -21,9 +21,9 @@ export const slider = ( const target = e.target as HTMLInputElement; const value = target && target.value; onChange(parseFloat(value)); - } - } - ] + }, + }, + ], ]; }; @@ -44,9 +44,9 @@ export const checkbox = ( const target = e.target as HTMLInputElement; const checked = target && target.checked; onChange(checked); - } - } + }, + }, ], - ["label", { for: label }, label] + ["label", { for: label }, label], ]; }; diff --git a/examples/rotating-voronoi/src/index.ts b/examples/rotating-voronoi/src/index.ts index b78d7e85ac..d777f8df87 100644 --- a/examples/rotating-voronoi/src/index.ts +++ b/examples/rotating-voronoi/src/index.ts @@ -8,7 +8,7 @@ import { polygon, rect, svgDoc, - vertices + vertices, } from "@thi.ng/geom"; import { simplify } from "@thi.ng/geom-resample"; import { DVMesh } from "@thi.ng/geom-voronoi"; @@ -25,7 +25,7 @@ import { frameStreamConditional, keyStreamConditional, mainStream, - scaleStream + scaleStream, } from "./stream-state"; const edge = window.innerWidth * 0.7; @@ -40,7 +40,7 @@ const startingCircles: Array<[number, number, boolean]> = [ [radius / 1, rndInt(4, 20), true], [radius / 2, rndInt(4, 20), false], [radius / 4, rndInt(4, 20), true], - [radius / 8, rndInt(4, 20), false] + [radius / 8, rndInt(4, 20), false], ]; const pointsInCircle = ( @@ -52,7 +52,7 @@ const pointsInCircle = ( ...map( (index) => cartesian2(null, [_radius, index * TAU + _angle], _center), normRange(_num, false) - ) + ), ]; scaleStream.next(1); @@ -76,7 +76,7 @@ function computeVoronoi(state: AppState) { clockwise ? delta : PI - delta ), startingCircles - ) + ), ]; const bounds = rect([width, height], { fill: "black" }); @@ -92,7 +92,7 @@ function computeVoronoi(state: AppState) { cells.map((cell) => pathFromCubics( asCubic(polygon(simplify(cell, 0.5, true)), { - scale: state.scaleValue + scale: state.scaleValue, }) ) ) @@ -101,8 +101,8 @@ function computeVoronoi(state: AppState) { points(doSave ? [] : startPoints, { size: 4, shape: "circle", - fill: "gray" - }) + fill: "gray", + }), ]; if (doSave) { @@ -112,7 +112,7 @@ function computeVoronoi(state: AppState) { width, height, viewBox: `0 0 ${width} ${height}`, - "stroke-width": 0.25 + "stroke-width": 0.25, }, ...voronoi ) @@ -137,9 +137,9 @@ function appRender(state: AppState) { "a", { href: - "https://observablehq.com/@mbostock/rotating-voronoi" + "https://observablehq.com/@mbostock/rotating-voronoi", }, - " observablehq sketch" + " observablehq sketch", ], ". ", @@ -148,11 +148,11 @@ function appRender(state: AppState) { "a", { href: - "https://www.flickr.com/photos/quasimondo/8254540763/" + "https://www.flickr.com/photos/quasimondo/8254540763/", }, - "ornament" + "ornament", ], - " by Mario Klingemann." + " by Mario Klingemann.", ], ["p", "Press `s` to save the SVG file."], [ @@ -169,14 +169,14 @@ function appRender(state: AppState) { state.animationValue, (x: boolean) => animationStream.next(x), "Animation" - ) - ] + ), + ], ], [ "div.flex.justify-center", - [canvas, { width, height }, ...computeVoronoi(state)] - ] - ] + [canvas, { width, height }, ...computeVoronoi(state)], + ], + ], ]; } diff --git a/examples/rotating-voronoi/src/stream-state.ts b/examples/rotating-voronoi/src/stream-state.ts index 7da50bf04b..d3ac2d5c45 100644 --- a/examples/rotating-voronoi/src/stream-state.ts +++ b/examples/rotating-voronoi/src/stream-state.ts @@ -3,14 +3,9 @@ import { fromRAF, sidechainToggle, stream, - sync + sync, } from "@thi.ng/rstream"; -import { - add, - map, - mapcat, - scan -} from "@thi.ng/transducers"; +import { add, map, mapcat, scan } from "@thi.ng/transducers"; export const keyStreamConditional = fromDOMEvent(document, "keyup").transform( mapcat((x) => [x.key, null]) @@ -20,7 +15,10 @@ export const scaleStream = stream(); export const animationStream = stream(); export const frameStreamConditional = fromRAF() .subscribe(sidechainToggle(animationStream)) - .transform(map(() => 1), scan(add())); + .transform( + map(() => 1), + scan(add()) + ); export type AppState = { scaleValue: number; @@ -34,6 +32,6 @@ export const mainStream = sync({ scaleValue: scaleStream, animationValue: animationStream, frameValue: frameStreamConditional, - keyValue: keyStreamConditional - } + keyValue: keyStreamConditional, + }, }); diff --git a/examples/router-basics/src/components/all-users.ts b/examples/router-basics/src/components/all-users.ts index eb471e1ca7..4e5e5ce28a 100644 --- a/examples/router-basics/src/components/all-users.ts +++ b/examples/router-basics/src/components/all-users.ts @@ -4,7 +4,6 @@ import { USER_PROFILE } from "../routes"; import { routeLink } from "./route-link"; import { status } from "./status"; - /** * Dummy user list component. Triggers JSON I/O request if user data has * not been loaded yet. @@ -32,7 +31,7 @@ function userList(ctx: AppContext) { list && [ "section", ctx.ui.userlist.root, - list.map((u) => [user, u, !!profiles![u.id]]) + list.map((u) => [user, u, !!profiles![u.id]]), ] ); } @@ -59,10 +58,10 @@ function user(ctx: AppContext, user: User, cached: boolean) { [ "h1", ui.title, - [routeLink, USER_PROFILE.id, { id: user.id }, null, user.name] + [routeLink, USER_PROFILE.id, { id: user.id }, null, user.name], ], - ["h2", ui.subtitle, `@${user.alias}`] + ["h2", ui.subtitle, `@${user.alias}`], ], - cached ? ["div", ui.meta, "cached"] : undefined + cached ? ["div", ui.meta, "cached"] : undefined, ]; } diff --git a/examples/router-basics/src/components/contact.ts b/examples/router-basics/src/components/contact.ts index 7b8366456a..8beb21ef4b 100644 --- a/examples/router-basics/src/components/contact.ts +++ b/examples/router-basics/src/components/contact.ts @@ -16,8 +16,8 @@ export function contact(ctx: AppContext) { [ ["https://github.com/thi-ng/umbrella", "GitHub"], ["https://twitter.com/toxi", "Twitter"], - ["https://medium.com/@thi.ng", "Medium"] - ].map((link) => [externalLink, ctx.ui.contact.link, ...link]) - ] + ["https://medium.com/@thi.ng", "Medium"], + ].map((link) => [externalLink, ctx.ui.contact.link, ...link]), + ], ]; } diff --git a/examples/router-basics/src/components/debug-container.ts b/examples/router-basics/src/components/debug-container.ts index a8cd790cef..95595704f4 100644 --- a/examples/router-basics/src/components/debug-container.ts +++ b/examples/router-basics/src/components/debug-container.ts @@ -17,8 +17,8 @@ export function debugContainer(ctx: AppContext, debug: any, json: string) { eventLink, [TOGGLE_DEBUG], ctx.ui.debugToggle, - debug ? "close \u25bc" : "open \u25b2" + debug ? "close \u25bc" : "open \u25b2", ], - ["pre", ctx.ui.code, json] + ["pre", ctx.ui.code, json], ]; } diff --git a/examples/router-basics/src/components/event-link.ts b/examples/router-basics/src/components/event-link.ts index 54b16df65f..9bf686a798 100644 --- a/examples/router-basics/src/components/event-link.ts +++ b/examples/router-basics/src/components/event-link.ts @@ -1,7 +1,6 @@ import type { Event } from "@thi.ng/interceptors"; import type { AppContext } from "../api"; - /** * Customizable hyperlink component emitting given event on app's event * bus when clicked. @@ -24,8 +23,8 @@ export function eventLink( onclick: (e: any) => { e.preventDefault(); ctx.bus.dispatch(event); - } + }, }, - body + body, ]; } diff --git a/examples/router-basics/src/components/home.ts b/examples/router-basics/src/components/home.ts index dc4a6eb727..7a428fc715 100644 --- a/examples/router-basics/src/components/home.ts +++ b/examples/router-basics/src/components/home.ts @@ -17,9 +17,9 @@ export function home(ctx: AppContext) { externalLink, ctx.ui.bodyLink, "https://github.com/thi-ng/umbrella", - "@thi.ng/umbrella" + "@thi.ng/umbrella", ], - " libraries." + " libraries.", ], [ "p", @@ -41,15 +41,15 @@ export function home(ctx: AppContext) { externalLink, ctx.ui.bodyLink, "http://tachyons.io/", - "Tachyons CSS" - ] - ] - ] + "Tachyons CSS", + ], + ], + ], ], [ "p", - "Please see the related blog post and the commented source code for more details." + "Please see the related blog post and the commented source code for more details.", ], - ["p", "(total app file size: 11.2KB)"] + ["p", "(total app file size: 11.2KB)"], ]; } diff --git a/examples/router-basics/src/components/nav.ts b/examples/router-basics/src/components/nav.ts index a595e4af62..6fc742b500 100644 --- a/examples/router-basics/src/components/nav.ts +++ b/examples/router-basics/src/components/nav.ts @@ -2,7 +2,6 @@ import { CONTACT, HOME, USER_LIST } from "../routes"; import { routeLink } from "./route-link"; import type { AppContext } from "../api"; - /** * Main nav component with hard coded routes. * @@ -18,7 +17,7 @@ export function nav(ctx: AppContext) { ui.inner, [routeLink, HOME.id, null, ui.link, "Home"], [routeLink, USER_LIST.id, null, ui.link, "Users"], - [routeLink, CONTACT.id, null, ui.linkLast, "Contact"] - ] + [routeLink, CONTACT.id, null, ui.linkLast, "Contact"], + ], ]; } diff --git a/examples/router-basics/src/components/route-link.ts b/examples/router-basics/src/components/route-link.ts index 456e5f0134..cd98befb0d 100644 --- a/examples/router-basics/src/components/route-link.ts +++ b/examples/router-basics/src/components/route-link.ts @@ -24,8 +24,8 @@ export function routeLink( onclick: (e: Event) => { e.preventDefault(); ctx.bus.dispatch([ROUTE_TO, [routeID, routeParams]]); - } + }, }, - body + body, ]; } diff --git a/examples/router-basics/src/components/user-profile.ts b/examples/router-basics/src/components/user-profile.ts index 27d77be7d3..757505928c 100644 --- a/examples/router-basics/src/components/user-profile.ts +++ b/examples/router-basics/src/components/user-profile.ts @@ -30,7 +30,7 @@ function userCard(ctx: AppContext, id: number) { ["h3", ui.title, user.name], user.job, ["hr", ui.sep], - ["p", ui.body, user.desc] + ["p", ui.body, user.desc], ] : undefined; } diff --git a/examples/router-basics/src/config.ts b/examples/router-basics/src/config.ts index 6f9c55f9e8..0756b01667 100644 --- a/examples/router-basics/src/config.ts +++ b/examples/router-basics/src/config.ts @@ -4,7 +4,7 @@ import { FX_DELAY, FX_DISPATCH_ASYNC, FX_DISPATCH_NOW, - valueUpdater + valueUpdater, } from "@thi.ng/interceptors"; import { AppConfig, StatusType } from "./api"; import { allUsers } from "./components/all-users"; @@ -19,7 +19,7 @@ import * as routes from "./routes"; export const CONFIG: AppConfig = { // router configuration // docs here: - // https://github.com/thi-ng/umbrella/blob/master/packages/router/src/api.ts#L100 + // https://github.com/thi-ng/umbrella/blob/develop/packages/router/src/api.ts#L100 router: { // use URI hash for routes (KISS) useFragment: true, @@ -31,8 +31,8 @@ export const CONFIG: AppConfig = { routes.HOME, routes.CONTACT, routes.USER_PROFILE, - routes.USER_LIST - ] + routes.USER_LIST, + ], }, // event handlers events are queued and batch processed in app's RAF @@ -44,31 +44,31 @@ export const CONFIG: AppConfig = { // and only side effect functions execute any "real" work. // see EventBus docs here: - // https://github.com/thi-ng/umbrella/blob/master/packages/atom/src/event-bus.ts#L14 + // https://github.com/thi-ng/umbrella/blob/develop/packages/atom/src/event-bus.ts#L14 events: { // sets status to "done" [ev.DONE]: () => ({ - [FX_DISPATCH_NOW]: [ev.SET_STATUS, [StatusType.DONE, "done"]] + [FX_DISPATCH_NOW]: [ev.SET_STATUS, [StatusType.DONE, "done"]], }), // sets status to thrown error's message [ev.ERROR]: (_, [__, err]) => ({ - [FX_DISPATCH_NOW]: [ev.SET_STATUS, [StatusType.ERROR, err.message]] + [FX_DISPATCH_NOW]: [ev.SET_STATUS, [StatusType.ERROR, err.message]], }), // triggers loading of JSON for single user, sets status [ev.LOAD_USER]: (_, [__, id]) => ({ [FX_DISPATCH_NOW]: [ ev.SET_STATUS, - [StatusType.INFO, `loading user data...`] + [StatusType.INFO, `loading user data...`], ], [FX_DISPATCH_ASYNC]: [ fx.JSON, `assets/user-${id}.json`, ev.RECEIVE_USER, - ev.LOAD_USER_ERROR - ] + ev.LOAD_USER_ERROR, + ], }), // triggered after successful IO @@ -79,9 +79,9 @@ export const CONFIG: AppConfig = { [EV_SET_VALUE, [["users", json.id], json]], [ ev.SET_STATUS, - [StatusType.SUCCESS, "JSON successfully loaded", true] - ] - ] + [StatusType.SUCCESS, "JSON successfully loaded", true], + ], + ], }), // error event for user profile IO requests (i.e. in this demo for user ID 3) @@ -92,22 +92,22 @@ export const CONFIG: AppConfig = { FX_DELAY, [1000, [routes.USER_LIST.id]], ev.ROUTE_TO, - ev.ERROR - ] + ev.ERROR, + ], }), // triggers loading of JSON summary of all users, sets status [ev.LOAD_USER_LIST]: () => ({ [FX_DISPATCH_NOW]: [ ev.SET_STATUS, - [StatusType.INFO, `loading user data...`] + [StatusType.INFO, `loading user data...`], ], [FX_DISPATCH_ASYNC]: [ fx.JSON, `assets/users.json`, ev.RECEIVE_USERS, - ev.ERROR - ] + ev.ERROR, + ], }), // triggered after successful IO @@ -117,9 +117,9 @@ export const CONFIG: AppConfig = { [EV_SET_VALUE, ["userlist", json]], [ ev.SET_STATUS, - [StatusType.SUCCESS, "JSON successfully loaded", true] - ] - ] + [StatusType.SUCCESS, "JSON successfully loaded", true], + ], + ], }), // stores status (a tuple of `[type, message, done?]`) in app state @@ -130,11 +130,11 @@ export const CONFIG: AppConfig = { [FX_DISPATCH_ASYNC]: status[0] !== StatusType.DONE && status[2] ? [FX_DELAY, [1000], ev.DONE, ev.ERROR] - : undefined + : undefined, }), // toggles debug state flag on/off - [ev.TOGGLE_DEBUG]: valueUpdater("debug", (x) => x ^ 1) + [ev.TOGGLE_DEBUG]: valueUpdater("debug", (x) => x ^ 1), }, // side effects @@ -146,7 +146,7 @@ export const CONFIG: AppConfig = { throw new Error(resp.statusText); } return resp.json(); - }) + }), }, // mapping route IDs to their respective UI component functions @@ -156,7 +156,7 @@ export const CONFIG: AppConfig = { [routes.HOME.id]: home, [routes.CONTACT.id]: contact, [routes.USER_LIST.id]: allUsers, - [routes.USER_PROFILE.id]: userProfile + [routes.USER_PROFILE.id]: userProfile, }, // DOM root element (or ID) @@ -168,7 +168,7 @@ export const CONFIG: AppConfig = { users: {}, userlist: [], route: {}, - debug: 1 + debug: 1, }, // derived view declarations @@ -181,7 +181,7 @@ export const CONFIG: AppConfig = { users: ["users", (users) => users || {}], userlist: "userlist", status: "status", - debug: "debug" + debug: "debug", }, // component CSS class config using tachyons-css @@ -193,51 +193,51 @@ export const CONFIG: AppConfig = { // http://tachyons.io/ ui: { bodyCopy: { - class: "center measure-narrow measure-ns tc lh-copy black-70" + class: "center measure-narrow measure-ns tc lh-copy black-70", }, bodyLink: { class: "link dim black" }, card: { container: { class: - "mw5 center bg-white br3 pa3 pa4-ns mv3 ba b--black-10 tc" + "mw5 center bg-white br3 pa3 pa4-ns mv3 ba b--black-10 tc", }, thumb: { class: "br-100 h3 w3 dib" }, title: { class: "ma1" }, sep: { class: "mt3 mw3 bb bw1 b--black-10" }, - body: { class: "lh-copy measure center f6 black-70" } + body: { class: "lh-copy measure center f6 black-70" }, }, code: { class: "ma0 ml4 pa2 f7 bg-light-gray code overflow-x-hidden" }, column: { content: [{ class: "w-90-ns ma2" }, { class: "w-50-ns ma2" }], debug: [ { class: "w-10-ns ma2 close" }, - { class: "w-50-ns ma2 open" } - ] + { class: "w-50-ns ma2 open" }, + ], }, contact: { - link: { class: "db pb2 link dim black" } + link: { class: "db pb2 link dim black" }, }, debugToggle: { class: "toggle pointer" }, nav: { inner: { class: "tc pb3" }, title: { class: "black f1 lh-title tc db mb2 mb2-ns" }, link: { class: "pointer link dim gray f6 f5-ns dib mr3" }, - linkLast: { class: "pointer link dim gray f6 f5-ns dib" } + linkLast: { class: "pointer link dim gray f6 f5-ns dib" }, }, root: { class: "flex-ns sans-serif ma0" }, status: { [StatusType.DONE]: { - class: "pa2 bg-light-yellow gold tc fadeout bg-animate" + class: "pa2 bg-light-yellow gold tc fadeout bg-animate", }, [StatusType.INFO]: { - class: "pa2 bg-light-yellow gold tc bg-animate" + class: "pa2 bg-light-yellow gold tc bg-animate", }, [StatusType.SUCCESS]: { - class: "pa2 bg-light-green green tc bg-animate" + class: "pa2 bg-light-green green tc bg-animate", }, [StatusType.ERROR]: { - class: "pa2 bg-light-red dark-red tc bg-animate" - } + class: "pa2 bg-light-red dark-red tc bg-animate", + }, }, userlist: { root: { class: "measure center" }, @@ -247,7 +247,7 @@ export const CONFIG: AppConfig = { body: { class: "dtc v-mid pl3" }, title: { class: "pointer f6 f5-ns fw6 lh-title black mv0" }, subtitle: { class: "f6 fw4 mt0 mb0 black-60" }, - meta: { class: "dtc tr v-mid black-60 f7" } - } - } + meta: { class: "dtc tr v-mid black-60 f7" }, + }, + }, }; diff --git a/examples/router-basics/src/effects.ts b/examples/router-basics/src/effects.ts index 3f09c7d3b6..492d776e29 100644 --- a/examples/router-basics/src/effects.ts +++ b/examples/router-basics/src/effects.ts @@ -1,7 +1,7 @@ // best practice tip: define event & effect names as consts or enums // and avoid hardcoded strings for more safety and easier refactoring // also see pre-defined event handlers & interceptors in @thi.ng/atom: -// https://github.com/thi-ng/umbrella/blob/master/packages/interceptors/src/api.ts#L14 +// https://github.com/thi-ng/umbrella/blob/develop/packages/interceptors/src/api.ts#L14 export const JSON = "load-json"; export const ROUTE_TO = "route-to"; diff --git a/examples/router-basics/src/routes.ts b/examples/router-basics/src/routes.ts index 1b4f801d0d..f0a4723688 100644 --- a/examples/router-basics/src/routes.ts +++ b/examples/router-basics/src/routes.ts @@ -6,22 +6,22 @@ import { Route } from "@thi.ng/router"; // the `match` arrays specify the individual route elements // docs here: -// https://github.com/thi-ng/umbrella/blob/master/packages/router/ -// https://github.com/thi-ng/umbrella/blob/master/packages/router/src/api.ts#L31 +// https://github.com/thi-ng/umbrella/blob/develop/packages/router/ +// https://github.com/thi-ng/umbrella/blob/develop/packages/router/src/api.ts#L31 export const HOME: Route = { id: "home", - match: ["home"] + match: ["home"], }; export const CONTACT: Route = { id: "contact", - match: ["contact"] + match: ["contact"], }; export const USER_LIST: Route = { id: "user-list", - match: ["users"] + match: ["users"], }; // this is a parametric route w/ parameter coercion & validation @@ -35,7 +35,7 @@ export const USER_PROFILE: Route = { validate: { id: { coerce: (x) => parseInt(x), - check: (x) => x > 0 && x < 100 - } - } + check: (x) => x > 0 && x < 100, + }, + }, }; diff --git a/examples/rstream-dataflow/src/circle.ts b/examples/rstream-dataflow/src/circle.ts index 9d4312362f..dcd6a8e31b 100644 --- a/examples/rstream-dataflow/src/circle.ts +++ b/examples/rstream-dataflow/src/circle.ts @@ -10,8 +10,8 @@ export const circle = (col: string, x: number, y: number, w: number, h = w) => [ top: px(y - h / 2), width: px(w), height: px(h), - "line-height": px(h) - } + "line-height": px(h), + }, }, - `${x};${y}` + `${x};${y}`, ]; diff --git a/examples/rstream-dataflow/src/index.ts b/examples/rstream-dataflow/src/index.ts index 7a1ac35182..638f221264 100644 --- a/examples/rstream-dataflow/src/index.ts +++ b/examples/rstream-dataflow/src/index.ts @@ -5,19 +5,8 @@ import { getIn } from "@thi.ng/paths"; import { fromRAF } from "@thi.ng/rstream"; import { toDot, walk } from "@thi.ng/rstream-dot"; import { gestureStream } from "@thi.ng/rstream-gestures"; -import { - extract, - initGraph, - mul, - node, - node1 -} from "@thi.ng/rstream-graph"; -import { - choices, - comp, - dedupe, - map -} from "@thi.ng/transducers"; +import { extract, initGraph, mul, node, node1 } from "@thi.ng/rstream-graph"; +import { choices, comp, dedupe, map } from "@thi.ng/transducers"; import { circle } from "./circle"; // infinite iterator of randomized colors (Tachyons CSS class names) @@ -30,7 +19,7 @@ const colors = choices([ "bg-pink", "bg-light-purple", "bg-orange", - "bg-gray" + "bg-gray", ]); // atom for storing dataflow results (optional, here only for @@ -69,7 +58,7 @@ const graph = initGraph(db, { mpos: { fn: extract(["pos"]), ins: { src: { stream: () => gestures } }, - outs: { "*": "mpos" } + outs: { "*": "mpos" }, }, // extracts last click position from gesture tuple @@ -78,7 +67,7 @@ const graph = initGraph(db, { clickpos: { fn: extract(["active", 0, "click"]), ins: { src: { stream: () => gestures } }, - outs: { "*": "clickpos" } + outs: { "*": "clickpos" }, }, // extracts & computes length of `delta` vector in gesture tuple @@ -93,7 +82,7 @@ const graph = initGraph(db, { }) ), ins: { src: { stream: () => gestures } }, - outs: { "*": "dist" } + outs: { "*": "dist" }, }, // combines `clickpos`, `dist` and `color` streams to produce a @@ -114,9 +103,9 @@ const graph = initGraph(db, { ins: { click: { stream: "/clickpos/node" }, radius: { stream: "/radius/node" }, - color: { stream: "/color/node" } + color: { stream: "/color/node" }, }, - outs: { "*": "circle" } + outs: { "*": "circle" }, }, // produces a new random color for each new drag gesture (and @@ -133,7 +122,7 @@ const graph = initGraph(db, { ) ), ins: { src: { stream: "/clickpos/node" } }, - outs: { "*": "color" } + outs: { "*": "color" }, }, // transforms a `requestAnimationFrame` event stream (frame counter @ 60fps) @@ -141,7 +130,7 @@ const graph = initGraph(db, { sine: { fn: node1(map((x: number) => 0.8 + 0.2 * Math.sin(x * 0.05))), ins: { src: { stream: () => raf } }, - outs: { "*": "sin" } + outs: { "*": "sin" }, }, // multiplies `dist` and `sine` streams to produce an animated @@ -150,10 +139,10 @@ const graph = initGraph(db, { fn: mul, ins: { a: { stream: "/sine/node" }, - b: { stream: "/dist/node" } + b: { stream: "/dist/node" }, }, - outs: { "*": "radius" } - } + outs: { "*": "radius" }, + }, }); // start @thi.ng/hdom update loop @@ -161,13 +150,13 @@ start(() => [ "div", [ "pre.absolute.top-1.left-1.pa0.ma0.z-2.f7", - JSON.stringify(db.deref(), null, 2) + JSON.stringify(db.deref(), null, 2), ], // note: direct embedding of result stream below. this works // since all @thi.ng/rstream subscriptions implement the // @thi.ng/api/IDeref interface (like several other types, e.g. // @thi.ng/atom's Atom, Cursor, View etc.) - graph.circle.node + graph.circle.node, ]); // create a GraphViz DOT file of the entire dataflow graph diff --git a/examples/rstream-event-loop/src/events.ts b/examples/rstream-event-loop/src/events.ts index a8c738d468..c1d31e537c 100644 --- a/examples/rstream-event-loop/src/events.ts +++ b/examples/rstream-event-loop/src/events.ts @@ -1,19 +1,7 @@ import { setInManyUnsafe } from "@thi.ng/paths"; -import { - ISubscriber, - pubsub, - stream, - trace -} from "@thi.ng/rstream"; +import { ISubscriber, pubsub, stream, trace } from "@thi.ng/rstream"; import { filter, Transducer } from "@thi.ng/transducers"; -import { - Event, - EventType, - EventTypeMap, - NEXT, - PAGE_READY, - PREV -} from "./api"; +import { Event, EventType, EventTypeMap, NEXT, PAGE_READY, PREV } from "./api"; import { state } from "./state"; import type { Fn } from "@thi.ng/api"; diff --git a/examples/rstream-event-loop/src/index.ts b/examples/rstream-event-loop/src/index.ts index 41563cfc6c..ed25934213 100644 --- a/examples/rstream-event-loop/src/index.ts +++ b/examples/rstream-event-loop/src/index.ts @@ -15,7 +15,7 @@ const app = ({ pageID, isLoading }: AppState) => isLoading ? [ "div.w-100.vh-100.flex.items-center.justify-center.bg-black.white", - ["div", "Loading..."] + ["div", "Loading..."], ] : [ "div.ma3", @@ -27,10 +27,10 @@ const app = ({ pageID, isLoading }: AppState) => ["button", { onclick: () => dispatch([PREV, 5]) }, "<<"], ["button", { onclick: () => dispatch([PREV, 1]) }, "<"], ["button", { onclick: () => dispatch([NEXT, 1]) }, ">"], - ["button", { onclick: () => dispatch([NEXT, 5]) }, ">>"] + ["button", { onclick: () => dispatch([NEXT, 5]) }, ">>"], ], // only here to show timestamp of last DOM update - ["div.mt3", new Date().toString()] + ["div.mt3", new Date().toString()], ]; /** diff --git a/examples/rstream-grid/src/app.ts b/examples/rstream-grid/src/app.ts index 9542ff2d31..3694b8ff23 100644 --- a/examples/rstream-grid/src/app.ts +++ b/examples/rstream-grid/src/app.ts @@ -1,9 +1,4 @@ -import { - Atom, - Cursor, - defViewUnsafe, - History -} from "@thi.ng/atom"; +import { Atom, Cursor, defViewUnsafe, History } from "@thi.ng/atom"; import { isArray } from "@thi.ng/checks"; import { start } from "@thi.ng/hdom"; import { EventBus } from "@thi.ng/interceptors"; diff --git a/examples/rstream-grid/src/components/button-group.ts b/examples/rstream-grid/src/components/button-group.ts index 5dadae9096..733f015784 100644 --- a/examples/rstream-grid/src/components/button-group.ts +++ b/examples/rstream-grid/src/components/button-group.ts @@ -4,5 +4,5 @@ import type { AppContext } from "../api"; export const buttonGroup = (ctx: AppContext, ...buttons: any[]) => [ "section", ctx.ui.buttongroup, - buttons.map((bt) => [button, ...bt]) + buttons.map((bt) => [button, ...bt]), ]; diff --git a/examples/rstream-grid/src/components/button.ts b/examples/rstream-grid/src/components/button.ts index c6d3ad92d2..92037d5900 100644 --- a/examples/rstream-grid/src/components/button.ts +++ b/examples/rstream-grid/src/components/button.ts @@ -5,5 +5,5 @@ export const button = (ctx: AppContext, event: Event, label: string) => [ eventLink, ctx.ui.button, event, - label + label, ]; diff --git a/examples/rstream-grid/src/components/event-link.ts b/examples/rstream-grid/src/components/event-link.ts index 1a4555eb2a..f5f64a09dc 100644 --- a/examples/rstream-grid/src/components/event-link.ts +++ b/examples/rstream-grid/src/components/event-link.ts @@ -1,7 +1,6 @@ import type { Event } from "@thi.ng/interceptors"; import type { AppContext } from "../api"; - /** * Customizable hyperlink component emitting given event on event bus * when clicked. @@ -23,7 +22,7 @@ export const eventLink = ( onclick: (e: any) => { e.preventDefault(); ctx.bus.dispatch(event); - } + }, }, - body + body, ]; diff --git a/examples/rstream-grid/src/components/link.ts b/examples/rstream-grid/src/components/link.ts index c2b1593d6a..0afd195db1 100644 --- a/examples/rstream-grid/src/components/link.ts +++ b/examples/rstream-grid/src/components/link.ts @@ -3,5 +3,5 @@ import type { AppContext } from "../api"; export const link = (ctx: AppContext, href: string, ...body: any[]) => [ "a", { ...ctx.ui.link, href }, - ...body + ...body, ]; diff --git a/examples/rstream-grid/src/components/sidebar.ts b/examples/rstream-grid/src/components/sidebar.ts index 4c597b0bb6..5c8c40b008 100644 --- a/examples/rstream-grid/src/components/sidebar.ts +++ b/examples/rstream-grid/src/components/sidebar.ts @@ -20,7 +20,7 @@ export const sidebar = (ctx: AppContext, ...specs: SliderOpts[]) => { ["code", "Ctrl+Z"], " / ", ["code", "Ctrl+Y"], - ". The last 1000 edits are stored." + ". The last 1000 edits are stored.", ], [ "div", @@ -28,11 +28,11 @@ export const sidebar = (ctx: AppContext, ...specs: SliderOpts[]) => { [ link, "https://github.com/thi-ng/umbrella/tree/develop/examples/rstream-grid", - "Source" + "Source", ], ["br"], "Made with ", - [link, "https://github.com/thi-ng/umbrella/", "@thi.ng/umbrella"] - ] + [link, "https://github.com/thi-ng/umbrella/", "@thi.ng/umbrella"], + ], ]; }; diff --git a/examples/rstream-grid/src/components/slider.ts b/examples/rstream-grid/src/components/slider.ts index 10b0cc8982..d07c10905f 100644 --- a/examples/rstream-grid/src/components/slider.ts +++ b/examples/rstream-grid/src/components/slider.ts @@ -29,11 +29,11 @@ export const slider = (ctx: AppContext, opts: SliderOpts) => { oninput: (e: Event) => ctx.bus.dispatch([ opts.event, - parseFloat((e.target).value) + parseFloat((e.target).value), ]), min: 0, max: 100, - step: 1 + step: 1, }, opts ); @@ -47,8 +47,8 @@ export const slider = (ctx: AppContext, opts: SliderOpts) => { ...ui.range, ...opts, type: "range", - value: (ctx.views)[opts.view].deref() - } + value: (ctx.views)[opts.view].deref(), + }, ], [ "div", @@ -60,9 +60,9 @@ export const slider = (ctx: AppContext, opts: SliderOpts) => { ...ui.number, ...opts, type: "number", - value: (ctx.views)[opts.view].deref() - } - ] - ] + value: (ctx.views)[opts.view].deref(), + }, + ], + ], ]; }; diff --git a/examples/rstream-grid/src/config.ts b/examples/rstream-grid/src/config.ts index 1db3d7edd7..56d09a0cae 100644 --- a/examples/rstream-grid/src/config.ts +++ b/examples/rstream-grid/src/config.ts @@ -25,7 +25,7 @@ export const CONFIG: AppConfig = { // and only side effect functions execute any "real" work. // Docs here: - // https://github.com/thi-ng/umbrella/blob/master/packages/interceptors/src/event-bus.ts#L14 + // https://github.com/thi-ng/umbrella/blob/develop/packages/interceptors/src/event-bus.ts#L14 events: { // generate slider event handlers. each uses the `snapshot()` // interceptor to record a snapshot of the current app state diff --git a/examples/rstream-grid/src/dataflow.ts b/examples/rstream-grid/src/dataflow.ts index 5b3bc6934c..17a6ac090d 100644 --- a/examples/rstream-grid/src/dataflow.ts +++ b/examples/rstream-grid/src/dataflow.ts @@ -21,15 +21,15 @@ export function initDataflow(bus: EventBus) { fn: grid, ins: { cols: { path: paths.COLS }, - rows: { path: paths.ROWS } - } + rows: { path: paths.ROWS }, + }, }, rotation: { fn: rotate, ins: { shapes: { stream: "/grid/node" }, - theta: { path: paths.THETA } - } + theta: { path: paths.THETA }, + }, }, svg: { fn: createSVG, @@ -37,16 +37,16 @@ export function initDataflow(bus: EventBus) { shapes: { stream: "/rotation/node" }, cols: { path: paths.COLS }, rows: { path: paths.ROWS }, - stroke: { path: paths.STROKE } + stroke: { path: paths.STROKE }, }, // dispatch SVG result doc as event outs: { "*": (node) => node.subscribe({ - next: (svg) => bus.dispatch([ev.UPDATE_SVG, svg]) - }) - } - } + next: (svg) => bus.dispatch([ev.UPDATE_SVG, svg]), + }), + }, + }, }); return graph; } @@ -59,7 +59,7 @@ const grid = node( ...map( ([x, y]) => ["rect", { x, y, width: 1, height: 1 }], range2d(cols, rows) - ) + ), ]) ); @@ -71,8 +71,9 @@ const rotate = node( map(({ shapes, theta }) => shapes.map( (s: any) => ( - (s[1].transform = `rotate(${theta} ${s[1].x + 0.5} ${s[1].y + - 0.5})`), + (s[1].transform = `rotate(${theta} ${s[1].x + 0.5} ${ + s[1].y + 0.5 + })`), s ) ) @@ -89,14 +90,14 @@ const createSVG = node( { class: "w-100 h-100", preserveAspectRatio: "xMidYMid", - viewBox: `-1 -1 ${cols + 2} ${rows + 2}` + viewBox: `-1 -1 ${cols + 2} ${rows + 2}`, }, rect([-1, -1], cols + 2, rows + 2, { fill: "black" }), group( { stroke: "white", fill: "none", - "stroke-width": stroke + "stroke-width": stroke, }, ...shapes ) diff --git a/examples/rstream-grid/src/effects.ts b/examples/rstream-grid/src/effects.ts index 32593dd7d2..45b256c259 100644 --- a/examples/rstream-grid/src/effects.ts +++ b/examples/rstream-grid/src/effects.ts @@ -1,7 +1,7 @@ // best practice tip: define event & effect names as consts or enums // and avoid hardcoded strings for more safety and easier refactoring // also see pre-defined event handlers & interceptors in @thi.ng/atom: -// https://github.com/thi-ng/umbrella/blob/master/packages/interceptors/src/api.ts#L14 +// https://github.com/thi-ng/umbrella/blob/develop/packages/interceptors/src/api.ts#L14 export const SAVE_SVG = "save-svg"; export const SAVE_ANIM = "save-anim"; diff --git a/examples/rstream-grid/src/events.ts b/examples/rstream-grid/src/events.ts index 2402d9388b..930faf6ff6 100644 --- a/examples/rstream-grid/src/events.ts +++ b/examples/rstream-grid/src/events.ts @@ -3,7 +3,7 @@ import { EV_REDO, EV_UNDO } from "@thi.ng/interceptors"; // best practice tip: define event & effect names as consts or enums // and avoid hardcoded strings for more safety and easier refactoring // also see pre-defined event handlers & interceptors in @thi.ng/atom: -// https://github.com/thi-ng/umbrella/blob/master/packages/interceptors/src/api.ts#L14 +// https://github.com/thi-ng/umbrella/blob/develop/packages/interceptors/src/api.ts#L14 export const UNDO = EV_UNDO; export const REDO = EV_REDO; diff --git a/examples/rstream-grid/src/sliders.ts b/examples/rstream-grid/src/sliders.ts index 3722aa6ee1..0a67321fd7 100644 --- a/examples/rstream-grid/src/sliders.ts +++ b/examples/rstream-grid/src/sliders.ts @@ -12,7 +12,7 @@ export const SLIDERS = [ view: "cols", label: "cols", min: 1, - max: 16 + max: 16, }, { event: ev.SET_ROWS, @@ -20,7 +20,7 @@ export const SLIDERS = [ view: "rows", label: "rows", min: 1, - max: 16 + max: 16, }, { event: ev.SET_THETA, @@ -28,7 +28,7 @@ export const SLIDERS = [ view: "theta", label: "rotate", min: 0, - max: 360 + max: 360, }, { event: ev.SET_STROKE, @@ -37,6 +37,6 @@ export const SLIDERS = [ label: "stroke weight", min: 0.01, max: 0.5, - step: 0.01 - } + step: 0.01, + }, ]; diff --git a/examples/rstream-hdom/src/index.ts b/examples/rstream-hdom/src/index.ts index 38de78d6ed..3a9fb4dc3a 100644 --- a/examples/rstream-hdom/src/index.ts +++ b/examples/rstream-hdom/src/index.ts @@ -5,14 +5,9 @@ import { sidechainPartition, Subscription, subscription, - sync + sync, } from "@thi.ng/rstream"; -import { - map, - reducer, - scan, - vals -} from "@thi.ng/transducers"; +import { map, reducer, scan, vals } from "@thi.ng/transducers"; import { updateDOM } from "@thi.ng/transducers-hdom"; // example user context object @@ -21,12 +16,12 @@ import { updateDOM } from "@thi.ng/transducers-hdom"; const ctx = { ui: { root: { - class: "pa2" + class: "pa2", }, button: { - class: "w4 h2 bg-black white bn br2 mr2 pointer" - } - } + class: "w4 h2 bg-black white bn br2 mr2 pointer", + }, + }, }; /** @@ -66,7 +61,7 @@ const domUpdate = (root: HTMLElement, tree: ISubscribable, ctx?: any) => const button = (ctx: any, onclick: EventListener, body: any) => [ "button", { ...ctx.ui.button, onclick }, - body + body, ]; /** @@ -78,7 +73,7 @@ const button = (ctx: any, onclick: EventListener, body: any) => [ const clickButton = (_: any, stream: Subscription) => [ button, () => stream.next(true), - stream.deref() + stream.deref(), ]; /** @@ -90,7 +85,7 @@ const clickButton = (_: any, stream: Subscription) => [ const resetButton = (_: any, counters: Subscription[]) => [ button, () => counters.forEach((c) => c.next(false)), - "reset" + "reset", ]; /** @@ -105,14 +100,14 @@ const counter = (start: number, step: number) => { const s = subscription( undefined, // the `scan` transducer is used to provide counter functionality - // see: https://github.com/thi-ng/umbrella/blob/master/packages/transducers/src/xform/scan.ts + // see: https://github.com/thi-ng/umbrella/blob/develop/packages/transducers/src/xform/scan.ts { xform: scan( reducer( () => start, (x, y) => (y ? x + step : start) ) - ) + ), } ); s.next(false); @@ -137,7 +132,7 @@ const app = (ctx: any, initial: number[][]) => { "div", ctx.ui.root, ...vals(buttons), - [resetButton, counters] + [resetButton, counters], ] ), // this config ensures that only at the very beginning *all* @@ -146,9 +141,9 @@ const app = (ctx: any, initial: number[][]) => { // however, by stating `reset: false` (actually the default) any // subsequent changes to any of the inputs will not be // synchronized see here for further details: - // https://github.com/thi-ng/umbrella/blob/master/packages/rstream/src/stream-sync.ts#L21 - // https://github.com/thi-ng/umbrella/blob/master/packages/transducers/src/xform/partition-sync.ts#L7 - reset: false + // https://github.com/thi-ng/umbrella/blob/develop/packages/rstream/src/stream-sync.ts#L21 + // https://github.com/thi-ng/umbrella/blob/develop/packages/transducers/src/xform/partition-sync.ts#L7 + reset: false, }); }; @@ -158,7 +153,7 @@ domUpdate( app(ctx, [ [10, 1], [20, 5], - [30, 10] + [30, 10], ]), ctx ); diff --git a/examples/rstream-spreadsheet/src/dsl.ts b/examples/rstream-spreadsheet/src/dsl.ts index e1bcd94319..88ff0b800e 100644 --- a/examples/rstream-spreadsheet/src/dsl.ts +++ b/examples/rstream-spreadsheet/src/dsl.ts @@ -3,12 +3,7 @@ import { illegalArgs } from "@thi.ng/errors"; import { fit } from "@thi.ng/math"; import { memoize1 } from "@thi.ng/memoize"; import { fromView } from "@thi.ng/rstream"; -import { - addNode, - node, - NodeInputSpec, - NodeSpec -} from "@thi.ng/rstream-graph"; +import { addNode, node, NodeInputSpec, NodeSpec } from "@thi.ng/rstream-graph"; import { ASTNode, Implementations, diff --git a/examples/rstream-spreadsheet/src/index.ts b/examples/rstream-spreadsheet/src/index.ts index 0345d785ca..028bce6ae8 100644 --- a/examples/rstream-spreadsheet/src/index.ts +++ b/examples/rstream-spreadsheet/src/index.ts @@ -9,23 +9,17 @@ import { permutations, push, range, - transduce + transduce, } from "@thi.ng/transducers"; import { updateDOM } from "@thi.ng/transducers-hdom"; -import { - CELL_STYLE, - MAX_COL, - NUM_COLS, - NUM_ROWS, - UICell -} from "./api"; +import { CELL_STYLE, MAX_COL, NUM_COLS, NUM_ROWS, UICell } from "./api"; import { blurCell, cancelCell, DB, focusCell, graph, - updateCell + updateCell, } from "./state"; const formatCell = (x: string | number) => (isNumber(x) ? x.toFixed(2) : x); @@ -91,15 +85,15 @@ const cell = ([row, col]: [number, string]) => cancelCell(id); this.element!.blur(); } - } + }, }, String( cell.focus && cell.formula ? cell.formula : cell.error || formatCell(cell.value) - ) + ), ]; - } + }, }; /** @@ -129,12 +123,12 @@ const app = () => { [ `${CELL_STYLE}.w2.b.bg-moon-gray.overflow-y-hidden.overflow-x-scroll`, {}, - rowid + rowid, ], - ...CELLS[i].map((cell) => [cell, state]) + ...CELLS[i].map((cell) => [cell, state]), ], range(1, NUM_ROWS + 1) - ) + ), ]; }; diff --git a/examples/scenegraph-image/src/index.ts b/examples/scenegraph-image/src/index.ts index cc163ed6f8..5815358de9 100644 --- a/examples/scenegraph-image/src/index.ts +++ b/examples/scenegraph-image/src/index.ts @@ -30,7 +30,7 @@ class ImgNode extends Node2D { "img", { alpha, width: size[0], height: size[1] }, img, - [0, 0] + [0, 0], ]); this.img = img; } @@ -97,13 +97,13 @@ imagePromise(LOGO).then((img) => { const q = geom.mapLocalPointToNode(imgNode, [x, y]); const r = (imgMap.getAt(q[0], q[1]) * 5) / 255; return [x, sin(x, 0.05, r, y)]; - }, range(-200, 200)) + }, range(-200, 200)), ]), range(-200, 200, 5) ); geom.body = group({ fill: "none", stroke: "#fff", weight: 0.5 }, [ - ...waves + ...waves, ]); return [ "div.sans-serif.pl3", @@ -115,7 +115,7 @@ imagePromise(LOGO).then((img) => { ", ", ["b", "@thi.ng/pixel"], " and ", - ["b", "@thi.ng/hdom-canvas"] + ["b", "@thi.ng/hdom-canvas"], ], ["p", "Click to toggle image overlay"], [ @@ -126,12 +126,12 @@ imagePromise(LOGO).then((img) => { width: 600, height: 600, onmousemove: updateMouse, - onclick: toggleImage + onclick: toggleImage, }, // only need to pass root node which then expands itself via // .toHiccup() during rendering - root - ] + root, + ], ]; }; diff --git a/examples/scenegraph/src/index.ts b/examples/scenegraph/src/index.ts index 5d6b6f11dd..833977244a 100644 --- a/examples/scenegraph/src/index.ts +++ b/examples/scenegraph/src/index.ts @@ -1,20 +1,10 @@ -import { - asPolygon, - circle, - pointInside, - rect -} from "@thi.ng/geom"; +import { asPolygon, circle, pointInside, rect } from "@thi.ng/geom"; import { start } from "@thi.ng/hdom"; import { canvas } from "@thi.ng/hdom-canvas"; import { HALF_PI, PI } from "@thi.ng/math"; import { Node2D, NodeInfo } from "@thi.ng/scenegraph"; import { cycle, map, range } from "@thi.ng/transducers"; -import { - cartesian2, - mulN2, - ReadonlyVec, - Vec -} from "@thi.ng/vectors"; +import { cartesian2, mulN2, ReadonlyVec, Vec } from "@thi.ng/vectors"; import type { IShape } from "@thi.ng/geom-api"; /** @@ -58,7 +48,7 @@ const colors = cycle([ "#9f0", "#0ff", "#090", - "#f60" + "#f60", ]); // scene graph definition @@ -99,7 +89,7 @@ const satellites = [ rect([-0.5, -0.5], [1, 1], { fill: "#cf0" }) ), range(4) - ) + ), ]; // this node uses a hdom component function as body to create the dynamic @@ -119,11 +109,11 @@ const infoNode = new Node2D("info", root, mouse, 0, 1, () => [ "text", {}, [8, -10], - `${info.p![0].toFixed(2)}, ${info.p![1].toFixed(2)}` + `${info.p![0].toFixed(2)}, ${info.p![1].toFixed(2)}`, ], - ["text", {}, [8, -24], `ID: ${info.node.id}`] + ["text", {}, [8, -24], `ID: ${info.node.id}`], ] - : undefined + : undefined, ]); // mousemove event handler @@ -158,12 +148,12 @@ const app = () => { width: 600, height: 600, onmousemove: updateMouse, - onclick: selectNode + onclick: selectNode, }, // only need to pass root node which then expands itself via // .toHiccup() during rendering - root - ] + root, + ], ]; }; diff --git a/examples/shader-ast-canvas2d/src/index.ts b/examples/shader-ast-canvas2d/src/index.ts index 815317eebd..0f072ca8cb 100644 --- a/examples/shader-ast-canvas2d/src/index.ts +++ b/examples/shader-ast-canvas2d/src/index.ts @@ -14,7 +14,7 @@ import { sym, Vec2Sym, vec3, - vec4 + vec4, } from "@thi.ng/shader-ast"; import { targetGLSL } from "@thi.ng/shader-ast-glsl"; import { canvasRenderer, targetJS } from "@thi.ng/shader-ast-js"; @@ -30,7 +30,11 @@ const main = defn( // func name "main", // args (names are optional) - [["vec2", "fragCoord"], ["vec2", "res"], ["float", "time"]], + [ + ["vec2", "fragCoord"], + ["vec2", "res"], + ["float", "time"], + ], // bound args given to function body (frag, res, time) => { let a: FloatSym; @@ -60,7 +64,7 @@ const main = defn( ), 1 ) - ) + ), ]; } ); diff --git a/examples/shader-ast-evo/src/index.ts b/examples/shader-ast-evo/src/index.ts index 064d23add3..1c93364085 100644 --- a/examples/shader-ast-evo/src/index.ts +++ b/examples/shader-ast-evo/src/index.ts @@ -1,9 +1,4 @@ -import { - AST, - ASTNode, - ASTOpts, - GeneType -} from "@thi.ng/gp"; +import { AST, ASTNode, ASTOpts, GeneType } from "@thi.ng/gp"; import { roundTo } from "@thi.ng/math"; import { IRandom, SYSTEM } from "@thi.ng/random"; import { @@ -37,16 +32,20 @@ import { vec3, Vec3Sym, Vec3Term, - vec4 + vec4, } from "@thi.ng/shader-ast"; import { clamp11, fragUV, snoise3, - snoiseVec3 + snoiseVec3, } from "@thi.ng/shader-ast-stdlib"; import { glCanvas } from "@thi.ng/webgl"; -import { MainImageFn, shaderToy, ShaderToyUniforms } from "@thi.ng/webgl-shadertoy"; +import { + MainImageFn, + shaderToy, + ShaderToyUniforms, +} from "@thi.ng/webgl-shadertoy"; const MAX_DEPTH = 11; const NORM_SCALE = 1; @@ -75,7 +74,7 @@ const OP1 = [ (x: Vec3Term) => $(x, "yxz"), (x: Vec3Term) => $(x, "xxx"), (x: Vec3Term) => $(x, "yyy"), - (x: Vec3Term) => $(x, "zzz") + (x: Vec3Term) => $(x, "zzz"), ]; // binary functions const OP2 = [ @@ -85,7 +84,7 @@ const OP2 = [ div, mod, pow, - (x: Vec3Term, y: Vec3Term) => vec3(distance(x, y)) + (x: Vec3Term, y: Vec3Term) => vec3(distance(x, y)), ]; // ternary functions const OP3 = [mix]; @@ -109,10 +108,10 @@ const AST_OPTS: ASTOpts = { ops: [ { fn: randomFn(OP1), arity: 1, prob: 0.4 }, { fn: randomFn(OP2), arity: 2, prob: 0.4 }, - { fn: randomFn(OP3), arity: 3, prob: 0.1 } + { fn: randomFn(OP3), arity: 3, prob: 0.1 }, ], maxDepth: MAX_DEPTH, - probMutate: 0.01 + probMutate: 0.01, }; const transpile = (node: ASTNode): Term => @@ -132,7 +131,7 @@ const shaderFunction = ( mul(1, fract(unis.time)) ) ), - ret(vec4(abs(transpile(ast)), 1)) + ret(vec4(abs(transpile(ast)), 1)), // ret(vec4(fit1101(normalize(transpile(ast))), 1)) ]; }; @@ -144,13 +143,13 @@ const canvas = glCanvas({ width: 640, height: 640, parent: document.body, - version: 1 + version: 1, }); const toy = shaderToy({ canvas: canvas.canvas, gl: canvas.gl, - main: shaderFunction(currTree) + main: shaderFunction(currTree), }); toy.start(); diff --git a/examples/shader-ast-noise/src/index.ts b/examples/shader-ast-noise/src/index.ts index aa83c7d7a1..6f4d89eaf5 100644 --- a/examples/shader-ast-noise/src/index.ts +++ b/examples/shader-ast-noise/src/index.ts @@ -12,7 +12,7 @@ import { vec2, Vec2Sym, vec3, - vec4 + vec4, } from "@thi.ng/shader-ast"; import { GLSLVersion, targetGLSL } from "@thi.ng/shader-ast-glsl"; import { canvasRenderer, targetJS } from "@thi.ng/shader-ast-js"; @@ -20,14 +20,9 @@ import { additive, aspectCorrectedUV, fit1101, - snoise2 + snoise2, } from "@thi.ng/shader-ast-stdlib"; -import { - compileModel, - draw, - quad, - shader -} from "@thi.ng/webgl"; +import { compileModel, draw, quad, shader } from "@thi.ng/webgl"; // set URL hash to "#2d" to enable JS Canvas2D version const JS_MODE = location.hash.indexOf("2d") >= 0; @@ -52,7 +47,7 @@ const mainImage = defn( (col = sym( additive("vec2", snoise2, 4)(add(uv, time), vec2(2), float(0.5)) )), - ret(vec4(vec3(fit1101(col)), 1)) + ret(vec4(vec3(fit1101(col)), 1)), ]; } ); @@ -100,8 +95,8 @@ if (JS_MODE) { model.shader = shader(ctx, { vs: (gl, _, attribs) => [ defMain(() => [ - assign(gl.gl_Position, vec4(attribs.position, 0, 1)) - ]) + assign(gl.gl_Position, vec4(attribs.position, 0, 1)), + ]), ], fs: (gl, unis, _, outs) => [ mainImage, @@ -109,16 +104,16 @@ if (JS_MODE) { assign( outs.fragColor, mainImage($xy(gl.gl_FragCoord), unis.resolution, unis.time) - ) - ]) + ), + ]), ], attribs: { - position: "vec2" + position: "vec2", }, uniforms: { resolution: ["vec2", [W, H]], - time: "float" - } + time: "float", + }, }); // compile model (attrib buffers) compileModel(ctx, model); diff --git a/examples/shader-ast-raymarch/src/index.ts b/examples/shader-ast-raymarch/src/index.ts index 01f896bdcf..843f084e71 100644 --- a/examples/shader-ast-raymarch/src/index.ts +++ b/examples/shader-ast-raymarch/src/index.ts @@ -18,7 +18,7 @@ import { Vec2Sym, vec3, Vec3Sym, - vec4 + vec4, } from "@thi.ng/shader-ast"; import { GLSLVersion, targetGLSL } from "@thi.ng/shader-ast-glsl"; import { canvasRenderer, targetJS } from "@thi.ng/shader-ast-js"; @@ -37,15 +37,9 @@ import { sdfBox3, sdfRepeat3, sdfSmoothUnion, - sdfSphere + sdfSphere, } from "@thi.ng/shader-ast-stdlib"; -import { - compileModel, - draw, - GLVec3, - quad, - shader -} from "@thi.ng/webgl"; +import { compileModel, draw, GLVec3, quad, shader } from "@thi.ng/webgl"; // set URL hash to "#2d" to enable JS Canvas2D version const JS_MODE = location.hash.indexOf("2d") >= 0; @@ -80,7 +74,7 @@ const scene = defn("vec2", "scene", ["vec3"], (pos) => { ), 1 ) - ) + ), ]; }); @@ -151,7 +145,7 @@ const mainImage = defn( ), 1 ) - ) + ), ]; } ); @@ -191,7 +185,7 @@ if (JS_MODE) { const eyePos = [ Math.cos(time) * 2.5, Math.cos(time / 2) * 0.7, - Math.sin(time) * 2.5 + Math.sin(time) * 2.5, ]; rt((frag) => fn(frag, size, eyePos, lightDir)); }, 16); @@ -206,8 +200,8 @@ if (JS_MODE) { model.shader = shader(ctx, { vs: (_, __, attribs) => [ defMain(() => [ - assign(GL.gl_Position, vec4(attribs.position, 0, 1)) - ]) + assign(GL.gl_Position, vec4(attribs.position, 0, 1)), + ]), ], fs: (gl, unis, _, outputs) => [ mainImage, @@ -220,17 +214,17 @@ if (JS_MODE) { unis.eyePos, unis.lightDir ) - ) - ]) + ), + ]), ], attribs: { - position: "vec2" + position: "vec2", }, uniforms: { eyePos: "vec3", lightDir: ["vec3", lightDir], - resolution: ["vec2", [W, H]] - } + resolution: ["vec2", [W, H]], + }, }); // compile model (attrib buffers) compileModel(ctx, model); @@ -242,7 +236,7 @@ if (JS_MODE) { model.uniforms!.eyePos = [ Math.cos(time) * 2.5, Math.cos(time / 2) * 0.7, - Math.sin(time) * 2.5 + Math.sin(time) * 2.5, ]; draw(model); }); diff --git a/examples/shader-ast-sdf2d/src/index.ts b/examples/shader-ast-sdf2d/src/index.ts index b22191c7ed..c3d5abc16d 100644 --- a/examples/shader-ast-sdf2d/src/index.ts +++ b/examples/shader-ast-sdf2d/src/index.ts @@ -14,7 +14,7 @@ import { vec2, Vec2Sym, vec3, - vec4 + vec4, } from "@thi.ng/shader-ast"; import { GLSLVersion, targetGLSL } from "@thi.ng/shader-ast-glsl"; import { canvasRenderer, targetJS } from "@thi.ng/shader-ast-js"; @@ -23,14 +23,9 @@ import { fit1101, sdfBox2, sdfSmoothUnion, - sdfTriangle2 + sdfTriangle2, } from "@thi.ng/shader-ast-stdlib"; -import { - compileModel, - draw, - quad, - shader -} from "@thi.ng/webgl"; +import { compileModel, draw, quad, shader } from "@thi.ng/webgl"; // set URL hash to "#2d" to enable JS Canvas2D version const JS_MODE = location.hash.indexOf("2d") >= 0; @@ -63,7 +58,7 @@ const scene = defn("float", "scene", ["vec2"], (pos) => { d1, sdfSmoothUnion(sdfSmoothUnion(d3, d2, float(0.5)), d1, float(0.5)) ), - ret(d1) + ret(d1), ]; }); @@ -85,7 +80,7 @@ const mainImage = defn("vec4", "mainImage", ["vec2", "vec2"], (frag, res) => { ), 1 ) - ) + ), ]; }); @@ -130,8 +125,8 @@ if (JS_MODE) { model.shader = shader(ctx, { vs: (gl, _, attribs) => [ defMain(() => [ - assign(gl.gl_Position, vec4(attribs.position, 0, 1)) - ]) + assign(gl.gl_Position, vec4(attribs.position, 0, 1)), + ]), ], fs: (gl, unis, _, outs) => [ mainImage, @@ -139,15 +134,15 @@ if (JS_MODE) { assign( outs.fragColor, mainImage($xy(gl.gl_FragCoord), unis.resolution) - ) - ]) + ), + ]), ], attribs: { - position: "vec2" + position: "vec2", }, uniforms: { - resolution: ["vec2", [W, H]] - } + resolution: ["vec2", [W, H]], + }, }); // compile model (attrib buffers) compileModel(ctx, model); diff --git a/examples/shader-ast-tunnel/src/index.ts b/examples/shader-ast-tunnel/src/index.ts index e05597f4b1..6db478fa0b 100644 --- a/examples/shader-ast-tunnel/src/index.ts +++ b/examples/shader-ast-tunnel/src/index.ts @@ -22,16 +22,20 @@ import { texture, vec2, Vec2Sym, - vec4 + vec4, } from "@thi.ng/shader-ast"; import { GLSLVersion, targetGLSL } from "@thi.ng/shader-ast-glsl"; -import { canvasRenderer, JS_DEFAULT_ENV, targetJS } from "@thi.ng/shader-ast-js"; +import { + canvasRenderer, + JS_DEFAULT_ENV, + targetJS, +} from "@thi.ng/shader-ast-js"; import { compileModel, draw, quad, shader, - texture as glTexture + texture as glTexture, } from "@thi.ng/webgl"; import TEX_URL from "../assets/tex.jpg"; @@ -68,7 +72,7 @@ const mainImage = defn( div(atan(div($y(p), $x(p))), float(Math.PI)) ) )), - ret(vec4(mul($xyz(texture(tex, uv)), r), float(1))) + ret(vec4(mul($xyz(texture(tex, uv)), r), float(1))), ]; } ); @@ -149,8 +153,8 @@ if (JS_MODE) { model.shader = shader(ctx, { vs: (gl, _, attribs) => [ defMain(() => [ - assign(gl.gl_Position, vec4(attribs.position, 0, 1)) - ]) + assign(gl.gl_Position, vec4(attribs.position, 0, 1)), + ]), ], fs: (gl, unis, _, outs) => [ mainImage, @@ -163,17 +167,17 @@ if (JS_MODE) { unis.time, unis.tex ) - ) - ]) + ), + ]), ], attribs: { - position: "vec2" + position: "vec2", }, uniforms: { resolution: ["vec2", [W, H]], time: "float", - tex: ["sampler2D", 0] - } + tex: ["sampler2D", 0], + }, }); model.textures = [glTexture(ctx, { image: tex, filter: ctx.LINEAR })]; diff --git a/examples/shader-ast-workers/src/index.ts b/examples/shader-ast-workers/src/index.ts index c630415ea4..6587c5edf6 100644 --- a/examples/shader-ast-workers/src/index.ts +++ b/examples/shader-ast-workers/src/index.ts @@ -31,7 +31,7 @@ forkJoin({ y1: id * rowsPerSlice, y2: (id + 1) * rowsPerSlice, id, - time + time, }), // re-join partial results (here, update canvas) join: (parts) => { @@ -41,7 +41,7 @@ forkJoin({ time.next(time.deref()! + 0.05); }, worker: "./worker.js", - numWorkers: NUM_WORKERS + numWorkers: NUM_WORKERS, }); const updatePixels = (parts: WorkerResult[]) => { diff --git a/examples/shader-ast-workers/src/worker.ts b/examples/shader-ast-workers/src/worker.ts index 3a43ac9b4a..0218cc12ed 100644 --- a/examples/shader-ast-workers/src/worker.ts +++ b/examples/shader-ast-workers/src/worker.ts @@ -18,7 +18,7 @@ import { Vec2Sym, vec3, Vec3Sym, - vec4 + vec4, } from "@thi.ng/shader-ast"; import { renderPixels, targetJS } from "@thi.ng/shader-ast-js"; import { @@ -36,15 +36,9 @@ import { sdfBox3, sdfRepeat3, sdfSmoothUnion, - sdfSphere + sdfSphere, } from "@thi.ng/shader-ast-stdlib"; -import { - comp, - map, - normRange, - slidingWindow, - step -} from "@thi.ng/transducers"; +import { comp, map, normRange, slidingWindow, step } from "@thi.ng/transducers"; import { sma } from "@thi.ng/transducers-stats"; import { NUM_WORKERS, WorkerJob, WorkerResult } from "./api"; @@ -76,7 +70,7 @@ const scene = defn("vec2", "scene", ["vec3"], (pos) => { ), 1 ) - ) + ), ]; }); @@ -154,7 +148,7 @@ const mainImage = defn( ), 1 ) - ) + ), ]; } ); @@ -182,7 +176,7 @@ self.addEventListener("message", (e) => { [ Math.cos(job.time) * 2.5, Math.cos(job.time / 2) * 0.7, - Math.sin(job.time) * 2.5 + Math.sin(job.time) * 2.5, ], // light dir [0.707, 0.707, 0], diff --git a/examples/svg-barchart/src/index.ts b/examples/svg-barchart/src/index.ts index 53e192ca6a..cd27828409 100644 --- a/examples/svg-barchart/src/index.ts +++ b/examples/svg-barchart/src/index.ts @@ -14,7 +14,7 @@ const mappedRange = ( // syntax sugar to create SVG line const line = (x1: number, y1: number, x2: number, y2: number) => [ "line", - { x1, y1, x2, y2 } + { x1, y1, x2, y2 }, ]; // reusuable axis tick & label combo @@ -41,7 +41,7 @@ const axisX = ({ axis: a, domain: d, range: r }: any) => [ "g", { "text-anchor": "middle" }, line(a[0], a[2], a[1], a[2]), - mapcat(tickX(a[2]), mappedRange(d[0], d[1], d[2], r[0], r[1])) + mapcat(tickX(a[2]), mappedRange(d[0], d[1], d[2], r[0], r[1])), ]; // y-axis with ticks as SVG group @@ -49,7 +49,7 @@ const axisY = ({ axis: a, domain: d, range: r }: any) => [ "g", { "text-anchor": "end" }, line(a[2], a[0], a[2], a[1]), - mapcat(tickY(a[2]), mappedRange(d[0], d[1], d[2], r[0], r[1])) + mapcat(tickY(a[2]), mappedRange(d[0], d[1], d[2], r[0], r[1])), ]; // mapping fn to create a single bar from `[domainPos, value]` @@ -64,8 +64,8 @@ const bar = ( x: fit(xx, xd[0], xd[1], xr[0], xr[1]) - 5, y, width: 10, - height: yr[0] - y - } + height: yr[0] - y, + }, ]; }; @@ -74,7 +74,7 @@ const barChart = (_: any, opts: any, values: any) => [ "svg", opts.attribs, ["g", { stroke: opts.axis, fill: opts.axis }, axisX(opts.x), axisY(opts.y)], - ["g", { fill: opts.fill }, map(bar(opts.x, opts.y), values)] + ["g", { fill: opts.fill }, map(bar(opts.x, opts.y), values)], ]; // one-off DOM creation @@ -88,23 +88,23 @@ renderOnce([ width: 500, height: 200, "font-size": "10px", - "font-family": "Menlo, sans-serif" + "font-family": "Menlo, sans-serif", }, x: { axis: [40, 490, 170], domain: [1980, 2021, 10], - range: [60, 480] + range: [60, 480], }, y: { axis: [170, 10, 40], domain: [0, 101, 25], - range: [160, 20] + range: [160, 20], }, axis: "#666", - fill: "#0cc" + fill: "#0cc", }, - map((year) => [year, Math.random() * 100], range(1980, 2020, 2)) - ] + map((year) => [year, Math.random() * 100], range(1980, 2020, 2)), + ], ]); if (process.env.NODE_ENV !== "production") { diff --git a/examples/svg-particles/src/index.ts b/examples/svg-particles/src/index.ts index 91c4cf3491..e2b06f6c91 100644 --- a/examples/svg-particles/src/index.ts +++ b/examples/svg-particles/src/index.ts @@ -27,8 +27,8 @@ const randomParticle = () => { cx: Math.random() * width, cy: Math.random() * height, r: (Math.random() * 6 + 3) | 0, - fill: "#" + U24((Math.random() * 0x1000000) | 0) - } + fill: "#" + U24((Math.random() * 0x1000000) | 0), + }, ]; }; @@ -42,7 +42,7 @@ const app = () => { return [ "svg", { width, height, __diff: false, __normalize: false }, - particles + particles, ]; }; diff --git a/examples/svg-waveform/src/components/button-group.ts b/examples/svg-waveform/src/components/button-group.ts index a1e3b0fb2e..023882243f 100644 --- a/examples/svg-waveform/src/components/button-group.ts +++ b/examples/svg-waveform/src/components/button-group.ts @@ -5,6 +5,6 @@ export function buttonGroup(ctx: AppContext, ...buttons: any[]) { return [ "section", ctx.ui.buttongroup, - buttons.map((bt) => [button, ...bt]) + buttons.map((bt) => [button, ...bt]), ]; } diff --git a/examples/svg-waveform/src/components/event-link.ts b/examples/svg-waveform/src/components/event-link.ts index a1ae8a523f..d085e6c6f1 100644 --- a/examples/svg-waveform/src/components/event-link.ts +++ b/examples/svg-waveform/src/components/event-link.ts @@ -1,7 +1,6 @@ import type { Event } from "@thi.ng/interceptors"; import type { AppContext } from "../api"; - /** * Customizable hyperlink component emitting given event on event bus * when clicked. @@ -24,8 +23,8 @@ export function eventLink( onclick: (e: any) => { e.preventDefault(); ctx.bus.dispatch(event); - } + }, }, - body + body, ]; } diff --git a/examples/svg-waveform/src/components/main.ts b/examples/svg-waveform/src/components/main.ts index e5da04627a..6c553c82c4 100644 --- a/examples/svg-waveform/src/components/main.ts +++ b/examples/svg-waveform/src/components/main.ts @@ -3,7 +3,6 @@ import { sidebar } from "./sidebar"; import { waveform } from "./waveform"; import type { AppContext } from "../api"; - export function main(ctx: AppContext) { const bar = sidebar(ctx, ...SLIDERS); return () => [ @@ -19,7 +18,7 @@ export function main(ctx: AppContext) { res: 1000, stroke: "#f04", fill1: "#f04", - fill2: "#ff0" - }) + fill2: "#ff0", + }), ]; } diff --git a/examples/svg-waveform/src/components/sidebar.ts b/examples/svg-waveform/src/components/sidebar.ts index 758deffd81..7b4addf784 100644 --- a/examples/svg-waveform/src/components/sidebar.ts +++ b/examples/svg-waveform/src/components/sidebar.ts @@ -4,7 +4,6 @@ import { link } from "./link"; import { slider, SliderOpts } from "./slider"; import type { AppContext } from "../api"; - export function sidebar(ctx: AppContext, ...specs: SliderOpts[]) { const sliders = specs.map((s) => slider(ctx, s)); return [ @@ -19,7 +18,7 @@ export function sidebar(ctx: AppContext, ...specs: SliderOpts[]) { ["code", "Ctrl+Z"], " / ", ["code", "Ctrl+Y"], - ". The last 1000 edits are stored." + ". The last 1000 edits are stored.", ], [ "div", @@ -27,15 +26,15 @@ export function sidebar(ctx: AppContext, ...specs: SliderOpts[]) { [ link, "https://github.com/thi-ng/umbrella/tree/develop/examples/svg-waveform", - "Source" + "Source", ], ["br"], "Made with ", [ link, "https://github.com/thi-ng/umbrella/tree/develop/packages/hdom", - "@thi.ng/hdom" - ] - ] + "@thi.ng/hdom", + ], + ], ]; } diff --git a/examples/svg-waveform/src/components/slider.ts b/examples/svg-waveform/src/components/slider.ts index 4991907485..1f7cfdc340 100644 --- a/examples/svg-waveform/src/components/slider.ts +++ b/examples/svg-waveform/src/components/slider.ts @@ -29,11 +29,11 @@ export function slider(ctx: AppContext, opts: SliderOpts) { oninput: (e: Event) => ctx.bus.dispatch([ opts.event, - parseFloat((e.target).value) + parseFloat((e.target).value), ]), min: 0, max: 100, - step: 1 + step: 1, }, opts ); @@ -46,8 +46,8 @@ export function slider(ctx: AppContext, opts: SliderOpts) { ...ctx.ui.slider.range, ...opts, type: "range", - value: (ctx.views)[opts.view].deref() - } + value: (ctx.views)[opts.view].deref(), + }, ], [ "div", @@ -58,9 +58,9 @@ export function slider(ctx: AppContext, opts: SliderOpts) { ...ctx.ui.slider.number, ...opts, type: "number", - value: (ctx.views)[opts.view].deref() - } - ] - ] + value: (ctx.views)[opts.view].deref(), + }, + ], + ], ]; } diff --git a/examples/svg-waveform/src/components/waveform.ts b/examples/svg-waveform/src/components/waveform.ts index 2bd568a211..76d3291558 100644 --- a/examples/svg-waveform/src/components/waveform.ts +++ b/examples/svg-waveform/src/components/waveform.ts @@ -1,15 +1,5 @@ -import { - defs, - linearGradient, - polyline, - svg -} from "@thi.ng/hiccup-svg"; -import { - map, - range, - reduce, - reducer -} from "@thi.ng/transducers"; +import { defs, linearGradient, polyline, svg } from "@thi.ng/hiccup-svg"; +import { map, range, reduce, reducer } from "@thi.ng/transducers"; import type { AppContext } from "../api"; const TAU = Math.PI * 2; @@ -42,7 +32,11 @@ export function waveform(ctx: AppContext, opts: WaveformOpts) { "grad", [0, 0], [0, 1], - [[0, opts.fill2], [0.5, opts.fill1], [1, opts.fill2]] + [ + [0, opts.fill2], + [0.5, opts.fill1], + [1, opts.fill2], + ] ) ), polyline( @@ -51,16 +45,16 @@ export function waveform(ctx: AppContext, opts: WaveformOpts) { ...map( (x) => [ x, - osc(x, phase, fscale, amp, opts.harmonics, opts.hstep) + osc(x, phase, fscale, amp, opts.harmonics, opts.hstep), ], range(opts.res) ), - [opts.res, 0] + [opts.res, 0], ], { stroke: opts.stroke, fill: "url(#grad)", - "stoke-linejoin": "round" + "stoke-linejoin": "round", } ) ); diff --git a/examples/svg-waveform/src/config.ts b/examples/svg-waveform/src/config.ts index 56bfb19307..31ffb264f1 100644 --- a/examples/svg-waveform/src/config.ts +++ b/examples/svg-waveform/src/config.ts @@ -16,7 +16,7 @@ export const CONFIG: AppConfig = { // and only side effect functions execute any "real" work. // Docs here: - // https://github.com/thi-ng/umbrella/blob/master/packages/interceptors/src/event-bus.ts#L14 + // https://github.com/thi-ng/umbrella/blob/develop/packages/interceptors/src/event-bus.ts#L14 events: { // generate event handlers from imported slider definitions @@ -32,10 +32,10 @@ export const CONFIG: AppConfig = { events[spec.event] = [ ensureParamRange(spec.min, spec.max), snapshot(), - valueSetter(spec.view) + valueSetter(spec.view), ]; return events; - }, {}) + }, {}), }, // custom side effects @@ -53,7 +53,7 @@ export const CONFIG: AppConfig = { freq: 3, harmonics: 20, hstep: 2, - phase: 0 + phase: 0, }, // derived view declarations @@ -67,7 +67,7 @@ export const CONFIG: AppConfig = { freq: "freq", phase: "phase", harmonics: "harmonics", - hstep: "hstep" + hstep: "hstep", }, // component CSS class config using http://tachyons.io/ these @@ -76,7 +76,7 @@ export const CONFIG: AppConfig = { ui: { button: { class: - "pointer bg-black hover-bg-blue bg-animate white pa2 mr1 w-100 ttu b tracked-tight" + "pointer bg-black hover-bg-blue bg-animate white pa2 mr1 w-100 ttu b tracked-tight", }, buttongroup: { class: "flex mb2" }, footer: { class: "absolute bottom-1" }, @@ -86,8 +86,8 @@ export const CONFIG: AppConfig = { slider: { root: { class: "mb3 ttu b tracked-tight" }, range: { class: "w-100" }, - number: { class: "fr w3 tr ttu bn bg-transparent" } + number: { class: "fr w3 tr ttu bn bg-transparent" }, }, - waveform: { class: "w-100 h-100" } - } + waveform: { class: "w-100 h-100" }, + }, }; diff --git a/examples/svg-waveform/src/effects.ts b/examples/svg-waveform/src/effects.ts index 69901d8cb0..65dd20a07c 100644 --- a/examples/svg-waveform/src/effects.ts +++ b/examples/svg-waveform/src/effects.ts @@ -1,7 +1,7 @@ // best practice tip: define event & effect names as consts or enums // and avoid hardcoded strings for more safety and easier refactoring // also see pre-defined event handlers & interceptors in @thi.ng/atom: -// https://github.com/thi-ng/umbrella/blob/master/packages/interceptors/src/api.ts#L14 +// https://github.com/thi-ng/umbrella/blob/develop/packages/interceptors/src/api.ts#L14 /** * Effect description diff --git a/examples/svg-waveform/src/events.ts b/examples/svg-waveform/src/events.ts index e57f04400e..838e474105 100644 --- a/examples/svg-waveform/src/events.ts +++ b/examples/svg-waveform/src/events.ts @@ -3,7 +3,7 @@ import { EV_UNDO, EV_REDO } from "@thi.ng/interceptors"; // best practice tip: define event & effect names as consts or enums // and avoid hardcoded strings for more safety and easier refactoring // also see pre-defined event handlers & interceptors in @thi.ng/atom: -// https://github.com/thi-ng/umbrella/blob/master/packages/interceptors/src/api.ts#L14 +// https://github.com/thi-ng/umbrella/blob/develop/packages/interceptors/src/api.ts#L14 export const SET_AMP = "set-amp"; export const SET_FREQ = "set-freq"; diff --git a/examples/svg-waveform/src/sliders.ts b/examples/svg-waveform/src/sliders.ts index 48874ac319..646f027aa8 100644 --- a/examples/svg-waveform/src/sliders.ts +++ b/examples/svg-waveform/src/sliders.ts @@ -11,7 +11,7 @@ export const SLIDERS = [ label: "frequency", min: 1, max: 10, - step: 0.01 + step: 0.01, }, { event: ev.SET_AMP, @@ -19,14 +19,14 @@ export const SLIDERS = [ label: "amplitude", min: 0, max: 4, - step: 0.01 + step: 0.01, }, { event: ev.SET_HARMONICS, view: "harmonics", label: "harmonics", min: 1, - max: 20 + max: 20, }, { event: ev.SET_HSTEP, @@ -34,6 +34,6 @@ export const SLIDERS = [ label: "h step", min: 1, max: 4, - step: 0.01 - } + step: 0.01, + }, ]; diff --git a/examples/talk-slides/src/components.ts b/examples/talk-slides/src/components.ts index 55b6e87491..f2625e8539 100644 --- a/examples/talk-slides/src/components.ts +++ b/examples/talk-slides/src/components.ts @@ -1,40 +1,40 @@ export const link = (ctx: any, href: string, body?: any) => [ "a", { ...ctx.link, href }, - body || href + body || href, ]; export const twitterLink = (_: any, username: string) => [ link, `https://twitter.com/${username}`, - "@" + username + "@" + username, ]; export const navButton = (ctx: any, step: number) => [ "a", { ...ctx.navButton[step < 0 ? "prev" : "next"], - onclick: () => ctx.slide.next(step) + onclick: () => ctx.slide.next(step), }, - step < 0 ? "<" : ">" + step < 0 ? "<" : ">", ]; export const footer = (ctx: any, ...body: any[]) => [ "footer", ctx.footer, - ...body + ...body, ]; export const codeBlock = (ctx: any, body: string) => [ "pre", ctx.code, - body.trim() + body.trim(), ]; export const list = (ctx: any, ...items: any[]) => [ "ul", ctx.list, - ...items.map((i) => ["li", i]) + ...items.map((i) => ["li", i]), ]; export const titlePage = ( @@ -46,7 +46,7 @@ export const titlePage = ( "div", { ...ctx.titlePage.root, - class: `${ctx.titlePage.root.class} ${clazz}` + class: `${ctx.titlePage.root.class} ${clazz}`, }, [ "div", @@ -54,23 +54,23 @@ export const titlePage = ( [ "div", ["h1", ctx.titlePage.title, title], - ["div", ctx.titlePage.body, ...body] - ] - ] + ["div", ctx.titlePage.body, ...body], + ], + ], ]; export const contentPage = (ctx: any, title: string, ...body: any[]) => [ "div", ctx.contentPage.root, ["h2", ctx.contentPage.title, title], - ["div", ctx.contentPage.body, ...body] + ["div", ctx.contentPage.body, ...body], ]; export const quotePage = (ctx: any, quote: any[], author: string) => [ "div", ctx.quotePage.root, ["div", ctx.quotePage.quote, ...quote.map((x) => ["div", x])], - ["div", ctx.quotePage.author, `β€” ${author}`] + ["div", ctx.quotePage.author, `β€” ${author}`], ]; export const bgImagePage = ( @@ -85,16 +85,16 @@ export const bgImagePage = ( style: { "background-image": `url(${src})`, "background-size": "cover", - "background-position": "center" - } + "background-position": "center", + }, }, - ...extra + ...extra, ]; export const imagePage = (ctx: any, clazz: string, src: string) => [ "div", { ...ctx.imagePage.root, class: `${ctx.imagePage.root.class} ${clazz}` }, - ["div.w-100", ["img", { ...ctx.imagePage.img, src }]] + ["div.w-100", ["img", { ...ctx.imagePage.img, src }]], ]; export const ytVideo = (ctx: any, id: string) => [ @@ -105,17 +105,17 @@ export const ytVideo = (ctx: any, id: string) => [ ...ctx.youtube, src: `https://www.youtube.com/embed/${id}?rel=0&showinfo=0`, frameborder: 0, - allowfullscreen: true - } + allowfullscreen: true, + }, ], [navButton, -1], - [navButton, 1] + [navButton, 1], ]; export const app = (slideCount: number, ctx: any) => ({ slideID, content, - time + time, }: any) => [ "div", ctx.app.root, @@ -124,11 +124,11 @@ export const app = (slideCount: number, ctx: any) => ({ footer, ["div.w-33.tl", ctx.app.credits], ["div.w-34.tc", time], - ["div.w-33.tr", `${slideID} / ${slideCount - 1}`] - ] + ["div.w-33.tr", `${slideID} / ${slideCount - 1}`], + ], ]; export const printApp = (ctx: any, slides: any[]) => [ "div", - ...slides.map((content) => ["div.slide", ctx.app.root, content]) + ...slides.map((content) => ["div.slide", ctx.app.root, content]), ]; diff --git a/examples/talk-slides/src/config.ts b/examples/talk-slides/src/config.ts index 85cf93ba8b..b23bbc485f 100644 --- a/examples/talk-slides/src/config.ts +++ b/examples/talk-slides/src/config.ts @@ -5,7 +5,7 @@ export const ctx: any = { // theme attribs for various components app: { root: { class: "w-100 vh-100 sans-serif bg-lightest-blue" }, - credits: "ClojureX 2018" + credits: "ClojureX 2018", }, footer: { class: "fixed bottom-1 f7 gray flex w-100 ph5 noprint" }, @@ -16,13 +16,13 @@ export const ctx: any = { prev: { class: "fixed top-50 left-0 z-999 pa3 bg-black white link f3 noprint", - href: "#" + href: "#", }, next: { class: "fixed top-50 right-0 z-999 pa3 bg-black white link f3 noprint", - href: "#" - } + href: "#", + }, }, code: { class: "pa3 f3 bg-dark-blue white code" }, @@ -31,19 +31,19 @@ export const ctx: any = { root: { class: "flex items-center vh-100" }, wrapper: { class: "tc w-100" }, title: { class: "f-headline lh-title ma0" }, - body: { class: "f2 lh-copy" } + body: { class: "f2 lh-copy" }, }, contentPage: { root: { class: "pa5" }, title: { class: "ma0 f-subheadline" }, - body: { class: "mt3 f2 lh-copy" } + body: { class: "mt3 f2 lh-copy" }, }, quotePage: { root: { class: "vh-100 pa5 bg-yellow" }, quote: { class: "georgia f1 lh-copy measure-narrow i" }, - author: { class: "mt3 f2" } + author: { class: "mt3 f2" }, }, bgImagePage: { class: "vh-100 pa5 f2 lh-copy" }, @@ -52,11 +52,11 @@ export const ctx: any = { root: { class: "vh-100 flex items-center tc" }, img: { class: "mw-100", - style: { "max-height": "90vh" } - } + style: { "max-height": "90vh" }, + }, }, youtube: { - class: "w-100 vh-100 bg-black" - } + class: "w-100 vh-100 bg-black", + }, }; diff --git a/examples/talk-slides/src/index.ts b/examples/talk-slides/src/index.ts index 1c6ef7735c..afdab73135 100644 --- a/examples/talk-slides/src/index.ts +++ b/examples/talk-slides/src/index.ts @@ -5,16 +5,10 @@ import { fromInterval, stream, Stream, - sync + sync, } from "@thi.ng/rstream"; import { padLeft } from "@thi.ng/strings"; -import { - dedupe, - map, - reducer, - scan, - sideEffect -} from "@thi.ng/transducers"; +import { dedupe, map, reducer, scan, sideEffect } from "@thi.ng/transducers"; import { updateDOM } from "@thi.ng/transducers-hdom"; import { app, printApp } from "./components"; import { ctx } from "./config"; @@ -66,8 +60,8 @@ const main = sync({ content: slideID.transform(map((id: number) => SLIDES[id])), time: fromInterval(1000).transform( map((x: number) => `${D2((x / 60) | 0)}:${D2(x % 60)}`) - ) - } + ), + }, }); if (INTERACTIVE) { diff --git a/examples/talk-slides/src/slides.ts b/examples/talk-slides/src/slides.ts index 51d90f5f9d..c1a65a6c88 100644 --- a/examples/talk-slides/src/slides.ts +++ b/examples/talk-slides/src/slides.ts @@ -8,7 +8,7 @@ import { quotePage, titlePage, twitterLink, - ytVideo + ytVideo, } from "./components"; // each item in this array is an hdom tree of a single slide @@ -22,7 +22,7 @@ export const SLIDES: any[] = [ ["br"], [twitterLink, "toxi"], ["br"], - [twitterLink, "thing_umbrella"] + [twitterLink, "thing_umbrella"], ], [ @@ -33,7 +33,7 @@ export const SLIDES: any[] = [ ["br"], [twitterLink, "toxi"], ["br"], - [twitterLink, "thing_umbrella"] + [twitterLink, "thing_umbrella"], ], [ @@ -44,7 +44,7 @@ export const SLIDES: any[] = [ ["br"], [twitterLink, "toxi"], ["br"], - [twitterLink, "thing_umbrella"] + [twitterLink, "thing_umbrella"], ], [ @@ -55,7 +55,7 @@ export const SLIDES: any[] = [ ["br"], [twitterLink, "toxi"], ["br"], - [twitterLink, "thing_umbrella"] + [twitterLink, "thing_umbrella"], ], [ @@ -66,7 +66,7 @@ export const SLIDES: any[] = [ ["br"], [twitterLink, "toxi"], ["br"], - [twitterLink, "thing_umbrella"] + [twitterLink, "thing_umbrella"], ], [ @@ -74,7 +74,7 @@ export const SLIDES: any[] = [ "What brought you to Clojure?", [ "small", - "Filling in this pre-meeting questionnaire is mandatory! Answers will be reviewed during session." + "Filling in this pre-meeting questionnaire is mandatory! Answers will be reviewed during session.", ], [ list, @@ -86,8 +86,8 @@ export const SLIDES: any[] = [ "Hosted / x-platform", "Amount & clarity of thought", "Transducers, core.async, clojure.spec", - "Gateway to various awesome tools / concepts" - ] + "Gateway to various awesome tools / concepts", + ], ], [ @@ -104,8 +104,8 @@ export const SLIDES: any[] = [ "Chris Granger", "Anthony Grimes (R.I.P.)", "Christophe Grand", - ["strong", "...all of you!"] - ] + ["strong", "...all of you!"], + ], ], [ @@ -118,8 +118,8 @@ export const SLIDES: any[] = [ "1995 - 2011 : C89, Java, JavaScript, Lingo, ActionScript, Processing", "1995 - 1997 : Scheme, Common Lisp", "2011 - 2017 : Clojure/script, C11, Forth, ARM", - "2016 - ... : TypeScript, C11, Go, Clojurescript" - ] + "2016 - ... : TypeScript, C11, Go, Clojurescript", + ], ], [ @@ -131,15 +131,15 @@ export const SLIDES: any[] = [ ["li.transition.red", "1988 - 1994 : Z80 / 6502 assembly, Forth"], [ "li", - "1995 - 2011 : C89, Java, JavaScript, Lingo, ActionScript, Processing" + "1995 - 2011 : C89, Java, JavaScript, Lingo, ActionScript, Processing", ], ["li", "1995 - 1997 : Scheme, Common Lisp"], [ "li.transition.red", - "2011 - 2017 : Clojure/script, C11, Forth, ARM" + "2011 - 2017 : Clojure/script, C11, Forth, ARM", ], - ["li", "2016 - ... : TypeScript, C11, Go, Clojurescript"] - ] + ["li", "2016 - ... : TypeScript, C11, Go, Clojurescript"], + ], ], [ @@ -151,12 +151,12 @@ export const SLIDES: any[] = [ ["li.transition", "1988 - 1994 : Z80 / 6502 assembly, Forth"], [ "li.transition.red", - "1995 - 2011 : C89, Java, JavaScript, Lingo, ActionScript, Processing" + "1995 - 2011 : C89, Java, JavaScript, Lingo, ActionScript, Processing", ], ["li", "1995 - 1997 : Scheme, Common Lisp"], ["li.transition", "2011 - 2017 : Clojure/script, C11, Forth, ARM"], - ["li", "2016 - ... : TypeScript, C11, Go, Clojurescript"] - ] + ["li", "2016 - ... : TypeScript, C11, Go, Clojurescript"], + ], ], [contentPage, "And so it begins..."], @@ -178,8 +178,8 @@ export const SLIDES: any[] = [ "Data visualization (SVG / WebGL / rendered)", "Declarative WebGL, OpenGL & GPGPU/OpenCL wrappers", "Linked data / graph tools, query engines, SPARQL-like DSLs", - "Monthly workshops (2015 - 2016)" - ] + "Monthly workshops (2015 - 2016)", + ], ], [titlePage, "bg-black white", "Exponential Growth"], @@ -191,13 +191,16 @@ export const SLIDES: any[] = [ [ contentPage, "Gyroid formula", - [codeBlock, `g(x, y, z) = abs(dot(cos([x y z]), sin([z x y])))`] + [codeBlock, `g(x, y, z) = abs(dot(cos([x y z]), sin([z x y])))`], ], [ contentPage, "Gyroid formula", - [codeBlock, `g(x, y, z) = abs(cosx * sinz + cosy * sinx + cosz * siny)`] + [ + codeBlock, + `g(x, y, z) = abs(cosx * sinz + cosy * sinx + cosz * siny)`, + ], ], [ @@ -217,8 +220,8 @@ export const SLIDES: any[] = [ (defn gyroid [[x y z] t] "Evaluates gyroid function at point p and subtracts iso threshold t." - (- (abs-gyroid-sum x y z) t))` - ] + (- (abs-gyroid-sum x y z) t))`, + ], ], [ @@ -234,34 +237,34 @@ export const SLIDES: any[] = [ (+ (* (Math/cos x) (Math/sin z)) (* (Math/cos y) (Math/sin x)) (* (Math/cos z) (Math/sin y)))) - t))` + t))`, ], - "Now evaluate for each XYZ cell in a volumetric grid..." + "Now evaluate for each XYZ cell in a volumetric grid...", ], [ bgImagePage, "bg-black", "./assets/svo/0000.jpg", - ["div.f1.gray", "2", ["sup", "3", ["sup", 3]], ["br"], "8 x 8 x 8"] + ["div.f1.gray", "2", ["sup", "3", ["sup", 3]], ["br"], "8 x 8 x 8"], ], [ bgImagePage, "bg-black", "./assets/svo/0001.jpg", - ["div.f1.gray", "2", ["sup", "4", ["sup", 3]], ["br"], "16 x 16 x 16"] + ["div.f1.gray", "2", ["sup", "4", ["sup", 3]], ["br"], "16 x 16 x 16"], ], [ bgImagePage, "bg-black", "./assets/svo/0002.jpg", - ["div.f1.gray", "2", ["sup", "5", ["sup", 3]], ["br"], "32 x 32 x 32"] + ["div.f1.gray", "2", ["sup", "5", ["sup", 3]], ["br"], "32 x 32 x 32"], ], [ bgImagePage, "bg-black", "./assets/svo/0003.jpg", - ["div.f1.gray", "2", ["sup", "6", ["sup", 3]], ["br"], "64 x 64 x 64"] + ["div.f1.gray", "2", ["sup", "6", ["sup", 3]], ["br"], "64 x 64 x 64"], ], [ bgImagePage, @@ -272,8 +275,8 @@ export const SLIDES: any[] = [ "2", ["sup", "7", ["sup", 3]], ["br"], - "128 x 128 x 128" - ] + "128 x 128 x 128", + ], ], [ bgImagePage, @@ -284,8 +287,8 @@ export const SLIDES: any[] = [ "2", ["sup", "8", ["sup", 3]], ["br"], - "256 x 256 x 256" - ] + "256 x 256 x 256", + ], ], [ bgImagePage, @@ -296,8 +299,8 @@ export const SLIDES: any[] = [ "2", ["sup", "9", ["sup", 3]], ["br"], - "512 x 512 x 512" - ] + "512 x 512 x 512", + ], ], [ bgImagePage, @@ -308,8 +311,8 @@ export const SLIDES: any[] = [ "2", ["sup", "10", ["sup", 3]], ["br"], - "(1+ billion samples!)" - ] + "(1+ billion samples!)", + ], ], [bgImagePage, "bg-black", "./assets/svo/0008.jpg"], [bgImagePage, "bg-black", "./assets/svo/0009.jpg"], @@ -345,7 +348,7 @@ export const SLIDES: any[] = [ [ link, "http://www.chilton-computing.org.uk/acl/literature/books/gamesplaying/p004.htm", - "chilton-computing.org.uk/acl/literature/books/gamesplaying/" + "chilton-computing.org.uk/acl/literature/books/gamesplaying/", ], [ codeBlock, @@ -365,8 +368,8 @@ begin next i: end; copy next generation into this generation; goto loop; -end;` - ] +end;`, + ], ], [imagePage, "bg-black", "./assets/holo/0001.jpg"], @@ -387,8 +390,8 @@ end;` [ (+ (Math/sin (* a y)) (Math/cos (* (* b x) x))) (+ (Math/sin (* (* c x) x)) (Math/cos (* d y))) - ])` - ] + ])`, + ], ], [imagePage, "bg-black", "./assets/lcom/0000.jpg"], @@ -414,8 +417,8 @@ end;` ["code", "f-f-f-fs"], ["code", "f-f-f-ff-f-f-fs"], ["code", "f-f-f-ff-f-f-ff-f-f-fs"], - " etc." - ] + " etc.", + ], ], [ @@ -436,8 +439,8 @@ end;` { :fwd [:fwd], :left [:left], :right [:right] :push [:push], :pop [:pop] - })` - ] + })`, + ], ], [ @@ -452,8 +455,8 @@ end;` (replace valid-syms src)) (parse "-yf+xfx+fy-") -; (:left :y :fwd :right :x :fwd :x :right :fwd :y :left)` - ] +; (:left :y :fwd :right :x :fwd :x :right :fwd :y :left)`, + ], ], [ @@ -475,8 +478,8 @@ end;` last)) (def rules - {:x (parse "-yf+xfx+fy-") :y (parse "+xf-yfy-fx+") :start [:x]})` - ] + {:x (parse "-yf+xfx+fy-") :y (parse "+xf-yfy-fx+") :start [:x]})`, + ], ], [ @@ -499,8 +502,8 @@ end;` ; :fwd :x :right :left) (count (expand-with rules 10)) -; 218451` - ] +; 218451`, + ], ], [bgImagePage, "bg-black", "./assets/morphogen/20140925-desertrose.jpg"], @@ -540,18 +543,18 @@ end;` [ `β€œI still believe in abstraction, but now I know that one ends with abstraction, not starts with it. I learned that one has to adapt - abstractions to reality and not the other way around.”` + abstractions to reality and not the other way around.”`, ], - "β€ŠAlexander Stepanov" + "β€ŠAlexander Stepanov", ], [ quotePage, [ `"I'm never bored by simplicity. Show me a simpler way to do anything - that I'm doing. I will jump on it."` + that I'm doing. I will jump on it."`, ], - "Charles Moore" + "Charles Moore", ], [ @@ -568,8 +571,8 @@ end;` "Transducers, core.async, clojure.spec", "Amount & quality of innovation", "Maturity / Community", - "Gateway to various awesome tools / concepts" - ] + "Gateway to various awesome tools / concepts", + ], ], [ @@ -586,20 +589,23 @@ end;` ["li.transition.o-0", "Transducers, core.async, clojure.spec"], ["li.transition.o-0", "Amount & quality of innovation"], ["li", "Maturity / Community"], - ["li.transition.o-0", "Gateway to various awesome tools / concepts"] - ] + [ + "li.transition.o-0", + "Gateway to various awesome tools / concepts", + ], + ], ], [ quotePage, [`"Weeks of coding can save you`, `hours of planning."`], - "Unknown" + "Unknown", ], [ quotePage, [`"Weeks of planning can save you`, `hours of coding."`], - "Unknown" + "Unknown", ], [ @@ -614,8 +620,8 @@ end;` "Implementation effort of custom datatypes", "Have to resort to macros to work around quirks / achieve DRY", `Effort vs. gain unpredictable/unacceptable (IMHO)`, - `Protocol discrepancies between CLJ/CLJS` - ] + `Protocol discrepancies between CLJ/CLJS`, + ], ], [ @@ -630,17 +636,17 @@ end;` "Tree editing (GA/GP, spatial accel etc.)", "Media processing", "Web workers (e.g. w/ SharedArrayBuffer)", - "GPU / hardware / low-level interop (e.g. WASM)" + "GPU / hardware / low-level interop (e.g. WASM)", ], - ["div.f4", ["sup", "*"], "realtime"] + ["div.f4", ["sup", "*"], "realtime"], ], [ quotePage, [ - `"I would guess that most computers don't compute, they move bytes around."` + `"I would guess that most computers don't compute, they move bytes around."`, ], - "Charles Moore" + "Charles Moore", ], [titlePage, "bg-black white", "CLJ(S) vs ES6"], @@ -649,7 +655,7 @@ end;` contentPage, "Multi-methods (CLJS)", "Vector addition", - [codeBlock, `(defmulti vadd (fn [a b] (count a)))`] + [codeBlock, `(defmulti vadd (fn [a b] (count a)))`], ], [ @@ -664,8 +670,8 @@ end;` [(+ (a 0) (b 0)) (+ (a 1) (b 1))]) (time (dotimes [i 1e7] (vadd [1 2] [10 20]))) -; "Elapsed time: 3362.786341 msecs"` - ] +; "Elapsed time: 3362.786341 msecs"`, + ], ], [ @@ -680,8 +686,8 @@ end;` [(+ (a 0) (b 0)) (+ (a 1) (b 1)) (+ (a 2) (b 2))]) (time (dotimes [i 1e7] (vadd [1 2 3] [10 20 30]))) -; "Elapsed time: 3942.254367 msecs"` - ] +; "Elapsed time: 3942.254367 msecs"`, + ], ], [ @@ -696,9 +702,9 @@ end;` #js [(+ (aget a 0) (aget b 0)) (+ (aget a 1) (aget b 1))]) (time (dotimes [i 1e7] (vadd #js [1 2] #js [10 20]))) -; "Elapsed time: 1905.684968 msecs"` +; "Elapsed time: 1905.684968 msecs"`, ], - "~1.8x faster, but brittle solution" + "~1.8x faster, but brittle solution", ], [ @@ -713,8 +719,8 @@ end;` (mapv (fn [aa bb] (+ aa bb)) a b)) (time (dotimes [i 1e7] (add [1 2 3 4 5 6 7 8] [1 2 3 4 5 6 7 8]))) -; "Elapsed time: 36108.277508 msecs"` - ] +; "Elapsed time: 36108.277508 msecs"`, + ], ], [ @@ -732,9 +738,9 @@ end;` (persistent! acc)))) (time (dotimes [i 1e7] (add [1 2 3 4 5 6 7 8] [1 2 3 4 5 6 7 8]))) -; "Elapsed time: 15168.490184 msecs"` +; "Elapsed time: 15168.490184 msecs"`, ], - "2.4x faster, but hardly idiomatic" + "2.4x faster, but hardly idiomatic", ], [ @@ -750,8 +756,8 @@ vadd = defmulti((a, b) => a.length); vadd.add(2, (a, b) => [a[0] + b[0], a[1] + b[1]]); b.bench(() => vadd([1, 2], [10, 20]), 1e7); -// 544ms` - ] +// 544ms`, + ], ], [ @@ -764,9 +770,9 @@ b.bench(() => vadd([1, 2], [10, 20]), 1e7); vadd.add(3, (a, b) => [a[0] + b[0], a[1] + b[1], a[2] + b[2]]) bench(() => vadd([1, 2, 3], [10, 20, 30]), 1e7) -// 584ms` +// 584ms`, ], - "6x faster" + "6x faster", ], [ @@ -779,10 +785,10 @@ bench(() => vadd([1, 2, 3], [10, 20, 30]), 1e7) vadd.add(DEFAULT, (a, b) => a.map((a, i) => a + b[i])) bench(() => add([1, 2, 3, 4, 5, 6, 7, 8], [1, 2, 3, 4, 5, 6, 7, 8]), 1e7) -// 698ms` +// 698ms`, ], ["div", "only ~100ms more than Vec3"], - ["div", "50x faster than idiomatic CLJS"] + ["div", "50x faster than idiomatic CLJS"], ], [titlePage, "", [link, "http://thi.ng/umbrella", "thi.ng/umbrella"]], @@ -793,9 +799,9 @@ bench(() => add([1, 2, 3, 4, 5, 6, 7, 8], [1, 2, 3, 4, 5, 6, 7, 8]), 1e7) `"Society created institutions in order to serve society. [...] these institutions have all become counterproductive to their original intent because they now exist to benefit -themselves rather than the betterment of society."` +themselves rather than the betterment of society."`, ], - "Ivan Illich" + "Ivan Illich", ], [ @@ -808,6 +814,6 @@ themselves rather than the betterment of society."` ["br"], [link, "https://medium.com/@thi.ng", "medium.com/@thi.ng"], ["br"], - ["p.blue", "media.thi.ng/2018/talks/clojurex/"] - ] + ["p.blue", "media.thi.ng/2018/talks/clojurex/"], + ], ]; diff --git a/examples/text-canvas/src/index.ts b/examples/text-canvas/src/index.ts index fb133d8614..19229a5397 100644 --- a/examples/text-canvas/src/index.ts +++ b/examples/text-canvas/src/index.ts @@ -1,16 +1,5 @@ -import { - add, - osc, - saw, - sin -} from "@thi.ng/dsp"; -import { - aabb, - center, - rect, - Rect, - vertices -} from "@thi.ng/geom"; +import { add, osc, saw, sin } from "@thi.ng/dsp"; +import { aabb, center, rect, Rect, vertices } from "@thi.ng/geom"; import { concat, lookAt, @@ -18,7 +7,7 @@ import { project3, rotationX44, rotationY44, - viewport + viewport, } from "@thi.ng/matrices"; import { beginClip, @@ -33,7 +22,7 @@ import { FG_YELLOW, FMT_HTML_TACHYONS, line, - toString + toString, } from "@thi.ng/text-canvas"; import { add3 } from "@thi.ng/vectors"; @@ -57,7 +46,7 @@ const edges = [ [0, 4], [1, 5], [2, 6], - [3, 7] + [3, 7], ]; // animated parameters @@ -78,7 +67,7 @@ const instances = [ [0, -1, 0], [0, 1, 0], [0, 0, -1], - [0, 0, 1] + [0, 0, 1], ]; const root = document.getElementById("app"); diff --git a/examples/todo-list/src/index.ts b/examples/todo-list/src/index.ts index e0c7f17e59..52560262fb 100644 --- a/examples/todo-list/src/index.ts +++ b/examples/todo-list/src/index.ts @@ -1,9 +1,4 @@ -import { - defAtom, - defCursor, - defHistory, - defView -} from "@thi.ng/atom"; +import { defAtom, defCursor, defHistory, defView } from "@thi.ng/atom"; import { start } from "@thi.ng/hdom"; import { map, pairs } from "@thi.ng/transducers"; import type { IObjectOf } from "@thi.ng/api"; diff --git a/examples/transducers-hdom/src/index.ts b/examples/transducers-hdom/src/index.ts index 38bf96e4de..d85839e795 100644 --- a/examples/transducers-hdom/src/index.ts +++ b/examples/transducers-hdom/src/index.ts @@ -14,8 +14,8 @@ const app = ({ ticks, clicks }: any) => [ [ "a.link.white.bb.bw1", { href: "#", onclick: () => clickStream.next(0) }, - `${clicks} clicks` - ] + `${clicks} clicks`, + ], ], [ "div", @@ -23,12 +23,12 @@ const app = ({ ticks, clicks }: any) => [ "a.link.white", { href: - "https://github.com/thi-ng/umbrella/tree/develop/examples/transducers-hdom/" + "https://github.com/thi-ng/umbrella/tree/develop/examples/transducers-hdom/", }, - "Source code" - ] - ] - ] + "Source code", + ], + ], + ], ]; // click stream (click counter) @@ -41,10 +41,10 @@ sync({ // streams to synchronize src: { ticks: fromInterval(1000), - clicks: clickStream + clicks: clickStream, }, // only synchronize at first (default) - reset: false + reset: false, }).transform( // transform into hdom component map(app), diff --git a/examples/triple-query/src/components/button-group.ts b/examples/triple-query/src/components/button-group.ts index a1e3b0fb2e..023882243f 100644 --- a/examples/triple-query/src/components/button-group.ts +++ b/examples/triple-query/src/components/button-group.ts @@ -5,6 +5,6 @@ export function buttonGroup(ctx: AppContext, ...buttons: any[]) { return [ "section", ctx.ui.buttongroup, - buttons.map((bt) => [button, ...bt]) + buttons.map((bt) => [button, ...bt]), ]; } diff --git a/examples/triple-query/src/components/event-link.ts b/examples/triple-query/src/components/event-link.ts index a1ae8a523f..d085e6c6f1 100644 --- a/examples/triple-query/src/components/event-link.ts +++ b/examples/triple-query/src/components/event-link.ts @@ -1,7 +1,6 @@ import type { Event } from "@thi.ng/interceptors"; import type { AppContext } from "../api"; - /** * Customizable hyperlink component emitting given event on event bus * when clicked. @@ -24,8 +23,8 @@ export function eventLink( onclick: (e: any) => { e.preventDefault(); ctx.bus.dispatch(event); - } + }, }, - body + body, ]; } diff --git a/examples/triple-query/src/components/main.ts b/examples/triple-query/src/components/main.ts index 763327ac72..12f4bae613 100644 --- a/examples/triple-query/src/components/main.ts +++ b/examples/triple-query/src/components/main.ts @@ -11,9 +11,9 @@ export function main(ctx: AppContext) { triples, ctx.views.pagedTriples.deref(), ctx.store.triples.length, - ctx.views.page.deref() + ctx.views.page.deref(), ], [queryResults, "Cities", ctx.views.cities.deref()], - [queryResults, "Countries", ctx.views.countries.deref()] + [queryResults, "Countries", ctx.views.countries.deref()], ]; } diff --git a/examples/triple-query/src/components/query-results.ts b/examples/triple-query/src/components/query-results.ts index 73f951cdbd..0669bc1ffa 100644 --- a/examples/triple-query/src/components/query-results.ts +++ b/examples/triple-query/src/components/query-results.ts @@ -22,8 +22,8 @@ export const queryResults = ( mapIndexed( (i, x) => [i + 1, ...map((k: string) => x[k], keys)], results - ) - ] + ), + ], ]; } }; diff --git a/examples/triple-query/src/components/table.ts b/examples/triple-query/src/components/table.ts index 49c2bc6f4b..51d949ce3f 100644 --- a/examples/triple-query/src/components/table.ts +++ b/examples/triple-query/src/components/table.ts @@ -4,7 +4,7 @@ import type { AppContext } from "../api"; const row = (ctx: AppContext, body: Iterable) => [ "tr", ctx.ui.table.row, - ...body + ...body, ]; export const table = ( @@ -20,5 +20,5 @@ export const table = ( map( (cols: any) => [row, map((x) => ["td", ctx.ui.table.cell, x], cols)], body - ) + ), ]; diff --git a/examples/triple-query/src/components/triple-table.ts b/examples/triple-query/src/components/triple-table.ts index 0afd9b9c01..5b160eeabf 100644 --- a/examples/triple-query/src/components/triple-table.ts +++ b/examples/triple-query/src/components/triple-table.ts @@ -14,11 +14,11 @@ export const tripleTable = () => { button, [SET_PAGE, i], label, - disabled + disabled, ], groupPrev: (ctx, ...bts) => ["div", ctx.ui.pager.prev, ...bts], groupNext: (ctx, ...bts) => ["div", ctx.ui.pager.next, ...bts], - groupPages: (ctx, bts) => ["div", ctx.ui.pager.pages, bts] + groupPages: (ctx, bts) => ["div", ctx.ui.pager.pages, bts], }); return (ctx: AppContext, triples: any[], num: number, page: number) => { const [sid, sdir] = ctx.views.sort.deref()!; @@ -36,12 +36,12 @@ export const tripleTable = () => { eventLink, ctx.ui.table.headlink, [SET_SORT, i], - `${x} ${sid === i ? icon : ""}` - ]) + `${x} ${sid === i ? icon : ""}`, + ]), ], - triples + triples, ], - [_pager, page, num, PAGE_LEN, 5] + [_pager, page, num, PAGE_LEN, 5], ]; }; }; diff --git a/examples/triple-query/src/config.ts b/examples/triple-query/src/config.ts index dcbd44a369..6f510f8ed8 100644 --- a/examples/triple-query/src/config.ts +++ b/examples/triple-query/src/config.ts @@ -13,7 +13,7 @@ export const CONFIG: AppConfig = { // and only side effect functions execute any "real" work. // Docs here: - // https://github.com/thi-ng/umbrella/blob/master/packages/interceptors/src/event-bus.ts#L14 + // https://github.com/thi-ng/umbrella/blob/develop/packages/interceptors/src/event-bus.ts#L14 events: EVENTS, @@ -30,7 +30,7 @@ export const CONFIG: AppConfig = { initialState: { page: 0, pagedTriples: [], - sort: [0, false] + sort: [0, false], }, // derived view declarations @@ -44,7 +44,7 @@ export const CONFIG: AppConfig = { pagedTriples: "pagedTriples", cities: "queries.cities", countries: "queries.countries", - sort: "sort" + sort: "sort", }, // component CSS class config using http://tachyons.io/ these @@ -53,10 +53,10 @@ export const CONFIG: AppConfig = { ui: { button: { class: - "pointer bg-black hover-bg-blue bg-animate white pa2 mr1 w-100 ttu b tracked-tight noselect" + "pointer bg-black hover-bg-blue bg-animate white pa2 mr1 w-100 ttu b tracked-tight noselect", }, buttonDisabled: { - class: "bg-gray white pa2 mr1 w-100 ttu b tracked-tight noselect" + class: "bg-gray white pa2 mr1 w-100 ttu b tracked-tight noselect", }, buttongroup: { class: "flex mb2" }, link: { class: "pointer link dim black b" }, @@ -66,14 +66,14 @@ export const CONFIG: AppConfig = { head: { class: "tl pv2 ph3 bg-black white" }, headlink: { class: "pointer white" }, row: { class: "striped--light-gray" }, - cell: { class: "pv2 ph3" } + cell: { class: "pv2 ph3" }, }, pager: { root: { class: "w-100 mt3 f7 tc" }, prev: { class: "fl mr3" }, next: { class: "fr ml3" }, - pages: { class: "dib" } - } + pages: { class: "dib" }, + }, }, data: { @@ -89,7 +89,7 @@ export const CONFIG: AppConfig = { ["sΓ£o paulo", "br"], ["shanghai", "cn"], ["tokyo", "jp"], - ["toronto", "ca"] + ["toronto", "ca"], ], countries: [ ["au", "australia", "oceania"], @@ -103,7 +103,7 @@ export const CONFIG: AppConfig = { ["jp", "japan", "asia"], ["za", "south africa", "africa"], ["nz", "new zealand", "oceania"], - ["us", "united states", "north-america"] + ["us", "united states", "north-america"], ], regions: [ "africa", @@ -114,7 +114,7 @@ export const CONFIG: AppConfig = { "north-america", "oceania", "south-america", - "caribbean" + "caribbean", ], queries: { cities: { @@ -125,11 +125,11 @@ export const CONFIG: AppConfig = { ["?city", "locatedIn", "?cid"], ["?cid", "type", "country"], ["?cid", "name", "?country"], - ["?cid", "partOf", "?region"] - ] - } + ["?cid", "partOf", "?region"], + ], + }, ], - select: ["city", "country", "region"] + select: ["city", "country", "region"], }, countries: { q: [ @@ -137,11 +137,11 @@ export const CONFIG: AppConfig = { where: [ ["?code", "type", "country"], ["?code", "partOf", "?region"], - ["?region", "type", "region"] - ] - } - ] - } - } - } + ["?region", "type", "region"], + ], + }, + ], + }, + }, + }, }; diff --git a/examples/triple-query/src/effects.ts b/examples/triple-query/src/effects.ts index 09f46e4691..862e0320e4 100644 --- a/examples/triple-query/src/effects.ts +++ b/examples/triple-query/src/effects.ts @@ -1,7 +1,7 @@ // best practice tip: define event & effect names as consts or enums // and avoid hardcoded strings for more safety and easier refactoring // also see pre-defined event handlers & interceptors in @thi.ng/atom: -// https://github.com/thi-ng/umbrella/blob/master/packages/interceptors/src/api.ts#L14 +// https://github.com/thi-ng/umbrella/blob/develop/packages/interceptors/src/api.ts#L14 export const ADD_TRIPLE = "add-triples"; export const REMOVE_TRIPLE = "remove-triples"; diff --git a/examples/triple-query/src/events.ts b/examples/triple-query/src/events.ts index 9cfa36deb4..2129df63a5 100644 --- a/examples/triple-query/src/events.ts +++ b/examples/triple-query/src/events.ts @@ -1,7 +1,7 @@ // best practice tip: define event & effect names as consts or enums // and avoid hardcoded strings for more safety and easier refactoring // also see pre-defined event handlers & interceptors in @thi.ng/atom: -// https://github.com/thi-ng/umbrella/blob/master/packages/interceptors/src/api.ts#L14 +// https://github.com/thi-ng/umbrella/blob/develop/packages/interceptors/src/api.ts#L14 export const ADD_CITY = "add-city"; export const ADD_COUNTRY = "add-country"; diff --git a/examples/webgl-shadertoy/src/index.ts b/examples/webgl-shadertoy/src/index.ts index a6f79aead0..561fa7f18c 100644 --- a/examples/webgl-shadertoy/src/index.ts +++ b/examples/webgl-shadertoy/src/index.ts @@ -18,11 +18,15 @@ import { Vec2Term, vec3, Vec3Sym, - vec4 + vec4, } from "@thi.ng/shader-ast"; import { aspectCorrectedUV, fit1101 } from "@thi.ng/shader-ast-stdlib"; import { glCanvas } from "@thi.ng/webgl"; -import { MainImageFn, shaderToy, ShaderToyUniforms } from "@thi.ng/webgl-shadertoy"; +import { + MainImageFn, + shaderToy, + ShaderToyUniforms, +} from "@thi.ng/webgl-shadertoy"; interface DemoUniforms extends ShaderToyUniforms { bright: FloatSym; @@ -32,8 +36,8 @@ interface DemoUniforms extends ShaderToyUniforms { // the 2 args given are objects containing GLSL builtin vars and uniforms // // see: -// https://github.com/thi-ng/umbrella/blob/master/packages/shader-ast-glsl/src/api.ts#L22 -// https://github.com/thi-ng/umbrella/blob/master/packages/webgl-shadertoy/src/api.ts#L13 +// https://github.com/thi-ng/umbrella/blob/develop/packages/shader-ast-glsl/src/api.ts#L22 +// https://github.com/thi-ng/umbrella/blob/develop/packages/webgl-shadertoy/src/api.ts#L13 const mainImage: MainImageFn = (gl, unis) => { // predeclare local vars / symbols let uv: Vec2Sym; @@ -66,7 +70,7 @@ const mainImage: MainImageFn = (gl, unis) => { ) )), // return as vec4 (mandatory) - ret(vec4(col, 1)) + ret(vec4(col, 1)), ]; }; @@ -75,7 +79,7 @@ const canvas = glCanvas({ width: window.innerWidth, height: window.innerHeight, parent: document.body, - version: 1 + version: 1, }); // init shader toy with canvas & shader fn @@ -85,8 +89,8 @@ const toy = shaderToy({ main: mainImage, uniforms: { // brightness factor for colored rings - bright: ["float", 1] - } + bright: ["float", 1], + }, }); toy.start(); diff --git a/examples/webgl-ssao/src/params.ts b/examples/webgl-ssao/src/params.ts index 0fda51136f..4fca36c7aa 100644 --- a/examples/webgl-ssao/src/params.ts +++ b/examples/webgl-ssao/src/params.ts @@ -1,11 +1,5 @@ import { stream, Stream } from "@thi.ng/rstream"; -import { - assocObj, - map, - pairs, - push, - transduce -} from "@thi.ng/transducers"; +import { assocObj, map, pairs, push, transduce } from "@thi.ng/transducers"; import type { IObjectOf } from "@thi.ng/api"; const slider = (label: string, attribs: any, stream: Stream) => () => [ @@ -18,10 +12,10 @@ const slider = (label: string, attribs: any, stream: Stream) => () => [ type: "range", value: stream.deref(), oninput: (e: Event) => - stream.next(parseFloat((e.target).value)) - } + stream.next(parseFloat((e.target).value)), + }, ], - ["span.ml3", stream.deref()] + ["span.ml3", stream.deref()], ]; type ParamDef = [string, any, number]; diff --git a/examples/webgl-ssao/src/shaders.ts b/examples/webgl-ssao/src/shaders.ts index 28011494c0..4de3f07aaa 100644 --- a/examples/webgl-ssao/src/shaders.ts +++ b/examples/webgl-ssao/src/shaders.ts @@ -7,14 +7,14 @@ import { mul, sub, texture, - vec4 + vec4, } from "@thi.ng/shader-ast"; import { clamp01 } from "@thi.ng/shader-ast-stdlib"; import { FX_SHADER_SPEC, FX_SHADER_SPEC_UV, ShaderFn, - ShaderSpec + ShaderSpec, } from "@thi.ng/webgl"; export const LIGHT_SHADER: ShaderSpec = { @@ -43,14 +43,14 @@ export const LIGHT_SHADER: ShaderSpec = { position: "vec3", normal: "vec3", offset: "vec3", - uv: "vec2" + uv: "vec2", }, varying: { v_position: "vec4", v_normal: "vec4", v_uv: "vec2", v_viewPos: "vec4", - v_viewNormal: "vec4" + v_viewNormal: "vec4", }, uniforms: { model: "mat4", @@ -61,17 +61,17 @@ export const LIGHT_SHADER: ShaderSpec = { shininess: ["float", 250], specular: "float", ambient: ["float", 0.15], - tex: "sampler2D" + tex: "sampler2D", }, outputs: { o_color: ["vec4", 0], o_viewPos: ["vec4", 1], - o_viewNormal: ["vec4", 2] + o_viewNormal: ["vec4", 2], }, state: { depth: true, - cull: true - } + cull: true, + }, }; export const SSAO_SHADER: ShaderSpec = { @@ -117,11 +117,11 @@ void main() { bias: ["float", 0.09], attenuate: ["float", 1], attenuateDist: ["float", 1], - depthRange: ["vec2", [0.1, 10]] + depthRange: ["vec2", [0.1, 10]], }, outputs: { - o_occlusion: "float" - } + o_occlusion: "float", + }, }; export const FINAL_SHADER: ShaderSpec = mergeDeepObj(FX_SHADER_SPEC_UV, { @@ -139,12 +139,12 @@ export const FINAL_SHADER: ShaderSpec = mergeDeepObj(FX_SHADER_SPEC_UV, { ), 1 ) - ) - ]) + ), + ]), ]) ), uniforms: { tex2: ["sampler2D", 1], - amp: ["float", 1] - } + amp: ["float", 1], + }, }); diff --git a/examples/wolfram/src/index.ts b/examples/wolfram/src/index.ts index 2c94fe415d..63c3c69c45 100644 --- a/examples/wolfram/src/index.ts +++ b/examples/wolfram/src/index.ts @@ -6,7 +6,7 @@ import { metaStream, sidechainToggle, stream, - sync + sync, } from "@thi.ng/rstream"; import { buildKernel1d, @@ -24,7 +24,7 @@ import { slidingWindow, str, transduce, - zip + zip, } from "@thi.ng/transducers"; import { bits, randomBits } from "@thi.ng/transducers-binary"; import { updateDOM } from "@thi.ng/transducers-hdom"; @@ -44,12 +44,12 @@ const evolveCA = (src: number[], { kernel, rule, reset }: any) => src, kernel, width: src.length, - wrap: true + wrap: true, }), map(lookup1d(rule)) ), range(src.length) - ) + ), ]; const triggerReset = () => @@ -75,8 +75,8 @@ const app = ({ id, ksize, sim }: any) => [ { type: "number", value: id, - oninput: setRule - } + oninput: setRule, + }, ], "Kernel:", [ @@ -84,34 +84,34 @@ const app = ({ id, ksize, sim }: any) => [ { class: "h2 pa2 mh3", onchange: setKernel }, [ [3, "3"], - [5, "5"] + [5, "5"], ], - ksize + ksize, ], [ "button.mr3.pa2", { - onclick: triggerReset + onclick: triggerReset, }, - "Reset" + "Reset", ], [ "button.mr3.pa2", { - onclick: triggerOBJExport + onclick: triggerOBJExport, }, - "Export OBJ" + "Export OBJ", ], [ "a.link.blue", { href: - "https://en.wikipedia.org/wiki/Elementary_cellular_automaton#Random_initial_state" + "https://en.wikipedia.org/wiki/Elementary_cellular_automaton#Random_initial_state", }, - "Wikipedia" - ] + "Wikipedia", + ], ], - ["pre.f7.code", sim] + ["pre.f7.code", sim], ]; const rule = stream(); @@ -126,9 +126,9 @@ const wolfram = sync({ kernel: kernel.transform( map((x) => buildKernel1d([1, 2, 4, 8, 16], x)) ), - _: fromRAF() + _: fromRAF(), }, - xform: scan(reducer(resetCA, evolveCA)) + xform: scan(reducer(resetCA, evolveCA)), }); const main = sync({ @@ -139,8 +139,8 @@ const main = sync({ map((gen) => gen.map((x: number) => " β–ˆ"[x]).join("")), slidingWindow(HEIGHT), map((win: string[]) => win.join("\n")) - ) - } + ), + }, }).transform(map(app), updateDOM()); // Wavefront OBJ 3D pointcloud export diff --git a/examples/xml-converter/src/convert.ts b/examples/xml-converter/src/convert.ts index 670eaa7198..2df817882a 100644 --- a/examples/xml-converter/src/convert.ts +++ b/examples/xml-converter/src/convert.ts @@ -1,10 +1,5 @@ import { isString } from "@thi.ng/checks"; -import { - parse, - ParseElement, - ParseEvent, - Type -} from "@thi.ng/sax"; +import { parse, ParseElement, ParseEvent, Type } from "@thi.ng/sax"; import { assocObj, comp, @@ -13,7 +8,7 @@ import { map, pairs, push, - transduce + transduce, } from "@thi.ng/transducers"; import { DEFAULT_FORMAT, format, FormatOpts } from "./format"; @@ -26,14 +21,14 @@ export interface ConversionOpts { export const DEFAULT_OPTS: ConversionOpts = { format: DEFAULT_FORMAT, removeAttribs: new Set(), - removeTags: new Set() + removeTags: new Set(), }; // converts given XMLish string into formatted hiccup export const convertXML = (src: string, opts: Partial = {}) => { let tree = transformTree(parseXML(src), { ...DEFAULT_OPTS, - ...opts + ...opts, }); return format({ ...DEFAULT_FORMAT, ...opts.format }, "", tree); }; @@ -80,7 +75,10 @@ const parseAttrib = (attrib: string[]) => { // transforms an entire object of attributes const transformAttribs = (attribs: any, remove: Set = new Set()) => transduce( - comp(filter((a) => !remove.has(a[0])), map(parseAttrib)), + comp( + filter((a) => !remove.has(a[0])), + map(parseAttrib) + ), assocObj(), {}, pairs(attribs) @@ -124,7 +122,10 @@ const transformTree = ( } if (tree.children && tree.children.length) { transduce( - comp(map((t: any) => transformTree(t, opts)), filter((t) => !!t)), + comp( + map((t: any) => transformTree(t, opts)), + filter((t) => !!t) + ), push(), res, tree.children diff --git a/examples/xml-converter/src/format.ts b/examples/xml-converter/src/format.ts index 1c0a53be17..c2ef636f02 100644 --- a/examples/xml-converter/src/format.ts +++ b/examples/xml-converter/src/format.ts @@ -20,7 +20,7 @@ export const DEFAULT_FORMAT: FormatOpts = { lineSep: "\n", prefix: "", quote: `"`, - ws: " " + ws: " ", }; export const COMPACT_FORMAT: FormatOpts = { @@ -30,7 +30,7 @@ export const COMPACT_FORMAT: FormatOpts = { lineSep: "", prefix: "", quote: `"`, - ws: "" + ws: "", }; // memoized indentations @@ -39,7 +39,7 @@ export const spaces = (n: number) => repeat(" ", n); // creates new state with deeper indentation const indentState = (opts: FormatOpts): FormatOpts => ({ ...opts, - indent: opts.indent + opts.tabSize + indent: opts.indent + opts.tabSize, }); // dispatch helper function for the `format` defmulti below @@ -55,8 +55,8 @@ const formatVal = (opts: FormatOpts, x: any, indent = true) => isNumber(x) || isBoolean(x) ? x : isPlainObject(x) - ? format(indent ? indentState(opts) : opts, "", x) - : opts.quote + escape(opts, x) + opts.quote; + ? format(indent ? indentState(opts) : opts, "", x) + : opts.quote + escape(opts, x) + opts.quote; // attrib key-value pair formatter w/ indentation const formatPair = (opts: FormatOpts, x: any, k: string) => @@ -88,7 +88,7 @@ format.add("array", (opts, res, x) => { res = format( { ...indentState(opts), - prefix: `${opts.lineSep}${spaces(opts.indent + opts.tabSize)}` + prefix: `${opts.lineSep}${spaces(opts.indent + opts.tabSize)}`, }, res, x[1] diff --git a/examples/xml-converter/src/index.ts b/examples/xml-converter/src/index.ts index f2f3622615..6bc3034ada 100644 --- a/examples/xml-converter/src/index.ts +++ b/examples/xml-converter/src/index.ts @@ -14,7 +14,7 @@ const inputs = { trailingComma: stream(), removeAttribs: stream(), removeTags: stream(), - copyButton: stream() + copyButton: stream(), }; // stream combinator to assemble formatter options @@ -22,13 +22,13 @@ const formatOpts = sync({ src: { trailingComma: inputs.trailingComma, doubleQuote: inputs.doubleQuote, - prettyPrint: inputs.prettyPrint + prettyPrint: inputs.prettyPrint, }, xform: map((opts: any) => ({ ...(opts.prettyPrint ? DEFAULT_FORMAT : COMPACT_FORMAT), trailingComma: opts.trailingComma, - quote: opts.doubleQuote ? `"` : `'` - })) + quote: opts.doubleQuote ? `"` : `'`, + })), }); // stream combinator to assemble conversion options @@ -36,8 +36,8 @@ const opts = sync({ src: { format: formatOpts, removeAttribs: inputs.removeAttribs.transform(xformAsSet), - removeTags: inputs.removeTags.transform(xformAsSet) - } + removeTags: inputs.removeTags.transform(xformAsSet), + }, }); // main stream combinator to create & update UI @@ -45,13 +45,13 @@ const main = sync({ src: { src: inputs.xml, copy: inputs.copyButton, - opts - } + opts, + }, }).transform( // convert xml -> hiccup map((state: any) => ({ ...state, - hiccup: convertXML(state.src, state.opts) + hiccup: convertXML(state.src, state.opts), })), // transform into hdom tree map(app(UI.main, inputs)), diff --git a/examples/xml-converter/src/ui.ts b/examples/xml-converter/src/ui.ts index 9ce98be253..e738c6bf09 100644 --- a/examples/xml-converter/src/ui.ts +++ b/examples/xml-converter/src/ui.ts @@ -3,26 +3,26 @@ import { mapIndexed } from "@thi.ng/transducers"; import { handleTab } from "./utils"; // converted from: -// https://github.com/IBM/carbon-icons/blob/master/src/svg/copy.svg +// https://github.com/IBM/carbon-icons/blob/develop/src/svg/copy.svg const ICON_COPY = [ "svg.mr2", { viewBox: "0 0 16 16", width: "0.7rem", height: "0.7rem", - stroke: "white" + stroke: "white", }, [ "path", - { d: "M1,10H0V2c0-1.1,0.9-2,2-2l8,0l0,1L2,1C1.4,1,1,1.5,1,2L1,10z" } + { d: "M1,10H0V2c0-1.1,0.9-2,2-2l8,0l0,1L2,1C1.4,1,1,1.5,1,2L1,10z" }, ], [ "path", { d: - "M11,4.2V8h3.8L11,4.2z M15,9h-4c-0.6,0-1-0.4-1-1V4H4.5C4.2,4,4,4.2,4,4.5v10C4,14.8,4.2,15,4.5,15h10 c0.3,0,0.5-0.2,0.5-0.5V9z M11,3c0.1,0,0.3,0.1,0.4,0.1l4.5,4.5C15.9,7.7,16,7.9,16,8v6.5c0,0.8-0.7,1.5-1.5,1.5h-10 C3.7,16,3,15.3,3,14.5v-10C3,3.7,3.7,3,4.5,3H11z" - } - ] + "M11,4.2V8h3.8L11,4.2z M15,9h-4c-0.6,0-1-0.4-1-1V4H4.5C4.2,4,4,4.2,4,4.5v10C4,14.8,4.2,15,4.5,15h10 c0.3,0,0.5-0.2,0.5-0.5V9z M11,3c0.1,0,0.3,0.1,0.4,0.1l4.5,4.5C15.9,7.7,16,7.9,16,8v6.5c0,0.8-0.7,1.5-1.5,1.5h-10 C3.7,16,3,15.3,3,14.5v-10C3,3.7,3.7,3,4.5,3H11z", + }, + ], ]; // component styles: @@ -33,41 +33,41 @@ export const UI = { root: { class: "w-50-ns pa3" }, title: { class: "ma0 mb2" }, textarea: { class: "w-100.pa2.bn.f7.code.lh-copy" }, - stats: { class: "f7" } + stats: { class: "f7" }, }, input: { root: { class: "mb2" }, label: { class: "dib w-100 w-25-l pv2" }, - input: { class: "w-100 w-75-l pa1 bg-silver white bn" } + input: { class: "w-100 w-75-l pa1 bg-silver white bn" }, }, button: { href: "#", - class: "dib.link.white.pv1.ph2.w4.bn.hover-bg-blue.bg-animate" + class: "dib.link.white.pv1.ph2.w4.bn.hover-bg-blue.bg-animate", }, copyButton: { style: { position: "relative", top: "-3rem", - left: "0.5rem" - } + left: "0.5rem", + }, }, main: { small: { class: "fw1 ml2 dn dib-l" }, src: { class: "bg-washed-green", - autofocus: true + autofocus: true, }, result: { success: { disabled: true, - class: "bg-light-gray" + class: "bg-light-gray", }, error: { disabled: true, - class: "bg-washed-red" - } - } - } + class: "bg-washed-red", + }, + }, + }, }; // hdom UI root component. this function will be used as stream @@ -84,9 +84,9 @@ export const app = (ctx: any, inputs: any) => ({ src, hiccup }: any) => [ onkeydown: handleTab(inputs.xml), // emitting a new value to the stream will // re-trigger conversion & UI update - oninput: (e: any) => inputs.xml.next(e.target.value) + oninput: (e: any) => inputs.xml.next(e.target.value), }, - src + src, ], [ editPane, @@ -96,13 +96,13 @@ export const app = (ctx: any, inputs: any) => ({ src, hiccup }: any) => [ [ copyButton, { - class: hiccup.indexOf("error") < 0 ? "bg-green" : "bg-gray" + class: hiccup.indexOf("error") < 0 ? "bg-green" : "bg-gray", }, inputs.copyButton, - hiccup + hiccup, ], - [transformOpts, inputs] - ] + [transformOpts, inputs], + ], ]; // configurable editor panel UI component @@ -119,7 +119,7 @@ const editPane = ( ["h3", editor.title, ...title], [`textarea.${editor.textarea.class}`, { rows: 16, value, ...attribs }], ["div", editor.stats, `${value.length} chars`], - ...extra + ...extra, ]; // configurable input UI component @@ -127,7 +127,7 @@ const input = ({ input }: any, label: string, attribs: any) => [ "div", input.root, ["label", { ...input.label, for: attribs.id }, label], - ["input", { ...input.input, ...attribs }] + ["input", { ...input.input, ...attribs }], ]; const iconButton = ( @@ -161,10 +161,10 @@ const copyButton = ( }, () => alert("Couldn't copy to clipboard") ); - } + }, }, ICON_COPY, - stream.deref() ? "Copied" : "Copy" + stream.deref() ? "Copied" : "Copy", ]; // combined transform options input components @@ -181,8 +181,8 @@ const transformOpts = (_: any, inputs: any) => [ id: "opt" + i, type, [v]: stream.deref(), - oninput: (e: any) => stream.next(e.target[v]) - } + oninput: (e: any) => stream.next(e.target[v]), + }, ]; }, [ @@ -190,7 +190,7 @@ const transformOpts = (_: any, inputs: any) => [ ["Remove attributes", "text", inputs.removeAttribs], ["Pretty print", "checkbox", inputs.prettyPrint], ["Double quotes", "checkbox", inputs.doubleQuote], - ["Trailing commas", "checkbox", inputs.trailingComma] + ["Trailing commas", "checkbox", inputs.trailingComma], ] - ) + ), ]; diff --git a/packages/adapt-dpi/CHANGELOG.md b/packages/adapt-dpi/CHANGELOG.md index dba9fe0852..65e564250c 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.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/adapt-dpi@1.0.0...@thi.ng/adapt-dpi@1.0.1) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/adapt-dpi + + + + + # 1.0.0 (2020-06-07) diff --git a/packages/adapt-dpi/package.json b/packages/adapt-dpi/package.json index ebee1f5341..b7d623fa08 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.0", + "version": "1.0.1", "description": "HDPI canvas adapter / styling utility", "module": "./index.js", "main": "./lib/index.js", diff --git a/packages/adapt-dpi/test/tsconfig.json b/packages/adapt-dpi/test/tsconfig.json index f6e63560dd..72b29d55ac 100644 --- a/packages/adapt-dpi/test/tsconfig.json +++ b/packages/adapt-dpi/test/tsconfig.json @@ -4,8 +4,5 @@ "outDir": "../build", "module": "commonjs" }, - "include": [ - "./**/*.ts", - "../src/**/*.ts" - ] + "include": ["./**/*.ts", "../src/**/*.ts"] } diff --git a/packages/adapt-dpi/tsconfig.json b/packages/adapt-dpi/tsconfig.json index 893b9979c5..4fee5e86b8 100644 --- a/packages/adapt-dpi/tsconfig.json +++ b/packages/adapt-dpi/tsconfig.json @@ -5,7 +5,5 @@ "module": "es6", "target": "es6" }, - "include": [ - "./src/**/*.ts" - ] + "include": ["./src/**/*.ts"] } diff --git a/packages/adjacency/CHANGELOG.md b/packages/adjacency/CHANGELOG.md index bbe4ffc402..7bd37f5d7b 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.1.48](https://github.com/thi-ng/umbrella/compare/@thi.ng/adjacency@0.1.47...@thi.ng/adjacency@0.1.48) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/adjacency + + + + + ## [0.1.47](https://github.com/thi-ng/umbrella/compare/@thi.ng/adjacency@0.1.46...@thi.ng/adjacency@0.1.47) (2020-06-01) **Note:** Version bump only for package @thi.ng/adjacency diff --git a/packages/adjacency/package.json b/packages/adjacency/package.json index 11623fb018..f5cd7587a6 100644 --- a/packages/adjacency/package.json +++ b/packages/adjacency/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/adjacency", - "version": "0.1.47", + "version": "0.1.48", "description": "Sparse & bitwise adjacency matrices and related functions for directed & undirected graphs", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.8.0", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/vectors": "^4.4.4", "@types/mocha": "^7.0.2", "@types/node": "^14.0.1", "mocha": "^7.1.2", @@ -44,12 +44,12 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/binary": "^2.0.7", - "@thi.ng/bitfield": "^0.3.10", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/dcons": "^2.2.19", - "@thi.ng/sparse": "^0.1.42", + "@thi.ng/api": "^6.11.1", + "@thi.ng/binary": "^2.0.8", + "@thi.ng/bitfield": "^0.3.11", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/dcons": "^2.2.20", + "@thi.ng/sparse": "^0.1.43", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/adjacency/test/binary.ts b/packages/adjacency/test/binary.ts index 411d2cf6fe..353dc68e9b 100644 --- a/packages/adjacency/test/binary.ts +++ b/packages/adjacency/test/binary.ts @@ -2,7 +2,12 @@ import { Pair } from "@thi.ng/api"; import * as assert from "assert"; import { AdjacencyBitMatrix } from "../src/index"; -const edges: Pair[] = [[2, 3], [0, 1], [5, 4], [2, 0]]; +const edges: Pair[] = [ + [2, 3], + [0, 1], + [5, 4], + [2, 0], +]; describe("adjacency (bitmatrix)", () => { it("fromEdges, undirected", () => { @@ -15,14 +20,19 @@ describe("adjacency (bitmatrix)", () => { 2415919104, 536870912, 67108864, - 134217728 + 134217728, ], "data" ); assert.equal(m.numEdges(), 4, "numEdges"); assert.deepEqual( [...m.edges()], - [[4, 5], [2, 3], [0, 1], [0, 2]], + [ + [4, 5], + [2, 3], + [0, 1], + [0, 2], + ], "edges" ); }); diff --git a/packages/adjacency/test/mst.ts b/packages/adjacency/test/mst.ts index c37114bfc2..6a9f9e9123 100644 --- a/packages/adjacency/test/mst.ts +++ b/packages/adjacency/test/mst.ts @@ -28,7 +28,7 @@ describe("unionfind", () => { [5, 6], [6, 7], [6, 8], - [7, 8] + [7, 8], ]; assert.deepEqual( @@ -39,8 +39,14 @@ describe("unionfind", () => { ([a, b]) => [a, b] ).sort(comparator2(0, 1)), [ - [0, 1], [1, 2], [2, 3], [2, 4], - [4, 5], [5, 6], [6, 8], [7, 8] + [0, 1], + [1, 2], + [2, 3], + [2, 4], + [4, 5], + [5, 6], + [6, 8], + [7, 8], ] ); }); diff --git a/packages/adjacency/test/sparse.ts b/packages/adjacency/test/sparse.ts index cfa3ee7a9c..df88c24a20 100644 --- a/packages/adjacency/test/sparse.ts +++ b/packages/adjacency/test/sparse.ts @@ -12,20 +12,17 @@ const edges: Pair[] = [ describe("adjacency (sparse)", () => { it("fromEdges, undirected", () => { const m = AdjacencyMatrix.fromEdges(6, edges, true); - assert.deepEqual( - m.rows, - [0, 2, 3, 5, 6, 7, 8], - "rows" - ); - assert.deepEqual( - m.cols, - [1, 2, 0, 0, 3, 2, 5, 4], - "cols" - ); + assert.deepEqual(m.rows, [0, 2, 3, 5, 6, 7, 8], "rows"); + assert.deepEqual(m.cols, [1, 2, 0, 0, 3, 2, 5, 4], "cols"); assert.equal(m.numEdges(), 4, "numEdges"); assert.deepEqual( [...m.edges()], - [[0, 1], [0, 2], [2, 3], [4, 5]], + [ + [0, 1], + [0, 2], + [2, 3], + [4, 5], + ], "edges" ); }); diff --git a/packages/api/CHANGELOG.md b/packages/api/CHANGELOG.md index 268c565db5..66626c1c3d 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.11.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.11.0...@thi.ng/api@6.11.1) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/api + + + + + # [6.11.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.10.5...@thi.ng/api@6.11.0) (2020-06-01) diff --git a/packages/api/package.json b/packages/api/package.json index c2ee4bcc6e..2f8f987da6 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/api", - "version": "6.11.0", + "version": "6.11.1", "description": "Common, generic types, interfaces & mixins", "module": "./index.js", "main": "./lib/index.js", diff --git a/packages/api/src/decorators/configurable.ts b/packages/api/src/decorators/configurable.ts index d46ffa697d..1d5c876d95 100644 --- a/packages/api/src/decorators/configurable.ts +++ b/packages/api/src/decorators/configurable.ts @@ -5,6 +5,6 @@ * @param state - true, if propoerty is configurable */ export const configurable = (state: boolean): MethodDecorator => - function(_: any, __: string | symbol, descriptor: PropertyDescriptor) { + function (_: any, __: string | symbol, descriptor: PropertyDescriptor) { descriptor.configurable = state; }; diff --git a/packages/api/src/decorators/deprecated.ts b/packages/api/src/decorators/deprecated.ts index b45bc5f098..53ce8394f8 100644 --- a/packages/api/src/decorators/deprecated.ts +++ b/packages/api/src/decorators/deprecated.ts @@ -9,7 +9,7 @@ import { assert } from "../assert"; * @param msg - deprecation message */ export const deprecated = (msg?: string, log = console.log): MethodDecorator => - function( + function ( target: any, prop: string | symbol, descriptor: PropertyDescriptor @@ -17,7 +17,7 @@ export const deprecated = (msg?: string, log = console.log): MethodDecorator => const signature = `${target.constructor.name}#${prop.toString()}`; const fn = descriptor.value; assert(typeof fn === "function", `${signature} is not a function`); - descriptor.value = function() { + descriptor.value = function () { log(`DEPRECATED ${signature}: ${msg || "will be removed soon"}`); return fn.apply(this, arguments); }; diff --git a/packages/api/src/logger.ts b/packages/api/src/logger.ts index a1a9b8404c..a389bee89b 100644 --- a/packages/api/src/logger.ts +++ b/packages/api/src/logger.ts @@ -7,7 +7,7 @@ export const NULL_LOGGER: ILogger = Object.freeze({ debug() {}, info() {}, warn() {}, - severe() {} + severe() {}, }); export class ConsoleLogger implements ILogger { diff --git a/packages/api/src/mixin.ts b/packages/api/src/mixin.ts index aa2bd137f7..4df95452c4 100644 --- a/packages/api/src/mixin.ts +++ b/packages/api/src/mixin.ts @@ -24,7 +24,7 @@ export const mixin = (behaviour: any, sharedBehaviour: any = {}) => { if (!existing || existing.configurable) { Object.defineProperty(clazz.prototype, key, { value: behaviour[key], - writable: true + writable: true, }); } else { console.log(`not patching: ${clazz.name}.${key.toString()}`); @@ -37,12 +37,12 @@ export const mixin = (behaviour: any, sharedBehaviour: any = {}) => { for (let key of sharedKeys) { Object.defineProperty(_mixin, key, { value: sharedBehaviour[key], - enumerable: sharedBehaviour.propertyIsEnumerable(key) + enumerable: sharedBehaviour.propertyIsEnumerable(key), }); } Object.defineProperty(_mixin, Symbol.hasInstance, { - value: (x: any) => !!x[typeTag] + value: (x: any) => !!x[typeTag], }); return _mixin; diff --git a/packages/api/src/mixins/ienable.ts b/packages/api/src/mixins/ienable.ts index 4d312bd77a..80743ce5cb 100644 --- a/packages/api/src/mixins/ienable.ts +++ b/packages/api/src/mixins/ienable.ts @@ -39,5 +39,5 @@ export const IEnableMixin = mixin(>{ toggle(this: _IEnable) { this._enabled ? this.disable() : this.enable(); return this._enabled; - } + }, }); diff --git a/packages/api/src/mixins/inotify.ts b/packages/api/src/mixins/inotify.ts index bcc2d60318..ac990c7884 100644 --- a/packages/api/src/mixins/inotify.ts +++ b/packages/api/src/mixins/inotify.ts @@ -67,5 +67,5 @@ export const INotifyMixin = mixin({ } } return i; - } + }, }); diff --git a/packages/api/src/mixins/iterable.ts b/packages/api/src/mixins/iterable.ts index e9829da601..945e90e0ee 100644 --- a/packages/api/src/mixins/iterable.ts +++ b/packages/api/src/mixins/iterable.ts @@ -4,5 +4,5 @@ export const iterable = (prop: PropertyKey) => mixin({ *[Symbol.iterator]() { yield* this[prop]; - } + }, }); diff --git a/packages/api/src/mixins/iwatch.ts b/packages/api/src/mixins/iwatch.ts index 49ea635278..3b6933a837 100644 --- a/packages/api/src/mixins/iwatch.ts +++ b/packages/api/src/mixins/iwatch.ts @@ -31,5 +31,5 @@ export const IWatchMixin = mixin(>{ for (let id in w) { w[id](id, oldState, newState); } - } + }, }); diff --git a/packages/api/test/mixins.ts b/packages/api/test/mixins.ts index da5592a2e3..a0c2bf97e8 100644 --- a/packages/api/test/mixins.ts +++ b/packages/api/test/mixins.ts @@ -1,11 +1,5 @@ import * as assert from "assert"; -import { - Event, - EVENT_ALL, - INotify, - INotifyMixin, - Listener -} from "../src"; +import { Event, EVENT_ALL, INotify, INotifyMixin, Listener } from "../src"; describe("mixins", () => { it("INotify", () => { diff --git a/packages/arrays/CHANGELOG.md b/packages/arrays/CHANGELOG.md index d59c65a9cc..051bdf19f6 100644 --- a/packages/arrays/CHANGELOG.md +++ b/packages/arrays/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.9](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.6.8...@thi.ng/arrays@0.6.9) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/arrays + + + + + ## [0.6.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.6.7...@thi.ng/arrays@0.6.8) (2020-06-01) **Note:** Version bump only for package @thi.ng/arrays diff --git a/packages/arrays/package.json b/packages/arrays/package.json index acb06cca54..1ed0f968b7 100644 --- a/packages/arrays/package.json +++ b/packages/arrays/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/arrays", - "version": "0.6.8", + "version": "0.6.9", "description": "Array / Arraylike utilities", "module": "./index.js", "main": "./lib/index.js", @@ -43,12 +43,12 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/compare": "^1.3.7", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/compare": "^1.3.8", "@thi.ng/equiv": "^1.0.23", "@thi.ng/errors": "^1.2.14", - "@thi.ng/random": "^1.4.10", + "@thi.ng/random": "^1.4.11", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/arrays/src/levenshtein.ts b/packages/arrays/src/levenshtein.ts index d2d6638801..dc7b933ff8 100644 --- a/packages/arrays/src/levenshtein.ts +++ b/packages/arrays/src/levenshtein.ts @@ -14,7 +14,7 @@ const eqStrict = (a: any, b: any) => a === b; * Based on: * - https://en.wikipedia.org/wiki/Levenshtein_distance * - https://en.wikipedia.org/wiki/Wagner%E2%80%93Fischer_algorithm - * - https://github.com/gustf/js-levenshtein/blob/master/index.js + * - https://github.com/gustf/js-levenshtein/blob/develop/index.js * * @example * ```ts diff --git a/packages/arrays/test/binary-search.ts b/packages/arrays/test/binary-search.ts index 6fc68676d5..c210e93617 100644 --- a/packages/arrays/test/binary-search.ts +++ b/packages/arrays/test/binary-search.ts @@ -1,13 +1,6 @@ import { FnO } from "@thi.ng/api"; import * as assert from "assert"; -import { - binarySearch, - bsEQ, - bsGE, - bsGT, - bsLE, - bsLT -} from "../src"; +import { binarySearch, bsEQ, bsGE, bsGT, bsLE, bsLT } from "../src"; const src = [10, 20, 30, 40]; const tests = [5, 10, 15, 20, 25, 45]; diff --git a/packages/associative/CHANGELOG.md b/packages/associative/CHANGELOG.md index 5f71f58f50..3b39f0a483 100644 --- a/packages/associative/CHANGELOG.md +++ b/packages/associative/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. +# [4.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/associative@4.0.11...@thi.ng/associative@4.1.0) (2020-06-14) + + +### Features + +* **associative:** add Trie and tests ([84b6517](https://github.com/thi-ng/umbrella/commit/84b6517f8988e5032ac2c7614e62ebf4cf1c9e1b)) + + + + + ## [4.0.11](https://github.com/thi-ng/umbrella/compare/@thi.ng/associative@4.0.10...@thi.ng/associative@4.0.11) (2020-06-01) **Note:** Version bump only for package @thi.ng/associative diff --git a/packages/associative/README.md b/packages/associative/README.md index c2cbfd5ca0..60b38e3b20 100644 --- a/packages/associative/README.md +++ b/packages/associative/README.md @@ -172,7 +172,7 @@ yarn add @thi.ng/associative ``` -Package sizes (gzipped, pre-treeshake): ESM: 5.16 KB / CJS: 5.35 KB / UMD: 5.18 KB +Package sizes (gzipped, pre-treeshake): ESM: 5.62 KB / CJS: 5.82 KB / UMD: 5.64 KB ## Dependencies diff --git a/packages/associative/package.json b/packages/associative/package.json index 2bc25e08dc..159151b6d9 100644 --- a/packages/associative/package.json +++ b/packages/associative/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/associative", - "version": "4.0.11", + "version": "4.1.0", "description": "Alternative Map and Set implementations with customizable equality semantics & supporting operations", "module": "./index.js", "main": "./lib/index.js", @@ -43,14 +43,14 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/binary": "^2.0.7", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/compare": "^1.3.7", - "@thi.ng/dcons": "^2.2.19", + "@thi.ng/api": "^6.11.1", + "@thi.ng/binary": "^2.0.8", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/compare": "^1.3.8", + "@thi.ng/dcons": "^2.2.20", "@thi.ng/equiv": "^1.0.23", "@thi.ng/errors": "^1.2.14", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/associative/src/index.ts b/packages/associative/src/index.ts index 8d9b0403e8..aabfe339e4 100644 --- a/packages/associative/src/index.ts +++ b/packages/associative/src/index.ts @@ -20,5 +20,6 @@ export * from "./select-keys"; export * from "./sorted-map"; export * from "./sorted-set"; export * from "./sparse-set"; +export * from "./trie"; export * from "./union"; export * from "./without-keys"; diff --git a/packages/associative/src/internal/xform-setop.ts b/packages/associative/src/internal/xform-setop.ts index caa7e629aa..ad5525674b 100644 --- a/packages/associative/src/internal/xform-setop.ts +++ b/packages/associative/src/internal/xform-setop.ts @@ -12,5 +12,5 @@ export const xformSetOp = ( : , Iterable>>[ () => null, (acc) => acc || new Set(), - (acc, x) => (!acc ? ensureSet(x) : op(acc, ensureSet(x))) + (acc, x) => (!acc ? ensureSet(x) : op(acc, ensureSet(x))), ]; diff --git a/packages/associative/src/trie.ts b/packages/associative/src/trie.ts new file mode 100644 index 0000000000..22cad00ad3 --- /dev/null +++ b/packages/associative/src/trie.ts @@ -0,0 +1,137 @@ +import type { IObjectOf } from "@thi.ng/api"; +import { map, vals } from "@thi.ng/transducers"; + +export class Trie, T> { + protected next: IObjectOf> = {}; + protected vals?: Set; + protected n = 0; + + *[Symbol.iterator]() { + const queue: [string, Trie][] = [["", this]]; + while (queue.length) { + const [prefix, node] = queue.pop()!; + if (node.vals) { + yield* map((v) => [prefix, v], node.vals); + } else { + node.queueChildren(queue, prefix); + } + } + } + + *keys(sep = "", prefix = "") { + const queue: [string, Trie][] = [[prefix, this]]; + while (queue.length) { + const [key, node] = queue.pop()!; + if (node.vals) { + yield key; + } else { + node.queueChildren(queue, key, sep); + } + } + } + + *values() { + const queue: Trie[] = [this]; + while (queue.length) { + const node = queue.pop()!; + if (node.vals) { + yield* node.vals; + } else { + queue.push(...vals(node.next)); + } + } + } + + clear() { + this.next = {}; + this.n = 0; + this.vals = undefined; + } + + has(key: K) { + return !!this.get(key); + } + + hasPrefix(prefix: K) { + return !!this.find(prefix); + } + + *suffixes(prefix: K, withPrefix = false) { + const node = this.find(prefix); + if (node) { + yield* node.keys("", withPrefix ? prefix.toString() : ""); + } + } + + get(key: K): Set | undefined { + const node = this.find(key); + return node ? node.vals : undefined; + } + + find(key: K) { + let node: Trie | undefined = this; + for (let i = 0, n = key.length; i < n; i++) { + node = node!.next[key[i].toString()]; + if (!node) return; + } + return node; + } + + add(key: K, val: T) { + let node: Trie = this; + for (let i = 0, n = key.length; i < n; i++) { + const k = key[i].toString(); + const next = node.next[k]; + node = !next ? (node.n++, (node.next[k] = new Trie())) : next; + } + if (!node.vals) node.vals = new Set(); + node.vals.add(val); + } + + delete(prefix: K, val?: T) { + const n = prefix.length; + if (n < 1) return false; + const path: Trie[] = []; + const key: string[] = []; + let i = 0; + let node: Trie | undefined = this; + for (; i < n; i++) { + const k = prefix[i].toString(); + key.push(k); + path.push(node); + node = node.next[k]; + if (!node) return false; + } + // if val is given, remove from set + // and only collapse path if no other vals for key + if (val !== undefined) { + const vals = node.vals; + if (vals && vals.has(val)) { + vals.delete(val); + if (vals.size > 0) return true; + } else { + return false; + } + } + // collapse path + while ((node = path[--i])) { + delete node.next[key[i]]; + if (--node.n) break; + } + return true; + } + + protected queueChildren( + queue: [string, Trie][], + prefix: string, + sep = "" + ) { + prefix = prefix.length ? prefix + sep : prefix; + queue.push( + ...map( + (k) => <[string, Trie]>[prefix + k, this.next[k]], + Object.keys(this.next) + ) + ); + } +} diff --git a/packages/associative/test/join.ts b/packages/associative/test/join.ts index a94e1ee602..932e1a769d 100644 --- a/packages/associative/test/join.ts +++ b/packages/associative/test/join.ts @@ -7,30 +7,56 @@ describe("join", () => { it("simple", () => { const a = new ArraySet([{ a: 1 }, { a: 2 }]); const b = new ArraySet([{ b: 1 }, { b: 2 }]); - assert.deepEqual(join(a, b), new ArraySet([{ a: 1, b: 1 }, { a: 2, b: 1 }, { a: 1, b: 2 }, { a: 2, b: 2 }])); + assert.deepEqual( + join(a, b), + new ArraySet([ + { a: 1, b: 1 }, + { a: 2, b: 1 }, + { a: 1, b: 2 }, + { a: 2, b: 2 }, + ]) + ); }); it("simple isec", () => { - const a = new ArraySet([{ id: "a", type: 1 }, { id: "b", type: 1 }, { id: "c", type: 2 }]); - const b = new ArraySet([{ type: 1, label: "foo" }, { type: 2, label: "bar" }, { type: 3, label: "baz" }]); + const a = new ArraySet([ + { id: "a", type: 1 }, + { id: "b", type: 1 }, + { id: "c", type: 2 }, + ]); + const b = new ArraySet([ + { type: 1, label: "foo" }, + { type: 2, label: "bar" }, + { type: 3, label: "baz" }, + ]); assert.deepEqual( join(a, b), new ArraySet([ { id: "a", type: 1, label: "foo" }, { id: "b", type: 1, label: "foo" }, - { id: "c", type: 2, label: "bar" } - ])); + { id: "c", type: 2, label: "bar" }, + ]) + ); }); it("joinWith", () => { - const a = new ArraySet([{ id: "a", type: 1 }, { id: "b", type: 1 }, { id: "c", type: 2 }]); - const b = new ArraySet([{ xyz: 1, label: "foo" }, { xyz: 2, label: "bar" }, { xyz: 3, label: "baz" }]); + const a = new ArraySet([ + { id: "a", type: 1 }, + { id: "b", type: 1 }, + { id: "c", type: 2 }, + ]); + const b = new ArraySet([ + { xyz: 1, label: "foo" }, + { xyz: 2, label: "bar" }, + { xyz: 3, label: "baz" }, + ]); assert.deepEqual( joinWith(a, b, { type: "xyz" }), new ArraySet([ { id: "a", type: 1, xyz: 1, label: "foo" }, { id: "b", type: 1, xyz: 1, label: "foo" }, - { id: "c", type: 2, xyz: 2, label: "bar" } - ])); + { id: "c", type: 2, xyz: 2, label: "bar" }, + ]) + ); }); }); diff --git a/packages/associative/test/merge.ts b/packages/associative/test/merge.ts index 5561cd49aa..f2bf8e0c84 100644 --- a/packages/associative/test/merge.ts +++ b/packages/associative/test/merge.ts @@ -6,14 +6,23 @@ describe("mergeApply", () => { it("map", () => { assert.deepEqual( mergeApplyMap( - new Map([["a", 1], ["b", 2], ["c", 3]]), + new Map([ + ["a", 1], + ["b", 2], + ["c", 3], + ]), new Map>([ ["a", (x) => x + 10], ["b", 20], - ["d", 40] + ["d", 40], ]) ), - new Map([["a", 11], ["b", 20], ["c", 3], ["d", 40]]) + new Map([ + ["a", 11], + ["b", 20], + ["c", 3], + ["d", 40], + ]) ); }); it("object", () => { diff --git a/packages/associative/test/sparse-set.ts b/packages/associative/test/sparse-set.ts index af5d6b882f..163ec5c792 100644 --- a/packages/associative/test/sparse-set.ts +++ b/packages/associative/test/sparse-set.ts @@ -1,12 +1,7 @@ import { isSet } from "@thi.ng/checks"; import { equiv } from "@thi.ng/equiv"; import * as assert from "assert"; -import { - defSparseSet, - SparseSet16, - SparseSet32, - SparseSet8 -} from "../src"; +import { defSparseSet, SparseSet16, SparseSet32, SparseSet8 } from "../src"; describe("SparseSet", () => { let set: SparseSet8; diff --git a/packages/associative/test/trie.ts b/packages/associative/test/trie.ts new file mode 100644 index 0000000000..2a07bec892 --- /dev/null +++ b/packages/associative/test/trie.ts @@ -0,0 +1,69 @@ +import * as assert from "assert"; + +import { Trie } from "../src/trie"; + +describe("Trie", () => { + let root: Trie; + beforeEach(() => { + root = new Trie(); + root.add("hey", "en"); + root.add("hello", "en"); + root.add("hallo", "de"); + root.add("hallo", "de-at"); + root.add("hola", "es"); + root.add("hold", "en"); + root.add("hej", "se"); + }); + + it("keys", () => { + assert.deepEqual( + new Set(root.keys()), + new Set(["hey", "hello", "hallo", "hallo", "hola", "hold", "hej"]) + ); + assert.deepEqual( + new Set(root.find("he")!.keys()), + new Set(["y", "llo", "j"]) + ); + assert.deepEqual( + new Set(root.find("ho")!.keys("", "ho")), + new Set(["hola", "hold"]) + ); + assert.deepEqual( + new Set(root.find("he")!.keys("-")), + new Set(["l-l-o", "y", "j"]) + ); + }); + + it("keys (words)", () => { + const t = new Trie(); + t.add("foo bar baz".split(" "), "a"); + t.add("foo boo zoo".split(" "), "b"); + assert.deepEqual( + new Set(t.keys("/")), + new Set(["foo/bar/baz", "foo/boo/zoo"]) + ); + }); + + it("values", () => { + assert.deepEqual( + new Set(root.values()), + new Set(["en", "es", "de", "de-at", "se"]) + ); + assert.deepEqual( + new Set(root.find("he")!.values()), + new Set(["en", "se"]) + ); + }); + + it("delete", () => { + assert(root.delete("he")); + assert.deepEqual( + new Set(root.keys()), + new Set(["hola", "hold", "hallo"]) + ); + assert(root.delete("hallo", "de")); + assert.deepEqual(root.get("hallo"), new Set(["de-at"])); + assert(root.delete("h")); + assert.deepEqual([...root], []); + }); +}); diff --git a/packages/associative/test/union.ts b/packages/associative/test/union.ts index 558db36e0a..c09b3315ed 100644 --- a/packages/associative/test/union.ts +++ b/packages/associative/test/union.ts @@ -2,7 +2,6 @@ import * as assert from "assert"; import { ArraySet } from "../src/array-set"; import { union } from "../src/union"; - describe("union", () => { it("native (numbers)", () => { const a = new Set([1, 2, 3, 4]); diff --git a/packages/atom/CHANGELOG.md b/packages/atom/CHANGELOG.md index 5b0467f97f..536507b1a0 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.10](https://github.com/thi-ng/umbrella/compare/@thi.ng/atom@4.1.9...@thi.ng/atom@4.1.10) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/atom + + + + + ## [4.1.9](https://github.com/thi-ng/umbrella/compare/@thi.ng/atom@4.1.8...@thi.ng/atom@4.1.9) (2020-06-01) **Note:** Version bump only for package @thi.ng/atom diff --git a/packages/atom/package.json b/packages/atom/package.json index fdc01fd913..72ff2c30f7 100644 --- a/packages/atom/package.json +++ b/packages/atom/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/atom", - "version": "4.1.9", + "version": "4.1.10", "description": "Mutable wrappers for nested immutable values with optional undo/redo history and transaction support", "module": "./index.js", "main": "./lib/index.js", @@ -43,11 +43,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", "@thi.ng/equiv": "^1.0.23", "@thi.ng/errors": "^1.2.14", - "@thi.ng/paths": "^4.0.7", + "@thi.ng/paths": "^4.0.8", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/atom/test/atom.ts b/packages/atom/test/atom.ts index c81ff901bb..6d8fe159cd 100644 --- a/packages/atom/test/atom.ts +++ b/packages/atom/test/atom.ts @@ -3,7 +3,6 @@ import * as assert from "assert"; import { Atom } from "../src/index"; describe("atom", function () { - let a: Atom; beforeEach(() => { @@ -25,15 +24,24 @@ describe("atom", function () { }); it("can be swapped", () => { - assert.equal(a.swap((x) => x + 1), 24); + assert.equal( + a.swap((x) => x + 1), + 24 + ); assert.equal(a.deref(), 24); }); it("can add & remove watch", () => { - assert.ok(a.addWatch("foo", () => { }), "can't add watch"); + assert.ok( + a.addWatch("foo", () => {}), + "can't add watch" + ); assert.ok((a)._watches && (a)._watches.foo, "watch missing"); assert.ok(a.removeWatch("foo"), "can't remove watch"); - assert.ok(!a.removeWatch("foo"), "should fail to remove invalid watch id"); + assert.ok( + !a.removeWatch("foo"), + "should fail to remove invalid watch id" + ); }); it("can be watched", () => { @@ -51,7 +59,13 @@ describe("atom", function () { assert.equal(a.reset(2), 2); assert.equal(a.reset("3"), 2); assert.equal(a.reset(null), 2); - assert.equal(a.swap(() => "3"), 2); - assert.equal(a.swap(() => null), 2); + assert.equal( + a.swap(() => "3"), + 2 + ); + assert.equal( + a.swap(() => null), + 2 + ); }); }); diff --git a/packages/atom/test/cursor.ts b/packages/atom/test/cursor.ts index caf7c13c2d..5e8002fb3e 100644 --- a/packages/atom/test/cursor.ts +++ b/packages/atom/test/cursor.ts @@ -1,11 +1,6 @@ import { isNumber } from "@thi.ng/checks"; import * as assert from "assert"; -import { - Atom, - Cursor, - defAtom, - defCursor -} from "../src/index"; +import { Atom, Cursor, defAtom, defCursor } from "../src/index"; interface State { a: { diff --git a/packages/bench/CHANGELOG.md b/packages/bench/CHANGELOG.md index d5b05d5885..d5fec3a287 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.13](https://github.com/thi-ng/umbrella/compare/@thi.ng/bench@2.0.12...@thi.ng/bench@2.0.13) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/bench + + + + + ## [2.0.6](https://github.com/thi-ng/umbrella/compare/@thi.ng/bench@2.0.5...@thi.ng/bench@2.0.6) (2020-04-03) diff --git a/packages/bench/package.json b/packages/bench/package.json index fd1b43141c..bc3d6d599c 100644 --- a/packages/bench/package.json +++ b/packages/bench/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/bench", - "version": "2.0.12", + "version": "2.0.13", "description": "Benchmarking utilities w/ optional statistics", "module": "./index.js", "main": "./lib/index.js", diff --git a/packages/bench/src/benchmark.ts b/packages/bench/src/benchmark.ts index b7690c6c49..34a909bb9d 100644 --- a/packages/bench/src/benchmark.ts +++ b/packages/bench/src/benchmark.ts @@ -49,6 +49,6 @@ export const benchmark = ( max, q1, q3, - sd + sd, }; }; diff --git a/packages/bencode/CHANGELOG.md b/packages/bencode/CHANGELOG.md index a17e7965e5..883d2f1f6e 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.27](https://github.com/thi-ng/umbrella/compare/@thi.ng/bencode@0.3.26...@thi.ng/bencode@0.3.27) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/bencode + + + + + ## [0.3.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/bencode@0.3.25...@thi.ng/bencode@0.3.26) (2020-06-01) **Note:** Version bump only for package @thi.ng/bencode diff --git a/packages/bencode/package.json b/packages/bencode/package.json index eb8668b70e..9d347861d3 100644 --- a/packages/bencode/package.json +++ b/packages/bencode/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/bencode", - "version": "0.3.26", + "version": "0.3.27", "description": "Bencode binary encoder / decoder with optional UTF8 encoding & floating point support", "module": "./index.js", "main": "./lib/index.js", @@ -43,13 +43,13 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/arrays": "^0.6.8", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/defmulti": "^1.2.16", + "@thi.ng/api": "^6.11.1", + "@thi.ng/arrays": "^0.6.9", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/defmulti": "^1.2.17", "@thi.ng/errors": "^1.2.14", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/transducers-binary": "^0.5.16", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/transducers-binary": "^0.5.17", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/bencode/src/index.ts b/packages/bencode/src/index.ts index a6ab6d0231..24ce5421af 100644 --- a/packages/bencode/src/index.ts +++ b/packages/bencode/src/index.ts @@ -6,7 +6,7 @@ import { isBoolean, isNumber, isPlainObject, - isString + isString, } from "@thi.ng/checks"; import { defmulti } from "@thi.ng/defmulti"; import { illegalState, unsupported } from "@thi.ng/errors"; @@ -18,7 +18,7 @@ import { u8, u8array, utf8Decode, - utf8Length + utf8Length, } from "@thi.ng/transducers-binary"; const enum Type { @@ -27,7 +27,7 @@ const enum Type { STR, BINARY, DICT, - LIST + LIST, } const enum Lit { @@ -40,7 +40,7 @@ const enum Lit { END = 0x65, FLOAT = 0x66, INT = 0x69, - LIST = 0x6c + LIST = 0x6c, } const FLOAT_RE = /^[0-9.-]+$/; @@ -84,7 +84,7 @@ encodeBin.addAll({ [Type.LIST]: (x: Iterable) => [ u8(0x6c), ...mapcat(encodeBin, x), - u8(0x65) + u8(0x65), ], [Type.DICT]: (x: any) => [ @@ -93,8 +93,8 @@ encodeBin.addAll({ (k: string) => encodeBin(k).concat(encodeBin(x[k])), Object.keys(x).sort() ), - u8(0x65) - ] + u8(0x65), + ], }); export const decode = (buf: Iterable, utf8 = true) => { diff --git a/packages/binary/CHANGELOG.md b/packages/binary/CHANGELOG.md index 9dcbec5486..a93bc98226 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.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/binary@2.0.7...@thi.ng/binary@2.0.8) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/binary + + + + + # [2.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/binary@1.3.2...@thi.ng/binary@2.0.0) (2020-03-06) diff --git a/packages/binary/package.json b/packages/binary/package.json index 0c485bda27..47a42206d4 100644 --- a/packages/binary/package.json +++ b/packages/binary/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/binary", - "version": "2.0.7", + "version": "2.0.8", "description": "95+ assorted binary / bitwise operations, conversions, utilities", "module": "./index.js", "main": "./lib/index.js", diff --git a/packages/binary/src/float.ts b/packages/binary/src/float.ts index 2a332b3e60..a7b65f057d 100644 --- a/packages/binary/src/float.ts +++ b/packages/binary/src/float.ts @@ -62,7 +62,7 @@ export const uintBitsToFloat64 = (hi: number, lo: number) => { * Converts given float (f32) into a sortable integer representation, * using raw bitwise conversion via {@link floatToIntBits}. * - * {@link https://github.com/tzaeschke/phtree/blob/master/PhTreeRevisited.pdf} + * {@link https://github.com/tzaeschke/phtree/blob/develop/PhTreeRevisited.pdf} * (page 3) * * @param x - value to convert diff --git a/packages/binary/src/logic.ts b/packages/binary/src/logic.ts index 0bbed88efd..ef53027dfa 100644 --- a/packages/binary/src/logic.ts +++ b/packages/binary/src/logic.ts @@ -31,7 +31,7 @@ export const bitMux = (a: number, b: number, s: number) => export const bitDemux = (a: number, b: number, s: number): [number, number] => [ (a & ~s) >>> 0, - (b & s) >>> 0 + (b & s) >>> 0, ]; export const bitNotM = (n: number, x: number) => maskL(n, ~x); diff --git a/packages/binary/src/swizzle.ts b/packages/binary/src/swizzle.ts index e3af89bb32..ee8fd51023 100644 --- a/packages/binary/src/swizzle.ts +++ b/packages/binary/src/swizzle.ts @@ -1,9 +1,4 @@ -import type { - Lane16, - Lane2, - Lane4, - Lane8 -} from "./api"; +import type { Lane16, Lane2, Lane4, Lane8 } from "./api"; /** * Extracts 16-bit lane from given 32bit uint and returns as unsigned diff --git a/packages/bitfield/CHANGELOG.md b/packages/bitfield/CHANGELOG.md index 71c7d7d0c6..2e37462652 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.11](https://github.com/thi-ng/umbrella/compare/@thi.ng/bitfield@0.3.10...@thi.ng/bitfield@0.3.11) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/bitfield + + + + + ## [0.3.10](https://github.com/thi-ng/umbrella/compare/@thi.ng/bitfield@0.3.9...@thi.ng/bitfield@0.3.10) (2020-06-01) **Note:** Version bump only for package @thi.ng/bitfield diff --git a/packages/bitfield/package.json b/packages/bitfield/package.json index 83fd946f0d..a03517ddac 100644 --- a/packages/bitfield/package.json +++ b/packages/bitfield/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/bitfield", - "version": "0.3.10", + "version": "0.3.11", "description": "1D / 2D bit field implementations", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/binary": "^2.0.7", - "@thi.ng/strings": "^1.8.9", + "@thi.ng/api": "^6.11.1", + "@thi.ng/binary": "^2.0.8", + "@thi.ng/strings": "^1.8.10", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/bitfield/src/bitfield.ts b/packages/bitfield/src/bitfield.ts index b7c174ff41..0c36f1a211 100644 --- a/packages/bitfield/src/bitfield.ts +++ b/packages/bitfield/src/bitfield.ts @@ -1,11 +1,5 @@ import { assert } from "@thi.ng/api"; -import { - align, - bitAnd, - bitNot, - bitOr, - bitXor -} from "@thi.ng/binary"; +import { align, bitAnd, bitNot, bitOr, bitXor } from "@thi.ng/binary"; import { binOp, toString } from "./util"; import type { Fn2, IClear, ICopy } from "@thi.ng/api"; diff --git a/packages/bitfield/src/bitmatrix.ts b/packages/bitfield/src/bitmatrix.ts index e3e4289709..729f5a8613 100644 --- a/packages/bitfield/src/bitmatrix.ts +++ b/packages/bitfield/src/bitmatrix.ts @@ -1,11 +1,5 @@ import { assert } from "@thi.ng/api"; -import { - align, - bitAnd, - bitNot, - bitOr, - bitXor -} from "@thi.ng/binary"; +import { align, bitAnd, bitNot, bitOr, bitXor } from "@thi.ng/binary"; import { binOp, toString } from "./util"; import type { Fn2, IClear, ICopy } from "@thi.ng/api"; diff --git a/packages/bitstream/CHANGELOG.md b/packages/bitstream/CHANGELOG.md index 6e2fb1f545..b403a03a9d 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.18](https://github.com/thi-ng/umbrella/compare/@thi.ng/bitstream@1.1.17...@thi.ng/bitstream@1.1.18) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/bitstream + + + + + # [1.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/bitstream@1.0.6...@thi.ng/bitstream@1.1.0) (2019-07-07) ### Features diff --git a/packages/bitstream/package.json b/packages/bitstream/package.json index 95206eab78..19cdd594e9 100644 --- a/packages/bitstream/package.json +++ b/packages/bitstream/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/bitstream", - "version": "1.1.17", + "version": "1.1.18", "description": "ES6 iterator based read/write bit streams with support for variable word widths", "module": "./index.js", "main": "./lib/index.js", diff --git a/packages/bitstream/src/input.ts b/packages/bitstream/src/input.ts index 7c0c67aa22..e810431a10 100644 --- a/packages/bitstream/src/input.ts +++ b/packages/bitstream/src/input.ts @@ -81,7 +81,7 @@ export class BitInputStream { return out; } - readStruct(fields: ([string, number])[]) { + readStruct(fields: [string, number][]) { return fields.reduce((acc: any, [id, word]) => { return (acc[id] = this.read(word)), acc; }, {}); diff --git a/packages/bitstream/test/index.ts b/packages/bitstream/test/index.ts index a16f075801..776d2d2698 100644 --- a/packages/bitstream/test/index.ts +++ b/packages/bitstream/test/index.ts @@ -1,7 +1,7 @@ import * as assert from "assert"; import * as bits from "../src/index"; -describe("BitInputStream", function() { +describe("BitInputStream", function () { let src = new Uint8Array([ 0xbe, 0xef, @@ -11,7 +11,7 @@ describe("BitInputStream", function() { 0xad, 0xf0, 0x0b, - 0xaa + 0xaa, ]); it("iterator", () => { assert.equal( diff --git a/packages/cache/CHANGELOG.md b/packages/cache/CHANGELOG.md index eedfed38ac..6d260bb344 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.47](https://github.com/thi-ng/umbrella/compare/@thi.ng/cache@1.0.46...@thi.ng/cache@1.0.47) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/cache + + + + + ## [1.0.46](https://github.com/thi-ng/umbrella/compare/@thi.ng/cache@1.0.45...@thi.ng/cache@1.0.46) (2020-06-01) **Note:** Version bump only for package @thi.ng/cache diff --git a/packages/cache/package.json b/packages/cache/package.json index ecc9b7a7d5..c82602e043 100644 --- a/packages/cache/package.json +++ b/packages/cache/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/cache", - "version": "1.0.46", + "version": "1.0.47", "description": "In-memory cache implementations with ES6 Map-like API and different eviction strategies", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/dcons": "^2.2.19", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/dcons": "^2.2.20", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/cache/src/api.ts b/packages/cache/src/api.ts index f05b32d054..341cda53fa 100644 --- a/packages/cache/src/api.ts +++ b/packages/cache/src/api.ts @@ -5,7 +5,7 @@ import type { ICopy, IEmpty, ILength, - IRelease + IRelease, } from "@thi.ng/api"; export interface ICache diff --git a/packages/cache/src/lru.ts b/packages/cache/src/lru.ts index 27043447f9..cee49f212f 100644 --- a/packages/cache/src/lru.ts +++ b/packages/cache/src/lru.ts @@ -19,7 +19,7 @@ export class LRUCache implements ICache { maxsize: Infinity, map: () => new Map(), ksize: () => 0, - vsize: () => 0 + vsize: () => 0, }, opts ); diff --git a/packages/cache/src/tlru.ts b/packages/cache/src/tlru.ts index 64d3cce591..2a6533153a 100644 --- a/packages/cache/src/tlru.ts +++ b/packages/cache/src/tlru.ts @@ -73,7 +73,7 @@ export class TLRUCache extends LRUCache { k: key, v: value, s: size, - t + t, }); this.map.set(key, this.items.tail!); } diff --git a/packages/cache/test/lru.ts b/packages/cache/test/lru.ts index 48a54124f9..ad9c86fb76 100644 --- a/packages/cache/test/lru.ts +++ b/packages/cache/test/lru.ts @@ -2,17 +2,20 @@ import * as assert from "assert"; import { LRUCache } from "../src/index"; describe("LRU", () => { - let c: LRUCache; let evicts: any[]; beforeEach(() => { evicts = []; c = new LRUCache( - [["a", 1], ["b", 2], ["c", 3]], + [ + ["a", 1], + ["b", 2], + ["c", 3], + ], { maxlen: 4, - release: (k, v) => evicts.push([k, v]) + release: (k, v) => evicts.push([k, v]), } ); }); @@ -37,5 +40,4 @@ describe("LRU", () => { assert.deepEqual([...c.values()], [1, 2, 4, 5]); assert.deepEqual(evicts, [["c", 3]]); }); - }); diff --git a/packages/cache/test/mru.ts b/packages/cache/test/mru.ts index 3a6105caa5..b16cee9e70 100644 --- a/packages/cache/test/mru.ts +++ b/packages/cache/test/mru.ts @@ -2,17 +2,20 @@ import * as assert from "assert"; import { MRUCache } from "../src/index"; describe("MRU", () => { - let c: MRUCache; let evicts: any[]; beforeEach(() => { evicts = []; c = new MRUCache( - [["a", 1], ["b", 2], ["c", 3]], + [ + ["a", 1], + ["b", 2], + ["c", 3], + ], { maxlen: 4, - release: (k, v) => evicts.push([k, v]) + release: (k, v) => evicts.push([k, v]), } ); }); @@ -37,5 +40,4 @@ describe("MRU", () => { assert.deepEqual([...c.values()], [5, 2, 1, 3]); assert.deepEqual(evicts, [["d", 4]]); }); - }); diff --git a/packages/cache/test/tlru.ts b/packages/cache/test/tlru.ts index 708439da18..a3476f9ba9 100644 --- a/packages/cache/test/tlru.ts +++ b/packages/cache/test/tlru.ts @@ -2,18 +2,21 @@ import * as assert from "assert"; import { TLRUCache } from "../src/index"; describe("TLRU", () => { - let c: TLRUCache; let evicts: any[]; beforeEach(() => { evicts = []; c = new TLRUCache( - [["a", 1], ["b", 2], ["c", 3]], + [ + ["a", 1], + ["b", 2], + ["c", 3], + ], { maxlen: 4, ttl: 10, - release: (k, v) => evicts.push([k, v]) + release: (k, v) => evicts.push([k, v]), } ); }); @@ -44,7 +47,10 @@ describe("TLRU", () => { setTimeout(() => { assert(!c.has("b")); assert(!c.has("c")); - assert.deepEqual(evicts, [["b", 2], ["c", 3]]); + assert.deepEqual(evicts, [ + ["b", 2], + ["c", 3], + ]); assert.deepEqual([...c.keys()], ["a"]); done(); }, 20); @@ -52,16 +58,24 @@ describe("TLRU", () => { it("getSet ttl", (done) => { setTimeout(() => { - c.getSet("a", () => Promise.resolve(10)).then(v => { - assert.equal(v, 10); - assert(!c.has("b")); - assert(!c.has("c")); - assert.deepEqual([...evicts], [["a", 1], ["b", 2], ["c", 3]]); - assert.deepEqual([...c.keys()], ["a"]); - assert.deepEqual([...c.values()], [10]); - done(); - }).catch(done) - }, 20) + c.getSet("a", () => Promise.resolve(10)) + .then((v) => { + assert.equal(v, 10); + assert(!c.has("b")); + assert(!c.has("c")); + assert.deepEqual( + [...evicts], + [ + ["a", 1], + ["b", 2], + ["c", 3], + ] + ); + assert.deepEqual([...c.keys()], ["a"]); + assert.deepEqual([...c.values()], [10]); + done(); + }) + .catch(done); + }, 20); }); - }); diff --git a/packages/checks/CHANGELOG.md b/packages/checks/CHANGELOG.md index af3f99480b..cf2a47f3e5 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.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/checks@2.7.0...@thi.ng/checks@2.7.1) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/checks + + + + + # [2.7.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/checks@2.6.5...@thi.ng/checks@2.7.0) (2020-05-14) diff --git a/packages/checks/package.json b/packages/checks/package.json index 3e2b028f55..a5fe04e9a4 100644 --- a/packages/checks/package.json +++ b/packages/checks/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/checks", - "version": "2.7.0", + "version": "2.7.1", "description": "Collection of 50+ type, feature & value checks", "module": "./index.js", "main": "./lib/index.js", diff --git a/packages/checks/src/is-mobile.ts b/packages/checks/src/is-mobile.ts index 3568663ff2..a54d48b107 100644 --- a/packages/checks/src/is-mobile.ts +++ b/packages/checks/src/is-mobile.ts @@ -1,3 +1,5 @@ export const isMobile = () => typeof navigator !== "undefined" && - /mobile|tablet|ip(ad|hone|od)|android|silk|crios/i.test(navigator.userAgent); + /mobile|tablet|ip(ad|hone|od)|android|silk|crios/i.test( + navigator.userAgent + ); diff --git a/packages/checks/test/index.ts b/packages/checks/test/index.ts index 56af44064a..c05f58de51 100644 --- a/packages/checks/test/index.ts +++ b/packages/checks/test/index.ts @@ -14,7 +14,7 @@ import { isTypedArray } from "../src/is-typedarray"; import { isNil } from "../src/is-nil"; import { isHexColor } from "../src/is-hex-color"; -describe("checks", function() { +describe("checks", function () { it("existsAndNotNull", () => { assert.ok(existsAndNotNull([]), "empty array"); assert.ok(existsAndNotNull(new Uint8Array(1)), "typedarray"); @@ -90,7 +90,7 @@ describe("checks", function() { assert.ok(isPlainObject(new Object()), "obj ctor"); assert.ok(!isPlainObject(Foo), "fn"); assert.ok( - !isPlainObject((function*(): IterableIterator {})()), + !isPlainObject((function* (): IterableIterator {})()), "generator" ); assert.ok(!isPlainObject(new Foo()), "class"); @@ -116,7 +116,10 @@ describe("checks", function() { }); it("isFunction", () => { - assert.ok(isFunction((_: any) => {}), "fn"); + assert.ok( + isFunction((_: any) => {}), + "fn" + ); assert.ok(isFunction(Uint8Array), "ctor"); assert.ok(isFunction("a".toString), "toString"); assert.ok(!isFunction("a"), "empty string"); diff --git a/packages/color/CHANGELOG.md b/packages/color/CHANGELOG.md index 6d3d452192..f4847ca175 100644 --- a/packages/color/CHANGELOG.md +++ b/packages/color/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.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/color@1.2.2...@thi.ng/color@1.2.3) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/color + + + + + ## [1.2.2](https://github.com/thi-ng/umbrella/compare/@thi.ng/color@1.2.1...@thi.ng/color@1.2.2) (2020-06-01) **Note:** Version bump only for package @thi.ng/color diff --git a/packages/color/package.json b/packages/color/package.json index 26f60133e2..b369580a72 100644 --- a/packages/color/package.json +++ b/packages/color/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/color", - "version": "1.2.2", + "version": "1.2.3", "description": "Array-based color ops, conversions, multi-color gradients, presets", "module": "./index.js", "main": "./lib/index.js", @@ -43,15 +43,15 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/compose": "^1.4.8", - "@thi.ng/defmulti": "^1.2.16", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/compose": "^1.4.9", + "@thi.ng/defmulti": "^1.2.17", "@thi.ng/errors": "^1.2.14", - "@thi.ng/math": "^1.7.10", - "@thi.ng/strings": "^1.8.9", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/math": "^1.7.11", + "@thi.ng/strings": "^1.8.10", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/color/src/convert.ts b/packages/color/src/convert.ts index f7d136190a..d1b74c494c 100644 --- a/packages/color/src/convert.ts +++ b/packages/color/src/convert.ts @@ -23,12 +23,7 @@ import { rgbaYcbcra } from "./rgba-ycbcra"; import { xyzaRgba } from "./xyza-rgba"; import { ycbcraRgba } from "./ycbcra-rgba"; import type { Implementation2O, MultiFn2O } from "@thi.ng/defmulti"; -import type { - Color, - ColorConversion, - IColor, - ReadonlyColor -} from "./api"; +import type { Color, ColorConversion, IColor, ReadonlyColor } from "./api"; export const convert: MultiFn2O< string | number | ReadonlyColor | IColor, @@ -155,7 +150,7 @@ defConversion(ColorMode.RGBA, ColorMode.CSS, (x: any) => parseCss(x)); ColorMode.HSVA, ColorMode.INT32, ColorMode.XYZA, - ColorMode.YCBCRA + ColorMode.YCBCRA, ].forEach((id) => defConversion(id, ColorMode.CSS, (x: any) => convert(parseCss(x), id, ColorMode.RGBA) @@ -244,7 +239,7 @@ defConversion(ColorMode.HSLA, ColorMode.HSVA, (x: any) => hsvaHsla([], x)); [ColorMode.HSLA, rgbaHsla], [ColorMode.HSVA, rgbaHsva], [ColorMode.XYZA, rgbaXyza], - [ColorMode.YCBCRA, rgbaYcbcra] + [ColorMode.YCBCRA, rgbaYcbcra], ]).forEach(([id, fn]) => defConversion(id, ColorMode.RGBA, (x: any) => fn([], x)) ); diff --git a/packages/color/src/internal/matrix-ops.ts b/packages/color/src/internal/matrix-ops.ts index 9177d100af..60138f8b88 100644 --- a/packages/color/src/internal/matrix-ops.ts +++ b/packages/color/src/internal/matrix-ops.ts @@ -55,5 +55,5 @@ export const mulM45 = (a: ColorMatrix, b: ColorMatrix): ColorMatrix => [ dotS4(b, a, 15, 1, 1, 5), dotS4(b, a, 15, 2, 1, 5), dotS4(b, a, 15, 3, 1, 5), - dotS4(b, a, 15, 4, 1, 5) + b[19] + dotS4(b, a, 15, 4, 1, 5) + b[19], ]; diff --git a/packages/color/src/kelvin-rgba.ts b/packages/color/src/kelvin-rgba.ts index 2638e344b1..272cc1c774 100644 --- a/packages/color/src/kelvin-rgba.ts +++ b/packages/color/src/kelvin-rgba.ts @@ -17,7 +17,7 @@ const B3 = 0.453646839257496; /** * Based on: - * - {@link https://github.com/neilbartlett/color-temperature/blob/master/index.js} + * - {@link https://github.com/neilbartlett/color-temperature/blob/develop/index.js} * - {@link http://www.zombieprototypes.com/?p=210} * * Uses adjusted coefficients to produce normalized RGB values. diff --git a/packages/color/src/names.ts b/packages/color/src/names.ts index c7322eca42..4d3ec21eab 100644 --- a/packages/color/src/names.ts +++ b/packages/color/src/names.ts @@ -147,5 +147,5 @@ export const CSS_NAMES: IObjectOf = { white: "fff", whitesmoke: "f5f5f5", yellow: "ff0", - yellowgreen: "9acd32" + yellowgreen: "9acd32", }; diff --git a/packages/color/src/parse-css.ts b/packages/color/src/parse-css.ts index 2bd0fd628d..66413d0749 100644 --- a/packages/color/src/parse-css.ts +++ b/packages/color/src/parse-css.ts @@ -23,14 +23,14 @@ export const parseCss = (col: string | IDeref) => { parseChannel(match[2]), parseChannel(match[3]), parseChannel(match[4]), - maybeParseFloat(match[5], 1) + maybeParseFloat(match[5], 1), ]; } else { return hslaRgba(null, [ maybeParseFloat(match[2]) / 360, parseChannel(match[3]), parseChannel(match[4]), - maybeParseFloat(match[5], 1) + maybeParseFloat(match[5], 1), ]); } } else { diff --git a/packages/color/src/rgba-hcva.ts b/packages/color/src/rgba-hcva.ts index c95b947fe0..ee3cd23ff3 100644 --- a/packages/color/src/rgba-hcva.ts +++ b/packages/color/src/rgba-hcva.ts @@ -5,7 +5,7 @@ import type { ColorOp } from "./api"; /** * Based on: - * {@link https://github.com/tobspr/GLSL-Color-Spaces/blob/master/ColorSpaces.inc.glsl#L159} + * {@link https://github.com/tobspr/GLSL-Color-Spaces/blob/develop/ColorSpaces.inc.glsl#L159} * * @param out - result * @param src - source color diff --git a/packages/color/src/rgba-hcya.ts b/packages/color/src/rgba-hcya.ts index 8cb27bfedf..ba70ebb425 100644 --- a/packages/color/src/rgba-hcya.ts +++ b/packages/color/src/rgba-hcya.ts @@ -6,7 +6,7 @@ import type { ColorOp } from "./api"; /** * Ported from: - * {@link https://github.com/tobspr/GLSL-Color-Spaces/blob/master/ColorSpaces.inc.glsl#L226} + * {@link https://github.com/tobspr/GLSL-Color-Spaces/blob/develop/ColorSpaces.inc.glsl#L226} * * @param out - result * @param src - source color diff --git a/packages/color/src/rgba-hsia.ts b/packages/color/src/rgba-hsia.ts index 97f6f1bac8..cadb040c04 100644 --- a/packages/color/src/rgba-hsia.ts +++ b/packages/color/src/rgba-hsia.ts @@ -1,9 +1,4 @@ -import { - atan2Abs, - SQRT3, - TAU, - THIRD -} from "@thi.ng/math"; +import { atan2Abs, SQRT3, TAU, THIRD } from "@thi.ng/math"; import { setC3 } from "@thi.ng/vectors"; import { clamp } from "./clamp"; import type { ColorOp } from "./api"; diff --git a/packages/compare/CHANGELOG.md b/packages/compare/CHANGELOG.md index c22142d4ca..78b4b24f4f 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.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/compare@1.3.7...@thi.ng/compare@1.3.8) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/compare + + + + + ## [1.3.7](https://github.com/thi-ng/umbrella/compare/@thi.ng/compare@1.3.6...@thi.ng/compare@1.3.7) (2020-06-01) **Note:** Version bump only for package @thi.ng/compare diff --git a/packages/compare/package.json b/packages/compare/package.json index 4a9c6e415e..735e39f2f8 100644 --- a/packages/compare/package.json +++ b/packages/compare/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/compare", - "version": "1.3.7", + "version": "1.3.8", "description": "Comparators with support for types implementing the @thi.ng/api/ICompare interface", "module": "./index.js", "main": "./lib/index.js", @@ -43,7 +43,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", + "@thi.ng/api": "^6.11.1", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/compose/CHANGELOG.md b/packages/compose/CHANGELOG.md index c9236a3b88..f81e9f573b 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.9](https://github.com/thi-ng/umbrella/compare/@thi.ng/compose@1.4.8...@thi.ng/compose@1.4.9) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/compose + + + + + ## [1.4.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/compose@1.4.7...@thi.ng/compose@1.4.8) (2020-06-01) **Note:** Version bump only for package @thi.ng/compose diff --git a/packages/compose/package.json b/packages/compose/package.json index fb1efe22ae..221f6be4c3 100644 --- a/packages/compose/package.json +++ b/packages/compose/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/compose", - "version": "1.4.8", + "version": "1.4.9", "description": "Optimized functional composition helpers", "module": "./index.js", "main": "./lib/index.js", @@ -43,7 +43,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", + "@thi.ng/api": "^6.11.1", "@thi.ng/errors": "^1.2.14", "tslib": "^1.12.0" }, diff --git a/packages/compose/src/complement.ts b/packages/compose/src/complement.ts index dfc1bd15e7..c37ff03617 100644 --- a/packages/compose/src/complement.ts +++ b/packages/compose/src/complement.ts @@ -8,7 +8,7 @@ import type { Fn6, Fn7, Fn8, - FnAny + FnAny, } from "@thi.ng/api"; export function complement(f: Fn0): Fn0; diff --git a/packages/compose/src/partial.ts b/packages/compose/src/partial.ts index 2de6b6249a..18960ccebf 100644 --- a/packages/compose/src/partial.ts +++ b/packages/compose/src/partial.ts @@ -8,7 +8,7 @@ import type { FnO5, FnO6, FnO7, - FnO8 + FnO8, } from "@thi.ng/api"; export function partial(fn: FnO, a: A): FnAny; diff --git a/packages/compose/test/delay.ts b/packages/compose/test/delay.ts index a03b216410..a24e4d299a 100644 --- a/packages/compose/test/delay.ts +++ b/packages/compose/test/delay.ts @@ -3,7 +3,6 @@ import { delay } from "../src"; import * as assert from "assert"; describe("delay", () => { - it("only executes once", () => { let num = 0; const a = delay(() => ++num); diff --git a/packages/compose/test/juxt.ts b/packages/compose/test/juxt.ts index 394cdb427b..bd81d6b34c 100644 --- a/packages/compose/test/juxt.ts +++ b/packages/compose/test/juxt.ts @@ -3,7 +3,6 @@ import { juxt } from "../src"; import * as assert from "assert"; describe("juxt", () => { - it("2-args", () => { const a = juxt( (x: number) => x + 1, @@ -26,7 +25,7 @@ describe("juxt", () => { (x: number) => x + 1, (x: number) => x * 10, (x: number) => "id-" + x, - (x: number) => [x, x], + (x: number) => [x, x] ); assert.deepEqual(a(1), [2, 10, "id-1", [1, 1]]); }); @@ -37,7 +36,7 @@ describe("juxt", () => { (x: number) => x * 10, (x: number) => "id-" + x, (x: number) => [x, x], - (x: number) => ({ a: x }), + (x: number) => ({ a: x }) ); assert.deepEqual(a(1), [2, 10, "id-1", [1, 1], { a: 1 }]); }); @@ -49,7 +48,7 @@ describe("juxt", () => { (x: number) => x * 10, (x: number) => "id-" + x, (x: number) => [x, x], - (x: number) => ({ a: x }), + (x: number) => ({ a: x }) ); assert.deepEqual(a(1), [2, 0, 10, "id-1", [1, 1], { a: 1 }]); }); @@ -62,7 +61,7 @@ describe("juxt", () => { (x: number) => x * 100, (x: number) => "id-" + x, (x: number) => [x, x], - (x: number) => ({ a: x }), + (x: number) => ({ a: x }) ); assert.deepEqual(a(1), [2, 0, 10, 100, "id-1", [1, 1], { a: 1 }]); }); @@ -76,7 +75,7 @@ describe("juxt", () => { (x: number) => x * 1000, (x: number) => "id-" + x, (x: number) => [x, x], - (x: number) => ({ a: x }), + (x: number) => ({ a: x }) ); assert.deepEqual(a(1), [2, 0, 10, 100, 1000, "id-1", [1, 1], { a: 1 }]); }); @@ -91,8 +90,18 @@ describe("juxt", () => { (x: number) => x * 10000, (x: number) => "id-" + x, (x: number) => [x, x], - (x: number) => ({ a: x }), + (x: number) => ({ a: x }) ); - assert.deepEqual(a(1), [2, 0, 10, 100, 1000, 10000, "id-1", [1, 1], { a: 1 }]); + assert.deepEqual(a(1), [ + 2, + 0, + 10, + 100, + 1000, + 10000, + "id-1", + [1, 1], + { a: 1 }, + ]); }); }); diff --git a/packages/csp/CHANGELOG.md b/packages/csp/CHANGELOG.md index 2c72f559ad..28cd1b38a8 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.27](https://github.com/thi-ng/umbrella/compare/@thi.ng/csp@1.1.26...@thi.ng/csp@1.1.27) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/csp + + + + + ## [1.1.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/csp@1.1.25...@thi.ng/csp@1.1.26) (2020-06-01) **Note:** Version bump only for package @thi.ng/csp diff --git a/packages/csp/package.json b/packages/csp/package.json index 3b4c1d53cd..d0eeb3f503 100644 --- a/packages/csp/package.json +++ b/packages/csp/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/csp", - "version": "1.1.26", + "version": "1.1.27", "description": "ES6 promise based CSP primitives & operations", "module": "./index.js", "main": "./lib/index.js", @@ -47,12 +47,12 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/arrays": "^0.6.8", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/dcons": "^2.2.19", + "@thi.ng/api": "^6.11.1", + "@thi.ng/arrays": "^0.6.9", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/dcons": "^2.2.20", "@thi.ng/errors": "^1.2.14", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/csp/src/api.ts b/packages/csp/src/api.ts index 89ffd4af13..c281b8b2d2 100644 --- a/packages/csp/src/api.ts +++ b/packages/csp/src/api.ts @@ -1,10 +1,5 @@ import { Channel } from "./channel"; -import type { - Fn, - IID, - ILength, - IRelease -} from "@thi.ng/api"; +import type { Fn, IID, ILength, IRelease } from "@thi.ng/api"; export interface ChannelItem { value(): Promise; diff --git a/packages/csp/test/graph.ts b/packages/csp/test/graph.ts index 5cf0489d26..aad090c5da 100644 --- a/packages/csp/test/graph.ts +++ b/packages/csp/test/graph.ts @@ -20,7 +20,7 @@ export function node( const $: Node = { ins: >>{}, outs: >>{}, - state: init || {} + state: init || {}, }; for (let k of Object.keys(ins)) { const val = ins[k]; diff --git a/packages/csp/test/node.ts b/packages/csp/test/node.ts index 6efdb49145..fade9037f2 100644 --- a/packages/csp/test/node.ts +++ b/packages/csp/test/node.ts @@ -247,8 +247,8 @@ export function add(spec: Partial) { update: (n) => { const res = n.state.a + n.state.b; return n.outs.out.channel().write(res); - } - } + }, + }, }); } @@ -257,12 +257,12 @@ export const a = add({ id: "a", state: { b: 42 } }); export const b = add({ id: "b", ins: { a: { src: a.outs.out, tx: tx.map((x) => x * 1) } }, - state: { b: 100 } + state: { b: 100 }, }); export const c = add({ id: "c", ins: { a: b.outs.out, b: b.outs.out }, - outs: { out: res } + outs: { out: res }, }); // b.disable("b"); diff --git a/packages/dcons/CHANGELOG.md b/packages/dcons/CHANGELOG.md index 3d67b29fbc..b199616d5a 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.2.20](https://github.com/thi-ng/umbrella/compare/@thi.ng/dcons@2.2.19...@thi.ng/dcons@2.2.20) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/dcons + + + + + ## [2.2.19](https://github.com/thi-ng/umbrella/compare/@thi.ng/dcons@2.2.18...@thi.ng/dcons@2.2.19) (2020-06-01) **Note:** Version bump only for package @thi.ng/dcons diff --git a/packages/dcons/package.json b/packages/dcons/package.json index 36bca74a6c..24d8956eca 100644 --- a/packages/dcons/package.json +++ b/packages/dcons/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dcons", - "version": "2.2.19", + "version": "2.2.20", "description": "Double-linked list with comprehensive set of operations", "module": "./index.js", "main": "./lib/index.js", @@ -43,13 +43,13 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/compare": "^1.3.7", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/compare": "^1.3.8", "@thi.ng/equiv": "^1.0.23", "@thi.ng/errors": "^1.2.14", - "@thi.ng/random": "^1.4.10", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/random": "^1.4.11", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/dcons/src/index.ts b/packages/dcons/src/index.ts index c085675ffb..19e4af1096 100644 --- a/packages/dcons/src/index.ts +++ b/packages/dcons/src/index.ts @@ -18,7 +18,7 @@ import type { ISeq, ISeqable, IStack, - Predicate + Predicate, } from "@thi.ng/api"; import type { IRandom } from "@thi.ng/random"; import type { IReducible, ReductionFn } from "@thi.ng/transducers"; @@ -143,7 +143,7 @@ export class DCons }, next() { return cell !== last && cell.next ? $seq(cell.next) : undefined; - } + }, }); return cell ? $seq(cell) : undefined; } diff --git a/packages/defmulti/CHANGELOG.md b/packages/defmulti/CHANGELOG.md index d76eb52d3f..85d02718cb 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.2.17](https://github.com/thi-ng/umbrella/compare/@thi.ng/defmulti@1.2.16...@thi.ng/defmulti@1.2.17) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/defmulti + + + + + ## [1.2.16](https://github.com/thi-ng/umbrella/compare/@thi.ng/defmulti@1.2.15...@thi.ng/defmulti@1.2.16) (2020-06-01) **Note:** Version bump only for package @thi.ng/defmulti diff --git a/packages/defmulti/package.json b/packages/defmulti/package.json index 28cd46d3c2..3a624bf73f 100644 --- a/packages/defmulti/package.json +++ b/packages/defmulti/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/defmulti", - "version": "1.2.16", + "version": "1.2.17", "description": "Dynamic, extensible multiple dispatch via user supplied dispatch function.", "module": "./index.js", "main": "./lib/index.js", @@ -43,7 +43,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", + "@thi.ng/api": "^6.11.1", "@thi.ng/errors": "^1.2.14", "tslib": "^1.12.0" }, diff --git a/packages/defmulti/src/api.ts b/packages/defmulti/src/api.ts index c4ad206cff..22da8a38da 100644 --- a/packages/defmulti/src/api.ts +++ b/packages/defmulti/src/api.ts @@ -8,7 +8,7 @@ import type { Fn7, Fn8, FnAny, - IObjectOf + IObjectOf, } from "@thi.ng/api"; export type DispatchFn = FnAny; diff --git a/packages/defmulti/src/constants.ts b/packages/defmulti/src/constants.ts index 4df58875fd..bfb7e4b73d 100644 --- a/packages/defmulti/src/constants.ts +++ b/packages/defmulti/src/constants.ts @@ -9,4 +9,4 @@ export const DEFAULT: unique symbol = Symbol(); export let LOGGER: ILogger = NULL_LOGGER; -export const setLogger = (logger: ILogger) => (LOGGER = logger); \ No newline at end of file +export const setLogger = (logger: ILogger) => (LOGGER = logger); diff --git a/packages/defmulti/src/defmulti.ts b/packages/defmulti/src/defmulti.ts index b0527e70d6..1d0b2cb8c6 100644 --- a/packages/defmulti/src/defmulti.ts +++ b/packages/defmulti/src/defmulti.ts @@ -37,7 +37,7 @@ import type { MultiFn7, MultiFn7O, MultiFn8, - MultiFn8O + MultiFn8O, } from "./api"; /** diff --git a/packages/defmulti/test/index.ts b/packages/defmulti/test/index.ts index cbdc8305d2..86dbfd4c85 100644 --- a/packages/defmulti/test/index.ts +++ b/packages/defmulti/test/index.ts @@ -5,7 +5,7 @@ import { defmulti, defmultiN, implementations, - setLogger + setLogger, } from "../src/index"; // prettier-ignore diff --git a/packages/dgraph-dot/CHANGELOG.md b/packages/dgraph-dot/CHANGELOG.md index 0b27c8fa4e..f68a41e951 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.12](https://github.com/thi-ng/umbrella/compare/@thi.ng/dgraph-dot@0.1.11...@thi.ng/dgraph-dot@0.1.12) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/dgraph-dot + + + + + ## [0.1.11](https://github.com/thi-ng/umbrella/compare/@thi.ng/dgraph-dot@0.1.10...@thi.ng/dgraph-dot@0.1.11) (2020-06-01) **Note:** Version bump only for package @thi.ng/dgraph-dot diff --git a/packages/dgraph-dot/package.json b/packages/dgraph-dot/package.json index b2fb4527b1..451cfeaef5 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.11", + "version": "0.1.12", "description": "Customizable Graphviz DOT serialization for @thi.ng/dgraph", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/dgraph": "^1.2.11", - "@thi.ng/dot": "^1.2.8" + "@thi.ng/api": "^6.11.1", + "@thi.ng/dgraph": "^1.2.12", + "@thi.ng/dot": "^1.2.9" }, "files": [ "*.js", diff --git a/packages/dgraph/CHANGELOG.md b/packages/dgraph/CHANGELOG.md index 50fac3bb29..1d040a1063 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.2.12](https://github.com/thi-ng/umbrella/compare/@thi.ng/dgraph@1.2.11...@thi.ng/dgraph@1.2.12) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/dgraph + + + + + ## [1.2.11](https://github.com/thi-ng/umbrella/compare/@thi.ng/dgraph@1.2.10...@thi.ng/dgraph@1.2.11) (2020-06-01) **Note:** Version bump only for package @thi.ng/dgraph diff --git a/packages/dgraph/package.json b/packages/dgraph/package.json index 10e3ee8826..763fc4c5f3 100644 --- a/packages/dgraph/package.json +++ b/packages/dgraph/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dgraph", - "version": "1.2.11", + "version": "1.2.12", "description": "Type-agnostic directed acyclic graph (DAG) & graph operations", "module": "./index.js", "main": "./lib/index.js", @@ -43,11 +43,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/associative": "^4.0.11", + "@thi.ng/api": "^6.11.1", + "@thi.ng/associative": "^4.1.0", "@thi.ng/equiv": "^1.0.23", "@thi.ng/errors": "^1.2.14", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/dgraph/test/index.ts b/packages/dgraph/test/index.ts index cd9d5b5a82..36ac3f800c 100644 --- a/packages/dgraph/test/index.ts +++ b/packages/dgraph/test/index.ts @@ -39,20 +39,41 @@ describe("dgraph", () => { }); it("sort", () => { - assert.deepEqual(g.sort(), [[30, 40], [3, 4], [10, 20], [1, 2]]); + assert.deepEqual(g.sort(), [ + [30, 40], + [3, 4], + [10, 20], + [1, 2], + ]); g.addDependency([30, 40], [50, 60]); assert.deepEqual(g.sort(), [ [50, 60], [30, 40], [3, 4], [10, 20], - [1, 2] + [1, 2], ]); }); it("iterator", () => { - assert.deepEqual([...g], [[30, 40], [3, 4], [10, 20], [1, 2]]); - assert.deepEqual([...g], [[30, 40], [3, 4], [10, 20], [1, 2]]); + assert.deepEqual( + [...g], + [ + [30, 40], + [3, 4], + [10, 20], + [1, 2], + ] + ); + assert.deepEqual( + [...g], + [ + [30, 40], + [3, 4], + [10, 20], + [1, 2], + ] + ); }); it("separate nodes", () => { @@ -60,6 +81,9 @@ describe("dgraph", () => { g.addNode([1, 2]); g.addNode([3, 4]); g.addNode([3, 4]); - assert.deepEqual(g.sort(), [[3, 4], [1, 2]]); + assert.deepEqual(g.sort(), [ + [3, 4], + [1, 2], + ]); }); }); diff --git a/packages/diff/CHANGELOG.md b/packages/diff/CHANGELOG.md index ce75f68685..a563547c13 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. +## [3.2.23](https://github.com/thi-ng/umbrella/compare/@thi.ng/diff@3.2.22...@thi.ng/diff@3.2.23) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/diff + + + + + ## [3.2.22](https://github.com/thi-ng/umbrella/compare/@thi.ng/diff@3.2.21...@thi.ng/diff@3.2.22) (2020-06-01) **Note:** Version bump only for package @thi.ng/diff diff --git a/packages/diff/package.json b/packages/diff/package.json index 8163fc2516..ed2fbce936 100644 --- a/packages/diff/package.json +++ b/packages/diff/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/diff", - "version": "3.2.22", + "version": "3.2.23", "description": "Customizable diff implementations for arrays (sequential) & objects (associative), with or without linear edit logs", "module": "./index.js", "main": "./lib/index.js", @@ -42,7 +42,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", + "@thi.ng/api": "^6.11.1", "@thi.ng/equiv": "^1.0.23", "tslib": "^1.12.0" }, diff --git a/packages/diff/test/array.ts b/packages/diff/test/array.ts index cf2335a32f..9814b0c54a 100644 --- a/packages/diff/test/array.ts +++ b/packages/diff/test/array.ts @@ -1,13 +1,13 @@ import * as assert from "assert"; import { ArrayDiff, diffArray, DiffMode } from "../src/index"; -describe("array", function() { +describe("array", function () { const state = >{ distance: 0, adds: {}, dels: {}, const: {}, - linear: [] + linear: [], }; it("simple (null,null)", () => { @@ -19,7 +19,7 @@ describe("array", function() { ...state, distance: 3, adds: { 0: 1, 1: 2, 2: 3 }, - linear: [1, 0, 1, 1, 1, 2, 1, 2, 3] + linear: [1, 0, 1, 1, 1, 2, 1, 2, 3], }); }); @@ -28,7 +28,7 @@ describe("array", function() { ...state, distance: 3, dels: { 0: 1, 1: 2, 2: 3 }, - linear: [-1, 0, 1, -1, 1, 2, -1, 2, 3] + linear: [-1, 0, 1, -1, 1, 2, -1, 2, 3], }); }); @@ -38,7 +38,7 @@ describe("array", function() { adds: { 2: 4 }, dels: { 2: 3 }, const: { 0: 1, 1: 2 }, - linear: [0, 0, 1, 0, 1, 2, -1, 2, 3, 1, 2, 4] + linear: [0, 0, 1, 0, 1, 2, -1, 2, 3, 1, 2, 4], }); }); @@ -50,7 +50,7 @@ describe("array", function() { adds: { 2: 5 }, dels: { 2: 3 }, const: { 0: 1, 1: 2, 3: 4 }, - linear: [0, 0, 1, 0, 1, 2, -1, 2, 3, 1, 2, 5, 0, 3, 4] + linear: [0, 0, 1, 0, 1, 2, -1, 2, 3, 1, 2, 5, 0, 3, 4], }); }); @@ -62,7 +62,7 @@ describe("array", function() { adds: { 3: 5 }, dels: {}, const: { 0: 1, 1: 2, 2: 3, 3: 4 }, - linear: [0, 0, 1, 0, 1, 2, 0, 2, 3, 1, 3, 5, 0, 3, 4] + linear: [0, 0, 1, 0, 1, 2, 0, 2, 3, 1, 3, 5, 0, 3, 4], }); }); @@ -78,7 +78,7 @@ describe("array", function() { adds: {}, dels: {}, const: {}, - linear: [1, 3, 5] + linear: [1, 3, 5], } ); }); diff --git a/packages/dl-asset/CHANGELOG.md b/packages/dl-asset/CHANGELOG.md index c4b8bf82e4..4165ced101 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.3.11](https://github.com/thi-ng/umbrella/compare/@thi.ng/dl-asset@0.3.10...@thi.ng/dl-asset@0.3.11) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/dl-asset + + + + + ## [0.3.10](https://github.com/thi-ng/umbrella/compare/@thi.ng/dl-asset@0.3.9...@thi.ng/dl-asset@0.3.10) (2020-06-01) **Note:** Version bump only for package @thi.ng/dl-asset diff --git a/packages/dl-asset/package.json b/packages/dl-asset/package.json index f9abed42d3..c402bd03f8 100644 --- a/packages/dl-asset/package.json +++ b/packages/dl-asset/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dl-asset", - "version": "0.3.10", + "version": "0.3.11", "description": "Local asset download for web apps, with automatic MIME type detection", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/mime": "^0.1.12", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/mime": "^0.1.13", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/dl-asset/src/index.ts b/packages/dl-asset/src/index.ts index 09238d0f59..9049be605c 100644 --- a/packages/dl-asset/src/index.ts +++ b/packages/dl-asset/src/index.ts @@ -57,7 +57,7 @@ export const download = ( mime: undefined, expire: 1e4, utf8: false, - ...opts + ...opts, }; if (_opts.mime === undefined) { const match = /\.(\w+)$/.exec(name); @@ -65,12 +65,10 @@ export const download = ( } if (isString(src) && _opts.utf8) { src = new TextEncoder().encode(src); - _opts.mime+=";charset=UTF-8"; + _opts.mime += ";charset=UTF-8"; } const uri = URL.createObjectURL( - !(src instanceof Blob) - ? new Blob([src], { type: _opts.mime }) - : src + !(src instanceof Blob) ? new Blob([src], { type: _opts.mime }) : src ); const link = document.createElement("a"); link.setAttribute("download", name); diff --git a/packages/dlogic/CHANGELOG.md b/packages/dlogic/CHANGELOG.md index aab39f5142..62dc518199 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.24](https://github.com/thi-ng/umbrella/compare/@thi.ng/dlogic@1.0.23...@thi.ng/dlogic@1.0.24) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/dlogic + + + + + # [1.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/dlogic@0.1.2...@thi.ng/dlogic@1.0.0) (2019-01-21) ### Build System diff --git a/packages/dlogic/package.json b/packages/dlogic/package.json index 3f58723bc1..c653219753 100644 --- a/packages/dlogic/package.json +++ b/packages/dlogic/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dlogic", - "version": "1.0.23", + "version": "1.0.24", "description": "Assorted digital logic ops / constructs", "module": "./index.js", "main": "./lib/index.js", diff --git a/packages/dlogic/src/index.ts b/packages/dlogic/src/index.ts index a9923b9083..50558b9c53 100644 --- a/packages/dlogic/src/index.ts +++ b/packages/dlogic/src/index.ts @@ -222,7 +222,7 @@ export const mux = (a: boolean, b: boolean, s: boolean) => */ export const demux = (i: boolean, s: boolean): [boolean, boolean] => [ i && !s, - i && s + i && s, ]; /** @@ -233,7 +233,7 @@ export const demux = (i: boolean, s: boolean): [boolean, boolean] => [ */ export const hadd1 = (a: boolean, b: boolean): Sum => ({ s: a !== b, - c: a && b + c: a && b, }); /** @@ -245,7 +245,7 @@ export const hadd1 = (a: boolean, b: boolean): Sum => ({ */ export const fadd1 = (a: boolean, b: boolean, c: boolean): Sum => ({ s: (a !== b) !== c, - c: (a !== b && c) || (a && b) + c: (a !== b && c) || (a && b), }); /** diff --git a/packages/dot/CHANGELOG.md b/packages/dot/CHANGELOG.md index 48c0a61503..577daa55b7 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.9](https://github.com/thi-ng/umbrella/compare/@thi.ng/dot@1.2.8...@thi.ng/dot@1.2.9) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/dot + + + + + ## [1.2.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/dot@1.2.7...@thi.ng/dot@1.2.8) (2020-06-01) **Note:** Version bump only for package @thi.ng/dot diff --git a/packages/dot/package.json b/packages/dot/package.json index d5ad525d05..f658f21988 100644 --- a/packages/dot/package.json +++ b/packages/dot/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dot", - "version": "1.2.8", + "version": "1.2.9", "description": "Graphviz document abstraction & serialization to DOT format", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/dsp-io-wav/CHANGELOG.md b/packages/dsp-io-wav/CHANGELOG.md index 82b8274951..fec35a0b7b 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.17](https://github.com/thi-ng/umbrella/compare/@thi.ng/dsp-io-wav@0.1.16...@thi.ng/dsp-io-wav@0.1.17) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/dsp-io-wav + + + + + ## [0.1.16](https://github.com/thi-ng/umbrella/compare/@thi.ng/dsp-io-wav@0.1.15...@thi.ng/dsp-io-wav@0.1.16) (2020-06-01) **Note:** Version bump only for package @thi.ng/dsp-io-wav diff --git a/packages/dsp-io-wav/package.json b/packages/dsp-io-wav/package.json index d04317cceb..562d0a1095 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.16", + "version": "0.1.17", "description": "WAV file format generation", "module": "./index.js", "main": "./lib/index.js", @@ -43,10 +43,10 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/binary": "^2.0.7", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/transducers-binary": "^0.5.16", + "@thi.ng/api": "^6.11.1", + "@thi.ng/binary": "^2.0.8", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/transducers-binary": "^0.5.17", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/dsp-io-wav/src/write.ts b/packages/dsp-io-wav/src/write.ts index 25a22a5507..254f0d45d3 100644 --- a/packages/dsp-io-wav/src/write.ts +++ b/packages/dsp-io-wav/src/write.ts @@ -1,26 +1,7 @@ import { assert } from "@thi.ng/api"; -import { - f32u16, - f32u24, - f32u32, - f32u8 -} from "@thi.ng/binary"; -import { - comp, - concat, - iterator, - map, - reduce, - take -} from "@thi.ng/transducers"; -import { - asBytes, - bytes, - u16, - u24, - u32, - u8 -} from "@thi.ng/transducers-binary"; +import { f32u16, f32u24, f32u32, f32u8 } from "@thi.ng/binary"; +import { comp, concat, iterator, map, reduce, take } from "@thi.ng/transducers"; +import { asBytes, bytes, u16, u24, u32, u8 } from "@thi.ng/transducers-binary"; import type { Fn, IObjectOf } from "@thi.ng/api"; import type { BinStructItem } from "@thi.ng/transducers-binary"; import type { WavSpec } from "./api"; @@ -31,7 +12,7 @@ const CONVERTERS: IObjectOf> = { 8: (x: number) => u8(f32u8(x)), 16: (x: number) => u16(f32u16(x), true), 24: (x: number) => u24(f32u24(x), true), - 32: (x: number) => u32(f32u32(x), true) + 32: (x: number) => u32(f32u32(x), true), }; export const wavHeader = (spec: WavSpec): BinStructItem[] => { @@ -51,7 +32,7 @@ export const wavHeader = (spec: WavSpec): BinStructItem[] => { u16(blockAlign, true), u16(spec.bits, true), u32(0x64617461, false), // 'data' - u32(dataLength, true) + u32(dataLength, true), ]; }; diff --git a/packages/dsp-io-wav/test/index.ts b/packages/dsp-io-wav/test/index.ts index dd7aefb394..1416486f99 100644 --- a/packages/dsp-io-wav/test/index.ts +++ b/packages/dsp-io-wav/test/index.ts @@ -8,7 +8,7 @@ describe("dsp-io-wav", () => { ...wavByteArray( { sampleRate: 48000, channels: 1, length: 4, bits: 16 }, [-1, -0.5, 0, 1] - ) + ), ], // prettier-ignore [ diff --git a/packages/dsp/CHANGELOG.md b/packages/dsp/CHANGELOG.md index 046a51e62a..b65dfab7e4 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. +## [2.0.19](https://github.com/thi-ng/umbrella/compare/@thi.ng/dsp@2.0.18...@thi.ng/dsp@2.0.19) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/dsp + + + + + ## [2.0.18](https://github.com/thi-ng/umbrella/compare/@thi.ng/dsp@2.0.17...@thi.ng/dsp@2.0.18) (2020-06-01) **Note:** Version bump only for package @thi.ng/dsp diff --git a/packages/dsp/package.json b/packages/dsp/package.json index 6a136b1a60..51b3ff0402 100644 --- a/packages/dsp/package.json +++ b/packages/dsp/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dsp", - "version": "2.0.18", + "version": "2.0.19", "description": "Composable signal generators, oscillators, filters, FFT, spectrum, windowing & related DSP utils", "module": "./index.js", "main": "./lib/index.js", @@ -43,10 +43,10 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/math": "^1.7.10", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/math": "^1.7.11", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/dsp/src/comp/mapg.ts b/packages/dsp/src/comp/mapg.ts index 0021f38c02..94dcd7c7af 100644 --- a/packages/dsp/src/comp/mapg.ts +++ b/packages/dsp/src/comp/mapg.ts @@ -1,12 +1,6 @@ import { illegalArity } from "@thi.ng/errors"; import { AGen } from "../gen/agen"; -import type { - Fn2, - Fn3, - Fn4, - Fn5, - FnAny -} from "@thi.ng/api"; +import type { Fn2, Fn3, Fn4, Fn5, FnAny } from "@thi.ng/api"; import type { IGen } from "../api"; export function mapG(op: Fn2, a: IGen, init: T): IGen; diff --git a/packages/dsp/src/fft/fft.ts b/packages/dsp/src/fft/fft.ts index 893bdeb806..c99d857941 100644 --- a/packages/dsp/src/fft/fft.ts +++ b/packages/dsp/src/fft/fft.ts @@ -12,7 +12,7 @@ const PI = Math.PI; */ export const complexArray = (n: number): ComplexArray => [ new Float64Array(n), - new Float64Array(n) + new Float64Array(n), ]; /** diff --git a/packages/dsp/src/gen/adsr.ts b/packages/dsp/src/gen/adsr.ts index b88f9440bf..9e3340662d 100644 --- a/packages/dsp/src/gen/adsr.ts +++ b/packages/dsp/src/gen/adsr.ts @@ -10,7 +10,7 @@ const enum EnvPhase { DECAY, SUSTAIN, RELEASE, - IDLE + IDLE, } export interface ADSROpts { @@ -101,7 +101,7 @@ export class ADSR extends AGen implements IReset { dcurve: 0.001, slen: Infinity, gain: 1, - ...opts + ...opts, }; this.setAttack(opts.a!); this.setDecay(opts.d!); diff --git a/packages/dsp/src/proc/biquad.ts b/packages/dsp/src/proc/biquad.ts index 79734c250e..9690b1432f 100644 --- a/packages/dsp/src/proc/biquad.ts +++ b/packages/dsp/src/proc/biquad.ts @@ -1,10 +1,5 @@ import { unsupported } from "@thi.ng/errors"; -import { - clamp05, - PI, - SQRT2, - SQRT2_2 -} from "@thi.ng/math"; +import { clamp05, PI, SQRT2, SQRT2_2 } from "@thi.ng/math"; import { FilterType } from "../constants"; import { dbMag } from "../util/convert"; import { AProc } from "./aproc"; @@ -117,7 +112,7 @@ export class Biquad extends AProc implements IReset, IFilter { filterCoeffs(): FilterConfig { return { zeroes: [this._a0, this._a1, this._a2], - poles: [1, this._b1, this._b2] + poles: [1, this._b1, this._b2], }; } diff --git a/packages/dsp/src/proc/delay.ts b/packages/dsp/src/proc/delay.ts index 8be338d3dc..cf8fc3c866 100644 --- a/packages/dsp/src/proc/delay.ts +++ b/packages/dsp/src/proc/delay.ts @@ -1,12 +1,7 @@ import { isFunction } from "@thi.ng/checks"; import { wrap } from "@thi.ng/math"; import { AProc } from "./aproc"; -import type { - Fn0, - IClear, - ILength, - IReset -} from "@thi.ng/api"; +import type { Fn0, IClear, ILength, IReset } from "@thi.ng/api"; /** * Delay line of length `n` for numeric values. diff --git a/packages/dsp/src/proc/onepole.ts b/packages/dsp/src/proc/onepole.ts index 17e8ae05c2..5e6015adbf 100644 --- a/packages/dsp/src/proc/onepole.ts +++ b/packages/dsp/src/proc/onepole.ts @@ -50,7 +50,7 @@ export class OnePole extends AProc filterCoeffs(): FilterConfig { return { zeroes: [this._a0], - poles: [1, this._type === FilterType.LP ? this._b1 : -this._b1] + poles: [1, this._type === FilterType.LP ? this._b1 : -this._b1], }; } } diff --git a/packages/dsp/test/fft.ts b/packages/dsp/test/fft.ts index df98cdccca..39b4d6612c 100644 --- a/packages/dsp/test/fft.ts +++ b/packages/dsp/test/fft.ts @@ -7,7 +7,7 @@ import { ifft, normalizeFFT, spectrumPhase, - spectrumPow + spectrumPow, } from "../src"; const pulse8 = [-1, -1, -1, -1, 1, 1, 1, 1]; @@ -31,14 +31,14 @@ describe("fft", () => { assert.ok( deltaEqComplex(res, [ [0, -2, 0, -2, 0, -2, 0, -2], - [0, 4.828, 0, 0.828, 0, -0.828, 0, -4.828] + [0, 4.828, 0, 0.828, 0, -0.828, 0, -4.828], ]) ); assert.ok( deltaEqComplex(ifft(fft([...pulse8])), [ pulse8, - [0, 0, 0, 0, 0, 0, 0, 0] + [0, 0, 0, 0, 0, 0, 0, 0], ]) ); @@ -54,7 +54,7 @@ describe("fft", () => { assert.ok( deltaEqComplex(norm, [ [0, -0.707, 0, -0.707, 0, -0.707, 0, -0.707], - [0, 1.707, 0, 0.293, 0, -0.293, 0, -1.707] + [0, 1.707, 0, 0.293, 0, -0.293, 0, -1.707], ]) ); @@ -65,7 +65,7 @@ describe("fft", () => { -Infinity, -3.698, -Infinity, - -11.354 + -11.354, ]) ); diff --git a/packages/dynvar/CHANGELOG.md b/packages/dynvar/CHANGELOG.md index ea80b6390a..6bc58b19df 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.15](https://github.com/thi-ng/umbrella/compare/@thi.ng/dynvar@0.1.14...@thi.ng/dynvar@0.1.15) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/dynvar + + + + + ## [0.1.14](https://github.com/thi-ng/umbrella/compare/@thi.ng/dynvar@0.1.13...@thi.ng/dynvar@0.1.14) (2020-06-01) **Note:** Version bump only for package @thi.ng/dynvar diff --git a/packages/dynvar/package.json b/packages/dynvar/package.json index 11dfd5f637..80bc17f6b1 100644 --- a/packages/dynvar/package.json +++ b/packages/dynvar/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/dynvar", - "version": "0.1.14", + "version": "0.1.15", "description": "Dynamically scoped variable bindings", "module": "./index.js", "main": "./lib/index.js", @@ -43,7 +43,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", + "@thi.ng/api": "^6.11.1", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/dynvar/src/index.ts b/packages/dynvar/src/index.ts index dfc8f3b351..e5f4061b55 100644 --- a/packages/dynvar/src/index.ts +++ b/packages/dynvar/src/index.ts @@ -1,10 +1,5 @@ import { assert } from "@thi.ng/api"; -import type { - Fn0, - IBind, - ICopy, - IDeref -} from "@thi.ng/api"; +import type { Fn0, IBind, ICopy, IDeref } from "@thi.ng/api"; /** * Hidden storage for bound value stacks diff --git a/packages/ecs/CHANGELOG.md b/packages/ecs/CHANGELOG.md index 766dbc14ad..15ee8ae477 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.3.19](https://github.com/thi-ng/umbrella/compare/@thi.ng/ecs@0.3.18...@thi.ng/ecs@0.3.19) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/ecs + + + + + ## [0.3.18](https://github.com/thi-ng/umbrella/compare/@thi.ng/ecs@0.3.17...@thi.ng/ecs@0.3.18) (2020-06-01) **Note:** Version bump only for package @thi.ng/ecs diff --git a/packages/ecs/package.json b/packages/ecs/package.json index b560e71284..f0b787b646 100644 --- a/packages/ecs/package.json +++ b/packages/ecs/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/ecs", - "version": "0.3.18", + "version": "0.3.19", "description": "Entity Component System based around typed arrays & sparse sets", "module": "./index.js", "main": "./lib/index.js", @@ -44,13 +44,13 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/associative": "^4.0.11", - "@thi.ng/binary": "^2.0.7", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/dcons": "^2.2.19", - "@thi.ng/idgen": "^0.2.14", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/associative": "^4.1.0", + "@thi.ng/binary": "^2.0.8", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/dcons": "^2.2.20", + "@thi.ng/idgen": "^0.2.15", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/ecs/src/api.ts b/packages/ecs/src/api.ts index 6f06f0ba9a..ddedabf33d 100644 --- a/packages/ecs/src/api.ts +++ b/packages/ecs/src/api.ts @@ -7,7 +7,7 @@ import type { IRelease, Type, TypedArray, - UIntArray + UIntArray, } from "@thi.ng/api"; export type ComponentID = keyof S & string; diff --git a/packages/ecs/src/components/acomponent.ts b/packages/ecs/src/components/acomponent.ts index 6b7b44dc50..e154a3885c 100644 --- a/packages/ecs/src/components/acomponent.ts +++ b/packages/ecs/src/components/acomponent.ts @@ -1,13 +1,7 @@ import { INotifyMixin } from "@thi.ng/api"; import { isFunction } from "@thi.ng/checks"; import { EVENT_ADDED, EVENT_CHANGED, EVENT_PRE_DELETE } from "../constants"; -import type { - Event, - IID, - INotify, - Listener, - UIntArray -} from "@thi.ng/api"; +import type { Event, IID, INotify, Listener, UIntArray } from "@thi.ng/api"; import type { ComponentDefaultValue, IComponent } from "../api"; @INotifyMixin diff --git a/packages/ecs/src/components/object-component.ts b/packages/ecs/src/components/object-component.ts index 5fe5fdd19f..e710a4940b 100644 --- a/packages/ecs/src/components/object-component.ts +++ b/packages/ecs/src/components/object-component.ts @@ -1,9 +1,4 @@ -import { - assert, - INotifyMixin, - typedArray, - uintType -} from "@thi.ng/api"; +import { assert, INotifyMixin, typedArray, uintType } from "@thi.ng/api"; import { AComponent } from "./acomponent"; import type { UIntArray } from "@thi.ng/api"; import type { ObjectComponentOpts } from "../api"; diff --git a/packages/ecs/src/ecs.ts b/packages/ecs/src/ecs.ts index 8dc05c1366..81dce3361b 100644 --- a/packages/ecs/src/ecs.ts +++ b/packages/ecs/src/ecs.ts @@ -1,9 +1,4 @@ -import { - assert, - INotifyMixin, - typedArray, - uintType -} from "@thi.ng/api"; +import { assert, INotifyMixin, typedArray, uintType } from "@thi.ng/api"; import { bitSize } from "@thi.ng/binary"; import { isArray, isString } from "@thi.ng/checks"; import { IDGen } from "@thi.ng/idgen"; @@ -13,7 +8,7 @@ import { GroupOpts, IComponent, MemMappedComponentOpts, - ObjectComponentOpts + ObjectComponentOpts, } from "./api"; import { MemMappedComponent } from "./components/mem-component"; import { ObjectComponent } from "./components/object-component"; @@ -92,7 +87,7 @@ export class ECS implements INotify { ) { opts = { id: `group${NEXT_GROUP_ID++}`, - ...opts + ...opts, }; assert( !this.groups.has(opts.id!), diff --git a/packages/ecs/src/groups/group.ts b/packages/ecs/src/groups/group.ts index 86862cbb34..1d904ad13b 100644 --- a/packages/ecs/src/groups/group.ts +++ b/packages/ecs/src/groups/group.ts @@ -7,21 +7,16 @@ import { EVENT_ADDED, EVENT_CHANGED, EVENT_PRE_DELETE, - LOGGER + LOGGER, } from "../constants"; -import type { - Event, - FnO2, - FnO3, - IID -} from "@thi.ng/api"; +import type { Event, FnO2, FnO3, IID } from "@thi.ng/api"; import type { ComponentID, GroupInfo, GroupOpts, GroupTuple, ICache, - IComponent + IComponent, } from "../api"; export class Group> implements IID { @@ -50,7 +45,7 @@ export class Group> implements IID { acc[c.id] = { values: c.vals, size: c.size, - stride: c.stride + stride: c.stride, }; return acc; }, {}); diff --git a/packages/ecs/test/component.ts b/packages/ecs/test/component.ts index 040bd3baa9..b6db9cd362 100644 --- a/packages/ecs/test/component.ts +++ b/packages/ecs/test/component.ts @@ -41,7 +41,7 @@ describe("component", () => { id: "b", type: Type.F32, size: 3, - stride: 4 + stride: 4, }); assert.equal(b.vals.length, ecs.idgen.capacity * 4); assert.equal(b.size, 3); @@ -53,7 +53,7 @@ describe("component", () => { id: "a", type: Type.F32, size: 2, - default: [1, 2] + default: [1, 2], }); assert(a.add(8)); assert(a.add(9, [10, 20])); @@ -69,11 +69,19 @@ describe("component", () => { id: "a", type: Type.F32, size: 2, - default: [1, 2] + default: [1, 2], }); assert(a.add(8)); assert(a.add(9, [10, 20])); assert.deepEqual([...a.packedValues()], [1, 2, 10, 20]); - assert(equiv([...a.values()], [[10, 20], [1, 2]])); + assert( + equiv( + [...a.values()], + [ + [10, 20], + [1, 2], + ] + ) + ); }); }); diff --git a/packages/ecs/test/group.ts b/packages/ecs/test/group.ts index 887e28aa9a..3f289b11ff 100644 --- a/packages/ecs/test/group.ts +++ b/packages/ecs/test/group.ts @@ -30,7 +30,7 @@ describe("component", () => { equiv(collect(g), [ { a: "a", b: [0, 0], id: 0 }, { a: "aa", b: [1, 2], id: 1 }, - { a: "aaa", b: [3, 4], id: 2 } + { a: "aaa", b: [3, 4], id: 2 }, ]) ); @@ -38,7 +38,7 @@ describe("component", () => { assert.ok( equiv(collect(g), [ { a: "aa", b: [1, 2], id: 1 }, - { a: "aaa", b: [3, 4], id: 2 } + { a: "aaa", b: [3, 4], id: 2 }, ]) ); a.delete(2); diff --git a/packages/equiv/test/index.ts b/packages/equiv/test/index.ts index 4a7449b1e0..fe0faee710 100644 --- a/packages/equiv/test/index.ts +++ b/packages/equiv/test/index.ts @@ -85,7 +85,7 @@ describe("equiv", () => { equiv(1, { equiv(x: number) { return x === 1; - } + }, }) ); assert.ok( @@ -93,7 +93,7 @@ describe("equiv", () => { { equiv(x: number) { return x === 1; - } + }, }, 1 ) @@ -114,7 +114,16 @@ describe("equiv", () => { ); assert.ok(!equiv(a, new Set([3, 2, 0]))); assert.ok(!equiv(a, [3, 2, 0])); - assert.ok(!equiv(a, new Map([[3, 3], [2, 2], [1, 1]]))); + assert.ok( + !equiv( + a, + new Map([ + [3, 3], + [2, 2], + [1, 1], + ]) + ) + ); assert.ok(!equiv(a, null)); assert.ok(!equiv(null, a)); }); diff --git a/packages/fsm/CHANGELOG.md b/packages/fsm/CHANGELOG.md index b1ae311f0b..a6fb3c8235 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.13](https://github.com/thi-ng/umbrella/compare/@thi.ng/fsm@2.4.12...@thi.ng/fsm@2.4.13) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/fsm + + + + + ## [2.4.12](https://github.com/thi-ng/umbrella/compare/@thi.ng/fsm@2.4.11...@thi.ng/fsm@2.4.12) (2020-06-01) **Note:** Version bump only for package @thi.ng/fsm diff --git a/packages/fsm/package.json b/packages/fsm/package.json index fbd9a9e15b..77eb8de8db 100644 --- a/packages/fsm/package.json +++ b/packages/fsm/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/fsm", - "version": "2.4.12", + "version": "2.4.13", "description": "Composable primitives for building declarative, transducer based Finite-State Machines & matchers for arbitrary data streams", "module": "./index.js", "main": "./lib/index.js", @@ -43,12 +43,12 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/arrays": "^0.6.8", + "@thi.ng/api": "^6.11.1", + "@thi.ng/arrays": "^0.6.9", "@thi.ng/equiv": "^1.0.23", "@thi.ng/errors": "^1.2.14", - "@thi.ng/strings": "^1.8.9", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/strings": "^1.8.10", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/fsm/src/alts.ts b/packages/fsm/src/alts.ts index d718cb458f..8ef1397cd7 100644 --- a/packages/fsm/src/alts.ts +++ b/packages/fsm/src/alts.ts @@ -5,7 +5,7 @@ import { Matcher, MatcherInst, MatchResult, - RES_PARTIAL + RES_PARTIAL, } from "./api"; import { result } from "./result"; diff --git a/packages/fsm/src/fsm.ts b/packages/fsm/src/fsm.ts index bd91940990..84f433f4e1 100644 --- a/packages/fsm/src/fsm.ts +++ b/packages/fsm/src/fsm.ts @@ -6,7 +6,7 @@ import { Reducer, ReductionFn, Transducer, - unreduced + unreduced, } from "@thi.ng/transducers"; import { Match, Matcher } from "./api"; import type { Fn2, IObjectOf } from "@thi.ng/api"; @@ -86,8 +86,9 @@ export function fsm( curr = next(); } else { illegalState( - `unknown tx: ${currID} -> ${body && - body[0]}` + `unknown tx: ${currID} -> ${ + body && body[0] + }` ); } if (res) { @@ -106,7 +107,7 @@ export function fsm( break; } return acc; - } + }, ]; }; } diff --git a/packages/fsm/src/lit.ts b/packages/fsm/src/lit.ts index f6d9c146d3..04105318f0 100644 --- a/packages/fsm/src/lit.ts +++ b/packages/fsm/src/lit.ts @@ -1,10 +1,5 @@ import { equiv as _equiv } from "@thi.ng/equiv"; -import { - Match, - Matcher, - RES_PARTIAL, - SeqCallback -} from "./api"; +import { Match, Matcher, RES_PARTIAL, SeqCallback } from "./api"; import { result } from "./result"; import type { Predicate2 } from "@thi.ng/api"; diff --git a/packages/fsm/src/not.ts b/packages/fsm/src/not.ts index af85a5e1a1..b18a0a01ff 100644 --- a/packages/fsm/src/not.ts +++ b/packages/fsm/src/not.ts @@ -1,9 +1,4 @@ -import { - Match, - Matcher, - RES_PARTIAL, - SeqCallback -} from "./api"; +import { Match, Matcher, RES_PARTIAL, SeqCallback } from "./api"; import { result } from "./result"; /** @@ -29,8 +24,8 @@ export const not = ( return type === Match.FAIL ? result(success && success(ctx, buf)) : type !== Match.PARTIAL - ? // TODO Match.FULL_NC handling? - result(fail && fail(ctx, buf), Match.FAIL) - : RES_PARTIAL; + ? // TODO Match.FULL_NC handling? + result(fail && fail(ctx, buf), Match.FAIL) + : RES_PARTIAL; }; }; diff --git a/packages/fsm/src/range.ts b/packages/fsm/src/range.ts index 1585753702..d4eea112d4 100644 --- a/packages/fsm/src/range.ts +++ b/packages/fsm/src/range.ts @@ -53,11 +53,7 @@ export const alpha = ( export const alphaNum = ( success?: LitCallback, fail?: LitCallback -): Matcher => altsLitObj( - { ...ALPHA, ...DIGITS }, - success, - fail -); +): Matcher => altsLitObj({ ...ALPHA, ...DIGITS }, success, fail); /** * Matcher for single whitespace characters. diff --git a/packages/fsm/src/repeat.ts b/packages/fsm/src/repeat.ts index 617028201a..315f708969 100644 --- a/packages/fsm/src/repeat.ts +++ b/packages/fsm/src/repeat.ts @@ -1,9 +1,4 @@ -import { - Match, - Matcher, - RES_PARTIAL, - SeqCallback -} from "./api"; +import { Match, Matcher, RES_PARTIAL, SeqCallback } from "./api"; import { result } from "./result"; /** diff --git a/packages/fsm/src/seq.ts b/packages/fsm/src/seq.ts index c3fbdaa033..5045fe6e1c 100644 --- a/packages/fsm/src/seq.ts +++ b/packages/fsm/src/seq.ts @@ -1,9 +1,4 @@ -import { - Match, - Matcher, - RES_PARTIAL, - SeqCallback -} from "./api"; +import { Match, Matcher, RES_PARTIAL, SeqCallback } from "./api"; import { result } from "./result"; /** diff --git a/packages/fsm/src/str.ts b/packages/fsm/src/str.ts index 87bb1cdad0..8f6bd6eb59 100644 --- a/packages/fsm/src/str.ts +++ b/packages/fsm/src/str.ts @@ -1,9 +1,4 @@ -import { - LitCallback, - Match, - Matcher, - RES_PARTIAL -} from "./api"; +import { LitCallback, Match, Matcher, RES_PARTIAL } from "./api"; import { result } from "./result"; /** diff --git a/packages/geom-accel/CHANGELOG.md b/packages/geom-accel/CHANGELOG.md index b91a596cc7..0d977b78ca 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.9](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-accel@2.1.8...@thi.ng/geom-accel@2.1.9) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-accel + + + + + ## [2.1.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-accel@2.1.7...@thi.ng/geom-accel@2.1.8) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-accel diff --git a/packages/geom-accel/package.json b/packages/geom-accel/package.json index 5d03c627c4..a937acc0c2 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.8", + "version": "2.1.9", "description": "n-D spatial indexing data structures with a shared ES6 Map/Set-like API", "module": "./index.js", "main": "./lib/index.js", @@ -44,16 +44,16 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/arrays": "^0.6.8", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/arrays": "^0.6.9", + "@thi.ng/checks": "^2.7.1", "@thi.ng/equiv": "^1.0.23", - "@thi.ng/geom-api": "^1.0.20", - "@thi.ng/geom-isec": "^0.4.20", - "@thi.ng/heaps": "^1.2.15", - "@thi.ng/math": "^1.7.10", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/geom-api": "^1.0.21", + "@thi.ng/geom-isec": "^0.4.21", + "@thi.ng/heaps": "^1.2.16", + "@thi.ng/math": "^1.7.11", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-accel/test/quadtree.ts b/packages/geom-accel/test/quadtree.ts index 8287fb2a1b..cdee989b2d 100644 --- a/packages/geom-accel/test/quadtree.ts +++ b/packages/geom-accel/test/quadtree.ts @@ -6,7 +6,7 @@ import { NdQuadtreeMap } from "../src"; const pts = new Set([ [10, 20, 30], [60, 70, 80], - [44, 55, 66] + [44, 55, 66], ]); const pairs = new Set(mapIndexed((i, p) => <[ReadonlyVec, number]>[p, i], pts)); @@ -54,7 +54,7 @@ describe("NdTree", () => { new Set(tree.queryKeys([50, 50, 50], 50, Infinity)), new Set([ [44, 55, 66], - [60, 70, 80] + [60, 70, 80], ]), "r=50" ); diff --git a/packages/geom-api/CHANGELOG.md b/packages/geom-api/CHANGELOG.md index eb0e3f9fcd..2d61d4af2e 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. +## [1.0.21](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-api@1.0.20...@thi.ng/geom-api@1.0.21) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-api + + + + + ## [1.0.20](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-api@1.0.19...@thi.ng/geom-api@1.0.20) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-api diff --git a/packages/geom-api/package.json b/packages/geom-api/package.json index a2a61dc13b..830e0946b4 100644 --- a/packages/geom-api/package.json +++ b/packages/geom-api/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-api", - "version": "1.0.20", + "version": "1.0.21", "description": "Shared type & interface declarations for @thi.ng/geom packages", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/api": "^6.11.1", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-api/src/accel.ts b/packages/geom-api/src/accel.ts index fa18307b6d..64e8dd29c3 100644 --- a/packages/geom-api/src/accel.ts +++ b/packages/geom-api/src/accel.ts @@ -1,9 +1,4 @@ -import type { - IClear, - ICopy, - IEmpty, - Pair -} from "@thi.ng/api"; +import type { IClear, ICopy, IEmpty, Pair } from "@thi.ng/api"; export interface ISpatialMap extends Iterable>, diff --git a/packages/geom-arc/CHANGELOG.md b/packages/geom-arc/CHANGELOG.md index fd992804ea..10977a62be 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.2.32](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-arc@0.2.31...@thi.ng/geom-arc@0.2.32) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-arc + + + + + ## [0.2.31](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-arc@0.2.30...@thi.ng/geom-arc@0.2.31) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-arc diff --git a/packages/geom-arc/package.json b/packages/geom-arc/package.json index f41215648c..f1870874ec 100644 --- a/packages/geom-arc/package.json +++ b/packages/geom-arc/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-arc", - "version": "0.2.31", + "version": "0.2.32", "description": "2D circular / elliptic arc operations", "module": "./index.js", "main": "./lib/index.js", @@ -43,11 +43,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/checks": "^2.7.0", - "@thi.ng/geom-api": "^1.0.20", - "@thi.ng/geom-resample": "^0.2.31", - "@thi.ng/math": "^1.7.10", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/geom-api": "^1.0.21", + "@thi.ng/geom-resample": "^0.2.32", + "@thi.ng/math": "^1.7.11", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-arc/src/bounds.ts b/packages/geom-arc/src/bounds.ts index 03e8a63bb6..358e10ac38 100644 --- a/packages/geom-arc/src/bounds.ts +++ b/packages/geom-arc/src/bounds.ts @@ -7,7 +7,7 @@ import { ReadonlyVec, set2, Vec, - VecPair + VecPair, } from "@thi.ng/vectors"; import { pointAtTheta } from "./point-at"; diff --git a/packages/geom-arc/src/from-endpoints.ts b/packages/geom-arc/src/from-endpoints.ts index d41854e226..e4af8dd048 100644 --- a/packages/geom-arc/src/from-endpoints.ts +++ b/packages/geom-arc/src/from-endpoints.ts @@ -11,7 +11,7 @@ import { sub2, submN2, Vec, - X2 + X2, } from "@thi.ng/vectors"; /** @@ -64,7 +64,7 @@ export const fromEndPoints = ( // actual center const center: Vec = [ c * tc[0] - s * tc[1] + (a[0] + b[0]) / 2, - s * tc[0] + c * tc[1] + (a[1] + b[1]) / 2 + s * tc[0] + c * tc[1] + (a[1] + b[1]) / 2, ]; // transformed end points & angles const ta = div2(null, sub2([], tp, tc), r); @@ -85,6 +85,6 @@ export const fromEndPoints = ( start, end: start + sweep, xl, - cw + cw, }; }; diff --git a/packages/geom-clip-line/CHANGELOG.md b/packages/geom-clip-line/CHANGELOG.md index 921709cd70..568c5682ef 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.0.19](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-clip-line@1.0.18...@thi.ng/geom-clip-line@1.0.19) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-clip-line + + + + + ## [1.0.18](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-clip-line@1.0.17...@thi.ng/geom-clip-line@1.0.18) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-clip-line diff --git a/packages/geom-clip-line/package.json b/packages/geom-clip-line/package.json index d7fd1ab45d..8a28c1056a 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.0.18", + "version": "1.0.19", "description": "2D line clipping (Liang-Barsky)", "module": "./index.js", "main": "./lib/index.js", @@ -43,7 +43,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-clip-line/src/index.ts b/packages/geom-clip-line/src/index.ts index 3252112943..353e0c32ea 100644 --- a/packages/geom-clip-line/src/index.ts +++ b/packages/geom-clip-line/src/index.ts @@ -11,7 +11,7 @@ import type { Vec, ReadonlyVec } from "@thi.ng/vectors"; * outside the rect. * * - {@link https://en.wikipedia.org/wiki/Liang%E2%80%93Barsky_algorithm} - * - {@link https://github.com/thi-ng/c-thing/blob/master/src/geom/clip/liangbarsky.c} + * - {@link https://github.com/thi-ng/c-thing/blob/develop/src/geom/clip/liangbarsky.c} * * @param a - line endpoint * @param b - line endpoint @@ -108,7 +108,7 @@ export const liangBarsky2Raw = ( beta * dx + ax, beta * dy + ay, alpha, - beta + beta, ] : undefined; }; diff --git a/packages/geom-clip-poly/CHANGELOG.md b/packages/geom-clip-poly/CHANGELOG.md index 74b1052a19..0cae2fb790 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.19](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-clip-poly@1.0.18...@thi.ng/geom-clip-poly@1.0.19) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-clip-poly + + + + + ## [1.0.18](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-clip-poly@1.0.17...@thi.ng/geom-clip-poly@1.0.18) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-clip-poly diff --git a/packages/geom-clip-poly/package.json b/packages/geom-clip-poly/package.json index 278bb1d55b..e1d4c252b9 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.18", + "version": "1.0.19", "description": "2D convex polygon clipping (Sutherland-Hodgeman)", "module": "./index.js", "main": "./lib/index.js", @@ -43,10 +43,10 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/geom-isec": "^0.4.20", - "@thi.ng/geom-poly-utils": "^0.1.49", - "@thi.ng/math": "^1.7.10", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/geom-isec": "^0.4.21", + "@thi.ng/geom-poly-utils": "^0.1.50", + "@thi.ng/math": "^1.7.11", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-closest-point/CHANGELOG.md b/packages/geom-closest-point/CHANGELOG.md index 883df0bc40..8325cd0d94 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.3.32](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-closest-point@0.3.31...@thi.ng/geom-closest-point@0.3.32) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-closest-point + + + + + ## [0.3.31](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-closest-point@0.3.30...@thi.ng/geom-closest-point@0.3.31) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-closest-point diff --git a/packages/geom-closest-point/package.json b/packages/geom-closest-point/package.json index 9d1231c533..360e1302dc 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.3.31", + "version": "0.3.32", "description": "2D / 3D closest point / proximity helpers", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/math": "^1.7.10", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/math": "^1.7.11", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-closest-point/src/index.ts b/packages/geom-closest-point/src/index.ts index 5f0ea87758..95434c9341 100644 --- a/packages/geom-closest-point/src/index.ts +++ b/packages/geom-closest-point/src/index.ts @@ -13,7 +13,7 @@ import { setC2, setC3, sub, - Vec + Vec, } from "@thi.ng/vectors"; /** diff --git a/packages/geom-hull/CHANGELOG.md b/packages/geom-hull/CHANGELOG.md index 9e3024585b..81c542fc77 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.52](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-hull@0.0.51...@thi.ng/geom-hull@0.0.52) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-hull + + + + + ## [0.0.51](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-hull@0.0.50...@thi.ng/geom-hull@0.0.51) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-hull diff --git a/packages/geom-hull/package.json b/packages/geom-hull/package.json index d437793af0..94b766b563 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.51", + "version": "0.0.52", "description": "Fast 2D convex hull (Graham Scan)", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/math": "^1.7.10", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/math": "^1.7.11", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-io-obj/CHANGELOG.md b/packages/geom-io-obj/CHANGELOG.md index e6adbfcb25..67c49cedd4 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.10](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-io-obj@0.1.9...@thi.ng/geom-io-obj@0.1.10) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-io-obj + + + + + ## [0.1.9](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-io-obj@0.1.8...@thi.ng/geom-io-obj@0.1.9) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-io-obj diff --git a/packages/geom-io-obj/package.json b/packages/geom-io-obj/package.json index c30153e922..b5b2c8f7b3 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.9", + "version": "0.1.10", "description": "Wavefront OBJ parser (& exporter soon)", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/vectors": "^4.4.3" + "@thi.ng/api": "^6.11.1", + "@thi.ng/vectors": "^4.4.4" }, "files": [ "*.js", diff --git a/packages/geom-io-obj/test/tsconfig.json b/packages/geom-io-obj/test/tsconfig.json index f6e63560dd..72b29d55ac 100644 --- a/packages/geom-io-obj/test/tsconfig.json +++ b/packages/geom-io-obj/test/tsconfig.json @@ -4,8 +4,5 @@ "outDir": "../build", "module": "commonjs" }, - "include": [ - "./**/*.ts", - "../src/**/*.ts" - ] + "include": ["./**/*.ts", "../src/**/*.ts"] } diff --git a/packages/geom-isec/CHANGELOG.md b/packages/geom-isec/CHANGELOG.md index 47a0d43754..df83b97739 100644 --- a/packages/geom-isec/CHANGELOG.md +++ b/packages/geom-isec/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.21](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-isec@0.4.20...@thi.ng/geom-isec@0.4.21) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-isec + + + + + ## [0.4.20](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-isec@0.4.19...@thi.ng/geom-isec@0.4.20) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-isec diff --git a/packages/geom-isec/package.json b/packages/geom-isec/package.json index 6701f73bdb..6548d05820 100644 --- a/packages/geom-isec/package.json +++ b/packages/geom-isec/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-isec", - "version": "0.4.20", + "version": "0.4.21", "description": "2D/3D shape intersection checks", "module": "./index.js", "main": "./lib/index.js", @@ -43,11 +43,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/geom-api": "^1.0.20", - "@thi.ng/geom-closest-point": "^0.3.31", - "@thi.ng/math": "^1.7.10", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/api": "^6.11.1", + "@thi.ng/geom-api": "^1.0.21", + "@thi.ng/geom-closest-point": "^0.3.32", + "@thi.ng/math": "^1.7.11", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-isec/src/api.ts b/packages/geom-isec/src/api.ts index 1be0a5743b..3eefd8fac1 100644 --- a/packages/geom-isec/src/api.ts +++ b/packages/geom-isec/src/api.ts @@ -1,5 +1,5 @@ import { IntersectionResult, IntersectionType } from "@thi.ng/geom-api"; export const NONE: IntersectionResult = Object.freeze({ - type: IntersectionType.NONE + type: IntersectionType.NONE, }); diff --git a/packages/geom-isec/src/circle-circle.ts b/packages/geom-isec/src/circle-circle.ts index ca42567dd8..270cf99be6 100644 --- a/packages/geom-isec/src/circle-circle.ts +++ b/packages/geom-isec/src/circle-circle.ts @@ -8,7 +8,7 @@ import { mulN, perpendicularCCW, ReadonlyVec, - sub + sub, } from "@thi.ng/vectors"; import { NONE } from "./api"; @@ -31,7 +31,7 @@ export const intersectCircleCircle = ( const t = mulN(null, perpendicularCCW(null, delta), h / d); return { type: IntersectionType.INTERSECT, - isec: [add([], p, t), sub([], p, t)] + isec: [add([], p, t), sub([], p, t)], }; } return NONE; diff --git a/packages/geom-isec/src/line-line.ts b/packages/geom-isec/src/line-line.ts index ad541c512e..8dbe1894e7 100644 --- a/packages/geom-isec/src/line-line.ts +++ b/packages/geom-isec/src/line-line.ts @@ -28,7 +28,7 @@ export const intersectLineLine = ( type: isec ? IntersectionType.COINCIDENT : IntersectionType.COINCIDENT_NO_INTERSECT, - isec + isec, }; } return { type: IntersectionType.PARALLEL }; @@ -38,13 +38,13 @@ export const intersectLineLine = ( const ieps = 1 - eps; return { type: - eps < alpha && alpha < ieps && (eps < beta && beta < ieps) + eps < alpha && alpha < ieps && eps < beta && beta < ieps ? IntersectionType.INTERSECT : IntersectionType.INTERSECT_OUTSIDE, isec: mixN2([], a, b, alpha), alpha, beta, - det + det, }; }; diff --git a/packages/geom-isec/src/plane-plane.ts b/packages/geom-isec/src/plane-plane.ts index bcaa9c8af7..50cc9f3c59 100644 --- a/packages/geom-isec/src/plane-plane.ts +++ b/packages/geom-isec/src/plane-plane.ts @@ -1,12 +1,6 @@ import { IntersectionType } from "@thi.ng/geom-api"; import { eqDelta, eqDeltaFixed } from "@thi.ng/math"; -import { - add3, - cross3, - dot3, - mulN3, - ReadonlyVec -} from "@thi.ng/vectors"; +import { add3, cross3, dot3, mulN3, ReadonlyVec } from "@thi.ng/vectors"; import { NONE } from "./api"; export const intersectPlanePlane = ( @@ -26,7 +20,7 @@ export const intersectPlanePlane = ( type: IntersectionType.INTERSECT, isec: [ add3(null, mulN3([], na, da), mulN3([], nb, db)), - cross3([], na, nb) - ] + cross3([], na, nb), + ], }; }; diff --git a/packages/geom-isec/src/point.ts b/packages/geom-isec/src/point.ts index 06534d15d4..71ecd015e4 100644 --- a/packages/geom-isec/src/point.ts +++ b/packages/geom-isec/src/point.ts @@ -8,7 +8,7 @@ import { MultiVecOpImpl, ReadonlyVec, signedArea2, - vop + vop, } from "@thi.ng/vectors"; import type { Fn3 } from "@thi.ng/api"; diff --git a/packages/geom-isec/src/ray-circle.ts b/packages/geom-isec/src/ray-circle.ts index 0295a768b3..4ae7080dcf 100644 --- a/packages/geom-isec/src/ray-circle.ts +++ b/packages/geom-isec/src/ray-circle.ts @@ -1,11 +1,5 @@ import { IntersectionResult, IntersectionType } from "@thi.ng/geom-api"; -import { - dot, - maddN, - magSq, - ReadonlyVec, - sub -} from "@thi.ng/vectors"; +import { dot, maddN, magSq, ReadonlyVec, sub } from "@thi.ng/vectors"; import { NONE } from "./api"; export const intersectRayCircle = ( diff --git a/packages/geom-isec/src/ray-line.ts b/packages/geom-isec/src/ray-line.ts index 9430b43678..275be406a5 100644 --- a/packages/geom-isec/src/ray-line.ts +++ b/packages/geom-isec/src/ray-line.ts @@ -23,7 +23,7 @@ export const intersectRayLine = ( ? { type: IntersectionType.INTERSECT, isec: maddN([], dir, t, rpos), - alpha: t + alpha: t, } : NONE; }; diff --git a/packages/geom-isec/src/ray-plane.ts b/packages/geom-isec/src/ray-plane.ts index a46dbd7429..c06822c0c6 100644 --- a/packages/geom-isec/src/ray-plane.ts +++ b/packages/geom-isec/src/ray-plane.ts @@ -1,13 +1,6 @@ import { IntersectionType } from "@thi.ng/geom-api"; import { EPS, sign } from "@thi.ng/math"; -import { - copy, - dot, - maddN, - mulN, - ReadonlyVec, - sub -} from "@thi.ng/vectors"; +import { copy, dot, maddN, mulN, ReadonlyVec, sub } from "@thi.ng/vectors"; import { NONE } from "./api"; export const intersectRayPlane = ( @@ -25,13 +18,13 @@ export const intersectRayPlane = ( return { type: IntersectionType.INTERSECT, isec: maddN(isec, dir, alpha, rpos), - alpha + alpha, }; } return cp === 0 ? { type: IntersectionType.COINCIDENT, - isec: copy(rpos) + isec: copy(rpos), } : NONE; }; diff --git a/packages/geom-isec/src/ray-poly.ts b/packages/geom-isec/src/ray-poly.ts index efc89f7404..934524e2d0 100644 --- a/packages/geom-isec/src/ray-poly.ts +++ b/packages/geom-isec/src/ray-poly.ts @@ -32,7 +32,7 @@ export const intersectRayPolyline = ( type: IntersectionType.INTERSECT, isec: maddN2([], dir, minD, rpos), inside: !(cross & 1), - alpha: minD + alpha: minD, } : NONE; }; @@ -62,7 +62,7 @@ export const intersectRayPolylineAll = ( return res.length ? { type: IntersectionType.INTERSECT, - isec: res.sort((a, b) => a[0] - b[0]).map((x) => x[1]) + isec: res.sort((a, b) => a[0] - b[0]).map((x) => x[1]), } : NONE; }; diff --git a/packages/geom-isec/src/ray-rect.ts b/packages/geom-isec/src/ray-rect.ts index 2e93834606..b9602e8a5e 100644 --- a/packages/geom-isec/src/ray-rect.ts +++ b/packages/geom-isec/src/ray-rect.ts @@ -91,16 +91,16 @@ const intersectWith = ( type: IntersectionType.INTERSECT, inside, isec: [maddN([], dir, tmax, rpos)], - alpha: tmax + alpha: tmax, } : { type: IntersectionType.INTERSECT, isec: [ maddN([], dir, tmin, rpos), - maddN([], dir, tmax, rpos) + maddN([], dir, tmax, rpos), ], alpha: tmin, - beta: tmax + beta: tmax, } : NONE; }; diff --git a/packages/geom-isoline/CHANGELOG.md b/packages/geom-isoline/CHANGELOG.md index 079532cc82..2c2b864f2d 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.50](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-isoline@0.1.49...@thi.ng/geom-isoline@0.1.50) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-isoline + + + + + ## [0.1.49](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-isoline@0.1.48...@thi.ng/geom-isoline@0.1.49) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-isoline diff --git a/packages/geom-isoline/package.json b/packages/geom-isoline/package.json index 664bd95b0c..addccf8dd4 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.49", + "version": "0.1.50", "description": "Fast 2D contour line extraction / generation", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-poly-utils/CHANGELOG.md b/packages/geom-poly-utils/CHANGELOG.md index be3dd2a511..aad329ef90 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.1.50](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-poly-utils@0.1.49...@thi.ng/geom-poly-utils@0.1.50) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-poly-utils + + + + + ## [0.1.49](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-poly-utils@0.1.48...@thi.ng/geom-poly-utils@0.1.49) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-poly-utils diff --git a/packages/geom-poly-utils/package.json b/packages/geom-poly-utils/package.json index 63e0f1ccb2..86116c672a 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.1.49", + "version": "0.1.50", "description": "2D polygon / triangle analysis & processing utilities", "module": "./index.js", "main": "./lib/index.js", @@ -44,9 +44,9 @@ }, "dependencies": { "@thi.ng/errors": "^1.2.14", - "@thi.ng/geom-api": "^1.0.20", - "@thi.ng/math": "^1.7.10", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/geom-api": "^1.0.21", + "@thi.ng/math": "^1.7.11", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-poly-utils/src/barycentric.ts b/packages/geom-poly-utils/src/barycentric.ts index 6f27305e92..dd90bd37b7 100644 --- a/packages/geom-poly-utils/src/barycentric.ts +++ b/packages/geom-poly-utils/src/barycentric.ts @@ -5,7 +5,7 @@ import { ReadonlyVec, setC3, sub, - Vec + Vec, } from "@thi.ng/vectors"; export const toBarycentric = ( diff --git a/packages/geom-poly-utils/src/bounds.ts b/packages/geom-poly-utils/src/bounds.ts index ef2097306c..a7488b4c01 100644 --- a/packages/geom-poly-utils/src/bounds.ts +++ b/packages/geom-poly-utils/src/bounds.ts @@ -1,9 +1,4 @@ -import { - max, - min, - Vec, - VecPair -} from "@thi.ng/vectors"; +import { max, min, Vec, VecPair } from "@thi.ng/vectors"; /** * Computes the nD bounds of given vectors. `vmin` should be initialized diff --git a/packages/geom-poly-utils/src/equilateral.ts b/packages/geom-poly-utils/src/equilateral.ts index 53766a9251..6b6546f7d7 100644 --- a/packages/geom-poly-utils/src/equilateral.ts +++ b/packages/geom-poly-utils/src/equilateral.ts @@ -5,7 +5,7 @@ import { normalize, perpendicularCCW, sub2, - Vec + Vec, } from "@thi.ng/vectors"; export const equilateralTriangle2 = (a: Vec, b: Vec) => { diff --git a/packages/geom-resample/CHANGELOG.md b/packages/geom-resample/CHANGELOG.md index 836bf13f70..13070c64d0 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.32](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-resample@0.2.31...@thi.ng/geom-resample@0.2.32) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-resample + + + + + ## [0.2.31](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-resample@0.2.30...@thi.ng/geom-resample@0.2.31) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-resample diff --git a/packages/geom-resample/package.json b/packages/geom-resample/package.json index dadd95ba6b..46dcf50fb9 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.31", + "version": "0.2.32", "description": "Customizable nD polyline interpolation, re-sampling, splitting & nearest point computation", "module": "./index.js", "main": "./lib/index.js", @@ -43,11 +43,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/checks": "^2.7.0", - "@thi.ng/geom-api": "^1.0.20", - "@thi.ng/geom-closest-point": "^0.3.31", - "@thi.ng/math": "^1.7.10", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/geom-api": "^1.0.21", + "@thi.ng/geom-closest-point": "^0.3.32", + "@thi.ng/math": "^1.7.11", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-resample/src/sampler.ts b/packages/geom-resample/src/sampler.ts index 05e78738e4..ccb15ff3c0 100644 --- a/packages/geom-resample/src/sampler.ts +++ b/packages/geom-resample/src/sampler.ts @@ -10,7 +10,7 @@ import { set, sub, Vec, - VecPair + VecPair, } from "@thi.ng/vectors"; export class Sampler { diff --git a/packages/geom-splines/CHANGELOG.md b/packages/geom-splines/CHANGELOG.md index b12674e82b..5096f1c564 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.19](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-splines@0.5.18...@thi.ng/geom-splines@0.5.19) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-splines + + + + + ## [0.5.18](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-splines@0.5.17...@thi.ng/geom-splines@0.5.18) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-splines diff --git a/packages/geom-splines/package.json b/packages/geom-splines/package.json index cd75c5d500..3be15fad53 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.18", + "version": "0.5.19", "description": "nD cubic & quadratic curve analysis, conversion, interpolation, splitting", "module": "./index.js", "main": "./lib/index.js", @@ -43,12 +43,12 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/checks": "^2.7.0", - "@thi.ng/geom-api": "^1.0.20", - "@thi.ng/geom-arc": "^0.2.31", - "@thi.ng/geom-resample": "^0.2.31", - "@thi.ng/math": "^1.7.10", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/geom-api": "^1.0.21", + "@thi.ng/geom-arc": "^0.2.32", + "@thi.ng/geom-resample": "^0.2.32", + "@thi.ng/math": "^1.7.11", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-splines/src/cubic-arc.ts b/packages/geom-splines/src/cubic-arc.ts index f6ca6653e2..d0bb40e262 100644 --- a/packages/geom-splines/src/cubic-arc.ts +++ b/packages/geom-splines/src/cubic-arc.ts @@ -1,11 +1,5 @@ import { pointAtTheta } from "@thi.ng/geom-arc"; -import { - EPS, - HALF_PI, - PI, - roundEps, - sincos -} from "@thi.ng/math"; +import { EPS, HALF_PI, PI, roundEps, sincos } from "@thi.ng/math"; import { magSq2, ReadonlyVec, Vec } from "@thi.ng/vectors"; import { cubicFromLine } from "./cubic-line"; @@ -14,7 +8,7 @@ import { cubicFromLine } from "./cubic-line"; * arc's angle range. * * Partially based on: - * {@link https://github.com/chromium/chromium/blob/master/third_party/blink/renderer/core/svg/svg_path_parser.cc#L253} + * {@link https://github.com/chromium/chromium/blob/develop/third_party/blink/renderer/core/svg/svg_path_parser.cc#L253} * * @param pos - ellipse center * @param r - ellipse radii @@ -60,7 +54,7 @@ export const cubicFromArc = ( mapP(c1, s1), mapP(c1 - s1 * t, s1 + c1 * t), mapP(c2 + s2 * t, s2 - c2 * t), - mapP(c2, s2) + mapP(c2, s2), ]); } return res; diff --git a/packages/geom-splines/src/cubic-closest-point.ts b/packages/geom-splines/src/cubic-closest-point.ts index 05d21a22d6..c3ccdcd85e 100644 --- a/packages/geom-splines/src/cubic-closest-point.ts +++ b/packages/geom-splines/src/cubic-closest-point.ts @@ -1,10 +1,5 @@ import { minError } from "@thi.ng/math"; -import { - distSq, - mixCubic, - ReadonlyVec, - Vec -} from "@thi.ng/vectors"; +import { distSq, mixCubic, ReadonlyVec, Vec } from "@thi.ng/vectors"; /** * Performs recursive search for closest point to `p` on cubic curve diff --git a/packages/geom-splines/src/cubic-from-breakpoints.ts b/packages/geom-splines/src/cubic-from-breakpoints.ts index 12474c8854..833400ffee 100644 --- a/packages/geom-splines/src/cubic-from-breakpoints.ts +++ b/packages/geom-splines/src/cubic-from-breakpoints.ts @@ -8,7 +8,7 @@ import { perpendicularCW, ReadonlyVec, set, - Vec + Vec, } from "@thi.ng/vectors"; const buildSegments = (tangents: Vec[][], t: number, uniform: boolean) => { @@ -49,7 +49,7 @@ export const openCubicFromBreakPoints = ( uniform = false ) => { const tangents: Vec[][] = [ - [points[0], direction([], points[0], points[1])] + [points[0], direction([], points[0], points[1])], ]; const num = points.length - 1; for (let i = 1; i < num; i++) { diff --git a/packages/geom-splines/src/cubic-from-controlpoints.ts b/packages/geom-splines/src/cubic-from-controlpoints.ts index 98bf2fbf7d..e46fd2d464 100644 --- a/packages/geom-splines/src/cubic-from-controlpoints.ts +++ b/packages/geom-splines/src/cubic-from-controlpoints.ts @@ -5,7 +5,7 @@ import { mixN, ReadonlyVec, set, - Vec + Vec, } from "@thi.ng/vectors"; const buildUniform = (segments: Vec[], t: number) => { @@ -18,7 +18,7 @@ const buildUniform = (segments: Vec[], t: number) => { a, add(null, direction([], a, b, t), a), add(null, direction([], c, b, t), c), - c + c, ]); } return res; diff --git a/packages/geom-splines/src/cubic-line.ts b/packages/geom-splines/src/cubic-line.ts index 31f4022cbc..5aacb56b88 100644 --- a/packages/geom-splines/src/cubic-line.ts +++ b/packages/geom-splines/src/cubic-line.ts @@ -12,5 +12,5 @@ export const cubicFromLine = (a: Vec, b: Vec) => [ set([], a), mixN([], a, b, 1 / 3), mixN([], b, a, 1 / 3), - set([], b) + set([], b), ]; diff --git a/packages/geom-splines/src/cubic-quadratic.ts b/packages/geom-splines/src/cubic-quadratic.ts index 6946601373..820b63f6d7 100644 --- a/packages/geom-splines/src/cubic-quadratic.ts +++ b/packages/geom-splines/src/cubic-quadratic.ts @@ -4,5 +4,5 @@ export const cubicFromQuadratic = (a: Vec, b: Vec, c: Vec) => [ set([], a), mixN([], a, b, 2 / 3), mixN([], c, b, 2 / 3), - set([], c) + set([], c), ]; diff --git a/packages/geom-splines/src/cubic-split.ts b/packages/geom-splines/src/cubic-split.ts index de96d14acb..aa872a8fbc 100644 --- a/packages/geom-splines/src/cubic-split.ts +++ b/packages/geom-splines/src/cubic-split.ts @@ -20,7 +20,10 @@ export const cubicSplitAt = ( const abc = mixN([], ab, bc, t); const bcd = mixN([], bc, cd, t); const p = mixN([], abc, bcd, t); - return [[set([], a), ab, abc, set([], p)], [p, bcd, cd, set([], d)]]; + return [ + [set([], a), ab, abc, set([], p)], + [p, bcd, cd, set([], d)], + ]; }; export const splitCubicNearPoint = ( diff --git a/packages/geom-splines/src/cubic-tangent.ts b/packages/geom-splines/src/cubic-tangent.ts index eaef8099c5..3da5ec7be3 100644 --- a/packages/geom-splines/src/cubic-tangent.ts +++ b/packages/geom-splines/src/cubic-tangent.ts @@ -1,9 +1,4 @@ -import { - addW4, - normalize, - ReadonlyVec, - Vec -} from "@thi.ng/vectors"; +import { addW4, normalize, ReadonlyVec, Vec } from "@thi.ng/vectors"; export const cubicTangentAt = ( out: Vec, diff --git a/packages/geom-splines/src/internal/sample.ts b/packages/geom-splines/src/internal/sample.ts index beeb35cedb..55bdc947ce 100644 --- a/packages/geom-splines/src/internal/sample.ts +++ b/packages/geom-splines/src/internal/sample.ts @@ -20,11 +20,11 @@ export const __sample = (sample: Fn3) => opts = isNumber(opts) ? { num: opts, - last: true + last: true, } : { num: DEFAULT_SAMPLES, - ...opts + ...opts, }; const res: Vec[] = []; sample(res, pts, opts.num!); @@ -32,7 +32,9 @@ export const __sample = (sample: Fn3) => return res; }; -export const __sampleArray = (fn: Fn2, Vec[]>) => ( +export const __sampleArray = ( + fn: Fn2, Vec[]> +) => ( segments: ReadonlyVec[][], closed = false, opts: number | Partial diff --git a/packages/geom-splines/src/quadratic-closest-point.ts b/packages/geom-splines/src/quadratic-closest-point.ts index df507edc83..2dc30a0da8 100644 --- a/packages/geom-splines/src/quadratic-closest-point.ts +++ b/packages/geom-splines/src/quadratic-closest-point.ts @@ -1,10 +1,5 @@ import { minError } from "@thi.ng/math"; -import { - distSq, - mixQuadratic, - ReadonlyVec, - Vec -} from "@thi.ng/vectors"; +import { distSq, mixQuadratic, ReadonlyVec, Vec } from "@thi.ng/vectors"; /** * Performs recursive search for closest point to `p` on quadratic curve diff --git a/packages/geom-splines/src/quadratic-line.ts b/packages/geom-splines/src/quadratic-line.ts index ef94f4aeb2..0b3d9e8e44 100644 --- a/packages/geom-splines/src/quadratic-line.ts +++ b/packages/geom-splines/src/quadratic-line.ts @@ -3,5 +3,5 @@ import { addmN, ReadonlyVec, set } from "@thi.ng/vectors"; export const quadraticFromLine = (a: ReadonlyVec, b: ReadonlyVec) => [ set([], a), addmN([], a, b, 0.5), - set([], b) + set([], b), ]; diff --git a/packages/geom-splines/src/quadratic-split.ts b/packages/geom-splines/src/quadratic-split.ts index 46339eb616..ff6714bcaa 100644 --- a/packages/geom-splines/src/quadratic-split.ts +++ b/packages/geom-splines/src/quadratic-split.ts @@ -16,7 +16,10 @@ export const quadraticSplitAt = ( const ab = mixN([], a, b, t); const bc = mixN([], b, c, t); const p = mixN([], ab, bc, t); - return [[set([], a), ab, p], [p, bc, set([], c)]]; + return [ + [set([], a), ab, p], + [p, bc, set([], c)], + ]; }; export const quadraticSplitNearPoint = ( diff --git a/packages/geom-splines/src/quadratic-tangent.ts b/packages/geom-splines/src/quadratic-tangent.ts index 0676da2e3a..90abb1daaf 100644 --- a/packages/geom-splines/src/quadratic-tangent.ts +++ b/packages/geom-splines/src/quadratic-tangent.ts @@ -1,10 +1,4 @@ -import { - addW2, - normalize, - ReadonlyVec, - sub, - Vec -} from "@thi.ng/vectors"; +import { addW2, normalize, ReadonlyVec, sub, Vec } from "@thi.ng/vectors"; export const quadraticTangentAt = ( out: Vec, diff --git a/packages/geom-subdiv-curve/CHANGELOG.md b/packages/geom-subdiv-curve/CHANGELOG.md index ab6cc0c395..f5d4e77f60 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.49](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-subdiv-curve@0.1.48...@thi.ng/geom-subdiv-curve@0.1.49) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-subdiv-curve + + + + + ## [0.1.48](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-subdiv-curve@0.1.47...@thi.ng/geom-subdiv-curve@0.1.48) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-subdiv-curve diff --git a/packages/geom-subdiv-curve/package.json b/packages/geom-subdiv-curve/package.json index 2aa4e88cba..68acc95b67 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.48", + "version": "0.1.49", "description": "Freely customizable, iterative nD subdivision curves for open / closed geometries", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/geom-api": "^1.0.20", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/geom-api": "^1.0.21", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-subdiv-curve/src/api.ts b/packages/geom-subdiv-curve/src/api.ts index 0a82470eeb..3478ee6bda 100644 --- a/packages/geom-subdiv-curve/src/api.ts +++ b/packages/geom-subdiv-curve/src/api.ts @@ -12,7 +12,7 @@ const MIDP = ([a, b]: ReadonlyVec[]) => [a, mixN([], a, b, 0.5)]; const THIRDS = ([a, b]: ReadonlyVec[]) => [ a, mixN([], a, b, 1 / 3), - mixN([], a, b, 2 / 3) + mixN([], a, b, 2 / 3), ]; const wrap2 = (pts: ReadonlyVec[]) => wrapSides(pts, 0, 1); @@ -24,7 +24,7 @@ const wrap3 = (pts: ReadonlyVec[]) => wrapSides(pts, 1, 1); */ export const SUBDIV_MID_OPEN: SubdivKernel = { fn: (pts, i, n) => (i < n - 2 ? MIDP(pts) : [...MIDP(pts), pts[1]]), - size: 2 + size: 2, }; /** @@ -34,7 +34,7 @@ export const SUBDIV_MID_OPEN: SubdivKernel = { export const SUBDIV_MID_CLOSED: SubdivKernel = { fn: MIDP, pre: wrap2, - size: 2 + size: 2, }; /** @@ -43,7 +43,7 @@ export const SUBDIV_MID_CLOSED: SubdivKernel = { */ export const SUBDIV_THIRDS_OPEN: SubdivKernel = { fn: (pts, i, n) => (i < n - 2 ? THIRDS(pts) : [...THIRDS(pts), pts[1]]), - size: 2 + size: 2, }; /** @@ -53,7 +53,7 @@ export const SUBDIV_THIRDS_OPEN: SubdivKernel = { export const SUBDIV_THIRDS_CLOSED: SubdivKernel = { fn: THIRDS, pre: wrap2, - size: 2 + size: 2, }; /** @@ -66,7 +66,7 @@ export const SUBDIV_CHAIKIN_OPEN: SubdivKernel = { : i === n - 3 ? [...CHAIKIN_LAST(pts), pts[2]] : CHAIKIN_MAIN(pts), - size: 3 + size: 3, }; /** @@ -75,7 +75,7 @@ export const SUBDIV_CHAIKIN_OPEN: SubdivKernel = { export const SUBDIV_CHAIKIN_CLOSED: SubdivKernel = { fn: CHAIKIN_MAIN, pre: wrap3, - size: 3 + size: 3, }; /** @@ -84,5 +84,5 @@ export const SUBDIV_CHAIKIN_CLOSED: SubdivKernel = { export const SUBDIV_CUBIC_CLOSED: SubdivKernel = { fn: CUBIC_MAIN, pre: wrap3, - size: 3 + size: 3, }; diff --git a/packages/geom-subdiv-curve/src/kernels.ts b/packages/geom-subdiv-curve/src/kernels.ts index 33e4ab9f5c..55ebe2cbdb 100644 --- a/packages/geom-subdiv-curve/src/kernels.ts +++ b/packages/geom-subdiv-curve/src/kernels.ts @@ -9,7 +9,7 @@ import { addW2, addW3, addW5, ReadonlyVec } from "@thi.ng/vectors"; */ export const kernel2 = ([ua, ub]: number[], [va, vb]: number[]) => ([ a, - b + b, ]: ReadonlyVec[]) => [addW2([], a, b, ua, ub), addW2([], a, b, va, vb)]; /** @@ -22,10 +22,10 @@ export const kernel2 = ([ua, ub]: number[], [va, vb]: number[]) => ([ export const kernel3 = ([ua, ub, uc]: number[], [va, vb, vc]: number[]) => ([ a, b, - c + c, ]: ReadonlyVec[]) => [ addW3([], a, b, c, ua, ub, uc), - addW3([], a, b, c, va, vb, vc) + addW3([], a, b, c, va, vb, vc), ]; /** @@ -40,5 +40,5 @@ export const kernel5 = ( [va, vb, vc, vd, ve]: number[] ) => ([a, b, c, d, e]: ReadonlyVec[]) => [ addW5([], a, b, c, d, e, ua, ub, uc, ud, ue), - addW5([], a, b, c, d, e, va, vb, vc, vd, ve) + addW5([], a, b, c, d, e, va, vb, vc, vd, ve), ]; diff --git a/packages/geom-subdiv-curve/src/subdivide.ts b/packages/geom-subdiv-curve/src/subdivide.ts index 141bdf5b24..04e9f3618e 100644 --- a/packages/geom-subdiv-curve/src/subdivide.ts +++ b/packages/geom-subdiv-curve/src/subdivide.ts @@ -4,7 +4,7 @@ import { mapcat, partition, push, - transduce + transduce, } from "@thi.ng/transducers"; import type { SubdivKernel } from "@thi.ng/geom-api"; import type { ReadonlyVec, Vec } from "@thi.ng/vectors"; diff --git a/packages/geom-tessellate/CHANGELOG.md b/packages/geom-tessellate/CHANGELOG.md index 82b7411dcf..8ade110f74 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.32](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-tessellate@0.2.31...@thi.ng/geom-tessellate@0.2.32) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-tessellate + + + + + ## [0.2.31](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-tessellate@0.2.30...@thi.ng/geom-tessellate@0.2.31) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-tessellate diff --git a/packages/geom-tessellate/package.json b/packages/geom-tessellate/package.json index 90822a0d93..dda8346f76 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.31", + "version": "0.2.32", "description": "2D/3D convex polygon tessellators", "module": "./index.js", "main": "./lib/index.js", @@ -43,12 +43,12 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/checks": "^2.7.0", - "@thi.ng/geom-api": "^1.0.20", - "@thi.ng/geom-isec": "^0.4.20", - "@thi.ng/geom-poly-utils": "^0.1.49", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/geom-api": "^1.0.21", + "@thi.ng/geom-isec": "^0.4.21", + "@thi.ng/geom-poly-utils": "^0.1.50", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-tessellate/src/edge-split.ts b/packages/geom-tessellate/src/edge-split.ts index c8074321ae..ff2462216e 100644 --- a/packages/geom-tessellate/src/edge-split.ts +++ b/packages/geom-tessellate/src/edge-split.ts @@ -5,7 +5,7 @@ import { partition, push, transduce, - wrapSides + wrapSides, } from "@thi.ng/transducers"; import { mixN, ReadonlyVec, Vec } from "@thi.ng/vectors"; import type { Tessellator } from "@thi.ng/geom-api"; @@ -17,7 +17,10 @@ export const edgeSplit: Tessellator = (points: ReadonlyVec[]) => { partition(2, 1), mapcat(([a, b]) => { const m = mixN([], a, b, 0.5); - return [[a, m, c], [m, b, c]]; + return [ + [a, m, c], + [m, b, c], + ]; }) ), push(), diff --git a/packages/geom-tessellate/src/inset.ts b/packages/geom-tessellate/src/inset.ts index 3c2edf931b..0031a7fde1 100644 --- a/packages/geom-tessellate/src/inset.ts +++ b/packages/geom-tessellate/src/inset.ts @@ -6,7 +6,7 @@ import { push, transduce, wrapSides, - zip + zip, } from "@thi.ng/transducers"; import { mixN, ReadonlyVec, Vec } from "@thi.ng/vectors"; import type { Tessellator } from "@thi.ng/geom-api"; @@ -17,7 +17,10 @@ export const tesselInset = (inset = 0.5, keepInterior = false): Tessellator => ( const c = centroid(points); const inner = points.map((p) => mixN([], p, c, inset)); return transduce( - comp(partition(2, 1), map(([[a, b], [c, d]]) => [a, b, d, c])), + comp( + partition(2, 1), + map(([[a, b], [c, d]]) => [a, b, d, c]) + ), push(), keepInterior ? [inner] : [], wrapSides([...zip(points, inner)], 0, 1) diff --git a/packages/geom-tessellate/src/quad-fan.ts b/packages/geom-tessellate/src/quad-fan.ts index 58313fe870..846a26692e 100644 --- a/packages/geom-tessellate/src/quad-fan.ts +++ b/packages/geom-tessellate/src/quad-fan.ts @@ -5,7 +5,7 @@ import { partition, push, transduce, - wrapSides + wrapSides, } from "@thi.ng/transducers"; import { mixN, ReadonlyVec, Vec } from "@thi.ng/vectors"; import type { Tessellator } from "@thi.ng/geom-api"; diff --git a/packages/geom-tessellate/src/rim-tris.ts b/packages/geom-tessellate/src/rim-tris.ts index 3ad9950998..b91180785a 100644 --- a/packages/geom-tessellate/src/rim-tris.ts +++ b/packages/geom-tessellate/src/rim-tris.ts @@ -5,19 +5,25 @@ import { push, transduce, wrapSides, - zip + zip, } from "@thi.ng/transducers"; import { mixN, ReadonlyVec, Vec } from "@thi.ng/vectors"; import type { Tessellator } from "@thi.ng/geom-api"; export const rimTris: Tessellator = (points: ReadonlyVec[]) => { const edgeCentroids = transduce( - comp(partition(2, 1), map((e) => mixN([], e[0], e[1], 0.5))), + comp( + partition(2, 1), + map((e) => mixN([], e[0], e[1], 0.5)) + ), push(), wrapSides(points, 0, 1) ); return transduce( - comp(partition(2, 1), map((t) => [t[0][0], t[1][1], t[1][0]])), + comp( + partition(2, 1), + map((t) => [t[0][0], t[1][1], t[1][0]]) + ), push(), [edgeCentroids], wrapSides([...zip(edgeCentroids, points)], 1, 0) diff --git a/packages/geom-tessellate/src/tessellate.ts b/packages/geom-tessellate/src/tessellate.ts index e4f01835b2..9a8d9dc8fe 100644 --- a/packages/geom-tessellate/src/tessellate.ts +++ b/packages/geom-tessellate/src/tessellate.ts @@ -6,7 +6,7 @@ import { reducer, repeat, scan, - transduce + transduce, } from "@thi.ng/transducers"; import type { Tessellator } from "@thi.ng/geom-api"; import type { ReadonlyVec, Vec } from "@thi.ng/vectors"; diff --git a/packages/geom-tessellate/src/tri-fan.ts b/packages/geom-tessellate/src/tri-fan.ts index 4280ce2572..3396d5323a 100644 --- a/packages/geom-tessellate/src/tri-fan.ts +++ b/packages/geom-tessellate/src/tri-fan.ts @@ -5,7 +5,7 @@ import { partition, push, transduce, - wrapSides + wrapSides, } from "@thi.ng/transducers"; import type { Tessellator } from "@thi.ng/geom-api"; import type { ReadonlyVec, Vec } from "@thi.ng/vectors"; @@ -13,7 +13,10 @@ import type { ReadonlyVec, Vec } from "@thi.ng/vectors"; export const triFan: Tessellator = (points: ReadonlyVec[]) => { const c = centroid(points); return transduce( - comp(partition(2, 1), map(([a, b]) => [a, b, c])), + comp( + partition(2, 1), + map(([a, b]) => [a, b, c]) + ), push(), wrapSides(points, 0, 1) ); diff --git a/packages/geom-voronoi/CHANGELOG.md b/packages/geom-voronoi/CHANGELOG.md index 5e01b59a71..d75a9632c2 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.1.50](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-voronoi@0.1.49...@thi.ng/geom-voronoi@0.1.50) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom-voronoi + + + + + ## [0.1.49](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom-voronoi@0.1.48...@thi.ng/geom-voronoi@0.1.49) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom-voronoi diff --git a/packages/geom-voronoi/package.json b/packages/geom-voronoi/package.json index 28f3c30ffd..3541e460ce 100644 --- a/packages/geom-voronoi/package.json +++ b/packages/geom-voronoi/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom-voronoi", - "version": "0.1.49", + "version": "0.1.50", "description": "Fast, incremental 2D Delaunay & Voronoi mesh implementation", "module": "./index.js", "main": "./lib/index.js", @@ -43,15 +43,15 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/geom-clip-line": "^1.0.18", - "@thi.ng/geom-clip-poly": "^1.0.18", - "@thi.ng/geom-isec": "^0.4.20", - "@thi.ng/geom-poly-utils": "^0.1.49", - "@thi.ng/math": "^1.7.10", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/geom-clip-line": "^1.0.19", + "@thi.ng/geom-clip-poly": "^1.0.19", + "@thi.ng/geom-isec": "^0.4.21", + "@thi.ng/geom-poly-utils": "^0.1.50", + "@thi.ng/math": "^1.7.11", "@thi.ng/quad-edge": "^0.2.16", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom-voronoi/src/index.ts b/packages/geom-voronoi/src/index.ts index b765d97835..0403de466b 100644 --- a/packages/geom-voronoi/src/index.ts +++ b/packages/geom-voronoi/src/index.ts @@ -1,7 +1,11 @@ import { isNumber } from "@thi.ng/checks"; import { liangBarsky2 } from "@thi.ng/geom-clip-line"; import { sutherlandHodgeman } from "@thi.ng/geom-clip-poly"; -import { pointInCircumCircle, pointInPolygon2, pointInSegment } from "@thi.ng/geom-isec"; +import { + pointInCircumCircle, + pointInPolygon2, + pointInSegment, +} from "@thi.ng/geom-isec"; import { centroid, circumCenter2 } from "@thi.ng/geom-poly-utils"; import { EPS } from "@thi.ng/math"; import { Edge } from "@thi.ng/quad-edge"; @@ -11,7 +15,7 @@ import { signedArea2, Vec, VecPair, - ZERO2 + ZERO2, } from "@thi.ng/vectors"; import type { IObjectOf, Pair } from "@thi.ng/api"; @@ -65,7 +69,7 @@ export class DVMesh { let base = Edge.create>(e.origin, { pos: p, id: this.nextID++, - val + val, }); base.splice(e); const first = base; @@ -156,7 +160,7 @@ export class DVMesh { const id = this.nextID++; e.origin = { pos: !isBounds ? circumCenter2(a, b, c)! : ZERO2, - id + id, }; visitedVerts[id] = true; } diff --git a/packages/geom/CHANGELOG.md b/packages/geom/CHANGELOG.md index 8cced523ef..098fe41aae 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. +## [1.9.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom@1.9.7...@thi.ng/geom@1.9.8) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/geom + + + + + ## [1.9.7](https://github.com/thi-ng/umbrella/compare/@thi.ng/geom@1.9.6...@thi.ng/geom@1.9.7) (2020-06-01) **Note:** Version bump only for package @thi.ng/geom diff --git a/packages/geom/package.json b/packages/geom/package.json index 3d789d9f03..62a4874729 100644 --- a/packages/geom/package.json +++ b/packages/geom/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/geom", - "version": "1.9.7", + "version": "1.9.8", "description": "Functional, polymorphic API for 2D geometry types & SVG generation", "module": "./index.js", "main": "./lib/index.js", @@ -43,32 +43,32 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/arrays": "^0.6.8", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/compose": "^1.4.8", - "@thi.ng/defmulti": "^1.2.16", + "@thi.ng/api": "^6.11.1", + "@thi.ng/arrays": "^0.6.9", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/compose": "^1.4.9", + "@thi.ng/defmulti": "^1.2.17", "@thi.ng/equiv": "^1.0.23", "@thi.ng/errors": "^1.2.14", - "@thi.ng/geom-api": "^1.0.20", - "@thi.ng/geom-arc": "^0.2.31", - "@thi.ng/geom-clip-line": "^1.0.18", - "@thi.ng/geom-clip-poly": "^1.0.18", - "@thi.ng/geom-closest-point": "^0.3.31", - "@thi.ng/geom-hull": "^0.0.51", - "@thi.ng/geom-isec": "^0.4.20", - "@thi.ng/geom-poly-utils": "^0.1.49", - "@thi.ng/geom-resample": "^0.2.31", - "@thi.ng/geom-splines": "^0.5.18", - "@thi.ng/geom-subdiv-curve": "^0.1.48", - "@thi.ng/geom-tessellate": "^0.2.31", - "@thi.ng/hiccup": "^3.2.24", - "@thi.ng/hiccup-svg": "^3.4.22", - "@thi.ng/math": "^1.7.10", - "@thi.ng/matrices": "^0.6.18", - "@thi.ng/random": "^1.4.10", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/geom-api": "^1.0.21", + "@thi.ng/geom-arc": "^0.2.32", + "@thi.ng/geom-clip-line": "^1.0.19", + "@thi.ng/geom-clip-poly": "^1.0.19", + "@thi.ng/geom-closest-point": "^0.3.32", + "@thi.ng/geom-hull": "^0.0.52", + "@thi.ng/geom-isec": "^0.4.21", + "@thi.ng/geom-poly-utils": "^0.1.50", + "@thi.ng/geom-resample": "^0.2.32", + "@thi.ng/geom-splines": "^0.5.19", + "@thi.ng/geom-subdiv-curve": "^0.1.49", + "@thi.ng/geom-tessellate": "^0.2.32", + "@thi.ng/hiccup": "^3.2.25", + "@thi.ng/hiccup-svg": "^3.4.23", + "@thi.ng/math": "^1.7.11", + "@thi.ng/matrices": "^0.6.19", + "@thi.ng/random": "^1.4.11", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/geom/src/api/arc.ts b/packages/geom/src/api/arc.ts index 59400b7e53..2fcede0814 100644 --- a/packages/geom/src/api/arc.ts +++ b/packages/geom/src/api/arc.ts @@ -3,9 +3,12 @@ import { Attribs, IHiccupPathSegment, IHiccupShape, - Type + Type, } from "@thi.ng/geom-api"; -import { pointAt as arcPointAt, pointAtTheta as arcPointAtTheta } from "@thi.ng/geom-arc"; +import { + pointAt as arcPointAt, + pointAtTheta as arcPointAtTheta, +} from "@thi.ng/geom-arc"; import { set, Vec } from "@thi.ng/vectors"; import { copyAttribs } from "../internal/copy-attribs"; @@ -90,7 +93,7 @@ export class Arc implements IHiccupShape, IHiccupPathSegment { return [ "path", this.attribs, - [["M", this.pointAt(0)], ...this.toHiccupPathSegments()] + [["M", this.pointAt(0)], ...this.toHiccupPathSegments()], ]; } @@ -103,8 +106,8 @@ export class Arc implements IHiccupShape, IHiccupPathSegment { this.axis, this.xl, this.cw, - this.pointAt(1) - ] + this.pointAt(1), + ], ]; } } diff --git a/packages/geom/src/api/cubic.ts b/packages/geom/src/api/cubic.ts index 58e844f554..a3844efece 100644 --- a/packages/geom/src/api/cubic.ts +++ b/packages/geom/src/api/cubic.ts @@ -15,7 +15,7 @@ export class Cubic extends APC implements IHiccupPathSegment { return [ "path", this.attribs, - [["M", this.points[0]], ...this.toHiccupPathSegments()] + [["M", this.points[0]], ...this.toHiccupPathSegments()], ]; } diff --git a/packages/geom/src/api/group.ts b/packages/geom/src/api/group.ts index a60221eb75..db47898dbc 100644 --- a/packages/geom/src/api/group.ts +++ b/packages/geom/src/api/group.ts @@ -20,9 +20,10 @@ export class Group implements IHiccupShape { } copy(): Group { - return new Group(copyAttribs(this), ( - this.children.map((c) => c.copy()) - )); + return new Group( + copyAttribs(this), + this.children.map((c) => c.copy()) + ); } equiv(o: any) { diff --git a/packages/geom/src/api/line.ts b/packages/geom/src/api/line.ts index 25d6fb6f49..8439f25376 100644 --- a/packages/geom/src/api/line.ts +++ b/packages/geom/src/api/line.ts @@ -18,7 +18,11 @@ export class Line extends APC implements IHiccupShape, IHiccupPathSegment { toHiccupPathSegments() { const [a, b] = this.points; return [ - a[0] === b[0] ? ["V", b[1]] : a[1] === b[1] ? ["H", b[0]] : ["L", b] + a[0] === b[0] + ? ["V", b[1]] + : a[1] === b[1] + ? ["H", b[0]] + : ["L", b], ]; } } diff --git a/packages/geom/src/api/quadratic.ts b/packages/geom/src/api/quadratic.ts index b5ef14c09e..f3c5f63e2b 100644 --- a/packages/geom/src/api/quadratic.ts +++ b/packages/geom/src/api/quadratic.ts @@ -15,7 +15,7 @@ export class Quadratic extends APC implements IHiccupShape, IHiccupPathSegment { return [ "path", this.attribs, - [["M", this.points[0]], ...this.toHiccupPathSegments()] + [["M", this.points[0]], ...this.toHiccupPathSegments()], ]; } diff --git a/packages/geom/src/api/ray.ts b/packages/geom/src/api/ray.ts index 70e2380ea4..eab6fc0c7e 100644 --- a/packages/geom/src/api/ray.ts +++ b/packages/geom/src/api/ray.ts @@ -26,7 +26,7 @@ export class Ray implements IHiccupShape { "line", this.attribs, this.pos, - maddN2([], this.dir, 1e6, this.pos) + maddN2([], this.dir, 1e6, this.pos), ]; } } diff --git a/packages/geom/src/api/rect.ts b/packages/geom/src/api/rect.ts index 1f4985c1a5..2ad1e91d9d 100644 --- a/packages/geom/src/api/rect.ts +++ b/packages/geom/src/api/rect.ts @@ -1,10 +1,5 @@ import { isNumber } from "@thi.ng/checks"; -import { - AABBLike, - Attribs, - IHiccupShape, - Type -} from "@thi.ng/geom-api"; +import { AABBLike, Attribs, IHiccupShape, Type } from "@thi.ng/geom-api"; import { add2, set, Vec } from "@thi.ng/vectors"; import { copyAttribs } from "../internal/copy-attribs"; diff --git a/packages/geom/src/ctors/aabb.ts b/packages/geom/src/ctors/aabb.ts index f20a677c8f..5b5e0b7be8 100644 --- a/packages/geom/src/ctors/aabb.ts +++ b/packages/geom/src/ctors/aabb.ts @@ -7,7 +7,7 @@ import { sub3, subN3, Vec, - ZERO3 + ZERO3, } from "@thi.ng/vectors"; import { AABB } from "../api/aabb"; import { Sphere } from "../api/sphere"; diff --git a/packages/geom/src/ctors/circle.ts b/packages/geom/src/ctors/circle.ts index fcc98ccd66..25d0a954ea 100644 --- a/packages/geom/src/ctors/circle.ts +++ b/packages/geom/src/ctors/circle.ts @@ -1,10 +1,5 @@ import { circumCenter2 } from "@thi.ng/geom-poly-utils"; -import { - dist, - mixN2, - ReadonlyVec, - Vec -} from "@thi.ng/vectors"; +import { dist, mixN2, ReadonlyVec, Vec } from "@thi.ng/vectors"; import { Circle } from "../api/circle"; import { argsVN } from "../internal/args"; import type { Attribs } from "@thi.ng/geom-api"; diff --git a/packages/geom/src/ctors/cubic.ts b/packages/geom/src/ctors/cubic.ts index 987a992e22..29941e6217 100644 --- a/packages/geom/src/ctors/cubic.ts +++ b/packages/geom/src/ctors/cubic.ts @@ -1,4 +1,8 @@ -import { cubicFromArc as _arc, cubicFromLine as _line, cubicFromQuadratic as _quad } from "@thi.ng/geom-splines"; +import { + cubicFromArc as _arc, + cubicFromLine as _line, + cubicFromQuadratic as _quad, +} from "@thi.ng/geom-splines"; import { Arc } from "../api/arc"; import { Cubic } from "../api/cubic"; import { copyAttribs } from "../internal/copy-attribs"; diff --git a/packages/geom/src/ctors/path-builder.ts b/packages/geom/src/ctors/path-builder.ts index 11aa295d33..95a6286eac 100644 --- a/packages/geom/src/ctors/path-builder.ts +++ b/packages/geom/src/ctors/path-builder.ts @@ -1,15 +1,7 @@ import { peek } from "@thi.ng/arrays"; import { Attribs, SegmentType } from "@thi.ng/geom-api"; import { eqDelta } from "@thi.ng/math"; -import { - add2, - copy, - mulN2, - set2, - sub2, - Vec, - zeroes -} from "@thi.ng/vectors"; +import { add2, copy, mulN2, set2, sub2, Vec, zeroes } from "@thi.ng/vectors"; import { Cubic } from "../api/cubic"; import { Line } from "../api/line"; import { Path } from "../api/path"; @@ -56,7 +48,7 @@ export class PathBuilder { set2(this.bezierP, p); this.curr.add({ point: p, - type: SegmentType.MOVE + type: SegmentType.MOVE, }); return this; } @@ -64,7 +56,7 @@ export class PathBuilder { lineTo(p: Vec, relative = false): PathBuilder { this.curr.add({ geo: new Line([copy(this.currP), this.updateCurrent(p, relative)]), - type: SegmentType.LINE + type: SegmentType.LINE, }); set2(this.bezierP, this.currP); return this; @@ -131,7 +123,7 @@ export class PathBuilder { xl, clockwise ), - type: SegmentType.ARC + type: SegmentType.ARC, }); set2(this.bezierP, this.currP); return this; @@ -140,7 +132,7 @@ export class PathBuilder { closePath() { this.curr.add({ geo: new Line([copy(this.currP), copy(this.startP)]), - type: SegmentType.LINE + type: SegmentType.LINE, }); this.curr.closed = true; return this; @@ -161,7 +153,7 @@ export class PathBuilder { set2(this.bezierP, this.currP); this.curr.add({ geo: new Line([prev, copy(this.currP)]), - type: SegmentType.LINE + type: SegmentType.LINE, }); } @@ -173,9 +165,9 @@ export class PathBuilder { copy(this.currP), cp1, cp2, - this.updateCurrent(p, relative) + this.updateCurrent(p, relative), ]), - type: SegmentType.CUBIC + type: SegmentType.CUBIC, }); } @@ -185,9 +177,9 @@ export class PathBuilder { geo: new Quadratic([ copy(this.currP), cp, - this.updateCurrent(p, relative) + this.updateCurrent(p, relative), ]), - type: SegmentType.QUADRATIC + type: SegmentType.QUADRATIC, }); } } diff --git a/packages/geom/src/ctors/path-from-svg.ts b/packages/geom/src/ctors/path-from-svg.ts index 938f119755..2739799696 100644 --- a/packages/geom/src/ctors/path-from-svg.ts +++ b/packages/geom/src/ctors/path-from-svg.ts @@ -104,7 +104,7 @@ const readFlag = (src: string, i: number): [boolean, number] => { : c === "1" ? true : illegalState(`expected '0' or '1' @ pos: ${i}`), - i + 1 + i + 1, ]; }; diff --git a/packages/geom/src/ctors/path.ts b/packages/geom/src/ctors/path.ts index 0ddf79c8a9..1c7e6384e6 100644 --- a/packages/geom/src/ctors/path.ts +++ b/packages/geom/src/ctors/path.ts @@ -31,7 +31,7 @@ export const normalizedPath = (path: Path) => ) : [{ ...s }], path.segments - ) + ), ], path.attribs ); diff --git a/packages/geom/src/ctors/plane.ts b/packages/geom/src/ctors/plane.ts index 16482c1e14..3a1c7dc50f 100644 --- a/packages/geom/src/ctors/plane.ts +++ b/packages/geom/src/ctors/plane.ts @@ -3,7 +3,7 @@ import { normalize, orthoNormal3, ReadonlyVec, - Vec + Vec, } from "@thi.ng/vectors"; import { Plane } from "../api/plane"; import type { Attribs } from "@thi.ng/geom-api"; diff --git a/packages/geom/src/ctors/polygon.ts b/packages/geom/src/ctors/polygon.ts index 63074b7fda..425941f475 100644 --- a/packages/geom/src/ctors/polygon.ts +++ b/packages/geom/src/ctors/polygon.ts @@ -5,7 +5,7 @@ import { normRange, push, transduce, - zip + zip, } from "@thi.ng/transducers"; import { cartesian2, Vec } from "@thi.ng/vectors"; import { Polygon } from "../api/polygon"; diff --git a/packages/geom/src/ctors/quad.ts b/packages/geom/src/ctors/quad.ts index 86e5e3a140..e8791e1802 100644 --- a/packages/geom/src/ctors/quad.ts +++ b/packages/geom/src/ctors/quad.ts @@ -1,12 +1,7 @@ import { isNumber } from "@thi.ng/checks"; import { closestPointPlane } from "@thi.ng/geom-closest-point"; import { alignmentQuat, mulVQ } from "@thi.ng/matrices"; -import { - add3, - ReadonlyVec, - Vec, - Z3 -} from "@thi.ng/vectors"; +import { add3, ReadonlyVec, Vec, Z3 } from "@thi.ng/vectors"; import { Plane } from "../api/plane"; import { Quad } from "../api/quad"; import { Quad3 } from "../api/quad3"; @@ -37,9 +32,12 @@ export const quadOnPlane = ( const [w, h] = isNumber(size) ? [size, size] : size; const q = alignmentQuat(Z3, plane.normal); return new Quad3( - [[-w, -h, 0], [w, -h, 0], [w, h, 0], [-w, h, 0]].map((p) => - add3(null, mulVQ(null, q, p), pos) - ), + [ + [-w, -h, 0], + [w, -h, 0], + [w, h, 0], + [-w, h, 0], + ].map((p) => add3(null, mulVQ(null, q, p), pos)), attribs ); }; diff --git a/packages/geom/src/ctors/rect.ts b/packages/geom/src/ctors/rect.ts index 284e89372a..73e21c180d 100644 --- a/packages/geom/src/ctors/rect.ts +++ b/packages/geom/src/ctors/rect.ts @@ -9,7 +9,7 @@ import { sub2, subN2, Vec, - ZERO2 + ZERO2, } from "@thi.ng/vectors"; import { Circle } from "../api/circle"; import { Polygon } from "../api/polygon"; diff --git a/packages/geom/src/ctors/sphere.ts b/packages/geom/src/ctors/sphere.ts index 71dc47e998..e02aa0264d 100644 --- a/packages/geom/src/ctors/sphere.ts +++ b/packages/geom/src/ctors/sphere.ts @@ -1,9 +1,4 @@ -import { - dist, - mixN3, - ReadonlyVec, - Vec -} from "@thi.ng/vectors"; +import { dist, mixN3, ReadonlyVec, Vec } from "@thi.ng/vectors"; import { Sphere } from "../api/sphere"; import { argsVN } from "../internal/args"; import type { Attribs } from "@thi.ng/geom-api"; diff --git a/packages/geom/src/internal/args.ts b/packages/geom/src/internal/args.ts index e525b3af05..b4116c2934 100644 --- a/packages/geom/src/internal/args.ts +++ b/packages/geom/src/internal/args.ts @@ -44,7 +44,7 @@ export const argsVN = (args: any[]) => { ? args.length === 2 ? [args[0], args[1], attr] : isNumber(args[0]) - ? [undefined, args[0], attr] - : [args[0], undefined, attr] + ? [undefined, args[0], attr] + : [args[0], undefined, attr] : [undefined, undefined, attr]; }; diff --git a/packages/geom/src/internal/collate.ts b/packages/geom/src/internal/collate.ts index 12f9ba008c..246f836351 100644 --- a/packages/geom/src/internal/collate.ts +++ b/packages/geom/src/internal/collate.ts @@ -39,7 +39,7 @@ export const collateWith = ( start: 0, cstride: 1, estride: stride, - ...opts + ...opts, }; const { start, cstride, estride } = opts; return remap( diff --git a/packages/geom/src/internal/split.ts b/packages/geom/src/internal/split.ts index e61025c26a..3c8a12dddc 100644 --- a/packages/geom/src/internal/split.ts +++ b/packages/geom/src/internal/split.ts @@ -2,5 +2,8 @@ import { mixN, set, Vec, VecPair } from "@thi.ng/vectors"; export const splitLine = (a: Vec, b: Vec, t: number): [VecPair, VecPair] => { const p = mixN([], a, b, t); - return [[a, p], [set([], p), b]]; + return [ + [a, p], + [set([], p), b], + ]; }; diff --git a/packages/geom/src/internal/union-bounds.ts b/packages/geom/src/internal/union-bounds.ts index b185db511a..19b95575e1 100644 --- a/packages/geom/src/internal/union-bounds.ts +++ b/packages/geom/src/internal/union-bounds.ts @@ -1,11 +1,4 @@ -import { - add, - max, - min, - ReadonlyVec, - sub, - VecPair -} from "@thi.ng/vectors"; +import { add, max, min, ReadonlyVec, sub, VecPair } from "@thi.ng/vectors"; /** * Takes the position and size vectors of 2 diff --git a/packages/geom/src/ops/arc-length.ts b/packages/geom/src/ops/arc-length.ts index 62cfbeee20..b3ebf75cdb 100644 --- a/packages/geom/src/ops/arc-length.ts +++ b/packages/geom/src/ops/arc-length.ts @@ -56,7 +56,7 @@ arcLength.addAll(>>{ [Type.TRIANGLE]: ({ points }: Triangle) => dist(points[0], points[1]) + dist(points[1], points[2]) + - dist(points[2], points[0]) + dist(points[2], points[0]), }); arcLength.isa(Type.QUAD, Type.POLYGON); diff --git a/packages/geom/src/ops/area.ts b/packages/geom/src/ops/area.ts index 1fb24ca77b..d00393b8de 100644 --- a/packages/geom/src/ops/area.ts +++ b/packages/geom/src/ops/area.ts @@ -2,7 +2,7 @@ import { DEFAULT, defmulti, Implementation1O, - MultiFn1O + MultiFn1O, } from "@thi.ng/defmulti"; import { IShape, Type } from "@thi.ng/geom-api"; import { polyArea2 } from "@thi.ng/geom-poly-utils"; @@ -84,7 +84,7 @@ area.addAll(>>{ [Type.TRIANGLE]: ($: Triangle, signed?) => { const area = 0.5 * signedArea2(...(<[Vec, Vec, Vec]>$.points)); return signed ? area : Math.abs(area); - } + }, }); area.isa(Type.QUAD, Type.POLYGON); diff --git a/packages/geom/src/ops/as-cubic.ts b/packages/geom/src/ops/as-cubic.ts index 16991697b8..7fb3a30982 100644 --- a/packages/geom/src/ops/as-cubic.ts +++ b/packages/geom/src/ops/as-cubic.ts @@ -4,7 +4,7 @@ import { closedCubicFromBreakPoints, closedCubicFromControlPoints, openCubicFromBreakPoints, - openCubicFromControlPoints + openCubicFromControlPoints, } from "@thi.ng/geom-splines"; import { TAU } from "@thi.ng/math"; import { mapcat } from "@thi.ng/transducers"; @@ -18,7 +18,11 @@ import { Polyline } from "../api/polyline"; import { Quadratic } from "../api/quadratic"; import { Rect } from "../api/rect"; import { arc } from "../ctors/arc"; -import { cubicFromArc, cubicFromLine, cubicFromQuadratic } from "../ctors/cubic"; +import { + cubicFromArc, + cubicFromLine, + cubicFromQuadratic, +} from "../ctors/cubic"; import { copyAttribs } from "../internal/copy-attribs"; import { dispatch } from "../internal/dispatch"; import { asPolygon } from "./as-polygon"; @@ -39,11 +43,11 @@ asCubic.addAll(>>{ [Type.GROUP]: ($: Group) => [...mapcat(asCubic, $.children)], [Type.LINE]: ({ attribs, points }: Line) => [ - cubicFromLine(points[0], points[1], { ...attribs }) + cubicFromLine(points[0], points[1], { ...attribs }), ], [Type.PATH]: ($: Path) => [ - ...mapcat((s) => (s.geo ? asCubic(s.geo) : null), $.segments) + ...mapcat((s) => (s.geo ? asCubic(s.geo) : null), $.segments), ], [Type.POLYGON]: ($: Polygon, opts: Partial = {}) => { @@ -63,11 +67,11 @@ asCubic.addAll(>>{ }, [Type.QUADRATIC]: ({ attribs, points }: Quadratic) => [ - cubicFromQuadratic(points[0], points[1], points[2], { ...attribs }) + cubicFromQuadratic(points[0], points[1], points[2], { ...attribs }), ], [Type.RECT]: ($: Rect, opts?: Partial) => - asCubic(asPolygon($), opts) + asCubic(asPolygon($), opts), }); asCubic.isa(Type.ELLIPSE, Type.CIRCLE); diff --git a/packages/geom/src/ops/as-polygon.ts b/packages/geom/src/ops/as-polygon.ts index 8fb8d66a35..b991fc6ada 100644 --- a/packages/geom/src/ops/as-polygon.ts +++ b/packages/geom/src/ops/as-polygon.ts @@ -12,7 +12,7 @@ export const asPolygon: MultiFn1O< > = defmulti(dispatch); asPolygon.addAll({ - [Type.POINTS]: ($, opts) => new Polygon(vertices($, opts), copyAttribs($)) + [Type.POINTS]: ($, opts) => new Polygon(vertices($, opts), copyAttribs($)), }); asPolygon.isa(Type.CIRCLE, Type.POINTS); diff --git a/packages/geom/src/ops/as-svg.ts b/packages/geom/src/ops/as-svg.ts index be18d5111e..f6acd64196 100644 --- a/packages/geom/src/ops/as-svg.ts +++ b/packages/geom/src/ops/as-svg.ts @@ -17,7 +17,7 @@ export const svgDoc = (attribs: Attribs, ...xs: IShape[]) => { viewBox: `${ff(pos[0])} ${ff(pos[1])} ${ff(size[0])} ${ff( size[1] )}`, - ...attribs + ...attribs, }; } } diff --git a/packages/geom/src/ops/bounds.ts b/packages/geom/src/ops/bounds.ts index e6bb5194d1..8fe30e0e33 100644 --- a/packages/geom/src/ops/bounds.ts +++ b/packages/geom/src/ops/bounds.ts @@ -1,20 +1,9 @@ import { defmulti, Implementation1 } from "@thi.ng/defmulti"; -import { - AABBLike, - IShape, - PathSegment, - PCLike, - Type -} from "@thi.ng/geom-api"; +import { AABBLike, IShape, PathSegment, PCLike, Type } from "@thi.ng/geom-api"; import { bounds as arcBounds } from "@thi.ng/geom-arc"; import { bounds as _bounds } from "@thi.ng/geom-poly-utils"; import { cubicBounds, quadraticBounds } from "@thi.ng/geom-splines"; -import { - comp, - filter, - iterator1, - map -} from "@thi.ng/transducers"; +import { comp, filter, iterator1, map } from "@thi.ng/transducers"; import { max, MAX2, @@ -27,7 +16,7 @@ import { set2, set3, sub2, - subN2 + subN2, } from "@thi.ng/vectors"; import { Arc } from "../api/arc"; import { Circle } from "../api/circle"; @@ -78,7 +67,7 @@ bounds.addAll(>>{ filter((s) => !!s) ), path.segments - ) + ), ], bounds ); @@ -94,7 +83,7 @@ bounds.addAll(>>{ [Type.QUADRATIC]: ({ points }: Quadratic) => rectFromMinMax(...quadraticBounds(points[0], points[1], points[2])), - [Type.RECT]: ($: IShape) => $.copy() + [Type.RECT]: ($: IShape) => $.copy(), }); bounds.isa(Type.AABB, Type.RECT); diff --git a/packages/geom/src/ops/center.ts b/packages/geom/src/ops/center.ts index ee6a789506..0cf8383527 100644 --- a/packages/geom/src/ops/center.ts +++ b/packages/geom/src/ops/center.ts @@ -2,17 +2,10 @@ import { DEFAULT, defmulti, Implementation1O, - MultiFn1O + MultiFn1O, } from "@thi.ng/defmulti"; import { IShape, Type } from "@thi.ng/geom-api"; -import { - ReadonlyVec, - set2, - set3, - submN, - ZERO2, - ZERO3 -} from "@thi.ng/vectors"; +import { ReadonlyVec, set2, set3, submN, ZERO2, ZERO3 } from "@thi.ng/vectors"; import { Arc } from "../api/arc"; import { Circle } from "../api/circle"; import { Ellipse } from "../api/ellipse"; @@ -56,5 +49,5 @@ center.addAll(< new Ellipse(set2([], origin), set2([], $.r), copyAttribs($)), [Type.SPHERE]: ($: Sphere, origin = ZERO3) => - new Sphere(set3([], origin), $.r, copyAttribs($)) + new Sphere(set3([], origin), $.r, copyAttribs($)), }); diff --git a/packages/geom/src/ops/centroid.ts b/packages/geom/src/ops/centroid.ts index 7cfaf46237..4b027b712b 100644 --- a/packages/geom/src/ops/centroid.ts +++ b/packages/geom/src/ops/centroid.ts @@ -1,20 +1,10 @@ import { defmulti, Implementation1O, MultiFn1O } from "@thi.ng/defmulti"; +import { AABBLike, IShape, PCLike, Type } from "@thi.ng/geom-api"; import { - AABBLike, - IShape, - PCLike, - Type -} from "@thi.ng/geom-api"; -import { centerOfWeight2, centroid as _centroid } from "@thi.ng/geom-poly-utils"; -import { - add, - divN, - maddN, - mixN, - mulN, - set, - Vec -} from "@thi.ng/vectors"; + centerOfWeight2, + centroid as _centroid, +} from "@thi.ng/geom-poly-utils"; +import { add, divN, maddN, mixN, mulN, set, Vec } from "@thi.ng/vectors"; import { Circle } from "../api/circle"; import { Group } from "../api/group"; import { Line } from "../api/line"; @@ -53,7 +43,7 @@ centroid.addAll(>>{ null, add(null, add(out || [], points[0], points[1]), points[2]), 3 - ) + ), }); centroid.isa(Type.ARC, Type.CIRCLE); diff --git a/packages/geom/src/ops/classify-point.ts b/packages/geom/src/ops/classify-point.ts index afb23eb6d7..7081a3b7dd 100644 --- a/packages/geom/src/ops/classify-point.ts +++ b/packages/geom/src/ops/classify-point.ts @@ -1,6 +1,9 @@ import { defmulti, Implementation2O, MultiFn2O } from "@thi.ng/defmulti"; import { IShape, Type } from "@thi.ng/geom-api"; -import { classifyPointInCircle, classifyPointInTriangle2 } from "@thi.ng/geom-isec"; +import { + classifyPointInCircle, + classifyPointInTriangle2, +} from "@thi.ng/geom-isec"; import { EPS, sign } from "@thi.ng/math"; import { dot, ReadonlyVec } from "@thi.ng/vectors"; import { Circle } from "../api/circle"; @@ -25,7 +28,7 @@ classifyPoint.addAll(< [Type.PLANE]: ($: Plane, p, eps) => sign(dot($.normal, p) - $.w, eps), [Type.TRIANGLE]: ({ points }: Triangle, p: ReadonlyVec, eps = EPS) => - classifyPointInTriangle2(p, points[0], points[1], points[2], eps) + classifyPointInTriangle2(p, points[0], points[1], points[2], eps), }); classifyPoint.isa(Type.SPHERE, Type.CIRCLE); diff --git a/packages/geom/src/ops/clip-convex.ts b/packages/geom/src/ops/clip-convex.ts index 55de041ab8..882adc77e6 100644 --- a/packages/geom/src/ops/clip-convex.ts +++ b/packages/geom/src/ops/clip-convex.ts @@ -29,7 +29,7 @@ clipConvex.addAll(>>{ centroid(boundary) ), copyAttribs($) - ) + ), }); clipConvex.isa(Type.CIRCLE, Type.RECT); diff --git a/packages/geom/src/ops/closest-point.ts b/packages/geom/src/ops/closest-point.ts index b5d485f222..9d3a8e2dae 100644 --- a/packages/geom/src/ops/closest-point.ts +++ b/packages/geom/src/ops/closest-point.ts @@ -8,15 +8,10 @@ import { closestPointPlane, closestPointPolyline, closestPointRect, - closestPointSegment + closestPointSegment, } from "@thi.ng/geom-closest-point"; import { closestPointCubic, closestPointQuadratic } from "@thi.ng/geom-splines"; -import { - add2, - add3, - ReadonlyVec, - Vec -} from "@thi.ng/vectors"; +import { add2, add3, ReadonlyVec, Vec } from "@thi.ng/vectors"; import { AABB } from "../api/aabb"; import { Arc } from "../api/arc"; import { Circle } from "../api/circle"; @@ -68,7 +63,7 @@ closestPoint.addAll(< closestPointQuadratic(p, points[0], points[1], points[2], out), [Type.RECT]: ($: Rect, p, out) => - closestPointRect(p, $.pos, add2([], $.pos, $.size), out) + closestPointRect(p, $.pos, add2([], $.pos, $.size), out), }); closestPoint.isa(Type.QUAD, Type.POLYGON); diff --git a/packages/geom/src/ops/convex-hull.ts b/packages/geom/src/ops/convex-hull.ts index 0c5f725d65..4031011190 100644 --- a/packages/geom/src/ops/convex-hull.ts +++ b/packages/geom/src/ops/convex-hull.ts @@ -15,7 +15,7 @@ convexHull.addAll(>>{ [Type.POINTS]: ($: PCLike) => new Polygon(grahamScan2($.points), copyAttribs($)), - [Type.TRIANGLE]: ($: IShape) => $.copy() + [Type.TRIANGLE]: ($: IShape) => $.copy(), }); convexHull.isa(Type.CIRCLE, Type.TRIANGLE); diff --git a/packages/geom/src/ops/edges.ts b/packages/geom/src/ops/edges.ts index ad70277385..9d518eaa13 100644 --- a/packages/geom/src/ops/edges.ts +++ b/packages/geom/src/ops/edges.ts @@ -39,7 +39,7 @@ edges.addAll(< [a, e], [b, f], // left [c, g], - [d, h] // right + [d, h], // right ]; }, @@ -47,7 +47,7 @@ edges.addAll(< [Type.POLYLINE]: ($: Polyline) => edgeIterator($.points), - [Type.RECT]: ($: Rect) => edgeIterator(vertices($), true) + [Type.RECT]: ($: Rect) => edgeIterator(vertices($), true), }); edges.isa(Type.LINE, Type.POLYLINE); diff --git a/packages/geom/src/ops/fit-into-bounds.ts b/packages/geom/src/ops/fit-into-bounds.ts index c39d2674ad..e1e0653be4 100644 --- a/packages/geom/src/ops/fit-into-bounds.ts +++ b/packages/geom/src/ops/fit-into-bounds.ts @@ -4,7 +4,7 @@ import { scale23, scale44, translation23, - translation44 + translation44, } from "@thi.ng/matrices"; import { neg, ReadonlyVec, Vec } from "@thi.ng/vectors"; import { AABB } from "../api/aabb"; diff --git a/packages/geom/src/ops/flip.ts b/packages/geom/src/ops/flip.ts index 48f1d32036..f18e22a3a0 100644 --- a/packages/geom/src/ops/flip.ts +++ b/packages/geom/src/ops/flip.ts @@ -38,7 +38,7 @@ flip.addAll(>>{ [Type.RAY]: ($: Ray) => { $.dir = neg(null, $.dir); return $; - } + }, }); flip.isa(Type.CUBIC, Type.POINTS); diff --git a/packages/geom/src/ops/intersects.ts b/packages/geom/src/ops/intersects.ts index 9f028eb8e5..97aa2e9332 100644 --- a/packages/geom/src/ops/intersects.ts +++ b/packages/geom/src/ops/intersects.ts @@ -4,7 +4,7 @@ import { IntersectionType, IShape, PCLike, - Type + Type, } from "@thi.ng/geom-api"; import { intersectCircleCircle, @@ -16,7 +16,7 @@ import { intersectRayPolyline, intersectRayRect, testRectCircle, - testRectRect + testRectRect, } from "@thi.ng/geom-isec"; import { AABB } from "../api/aabb"; import { Circle } from "../api/circle"; @@ -68,14 +68,14 @@ intersects.addAll(< [`${Type.RECT}-${Type.CIRCLE}`]: (rect: Rect, circle: Circle) => ({ type: testRectCircle(rect.pos, rect.size, circle.pos, circle.r) ? IntersectionType.INTERSECT - : IntersectionType.NONE + : IntersectionType.NONE, }), [`${Type.RECT}-${Type.RECT}`]: (a: Rect, b: Rect) => ({ type: testRectRect(a.pos, a.size, b.pos, b.size) ? IntersectionType.INTERSECT - : IntersectionType.NONE - }) + : IntersectionType.NONE, + }), }); intersects.isa(`${Type.RAY}-${Type.SPHERE}`, `${Type.RAY}-${Type.CIRCLE}`); diff --git a/packages/geom/src/ops/map-point.ts b/packages/geom/src/ops/map-point.ts index 5c436fc34a..78839bb878 100644 --- a/packages/geom/src/ops/map-point.ts +++ b/packages/geom/src/ops/map-point.ts @@ -1,22 +1,17 @@ import { defmulti, Implementation2O, MultiFn2O } from "@thi.ng/defmulti"; import { IShape, Type } from "@thi.ng/geom-api"; -import { - div, - ReadonlyVec, - sub, - Vec -} from "@thi.ng/vectors"; +import { div, ReadonlyVec, sub, Vec } from "@thi.ng/vectors"; import { Rect } from "../api/rect"; import { dispatch } from "../internal/dispatch"; import type { IObjectOf } from "@thi.ng/api"; -export const mapPoint: MultiFn2O = defmulti(< - any ->dispatch); +export const mapPoint: MultiFn2O = defmulti( + dispatch +); mapPoint.addAll(>>{ [Type.RECT]: ($: Rect, p: ReadonlyVec, out: Vec = []) => - div(null, sub(out, p, $.pos), $.size) + div(null, sub(out, p, $.pos), $.size), }); mapPoint.isa(Type.AABB, Type.RECT); diff --git a/packages/geom/src/ops/point-at.ts b/packages/geom/src/ops/point-at.ts index 2e4acd3a94..4f21bcd0ea 100644 --- a/packages/geom/src/ops/point-at.ts +++ b/packages/geom/src/ops/point-at.ts @@ -9,7 +9,7 @@ import { mixCubic, mixN2, mixQuadratic, - Vec + Vec, } from "@thi.ng/vectors"; import { Arc } from "../api/arc"; import { Circle } from "../api/circle"; @@ -47,7 +47,7 @@ pointAt.addAll(>>{ [Type.RAY]: ($: Ray, t) => maddN([], $.dir, t, $.pos), - [Type.RECT]: ($: Rect, t) => new Sampler(vertices($), true).pointAt(t) + [Type.RECT]: ($: Rect, t) => new Sampler(vertices($), true).pointAt(t), }); pointAt.isa(Type.QUAD, Type.POLYGON); diff --git a/packages/geom/src/ops/point-inside.ts b/packages/geom/src/ops/point-inside.ts index 932e71fdab..6f6bb09488 100644 --- a/packages/geom/src/ops/point-inside.ts +++ b/packages/geom/src/ops/point-inside.ts @@ -6,7 +6,7 @@ import { pointInPolygon2, pointInRect, pointInSegment, - pointInTriangle2 + pointInTriangle2, } from "@thi.ng/geom-isec"; import { isInArray, ReadonlyVec, Vec } from "@thi.ng/vectors"; import { AABB } from "../api/aabb"; @@ -35,7 +35,7 @@ pointInside.addAll(>>{ [Type.RECT]: ($: Rect, p: ReadonlyVec) => pointInRect(p, $.pos, $.size), [Type.TRIANGLE]: (tri: Triangle, p: ReadonlyVec) => - pointInTriangle2(p, ...(<[Vec, Vec, Vec]>tri.points)) + pointInTriangle2(p, ...(<[Vec, Vec, Vec]>tri.points)), }); pointInside.isa(Type.POINTS3, Type.POINTS); diff --git a/packages/geom/src/ops/resample.ts b/packages/geom/src/ops/resample.ts index dbbadec61d..577df72323 100644 --- a/packages/geom/src/ops/resample.ts +++ b/packages/geom/src/ops/resample.ts @@ -1,10 +1,5 @@ import { defmulti, Implementation2 } from "@thi.ng/defmulti"; -import { - IShape, - PCLike, - SamplingOpts, - Type -} from "@thi.ng/geom-api"; +import { IShape, PCLike, SamplingOpts, Type } from "@thi.ng/geom-api"; import { resample as _resample } from "@thi.ng/geom-resample"; import { Polygon } from "../api/polygon"; import { Polyline } from "../api/polyline"; @@ -28,7 +23,7 @@ resample.addAll(< new Polygon(_resample($.points, opts, true, true), copyAttribs($)), [Type.POLYLINE]: ($: PCLike, opts) => - new Polyline(_resample($.points, opts, false, true), copyAttribs($)) + new Polyline(_resample($.points, opts, false, true), copyAttribs($)), }); resample.isa(Type.ELLIPSE, Type.CIRCLE); diff --git a/packages/geom/src/ops/simplify.ts b/packages/geom/src/ops/simplify.ts index 8d83705afd..914d442afc 100644 --- a/packages/geom/src/ops/simplify.ts +++ b/packages/geom/src/ops/simplify.ts @@ -1,11 +1,6 @@ import { peek } from "@thi.ng/arrays"; import { defmulti, Implementation2 } from "@thi.ng/defmulti"; -import { - IShape, - PathSegment, - SegmentType, - Type -} from "@thi.ng/geom-api"; +import { IShape, PathSegment, SegmentType, Type } from "@thi.ng/geom-api"; import { simplify as _simplify } from "@thi.ng/geom-resample"; import { Path } from "../api/path"; import { Polygon } from "../api/polygon"; @@ -39,7 +34,7 @@ simplify.addAll(>>{ points.push(lastP); res.push({ geo: new Polyline(_simplify(points, eps)), - type: SegmentType.POLYLINE + type: SegmentType.POLYLINE, }); points = null; } else { @@ -50,7 +45,7 @@ simplify.addAll(>>{ points.push(lastP); res.push({ geo: new Polyline(points), - type: SegmentType.POLYLINE + type: SegmentType.POLYLINE, }); } return new Path(res, copyAttribs($)); @@ -60,5 +55,5 @@ simplify.addAll(>>{ new Polygon(_simplify($.points, eps, true), copyAttribs($)), [Type.POLYLINE]: ($: Polyline, eps = 0.1) => - new Polyline(_simplify($.points, eps), copyAttribs($)) + new Polyline(_simplify($.points, eps), copyAttribs($)), }); diff --git a/packages/geom/src/ops/split-at.ts b/packages/geom/src/ops/split-at.ts index ff8c1a4a94..44c442bff8 100644 --- a/packages/geom/src/ops/split-at.ts +++ b/packages/geom/src/ops/split-at.ts @@ -40,7 +40,7 @@ splitAt.addAll(>>{ $.xl, $.cw, copyAttribs($) - ) + ), ]; }, @@ -64,5 +64,5 @@ splitAt.addAll(>>{ [Type.QUADRATIC]: ({ attribs, points }: Quadratic, t: number) => quadraticSplitAt(points[0], points[1], points[2], t).map( (pts) => new Quadratic(pts, { ...attribs }) - ) + ), }); diff --git a/packages/geom/src/ops/split-near.ts b/packages/geom/src/ops/split-near.ts index 19d57f6a3a..f518241121 100644 --- a/packages/geom/src/ops/split-near.ts +++ b/packages/geom/src/ops/split-near.ts @@ -2,7 +2,10 @@ import { defmulti, Implementation2 } from "@thi.ng/defmulti"; import { IShape, Type } from "@thi.ng/geom-api"; import { closestT } from "@thi.ng/geom-closest-point"; import { Sampler } from "@thi.ng/geom-resample"; -import { quadraticSplitNearPoint, splitCubicNearPoint } from "@thi.ng/geom-splines"; +import { + quadraticSplitNearPoint, + splitCubicNearPoint, +} from "@thi.ng/geom-splines"; import { clamp01 } from "@thi.ng/math"; import { Cubic } from "../api/cubic"; import { Line } from "../api/line"; @@ -61,5 +64,5 @@ splitNearPoint.addAll(< [Type.QUADRATIC]: ({ points, attribs }: Quadratic, p) => quadraticSplitNearPoint(p, points[0], points[1], points[2]).map( (pts) => new Quadratic(pts, { ...attribs }) - ) + ), }); diff --git a/packages/geom/src/ops/subdiv-curve.ts b/packages/geom/src/ops/subdiv-curve.ts index 2b062c9a65..3f885748a8 100644 --- a/packages/geom/src/ops/subdiv-curve.ts +++ b/packages/geom/src/ops/subdiv-curve.ts @@ -21,5 +21,5 @@ subdivCurve.addAll(< new Polygon(subdivide($.points, kernel, iter), copyAttribs($)), [Type.POLYLINE]: ($: Polyline, kernel, iter = 1) => - new Polyline(subdivide($.points, kernel, iter), copyAttribs($)) + new Polyline(subdivide($.points, kernel, iter), copyAttribs($)), }); diff --git a/packages/geom/src/ops/tangent-at.ts b/packages/geom/src/ops/tangent-at.ts index 3dbe3644c7..7e3a9260f1 100644 --- a/packages/geom/src/ops/tangent-at.ts +++ b/packages/geom/src/ops/tangent-at.ts @@ -20,7 +20,7 @@ tangentAt.addAll(>>{ [Type.POLYLINE]: ($: PCLike, t) => new Sampler($.points).tangentAt(t), - [Type.RECT]: ($: Rect, t) => new Sampler(vertices($), true).tangentAt(t) + [Type.RECT]: ($: Rect, t) => new Sampler(vertices($), true).tangentAt(t), }); tangentAt.isa(Type.QUAD, Type.POLYGON); diff --git a/packages/geom/src/ops/transform.ts b/packages/geom/src/ops/transform.ts index 69e7a867dd..6abeaa6595 100644 --- a/packages/geom/src/ops/transform.ts +++ b/packages/geom/src/ops/transform.ts @@ -4,7 +4,7 @@ import { IShape, PathSegment, SegmentType, - Type + Type, } from "@thi.ng/geom-api"; import { mulV, ReadonlyMat } from "@thi.ng/matrices"; import { map } from "@thi.ng/transducers"; @@ -21,7 +21,10 @@ import { Rect } from "../api/rect"; import { Triangle } from "../api/triangle"; import { copyAttribs } from "../internal/copy-attribs"; import { dispatch } from "../internal/dispatch"; -import { transformedShape as tx, transformedShape3 as tx3 } from "../internal/transform-points"; +import { + transformedShape as tx, + transformedShape3 as tx3, +} from "../internal/transform-points"; import { asPath } from "./as-path"; import { asPolygon } from "./as-polygon"; import type { IObjectOf } from "@thi.ng/api"; @@ -60,14 +63,14 @@ transform.addAll(>>{ s.type === SegmentType.MOVE ? { type: s.type, - point: mulV([], mat, s.point!) + point: mulV([], mat, s.point!), } : { type: s.type, - geo: transform(s.geo!, mat) + geo: transform(s.geo!, mat), }, $.segments - ) + ), ], copyAttribs($) ), @@ -86,7 +89,7 @@ transform.addAll(>>{ [Type.RECT]: ($: Rect, mat) => transform(asPolygon($), mat), - [Type.TRIANGLE]: tx(Triangle) + [Type.TRIANGLE]: tx(Triangle), }); transform.isa(Type.CIRCLE, Type.ARC); diff --git a/packages/geom/src/ops/translate.ts b/packages/geom/src/ops/translate.ts index 8606568d7f..7baea5e840 100644 --- a/packages/geom/src/ops/translate.ts +++ b/packages/geom/src/ops/translate.ts @@ -1,12 +1,6 @@ import { defmulti, Implementation2 } from "@thi.ng/defmulti"; import { IHiccupShape, IShape, Type } from "@thi.ng/geom-api"; -import { - add2, - add3, - ReadonlyVec, - set2, - set3 -} from "@thi.ng/vectors"; +import { add2, add3, ReadonlyVec, set2, set3 } from "@thi.ng/vectors"; import { AABB } from "../api/aabb"; import { Arc } from "../api/arc"; import { Circle } from "../api/circle"; @@ -59,11 +53,11 @@ translate.addAll(>>{ s.geo ? { type: s.type, - geo: translate(s.geo, delta) + geo: translate(s.geo, delta), } : { type: s.type, - point: add2([], s.point!, delta) + point: add2([], s.point!, delta), } ), copyAttribs($) @@ -88,5 +82,5 @@ translate.addAll(>>{ [Type.SPHERE]: ($: Sphere, delta) => new Sphere(add3([], $.pos, delta), $.r, copyAttribs($)), - [Type.TRIANGLE]: tx(Triangle) + [Type.TRIANGLE]: tx(Triangle), }); diff --git a/packages/geom/src/ops/union.ts b/packages/geom/src/ops/union.ts index 004ec6813f..cf20255fc5 100644 --- a/packages/geom/src/ops/union.ts +++ b/packages/geom/src/ops/union.ts @@ -10,10 +10,10 @@ export const union = defmulti(dispatch); union.addAll(>>{ [Type.AABB]: (a: AABB, b: AABB) => [ - new AABB(...unionBounds(a.pos, a.size, b.pos, b.size)) + new AABB(...unionBounds(a.pos, a.size, b.pos, b.size)), ], [Type.RECT]: (a: Rect, b: Rect) => [ - new Rect(...unionBounds(a.pos, a.size, b.pos, b.size)) - ] + new Rect(...unionBounds(a.pos, a.size, b.pos, b.size)), + ], }); diff --git a/packages/geom/src/ops/unmap-point.ts b/packages/geom/src/ops/unmap-point.ts index 0185ac3ea1..9bd812df71 100644 --- a/packages/geom/src/ops/unmap-point.ts +++ b/packages/geom/src/ops/unmap-point.ts @@ -1,11 +1,6 @@ import { defmulti, Implementation2O, MultiFn2O } from "@thi.ng/defmulti"; import { IShape, Type } from "@thi.ng/geom-api"; -import { - madd, - mixBilinear, - ReadonlyVec, - Vec -} from "@thi.ng/vectors"; +import { madd, mixBilinear, ReadonlyVec, Vec } from "@thi.ng/vectors"; import { Quad } from "../api/quad"; import { Rect } from "../api/rect"; import { dispatch } from "../internal/dispatch"; @@ -27,9 +22,9 @@ import type { IObjectOf } from "@thi.ng/api"; * @param uv - point to map in UV space * @param out - result */ -export const unmapPoint: MultiFn2O = defmulti(< - any ->dispatch); +export const unmapPoint: MultiFn2O = defmulti( + dispatch +); unmapPoint.addAll(>>{ [Type.QUAD]: ({ points }: Quad, uv, out = []) => @@ -44,7 +39,7 @@ unmapPoint.addAll(>>{ ), [Type.RECT]: ($: Rect, uvw: ReadonlyVec, out = []) => - madd(out, $.size, uvw, $.pos) + madd(out, $.size, uvw, $.pos), }); unmapPoint.isa(Type.AABB, Type.RECT); diff --git a/packages/geom/src/ops/vertices.ts b/packages/geom/src/ops/vertices.ts index 2eb828105f..5dc6e57a99 100644 --- a/packages/geom/src/ops/vertices.ts +++ b/packages/geom/src/ops/vertices.ts @@ -1,23 +1,11 @@ import { isNumber } from "@thi.ng/checks"; import { defmulti, Implementation1O, MultiFn1O } from "@thi.ng/defmulti"; -import { - DEFAULT_SAMPLES, - IShape, - SamplingOpts, - Type -} from "@thi.ng/geom-api"; +import { DEFAULT_SAMPLES, IShape, SamplingOpts, Type } from "@thi.ng/geom-api"; import { sample as _arcVertices } from "@thi.ng/geom-arc"; import { resample } from "@thi.ng/geom-resample"; import { sampleCubic, sampleQuadratic } from "@thi.ng/geom-splines"; import { cossin, TAU } from "@thi.ng/math"; -import { - add2, - add3, - cartesian2, - madd2, - set2, - Vec -} from "@thi.ng/vectors"; +import { add2, add3, cartesian2, madd2, set2, Vec } from "@thi.ng/vectors"; import { AABB } from "../api/aabb"; import { Arc } from "../api/arc"; import { Circle } from "../api/circle"; @@ -61,7 +49,7 @@ vertices.addAll(< [px, qy, pz], // e [px, qy, qz], // f [qx, qy, qz], // g - [qx, qy, pz] // h + [qx, qy, pz], // h ]; }, @@ -128,7 +116,7 @@ vertices.addAll(< const q = add2([], p, $.size); const verts = [set2([], p), [q[0], p[1]], q, [p[0], q[1]]]; return opts != null ? vertices(new Polygon(verts), opts) : verts; - } + }, }); vertices.isa(Type.LINE, Type.POLYLINE); @@ -148,5 +136,5 @@ const circleOpts = ( : opts.dist ? Math.floor(TAU / (opts.dist / r)) : opts.num || DEFAULT_SAMPLES, - opts.last === true + opts.last === true, ]; diff --git a/packages/geom/src/ops/volume.ts b/packages/geom/src/ops/volume.ts index d24f574ccf..c59acc06b3 100644 --- a/packages/geom/src/ops/volume.ts +++ b/packages/geom/src/ops/volume.ts @@ -20,5 +20,5 @@ volume.add(DEFAULT, () => 0); volume.addAll(>>{ [Type.AABB]: ({ size }: AABB) => size[0] * size[1] * size[2], - [Type.SPHERE]: ($: Sphere) => (4 / 3) * PI * $.r ** 3 + [Type.SPHERE]: ($: Sphere) => (4 / 3) * PI * $.r ** 3, }); diff --git a/packages/gp/CHANGELOG.md b/packages/gp/CHANGELOG.md index da5d646682..129f7fda3b 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.1.20](https://github.com/thi-ng/umbrella/compare/@thi.ng/gp@0.1.19...@thi.ng/gp@0.1.20) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/gp + + + + + ## [0.1.19](https://github.com/thi-ng/umbrella/compare/@thi.ng/gp@0.1.18...@thi.ng/gp@0.1.19) (2020-06-01) **Note:** Version bump only for package @thi.ng/gp diff --git a/packages/gp/package.json b/packages/gp/package.json index ce52fe674e..e4118d1094 100644 --- a/packages/gp/package.json +++ b/packages/gp/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/gp", - "version": "0.1.19", + "version": "0.1.20", "description": "Genetic programming helpers & strategies (tree based & multi-expression programming)", "module": "./index.js", "main": "./lib/index.js", @@ -43,11 +43,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/math": "^1.7.10", - "@thi.ng/random": "^1.4.10", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/zipper": "^0.1.16", + "@thi.ng/api": "^6.11.1", + "@thi.ng/math": "^1.7.11", + "@thi.ng/random": "^1.4.11", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/zipper": "^0.1.17", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/gp/src/ast.ts b/packages/gp/src/ast.ts index 30eb3e05cf..b79cbbcc54 100644 --- a/packages/gp/src/ast.ts +++ b/packages/gp/src/ast.ts @@ -1,18 +1,8 @@ import { assert } from "@thi.ng/api"; import { SYSTEM } from "@thi.ng/random"; -import { - iterate, - iterator, - repeatedly, - takeWhile -} from "@thi.ng/transducers"; +import { iterate, iterator, repeatedly, takeWhile } from "@thi.ng/transducers"; import { Location, zipper } from "@thi.ng/zipper"; -import { - ASTNode, - ASTOpts, - GeneType, - OpGene -} from "./api"; +import { ASTNode, ASTOpts, GeneType, OpGene } from "./api"; import { opNode, probabilities, terminalNode } from "./utils"; export class AST { @@ -53,7 +43,7 @@ export class AST { ).root, this.selectRandomNode(parent2).replace( this.selectRandomNode(parent1).node - ).root + ).root, ]; } @@ -98,7 +88,7 @@ export class AST { ...iterator( takeWhile((x) => !!x), iterate((x) => x.next, this.asZipper(tree)) - ) + ), ]; } @@ -138,7 +128,7 @@ export class AST { return terminalNode(this.opts.terminal(rnd)); const op = this.opts.ops[geneID - 1]; const children = [ - ...repeatedly(() => this.randomASTNode(d + 1, maxDepth), op.arity) + ...repeatedly(() => this.randomASTNode(d + 1, maxDepth), op.arity), ]; return opNode(op.fn(rnd, children), children); } @@ -149,7 +139,7 @@ export class AST { branch: (x) => x.type === GeneType.OP, children: (x) => (>>x).args, factory: (n, args) => - opNode((>>n).op, args) + opNode((>>n).op, args), }, tree ); diff --git a/packages/gp/src/mep.ts b/packages/gp/src/mep.ts index e4bfc7a3b1..e33246b8c1 100644 --- a/packages/gp/src/mep.ts +++ b/packages/gp/src/mep.ts @@ -1,13 +1,7 @@ import { inRange } from "@thi.ng/math"; import { SYSTEM } from "@thi.ng/random"; import { repeatedly } from "@thi.ng/transducers"; -import { - ASTNode, - GeneType, - MEPChromosome, - MEPGene, - MEPOpts -} from "./api"; +import { ASTNode, GeneType, MEPChromosome, MEPGene, MEPOpts } from "./api"; import { opNode, probabilities, terminalNode } from "./utils"; export class MEP { @@ -88,7 +82,7 @@ export class MEP { Math.min(chromo1.length, chromo2.length); return [ chromo1.slice(0, cut).concat(chromo2.slice(cut)), - chromo2.slice(0, cut).concat(chromo1.slice(cut)) + chromo2.slice(0, cut).concat(chromo1.slice(cut)), ]; } diff --git a/packages/gp/src/utils.ts b/packages/gp/src/utils.ts index 31173cb1f2..7357937984 100644 --- a/packages/gp/src/utils.ts +++ b/packages/gp/src/utils.ts @@ -1,21 +1,16 @@ import { assert } from "@thi.ng/api"; import { add, choices, range } from "@thi.ng/transducers"; -import { - GeneType, - GPOpts, - OpGene, - TerminalGene -} from "./api"; +import { GeneType, GPOpts, OpGene, TerminalGene } from "./api"; export const terminalNode = (value: T): TerminalGene => ({ type: GeneType.TERMINAL, - value + value, }); export const opNode = (op: OP, args: A[]): OpGene => ({ type: GeneType.OP, op, - args + args, }); export const probabilities = (opts: GPOpts) => { @@ -28,6 +23,6 @@ export const probabilities = (opts: GPOpts) => { [1 - psum, ...probabilities], opts.rnd ), - probTerminal: 1 - psum + probTerminal: 1 - psum, }; }; diff --git a/packages/gp/test/ast.ts b/packages/gp/test/ast.ts index 25a8911ac3..4988d2d42e 100644 --- a/packages/gp/test/ast.ts +++ b/packages/gp/test/ast.ts @@ -12,12 +12,12 @@ describe("gp (ast)", () => { { fn: (rnd) => ["+", "-", "*", "/"][rnd.int() % 4], arity: 2, - prob: 0.9 - } + prob: 0.9, + }, ], maxDepth: 2, probMutate: 0.1, - rnd: new XsAdd(0x12345678) + rnd: new XsAdd(0x12345678), }); }); @@ -32,13 +32,13 @@ describe("gp (ast)", () => { args: [ { type: 0, - value: 5 + value: 5, }, { type: 0, - value: 1 - } - ] + value: 1, + }, + ], }, { type: 1, @@ -46,15 +46,15 @@ describe("gp (ast)", () => { args: [ { type: 0, - value: 8 + value: 8, }, { type: 0, - value: 3 - } - ] - } - ] + value: 3, + }, + ], + }, + ], }); }); }); diff --git a/packages/gp/test/mep.ts b/packages/gp/test/mep.ts index 28221b1eb2..dba0145afd 100644 --- a/packages/gp/test/mep.ts +++ b/packages/gp/test/mep.ts @@ -12,12 +12,12 @@ describe("gp (mep)", () => { { fn: (rnd) => ["+", "-", "*", "/"][rnd.int() % 4], arity: 2, - prob: 0.9 - } + prob: 0.9, + }, ], chromoSize: 10, probMutate: 0.8, - rnd: new XsAdd(0x12345678) + rnd: new XsAdd(0x12345678), }); }); @@ -32,7 +32,7 @@ describe("gp (mep)", () => { { type: 1, op: "*", args: [4, 0] }, { type: 1, op: "-", args: [2, 3] }, { type: 1, op: "/", args: [1, 4] }, - { type: 1, op: "-", args: [5, 0] } + { type: 1, op: "-", args: [5, 0] }, ]); }); @@ -45,8 +45,8 @@ describe("gp (mep)", () => { op: "*", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] + { type: 0, value: 5 }, + ], }, { type: 1, @@ -58,18 +58,18 @@ describe("gp (mep)", () => { op: "*", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] - } - ] + { type: 0, value: 5 }, + ], + }, + ], }, { type: 1, op: "-", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] + { type: 0, value: 5 }, + ], }, { type: 1, @@ -85,20 +85,20 @@ describe("gp (mep)", () => { op: "*", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] - } - ] + { type: 0, value: 5 }, + ], + }, + ], }, { type: 1, op: "-", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] - } - ] + { type: 0, value: 5 }, + ], + }, + ], }, { type: 1, @@ -109,11 +109,11 @@ describe("gp (mep)", () => { op: "-", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] + { type: 0, value: 5 }, + ], }, - { type: 0, value: 5 } - ] + { type: 0, value: 5 }, + ], }, { type: 1, @@ -124,8 +124,8 @@ describe("gp (mep)", () => { op: "*", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] + { type: 0, value: 5 }, + ], }, { type: 1, @@ -137,12 +137,12 @@ describe("gp (mep)", () => { op: "*", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] - } - ] - } - ] + { type: 0, value: 5 }, + ], + }, + ], + }, + ], }, { type: 1, @@ -154,10 +154,10 @@ describe("gp (mep)", () => { op: "-", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] - } - ] + { type: 0, value: 5 }, + ], + }, + ], }, { type: 1, @@ -177,24 +177,24 @@ describe("gp (mep)", () => { op: "*", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] - } - ] + { type: 0, value: 5 }, + ], + }, + ], }, { type: 1, op: "-", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] - } - ] + { type: 0, value: 5 }, + ], + }, + ], }, - { type: 0, value: 5 } - ] - } + { type: 0, value: 5 }, + ], + }, ]); }); @@ -210,10 +210,10 @@ describe("gp (mep)", () => { op: "*", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] - } - ] + { type: 0, value: 5 }, + ], + }, + ], }, { type: 1, @@ -229,20 +229,20 @@ describe("gp (mep)", () => { op: "*", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] - } - ] + { type: 0, value: 5 }, + ], + }, + ], }, { type: 1, op: "-", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] - } - ] + { type: 0, value: 5 }, + ], + }, + ], }, { type: 1, @@ -253,11 +253,11 @@ describe("gp (mep)", () => { op: "-", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] + { type: 0, value: 5 }, + ], }, - { type: 0, value: 5 } - ] + { type: 0, value: 5 }, + ], }, { type: 1, @@ -268,8 +268,8 @@ describe("gp (mep)", () => { op: "*", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] + { type: 0, value: 5 }, + ], }, { type: 1, @@ -281,12 +281,12 @@ describe("gp (mep)", () => { op: "*", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] - } - ] - } - ] + { type: 0, value: 5 }, + ], + }, + ], + }, + ], }, { type: 1, @@ -298,10 +298,10 @@ describe("gp (mep)", () => { op: "-", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] - } - ] + { type: 0, value: 5 }, + ], + }, + ], }, { type: 1, @@ -321,24 +321,24 @@ describe("gp (mep)", () => { op: "*", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] - } - ] + { type: 0, value: 5 }, + ], + }, + ], }, { type: 1, op: "-", args: [ { type: 0, value: 5 }, - { type: 0, value: 5 } - ] - } - ] + { type: 0, value: 5 }, + ], + }, + ], }, - { type: 0, value: 5 } - ] - } + { type: 0, value: 5 }, + ], + }, ]); }); @@ -353,7 +353,7 @@ describe("gp (mep)", () => { { type: 1, op: "/", args: [3, 1] }, { type: 1, op: "/", args: [4, 3] }, { type: 0, value: 5 }, - { type: 1, op: "/", args: [6, 4] } + { type: 1, op: "/", args: [6, 4] }, ]); }); @@ -370,7 +370,7 @@ describe("gp (mep)", () => { { type: 1, op: "-", args: [3, 2] }, { type: 1, op: "-", args: [2, 1] }, { type: 0, value: 1 }, - { type: 0, value: 6 } + { type: 0, value: 6 }, ]); assert.deepEqual(ast.crossoverSingle(a, b, 5), [ [ @@ -384,7 +384,7 @@ describe("gp (mep)", () => { { type: 1, op: "-", args: [3, 2] }, { type: 1, op: "-", args: [2, 1] }, { type: 0, value: 1 }, - { type: 0, value: 6 } + { type: 0, value: 6 }, ], [ { type: 0, value: 5 }, @@ -397,8 +397,8 @@ describe("gp (mep)", () => { { type: 1, op: "*", args: [4, 0] }, { type: 1, op: "-", args: [2, 3] }, { type: 1, op: "/", args: [1, 4] }, - { type: 1, op: "-", args: [5, 0] } - ] + { type: 1, op: "-", args: [5, 0] }, + ], ]); }); @@ -415,7 +415,7 @@ describe("gp (mep)", () => { { type: 1, op: "-", args: [3, 2] }, { type: 1, op: "-", args: [2, 1] }, { type: 0, value: 1 }, - { type: 1, op: "-", args: [5, 0] } + { type: 1, op: "-", args: [5, 0] }, ]); }); }); diff --git a/packages/grid-iterators/CHANGELOG.md b/packages/grid-iterators/CHANGELOG.md index 9e0d5f7322..cd079a1663 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.3.17](https://github.com/thi-ng/umbrella/compare/@thi.ng/grid-iterators@0.3.16...@thi.ng/grid-iterators@0.3.17) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/grid-iterators + + + + + ## [0.3.16](https://github.com/thi-ng/umbrella/compare/@thi.ng/grid-iterators@0.3.15...@thi.ng/grid-iterators@0.3.16) (2020-06-01) **Note:** Version bump only for package @thi.ng/grid-iterators diff --git a/packages/grid-iterators/package.json b/packages/grid-iterators/package.json index 46193f42db..8deaded6dd 100644 --- a/packages/grid-iterators/package.json +++ b/packages/grid-iterators/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/grid-iterators", - "version": "0.3.16", + "version": "0.3.17", "description": "2D grid iterators w/ multiple orderings", "module": "./index.js", "main": "./lib/index.js", @@ -44,11 +44,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/arrays": "^0.6.8", - "@thi.ng/binary": "^2.0.7", - "@thi.ng/morton": "^2.0.14", - "@thi.ng/random": "^1.4.10", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/arrays": "^0.6.9", + "@thi.ng/binary": "^2.0.8", + "@thi.ng/morton": "^2.0.15", + "@thi.ng/random": "^1.4.11", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/hdiff/CHANGELOG.md b/packages/hdiff/CHANGELOG.md new file mode 100644 index 0000000000..ebe6c94e55 --- /dev/null +++ b/packages/hdiff/CHANGELOG.md @@ -0,0 +1,11 @@ +# Change Log + +All notable changes to this project will be documented in this file. +See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +# 0.1.0 (2020-06-14) + + +### Features + +* **hdiff:** import as new pkg ([40e1075](https://github.com/thi-ng/umbrella/commit/40e10755ca520d5d850da98d07b40f9339310318)) diff --git a/packages/hdiff/LICENSE b/packages/hdiff/LICENSE new file mode 100644 index 0000000000..8dada3edaf --- /dev/null +++ b/packages/hdiff/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/packages/hdiff/README.md b/packages/hdiff/README.md new file mode 100644 index 0000000000..964492d434 --- /dev/null +++ b/packages/hdiff/README.md @@ -0,0 +1,121 @@ + + +# ![hdiff](https://media.thi.ng/umbrella/banners/thing-hdiff.svg?421a59f3) + +[![npm version](https://img.shields.io/npm/v/@thi.ng/hdiff.svg)](https://www.npmjs.com/package/@thi.ng/hdiff) +![npm downloads](https://img.shields.io/npm/dm/@thi.ng/hdiff.svg) +[![Twitter Follow](https://img.shields.io/twitter/follow/thing_umbrella.svg?style=flat-square&label=twitter)](https://twitter.com/thing_umbrella) + +This project is part of the +[@thi.ng/umbrella](https://github.com/thi-ng/umbrella/) monorepo. + +- [About](#about) + - [Status](#status) +- [Installation](#installation) + - [CLI installation & usage](#cli-installation--usage) +- [Dependencies](#dependencies) +- [API](#api) + - [computeDiff()](#computediff) + - [generateHtml()](#generatehtml) + - [compileTheme()](#compiletheme) +- [Authors](#authors) +- [License](#license) + +## About + +String diffing w/ hiccup output for further processing, e.g. with [@thi.ng/hdom](https://github.com/thi-ng/umbrella/tree/develop/packages/hdom), [@thi.ng/hiccup](https://github.com/thi-ng/umbrella/tree/develop/packages/hiccup). Includes CLI util to generate HTML, with theme support and code folding. + +![screenshot of example output](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/hdiff/hdiff.png) + +[Live example](https://demo.thi.ng/umbrella/hdiff/) + +### Status + +**ALPHA** - bleeding edge / work-in-progress + +## Installation + +```bash +yarn add @thi.ng/hdiff +``` + +```html +// ES module + + +// UMD + +``` + +Package sizes (gzipped, pre-treeshake): ESM: 1.58 KB / CJS: 1.65 KB / UMD: 1.68 KB + +### CLI installation & usage + +Current limitations: + +- output always written to stdout only +- only single theme available for now (easy to add new ones, PRs welcome!) + +```bash +npx @thi.ng/hdiff + +# any text files +npx hdiff file-a.txt file-b.txt > diff.html + +# git revisions for given file (in local repo) +# rev can be any commit-ish ID understood by git (sha1, tag, etc.) +npx hdiff rel-file-path rev1 rev2 > diff.html + +# example +npx hdiff packages/webgl/src/shader.ts develop~500 HEAD > diff.html +``` + +## Dependencies + +- [@thi.ng/diff](https://github.com/thi-ng/umbrella/tree/develop/packages/diff) +- [@thi.ng/hiccup](https://github.com/thi-ng/umbrella/tree/develop/packages/hiccup) +- [@thi.ng/hiccup-css](https://github.com/thi-ng/umbrella/tree/develop/packages/hiccup-css) +- [@thi.ng/strings](https://github.com/thi-ng/umbrella/tree/develop/packages/strings) + +## API + +[Generated API docs](https://docs.thi.ng/umbrella/hdiff/) + +### computeDiff() + +Signature: `computeDiff(a: string, b: string) => any[]` + +Takes two strings and performs line-based diff, then formats result as +tree of HTML elements in +[@thi.ng/hiccup](https://github.com/thi-ng/umbrella/tree/develop/packages/hiccup) +format. + +The generated format only uses the following data attributes: + +- `data-diff`: diff status for each `code` line (`"+"`, `"-"` or `" "`) +- `data-lnum`: formatted line number for each `code` line +- `data-fold`: indicates folded `pre`-block +- `data-fold-range`: line number range string + +### generateHtml() + +Signature: `generateHtml(header: any[], body: any[], theme: Theme) => string` + +Takes two hiccup trees for header and body and an optional theme. +Compiles theme into CSS, serializes hiccup trees and returns complete +HTML document as string. + +### compileTheme() + +Signature: `compileTheme(theme: Theme) => string` + +Compiles a theme config into a complete CSS stylesheet string (using +[@thi.ng/hiccup-css](https://github.com/thi-ng/umbrella/tree/develop/packages/hiccup-css)). + +## Authors + +Karsten Schmidt + +## License + +© 2018 - 2020 Karsten Schmidt // Apache Software License 2.0 diff --git a/packages/hdiff/api-extractor.json b/packages/hdiff/api-extractor.json new file mode 100644 index 0000000000..94972e6bed --- /dev/null +++ b/packages/hdiff/api-extractor.json @@ -0,0 +1,3 @@ +{ + "extends": "../../api-extractor.json" +} diff --git a/packages/hdiff/bin/cli.js b/packages/hdiff/bin/cli.js new file mode 100755 index 0000000000..ce6be409a8 --- /dev/null +++ b/packages/hdiff/bin/cli.js @@ -0,0 +1,27 @@ +#!/usr/bin/env node + +const fs = require("fs"); +const cproc = require("child_process"); +const hdiff = require("@thi.ng/hdiff"); + +let src1; +let src2; +let headerBody; + +const args = process.argv.slice(2); +if (args.length === 3) { + const [path, rev1, rev2] = args; + src1 = cproc.execSync(`git show ${rev1}:${path}`).toString(); + src2 = cproc.execSync(`git show ${rev2}:${path}`).toString(); + headerBody = ["header", ["h1", path], ["code", `${rev1} β‡Œ ${rev2}`]]; +} else if (args.length === 2) { + const [rev1, rev2] = args; + src1 = fs.readFileSync(rev1).toString(); + src2 = fs.readFileSync(rev2).toString(); + headerBody = ["header", ["h1", "File diff"], ["code", `${rev1} β‡Œ ${rev2}`]]; +} else { + console.log("Usage:\n\thdiff file1 file2\n\thdiff relpath gitrev1 gitrev2"); + process.exit(1); +} + +console.log(hdiff.generateHtml(hdiff.computeDiff(src1, src2), headerBody)); diff --git a/packages/hdiff/package.json b/packages/hdiff/package.json new file mode 100644 index 0000000000..175a2efc2b --- /dev/null +++ b/packages/hdiff/package.json @@ -0,0 +1,79 @@ +{ + "name": "@thi.ng/hdiff", + "version": "0.1.0", + "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", + "umd:main": "./lib/index.umd.js", + "typings": "./index.d.ts", + "bin": { + "hdiff": "bin/cli.js" + }, + "repository": { + "type": "git", + "url": "https://github.com/thi-ng/umbrella.git" + }, + "homepage": "https://github.com/thi-ng/umbrella/tree/master/packages/hdiff#readme", + "funding": { + "type": "patreon", + "url": "https://patreon.com/thing_umbrella" + }, + "author": "Karsten Schmidt ", + "license": "Apache-2.0", + "scripts": { + "build": "yarn clean && yarn build:es6 && node ../../scripts/bundle-module", + "build:release": "yarn clean && yarn build:es6 && node ../../scripts/bundle-module all", + "build:es6": "tsc --declaration", + "build:test": "rimraf build && tsc -p test/tsconfig.json", + "test": "mocha test", + "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:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose", + "doc": "node_modules/.bin/typedoc --mode modules --out doc src", + "pub": "yarn build:release && yarn publish --access public" + }, + "devDependencies": { + "@istanbuljs/nyc-config-typescript": "^1.0.1", + "@microsoft/api-extractor": "^7.8.0", + "@types/mocha": "^7.0.2", + "@types/node": "^14.0.1", + "mocha": "^7.1.2", + "nyc": "^15.0.1", + "ts-node": "^8.10.1", + "typedoc": "^0.17.6", + "typescript": "^3.9.2" + }, + "dependencies": { + "@thi.ng/diff": "^3.2.23", + "@thi.ng/hiccup": "^3.2.25", + "@thi.ng/hiccup-css": "^1.1.27", + "@thi.ng/strings": "^1.8.10" + }, + "files": [ + "*.js", + "*.d.ts", + "lib", + "bin" + ], + "keywords": [ + "cli", + "css", + "diff", + "es6", + "file", + "git", + "hiccup", + "html", + "theme", + "typescript" + ], + "publishConfig": { + "access": "public" + }, + "sideEffects": false, + "thi.ng": { + "status": "alpha", + "year": 2018 + } +} diff --git a/packages/hdiff/src/api.ts b/packages/hdiff/src/api.ts new file mode 100644 index 0000000000..55d77dbfc8 --- /dev/null +++ b/packages/hdiff/src/api.ts @@ -0,0 +1,60 @@ +import type { IObjectOf } from "@thi.ng/api"; + +export type BgFg = [string, string]; +export type BgFgBorder = [string, string, string]; + +export interface Theme { + selection: BgFg; + header: BgFg; + diff: { + add: { + main: BgFg; + word: BgFg; + side: BgFgBorder; + }; + del: { + main: BgFg; + word: BgFg; + side: BgFgBorder; + }; + nochange: { + main: BgFg; + side: BgFgBorder; + }; + fold: BgFg; + hover: { + main: BgFg; + side: BgFgBorder; + }; + }; +} + +export const THEMES: IObjectOf = { + default: { + selection: ["black", "white"], + header: ["ghostwhite", "black"], + diff: { + add: { + main: ["#dfe", "#000"], + side: ["lightgreen", "#393", "#9c9"], + word: ["lightgreen", "#000"], + }, + del: { + main: ["#fde", "#000"], + side: ["lightcoral", "#933", "#c99"], + word: ["orangered", "#000"], + }, + nochange: { + main: ["#fff", "#000"], + side: ["#eee", "#999", "#ccc"], + }, + fold: ["whitesmoke", "#666"], + hover: { + main: ["papayawhip", "#000"], + side: ["papayawhip", "#993", "#cc9"], + }, + }, + }, +}; + +export const DEFAULT_THEME = THEMES.default; diff --git a/packages/hdiff/src/diff.ts b/packages/hdiff/src/diff.ts new file mode 100644 index 0000000000..824e176ba7 --- /dev/null +++ b/packages/hdiff/src/diff.ts @@ -0,0 +1,78 @@ +import { diffArray, DiffMode } from "@thi.ng/diff"; +import { escape } from "@thi.ng/hiccup"; +import { padLeft } from "@thi.ng/strings"; + +const FMT_LN = padLeft(4, " "); + +export const computeDiff = (a: string, b: string) => { + const edits = diffArray( + a.split("\n"), + b.split("\n"), + DiffMode.ONLY_DISTANCE_LINEAR + ).linear!; + for (let i = 0; i < edits.length; i += 3) { + const lineID = edits[i]; + if (lineID) updateOffset(edits, i, lineID); + } + const result: any[] = ["div", {}]; + let block: any[] | undefined; + let numSame = 0; + for (let i = 0; i < edits.length; i += 3) { + if (!block) block = ["pre", {}]; + const lineID = edits[i]; + if (lineID == 0) { + numSame++; + if (numSame > 2) { + numSame = 0; + // scan forward to check if foldable + let j = i; + do { + j += 3; + } while (j < edits.length && edits[j] === 0); + if (j - i > 12) { + result.push(block, foldedBlock(edits, i, j - 6)); + block = undefined; + i = j - 9; + continue; + } + } + } else { + numSame = 0; + } + block!.push(codeLine(edits, i, true)); + } + if (block) result.push(block); + return result; +}; + +const updateOffset = (edits: any[], i: number, delta: number) => { + for (; i < edits.length; i += 3) { + if (edits[i] === 0) edits[i + 1] += delta; + } +}; + +const codeLine = (edits: any[], i: number, body = false): any[] => [ + "code", + { + "data-diff": ["-", " ", "+"][edits[i] + 1], + "data-lnum": FMT_LN(edits[i + 1] + 1), + }, + body ? escape(edits[i + 2]) : null, +]; + +const foldedBlock = (edits: any[], i: number, j: number): any[] => { + const block = [ + "pre", + { "data-fold": true }, + [ + "code", + { + "data-fold-range": `${edits[i + 4]} - ${edits[j + 1]}`, + }, + ], + ]; + for (; i < j; i += 3) { + block.push(codeLine(edits, i, true)); + } + return block; +}; diff --git a/packages/hdiff/src/html.ts b/packages/hdiff/src/html.ts new file mode 100644 index 0000000000..05b24731ef --- /dev/null +++ b/packages/hdiff/src/html.ts @@ -0,0 +1,33 @@ +import { serialize } from "@thi.ng/hiccup"; +import { DEFAULT_THEME, Theme } from "./api"; +import { compileTheme } from "./theme"; + +export const generateHtml = ( + diff: any[], + headerBody: any[], + theme: Theme = DEFAULT_THEME +) => + serialize([ + ["!DOCTYPE", "html"], + [ + "html", + [ + "head", + ["meta", { charset: "UTF-8" }], + [ + "meta", + { + name: "viewport", + content: "width=device-width, initial-scale=1.0", + }, + ], + [ + "meta", + { name: "generator", content: "https://thi.ng/hdiff" }, + ], + ["title", "hdiff"], + ["style", compileTheme(theme)], + ], + ["body", headerBody, ["main", diff]], + ], + ]); diff --git a/packages/hdiff/src/index.ts b/packages/hdiff/src/index.ts new file mode 100644 index 0000000000..f44296b761 --- /dev/null +++ b/packages/hdiff/src/index.ts @@ -0,0 +1,4 @@ +export * from "./api"; +export * from "./diff"; +export * from "./html"; +export * from "./theme"; diff --git a/packages/hdiff/src/theme.ts b/packages/hdiff/src/theme.ts new file mode 100644 index 0000000000..59bd6df32f --- /dev/null +++ b/packages/hdiff/src/theme.ts @@ -0,0 +1,135 @@ +import { css } from "@thi.ng/hiccup-css"; +import { BgFg, BgFgBorder, Theme } from "./api"; + +const block = { display: "block" }; +const none = { display: "none" }; +const lnum = "attr(data-lnum)"; + +export const compileTheme = (theme: Theme): string => + css( + [ + [ + "body", + "div", + "pre", + "code", + { + "box-sizing": "border-box", + margin: 0, + }, + ], + ["body", { "font-family": "sans-serif" }], + [ + "header", + bgfg(theme.header), + { + position: "fixed", + top: 0, + width: "100%", + padding: "0.5rem", + "box-shadow": "-8px 0 8px #666", + }, + [ + "h1", + { + margin: "0 0 0.25rem 0", + padding: "0 0 0.25rem 0", + "border-bottom": "1px dotted currentColor", + "font-weight": 100, + }, + ], + ["code", { "font-size": "66%" }], + ], + ["main", { "margin-top": "5rem" }], + [ + "pre", + { + "font-size": "0.8rem", + "line-height": "1.2rem", + }, + [ + "> code", + block, + [ + ":before", + bgfgBorder(theme.diff.nochange.side), + { + padding: "0.23rem 0.5rem 0.23rem 1rem", + "margin-right": "1rem", + "font-size": "0.64rem", + }, + ], + [ + ":hover", + bgfg(theme.diff.hover.main), + [":before", bgfgBorder(theme.diff.hover.side)], + ], + ], + [ + "[data-fold]", + [ + "> code[data-fold-range]:before", + block, + bgfg(theme.diff.fold), + { + content: `"β₯£ β‹―β‹― Folded lines: " attr(data-fold-range) " β‹―β‹― β₯₯"`, + width: "100%", + border: "1px dotted", + }, + ], + [`> code${diffAttr(" ")}`, none], + [ + ":hover", + [ + `> code${diffAttr(" ")}`, + block, + bgfg(theme.diff.hover.main), + ], + [`> code[data-fold-range]:before`, none], + ], + ], + ], + diffMode(theme.diff.add, "+", `" " ${lnum} " +"`), + diffMode(theme.diff.del, "-", `${lnum} " -"`), + diffMode(theme.diff.nochange, " ", `" " ${lnum} " "`), + [ + "code", + { + "font-size": "1em", + "font-family": "Consolas, monaco, monospace", + }, + ], + ["*::selection", bgfg(theme.selection)], + ] + // { format: PRETTY } + ); + +const bgfg = ([background, color]: BgFg) => ({ + background, + color, +}); + +const bgfgBorder = ([background, color, br]: BgFgBorder) => ({ + background, + color, + "border-right": `1px solid ${br}`, +}); + +const diffAttr = (id: string) => `[data-diff="${id}"]`; + +const diffMode = ( + { main, side, word }: { main: BgFg; word?: BgFg; side: BgFgBorder }, + mode: string, + content: string +) => [ + `code${diffAttr(mode)}`, + bgfg(main), + word ? [`> span${diffAttr(mode)}`, bgfg(word)] : null, + [ + ":before", + { + ...bgfgBorder(side), + content, + }, + ], +]; diff --git a/packages/hdiff/test/index.ts b/packages/hdiff/test/index.ts new file mode 100644 index 0000000000..ba28599982 --- /dev/null +++ b/packages/hdiff/test/index.ts @@ -0,0 +1,6 @@ +// import * as assert from "assert"; +// import { } from "../src"; + +describe("hdiff", () => { + it("tests pending"); +}); diff --git a/packages/hdiff/test/tsconfig.json b/packages/hdiff/test/tsconfig.json new file mode 100644 index 0000000000..f6e63560dd --- /dev/null +++ b/packages/hdiff/test/tsconfig.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../tsconfig.json", + "compilerOptions": { + "outDir": "../build", + "module": "commonjs" + }, + "include": [ + "./**/*.ts", + "../src/**/*.ts" + ] +} diff --git a/packages/hdiff/tpl.readme.md b/packages/hdiff/tpl.readme.md new file mode 100644 index 0000000000..a63fc62de1 --- /dev/null +++ b/packages/hdiff/tpl.readme.md @@ -0,0 +1,102 @@ +# ${pkg.banner} + +[![npm version](https://img.shields.io/npm/v/${pkg.name}.svg)](https://www.npmjs.com/package/${pkg.name}) +![npm downloads](https://img.shields.io/npm/dm/${pkg.name}.svg) +[![Twitter Follow](https://img.shields.io/twitter/follow/thing_umbrella.svg?style=flat-square&label=twitter)](https://twitter.com/thing_umbrella) + +This project is part of the +[@thi.ng/umbrella](https://github.com/thi-ng/umbrella/) monorepo. + + + +## About + +${pkg.description} + +![screenshot of example output](https://raw.githubusercontent.com/thi-ng/umbrella/develop/assets/hdiff/hdiff.png) + +[Live example](https://demo.thi.ng/umbrella/hdiff/) + +${status} + +${supportPackages} + +${relatedPackages} + +${blogPosts} + +## Installation + +${pkg.install} + +${pkg.size} + +### CLI installation & usage + +Current limitations: + +- output always written to stdout only +- only single theme available for now (easy to add new ones, PRs welcome!) + +```bash +npx @thi.ng/hdiff + +# any text files +npx hdiff file-a.txt file-b.txt > diff.html + +# git revisions for given file (in local repo) +# rev can be any commit-ish ID understood by git (sha1, tag, etc.) +npx hdiff rel-file-path rev1 rev2 > diff.html + +# example +npx hdiff packages/webgl/src/shader.ts develop~500 HEAD > diff.html +``` + +## Dependencies + +${pkg.deps} + +${examples} + +## API + +${docLink} + +### computeDiff() + +Signature: `computeDiff(a: string, b: string) => any[]` + +Takes two strings and performs line-based diff, then formats result as +tree of HTML elements in +[@thi.ng/hiccup](https://github.com/thi-ng/umbrella/tree/develop/packages/hiccup) +format. + +The generated format only uses the following data attributes: + +- `data-diff`: diff status for each `code` line (`"+"`, `"-"` or `" "`) +- `data-lnum`: formatted line number for each `code` line +- `data-fold`: indicates folded `pre`-block +- `data-fold-range`: line number range string + +### generateHtml() + +Signature: `generateHtml(header: any[], body: any[], theme: Theme) => string` + +Takes two hiccup trees for header and body and an optional theme. +Compiles theme into CSS, serializes hiccup trees and returns complete +HTML document as string. + +### compileTheme() + +Signature: `compileTheme(theme: Theme) => string` + +Compiles a theme config into a complete CSS stylesheet string (using +[@thi.ng/hiccup-css](https://github.com/thi-ng/umbrella/tree/develop/packages/hiccup-css)). + +## Authors + +${authors} + +## License + +© ${copyright} // ${license} diff --git a/packages/hdiff/tsconfig.json b/packages/hdiff/tsconfig.json new file mode 100644 index 0000000000..893b9979c5 --- /dev/null +++ b/packages/hdiff/tsconfig.json @@ -0,0 +1,11 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": ".", + "module": "es6", + "target": "es6" + }, + "include": [ + "./src/**/*.ts" + ] +} diff --git a/packages/hdom-canvas/CHANGELOG.md b/packages/hdom-canvas/CHANGELOG.md index a235dfb7d0..7cfdabeaa7 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.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom-canvas@3.0.0...@thi.ng/hdom-canvas@3.0.1) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/hdom-canvas + + + + + # [3.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom-canvas@2.4.26...@thi.ng/hdom-canvas@3.0.0) (2020-06-05) diff --git a/packages/hdom-canvas/package.json b/packages/hdom-canvas/package.json index 95adaacecd..bc7a781d62 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.0", + "version": "3.0.1", "description": "@thi.ng/hdom component wrapper for declarative canvas scenegraphs", "module": "./index.js", "main": "./lib/index.js", @@ -43,11 +43,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/diff": "^3.2.22", - "@thi.ng/hdom": "^8.0.27", - "@thi.ng/hiccup-canvas": "^1.0.0" + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/diff": "^3.2.23", + "@thi.ng/hdom": "^8.0.28", + "@thi.ng/hiccup-canvas": "^1.0.1" }, "files": [ "*.js", diff --git a/packages/hdom-components/CHANGELOG.md b/packages/hdom-components/CHANGELOG.md index c15ca0e111..00be6aacf1 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.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom-components@4.0.0...@thi.ng/hdom-components@4.0.1) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/hdom-components + + + + + # [4.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom-components@3.2.12...@thi.ng/hdom-components@4.0.0) (2020-06-07) diff --git a/packages/hdom-components/package.json b/packages/hdom-components/package.json index 683ef1c053..27a718f3a4 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.0", + "version": "4.0.1", "description": "Raw, skinnable UI & SVG components for @thi.ng/hdom", "module": "./index.js", "main": "./lib/index.js", @@ -43,12 +43,12 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/adapt-dpi": "^1.0.0", - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/math": "^1.7.10", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/transducers-stats": "^1.1.26", + "@thi.ng/adapt-dpi": "^1.0.1", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/math": "^1.7.11", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/transducers-stats": "^1.1.27", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/hdom-components/src/button-group.ts b/packages/hdom-components/src/button-group.ts index 867c07fef5..db49883ca5 100644 --- a/packages/hdom-components/src/button-group.ts +++ b/packages/hdom-components/src/button-group.ts @@ -82,7 +82,7 @@ export const buttonGroup = (opts: ButtonGroupOpts): ButtonGroup => ( ) => [ "div", mergeAttribs(opts.attribs, args.attribs), - ...groupBody(opts, args.disabled, buttons) + ...groupBody(opts, args.disabled, buttons), ]; const groupBody = ( @@ -98,7 +98,7 @@ const groupBody = ( case 2: return [ bt(opts.first, disabled, buttons[0]), - bt(opts.last || opts.first, disabled, buttons[1]) + bt(opts.last || opts.first, disabled, buttons[1]), ]; default: { const res = [bt(opts.first, disabled, buttons[0])]; diff --git a/packages/hdom-components/src/button.ts b/packages/hdom-components/src/button.ts index 77b4d406e3..e5dba03a3f 100644 --- a/packages/hdom-components/src/button.ts +++ b/packages/hdom-components/src/button.ts @@ -60,7 +60,7 @@ export const button = (opts?: Partial): Button => { tagDisabled: "span", preventDefault: true, attribs: {}, - ...opts + ...opts, }; !opts.attribs.role && (opts.attribs.role = "button"); return (_: any, args: ButtonArgs, ...body: any[]) => @@ -69,9 +69,9 @@ export const button = (opts?: Partial): Button => { opts!.tagDisabled, { ...mergeAttribs(opts!.attribsDisabled, args.attribs), - disabled: true + disabled: true, }, - ...body + ...body, ] : [ opts!.tag, @@ -79,8 +79,8 @@ export const button = (opts?: Partial): Button => { ...mergeAttribs(opts!.attribs, args.attribs), onclick: opts!.preventDefault ? (e: Event) => (e.preventDefault(), args.onclick(e)) - : args.onclick + : args.onclick, }, - ...body + ...body, ]; }; diff --git a/packages/hdom-components/src/dropdown.ts b/packages/hdom-components/src/dropdown.ts index 5bd62b100c..024f2f4eb5 100644 --- a/packages/hdom-components/src/dropdown.ts +++ b/packages/hdom-components/src/dropdown.ts @@ -15,7 +15,7 @@ export const option = ( ) => [ "option", { value, disabled: !!disabled, selected: value === sel }, - label + label, ]; export const optgroup = ( @@ -25,7 +25,7 @@ export const optgroup = ( ) => [ "optgroup", { ...attribs, label: attribs.label || "--" }, - ...options.map((o) => option(o, sel)) + ...options.map((o) => option(o, sel)), ]; export const dropdown = ( diff --git a/packages/hdom-components/src/fps-counter.ts b/packages/hdom-components/src/fps-counter.ts index 1fbeafcd1a..bb7f2179fa 100644 --- a/packages/hdom-components/src/fps-counter.ts +++ b/packages/hdom-components/src/fps-counter.ts @@ -37,7 +37,7 @@ export const fpsCounter = (_opts?: Partial) => { smooth: 5, labelPeriod: 250, sparkline: {}, - ..._opts + ..._opts, }; return { init() { @@ -62,14 +62,14 @@ export const fpsCounter = (_opts?: Partial) => { [ sparkline, { min: 0, max: 65, ...opts.sparkline }, - this.buffer + this.buffer, ], [ "span", { __skip: !updateLabel }, - smoothFps ? smoothFps.toFixed(2) + " fps" : "" - ] + smoothFps ? smoothFps.toFixed(2) + " fps" : "", + ], ]; - } + }, }; }; diff --git a/packages/hdom-components/src/link.ts b/packages/hdom-components/src/link.ts index 0c88b98fa9..1f1158b34e 100644 --- a/packages/hdom-components/src/link.ts +++ b/packages/hdom-components/src/link.ts @@ -3,7 +3,7 @@ import { isString } from "@thi.ng/checks"; export const link = (attribs: any, body: any) => [ "a", isString(attribs) ? { href: attribs } : attribs, - body + body, ]; export const appLink = ( @@ -19,7 +19,7 @@ export const appLink = ( e.preventDefault(); onclick(e); }, - ...attribs + ...attribs, }, - body + body, ]; diff --git a/packages/hdom-components/src/notification.ts b/packages/hdom-components/src/notification.ts index 0eae75ee2b..c5a92b5073 100644 --- a/packages/hdom-components/src/notification.ts +++ b/packages/hdom-components/src/notification.ts @@ -63,6 +63,6 @@ export const notification = (opts: Partial = {}) => { body, opts.close && args.onclose ? [appLink, opts.attribsClose, args.onclose, opts.close] - : undefined + : undefined, ]; }; diff --git a/packages/hdom-components/src/sparkline.ts b/packages/hdom-components/src/sparkline.ts index 8a6acaeb3a..921bab6ca7 100644 --- a/packages/hdom-components/src/sparkline.ts +++ b/packages/hdom-components/src/sparkline.ts @@ -53,7 +53,7 @@ export const sparkline = ( height: 16, col: "red", r: 1.5, - ..._opts + ..._opts, }; const n = vals.length; const s = opts.width / n; @@ -65,7 +65,7 @@ export const sparkline = ( width: opts.width + 2 * r, height: opts.height, stroke: opts.col, - fill: "none" + fill: "none", }, [ "polyline", @@ -75,13 +75,13 @@ export const sparkline = ( mapIndexed( (i, y: number) => [ (i * s) | 0, - fitClamped(y, opts.min, opts.max, h, r) | 0 + fitClamped(y, opts.min, opts.max, h, r) | 0, ], 0, vals ) - ) - } + ), + }, ], [ "circle", @@ -89,8 +89,8 @@ export const sparkline = ( cx: ((n - 1) * s) | 0, cy: fitClamped(vals[n - 1], opts.min, opts.max, h, r) | 0, r, - fill: opts.col - } - ] + fill: opts.col, + }, + ], ]; }; diff --git a/packages/hdom-components/src/title.ts b/packages/hdom-components/src/title.ts index d05f5a6631..9974e5a99b 100644 --- a/packages/hdom-components/src/title.ts +++ b/packages/hdom-components/src/title.ts @@ -39,12 +39,12 @@ export const title = (_opts?: Partial) => { attribs: {}, subElement: "small", subAttribs: {}, - ..._opts + ..._opts, }; return (_: any, title: any, subtitle: any) => [ opts.element, opts.attribs, title, - subtitle ? [opts.subElement, opts.subAttribs, subtitle] : undefined + subtitle ? [opts.subElement, opts.subAttribs, subtitle] : undefined, ]; }; diff --git a/packages/hdom-components/src/toggle.ts b/packages/hdom-components/src/toggle.ts index a317c810a3..273181f650 100644 --- a/packages/hdom-components/src/toggle.ts +++ b/packages/hdom-components/src/toggle.ts @@ -26,14 +26,14 @@ const DEFAULT_OPTS: ToggleOpts = { bgOn: { fill: "#000" }, bgOff: { fill: "#999" }, fgOn: { fill: "#fff" }, - fgOff: { fill: "#fff" } + fgOff: { fill: "#fff" }, }; export const slideToggleDot = (opts: Partial = {}) => { const _opts: ToggleDotOpts = { r: 5, ...DEFAULT_OPTS, - ...opts + ...opts, }; const { r, pad, margin, vertical } = _opts; const m2 = margin * 2; @@ -53,25 +53,25 @@ export const slideToggleDot = (opts: Partial = {}) => { rx: br, ry: br, ...(vertical ? { width: height, height: width } : { width, height }), - ..._opts.bgOn + ..._opts.bgOn, }; const bgOff = { ...bgOn, ..._opts.bgOff }; const shapeOn: any = { ...(vertical ? { cx, cy: cx } : { cx: width + margin - br, cy: cx }), ..._opts.fgOn, style, - r + r, }; const shapeOff: any = { ...shapeOn, ...(vertical ? { cy: width + margin - br } : { cx }), - ..._opts.fgOff + ..._opts.fgOff, }; return (_: any, attribs: any, state: boolean) => [ "svg", { ...svgSize, ...attribs }, ["rect", state ? bgOn : bgOff], - ["circle", state ? shapeOn : shapeOff] + ["circle", state ? shapeOn : shapeOff], ]; }; @@ -80,7 +80,7 @@ export const slideToggleRect = (opts: Partial = {}) => { w: 10, h: 10, ...DEFAULT_OPTS, - ...opts + ...opts, }; const { w, h, pad, margin, vertical } = _opts; const m2 = margin * 2; @@ -94,7 +94,7 @@ export const slideToggleRect = (opts: Partial = {}) => { width, height, x: margin, - y: margin + y: margin, }; const bgOff = { ...bgOn, ..._opts.bgOff }; const shapeOn: any = { @@ -104,17 +104,17 @@ export const slideToggleRect = (opts: Partial = {}) => { ..._opts.fgOn, style, width: w, - height: h + height: h, }; const shapeOff: any = { ...shapeOn, ...(vertical ? { y: height + margin - pad - h } : { x: pm }), - ..._opts.fgOff + ..._opts.fgOff, }; return (_: any, attribs: any, state: boolean) => [ "svg", { ...svgSize, ...attribs }, ["rect", state ? bgOn : bgOff], - ["rect", state ? shapeOn : shapeOff] + ["rect", state ? shapeOn : shapeOff], ]; }; diff --git a/packages/hdom-mock/CHANGELOG.md b/packages/hdom-mock/CHANGELOG.md index 8cc87f4c34..6ed201f48b 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.28](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom-mock@1.1.27...@thi.ng/hdom-mock@1.1.28) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/hdom-mock + + + + + ## [1.1.27](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom-mock@1.1.26...@thi.ng/hdom-mock@1.1.27) (2020-06-01) **Note:** Version bump only for package @thi.ng/hdom-mock diff --git a/packages/hdom-mock/package.json b/packages/hdom-mock/package.json index a803c3425c..bf38ce0ae2 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.27", + "version": "1.1.28", "description": "Mock base implementation for @thi.ng/hdom API", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/hdom": "^8.0.27", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/hdom": "^8.0.28", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/hdom-mock/src/index.ts b/packages/hdom-mock/src/index.ts index 45da754dee..b56f0e0677 100644 --- a/packages/hdom-mock/src/index.ts +++ b/packages/hdom-mock/src/index.ts @@ -5,7 +5,7 @@ import { HDOMImplementation, HDOMOpts, hydrateTree, - normalizeTree + normalizeTree, } from "@thi.ng/hdom"; import type { IObjectOf } from "@thi.ng/api"; diff --git a/packages/hdom-mock/test/index.ts b/packages/hdom-mock/test/index.ts index d0b402a4f7..e3b6c65a1d 100644 --- a/packages/hdom-mock/test/index.ts +++ b/packages/hdom-mock/test/index.ts @@ -26,19 +26,19 @@ describe("hdom-mock", () => { const a = impl.normalizeTree(opts, (ctx: any) => [ "div#foo.bar", - ["button", { ...ctx.button }, "hi"] + ["button", { ...ctx.button }, "hi"], ]); const b = impl.normalizeTree(opts, [ "div#foo2.bar.baz", [ (ctx: any, label: any) => ["button", { ...ctx.button }, label], - "hello" + "hello", ], - ["div", "extra"] + ["div", "extra"], ]); const c = impl.normalizeTree(opts, [ "div#foo3.baz.bux", - ["div", "extra"] + ["div", "extra"], ]); step([], a, [ @@ -47,8 +47,8 @@ describe("hdom-mock", () => { [ "div", { id: "foo", class: "bar", key: "0" }, - ["button", { class: "bt", key: "0-0" }, "hi"] - ] + ["button", { class: "bt", key: "0-0" }, "hi"], + ], ]); step(a, b, [ @@ -58,8 +58,8 @@ describe("hdom-mock", () => { "div", { id: "foo2", class: "bar baz", key: "0" }, ["button", { class: "bt", key: "0-0" }, "hello"], - ["div", { key: "0-1" }, ["span", { key: "0-1-0" }, "extra"]] - ] + ["div", { key: "0-1" }, ["span", { key: "0-1-0" }, "extra"]], + ], ]); step(b, c, [ @@ -68,8 +68,8 @@ describe("hdom-mock", () => { [ "div", { id: "foo3", class: "baz bux", key: "0" }, - ["div", { key: "0-0" }, ["span", { key: "0-0-0" }, "extra"]] - ] + ["div", { key: "0-0" }, ["span", { key: "0-0-0" }, "extra"]], + ], ]); }); }); diff --git a/packages/hdom/CHANGELOG.md b/packages/hdom/CHANGELOG.md index bcca8cb3c9..39619d1536 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.0.28](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom@8.0.27...@thi.ng/hdom@8.0.28) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/hdom + + + + + ## [8.0.27](https://github.com/thi-ng/umbrella/compare/@thi.ng/hdom@8.0.26...@thi.ng/hdom@8.0.27) (2020-06-01) **Note:** Version bump only for package @thi.ng/hdom diff --git a/packages/hdom/package.json b/packages/hdom/package.json index 72e0083e81..0991aa3e0e 100644 --- a/packages/hdom/package.json +++ b/packages/hdom/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hdom", - "version": "8.0.27", + "version": "8.0.28", "description": "Lightweight vanilla ES6 UI component trees with customizable branch-local behaviors", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.8.0", - "@thi.ng/atom": "^4.1.9", + "@thi.ng/atom": "^4.1.10", "@types/mocha": "^7.0.2", "@types/node": "^14.0.1", "mocha": "^7.1.2", @@ -44,12 +44,12 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/diff": "^3.2.22", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/diff": "^3.2.23", "@thi.ng/equiv": "^1.0.23", "@thi.ng/errors": "^1.2.14", - "@thi.ng/hiccup": "^3.2.24", + "@thi.ng/hiccup": "^3.2.25", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/hdom/src/default.ts b/packages/hdom/src/default.ts index 806ad4dc63..6973a037c1 100644 --- a/packages/hdom/src/default.ts +++ b/packages/hdom/src/default.ts @@ -9,7 +9,7 @@ import { removeChild, replaceChild, setAttrib, - setContent + setContent, } from "./dom"; import { normalizeTree } from "./normalize"; import type { HDOMImplementation } from "./api"; @@ -52,5 +52,5 @@ export const DEFAULT_IMPL: HDOMImplementation = { removeAttribs, - setAttrib + setAttrib, }; diff --git a/packages/heaps/CHANGELOG.md b/packages/heaps/CHANGELOG.md index d87e761964..438617fb4b 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.16](https://github.com/thi-ng/umbrella/compare/@thi.ng/heaps@1.2.15...@thi.ng/heaps@1.2.16) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/heaps + + + + + ## [1.2.15](https://github.com/thi-ng/umbrella/compare/@thi.ng/heaps@1.2.14...@thi.ng/heaps@1.2.15) (2020-06-01) **Note:** Version bump only for package @thi.ng/heaps diff --git a/packages/heaps/package.json b/packages/heaps/package.json index 3b8a6f23f9..af6ab3da9f 100644 --- a/packages/heaps/package.json +++ b/packages/heaps/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/heaps", - "version": "1.2.15", + "version": "1.2.16", "description": "Various heap implementations for arbitrary values and with customizable ordering", "module": "./index.js", "main": "./lib/index.js", @@ -44,8 +44,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/compare": "^1.3.7", + "@thi.ng/api": "^6.11.1", + "@thi.ng/compare": "^1.3.8", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/heaps/src/heap.ts b/packages/heaps/src/heap.ts index 5939c7a24e..5466891690 100644 --- a/packages/heaps/src/heap.ts +++ b/packages/heaps/src/heap.ts @@ -5,7 +5,7 @@ import type { ICopy, IEmpty, ILength, - IStack + IStack, } from "@thi.ng/api"; import type { HeapOpts } from "./api"; diff --git a/packages/heaps/src/pairing.ts b/packages/heaps/src/pairing.ts index a2a6b89c20..90d9b33028 100644 --- a/packages/heaps/src/pairing.ts +++ b/packages/heaps/src/pairing.ts @@ -6,7 +6,7 @@ import type { ICopy, IEmpty, ILength, - IStack + IStack, } from "@thi.ng/api"; import type { HeapOpts } from "./api"; @@ -63,7 +63,7 @@ export class PairingHeap this.root = this.merge(this.root, { v, p: undefined, - c: [] + c: [], }); this._size++; return this; diff --git a/packages/heaps/test/dheap.ts b/packages/heaps/test/dheap.ts index 8dabf81280..5aa1827949 100644 --- a/packages/heaps/test/dheap.ts +++ b/packages/heaps/test/dheap.ts @@ -3,7 +3,6 @@ import { DHeap } from "../src/index"; import { compare } from "@thi.ng/compare"; describe("DHeap", () => { - const rcmp: (a: number, b: number) => number = (a, b) => b - a; const src = [5, 2, 10, 20, 15, 18, 23, 22, -1]; @@ -90,9 +89,8 @@ describe("DHeap", () => { function drain(h: DHeap) { const res = []; let x; - while (x = h.pop()) { + while ((x = h.pop())) { res.push(x); } return res; } - diff --git a/packages/heaps/test/heap.ts b/packages/heaps/test/heap.ts index 8a90c2ee7c..f2cd3a2f37 100644 --- a/packages/heaps/test/heap.ts +++ b/packages/heaps/test/heap.ts @@ -3,7 +3,6 @@ import { Heap } from "../src/index"; import { compare } from "@thi.ng/compare"; describe("Heap", () => { - const rcmp: (a: number, b: number) => number = (a, b) => b - a; const src = [5, 2, 10, 20, 15, 18, 23, 22, -1]; @@ -90,9 +89,8 @@ describe("Heap", () => { function drain(h: Heap) { const res = []; let x; - while (x = h.pop()) { + while ((x = h.pop())) { res.push(x); } return res; } - diff --git a/packages/hiccup-canvas/CHANGELOG.md b/packages/hiccup-canvas/CHANGELOG.md index ad5d42b5aa..59a2a7b0d8 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.0.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-canvas@1.0.0...@thi.ng/hiccup-canvas@1.0.1) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/hiccup-canvas + + + + + # 1.0.0 (2020-06-05) diff --git a/packages/hiccup-canvas/package.json b/packages/hiccup-canvas/package.json index bd3f29c7a6..f5e8ef82c0 100644 --- a/packages/hiccup-canvas/package.json +++ b/packages/hiccup-canvas/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hiccup-canvas", - "version": "1.0.0", + "version": "1.0.1", "description": "Hiccup shape tree renderer for vanilla Canvas 2D contexts", "module": "./index.js", "main": "./lib/index.js", @@ -42,11 +42,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/color": "^1.2.2", - "@thi.ng/math": "^1.7.10", - "@thi.ng/vectors": "^4.4.3" + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/color": "^1.2.3", + "@thi.ng/math": "^1.7.11", + "@thi.ng/vectors": "^4.4.4" }, "files": [ "*.js", diff --git a/packages/hiccup-canvas/test/tsconfig.json b/packages/hiccup-canvas/test/tsconfig.json index f6e63560dd..72b29d55ac 100644 --- a/packages/hiccup-canvas/test/tsconfig.json +++ b/packages/hiccup-canvas/test/tsconfig.json @@ -4,8 +4,5 @@ "outDir": "../build", "module": "commonjs" }, - "include": [ - "./**/*.ts", - "../src/**/*.ts" - ] + "include": ["./**/*.ts", "../src/**/*.ts"] } diff --git a/packages/hiccup-carbon-icons/CHANGELOG.md b/packages/hiccup-carbon-icons/CHANGELOG.md index 0ce98298cd..7704833f5e 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. +## [1.0.40](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-carbon-icons@1.0.39...@thi.ng/hiccup-carbon-icons@1.0.40) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/hiccup-carbon-icons + + + + + ## [1.0.39](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-carbon-icons@1.0.38...@thi.ng/hiccup-carbon-icons@1.0.39) (2020-06-01) **Note:** Version bump only for package @thi.ng/hiccup-carbon-icons diff --git a/packages/hiccup-carbon-icons/package.json b/packages/hiccup-carbon-icons/package.json index 3063d9fff8..af00fd2a8f 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": "1.0.39", + "version": "1.0.40", "description": "Full set of IBM's Carbon icons in hiccup format", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.8.0", - "@thi.ng/hiccup": "^3.2.24", + "@thi.ng/hiccup": "^3.2.25", "@types/mocha": "^7.0.2", "@types/node": "^14.0.1", "mocha": "^7.1.2", diff --git a/packages/hiccup-carbon-icons/src/add-outline.ts b/packages/hiccup-carbon-icons/src/add-outline.ts index 26620049ea..ebeca5fc48 100644 --- a/packages/hiccup-carbon-icons/src/add-outline.ts +++ b/packages/hiccup-carbon-icons/src/add-outline.ts @@ -1,4 +1,12 @@ -export const ADD_OUTLINE = - ["svg", { viewBox: "0 0 16 16" }, - ["path", { d: "M8 14.5c3.6 0 6.5-2.9 6.5-6.5S11.6 1.5 8 1.5 1.5 4.4 1.5 8s2.9 6.5 6.5 6.5zM8 16c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8z" }], - ["path", { d: "M7 7V4h2v3h3v2H9v3H7V9H4V7h3z" }]]; +export const ADD_OUTLINE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + d: + "M8 14.5c3.6 0 6.5-2.9 6.5-6.5S11.6 1.5 8 1.5 1.5 4.4 1.5 8s2.9 6.5 6.5 6.5zM8 16c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8z", + }, + ], + ["path", { d: "M7 7V4h2v3h3v2H9v3H7V9H4V7h3z" }], +]; diff --git a/packages/hiccup-carbon-icons/src/add-solid.ts b/packages/hiccup-carbon-icons/src/add-solid.ts index 34329c4473..52c5c560c6 100644 --- a/packages/hiccup-carbon-icons/src/add-solid.ts +++ b/packages/hiccup-carbon-icons/src/add-solid.ts @@ -1,7 +1,12 @@ -export const ADD_SOLID = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "evenodd", - d: "M7 7H4v2h3v3h2V9h3V7H9V4H7v3zm1 9A8 8 0 1 1 8 0a8 8 0 0 1 0 16z", - }]]; +export const ADD_SOLID = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M7 7H4v2h3v3h2V9h3V7H9V4H7v3zm1 9A8 8 0 1 1 8 0a8 8 0 0 1 0 16z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/add.ts b/packages/hiccup-carbon-icons/src/add.ts index 0116040994..92c4fc55e4 100644 --- a/packages/hiccup-carbon-icons/src/add.ts +++ b/packages/hiccup-carbon-icons/src/add.ts @@ -1,7 +1,11 @@ -export const ADD = - ["svg", { viewBox: "0 0 10 10" }, - ["path", - { - "fill-rule": "evenodd", - d: "M6 4h4v2H6v4H4V6H0V4h4V0h2v4z", - }]]; +export const ADD = [ + "svg", + { viewBox: "0 0 10 10" }, + [ + "path", + { + "fill-rule": "evenodd", + d: "M6 4h4v2H6v4H4V6H0V4h4V0h2v4z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/api.ts b/packages/hiccup-carbon-icons/src/api.ts index 021eb6f96d..ce7aad129a 100644 --- a/packages/hiccup-carbon-icons/src/api.ts +++ b/packages/hiccup-carbon-icons/src/api.ts @@ -1,8 +1,21 @@ -export const API = - ["svg", +export const API = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 25 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 25 24", + d: + "M23.4 24H.6c-.3 0-.6-.3-.6-.6s.3-.6.6-.6h22.8c.3 0 .6.3.6.6s-.3.6-.6.6zM9.5 9.7c0 .3.1.4.3.4H10.1v.8c-.2 0-.6.1-.8.1-.5 0-.8-.2-.9-.6-.4.4-1.1.6-1.7.6-.9 0-1.7-.5-1.7-1.5C5 8.3 6 8.1 6.9 8c.8-.2 1.5 0 1.5-.7 0-.6-.6-.7-1-.7-.6 0-1.1.3-1.1.8H5.2c.1-1.3 1.2-1.7 2.3-1.7 1 0 2 .4 2 1.5v2.5zM8.4 8.3c-.4.3-.9.3-1.4.3-.5.1-.9.3-.9.9 0 .5.6.6 1 .6.5 0 1.2-.3 1.2-1v-.8h.1zM11 6h1.1v.7c.3-.6.9-.8 1.6-.8 1.6 0 2.4 1.2 2.4 2.7 0 1.4-.7 2.6-2.2 2.6-.6 0-1.3-.2-1.7-.8v2.5H11V6zm2.5.8c-.9 0-1.4.7-1.4 1.8 0 1 .5 1.8 1.4 1.8 1 0 1.4-.9 1.4-1.8 0-1-.5-1.8-1.4-1.8zM17 4h1v1h-1V4zm0 2h1v5h-1V6z", }, - ["path", { d: "M23.4 24H.6c-.3 0-.6-.3-.6-.6s.3-.6.6-.6h22.8c.3 0 .6.3.6.6s-.3.6-.6.6zM9.5 9.7c0 .3.1.4.3.4H10.1v.8c-.2 0-.6.1-.8.1-.5 0-.8-.2-.9-.6-.4.4-1.1.6-1.7.6-.9 0-1.7-.5-1.7-1.5C5 8.3 6 8.1 6.9 8c.8-.2 1.5 0 1.5-.7 0-.6-.6-.7-1-.7-.6 0-1.1.3-1.1.8H5.2c.1-1.3 1.2-1.7 2.3-1.7 1 0 2 .4 2 1.5v2.5zM8.4 8.3c-.4.3-.9.3-1.4.3-.5.1-.9.3-.9.9 0 .5.6.6 1 .6.5 0 1.2-.3 1.2-1v-.8h.1zM11 6h1.1v.7c.3-.6.9-.8 1.6-.8 1.6 0 2.4 1.2 2.4 2.7 0 1.4-.7 2.6-2.2 2.6-.6 0-1.3-.2-1.7-.8v2.5H11V6zm2.5.8c-.9 0-1.4.7-1.4 1.8 0 1 .5 1.8 1.4 1.8 1 0 1.4-.9 1.4-1.8 0-1-.5-1.8-1.4-1.8zM17 4h1v1h-1V4zm0 2h1v5h-1V6z" }], - ["path", { d: "M22 1.2c.4 0 .8.3.8.8v14c0 .4-.3.8-.8.8H2c-.4 0-.8-.3-.8-.8V2c0-.4.3-.8.8-.8h20zM22 0H2C.9 0 0 .9 0 2v14c0 1.1.9 2 2 2h20c1.1 0 2-.9 2-2V2c0-1.1-.9-2-2-2z" }]]; + ], + [ + "path", + { + d: + "M22 1.2c.4 0 .8.3.8.8v14c0 .4-.3.8-.8.8H2c-.4 0-.8-.3-.8-.8V2c0-.4.3-.8.8-.8h20zM22 0H2C.9 0 0 .9 0 2v14c0 1.1.9 2 2 2h20c1.1 0 2-.9 2-2V2c0-1.1-.9-2-2-2z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/app-services.ts b/packages/hiccup-carbon-icons/src/app-services.ts index a008048215..2d4a58d1aa 100644 --- a/packages/hiccup-carbon-icons/src/app-services.ts +++ b/packages/hiccup-carbon-icons/src/app-services.ts @@ -1,9 +1,28 @@ -export const APP_SERVICES = - ["svg", +export const APP_SERVICES = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 24", + d: + "M12 1.2l10.5 5.7L12 12.8 1.5 7.1 12 1.2zM12 0c-.2 0-.4.1-.6.2L.4 6.3c-.6.4-.6 1.2 0 1.5l11 6c.2.1.4.1.5.1.2 0 .4-.1.6-.2l11-6.1c.6-.4.6-1.2 0-1.6l-11-6H12z", }, - ["path", { d: "M12 1.2l10.5 5.7L12 12.8 1.5 7.1 12 1.2zM12 0c-.2 0-.4.1-.6.2L.4 6.3c-.6.4-.6 1.2 0 1.5l11 6c.2.1.4.1.5.1.2 0 .4-.1.6-.2l11-6.1c.6-.4.6-1.2 0-1.6l-11-6H12z" }], - ["path", { d: "M12.1 18.9c-.3 0-.5-.1-.8-.2L.7 12.8c-.5-.2-.7-.7-.7-1.1 0-.5.2-.9.7-1.2l.6-.4c.2-.2.5-.1.7.1.2.2.1.5-.1.7l-.6.4c-.3.1-.3.3-.3.4 0 .1 0 .2.2.3l10.6 5.9c.2.1.4.1.6 0l10.5-6c.2-.1.2-.3.2-.3 0-.1 0-.2-.2-.3l-.6-.3c-.2-.1-.4-.4-.2-.7.1-.2.4-.3.7-.2l.5.3c.5.3.7.7.7 1.2s-.2.9-.7 1.2l-10.5 6c-.2 0-.5.1-.7.1z" }], - ["path", { d: "M12.1 24c-.3 0-.5-.1-.8-.2L.7 17.9c-.5-.2-.7-.7-.7-1.2s.2-.9.7-1.2l.6-.4c.2-.2.5-.1.7.1.1.3 0 .6-.2.8l-.6.4c-.2.1-.2.3-.2.3 0 .1 0 .2.2.3l10.6 5.9c.2.1.4.1.6 0l10.5-6c.2-.1.2-.3.2-.3 0-.1 0-.2-.2-.3l-.6-.3c-.2-.1-.4-.4-.2-.7.1-.2.4-.3.7-.2l.5.3c.5.3.7.7.7 1.2s-.2.9-.7 1.2l-10.5 6c-.2.1-.5.2-.7.2z" }]]; + ], + [ + "path", + { + d: + "M12.1 18.9c-.3 0-.5-.1-.8-.2L.7 12.8c-.5-.2-.7-.7-.7-1.1 0-.5.2-.9.7-1.2l.6-.4c.2-.2.5-.1.7.1.2.2.1.5-.1.7l-.6.4c-.3.1-.3.3-.3.4 0 .1 0 .2.2.3l10.6 5.9c.2.1.4.1.6 0l10.5-6c.2-.1.2-.3.2-.3 0-.1 0-.2-.2-.3l-.6-.3c-.2-.1-.4-.4-.2-.7.1-.2.4-.3.7-.2l.5.3c.5.3.7.7.7 1.2s-.2.9-.7 1.2l-10.5 6c-.2 0-.5.1-.7.1z", + }, + ], + [ + "path", + { + d: + "M12.1 24c-.3 0-.5-.1-.8-.2L.7 17.9c-.5-.2-.7-.7-.7-1.2s.2-.9.7-1.2l.6-.4c.2-.2.5-.1.7.1.1.3 0 .6-.2.8l-.6.4c-.2.1-.2.3-.2.3 0 .1 0 .2.2.3l10.6 5.9c.2.1.4.1.6 0l10.5-6c.2-.1.2-.3.2-.3 0-.1 0-.2-.2-.3l-.6-.3c-.2-.1-.4-.4-.2-.7.1-.2.4-.3.7-.2l.5.3c.5.3.7.7.7 1.2s-.2.9-.7 1.2l-10.5 6c-.2.1-.5.2-.7.2z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/applications.ts b/packages/hiccup-carbon-icons/src/applications.ts index 019a44ae57..cbf6c2c1d5 100644 --- a/packages/hiccup-carbon-icons/src/applications.ts +++ b/packages/hiccup-carbon-icons/src/applications.ts @@ -1,7 +1,14 @@ -export const APPLICATIONS = - ["svg", +export const APPLICATIONS = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 23 23", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 23 23", + d: + "M5.8 1.2v4.7H1.2V1.2h4.6zM7 0H0v7h7V0zM13.8 1.2v4.7H9.2V1.2h4.6zM15 0H8v7h7V0zM21.8 1.2v4.7h-4.7V1.2h4.7zM23 0h-7v7h7V0zM5.8 9.2v4.7H1.2V9.2h4.6zM7 8H0v7h7V8zM13.8 9.2v4.7H9.2V9.2h4.6zM15 8H8v7h7V8zM21.8 9.2v4.7h-4.7V9.2h4.7zM23 8h-7v7h7V8zM5.8 17.2v4.7H1.2v-4.7h4.6zM7 16H0v7h7v-7zM13.8 17.2v4.7H9.2v-4.7h4.6zM15 16H8v7h7v-7zM21.8 17.2v4.7h-4.7v-4.7h4.7zM23 16h-7v7h7v-7z", }, - ["path", { d: "M5.8 1.2v4.7H1.2V1.2h4.6zM7 0H0v7h7V0zM13.8 1.2v4.7H9.2V1.2h4.6zM15 0H8v7h7V0zM21.8 1.2v4.7h-4.7V1.2h4.7zM23 0h-7v7h7V0zM5.8 9.2v4.7H1.2V9.2h4.6zM7 8H0v7h7V8zM13.8 9.2v4.7H9.2V9.2h4.6zM15 8H8v7h7V8zM21.8 9.2v4.7h-4.7V9.2h4.7zM23 8h-7v7h7V8zM5.8 17.2v4.7H1.2v-4.7h4.6zM7 16H0v7h7v-7zM13.8 17.2v4.7H9.2v-4.7h4.6zM15 16H8v7h7v-7zM21.8 17.2v4.7h-4.7v-4.7h4.7zM23 16h-7v7h7v-7z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/apps.ts b/packages/hiccup-carbon-icons/src/apps.ts index 01b61ec91c..4b37f2de9f 100644 --- a/packages/hiccup-carbon-icons/src/apps.ts +++ b/packages/hiccup-carbon-icons/src/apps.ts @@ -1,7 +1,14 @@ -export const APPS = - ["svg", +export const APPS = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 23 23", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 23 23", + d: + "M5.8 1.2v4.7H1.2V1.2h4.6zM7 0H0v7h7V0zM13.8 1.2v4.7H9.2V1.2h4.6zM15 0H8v7h7V0zM21.8 1.2v4.7h-4.7V1.2h4.7zM23 0h-7v7h7V0zM5.8 9.2v4.7H1.2V9.2h4.6zM7 8H0v7h7V8zM13.8 9.2v4.7H9.2V9.2h4.6zM15 8H8v7h7V8zM21.8 9.2v4.7h-4.7V9.2h4.7zM23 8h-7v7h7V8zM5.8 17.2v4.7H1.2v-4.7h4.6zM7 16H0v7h7v-7zM13.8 17.2v4.7H9.2v-4.7h4.6zM15 16H8v7h7v-7zM21.8 17.2v4.7h-4.7v-4.7h4.7zM23 16h-7v7h7v-7z", }, - ["path", { d: "M5.8 1.2v4.7H1.2V1.2h4.6zM7 0H0v7h7V0zM13.8 1.2v4.7H9.2V1.2h4.6zM15 0H8v7h7V0zM21.8 1.2v4.7h-4.7V1.2h4.7zM23 0h-7v7h7V0zM5.8 9.2v4.7H1.2V9.2h4.6zM7 8H0v7h7V8zM13.8 9.2v4.7H9.2V9.2h4.6zM15 8H8v7h7V8zM21.8 9.2v4.7h-4.7V9.2h4.7zM23 8h-7v7h7V8zM5.8 17.2v4.7H1.2v-4.7h4.6zM7 16H0v7h7v-7zM13.8 17.2v4.7H9.2v-4.7h4.6zM15 16H8v7h7v-7zM21.8 17.2v4.7h-4.7v-4.7h4.7zM23 16h-7v7h7v-7z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/arrow-down.ts b/packages/hiccup-carbon-icons/src/arrow-down.ts index 060cc20e63..111f423ccd 100644 --- a/packages/hiccup-carbon-icons/src/arrow-down.ts +++ b/packages/hiccup-carbon-icons/src/arrow-down.ts @@ -1,7 +1,12 @@ -export const ARROW_DOWN = - ["svg", { viewBox: "0 0 14 16" }, - ["path", - { - "fill-rule": "nonzero", - d: "M8 11.953l3.905-4.09 1.453 1.374L7 16 .635 9.238l1.452-1.376L6 11.954V0h2v11.953z", - }]]; +export const ARROW_DOWN = [ + "svg", + { viewBox: "0 0 14 16" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M8 11.953l3.905-4.09 1.453 1.374L7 16 .635 9.238l1.452-1.376L6 11.954V0h2v11.953z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/arrow-left.ts b/packages/hiccup-carbon-icons/src/arrow-left.ts index a611a962fd..ea88828bc8 100644 --- a/packages/hiccup-carbon-icons/src/arrow-left.ts +++ b/packages/hiccup-carbon-icons/src/arrow-left.ts @@ -1,7 +1,12 @@ -export const ARROW_LEFT = - ["svg", { viewBox: "0 0 16 14" }, - ["path", - { - "fill-rule": "nonzero", - d: "M4.044 8.003l4.09 3.905-1.374 1.453-6.763-6.356L6.759.639 8.135 2.09 4.043 6.003h11.954v2H4.044z", - }]]; +export const ARROW_LEFT = [ + "svg", + { viewBox: "0 0 16 14" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M4.044 8.003l4.09 3.905-1.374 1.453-6.763-6.356L6.759.639 8.135 2.09 4.043 6.003h11.954v2H4.044z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/arrow-right.ts b/packages/hiccup-carbon-icons/src/arrow-right.ts index 43dea70f1f..3aeb81fca0 100644 --- a/packages/hiccup-carbon-icons/src/arrow-right.ts +++ b/packages/hiccup-carbon-icons/src/arrow-right.ts @@ -1,7 +1,12 @@ -export const ARROW_RIGHT = - ["svg", { viewBox: "0 0 16 14" }, - ["path", - { - "fill-rule": "nonzero", - d: "M11.95 5.997L7.86 2.092 9.233.639l6.763 6.356-6.763 6.366L7.86 11.91l4.092-3.912H-.003v-2h11.952z", - }]]; +export const ARROW_RIGHT = [ + "svg", + { viewBox: "0 0 16 14" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M11.95 5.997L7.86 2.092 9.233.639l6.763 6.356-6.763 6.366L7.86 11.91l4.092-3.912H-.003v-2h11.952z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/arrow-up.ts b/packages/hiccup-carbon-icons/src/arrow-up.ts index c722d470bf..23d01c4a38 100644 --- a/packages/hiccup-carbon-icons/src/arrow-up.ts +++ b/packages/hiccup-carbon-icons/src/arrow-up.ts @@ -1,7 +1,12 @@ -export const ARROW_UP = - ["svg", { viewBox: "0 0 14 16" }, - ["path", - { - "fill-rule": "nonzero", - d: "M5.993 4.047l-3.905 4.09L.635 6.763 6.992 0l6.366 6.762-1.452 1.376-3.913-4.092V16h-2V4.047z", - }]]; +export const ARROW_UP = [ + "svg", + { viewBox: "0 0 14 16" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M5.993 4.047l-3.905 4.09L.635 6.763 6.992 0l6.366 6.762-1.452 1.376-3.913-4.092V16h-2V4.047z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/arrows.ts b/packages/hiccup-carbon-icons/src/arrows.ts index 323b732baa..19b9e14915 100644 --- a/packages/hiccup-carbon-icons/src/arrows.ts +++ b/packages/hiccup-carbon-icons/src/arrows.ts @@ -1,4 +1,15 @@ -export const ARROWS = - ["svg", { viewBox: "0 0 16 16" }, - ["g", { "fill-rule": "nonzero" }, - ["path", { d: "M12 14.186l2.724-2.477.686.726-3.875 3.524-3.875-3.524.686-.726L11 14.122V0h1v14.186zM5.038 1.805V16h-1V1.805L1.348 4.25l-.685-.727L4.538 0l3.875 3.523-.686.727-2.69-2.445z" }]]]; +export const ARROWS = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "g", + { "fill-rule": "nonzero" }, + [ + "path", + { + d: + "M12 14.186l2.724-2.477.686.726-3.875 3.524-3.875-3.524.686-.726L11 14.122V0h1v14.186zM5.038 1.805V16h-1V1.805L1.348 4.25l-.685-.727L4.538 0l3.875 3.523-.686.727-2.69-2.445z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/asleep.ts b/packages/hiccup-carbon-icons/src/asleep.ts index 80aea730f9..e0ad0a4347 100644 --- a/packages/hiccup-carbon-icons/src/asleep.ts +++ b/packages/hiccup-carbon-icons/src/asleep.ts @@ -1,7 +1,12 @@ -export const ASLEEP = - ["svg", { viewBox: "0 0 15 16" }, - ["path", - { - "fill-rule": "nonzero", - d: "M14 12c-3.8-.2-6.8-3.3-6.8-7.1 0-1.4.4-2.8 1.3-4V.8c.1-.1.1-.2.1-.3 0-.3-.2-.5-.5-.5H8C3.6 0 0 3.6 0 8s3.6 8 8 8c2.5 0 4.8-1.2 6.3-3.1.2-.2.2-.5.1-.7-.1-.1-.3-.2-.4-.2zm-6 3c-3.9 0-7-3.1-7-7 0-3.6 2.6-6.6 6.2-7-2.1 4-.6 8.9 3.3 11 .8.4 1.6.7 2.5.9-1.3 1.4-3.1 2.1-5 2.1z", - }]]; +export const ASLEEP = [ + "svg", + { viewBox: "0 0 15 16" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M14 12c-3.8-.2-6.8-3.3-6.8-7.1 0-1.4.4-2.8 1.3-4V.8c.1-.1.1-.2.1-.3 0-.3-.2-.5-.5-.5H8C3.6 0 0 3.6 0 8s3.6 8 8 8c2.5 0 4.8-1.2 6.3-3.1.2-.2.2-.5.1-.7-.1-.1-.3-.2-.4-.2zm-6 3c-3.9 0-7-3.1-7-7 0-3.6 2.6-6.6 6.2-7-2.1 4-.6 8.9 3.3 11 .8.4 1.6.7 2.5.9-1.3 1.4-3.1 2.1-5 2.1z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/attachment.ts b/packages/hiccup-carbon-icons/src/attachment.ts index 4acc3a994c..232bd646bd 100644 --- a/packages/hiccup-carbon-icons/src/attachment.ts +++ b/packages/hiccup-carbon-icons/src/attachment.ts @@ -1,7 +1,12 @@ -export const ATTACHMENT = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "nonzero", - d: "M3.498 7.54l-.707.706L1.124 6.58A3.858 3.858 0 1 1 6.58 1.123l8.31 8.311a3.838 3.838 0 0 1 0 5.429 3.883 3.883 0 0 1-5.484 0L6.17 11.625A2.599 2.599 0 0 1 9.845 7.95l1.484 1.484-.707.707-1.484-1.484a1.599 1.599 0 1 0-2.262 2.261l3.237 3.237a2.878 2.878 0 0 0 4.059.012 2.842 2.842 0 0 0 .011-4.026l-8.31-8.31A2.858 2.858 0 0 0 1.83 5.871L3.498 7.54z", - }]]; +export const ATTACHMENT = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M3.498 7.54l-.707.706L1.124 6.58A3.858 3.858 0 1 1 6.58 1.123l8.31 8.311a3.838 3.838 0 0 1 0 5.429 3.883 3.883 0 0 1-5.484 0L6.17 11.625A2.599 2.599 0 0 1 9.845 7.95l1.484 1.484-.707.707-1.484-1.484a1.599 1.599 0 1 0-2.262 2.261l3.237 3.237a2.878 2.878 0 0 0 4.059.012 2.842 2.842 0 0 0 .011-4.026l-8.31-8.31A2.858 2.858 0 0 0 1.83 5.871L3.498 7.54z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/awake.ts b/packages/hiccup-carbon-icons/src/awake.ts index 0d2d9e7102..408fdb6544 100644 --- a/packages/hiccup-carbon-icons/src/awake.ts +++ b/packages/hiccup-carbon-icons/src/awake.ts @@ -1,4 +1,15 @@ -export const AWAKE = - ["svg", { viewBox: "0 0 16 16" }, - ["g", { "fill-rule": "nonzero" }, - ["path", { d: "M7.5 0h1v3h-1zM7.5 13h1v3h-1zM16 7.5v1h-3v-1zM3 7.5v1H0v-1zM1.99 2.697l.707-.707 2.121 2.12-.707.708zM11.182 11.89l.707-.708 2.121 2.121-.707.707zM13.303 1.99l.707.707-2.12 2.121-.708-.707zM4.11 11.182l.708.707-2.121 2.121-.707-.707zM8 10.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5zm0 1a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7z" }]]]; +export const AWAKE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "g", + { "fill-rule": "nonzero" }, + [ + "path", + { + d: + "M7.5 0h1v3h-1zM7.5 13h1v3h-1zM16 7.5v1h-3v-1zM3 7.5v1H0v-1zM1.99 2.697l.707-.707 2.121 2.12-.707.708zM11.182 11.89l.707-.708 2.121 2.121-.707.707zM13.303 1.99l.707.707-2.12 2.121-.708-.707zM4.11 11.182l.708.707-2.121 2.121-.707-.707zM8 10.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5zm0 1a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/back-to-top.ts b/packages/hiccup-carbon-icons/src/back-to-top.ts index db76ac9182..4ee7112246 100644 --- a/packages/hiccup-carbon-icons/src/back-to-top.ts +++ b/packages/hiccup-carbon-icons/src/back-to-top.ts @@ -1,4 +1,15 @@ -export const BACK_TO_TOP = - ["svg", { viewBox: "0 0 11 16" }, - ["g", { "fill-rule": "nonzero" }, - ["path", { d: "M0 1V0h11v1zM5 4.984L.862 9.357.135 8.67 5.502 3l5.363 5.673-.727.687-4.137-4.376V16H5V4.984z" }]]]; +export const BACK_TO_TOP = [ + "svg", + { viewBox: "0 0 11 16" }, + [ + "g", + { "fill-rule": "nonzero" }, + [ + "path", + { + d: + "M0 1V0h11v1zM5 4.984L.862 9.357.135 8.67 5.502 3l5.363 5.673-.727.687-4.137-4.376V16H5V4.984z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/block-chain.ts b/packages/hiccup-carbon-icons/src/block-chain.ts index 1e2777e526..9e8a129406 100644 --- a/packages/hiccup-carbon-icons/src/block-chain.ts +++ b/packages/hiccup-carbon-icons/src/block-chain.ts @@ -1,7 +1,14 @@ -export const BLOCK_CHAIN = - ["svg", +export const BLOCK_CHAIN = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 21 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 21 24", + d: + "M9.5 1c.9 0 1.5.7 1.5 1.5S10.4 4 9.5 4C8.7 4 8 3.3 8 2.5S8.7 1 9.5 1zm0-1C8.2 0 7 1.1 7 2.5S8.2 5 9.5 5 12 3.9 12 2.5 10.9 0 9.5 0zM17 4l-3 1.7v2.4L10.3 6 5 9v3.6l-2-1.1-3 1.7v3.5l3 1.7 3-1.7v-1.1l4.5 2.4 5-3v-4.9l1.5.9 3-1.7V5.8L17 4zm-6.7 3.2l3.8 2.1-3.5 1.8-4-1.8 3.7-2.1zM5 16.1l-2 1.2-2-1.1v-2.3l2-1.2 2 1.1v2.3zm1-5.9l4 1.8v4.6l-4-2.2v-4.2zm5 6.3V12l3.5-1.8v4.2L11 16.5zm8-7.8l-2 1.2-2-1.2V6.3l2-1.2 2 1.2v2.4zM2.5 4C3.4 4 4 4.7 4 5.5S3.4 7 2.5 7 1 6.3 1 5.5 1.7 4 2.5 4zm0-1C1.1 3 0 4.1 0 5.5S1.1 8 2.5 8 5 6.9 5 5.5 3.9 3 2.5 3zM11.5 20c.8 0 1.5.7 1.5 1.5s-.6 1.5-1.5 1.5-1.5-.7-1.5-1.5.7-1.5 1.5-1.5zm0-1C10.1 19 9 20.1 9 21.5s1.1 2.5 2.5 2.5 2.5-1.1 2.5-2.5-1.1-2.5-2.5-2.5zM18.5 16c.8 0 1.5.7 1.5 1.5s-.7 1.5-1.5 1.5-1.5-.7-1.5-1.5.7-1.5 1.5-1.5zm0-1c-1.4 0-2.5 1.1-2.5 2.5s1.1 2.5 2.5 2.5 2.5-1.1 2.5-2.5-1.1-2.5-2.5-2.5z", }, - ["path", { d: "M9.5 1c.9 0 1.5.7 1.5 1.5S10.4 4 9.5 4C8.7 4 8 3.3 8 2.5S8.7 1 9.5 1zm0-1C8.2 0 7 1.1 7 2.5S8.2 5 9.5 5 12 3.9 12 2.5 10.9 0 9.5 0zM17 4l-3 1.7v2.4L10.3 6 5 9v3.6l-2-1.1-3 1.7v3.5l3 1.7 3-1.7v-1.1l4.5 2.4 5-3v-4.9l1.5.9 3-1.7V5.8L17 4zm-6.7 3.2l3.8 2.1-3.5 1.8-4-1.8 3.7-2.1zM5 16.1l-2 1.2-2-1.1v-2.3l2-1.2 2 1.1v2.3zm1-5.9l4 1.8v4.6l-4-2.2v-4.2zm5 6.3V12l3.5-1.8v4.2L11 16.5zm8-7.8l-2 1.2-2-1.2V6.3l2-1.2 2 1.2v2.4zM2.5 4C3.4 4 4 4.7 4 5.5S3.4 7 2.5 7 1 6.3 1 5.5 1.7 4 2.5 4zm0-1C1.1 3 0 4.1 0 5.5S1.1 8 2.5 8 5 6.9 5 5.5 3.9 3 2.5 3zM11.5 20c.8 0 1.5.7 1.5 1.5s-.6 1.5-1.5 1.5-1.5-.7-1.5-1.5.7-1.5 1.5-1.5zm0-1C10.1 19 9 20.1 9 21.5s1.1 2.5 2.5 2.5 2.5-1.1 2.5-2.5-1.1-2.5-2.5-2.5zM18.5 16c.8 0 1.5.7 1.5 1.5s-.7 1.5-1.5 1.5-1.5-.7-1.5-1.5.7-1.5 1.5-1.5zm0-1c-1.4 0-2.5 1.1-2.5 2.5s1.1 2.5 2.5 2.5 2.5-1.1 2.5-2.5-1.1-2.5-2.5-2.5z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/calendar.ts b/packages/hiccup-carbon-icons/src/calendar.ts index 17f00427e4..63eac35c39 100644 --- a/packages/hiccup-carbon-icons/src/calendar.ts +++ b/packages/hiccup-carbon-icons/src/calendar.ts @@ -1,7 +1,12 @@ -export const CALENDAR = - ["svg", { viewBox: "0 0 14 16" }, - ["path", - { - "fill-rule": "nonzero", - d: "M0 5h14v1H0V5zm3-5h1v4H3V0zm7 0h1v4h-1V0zM0 2.5A1.5 1.5 0 0 1 1.5 1h11A1.5 1.5 0 0 1 14 2.5v12a1.5 1.5 0 0 1-1.5 1.5h-11A1.5 1.5 0 0 1 0 14.5v-12zm1 0v12a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5v-12a.5.5 0 0 0-.5-.5h-11a.5.5 0 0 0-.5.5z", - }]]; +export const CALENDAR = [ + "svg", + { viewBox: "0 0 14 16" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M0 5h14v1H0V5zm3-5h1v4H3V0zm7 0h1v4h-1V0zM0 2.5A1.5 1.5 0 0 1 1.5 1h11A1.5 1.5 0 0 1 14 2.5v12a1.5 1.5 0 0 1-1.5 1.5h-11A1.5 1.5 0 0 1 0 14.5v-12zm1 0v12a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5v-12a.5.5 0 0 0-.5-.5h-11a.5.5 0 0 0-.5.5z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/caret-down.ts b/packages/hiccup-carbon-icons/src/caret-down.ts index f909160df4..39e9f0ac49 100644 --- a/packages/hiccup-carbon-icons/src/caret-down.ts +++ b/packages/hiccup-carbon-icons/src/caret-down.ts @@ -1,7 +1,11 @@ -export const CARET_DOWN = - ["svg", { viewBox: "0 0 10 5" }, - ["path", - { - "fill-rule": "evenodd", - d: "M0 0l5 4.998L10 0z", - }]]; +export const CARET_DOWN = [ + "svg", + { viewBox: "0 0 10 5" }, + [ + "path", + { + "fill-rule": "evenodd", + d: "M0 0l5 4.998L10 0z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/caret-left.ts b/packages/hiccup-carbon-icons/src/caret-left.ts index 927d52ce88..3837785826 100644 --- a/packages/hiccup-carbon-icons/src/caret-left.ts +++ b/packages/hiccup-carbon-icons/src/caret-left.ts @@ -1,7 +1,11 @@ -export const CARET_LEFT = - ["svg", { viewBox: "0 0 5 10" }, - ["path", - { - "fill-rule": "evenodd", - d: "M4.998 10L0 5l4.998-5z", - }]]; +export const CARET_LEFT = [ + "svg", + { viewBox: "0 0 5 10" }, + [ + "path", + { + "fill-rule": "evenodd", + d: "M4.998 10L0 5l4.998-5z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/caret-right.ts b/packages/hiccup-carbon-icons/src/caret-right.ts index dcecbb5275..6e9a8823a0 100644 --- a/packages/hiccup-carbon-icons/src/caret-right.ts +++ b/packages/hiccup-carbon-icons/src/caret-right.ts @@ -1,7 +1,11 @@ -export const CARET_RIGHT = - ["svg", { viewBox: "0 0 5 10" }, - ["path", - { - "fill-rule": "evenodd", - d: "M0 10l4.998-5L0 0z", - }]]; +export const CARET_RIGHT = [ + "svg", + { viewBox: "0 0 5 10" }, + [ + "path", + { + "fill-rule": "evenodd", + d: "M0 10l4.998-5L0 0z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/caret-up.ts b/packages/hiccup-carbon-icons/src/caret-up.ts index a03dbba3fb..eb34bf218d 100644 --- a/packages/hiccup-carbon-icons/src/caret-up.ts +++ b/packages/hiccup-carbon-icons/src/caret-up.ts @@ -1,7 +1,11 @@ -export const CARET_UP = - ["svg", { viewBox: "0 0 10 5" }, - ["path", - { - "fill-rule": "evenodd", - d: "M0 5L5 .002 10 5z", - }]]; +export const CARET_UP = [ + "svg", + { viewBox: "0 0 10 5" }, + [ + "path", + { + "fill-rule": "evenodd", + d: "M0 5L5 .002 10 5z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/cf-apps.ts b/packages/hiccup-carbon-icons/src/cf-apps.ts index 332682e8ff..9454660e4c 100644 --- a/packages/hiccup-carbon-icons/src/cf-apps.ts +++ b/packages/hiccup-carbon-icons/src/cf-apps.ts @@ -1,8 +1,21 @@ -export const CF_APPS = - ["svg", +export const CF_APPS = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 18", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 18", + d: + "M12.2 10.5c-.1-.5-.6-.9-1.2-.9-1.1 0-1.5.9-1.5 1.9 0 .9.4 1.8 1.5 1.8.7 0 1.1-.5 1.2-1.2h1.2c-.1 1.4-1 2.2-2.4 2.2-1.7 0-2.7-1.3-2.7-2.8 0-1.6 1-2.9 2.7-2.9 1.2 0 2.2.7 2.3 2h-1.1v-.1zM14.1 8.7h3.8v1h-2.6V11h2.3v.9h-2.3v2.2h-1.2V8.7z", }, - ["path", { d: "M12.2 10.5c-.1-.5-.6-.9-1.2-.9-1.1 0-1.5.9-1.5 1.9 0 .9.4 1.8 1.5 1.8.7 0 1.1-.5 1.2-1.2h1.2c-.1 1.4-1 2.2-2.4 2.2-1.7 0-2.7-1.3-2.7-2.8 0-1.6 1-2.9 2.7-2.9 1.2 0 2.2.7 2.3 2h-1.1v-.1zM14.1 8.7h3.8v1h-2.6V11h2.3v.9h-2.3v2.2h-1.2V8.7z" }], - ["path", { d: "M13.6 1.2c3 0 5.4 2.4 5.5 5.4v.8l.7.3c1.8.7 2.9 2.4 2.9 4.4 0 2.6-2 4.7-4.5 4.7H5.6c-2.5-.1-4.5-2.2-4.5-4.7 0-2.6 2.1-4.8 4.7-4.8.3 0 .6 0 .9.1l1.3.2.1-1.3c.3-2.9 2.6-5.1 5.5-5.1zm0-1.2c-3.5 0-6.4 2.7-6.7 6.2-.3-.1-.7-.1-1-.1C2.6 6.1 0 8.7 0 12c0 3.2 2.5 5.8 5.6 5.9h12.7c3.2 0 5.7-2.6 5.7-5.9 0-2.5-1.5-4.6-3.7-5.5-.1-3.6-3.1-6.5-6.7-6.5z" }]]; + ], + [ + "path", + { + d: + "M13.6 1.2c3 0 5.4 2.4 5.5 5.4v.8l.7.3c1.8.7 2.9 2.4 2.9 4.4 0 2.6-2 4.7-4.5 4.7H5.6c-2.5-.1-4.5-2.2-4.5-4.7 0-2.6 2.1-4.8 4.7-4.8.3 0 .6 0 .9.1l1.3.2.1-1.3c.3-2.9 2.6-5.1 5.5-5.1zm0-1.2c-3.5 0-6.4 2.7-6.7 6.2-.3-.1-.7-.1-1-.1C2.6 6.1 0 8.7 0 12c0 3.2 2.5 5.8 5.6 5.9h12.7c3.2 0 5.7-2.6 5.7-5.9 0-2.5-1.5-4.6-3.7-5.5-.1-3.6-3.1-6.5-6.7-6.5z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/chat.ts b/packages/hiccup-carbon-icons/src/chat.ts index 5aff7a9c04..a54e36009a 100644 --- a/packages/hiccup-carbon-icons/src/chat.ts +++ b/packages/hiccup-carbon-icons/src/chat.ts @@ -1,4 +1,12 @@ -export const CHAT = - ["svg", { viewBox: "0 0 16 16" }, - ["path", { d: "M3 8V7h6v1zM3 5V4h10v1z" }], - ["path", { d: "M11.7 12l-3.9 4-.7-.7 4.1-4.3H14c.6 0 1-.4 1-1V2c0-.6-.4-1-1-1H2c-.6 0-1 .4-1 1v8c0 .6.4 1 1 1h5.5v1H2c-1.1 0-2-.9-2-2V2C0 .9.9 0 2 0h12c1.1 0 2 .9 2 2v8c0 1.1-.9 2-2 2h-2.3z" }]]; +export const CHAT = [ + "svg", + { viewBox: "0 0 16 16" }, + ["path", { d: "M3 8V7h6v1zM3 5V4h10v1z" }], + [ + "path", + { + d: + "M11.7 12l-3.9 4-.7-.7 4.1-4.3H14c.6 0 1-.4 1-1V2c0-.6-.4-1-1-1H2c-.6 0-1 .4-1 1v8c0 .6.4 1 1 1h5.5v1H2c-1.1 0-2-.9-2-2V2C0 .9.9 0 2 0h12c1.1 0 2 .9 2 2v8c0 1.1-.9 2-2 2h-2.3z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/checkmark-outline.ts b/packages/hiccup-carbon-icons/src/checkmark-outline.ts index d5a616c851..eef9e4a0d1 100644 --- a/packages/hiccup-carbon-icons/src/checkmark-outline.ts +++ b/packages/hiccup-carbon-icons/src/checkmark-outline.ts @@ -1,4 +1,12 @@ -export const CHECKMARK_OUTLINE = - ["svg", { viewBox: "0 0 16 16" }, - ["path", { d: "M8 14.5c3.6 0 6.5-2.9 6.5-6.5S11.6 1.5 8 1.5 1.5 4.4 1.5 8s2.9 6.5 6.5 6.5zM8 16c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8z" }], - ["path", { d: "M11.3 4.7l1.4 1.4L6.8 12 3.3 8.6l1.4-1.4 2.1 2z" }]]; +export const CHECKMARK_OUTLINE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + d: + "M8 14.5c3.6 0 6.5-2.9 6.5-6.5S11.6 1.5 8 1.5 1.5 4.4 1.5 8s2.9 6.5 6.5 6.5zM8 16c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8z", + }, + ], + ["path", { d: "M11.3 4.7l1.4 1.4L6.8 12 3.3 8.6l1.4-1.4 2.1 2z" }], +]; diff --git a/packages/hiccup-carbon-icons/src/checkmark-solid.ts b/packages/hiccup-carbon-icons/src/checkmark-solid.ts index 8973eee644..ee51297f5b 100644 --- a/packages/hiccup-carbon-icons/src/checkmark-solid.ts +++ b/packages/hiccup-carbon-icons/src/checkmark-solid.ts @@ -1,7 +1,12 @@ -export const CHECKMARK_SOLID = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "evenodd", - d: "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zm3.293-11.332L6.75 9.21 4.707 7.168 3.293 8.582 6.75 12.04l5.957-5.957-1.414-1.414z", - }]]; +export const CHECKMARK_SOLID = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zm3.293-11.332L6.75 9.21 4.707 7.168 3.293 8.582 6.75 12.04l5.957-5.957-1.414-1.414z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/checkmark.ts b/packages/hiccup-carbon-icons/src/checkmark.ts index 1dcde4d8e8..0fce138302 100644 --- a/packages/hiccup-carbon-icons/src/checkmark.ts +++ b/packages/hiccup-carbon-icons/src/checkmark.ts @@ -1,7 +1,11 @@ -export const CHECKMARK = - ["svg", { viewBox: "0 0 10 8" }, - ["path", - { - d: "M8.498 0L10 1.502 3.672 7.83 0 4.158l1.502-1.502 2.17 2.17z", - "fill-rule": "nonzero", - }]]; +export const CHECKMARK = [ + "svg", + { viewBox: "0 0 10 8" }, + [ + "path", + { + d: "M8.498 0L10 1.502 3.672 7.83 0 4.158l1.502-1.502 2.17 2.17z", + "fill-rule": "nonzero", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/chevron-down.ts b/packages/hiccup-carbon-icons/src/chevron-down.ts index 75ebf21c0d..33c66369ca 100644 --- a/packages/hiccup-carbon-icons/src/chevron-down.ts +++ b/packages/hiccup-carbon-icons/src/chevron-down.ts @@ -1,7 +1,11 @@ -export const CHEVRON_DOWN = - ["svg", { viewBox: "0 0 12 7" }, - ["path", - { - d: "M6.002 5.55L11.27 0l.726.685L6.003 7 0 .685.726 0z", - "fill-rule": "nonzero", - }]]; +export const CHEVRON_DOWN = [ + "svg", + { viewBox: "0 0 12 7" }, + [ + "path", + { + d: "M6.002 5.55L11.27 0l.726.685L6.003 7 0 .685.726 0z", + "fill-rule": "nonzero", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/chevron-left.ts b/packages/hiccup-carbon-icons/src/chevron-left.ts index 31fda0c4e1..bd519e0c36 100644 --- a/packages/hiccup-carbon-icons/src/chevron-left.ts +++ b/packages/hiccup-carbon-icons/src/chevron-left.ts @@ -1,7 +1,11 @@ -export const CHEVRON_LEFT = - ["svg", { viewBox: "0 0 7 12" }, - ["path", - { - d: "M1.45 6.002L7 11.27l-.685.726L0 6.003 6.315 0 7 .726z", - "fill-rule": "nonzero", - }]]; +export const CHEVRON_LEFT = [ + "svg", + { viewBox: "0 0 7 12" }, + [ + "path", + { + d: "M1.45 6.002L7 11.27l-.685.726L0 6.003 6.315 0 7 .726z", + "fill-rule": "nonzero", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/chevron-right.ts b/packages/hiccup-carbon-icons/src/chevron-right.ts index de1ee6f446..33ed832dc2 100644 --- a/packages/hiccup-carbon-icons/src/chevron-right.ts +++ b/packages/hiccup-carbon-icons/src/chevron-right.ts @@ -1,7 +1,11 @@ -export const CHEVRON_RIGHT = - ["svg", { viewBox: "0 0 7 12" }, - ["path", - { - d: "M5.569 5.994L0 .726.687 0l6.336 5.994-6.335 6.002L0 11.27z", - "fill-rule": "nonzero", - }]]; +export const CHEVRON_RIGHT = [ + "svg", + { viewBox: "0 0 7 12" }, + [ + "path", + { + d: "M5.569 5.994L0 .726.687 0l6.336 5.994-6.335 6.002L0 11.27z", + "fill-rule": "nonzero", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/chevron-up.ts b/packages/hiccup-carbon-icons/src/chevron-up.ts index 8b5b34bd23..e0564fc650 100644 --- a/packages/hiccup-carbon-icons/src/chevron-up.ts +++ b/packages/hiccup-carbon-icons/src/chevron-up.ts @@ -1,7 +1,11 @@ -export const CHEVRON_UP = - ["svg", { viewBox: "0 0 12 7" }, - ["path", - { - d: "M5.994 1.45L.726 7 0 6.315 5.994 0l6.002 6.315L11.27 7z", - "fill-rule": "nonzero", - }]]; +export const CHEVRON_UP = [ + "svg", + { viewBox: "0 0 12 7" }, + [ + "path", + { + d: "M5.994 1.45L.726 7 0 6.315 5.994 0l6.002 6.315L11.27 7z", + "fill-rule": "nonzero", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/close-outline.ts b/packages/hiccup-carbon-icons/src/close-outline.ts index 07e553bdee..a8c8279743 100644 --- a/packages/hiccup-carbon-icons/src/close-outline.ts +++ b/packages/hiccup-carbon-icons/src/close-outline.ts @@ -1,4 +1,18 @@ -export const CLOSE_OUTLINE = - ["svg", { viewBox: "0 0 16 16" }, - ["path", { d: "M8 14.5c3.6 0 6.5-2.9 6.5-6.5S11.6 1.5 8 1.5 1.5 4.4 1.5 8s2.9 6.5 6.5 6.5zM8 16c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8z" }], - ["path", { d: "M8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1-1.4 1.4L8 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6z" }]]; +export const CLOSE_OUTLINE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + d: + "M8 14.5c3.6 0 6.5-2.9 6.5-6.5S11.6 1.5 8 1.5 1.5 4.4 1.5 8s2.9 6.5 6.5 6.5zM8 16c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8z", + }, + ], + [ + "path", + { + d: + "M8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1-1.4 1.4L8 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/close-solid.ts b/packages/hiccup-carbon-icons/src/close-solid.ts index e8b743ba60..ae11263ad7 100644 --- a/packages/hiccup-carbon-icons/src/close-solid.ts +++ b/packages/hiccup-carbon-icons/src/close-solid.ts @@ -1,7 +1,12 @@ -export const CLOSE_SOLID = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "evenodd", - d: "M8 6.586L5.879 4.464 4.464 5.88 6.586 8l-2.122 2.121 1.415 1.415L8 9.414l2.121 2.122 1.415-1.415L9.414 8l2.122-2.121-1.415-1.415L8 6.586zM8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16z", - }]]; +export const CLOSE_SOLID = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M8 6.586L5.879 4.464 4.464 5.88 6.586 8l-2.122 2.121 1.415 1.415L8 9.414l2.121 2.122 1.415-1.415L9.414 8l2.122-2.121-1.415-1.415L8 6.586zM8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/close.ts b/packages/hiccup-carbon-icons/src/close.ts index 6c926820ec..f0a5a7b4f4 100644 --- a/packages/hiccup-carbon-icons/src/close.ts +++ b/packages/hiccup-carbon-icons/src/close.ts @@ -1,7 +1,12 @@ -export const CLOSE = - ["svg", { viewBox: "0 0 10 10" }, - ["path", - { - "fill-rule": "nonzero", - d: "M6.32 5L10 8.68 8.68 10 5 6.32 1.32 10 0 8.68 3.68 5 0 1.32 1.32 0 5 3.68 8.68 0 10 1.32 6.32 5z", - }]]; +export const CLOSE = [ + "svg", + { viewBox: "0 0 10 10" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M6.32 5L10 8.68 8.68 10 5 6.32 1.32 10 0 8.68 3.68 5 0 1.32 1.32 0 5 3.68 8.68 0 10 1.32 6.32 5z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/cloud-foundry.ts b/packages/hiccup-carbon-icons/src/cloud-foundry.ts index 0e0e7b018d..32a6001a51 100644 --- a/packages/hiccup-carbon-icons/src/cloud-foundry.ts +++ b/packages/hiccup-carbon-icons/src/cloud-foundry.ts @@ -1,8 +1,21 @@ -export const CLOUD_FOUNDRY = - ["svg", +export const CLOUD_FOUNDRY = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 18", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 18", + d: + "M12.2 10.5c-.1-.5-.6-.9-1.2-.9-1.1 0-1.5.9-1.5 1.9 0 .9.4 1.8 1.5 1.8.7 0 1.1-.5 1.2-1.2h1.2c-.1 1.4-1 2.2-2.4 2.2-1.7 0-2.7-1.3-2.7-2.8 0-1.6 1-2.9 2.7-2.9 1.2 0 2.2.7 2.3 2h-1.1v-.1zM14.1 8.7h3.8v1h-2.6V11h2.3v.9h-2.3v2.2h-1.2V8.7z", }, - ["path", { d: "M12.2 10.5c-.1-.5-.6-.9-1.2-.9-1.1 0-1.5.9-1.5 1.9 0 .9.4 1.8 1.5 1.8.7 0 1.1-.5 1.2-1.2h1.2c-.1 1.4-1 2.2-2.4 2.2-1.7 0-2.7-1.3-2.7-2.8 0-1.6 1-2.9 2.7-2.9 1.2 0 2.2.7 2.3 2h-1.1v-.1zM14.1 8.7h3.8v1h-2.6V11h2.3v.9h-2.3v2.2h-1.2V8.7z" }], - ["path", { d: "M13.6 1.2c3 0 5.4 2.4 5.5 5.4v.8l.7.3c1.8.7 2.9 2.4 2.9 4.4 0 2.6-2 4.7-4.5 4.7H5.6c-2.5-.1-4.5-2.2-4.5-4.7 0-2.6 2.1-4.8 4.7-4.8.3 0 .6 0 .9.1l1.3.2.1-1.3c.3-2.9 2.6-5.1 5.5-5.1zm0-1.2c-3.5 0-6.4 2.7-6.7 6.2-.3-.1-.7-.1-1-.1C2.6 6.1 0 8.7 0 12c0 3.2 2.5 5.8 5.6 5.9h12.7c3.2 0 5.7-2.6 5.7-5.9 0-2.5-1.5-4.6-3.7-5.5-.1-3.6-3.1-6.5-6.7-6.5z" }]]; + ], + [ + "path", + { + d: + "M13.6 1.2c3 0 5.4 2.4 5.5 5.4v.8l.7.3c1.8.7 2.9 2.4 2.9 4.4 0 2.6-2 4.7-4.5 4.7H5.6c-2.5-.1-4.5-2.2-4.5-4.7 0-2.6 2.1-4.8 4.7-4.8.3 0 .6 0 .9.1l1.3.2.1-1.3c.3-2.9 2.6-5.1 5.5-5.1zm0-1.2c-3.5 0-6.4 2.7-6.7 6.2-.3-.1-.7-.1-1-.1C2.6 6.1 0 8.7 0 12c0 3.2 2.5 5.8 5.6 5.9h12.7c3.2 0 5.7-2.6 5.7-5.9 0-2.5-1.5-4.6-3.7-5.5-.1-3.6-3.1-6.5-6.7-6.5z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/code.ts b/packages/hiccup-carbon-icons/src/code.ts index f62c82fd44..e0d95ff34b 100644 --- a/packages/hiccup-carbon-icons/src/code.ts +++ b/packages/hiccup-carbon-icons/src/code.ts @@ -1,4 +1,15 @@ -export const CODE = - ["svg", { viewBox: "0 0 16 10" }, - ["g", { "fill-rule": "nonzero" }, - ["path", { d: "M1.363 5.098l2.928 3.16-.733.68L0 5.098l3.558-3.84.733.68zM14.637 5.098l-2.928-3.16.733-.68L16 5.098l-3.558 3.84-.733-.68zM6.466 10l-.927-.388L9.56 0l.927.388z" }]]]; +export const CODE = [ + "svg", + { viewBox: "0 0 16 10" }, + [ + "g", + { "fill-rule": "nonzero" }, + [ + "path", + { + d: + "M1.363 5.098l2.928 3.16-.733.68L0 5.098l3.558-3.84.733.68zM14.637 5.098l-2.928-3.16.733-.68L16 5.098l-3.558 3.84-.733-.68zM6.466 10l-.927-.388L9.56 0l.927.388z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/console.ts b/packages/hiccup-carbon-icons/src/console.ts index e95ca9c7c4..f3d93f8066 100644 --- a/packages/hiccup-carbon-icons/src/console.ts +++ b/packages/hiccup-carbon-icons/src/console.ts @@ -1,7 +1,14 @@ -export const CONSOLE = - ["svg", +export const CONSOLE = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 24", + d: + "M0 0v24h24V0H0zm1 23V7h8v16H1zm22 0H10v-8h13v8zm0-9H10V7h13v7zM1 6V1h22v5H1z", }, - ["path", { d: "M0 0v24h24V0H0zm1 23V7h8v16H1zm22 0H10v-8h13v8zm0-9H10V7h13v7zM1 6V1h22v5H1z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/containers.ts b/packages/hiccup-carbon-icons/src/containers.ts index 012efabc75..618c3be50e 100644 --- a/packages/hiccup-carbon-icons/src/containers.ts +++ b/packages/hiccup-carbon-icons/src/containers.ts @@ -1,3 +1,11 @@ -export const CONTAINERS = - ["svg", { viewBox: "0 0 24 24" }, - ["path", { d: "M21.7 5.8L13.5.4c-.9-.6-2.2-.6-3.1 0L2.2 5.9c-.4.3-.7.6-.9 1.1 0 0-.3.6-.3 1.3v7.6c0 .9.5 1.7 1.3 2.2l8.2 5.4c.5.3 1 .5 1.5.5s1.1-.2 1.6-.5l8.2-5.4c.8-.5 1.2-1.3 1.2-2.2V8.3c0-.3.1-1.5-1.3-2.5zm-18.9.9L11 1.3c.6-.4 1.4-.4 1.9 0l8.2 5.4c.3.2.6.5.7.9L16 11.2l-.4.3L13 9.6c-.6-.4-1.3-.4-1.9 0l-2.6 1.7-6.3-3.8c.1-.3.3-.6.6-.8zm11.9 5.4l-2.3 1.5c-.2.1-.5.1-.7 0L9.4 12l2.3-1.5c.2-.1.5-.1.7 0l2.3 1.6zm7.3 3.8c0 .6-.3 1.1-.8 1.4L13 22.7c-.6.4-1.4.4-1.9 0l-8.3-5.4C2.3 17 2 16.5 2 16V8.6l6.2 3.8 2.9 2c.6.4 1.3.4 1.9 0l2.9-1.9L22 8.6v7.3z" }]]; +export const CONTAINERS = [ + "svg", + { viewBox: "0 0 24 24" }, + [ + "path", + { + d: + "M21.7 5.8L13.5.4c-.9-.6-2.2-.6-3.1 0L2.2 5.9c-.4.3-.7.6-.9 1.1 0 0-.3.6-.3 1.3v7.6c0 .9.5 1.7 1.3 2.2l8.2 5.4c.5.3 1 .5 1.5.5s1.1-.2 1.6-.5l8.2-5.4c.8-.5 1.2-1.3 1.2-2.2V8.3c0-.3.1-1.5-1.3-2.5zm-18.9.9L11 1.3c.6-.4 1.4-.4 1.9 0l8.2 5.4c.3.2.6.5.7.9L16 11.2l-.4.3L13 9.6c-.6-.4-1.3-.4-1.9 0l-2.6 1.7-6.3-3.8c.1-.3.3-.6.6-.8zm11.9 5.4l-2.3 1.5c-.2.1-.5.1-.7 0L9.4 12l2.3-1.5c.2-.1.5-.1.7 0l2.3 1.6zm7.3 3.8c0 .6-.3 1.1-.8 1.4L13 22.7c-.6.4-1.4.4-1.9 0l-8.3-5.4C2.3 17 2 16.5 2 16V8.6l6.2 3.8 2.9 2c.6.4 1.3.4 1.9 0l2.9-1.9L22 8.6v7.3z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/copy.ts b/packages/hiccup-carbon-icons/src/copy.ts index 9ac2997fec..77ed514f9a 100644 --- a/packages/hiccup-carbon-icons/src/copy.ts +++ b/packages/hiccup-carbon-icons/src/copy.ts @@ -1,4 +1,12 @@ -export const COPY = - ["svg", { viewBox: "0 0 16 16" }, - ["path", { d: "M1 10H0V2C0 .9.9 0 2 0h8v1H2c-.6 0-1 .5-1 1v8z" }], - ["path", { d: "M11 4.2V8h3.8L11 4.2zM15 9h-4c-.6 0-1-.4-1-1V4H4.5c-.3 0-.5.2-.5.5v10c0 .3.2.5.5.5h10c.3 0 .5-.2.5-.5V9zm-4-6c.1 0 .3.1.4.1l4.5 4.5c0 .1.1.3.1.4v6.5c0 .8-.7 1.5-1.5 1.5h-10c-.8 0-1.5-.7-1.5-1.5v-10C3 3.7 3.7 3 4.5 3H11z" }]]; +export const COPY = [ + "svg", + { viewBox: "0 0 16 16" }, + ["path", { d: "M1 10H0V2C0 .9.9 0 2 0h8v1H2c-.6 0-1 .5-1 1v8z" }], + [ + "path", + { + d: + "M11 4.2V8h3.8L11 4.2zM15 9h-4c-.6 0-1-.4-1-1V4H4.5c-.3 0-.5.2-.5.5v10c0 .3.2.5.5.5h10c.3 0 .5-.2.5-.5V9zm-4-6c.1 0 .3.1.4.1l4.5 4.5c0 .1.1.3.1.4v6.5c0 .8-.7 1.5-1.5 1.5h-10c-.8 0-1.5-.7-1.5-1.5v-10C3 3.7 3.7 3 4.5 3H11z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/crash.ts b/packages/hiccup-carbon-icons/src/crash.ts index babd892ba8..81c9a49fbf 100644 --- a/packages/hiccup-carbon-icons/src/crash.ts +++ b/packages/hiccup-carbon-icons/src/crash.ts @@ -1,7 +1,12 @@ -export const CRASH = - ["svg", { viewBox: "0 0 24 17" }, - ["path", - { - "fill-rule": "evenodd", - d: "M21 10l3 3-3 3v-2.5h-2.153A.986.986 0 0 1 18 14c-.086 0-.164-.028-.244-.05l-1.805 1.806c.022.08.05.158.05.244a1 1 0 1 1-2 0c0-.18.06-.342.145-.488L10.995 10a.988.988 0 0 1-.953-.792l-1.39-.464C8.475 8.898 8.25 9 8 9s-.476-.102-.65-.256l-1.392.464A.985.985 0 0 1 5 10a1 1 0 0 1-1-1c0-.038.018-.07.022-.108L1.392 6.92A1 1 0 1 1 2 6c0 .038-.018.07-.022.108l2.63 1.972a.978.978 0 0 1 1.042.176l1.392-.464A.985.985 0 0 1 8 7c.48 0 .86.343.958.792l1.39.464c.16-.14.36-.228.586-.242l3.24-6.482A.989.989 0 0 1 14 1a1 1 0 1 1 2 0c0 .14-.03.27-.08.393l1.97 2.627c.037-.002.07-.02.108-.02.366 0 .673.207.847.5H21V2l3 3-3 3V5.5h-2.153A.986.986 0 0 1 18 6a1 1 0 0 1-.92-1.393L15.108 1.98c-.014 0-.028.006-.043.006l-3.24 6.482c.1.156.175.332.175.532 0 .18-.06.342-.146.488L15.004 15c.086.002.16.03.24.05l1.805-1.806c-.022-.08-.05-.158-.05-.244a1 1 0 0 1 1-1c.366 0 .673.207.847.5H21V10z", - }]]; +export const CRASH = [ + "svg", + { viewBox: "0 0 24 17" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M21 10l3 3-3 3v-2.5h-2.153A.986.986 0 0 1 18 14c-.086 0-.164-.028-.244-.05l-1.805 1.806c.022.08.05.158.05.244a1 1 0 1 1-2 0c0-.18.06-.342.145-.488L10.995 10a.988.988 0 0 1-.953-.792l-1.39-.464C8.475 8.898 8.25 9 8 9s-.476-.102-.65-.256l-1.392.464A.985.985 0 0 1 5 10a1 1 0 0 1-1-1c0-.038.018-.07.022-.108L1.392 6.92A1 1 0 1 1 2 6c0 .038-.018.07-.022.108l2.63 1.972a.978.978 0 0 1 1.042.176l1.392-.464A.985.985 0 0 1 8 7c.48 0 .86.343.958.792l1.39.464c.16-.14.36-.228.586-.242l3.24-6.482A.989.989 0 0 1 14 1a1 1 0 1 1 2 0c0 .14-.03.27-.08.393l1.97 2.627c.037-.002.07-.02.108-.02.366 0 .673.207.847.5H21V2l3 3-3 3V5.5h-2.153A.986.986 0 0 1 18 6a1 1 0 0 1-.92-1.393L15.108 1.98c-.014 0-.028.006-.043.006l-3.24 6.482c.1.156.175.332.175.532 0 .18-.06.342-.146.488L15.004 15c.086.002.16.03.24.05l1.805-1.806c-.022-.08-.05-.158-.05-.244a1 1 0 0 1 1-1c.366 0 .673.207.847.5H21V10z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/dashboard.ts b/packages/hiccup-carbon-icons/src/dashboard.ts index 72f05d3473..7dc1096867 100644 --- a/packages/hiccup-carbon-icons/src/dashboard.ts +++ b/packages/hiccup-carbon-icons/src/dashboard.ts @@ -1,7 +1,14 @@ -export const DASHBOARD = - ["svg", +export const DASHBOARD = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 24", + d: + "M0 0v24h24V0H0zm1 23V7h8v16H1zm22 0H10v-8h13v8zm0-9H10V7h13v7zM1 6V1h22v5H1z", }, - ["path", { d: "M0 0v24h24V0H0zm1 23V7h8v16H1zm22 0H10v-8h13v8zm0-9H10V7h13v7zM1 6V1h22v5H1z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/data.ts b/packages/hiccup-carbon-icons/src/data.ts index 8092a5e049..0e48faea2b 100644 --- a/packages/hiccup-carbon-icons/src/data.ts +++ b/packages/hiccup-carbon-icons/src/data.ts @@ -1,7 +1,14 @@ -export const DATA = - ["svg", +export const DATA = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 24", + d: + "M0 0v24h24V0H0zm22.1 7l-7.2 8.9-9.2-3.8c-.2-.1-.4 0-.6.1L1 16.6V7h21.1zm.9 16H1v-4.9l4.6-5 9.2 3.8c.2.1.4 0 .6-.1L23 7.5V23zm0-17H1V1h22v5z", }, - ["path", { d: "M0 0v24h24V0H0zm22.1 7l-7.2 8.9-9.2-3.8c-.2-.1-.4 0-.6.1L1 16.6V7h21.1zm.9 16H1v-4.9l4.6-5 9.2 3.8c.2.1.4 0 .6-.1L23 7.5V23zm0-17H1V1h22v5z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/delete.ts b/packages/hiccup-carbon-icons/src/delete.ts index 6257420a6a..f3be7dd8f8 100644 --- a/packages/hiccup-carbon-icons/src/delete.ts +++ b/packages/hiccup-carbon-icons/src/delete.ts @@ -1,4 +1,12 @@ -export const DELETE = - ["svg", { viewBox: "0 0 12 16" }, - ["path", { d: "M11 4v11c0 .6-.4 1-1 1H2c-.6 0-1-.4-1-1V4H0V3h12v1h-1zM2 4v11h8V4H2z" }], - ["path", { d: "M4 6h1v7H4zM7 6h1v7H7zM3 1V0h6v1z" }]]; +export const DELETE = [ + "svg", + { viewBox: "0 0 12 16" }, + [ + "path", + { + d: + "M11 4v11c0 .6-.4 1-1 1H2c-.6 0-1-.4-1-1V4H0V3h12v1h-1zM2 4v11h8V4H2z", + }, + ], + ["path", { d: "M4 6h1v7H4zM7 6h1v7H7zM3 1V0h6v1z" }], +]; diff --git a/packages/hiccup-carbon-icons/src/devices.ts b/packages/hiccup-carbon-icons/src/devices.ts index 080e31339e..21b0f4aac3 100644 --- a/packages/hiccup-carbon-icons/src/devices.ts +++ b/packages/hiccup-carbon-icons/src/devices.ts @@ -1,10 +1,35 @@ -export const DEVICES = - ["svg", +export const DEVICES = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 23", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 23", + d: + "M20.5 17c1.4 0 2.5 1.1 2.5 2.5S21.9 22 20.5 22h-17C2.1 22 1 20.9 1 19.5S2.1 17 3.5 17h17zm0-1h-17C1.6 16 0 17.6 0 19.5S1.6 23 3.5 23h17c1.9 0 3.5-1.6 3.5-3.5S22.4 16 20.5 16z", }, - ["path", { d: "M20.5 17c1.4 0 2.5 1.1 2.5 2.5S21.9 22 20.5 22h-17C2.1 22 1 20.9 1 19.5S2.1 17 3.5 17h17zm0-1h-17C1.6 16 0 17.6 0 19.5S1.6 23 3.5 23h17c1.9 0 3.5-1.6 3.5-3.5S22.4 16 20.5 16z" }], - ["path", { d: "M19.5 20h-15c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h15c.3 0 .5.2.5.5s-.2.5-.5.5zM20.5 9c1.4 0 2.5 1.1 2.5 2.5S21.9 14 20.5 14h-17C2.1 14 1 12.9 1 11.5S2.1 9 3.5 9h17zm0-1h-17C1.6 8 0 9.6 0 11.5S1.6 15 3.5 15h17c1.9 0 3.5-1.6 3.5-3.5S22.4 8 20.5 8z" }], - ["path", { d: "M19.5 12h-15c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h15c.3 0 .5.2.5.5s-.2.5-.5.5zM20.5 1C21.9 1 23 2.1 23 3.5S21.9 6 20.5 6h-17C2.1 6 1 4.9 1 3.5S2.1 1 3.5 1h17zm0-1h-17C1.6 0 0 1.6 0 3.5S1.6 7 3.5 7h17C22.4 7 24 5.4 24 3.5S22.4 0 20.5 0z" }], - ["path", { d: "M19.5 4h-15c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h15c.3 0 .5.2.5.5s-.2.5-.5.5z" }]]; + ], + [ + "path", + { + d: + "M19.5 20h-15c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h15c.3 0 .5.2.5.5s-.2.5-.5.5zM20.5 9c1.4 0 2.5 1.1 2.5 2.5S21.9 14 20.5 14h-17C2.1 14 1 12.9 1 11.5S2.1 9 3.5 9h17zm0-1h-17C1.6 8 0 9.6 0 11.5S1.6 15 3.5 15h17c1.9 0 3.5-1.6 3.5-3.5S22.4 8 20.5 8z", + }, + ], + [ + "path", + { + d: + "M19.5 12h-15c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h15c.3 0 .5.2.5.5s-.2.5-.5.5zM20.5 1C21.9 1 23 2.1 23 3.5S21.9 6 20.5 6h-17C2.1 6 1 4.9 1 3.5S2.1 1 3.5 1h17zm0-1h-17C1.6 0 0 1.6 0 3.5S1.6 7 3.5 7h17C22.4 7 24 5.4 24 3.5S22.4 0 20.5 0z", + }, + ], + [ + "path", + { + d: + "M19.5 4h-15c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h15c.3 0 .5.2.5.5s-.2.5-.5.5z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/devops.ts b/packages/hiccup-carbon-icons/src/devops.ts index 7eed2683f2..c9a8b26795 100644 --- a/packages/hiccup-carbon-icons/src/devops.ts +++ b/packages/hiccup-carbon-icons/src/devops.ts @@ -1,7 +1,14 @@ -export const DEVOPS = - ["svg", +export const DEVOPS = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 24", + d: + "M21 13V3h-3v1h2v9h-3v11h7V13h-3zm2 10h-5v-9h5v9zM17 3.5L11 0v3H3v13h1V4h7v3l6-3.5zm-5-1.8l3 1.8-3 1.8V1.7zM16 20H6.4c-.3-1.4-1.6-2.5-3.2-2.5C1.4 17.5 0 19 0 20.7 0 22.5 1.5 24 3.2 24c1.7 0 3.1-1.3 3.2-3h9.5l.1-1zM3.2 23C2 23 1 22 1 20.7c0-1.2 1-2.2 2.2-2.2 1.2 0 2.2 1 2.2 2.2.1 1.3-.9 2.3-2.2 2.3z", }, - ["path", { d: "M21 13V3h-3v1h2v9h-3v11h7V13h-3zm2 10h-5v-9h5v9zM17 3.5L11 0v3H3v13h1V4h7v3l6-3.5zm-5-1.8l3 1.8-3 1.8V1.7zM16 20H6.4c-.3-1.4-1.6-2.5-3.2-2.5C1.4 17.5 0 19 0 20.7 0 22.5 1.5 24 3.2 24c1.7 0 3.1-1.3 3.2-3h9.5l.1-1zM3.2 23C2 23 1 22 1 20.7c0-1.2 1-2.2 2.2-2.2 1.2 0 2.2 1 2.2 2.2.1 1.3-.9 2.3-2.2 2.3z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/document.ts b/packages/hiccup-carbon-icons/src/document.ts index bca9917ca8..3cb3253a47 100644 --- a/packages/hiccup-carbon-icons/src/document.ts +++ b/packages/hiccup-carbon-icons/src/document.ts @@ -1,9 +1,17 @@ -export const DOCUMENT = - ["svg", { viewBox: "0 0 12 16" }, - ["g", { "fill-rule": "evenodd" }, - ["path", - { - "fill-rule": "nonzero", - d: "M10.581 3.996L8.014 1.429l.026 2.559 2.541.008zM7.011 1H1v14h10V4.997l-2.963-.01a1 1 0 0 1-.997-.99L7.01 1zM1 0h7l4 4v11a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1z", - }], - ["path", { d: "M3 9h6v1H3zM3 12h6v1H3z" }]]]; +export const DOCUMENT = [ + "svg", + { viewBox: "0 0 12 16" }, + [ + "g", + { "fill-rule": "evenodd" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M10.581 3.996L8.014 1.429l.026 2.559 2.541.008zM7.011 1H1v14h10V4.997l-2.963-.01a1 1 0 0 1-.997-.99L7.01 1zM1 0h7l4 4v11a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1z", + }, + ], + ["path", { d: "M3 9h6v1H3zM3 12h6v1H3z" }], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/dollars.ts b/packages/hiccup-carbon-icons/src/dollars.ts index e46abe58c6..4fa39e42af 100644 --- a/packages/hiccup-carbon-icons/src/dollars.ts +++ b/packages/hiccup-carbon-icons/src/dollars.ts @@ -1,7 +1,12 @@ -export const DOLLARS = - ["svg", { viewBox: "0 0 24 24" }, - ["path", - { - "fill-rule": "evenodd", - d: "M22.462 10.59l-3.404-9.04-6.834 2.61a1.745 1.745 0 0 0-1.002 2.243c.19.506.226 1.03.155 1.53a3.34 3.34 0 0 1 3.746 2.11c.655 1.742-.214 3.69-1.942 4.35l.502 1.332c.134-1.106.843-2.104 1.945-2.526l6.835-2.61zm-8.617 6.6c-.012-.032-.014-.062-.025-.09-.275.07-.553.12-.834.12a3.314 3.314 0 0 1-3.098-2.156c-.647-1.72.216-3.652 1.923-4.306L11.1 8.86a3.057 3.057 0 0 1-1.658 1.533l-7.9 3.02 3.4 9.038 7.903-3.02a1.742 1.742 0 0 0 1.002-2.24zm10.096-5.93a.673.673 0 0 1-.374.354l-7.46 2.852a1.712 1.712 0 0 0-.965.912 1.742 1.742 0 0 0-.038 1.33c.6 1.595-.2 3.383-1.783 3.988l-8.53 3.26a.658.658 0 0 1-.514-.016.672.672 0 0 1-.353-.376L.043 13.26a.682.682 0 0 1 .39-.874l8.53-3.26a1.744 1.744 0 0 0 1.003-2.24c-.6-1.597.2-3.385 1.782-3.99l7.46-2.852a.672.672 0 0 1 .868.393l3.88 10.303a.684.684 0 0 1-.015.52zM18.19 9.635a1.515 1.515 0 0 0 1.958.888 1.534 1.534 0 0 0 .88-1.973 1.515 1.515 0 0 0-1.958-.886 1.533 1.533 0 0 0-.88 1.972zm.178-3.838a.678.678 0 0 0 .39-.873l-.72-1.912a.675.675 0 0 0-.868-.393.682.682 0 0 0-.39.874l.72 1.91a.68.68 0 0 0 .63.438.69.69 0 0 0 .238-.044zM6.06 14.123a1.516 1.516 0 0 0-1.958-.888 1.53 1.53 0 0 0-.88 1.972 1.513 1.513 0 0 0 1.956.888 1.53 1.53 0 0 0 .88-1.972zm.912 5.995a.678.678 0 0 1-.628.918.674.674 0 0 1-.628-.436l-.72-1.912a.68.68 0 0 1 .39-.874.675.675 0 0 1 .866.392l.72 1.912z", - }]]; +export const DOLLARS = [ + "svg", + { viewBox: "0 0 24 24" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M22.462 10.59l-3.404-9.04-6.834 2.61a1.745 1.745 0 0 0-1.002 2.243c.19.506.226 1.03.155 1.53a3.34 3.34 0 0 1 3.746 2.11c.655 1.742-.214 3.69-1.942 4.35l.502 1.332c.134-1.106.843-2.104 1.945-2.526l6.835-2.61zm-8.617 6.6c-.012-.032-.014-.062-.025-.09-.275.07-.553.12-.834.12a3.314 3.314 0 0 1-3.098-2.156c-.647-1.72.216-3.652 1.923-4.306L11.1 8.86a3.057 3.057 0 0 1-1.658 1.533l-7.9 3.02 3.4 9.038 7.903-3.02a1.742 1.742 0 0 0 1.002-2.24zm10.096-5.93a.673.673 0 0 1-.374.354l-7.46 2.852a1.712 1.712 0 0 0-.965.912 1.742 1.742 0 0 0-.038 1.33c.6 1.595-.2 3.383-1.783 3.988l-8.53 3.26a.658.658 0 0 1-.514-.016.672.672 0 0 1-.353-.376L.043 13.26a.682.682 0 0 1 .39-.874l8.53-3.26a1.744 1.744 0 0 0 1.003-2.24c-.6-1.597.2-3.385 1.782-3.99l7.46-2.852a.672.672 0 0 1 .868.393l3.88 10.303a.684.684 0 0 1-.015.52zM18.19 9.635a1.515 1.515 0 0 0 1.958.888 1.534 1.534 0 0 0 .88-1.973 1.515 1.515 0 0 0-1.958-.886 1.533 1.533 0 0 0-.88 1.972zm.178-3.838a.678.678 0 0 0 .39-.873l-.72-1.912a.675.675 0 0 0-.868-.393.682.682 0 0 0-.39.874l.72 1.91a.68.68 0 0 0 .63.438.69.69 0 0 0 .238-.044zM6.06 14.123a1.516 1.516 0 0 0-1.958-.888 1.53 1.53 0 0 0-.88 1.972 1.513 1.513 0 0 0 1.956.888 1.53 1.53 0 0 0 .88-1.972zm.912 5.995a.678.678 0 0 1-.628.918.674.674 0 0 1-.628-.436l-.72-1.912a.68.68 0 0 1 .39-.874.675.675 0 0 1 .866.392l.72 1.912z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/download.ts b/packages/hiccup-carbon-icons/src/download.ts index 1579326c87..314a5c50af 100644 --- a/packages/hiccup-carbon-icons/src/download.ts +++ b/packages/hiccup-carbon-icons/src/download.ts @@ -1,3 +1,11 @@ -export const DOWNLOAD = - ["svg", { viewBox: "0 0 14 16" }, - ["path", { d: "M7.5 11l4.1-4.4.7.7L7 13 1.6 7.3l.7-.7L6.5 11V0h1v11zM13 15v-2h1v2c0 .6-.4 1-1 1H1c-.6 0-1-.4-1-1v-2h1v2h12z" }]]; +export const DOWNLOAD = [ + "svg", + { viewBox: "0 0 14 16" }, + [ + "path", + { + d: + "M7.5 11l4.1-4.4.7.7L7 13 1.6 7.3l.7-.7L6.5 11V0h1v11zM13 15v-2h1v2c0 .6-.4 1-1 1H1c-.6 0-1-.4-1-1v-2h1v2h12z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/draggable.ts b/packages/hiccup-carbon-icons/src/draggable.ts index 22ad8bc36e..f61d055199 100644 --- a/packages/hiccup-carbon-icons/src/draggable.ts +++ b/packages/hiccup-carbon-icons/src/draggable.ts @@ -1,4 +1,15 @@ -export const DRAGGABLE = - ["svg", { viewBox: "0 0 6 14" }, - ["g", { "fill-rule": "evenodd" }, - ["path", { d: "M0 0h2v2H0zM4 0h2v2H4zM0 6h2v2H0zM4 6h2v2H4zM0 12h2v2H0zM4 12h2v2H4z" }]]]; +export const DRAGGABLE = [ + "svg", + { viewBox: "0 0 6 14" }, + [ + "g", + { "fill-rule": "evenodd" }, + [ + "path", + { + d: + "M0 0h2v2H0zM4 0h2v2H4zM0 6h2v2H0zM4 6h2v2H4zM0 12h2v2H0zM4 12h2v2H4z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/edit.ts b/packages/hiccup-carbon-icons/src/edit.ts index b89e0ec5cb..a138ef51ab 100644 --- a/packages/hiccup-carbon-icons/src/edit.ts +++ b/packages/hiccup-carbon-icons/src/edit.ts @@ -1,4 +1,15 @@ -export const EDIT = - ["svg", { viewBox: "0 0 16 16" }, - ["g", { "fill-rule": "nonzero" }, - ["path", { d: "M7.926 3.38L1.002 9.72V12h2.304l6.926-6.316L7.926 3.38zm.738-.675l2.308 2.304 1.451-1.324-2.308-2.309-1.451 1.329zM.002 9.28L9.439.639a1 1 0 0 1 1.383.03l2.309 2.309a1 1 0 0 1-.034 1.446L3.694 13H.002V9.28zM0 16.013v-1h16v1z" }]]]; +export const EDIT = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "g", + { "fill-rule": "nonzero" }, + [ + "path", + { + d: + "M7.926 3.38L1.002 9.72V12h2.304l6.926-6.316L7.926 3.38zm.738-.675l2.308 2.304 1.451-1.324-2.308-2.309-1.451 1.329zM.002 9.28L9.439.639a1 1 0 0 1 1.383.03l2.309 2.309a1 1 0 0 1-.034 1.446L3.694 13H.002V9.28zM0 16.013v-1h16v1z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/email.ts b/packages/hiccup-carbon-icons/src/email.ts index f141fee693..4dfa19ccad 100644 --- a/packages/hiccup-carbon-icons/src/email.ts +++ b/packages/hiccup-carbon-icons/src/email.ts @@ -1,7 +1,12 @@ -export const EMAIL = - ["svg", { viewBox: "0 0 16 11" }, - ["path", - { - "fill-rule": "nonzero", - d: "M2.028 1l5.977 4.38L13.974 1H2.028zM15 1.487L8.3 6.403a.5.5 0 0 1-.59 0L1 1.486V10h14V1.487zM1 0h14a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1z", - }]]; +export const EMAIL = [ + "svg", + { viewBox: "0 0 16 11" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M2.028 1l5.977 4.38L13.974 1H2.028zM15 1.487L8.3 6.403a.5.5 0 0 1-.59 0L1 1.486V10h14V1.487zM1 0h14a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/error-outline.ts b/packages/hiccup-carbon-icons/src/error-outline.ts index 5a5f760bab..4400d87d82 100644 --- a/packages/hiccup-carbon-icons/src/error-outline.ts +++ b/packages/hiccup-carbon-icons/src/error-outline.ts @@ -1,7 +1,12 @@ -export const ERROR_OUTLINE = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "nonzero", - d: "M2.751 4.165a6.5 6.5 0 0 0 9.084 9.084L2.75 4.165zm1.414-1.414l9.084 9.084A6.5 6.5 0 0 0 4.165 2.75zM8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16z", - }]]; +export const ERROR_OUTLINE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M2.751 4.165a6.5 6.5 0 0 0 9.084 9.084L2.75 4.165zm1.414-1.414l9.084 9.084A6.5 6.5 0 0 0 4.165 2.75zM8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/error-solid.ts b/packages/hiccup-carbon-icons/src/error-solid.ts index 196b61ae9a..4976a21963 100644 --- a/packages/hiccup-carbon-icons/src/error-solid.ts +++ b/packages/hiccup-carbon-icons/src/error-solid.ts @@ -1,7 +1,12 @@ -export const ERROR_SOLID = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "evenodd", - d: "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zM3.293 4.707l8 8 1.414-1.414-8-8-1.414 1.414z", - }]]; +export const ERROR_SOLID = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zM3.293 4.707l8 8 1.414-1.414-8-8-1.414 1.414z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/error.ts b/packages/hiccup-carbon-icons/src/error.ts index c3cc9dc041..dbd5e5b6fc 100644 --- a/packages/hiccup-carbon-icons/src/error.ts +++ b/packages/hiccup-carbon-icons/src/error.ts @@ -1,7 +1,12 @@ -export const ERROR = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "evenodd", - d: "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zM4 4.65L11.35 12l.65-.65L4.65 4 4 4.65z", - }]]; +export const ERROR = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zM4 4.65L11.35 12l.65-.65L4.65 4 4 4.65z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/favorite-outline.ts b/packages/hiccup-carbon-icons/src/favorite-outline.ts index c27ca57b0a..68dc4080b7 100644 --- a/packages/hiccup-carbon-icons/src/favorite-outline.ts +++ b/packages/hiccup-carbon-icons/src/favorite-outline.ts @@ -1,7 +1,14 @@ -export const FAVORITE_OUTLINE = - ["svg", +export const FAVORITE_OUTLINE = [ + "svg", + { + viewBox: "0 0 16 14", + "data-name": "Layer 1", + }, + [ + "path", { - viewBox: "0 0 16 14", - "data-name": "Layer 1", + d: + "M11.58 1a3.41 3.41 0 0 1 2.21 6L8 12.49 2.15 7a3.42 3.42 0 1 1 5-4.55L8 3.54l.81-1.12A3.43 3.43 0 0 1 11.58 1m0-1A4.39 4.39 0 0 0 8 1.84a4.41 4.41 0 1 0-6.51 5.88L8 13.87l6.46-6.08A4.42 4.42 0 0 0 11.58 0z", }, - ["path", { d: "M11.58 1a3.41 3.41 0 0 1 2.21 6L8 12.49 2.15 7a3.42 3.42 0 1 1 5-4.55L8 3.54l.81-1.12A3.43 3.43 0 0 1 11.58 1m0-1A4.39 4.39 0 0 0 8 1.84a4.41 4.41 0 1 0-6.51 5.88L8 13.87l6.46-6.08A4.42 4.42 0 0 0 11.58 0z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/favorite-solid.ts b/packages/hiccup-carbon-icons/src/favorite-solid.ts index 501c30741c..df8c761088 100644 --- a/packages/hiccup-carbon-icons/src/favorite-solid.ts +++ b/packages/hiccup-carbon-icons/src/favorite-solid.ts @@ -1,7 +1,14 @@ -export const FAVORITE_SOLID = - ["svg", +export const FAVORITE_SOLID = [ + "svg", + { + viewBox: "0 0 16 14", + "data-name": "Layer 1", + }, + [ + "path", { - viewBox: "0 0 16 14", - "data-name": "Layer 1", + d: + "M1.49 7.72A4.41 4.41 0 1 1 8 1.84a4.42 4.42 0 1 1 6.44 6L8 13.87z", }, - ["path", { d: "M1.49 7.72A4.41 4.41 0 1 1 8 1.84a4.42 4.42 0 1 1 6.44 6L8 13.87z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/favorite.ts b/packages/hiccup-carbon-icons/src/favorite.ts index ef0ae74711..b79de5f95b 100644 --- a/packages/hiccup-carbon-icons/src/favorite.ts +++ b/packages/hiccup-carbon-icons/src/favorite.ts @@ -1,7 +1,14 @@ -export const FAVORITE = - ["svg", +export const FAVORITE = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 16 15", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 16 15", + d: + "M8.109 11.75l-4.5 3.2c-.2.1-.5 0-.4-.3l1.5-5.1-4.6-3.2c-.2-.2-.1-.5.1-.5l5.5-.5 2-5.2c.1-.2.4-.2.5 0l2 5.2 5.5.5c.2 0 .3.3.1.4l-4.5 3.3 1.5 5.1c.1.2-.2.4-.4.3l-4.3-3.2z", }, - ["path", { d: "M8.109 11.75l-4.5 3.2c-.2.1-.5 0-.4-.3l1.5-5.1-4.6-3.2c-.2-.2-.1-.5.1-.5l5.5-.5 2-5.2c.1-.2.4-.2.5 0l2 5.2 5.5.5c.2 0 .3.3.1.4l-4.5 3.3 1.5 5.1c.1.2-.2.4-.4.3l-4.3-3.2z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/filter.ts b/packages/hiccup-carbon-icons/src/filter.ts index 133a1e4e26..6c511bf74a 100644 --- a/packages/hiccup-carbon-icons/src/filter.ts +++ b/packages/hiccup-carbon-icons/src/filter.ts @@ -1,4 +1,15 @@ -export const FILTER = - ["svg", { viewBox: "0 0 16 12" }, - ["g", { "fill-rule": "nonzero" }, - ["path", { d: "M8.05 2a2.5 2.5 0 0 1 4.9 0H16v1h-3.05a2.5 2.5 0 0 1-4.9 0H0V2h8.05zm2.45 2a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zM3.05 9a2.5 2.5 0 0 1 4.9 0H16v1H7.95a2.5 2.5 0 0 1-4.9 0H0V9h3.05zm2.45 2a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z" }]]]; +export const FILTER = [ + "svg", + { viewBox: "0 0 16 12" }, + [ + "g", + { "fill-rule": "nonzero" }, + [ + "path", + { + d: + "M8.05 2a2.5 2.5 0 0 1 4.9 0H16v1h-3.05a2.5 2.5 0 0 1-4.9 0H0V2h8.05zm2.45 2a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zM3.05 9a2.5 2.5 0 0 1 4.9 0H16v1H7.95a2.5 2.5 0 0 1-4.9 0H0V9h3.05zm2.45 2a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/finance.ts b/packages/hiccup-carbon-icons/src/finance.ts index e7150ed116..0651ea81ef 100644 --- a/packages/hiccup-carbon-icons/src/finance.ts +++ b/packages/hiccup-carbon-icons/src/finance.ts @@ -1,3 +1,11 @@ -export const FINANCE = - ["svg", { viewBox: "4 -4 24 24" }, - ["path", { d: "M21 14h1V4h-1v10zm3 0h1V4h-1v10zM27 .7L16-2.9 5 .7V2h22V.7zm1-.7v3H4V0l12-4 12 4zM5 19h22v-3H5v3zm23-3v3c0 .6-.4 1-1 1H5c-.6 0-1-.4-1-1v-3c0-.6.4-1 1-1h22c.6 0 1 .4 1 1zm-18-2h1V4h-1v10zm-3 0h1V4H7v10z" }]]; +export const FINANCE = [ + "svg", + { viewBox: "4 -4 24 24" }, + [ + "path", + { + d: + "M21 14h1V4h-1v10zm3 0h1V4h-1v10zM27 .7L16-2.9 5 .7V2h22V.7zm1-.7v3H4V0l12-4 12 4zM5 19h22v-3H5v3zm23-3v3c0 .6-.4 1-1 1H5c-.6 0-1-.4-1-1v-3c0-.6.4-1 1-1h22c.6 0 1 .4 1 1zm-18-2h1V4h-1v10zm-3 0h1V4H7v10z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/financial.ts b/packages/hiccup-carbon-icons/src/financial.ts index d0f088bf8e..df3a7fb13a 100644 --- a/packages/hiccup-carbon-icons/src/financial.ts +++ b/packages/hiccup-carbon-icons/src/financial.ts @@ -1,3 +1,11 @@ -export const FINANCIAL = - ["svg", { viewBox: "4 -4 24 24" }, - ["path", { d: "M21 14h1V4h-1v10zm3 0h1V4h-1v10zM27 .7L16-2.9 5 .7V2h22V.7zm1-.7v3H4V0l12-4 12 4zM5 19h22v-3H5v3zm23-3v3c0 .6-.4 1-1 1H5c-.6 0-1-.4-1-1v-3c0-.6.4-1 1-1h22c.6 0 1 .4 1 1zm-18-2h1V4h-1v10zm-3 0h1V4H7v10z" }]]; +export const FINANCIAL = [ + "svg", + { viewBox: "4 -4 24 24" }, + [ + "path", + { + d: + "M21 14h1V4h-1v10zm3 0h1V4h-1v10zM27 .7L16-2.9 5 .7V2h22V.7zm1-.7v3H4V0l12-4 12 4zM5 19h22v-3H5v3zm23-3v3c0 .6-.4 1-1 1H5c-.6 0-1-.4-1-1v-3c0-.6.4-1 1-1h22c.6 0 1 .4 1 1zm-18-2h1V4h-1v10zm-3 0h1V4H7v10z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/folder-add.ts b/packages/hiccup-carbon-icons/src/folder-add.ts index 9902b00191..19d4bb95f4 100644 --- a/packages/hiccup-carbon-icons/src/folder-add.ts +++ b/packages/hiccup-carbon-icons/src/folder-add.ts @@ -1,7 +1,12 @@ -export const FOLDER_ADD = - ["svg", { viewBox: "0 0 14 12" }, - ["path", - { - "fill-rule": "nonzero", - d: "M13 12H1a1 1 0 0 1-1-1V1.001a1 1 0 0 1 1.002-1l2.293.005a1 1 0 0 1 .704.291L5.707 2H13a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1zm0-9H5.707A1 1 0 0 1 5 2.708L3.293 1.006 1 1V11h12V3z", - }]]; +export const FOLDER_ADD = [ + "svg", + { viewBox: "0 0 14 12" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M13 12H1a1 1 0 0 1-1-1V1.001a1 1 0 0 1 1.002-1l2.293.005a1 1 0 0 1 .704.291L5.707 2H13a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1zm0-9H5.707A1 1 0 0 1 5 2.708L3.293 1.006 1 1V11h12V3z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/folder.ts b/packages/hiccup-carbon-icons/src/folder.ts index bc96e9cefa..510650c069 100644 --- a/packages/hiccup-carbon-icons/src/folder.ts +++ b/packages/hiccup-carbon-icons/src/folder.ts @@ -1,7 +1,12 @@ -export const FOLDER = - ["svg", { viewBox: "0 0 14 12" }, - ["path", - { - "fill-rule": "nonzero", - d: "M13 12H1a1 1 0 0 1-1-1V1.001a1 1 0 0 1 1.002-1l2.293.005a1 1 0 0 1 .704.291L5.707 2H13a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1zm0-9H5.707A1 1 0 0 1 5 2.708L3.293 1.006 1 1V11h12V3z", - }]]; +export const FOLDER = [ + "svg", + { viewBox: "0 0 14 12" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M13 12H1a1 1 0 0 1-1-1V1.001a1 1 0 0 1 1.002-1l2.293.005a1 1 0 0 1 .704.291L5.707 2H13a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1zm0-9H5.707A1 1 0 0 1 5 2.708L3.293 1.006 1 1V11h12V3z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/forum.ts b/packages/hiccup-carbon-icons/src/forum.ts index 5ca40847fe..f6c467f1c0 100644 --- a/packages/hiccup-carbon-icons/src/forum.ts +++ b/packages/hiccup-carbon-icons/src/forum.ts @@ -1,4 +1,12 @@ -export const FORUM = - ["svg", { viewBox: "0 0 16 15" }, - ["path", { d: "M11.7 12l-3 3-.7-.7 3.3-3.3h3.2c.3 0 .5-.2.5-.5v-6c0-.3-.2-.5-.5-.5h-10c-.3 0-.5.2-.5.5v6c0 .3.2.5.5.5H8v1H4.5c-.8 0-1.5-.7-1.5-1.5v-6C3 3.7 3.7 3 4.5 3h10c.8 0 1.5.7 1.5 1.5v6c0 .8-.7 1.5-1.5 1.5h-2.8z" }], - ["path", { d: "M1 8H0V1.5C0 .7.7 0 1.5 0H8v1H1.5c-.3 0-.5.2-.5.5V8z" }]]; +export const FORUM = [ + "svg", + { viewBox: "0 0 16 15" }, + [ + "path", + { + d: + "M11.7 12l-3 3-.7-.7 3.3-3.3h3.2c.3 0 .5-.2.5-.5v-6c0-.3-.2-.5-.5-.5h-10c-.3 0-.5.2-.5.5v6c0 .3.2.5.5.5H8v1H4.5c-.8 0-1.5-.7-1.5-1.5v-6C3 3.7 3.7 3 4.5 3h10c.8 0 1.5.7 1.5 1.5v6c0 .8-.7 1.5-1.5 1.5h-2.8z", + }, + ], + ["path", { d: "M1 8H0V1.5C0 .7.7 0 1.5 0H8v1H1.5c-.3 0-.5.2-.5.5V8z" }], +]; diff --git a/packages/hiccup-carbon-icons/src/functions.ts b/packages/hiccup-carbon-icons/src/functions.ts index 8c319f3812..11b13cb1aa 100644 --- a/packages/hiccup-carbon-icons/src/functions.ts +++ b/packages/hiccup-carbon-icons/src/functions.ts @@ -1,4 +1,18 @@ -export const FUNCTIONS = - ["svg", { viewBox: "0 0 25 25" }, - ["path", { d: "M14.3 24c-.2 0-.5-.2-.5-.4 0-.3.1-.5.4-.6 2.2-.4 4.2-1.4 5.8-3 4.1-4.1 4.2-10.6.4-14.9-.2-.2-.2-.5 0-.7.2-.2.5-.2.7 0 4.2 4.7 4 11.8-.5 16.2-1.6 1.8-3.8 3-6.3 3.4zM3.9 20.4c-.1 0-.3-.1-.4-.2C-.7 15.5-.5 8.4 4 4 5.8 2.2 8 1.1 10.5.7c.3 0 .5.1.6.4 0 .3-.1.5-.4.6-2.3.4-4.3 1.4-5.9 3-4.2 4-4.4 10.6-.6 14.8.2.2.2.5 0 .7-.1.1-.2.2-.3.2z" }], - ["path", { d: "M6.7 24.2c-.6 0-.9-.1-1-.1-.4-.1-.9-.4-.8-1.2.1-.8.5-1 1-1 2.6 0 3-2.8 3-9.3L6.2 12c-.9-.2-.9-1-.9-1.3 0-.4 0-1.2.9-1.4l2.9-.6C9.6 6 10.6 4 12.2 2.6 14.3.8 16.7.5 17.9.5c.6 0 1 .1 1 .1.5.1.8.5.7 1.2 0 .3-.1 1-.9 1-2 0-2.8 1.6-3 6l2.3.5c.9.2.9 1 .9 1.4 0 .4 0 1.2-.9 1.4l-2.4.5c0 4.4-1.1 7.6-3.4 9.6-1.8 1.7-4.3 2-5.5 2zM6 23.1c.5 0 3.4.3 5.8-1.8 2.1-1.8 3.1-4.9 3.1-9v-.6L18 11c.1-.1.1-.3.1-.4v-.4l-3.2-.6v-.4c.1-3.7.5-7.3 3.8-7.4v-.2H18c-1.1 0-3.3.2-5.1 1.8-1.5 1.3-2.5 3.3-2.9 5.9v.2l-3.6.8c-.1 0-.1.3-.1.4v.4l3.5.7v.8c0 5.2 0 10.2-4 10.3v.1c.1.1.1.1.2.1-.1 0-.1 0 0 0z" }]]; +export const FUNCTIONS = [ + "svg", + { viewBox: "0 0 25 25" }, + [ + "path", + { + d: + "M14.3 24c-.2 0-.5-.2-.5-.4 0-.3.1-.5.4-.6 2.2-.4 4.2-1.4 5.8-3 4.1-4.1 4.2-10.6.4-14.9-.2-.2-.2-.5 0-.7.2-.2.5-.2.7 0 4.2 4.7 4 11.8-.5 16.2-1.6 1.8-3.8 3-6.3 3.4zM3.9 20.4c-.1 0-.3-.1-.4-.2C-.7 15.5-.5 8.4 4 4 5.8 2.2 8 1.1 10.5.7c.3 0 .5.1.6.4 0 .3-.1.5-.4.6-2.3.4-4.3 1.4-5.9 3-4.2 4-4.4 10.6-.6 14.8.2.2.2.5 0 .7-.1.1-.2.2-.3.2z", + }, + ], + [ + "path", + { + d: + "M6.7 24.2c-.6 0-.9-.1-1-.1-.4-.1-.9-.4-.8-1.2.1-.8.5-1 1-1 2.6 0 3-2.8 3-9.3L6.2 12c-.9-.2-.9-1-.9-1.3 0-.4 0-1.2.9-1.4l2.9-.6C9.6 6 10.6 4 12.2 2.6 14.3.8 16.7.5 17.9.5c.6 0 1 .1 1 .1.5.1.8.5.7 1.2 0 .3-.1 1-.9 1-2 0-2.8 1.6-3 6l2.3.5c.9.2.9 1 .9 1.4 0 .4 0 1.2-.9 1.4l-2.4.5c0 4.4-1.1 7.6-3.4 9.6-1.8 1.7-4.3 2-5.5 2zM6 23.1c.5 0 3.4.3 5.8-1.8 2.1-1.8 3.1-4.9 3.1-9v-.6L18 11c.1-.1.1-.3.1-.4v-.4l-3.2-.6v-.4c.1-3.7.5-7.3 3.8-7.4v-.2H18c-1.1 0-3.3.2-5.1 1.8-1.5 1.3-2.5 3.3-2.9 5.9v.2l-3.6.8c-.1 0-.1.3-.1.4v.4l3.5.7v.8c0 5.2 0 10.2-4 10.3v.1c.1.1.1.1.2.1-.1 0-.1 0 0 0z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/grid.ts b/packages/hiccup-carbon-icons/src/grid.ts index c22b0f9aa9..795eaa8e4e 100644 --- a/packages/hiccup-carbon-icons/src/grid.ts +++ b/packages/hiccup-carbon-icons/src/grid.ts @@ -1,4 +1,15 @@ -export const GRID = - ["svg", { viewBox: "0 0 15 15" }, - ["g", { "fill-rule": "nonzero" }, - ["path", { d: "M1 1v4h4V1H1zm0-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1zM1 10v4h4v-4H1zm0-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1zM10 1v4h4V1h-4zm0-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1zM10 14h4v-4h-4v4zm0-5h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1z" }]]]; +export const GRID = [ + "svg", + { viewBox: "0 0 15 15" }, + [ + "g", + { "fill-rule": "nonzero" }, + [ + "path", + { + d: + "M1 1v4h4V1H1zm0-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1zM1 10v4h4v-4H1zm0-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1zM10 1v4h4V1h-4zm0-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1zM10 14h4v-4h-4v4zm0-5h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/header-avatar.ts b/packages/hiccup-carbon-icons/src/header-avatar.ts index a519e76499..be6a73c8d0 100644 --- a/packages/hiccup-carbon-icons/src/header-avatar.ts +++ b/packages/hiccup-carbon-icons/src/header-avatar.ts @@ -1,4 +1,18 @@ -export const HEADER_AVATAR = - ["svg", { viewBox: "0 0 20 20" }, - ["path", { d: "M6 15.745A6.968 6.968 0 0 0 10 17a6.968 6.968 0 0 0 4-1.255V15.5a2.5 2.5 0 0 0-2.5-2.5h-3A2.5 2.5 0 0 0 6 15.5v.245zm-.956-.802A3.5 3.5 0 0 1 8.5 12h3a3.5 3.5 0 0 1 3.456 2.943 7 7 0 1 0-9.912 0zM10 18a8 8 0 1 1 0-16 8 8 0 0 1 0 16z" }], - ["path", { d: "M10 10a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm0 1a3 3 0 1 1 0-6 3 3 0 0 1 0 6z" }]]; +export const HEADER_AVATAR = [ + "svg", + { viewBox: "0 0 20 20" }, + [ + "path", + { + d: + "M6 15.745A6.968 6.968 0 0 0 10 17a6.968 6.968 0 0 0 4-1.255V15.5a2.5 2.5 0 0 0-2.5-2.5h-3A2.5 2.5 0 0 0 6 15.5v.245zm-.956-.802A3.5 3.5 0 0 1 8.5 12h3a3.5 3.5 0 0 1 3.456 2.943 7 7 0 1 0-9.912 0zM10 18a8 8 0 1 1 0-16 8 8 0 0 1 0 16z", + }, + ], + [ + "path", + { + d: + "M10 10a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm0 1a3 3 0 1 1 0-6 3 3 0 0 1 0 6z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/header-chevron.ts b/packages/hiccup-carbon-icons/src/header-chevron.ts index bfb1248e33..28911c3f7e 100644 --- a/packages/hiccup-carbon-icons/src/header-chevron.ts +++ b/packages/hiccup-carbon-icons/src/header-chevron.ts @@ -1,7 +1,12 @@ -export const HEADER_CHEVRON = - ["svg", { viewBox: "0 0 20 20" }, - ["path", - { - d: "M6.542 4.945l.707-.707 6.004 6.004-6.004 6.02-.708-.707 5.298-5.312z", - "fill-rule": "nonzero", - }]]; +export const HEADER_CHEVRON = [ + "svg", + { viewBox: "0 0 20 20" }, + [ + "path", + { + d: + "M6.542 4.945l.707-.707 6.004 6.004-6.004 6.02-.708-.707 5.298-5.312z", + "fill-rule": "nonzero", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/header-close.ts b/packages/hiccup-carbon-icons/src/header-close.ts index 08b3cf1f40..020ea19a24 100644 --- a/packages/hiccup-carbon-icons/src/header-close.ts +++ b/packages/hiccup-carbon-icons/src/header-close.ts @@ -1,7 +1,12 @@ -export const HEADER_CLOSE = - ["svg", { viewBox: "0 0 20 20" }, - ["path", - { - "fill-rule": "nonzero", - d: "M10 9.293l4.146-4.147.708.708L10.707 10l4.147 4.146-.708.708L10 10.707l-4.146 4.147-.708-.708L9.293 10 5.146 5.854l.708-.708L10 9.293z", - }]]; +export const HEADER_CLOSE = [ + "svg", + { viewBox: "0 0 20 20" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M10 9.293l4.146-4.147.708.708L10.707 10l4.147 4.146-.708.708L10 10.707l-4.146 4.147-.708-.708L9.293 10 5.146 5.854l.708-.708L10 9.293z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/header-contact.ts b/packages/hiccup-carbon-icons/src/header-contact.ts index 5687d9ff97..27cd938138 100644 --- a/packages/hiccup-carbon-icons/src/header-contact.ts +++ b/packages/hiccup-carbon-icons/src/header-contact.ts @@ -1,7 +1,14 @@ -export const HEADER_CONTACT = - ["svg", +export const HEADER_CONTACT = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 12 12", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 12 12", + d: + "M10.563 1.4c-1-.9-2.2-1.4-3.5-1.4-1.3 0-2.5.5-3.4 1.4-.9.9-1.3 2-1.4 3.2-.5.1-1 .4-1.4.8-1.2 1.2-1.1 3 0 4.2.5.7 2.1 2.4 2.1 2.4v-1.5c.8 0 1.5-.3 2.1-.9.1-.1.1-.2.2-.2.5.2 1 .3 1.4.4V12l3.8-3.7c2-1.9 2-5 .1-6.9zm-1.1 5.9c-.6.6-1.5 1-2.4 1-.4 0-.8-.1-1.2-.2.2-.9-.1-1.9-.8-2.6-.4-.4-.8-.6-1.3-.8.1-.8.4-1.6 1-2.1.6-.6 1.5-1 2.4-1 .9 0 1.7.4 2.4 1 .6.6 1 1.5 1 2.4-.1.8-.5 1.6-1.1 2.3z", }, - ["path", { d: "M10.563 1.4c-1-.9-2.2-1.4-3.5-1.4-1.3 0-2.5.5-3.4 1.4-.9.9-1.3 2-1.4 3.2-.5.1-1 .4-1.4.8-1.2 1.2-1.1 3 0 4.2.5.7 2.1 2.4 2.1 2.4v-1.5c.8 0 1.5-.3 2.1-.9.1-.1.1-.2.2-.2.5.2 1 .3 1.4.4V12l3.8-3.7c2-1.9 2-5 .1-6.9zm-1.1 5.9c-.6.6-1.5 1-2.4 1-.4 0-.8-.1-1.2-.2.2-.9-.1-1.9-.8-2.6-.4-.4-.8-.6-1.3-.8.1-.8.4-1.6 1-2.1.6-.6 1.5-1 2.4-1 .9 0 1.7.4 2.4 1 .6.6 1 1.5 1 2.4-.1.8-.5 1.6-1.1 2.3z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/header-docs.ts b/packages/hiccup-carbon-icons/src/header-docs.ts index e6d89c616c..72f231c4bb 100644 --- a/packages/hiccup-carbon-icons/src/header-docs.ts +++ b/packages/hiccup-carbon-icons/src/header-docs.ts @@ -1,9 +1,17 @@ -export const HEADER_DOCS = - ["svg", { viewBox: "0 0 20 20" }, - ["g", { "fill-rule": "evenodd" }, - ["path", - { - "fill-rule": "nonzero", - d: "M5 2h7l4 4v11a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1zm6.586 1H5v14h10V6.414L11.586 3zm3.41 2.997L16 7l-3.963-.012a1 1 0 0 1-.997-.99L11 2l1.01 1.01.03 2.978 2.957.009zM16 7l-3.963-.012a1 1 0 0 1-.997-.99L11 2l1.01 1.01.03 2.978 2.957.009L16 7z", - }], - ["path", { d: "M7 11h6v1H7zM7 14h6v1H7z" }]]]; +export const HEADER_DOCS = [ + "svg", + { viewBox: "0 0 20 20" }, + [ + "g", + { "fill-rule": "evenodd" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M5 2h7l4 4v11a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1zm6.586 1H5v14h10V6.414L11.586 3zm3.41 2.997L16 7l-3.963-.012a1 1 0 0 1-.997-.99L11 2l1.01 1.01.03 2.978 2.957.009zM16 7l-3.963-.012a1 1 0 0 1-.997-.99L11 2l1.01 1.01.03 2.978 2.957.009L16 7z", + }, + ], + ["path", { d: "M7 11h6v1H7zM7 14h6v1H7z" }], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/header-hamburger.ts b/packages/hiccup-carbon-icons/src/header-hamburger.ts index 5f1d28ee18..847aeac19d 100644 --- a/packages/hiccup-carbon-icons/src/header-hamburger.ts +++ b/packages/hiccup-carbon-icons/src/header-hamburger.ts @@ -1,4 +1,9 @@ -export const HEADER_HAMBURGER = - ["svg", { viewBox: "0 0 20 20" }, - ["g", { "fill-rule": "evenodd" }, - ["path", { d: "M3 4h14v1H3zM3 10h14v1H3zM3 16h14v1H3z" }]]]; +export const HEADER_HAMBURGER = [ + "svg", + { viewBox: "0 0 20 20" }, + [ + "g", + { "fill-rule": "evenodd" }, + ["path", { d: "M3 4h14v1H3zM3 10h14v1H3zM3 16h14v1H3z" }], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/header-help.ts b/packages/hiccup-carbon-icons/src/header-help.ts index 53dcdd5c9d..a407d64299 100644 --- a/packages/hiccup-carbon-icons/src/header-help.ts +++ b/packages/hiccup-carbon-icons/src/header-help.ts @@ -1,15 +1,31 @@ -export const HEADER_HELP = - ["svg", { viewBox: "0 0 20 20" }, - ["g", { "fill-rule": "evenodd" }, - ["path", - { - "fill-rule": "nonzero", - d: "M10 17a7 7 0 1 0 0-14 7 7 0 0 0 0 14zm0 1a8 8 0 1 1 0-16 8 8 0 0 1 0 16z", - }], - ["circle", - { - r: 1, - cy: 14, - cx: 10, - }], - ["path", { d: "M10.5 10.5V12h-1V9.5h1a1.5 1.5 0 0 0 0-3h-1A1.5 1.5 0 0 0 8 8H7a2.5 2.5 0 0 1 2.5-2.5h1a2.5 2.5 0 1 1 0 5z" }]]]; +export const HEADER_HELP = [ + "svg", + { viewBox: "0 0 20 20" }, + [ + "g", + { "fill-rule": "evenodd" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M10 17a7 7 0 1 0 0-14 7 7 0 0 0 0 14zm0 1a8 8 0 1 1 0-16 8 8 0 0 1 0 16z", + }, + ], + [ + "circle", + { + r: 1, + cy: 14, + cx: 10, + }, + ], + [ + "path", + { + d: + "M10.5 10.5V12h-1V9.5h1a1.5 1.5 0 0 0 0-3h-1A1.5 1.5 0 0 0 8 8H7a2.5 2.5 0 0 1 2.5-2.5h1a2.5 2.5 0 1 1 0 5z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/header-notification.ts b/packages/hiccup-carbon-icons/src/header-notification.ts index fe7f2ff587..c1c1143324 100644 --- a/packages/hiccup-carbon-icons/src/header-notification.ts +++ b/packages/hiccup-carbon-icons/src/header-notification.ts @@ -1,7 +1,12 @@ -export const HEADER_NOTIFICATION = - ["svg", { viewBox: "0 0 20 20" }, - ["path", - { - "fill-rule": "nonzero", - d: "M7.17 17H2.5a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 1 .146-.354L4 12.293V9a6 6 0 0 1 5.5-5.98V1h1v2.02A6 6 0 0 1 16 9v3.293l1.854 1.853A.5.5 0 0 1 18 14.5v2a.5.5 0 0 1-.5.5h-4.67a3.001 3.001 0 0 1-5.66 0zm1.098 0a2 2 0 0 0 3.464 0H8.268zM13 16h4v-1.293l-1.854-1.853A.5.5 0 0 1 15 12.5V9A5 5 0 0 0 5 9v3.5a.5.5 0 0 1-.146.354L3 14.707V16h10z", - }]]; +export const HEADER_NOTIFICATION = [ + "svg", + { viewBox: "0 0 20 20" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M7.17 17H2.5a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 1 .146-.354L4 12.293V9a6 6 0 0 1 5.5-5.98V1h1v2.02A6 6 0 0 1 16 9v3.293l1.854 1.853A.5.5 0 0 1 18 14.5v2a.5.5 0 0 1-.5.5h-4.67a3.001 3.001 0 0 1-5.66 0zm1.098 0a2 2 0 0 0 3.464 0H8.268zM13 16h4v-1.293l-1.854-1.853A.5.5 0 0 1 15 12.5V9A5 5 0 0 0 5 9v3.5a.5.5 0 0 1-.146.354L3 14.707V16h10z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/header-search.ts b/packages/hiccup-carbon-icons/src/header-search.ts index 319922aae3..1c7aa7bb2b 100644 --- a/packages/hiccup-carbon-icons/src/header-search.ts +++ b/packages/hiccup-carbon-icons/src/header-search.ts @@ -1,7 +1,12 @@ -export const HEADER_SEARCH = - ["svg", { viewBox: "0 0 20 20" }, - ["path", - { - "fill-rule": "nonzero", - d: "M8.5 14a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11zm4.936-1.27l4.418 4.416-.708.708-4.417-4.418a6.5 6.5 0 1 1 .707-.707z", - }]]; +export const HEADER_SEARCH = [ + "svg", + { viewBox: "0 0 20 20" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M8.5 14a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11zm4.936-1.27l4.418 4.416-.708.708-4.417-4.418a6.5 6.5 0 1 1 .707-.707z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/header-ticket.ts b/packages/hiccup-carbon-icons/src/header-ticket.ts index 2106b4bf19..6991c8c78f 100644 --- a/packages/hiccup-carbon-icons/src/header-ticket.ts +++ b/packages/hiccup-carbon-icons/src/header-ticket.ts @@ -1,7 +1,14 @@ -export const HEADER_TICKET = - ["svg", +export const HEADER_TICKET = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 14 14", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 14 14", + d: + "M5.5 3l3-3 1.4 1.4c-.8.8-.8 2 0 2.8.8.8 2 .8 2.8 0L14 5.6 5.6 14l-1.4-1.3c.8-.8.8-2 0-2.8-.8-.8-2-.8-2.8 0L0 8.5l5-5c0 .3.2.5.5.5s.5-.2.5-.5-.2-.5-.5-.5zm2 3c.3 0 .5-.2.5-.5S7.8 5 7.5 5s-.5.2-.5.5.2.5.5.5zm-1-1c.3 0 .5-.2.5-.5S6.8 4 6.5 4s-.5.2-.5.5.2.5.5.5zm2 2c.3 0 .5-.2.5-.5S8.8 6 8.5 6s-.5.2-.5.5.2.5.5.5zm1 1c.3 0 .5-.2.5-.5S9.8 7 9.5 7s-.5.2-.5.5.2.5.5.5zm1 1c.3 0 .5-.2.5-.5s-.2-.5-.5-.5-.5.2-.5.5.2.5.5.5z", }, - ["path", { d: "M5.5 3l3-3 1.4 1.4c-.8.8-.8 2 0 2.8.8.8 2 .8 2.8 0L14 5.6 5.6 14l-1.4-1.3c.8-.8.8-2 0-2.8-.8-.8-2-.8-2.8 0L0 8.5l5-5c0 .3.2.5.5.5s.5-.2.5-.5-.2-.5-.5-.5zm2 3c.3 0 .5-.2.5-.5S7.8 5 7.5 5s-.5.2-.5.5.2.5.5.5zm-1-1c.3 0 .5-.2.5-.5S6.8 4 6.5 4s-.5.2-.5.5.2.5.5.5zm2 2c.3 0 .5-.2.5-.5S8.8 6 8.5 6s-.5.2-.5.5.2.5.5.5zm1 1c.3 0 .5-.2.5-.5S9.8 7 9.5 7s-.5.2-.5.5.2.5.5.5zm1 1c.3 0 .5-.2.5-.5s-.2-.5-.5-.5-.5.2-.5.5.2.5.5.5z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/header-user.ts b/packages/hiccup-carbon-icons/src/header-user.ts index 5442d97d57..0e209b8659 100644 --- a/packages/hiccup-carbon-icons/src/header-user.ts +++ b/packages/hiccup-carbon-icons/src/header-user.ts @@ -1,4 +1,15 @@ -export const HEADER_USER = - ["svg", { viewBox: "0 0 20 20" }, - ["g", { "fill-rule": "nonzero" }, - ["path", { d: "M10 9a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 1a4 4 0 1 1 0-8 4 4 0 0 1 0 8zM5 18H4v-2.48a4.5 4.5 0 0 1 4.5-4.5l3.022.014a4.5 4.5 0 0 1 4.478 4.5V18h-1v-2.466a3.5 3.5 0 0 0-3.483-3.5l-3-.015A3.504 3.504 0 0 0 5 15.52V18z" }]]]; +export const HEADER_USER = [ + "svg", + { viewBox: "0 0 20 20" }, + [ + "g", + { "fill-rule": "nonzero" }, + [ + "path", + { + d: + "M10 9a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 1a4 4 0 1 1 0-8 4 4 0 0 1 0 8zM5 18H4v-2.48a4.5 4.5 0 0 1 4.5-4.5l3.022.014a4.5 4.5 0 0 1 4.478 4.5V18h-1v-2.466a3.5 3.5 0 0 0-3.483-3.5l-3-.015A3.504 3.504 0 0 0 5 15.52V18z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/help-outline.ts b/packages/hiccup-carbon-icons/src/help-outline.ts index 5398447ac7..9812c25b72 100644 --- a/packages/hiccup-carbon-icons/src/help-outline.ts +++ b/packages/hiccup-carbon-icons/src/help-outline.ts @@ -1,19 +1,32 @@ -export const HELP_OUTLINE = - ["svg", { viewBox: "0 0 16 16" }, - ["g", { "fill-rule": "evenodd" }, - ["path", - { - "fill-rule": "nonzero", - d: "M8 14.5a6.5 6.5 0 1 0 0-13 6.5 6.5 0 0 0 0 13zM8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16z", - }], - ["path", - { - "fill-rule": "nonzero", - d: "M8.75 9.364V10.5h-1.5V7.863h1.5A1.682 1.682 0 0 0 8.678 4.5h-.996C6.753 4.5 6 5.253 6 6.182H4.5A3.182 3.182 0 0 1 7.682 3h.996a3.182 3.182 0 0 1 .072 6.364z", - }], - ["circle", - { - r: 1, - cy: 13, - cx: 8, - }]]]; +export const HELP_OUTLINE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "g", + { "fill-rule": "evenodd" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M8 14.5a6.5 6.5 0 1 0 0-13 6.5 6.5 0 0 0 0 13zM8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16z", + }, + ], + [ + "path", + { + "fill-rule": "nonzero", + d: + "M8.75 9.364V10.5h-1.5V7.863h1.5A1.682 1.682 0 0 0 8.678 4.5h-.996C6.753 4.5 6 5.253 6 6.182H4.5A3.182 3.182 0 0 1 7.682 3h.996a3.182 3.182 0 0 1 .072 6.364z", + }, + ], + [ + "circle", + { + r: 1, + cy: 13, + cx: 8, + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/help-solid.ts b/packages/hiccup-carbon-icons/src/help-solid.ts index 37f4cf7e61..b7481d9e69 100644 --- a/packages/hiccup-carbon-icons/src/help-solid.ts +++ b/packages/hiccup-carbon-icons/src/help-solid.ts @@ -1,7 +1,12 @@ -export const HELP_SOLID = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "evenodd", - d: "M8.75 9.364A3.182 3.182 0 0 0 8.678 3h-.996A3.182 3.182 0 0 0 4.5 6.182H6C6 5.253 6.753 4.5 7.682 4.5h.996a1.682 1.682 0 0 1 .072 3.363h-1.5V10.5h1.5V9.364zM8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zm0-2a1 1 0 1 0 0-2 1 1 0 0 0 0 2z", - }]]; +export const HELP_SOLID = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M8.75 9.364A3.182 3.182 0 0 0 8.678 3h-.996A3.182 3.182 0 0 0 4.5 6.182H6C6 5.253 6.753 4.5 7.682 4.5h.996a1.682 1.682 0 0 1 .072 3.363h-1.5V10.5h1.5V9.364zM8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zm0-2a1 1 0 1 0 0-2 1 1 0 0 0 0 2z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/help.ts b/packages/hiccup-carbon-icons/src/help.ts index 2b7b81ae00..d0173f6c4a 100644 --- a/packages/hiccup-carbon-icons/src/help.ts +++ b/packages/hiccup-carbon-icons/src/help.ts @@ -1,8 +1,21 @@ -export const HELP = - ["svg", +export const HELP = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 24", + d: + "M12 2c5.5 0 10 4.5 10 10s-4.5 10-10 10S2 17.5 2 12 6.5 2 12 2zm0-2C5.4 0 0 5.4 0 12s5.4 12 12 12 12-5.4 12-12S18.6 0 12 0z", }, - ["path", { d: "M12 2c5.5 0 10 4.5 10 10s-4.5 10-10 10S2 17.5 2 12 6.5 2 12 2zm0-2C5.4 0 0 5.4 0 12s5.4 12 12 12 12-5.4 12-12S18.6 0 12 0z" }], - ["path", { d: "M8.3 10c.2-2 1.5-3.5 3.7-3.5 2.8 0 3.7 1.8 3.7 2.9 0 2.9-2.5 2.5-2.7 4.3V15h-2v-1c.2-2.6 2.4-2.8 2.3-4.4 0-.9-.5-1.3-1.3-1.3-1 0-1.5.8-1.5 1.7H8.3zm2.7 6h2v2h-2v-2z" }]]; + ], + [ + "path", + { + d: + "M8.3 10c.2-2 1.5-3.5 3.7-3.5 2.8 0 3.7 1.8 3.7 2.9 0 2.9-2.5 2.5-2.7 4.3V15h-2v-1c.2-2.6 2.4-2.8 2.3-4.4 0-.9-.5-1.3-1.3-1.3-1 0-1.5.8-1.5 1.7H8.3zm2.7 6h2v2h-2v-2z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/hpa-stress.ts b/packages/hiccup-carbon-icons/src/hpa-stress.ts index 4a74523c98..0b6a865ee4 100644 --- a/packages/hiccup-carbon-icons/src/hpa-stress.ts +++ b/packages/hiccup-carbon-icons/src/hpa-stress.ts @@ -1,7 +1,12 @@ -export const HPA_STRESS = - ["svg", { viewBox: "0 0 24 22" }, - ["path", - { - "fill-rule": "evenodd", - d: "M18 20.975V16h4.975A5.5 5.5 0 0 1 18 20.975zm-4.02-9.7A5.499 5.499 0 0 1 22.975 15h-5.268l-3.726-3.725zM17 16v4.975a5.498 5.498 0 0 1-3.726-8.993L17 15.707V16zM6.9 17.973L10 11H7V5l-4 9h3v3.973H1.027V5H14v5.03a6.486 6.486 0 0 0-2.51 7.943H6.9zM15 5h5.973v5.012A6.462 6.462 0 0 0 17.5 9c-.887 0-1.73.18-2.5.5V5zm7 5.817V1a1 1 0 0 0-1-1H1a1 1 0 0 0-1 1v17a1 1 0 0 0 1 1h5v1l.444-1h5.584a6.498 6.498 0 0 0 6.618 2.902c2.63-.45 4.764-2.558 5.243-5.18a6.5 6.5 0 0 0-1.89-5.905z", - }]]; +export const HPA_STRESS = [ + "svg", + { viewBox: "0 0 24 22" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M18 20.975V16h4.975A5.5 5.5 0 0 1 18 20.975zm-4.02-9.7A5.499 5.499 0 0 1 22.975 15h-5.268l-3.726-3.725zM17 16v4.975a5.498 5.498 0 0 1-3.726-8.993L17 15.707V16zM6.9 17.973L10 11H7V5l-4 9h3v3.973H1.027V5H14v5.03a6.486 6.486 0 0 0-2.51 7.943H6.9zM15 5h5.973v5.012A6.462 6.462 0 0 0 17.5 9c-.887 0-1.73.18-2.5.5V5zm7 5.817V1a1 1 0 0 0-1-1H1a1 1 0 0 0-1 1v17a1 1 0 0 0 1 1h5v1l.444-1h5.584a6.498 6.498 0 0 0 6.618 2.902c2.63-.45 4.764-2.558 5.243-5.18a6.5 6.5 0 0 0-1.89-5.905z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/hpa.ts b/packages/hiccup-carbon-icons/src/hpa.ts index 4b73cf1cd1..1f67a3dec0 100644 --- a/packages/hiccup-carbon-icons/src/hpa.ts +++ b/packages/hiccup-carbon-icons/src/hpa.ts @@ -1,7 +1,12 @@ -export const HPA = - ["svg", { viewBox: "0 0 24 22" }, - ["path", - { - "fill-rule": "evenodd", - d: "M21.992 18.666l-.03.04a5.479 5.479 0 0 1-4 2.27V16.04L18 16h4.974c-.088.988-.44 1.9-.982 2.666zm-8.004-7.385c.015-.01.026-.027.04-.04.052-.04.11-.073.162-.112a5.458 5.458 0 0 1 3.31-1.128c1.293 0 2.467.463 3.405 1.21.138.11.277.217.403.34.11.104.206.22.307.336.113.13.23.254.33.392.566.78.94 1.71 1.03 2.722h-5.267l-3.72-3.72zM17 16v4.975a5.504 5.504 0 0 1-4.125-2.506c-.035-.058-.065-.117-.1-.175a5.463 5.463 0 0 1 .495-6.307l.005-.006L17 15.707V16zm-9 1.973V12h4.028a6.481 6.481 0 0 0-.538 5.973H8zM1.027 11H7V5H1.027v6zm0 6.973H7V12H1.027v5.973zM8 5h6v5.028c-.433.278-.83.603-1.184.972H8V5zm12.972 0v5.012A6.456 6.456 0 0 0 17.5 9a6.5 6.5 0 0 0-2.5.5V5h5.972zM22 10.816V1a1 1 0 0 0-1-1H1a1 1 0 0 0-1 1v17a1 1 0 0 0 1 1h11.028a6.494 6.494 0 0 0 6.618 2.9c2.63-.448 4.764-2.556 5.242-5.18A6.494 6.494 0 0 0 22 10.816z", - }]]; +export const HPA = [ + "svg", + { viewBox: "0 0 24 22" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M21.992 18.666l-.03.04a5.479 5.479 0 0 1-4 2.27V16.04L18 16h4.974c-.088.988-.44 1.9-.982 2.666zm-8.004-7.385c.015-.01.026-.027.04-.04.052-.04.11-.073.162-.112a5.458 5.458 0 0 1 3.31-1.128c1.293 0 2.467.463 3.405 1.21.138.11.277.217.403.34.11.104.206.22.307.336.113.13.23.254.33.392.566.78.94 1.71 1.03 2.722h-5.267l-3.72-3.72zM17 16v4.975a5.504 5.504 0 0 1-4.125-2.506c-.035-.058-.065-.117-.1-.175a5.463 5.463 0 0 1 .495-6.307l.005-.006L17 15.707V16zm-9 1.973V12h4.028a6.481 6.481 0 0 0-.538 5.973H8zM1.027 11H7V5H1.027v6zm0 6.973H7V12H1.027v5.973zM8 5h6v5.028c-.433.278-.83.603-1.184.972H8V5zm12.972 0v5.012A6.456 6.456 0 0 0 17.5 9a6.5 6.5 0 0 0-2.5.5V5h5.972zM22 10.816V1a1 1 0 0 0-1-1H1a1 1 0 0 0-1 1v17a1 1 0 0 0 1 1h11.028a6.494 6.494 0 0 0 6.618 2.9c2.63-.448 4.764-2.556 5.242-5.18A6.494 6.494 0 0 0 22 10.816z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/index.ts b/packages/hiccup-carbon-icons/src/index.ts index 39abc1c019..ff2b3f5a71 100644 --- a/packages/hiccup-carbon-icons/src/index.ts +++ b/packages/hiccup-carbon-icons/src/index.ts @@ -1,145 +1,145 @@ -export * from "./add-outline" -export * from "./add-solid" -export * from "./add" -export * from "./api" -export * from "./app-services" -export * from "./applications" -export * from "./apps" -export * from "./arrow-down" -export * from "./arrow-left" -export * from "./arrow-right" -export * from "./arrow-up" -export * from "./arrows" -export * from "./asleep" -export * from "./attachment" -export * from "./awake" -export * from "./back-to-top" -export * from "./block-chain" -export * from "./calendar" -export * from "./caret-down" -export * from "./caret-left" -export * from "./caret-right" -export * from "./caret-up" -export * from "./cf-apps" -export * from "./chat" -export * from "./checkmark-outline" -export * from "./checkmark-solid" -export * from "./checkmark" -export * from "./chevron-down" -export * from "./chevron-left" -export * from "./chevron-right" -export * from "./chevron-up" -export * from "./close-outline" -export * from "./close-solid" -export * from "./close" -export * from "./cloud-foundry" -export * from "./code" -export * from "./console" -export * from "./containers" -export * from "./copy" -export * from "./crash" -export * from "./dashboard" -export * from "./data" -export * from "./delete" -export * from "./devices" -export * from "./devops" -export * from "./document" -export * from "./dollars" -export * from "./download" -export * from "./draggable" -export * from "./edit" -export * from "./email" -export * from "./error-outline" -export * from "./error-solid" -export * from "./error" -export * from "./favorite-outline" -export * from "./favorite-solid" -export * from "./favorite" -export * from "./filter" -export * from "./finance" -export * from "./financial" -export * from "./folder-add" -export * from "./folder" -export * from "./forum" -export * from "./functions" -export * from "./grid" -export * from "./header-avatar" -export * from "./header-chevron" -export * from "./header-close" -export * from "./header-contact" -export * from "./header-docs" -export * from "./header-hamburger" -export * from "./header-help" -export * from "./header-notification" -export * from "./header-search" -export * from "./header-ticket" -export * from "./header-user" -export * from "./help-outline" -export * from "./help-solid" -export * from "./help" -export * from "./hpa-stress" -export * from "./hpa" -export * from "./info-outline" -export * from "./info-solid" -export * from "./info" -export * from "./infrastructure" -export * from "./integration" -export * from "./iot" -export * from "./launch" -export * from "./light" -export * from "./link" -export * from "./list" -export * from "./locked" -export * from "./maximize" -export * from "./menu" -export * from "./minimize" -export * from "./mobile" -export * from "./network" -export * from "./new-tab" -export * from "./notification-off" -export * from "./notification-on" -export * from "./open-whisk" -export * from "./overflow-menu" -export * from "./pa-stress" -export * from "./pa" -export * from "./pause-outline" -export * from "./pause-solid" -export * from "./pause" -export * from "./play-outline" -export * from "./play-solid" -export * from "./play" -export * from "./portfolio" -export * from "./power" -export * from "./predictive" -export * from "./purchase" -export * from "./restart" -export * from "./save" -export * from "./schematics" -export * from "./search" -export * from "./security" -export * from "./services" -export * from "./settings" -export * from "./star-outline" -export * from "./star-solid" -export * from "./start-outline" -export * from "./start" -export * from "./stop-outline" -export * from "./stop-solid" -export * from "./stop" -export * from "./storage" -export * from "./subtract-outline" -export * from "./subtract-solid" -export * from "./terminal" -export * from "./unlock" -export * from "./unlocked" -export * from "./upload" -export * from "./user" -export * from "./visibility-off" -export * from "./visibility-on" -export * from "./warning-outline" -export * from "./warning-solid" -export * from "./warning" -export * from "./watson" -export * from "./whisk" +export * from "./add-outline"; +export * from "./add-solid"; +export * from "./add"; +export * from "./api"; +export * from "./app-services"; +export * from "./applications"; +export * from "./apps"; +export * from "./arrow-down"; +export * from "./arrow-left"; +export * from "./arrow-right"; +export * from "./arrow-up"; +export * from "./arrows"; +export * from "./asleep"; +export * from "./attachment"; +export * from "./awake"; +export * from "./back-to-top"; +export * from "./block-chain"; +export * from "./calendar"; +export * from "./caret-down"; +export * from "./caret-left"; +export * from "./caret-right"; +export * from "./caret-up"; +export * from "./cf-apps"; +export * from "./chat"; +export * from "./checkmark-outline"; +export * from "./checkmark-solid"; +export * from "./checkmark"; +export * from "./chevron-down"; +export * from "./chevron-left"; +export * from "./chevron-right"; +export * from "./chevron-up"; +export * from "./close-outline"; +export * from "./close-solid"; +export * from "./close"; +export * from "./cloud-foundry"; +export * from "./code"; +export * from "./console"; +export * from "./containers"; +export * from "./copy"; +export * from "./crash"; +export * from "./dashboard"; +export * from "./data"; +export * from "./delete"; +export * from "./devices"; +export * from "./devops"; +export * from "./document"; +export * from "./dollars"; +export * from "./download"; +export * from "./draggable"; +export * from "./edit"; +export * from "./email"; +export * from "./error-outline"; +export * from "./error-solid"; +export * from "./error"; +export * from "./favorite-outline"; +export * from "./favorite-solid"; +export * from "./favorite"; +export * from "./filter"; +export * from "./finance"; +export * from "./financial"; +export * from "./folder-add"; +export * from "./folder"; +export * from "./forum"; +export * from "./functions"; +export * from "./grid"; +export * from "./header-avatar"; +export * from "./header-chevron"; +export * from "./header-close"; +export * from "./header-contact"; +export * from "./header-docs"; +export * from "./header-hamburger"; +export * from "./header-help"; +export * from "./header-notification"; +export * from "./header-search"; +export * from "./header-ticket"; +export * from "./header-user"; +export * from "./help-outline"; +export * from "./help-solid"; +export * from "./help"; +export * from "./hpa-stress"; +export * from "./hpa"; +export * from "./info-outline"; +export * from "./info-solid"; +export * from "./info"; +export * from "./infrastructure"; +export * from "./integration"; +export * from "./iot"; +export * from "./launch"; +export * from "./light"; +export * from "./link"; +export * from "./list"; +export * from "./locked"; +export * from "./maximize"; +export * from "./menu"; +export * from "./minimize"; +export * from "./mobile"; +export * from "./network"; +export * from "./new-tab"; +export * from "./notification-off"; +export * from "./notification-on"; +export * from "./open-whisk"; +export * from "./overflow-menu"; +export * from "./pa-stress"; +export * from "./pa"; +export * from "./pause-outline"; +export * from "./pause-solid"; +export * from "./pause"; +export * from "./play-outline"; +export * from "./play-solid"; +export * from "./play"; +export * from "./portfolio"; +export * from "./power"; +export * from "./predictive"; +export * from "./purchase"; +export * from "./restart"; +export * from "./save"; +export * from "./schematics"; +export * from "./search"; +export * from "./security"; +export * from "./services"; +export * from "./settings"; +export * from "./star-outline"; +export * from "./star-solid"; +export * from "./start-outline"; +export * from "./start"; +export * from "./stop-outline"; +export * from "./stop-solid"; +export * from "./stop"; +export * from "./storage"; +export * from "./subtract-outline"; +export * from "./subtract-solid"; +export * from "./terminal"; +export * from "./unlock"; +export * from "./unlocked"; +export * from "./upload"; +export * from "./user"; +export * from "./visibility-off"; +export * from "./visibility-on"; +export * from "./warning-outline"; +export * from "./warning-solid"; +export * from "./warning"; +export * from "./watson"; +export * from "./whisk"; -export * from "./utils/with-size" +export * from "./utils/with-size"; diff --git a/packages/hiccup-carbon-icons/src/info-outline.ts b/packages/hiccup-carbon-icons/src/info-outline.ts index 67a5dab2ff..3bd04f8fbf 100644 --- a/packages/hiccup-carbon-icons/src/info-outline.ts +++ b/packages/hiccup-carbon-icons/src/info-outline.ts @@ -1,19 +1,31 @@ -export const INFO_OUTLINE = - ["svg", { viewBox: "0 0 16 16" }, - ["g", { "fill-rule": "evenodd" }, - ["path", - { - "fill-rule": "nonzero", - d: "M8 14.5a6.5 6.5 0 1 0 0-13 6.5 6.5 0 0 0 0 13zM8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16z", - }], - ["path", - { - d: "M9 13H7V7h2z", - "fill-rule": "nonzero", - }], - ["circle", - { - r: 1, - cy: 4, - cx: 8, - }]]]; +export const INFO_OUTLINE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "g", + { "fill-rule": "evenodd" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M8 14.5a6.5 6.5 0 1 0 0-13 6.5 6.5 0 0 0 0 13zM8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16z", + }, + ], + [ + "path", + { + d: "M9 13H7V7h2z", + "fill-rule": "nonzero", + }, + ], + [ + "circle", + { + r: 1, + cy: 4, + cx: 8, + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/info-solid.ts b/packages/hiccup-carbon-icons/src/info-solid.ts index 0d1ee07e4f..f4d0da790e 100644 --- a/packages/hiccup-carbon-icons/src/info-solid.ts +++ b/packages/hiccup-carbon-icons/src/info-solid.ts @@ -1,7 +1,12 @@ -export const INFO_SOLID = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "evenodd", - d: "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zm1-3V7H7v6h2zM8 5a1 1 0 1 0 0-2 1 1 0 0 0 0 2z", - }]]; +export const INFO_SOLID = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zm1-3V7H7v6h2zM8 5a1 1 0 1 0 0-2 1 1 0 0 0 0 2z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/info.ts b/packages/hiccup-carbon-icons/src/info.ts index d25bfdaac8..e275524295 100644 --- a/packages/hiccup-carbon-icons/src/info.ts +++ b/packages/hiccup-carbon-icons/src/info.ts @@ -1,14 +1,23 @@ -export const INFO = - ["svg", +export const INFO = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 24", + d: + "M12 2c5.5 0 10 4.5 10 10s-4.5 10-10 10S2 17.5 2 12 6.5 2 12 2zm0-2C5.4 0 0 5.4 0 12s5.4 12 12 12 12-5.4 12-12S18.6 0 12 0z", }, - ["path", { d: "M12 2c5.5 0 10 4.5 10 10s-4.5 10-10 10S2 17.5 2 12 6.5 2 12 2zm0-2C5.4 0 0 5.4 0 12s5.4 12 12 12 12-5.4 12-12S18.6 0 12 0z" }], - ["path", { d: "M14 10H9v2h2v4H9v2h7v-2h-2z" }], - ["circle", - { - r: 1.5, - cy: 7.5, - cx: 12.5, - }]]; + ], + ["path", { d: "M14 10H9v2h2v4H9v2h7v-2h-2z" }], + [ + "circle", + { + r: 1.5, + cy: 7.5, + cx: 12.5, + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/infrastructure.ts b/packages/hiccup-carbon-icons/src/infrastructure.ts index d1b04b08b0..bf4c43536e 100644 --- a/packages/hiccup-carbon-icons/src/infrastructure.ts +++ b/packages/hiccup-carbon-icons/src/infrastructure.ts @@ -1,8 +1,18 @@ -export const INFRASTRUCTURE = - ["svg", +export const INFRASTRUCTURE = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 24", + }, + [ + "path", + { d: "M14 1v22H1V1h13zm1-1H0v24h15V0zM23 1v22h-5V1h5zm1-1h-7v24h7V0z" }, + ], + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 24", + d: + "M12 4v4H3V4h9zm1-1H2v6h11V3zM21 3v1h-1V3h1zm1-1h-3v3h3V2zM21 7v1h-1V7h1zm1-1h-3v3h3V6zM21 11v1h-1v-1h1zm1-1h-3v3h3v-3zM21 15v1h-1v-1h1zm1-1h-3v3h3v-3zM21 19v1h-1v-1h1zm1-1h-3v3h3v-3z", }, - ["path", { d: "M14 1v22H1V1h13zm1-1H0v24h15V0zM23 1v22h-5V1h5zm1-1h-7v24h7V0z" }], - ["path", { d: "M12 4v4H3V4h9zm1-1H2v6h11V3zM21 3v1h-1V3h1zm1-1h-3v3h3V2zM21 7v1h-1V7h1zm1-1h-3v3h3V6zM21 11v1h-1v-1h1zm1-1h-3v3h3v-3zM21 15v1h-1v-1h1zm1-1h-3v3h3v-3zM21 19v1h-1v-1h1zm1-1h-3v3h3v-3z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/integration.ts b/packages/hiccup-carbon-icons/src/integration.ts index 9b5f26e6cd..89ba3e5431 100644 --- a/packages/hiccup-carbon-icons/src/integration.ts +++ b/packages/hiccup-carbon-icons/src/integration.ts @@ -1,7 +1,14 @@ -export const INTEGRATION = - ["svg", +export const INTEGRATION = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 21", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 21", + d: + "M18 0H6L0 10.5 6 21h12l6-10.5L18 0zm4.5 10h-9.7l4.8-8.5 4.9 8.5zM6.3 19.4L1.4 11H11l-4.7 8.4zm5.6-7.8l4.8 8.4H7.2l4.7-8.4zm0-2.1L7 1h9.7l-4.8 8.5zM6.2 1.6L11 10H1.5l4.7-8.4zm11.5 18L12.8 11h9.8l-4.9 8.6z", }, - ["path", { d: "M18 0H6L0 10.5 6 21h12l6-10.5L18 0zm4.5 10h-9.7l4.8-8.5 4.9 8.5zM6.3 19.4L1.4 11H11l-4.7 8.4zm5.6-7.8l4.8 8.4H7.2l4.7-8.4zm0-2.1L7 1h9.7l-4.8 8.5zM6.2 1.6L11 10H1.5l4.7-8.4zm11.5 18L12.8 11h9.8l-4.9 8.6z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/iot.ts b/packages/hiccup-carbon-icons/src/iot.ts index 384d127a76..d84df7441a 100644 --- a/packages/hiccup-carbon-icons/src/iot.ts +++ b/packages/hiccup-carbon-icons/src/iot.ts @@ -1,8 +1,21 @@ -export const IOT = - ["svg", +export const IOT = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 24", + d: + "M12 10c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm0-1c-1.6 0-3 1.3-3 3s1.3 3 3 3 3-1.3 3-3-1.3-3-3-3z", }, - ["path", { d: "M12 10c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm0-1c-1.6 0-3 1.3-3 3s1.3 3 3 3 3-1.3 3-3-1.3-3-3-3z" }], - ["path", { d: "M17 7v10H7V7h10zm1-1H6v12h12V6zM11 5h-1V2.1C10 1.5 9.5 1 8.9 1c-.6 0-.9.6-.9 1.1V5H7V2.1C7 .9 7.8 0 8.9 0H9c1.1 0 2 1 2 2.1V5zM17 5h-1V2.1c0-.6-.5-1.1-1.1-1.1-.6 0-.9.6-.9 1.1V5h-1V2.1c0-1.2.8-2.1 1.9-2.1h.1c1.1 0 2 1 2 2.1V5zM15.1 24s-.1 0 0 0c-1.2 0-2.1-1-2.1-2.1V19h1v2.9c0 .6.5 1.1 1.1 1.1.7 0 .9-.6.9-1.1V19h1v2.9c0 1.2-.8 2.1-1.9 2.1zM9.1 24s-.1 0 0 0C7.9 24 7 23 7 21.9V19h1v2.9c0 .6.5 1.1 1.1 1.1.7 0 .9-.6.9-1.1V19h1v2.9c0 1.2-.8 2.1-1.9 2.1zM5 17H2.1C.9 17 0 16.2 0 15.1c0-1.1 1-2 2.1-2H5v1H2.1c-.6-.1-1.1.4-1.1 1s.6.9 1.1.9H5v1zM5 11H2.1C.9 11 0 10.2 0 9.1c0-1.1 1-2 2.1-2H5v1H2.1C1.5 8 1 8.5 1 9.1s.6.9 1.1.9H5v1zM21.9 11H19v-1h2.9c.6 0 1.1-.4 1.1-1 0-.7-.6-1-1.1-1H19V7h2.9c1.2 0 2.1.8 2.1 1.9 0 1.2-1 2.1-2.1 2.1zM21.9 17H19v-1h2.9c.6 0 1.1-.5 1.1-1.1 0-.7-.6-.9-1.1-.9H19v-1h2.9c1.2 0 2.1.8 2.1 1.9 0 1.2-1 2.1-2.1 2.1z" }]]; + ], + [ + "path", + { + d: + "M17 7v10H7V7h10zm1-1H6v12h12V6zM11 5h-1V2.1C10 1.5 9.5 1 8.9 1c-.6 0-.9.6-.9 1.1V5H7V2.1C7 .9 7.8 0 8.9 0H9c1.1 0 2 1 2 2.1V5zM17 5h-1V2.1c0-.6-.5-1.1-1.1-1.1-.6 0-.9.6-.9 1.1V5h-1V2.1c0-1.2.8-2.1 1.9-2.1h.1c1.1 0 2 1 2 2.1V5zM15.1 24s-.1 0 0 0c-1.2 0-2.1-1-2.1-2.1V19h1v2.9c0 .6.5 1.1 1.1 1.1.7 0 .9-.6.9-1.1V19h1v2.9c0 1.2-.8 2.1-1.9 2.1zM9.1 24s-.1 0 0 0C7.9 24 7 23 7 21.9V19h1v2.9c0 .6.5 1.1 1.1 1.1.7 0 .9-.6.9-1.1V19h1v2.9c0 1.2-.8 2.1-1.9 2.1zM5 17H2.1C.9 17 0 16.2 0 15.1c0-1.1 1-2 2.1-2H5v1H2.1c-.6-.1-1.1.4-1.1 1s.6.9 1.1.9H5v1zM5 11H2.1C.9 11 0 10.2 0 9.1c0-1.1 1-2 2.1-2H5v1H2.1C1.5 8 1 8.5 1 9.1s.6.9 1.1.9H5v1zM21.9 11H19v-1h2.9c.6 0 1.1-.4 1.1-1 0-.7-.6-1-1.1-1H19V7h2.9c1.2 0 2.1.8 2.1 1.9 0 1.2-1 2.1-2.1 2.1zM21.9 17H19v-1h2.9c.6 0 1.1-.5 1.1-1.1 0-.7-.6-.9-1.1-.9H19v-1h2.9c1.2 0 2.1.8 2.1 1.9 0 1.2-1 2.1-2.1 2.1z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/launch.ts b/packages/hiccup-carbon-icons/src/launch.ts index 4caf3586cb..05b26b5f21 100644 --- a/packages/hiccup-carbon-icons/src/launch.ts +++ b/packages/hiccup-carbon-icons/src/launch.ts @@ -1,5 +1,13 @@ -export const LAUNCH = - ["svg", { viewBox: "0 0 16 16" }, - ["path", { d: "M14.3 1h-3.8V0H16v5.5h-1V1.7L9.7 7 9 6.3 14.3 1z" }], - ["path", { d: "M14.3 1h-3.8V0H16v5.5h-1V1.7L9.7 7 9 6.3 14.3 1z" }], - ["path", { d: "M13 9h1v6c0 .6-.4 1-1 1H1c-.6 0-1-.4-1-1V3c0-.6.4-1 1-1h7v1H1v12h12V9z" }]]; +export const LAUNCH = [ + "svg", + { viewBox: "0 0 16 16" }, + ["path", { d: "M14.3 1h-3.8V0H16v5.5h-1V1.7L9.7 7 9 6.3 14.3 1z" }], + ["path", { d: "M14.3 1h-3.8V0H16v5.5h-1V1.7L9.7 7 9 6.3 14.3 1z" }], + [ + "path", + { + d: + "M13 9h1v6c0 .6-.4 1-1 1H1c-.6 0-1-.4-1-1V3c0-.6.4-1 1-1h7v1H1v12h12V9z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/light.ts b/packages/hiccup-carbon-icons/src/light.ts index b19c2dee5d..61c1658fb1 100644 --- a/packages/hiccup-carbon-icons/src/light.ts +++ b/packages/hiccup-carbon-icons/src/light.ts @@ -1,14 +1,29 @@ -export const LIGHT = - ["svg", +export const LIGHT = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 18 18", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 18 18", + d: + "M9 0c.3 0 .6.3.6.6v2.5c0 .3-.3.6-.6.6s-.6-.3-.6-.6V.6c0-.3.3-.6.6-.6zM9 14.4c.3 0 .6.3.6.6v2.5c0 .3-.3.6-.6.6s-.6-.3-.6-.6V15c0-.4.3-.6.6-.6z", }, - ["path", { d: "M9 0c.3 0 .6.3.6.6v2.5c0 .3-.3.6-.6.6s-.6-.3-.6-.6V.6c0-.3.3-.6.6-.6zM9 14.4c.3 0 .6.3.6.6v2.5c0 .3-.3.6-.6.6s-.6-.3-.6-.6V15c0-.4.3-.6.6-.6z" }], - ["circle", - { - r: 4, - cy: 9, - cx: 9, - }], - ["path", { d: "M14.4 9c0-.3.3-.6.6-.6h2.5c.2.1.5.3.5.6s-.3.6-.6.6h-2.5c-.3 0-.5-.3-.5-.6zM0 9c0-.3.3-.6.6-.6h2.5c.3 0 .6.3.6.6s-.3.6-.6.6H.6C.3 9.6 0 9.3 0 9zM2.1 2.4c.2-.2.6-.2.8 0l1.8 1.8c.2.2.2.6 0 .8-.2.2-.6.2-.8 0L2.1 3.2c-.2-.2-.2-.6 0-.8zM13.1 5c-.2-.2-.2-.6 0-.8l1.8-1.8c.2-.2.6-.2.8 0 .2.2.2.6 0 .8L13.9 5c-.2.2-.6.2-.8 0zM15.7 15.7c-.2.2-.6.2-.8 0l-1.8-1.8c-.2-.2-.2-.6 0-.8.2-.2.6-.2.8 0l1.8 1.8c.2.2.2.6 0 .8zM4.7 13.1c.2.2.2.6 0 .8l-1.8 1.8c-.2.2-.6.2-.8 0-.2-.2-.2-.6 0-.8l1.8-1.8c.2-.2.6-.2.8 0z" }]]; + ], + [ + "circle", + { + r: 4, + cy: 9, + cx: 9, + }, + ], + [ + "path", + { + d: + "M14.4 9c0-.3.3-.6.6-.6h2.5c.2.1.5.3.5.6s-.3.6-.6.6h-2.5c-.3 0-.5-.3-.5-.6zM0 9c0-.3.3-.6.6-.6h2.5c.3 0 .6.3.6.6s-.3.6-.6.6H.6C.3 9.6 0 9.3 0 9zM2.1 2.4c.2-.2.6-.2.8 0l1.8 1.8c.2.2.2.6 0 .8-.2.2-.6.2-.8 0L2.1 3.2c-.2-.2-.2-.6 0-.8zM13.1 5c-.2-.2-.2-.6 0-.8l1.8-1.8c.2-.2.6-.2.8 0 .2.2.2.6 0 .8L13.9 5c-.2.2-.6.2-.8 0zM15.7 15.7c-.2.2-.6.2-.8 0l-1.8-1.8c-.2-.2-.2-.6 0-.8.2-.2.6-.2.8 0l1.8 1.8c.2.2.2.6 0 .8zM4.7 13.1c.2.2.2.6 0 .8l-1.8 1.8c-.2.2-.6.2-.8 0-.2-.2-.2-.6 0-.8l1.8-1.8c.2-.2.6-.2.8 0z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/link.ts b/packages/hiccup-carbon-icons/src/link.ts index af925e2860..7ae80e6dc0 100644 --- a/packages/hiccup-carbon-icons/src/link.ts +++ b/packages/hiccup-carbon-icons/src/link.ts @@ -1,4 +1,18 @@ -export const LINK = - ["svg", { viewBox: "0 0 16 13" }, - ["path", { d: "M9.3 7.1l-.7-.7c.1-.1.2-.2.6-.5.9-.8.9-2.2.1-3l-.1-.1c-.8-.8-2.3-.8-3.1.1L1.6 7.3c-.9.9-.9 2.3 0 3.1l.2.2c.8.8 2 .8 2.8.1l.7.7c-1.2 1.1-3 1-4.2-.1l-.2-.2C-.3 9.9-.3 7.8.9 6.6l4.4-4.4C6.6.9 8.6.9 9.9 2.2l.1.1c1.2 1.3 1.1 3.2-.1 4.4-.3.2-.5.4-.6.4z" }], - ["path", { d: "M6.8 4.7l.7.7-.7.7c-.9.9-.9 2.3 0 3.2.9.9 2.3.9 3.1 0l4.5-4.5c.9-.9.9-2.3 0-3.1l-.1-.1c-.7-.7-1.9-.7-2.7 0l-.1.1-.8-.7.1-.1c1.1-1.1 3-1.1 4.1 0l.2.1c1.2 1.2 1.2 3.3 0 4.5L10.6 10c-1.2 1.2-3.3 1.2-4.5 0-1.3-1.3-1.3-3.3 0-4.5l.7-.8z" }]]; +export const LINK = [ + "svg", + { viewBox: "0 0 16 13" }, + [ + "path", + { + d: + "M9.3 7.1l-.7-.7c.1-.1.2-.2.6-.5.9-.8.9-2.2.1-3l-.1-.1c-.8-.8-2.3-.8-3.1.1L1.6 7.3c-.9.9-.9 2.3 0 3.1l.2.2c.8.8 2 .8 2.8.1l.7.7c-1.2 1.1-3 1-4.2-.1l-.2-.2C-.3 9.9-.3 7.8.9 6.6l4.4-4.4C6.6.9 8.6.9 9.9 2.2l.1.1c1.2 1.3 1.1 3.2-.1 4.4-.3.2-.5.4-.6.4z", + }, + ], + [ + "path", + { + d: + "M6.8 4.7l.7.7-.7.7c-.9.9-.9 2.3 0 3.2.9.9 2.3.9 3.1 0l4.5-4.5c.9-.9.9-2.3 0-3.1l-.1-.1c-.7-.7-1.9-.7-2.7 0l-.1.1-.8-.7.1-.1c1.1-1.1 3-1.1 4.1 0l.2.1c1.2 1.2 1.2 3.3 0 4.5L10.6 10c-1.2 1.2-3.3 1.2-4.5 0-1.3-1.3-1.3-3.3 0-4.5l.7-.8z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/list.ts b/packages/hiccup-carbon-icons/src/list.ts index 2fe0c9a035..b9b9a1baa7 100644 --- a/packages/hiccup-carbon-icons/src/list.ts +++ b/packages/hiccup-carbon-icons/src/list.ts @@ -1,20 +1,31 @@ -export const LIST = - ["svg", { viewBox: "0 0 16 10" }, - ["g", { "fill-rule": "evenodd" }, - ["path", - { - d: "M6 9V8h10v1zM6 2V1h10v1z", - "fill-rule": "nonzero", - }], - ["circle", - { - r: 1.5, - cy: 1.5, - cx: 1.5, - }], - ["circle", - { - r: 1.5, - cy: 8.5, - cx: 1.5, - }]]]; +export const LIST = [ + "svg", + { viewBox: "0 0 16 10" }, + [ + "g", + { "fill-rule": "evenodd" }, + [ + "path", + { + d: "M6 9V8h10v1zM6 2V1h10v1z", + "fill-rule": "nonzero", + }, + ], + [ + "circle", + { + r: 1.5, + cy: 1.5, + cx: 1.5, + }, + ], + [ + "circle", + { + r: 1.5, + cy: 8.5, + cx: 1.5, + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/locked.ts b/packages/hiccup-carbon-icons/src/locked.ts index 550ed4b381..c6fa46b952 100644 --- a/packages/hiccup-carbon-icons/src/locked.ts +++ b/packages/hiccup-carbon-icons/src/locked.ts @@ -1,7 +1,12 @@ -export const LOCKED = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "nonzero", - d: "M4.5 7V3.5a3.5 3.5 0 0 1 7 0V7h1A1.5 1.5 0 0 1 14 8.5v6a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5v-6A1.5 1.5 0 0 1 3.5 7h1zm1 0h5V3.5a2.5 2.5 0 0 0-5 0V7zm-2 1a.5.5 0 0 0-.5.5v6a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-6a.5.5 0 0 0-.5-.5h-9z", - }]]; +export const LOCKED = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M4.5 7V3.5a3.5 3.5 0 0 1 7 0V7h1A1.5 1.5 0 0 1 14 8.5v6a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5v-6A1.5 1.5 0 0 1 3.5 7h1zm1 0h5V3.5a2.5 2.5 0 0 0-5 0V7zm-2 1a.5.5 0 0 0-.5.5v6a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-6a.5.5 0 0 0-.5-.5h-9z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/maximize.ts b/packages/hiccup-carbon-icons/src/maximize.ts index 2bc26c6bdf..bb05c528c6 100644 --- a/packages/hiccup-carbon-icons/src/maximize.ts +++ b/packages/hiccup-carbon-icons/src/maximize.ts @@ -1,4 +1,15 @@ -export const MAXIMIZE = - ["svg", { viewBox: "0 0 16 16" }, - ["g", { "fill-rule": "nonzero" }, - ["path", { d: "M1.71 15H4v1H.003L0 12h1l.002 2.293 4.296-4.296.707.707L1.709 15zM14.998 1.668l-4.271 4.317-.711-.703L14.252 1H12V0h3.997L16 4h-1l-.002-2.332z" }]]]; +export const MAXIMIZE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "g", + { "fill-rule": "nonzero" }, + [ + "path", + { + d: + "M1.71 15H4v1H.003L0 12h1l.002 2.293 4.296-4.296.707.707L1.709 15zM14.998 1.668l-4.271 4.317-.711-.703L14.252 1H12V0h3.997L16 4h-1l-.002-2.332z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/menu.ts b/packages/hiccup-carbon-icons/src/menu.ts index 74f59106b9..1d3080e66b 100644 --- a/packages/hiccup-carbon-icons/src/menu.ts +++ b/packages/hiccup-carbon-icons/src/menu.ts @@ -1,7 +1,8 @@ -export const MENU = - ["svg", - { - "fill-rule": "evenodd", - viewBox: "0 0 20 14", - }, - ["path", { d: "M0 0h20v2H0zM0 6h20v2H0zM0 12h20v2H0z" }]]; +export const MENU = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 20 14", + }, + ["path", { d: "M0 0h20v2H0zM0 6h20v2H0zM0 12h20v2H0z" }], +]; diff --git a/packages/hiccup-carbon-icons/src/minimize.ts b/packages/hiccup-carbon-icons/src/minimize.ts index ba58b5d6cb..03d3c15acb 100644 --- a/packages/hiccup-carbon-icons/src/minimize.ts +++ b/packages/hiccup-carbon-icons/src/minimize.ts @@ -1,4 +1,15 @@ -export const MINIMIZE = - ["svg", { viewBox: "0 0 16 16" }, - ["g", { "fill-rule": "nonzero" }, - ["path", { d: "M4.998 11.709L.704 16.004l-.708-.708 4.274-4.273L1.995 11l.01-1 3.992.04L6 14H5l-.002-2.291zM11.707 5H14v1h-3.997L10 2h1l.002 2.291 4.291-4.29.707.706L11.707 5z" }]]]; +export const MINIMIZE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "g", + { "fill-rule": "nonzero" }, + [ + "path", + { + d: + "M4.998 11.709L.704 16.004l-.708-.708 4.274-4.273L1.995 11l.01-1 3.992.04L6 14H5l-.002-2.291zM11.707 5H14v1h-3.997L10 2h1l.002 2.291 4.291-4.29.707.706L11.707 5z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/mobile.ts b/packages/hiccup-carbon-icons/src/mobile.ts index c1c6d4ca84..ac78244dad 100644 --- a/packages/hiccup-carbon-icons/src/mobile.ts +++ b/packages/hiccup-carbon-icons/src/mobile.ts @@ -1,22 +1,42 @@ -export const MOBILE = - ["svg", { viewBox: "0 0 24 24" }, - ["path", { d: "M23 0H1C.5 0 0 .5 0 1v21c0 .6.5 1 1 1h22c.6 0 1-.5 1-1V1c0-.5-.5-1-1-1zM1 1h7v3H1V1zm22 21H1V5h22v17zm0-21v3H9V1h14z" }], - ["circle", - { - r: 0.5, - cy: 2.5, - cx: 2.5, - }], - ["circle", - { - r: 0.5, - cy: 2.5, - cx: 4.5, - }], - ["circle", - { - r: 0.5, - cy: 2.5, - cx: 6.5, - }], - ["path", { d: "M7.5 8h-5c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h5c.3 0 .5.2.5.5s-.2.5-.5.5zM10.5 11h-8c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h8c.3 0 .5.2.5.5s-.2.5-.5.5zM13.5 8h-4c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h4c.3 0 .5.2.5.5s-.2.5-.5.5zM14.5 11h-2c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h2c.3 0 .5.2.5.5s-.2.5-.5.5zM4.5 14h-2c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h2c.3 0 .5.2.5.5s-.2.5-.5.5zM8.5 14h-1c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h1c.3 0 .5.2.5.5s-.2.5-.5.5zM19.5 11h-3c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h3c.3 0 .5.2.5.5s-.2.5-.5.5z" }]]; +export const MOBILE = [ + "svg", + { viewBox: "0 0 24 24" }, + [ + "path", + { + d: + "M23 0H1C.5 0 0 .5 0 1v21c0 .6.5 1 1 1h22c.6 0 1-.5 1-1V1c0-.5-.5-1-1-1zM1 1h7v3H1V1zm22 21H1V5h22v17zm0-21v3H9V1h14z", + }, + ], + [ + "circle", + { + r: 0.5, + cy: 2.5, + cx: 2.5, + }, + ], + [ + "circle", + { + r: 0.5, + cy: 2.5, + cx: 4.5, + }, + ], + [ + "circle", + { + r: 0.5, + cy: 2.5, + cx: 6.5, + }, + ], + [ + "path", + { + d: + "M7.5 8h-5c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h5c.3 0 .5.2.5.5s-.2.5-.5.5zM10.5 11h-8c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h8c.3 0 .5.2.5.5s-.2.5-.5.5zM13.5 8h-4c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h4c.3 0 .5.2.5.5s-.2.5-.5.5zM14.5 11h-2c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h2c.3 0 .5.2.5.5s-.2.5-.5.5zM4.5 14h-2c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h2c.3 0 .5.2.5.5s-.2.5-.5.5zM8.5 14h-1c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h1c.3 0 .5.2.5.5s-.2.5-.5.5zM19.5 11h-3c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h3c.3 0 .5.2.5.5s-.2.5-.5.5z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/network.ts b/packages/hiccup-carbon-icons/src/network.ts index 775e9ab0ca..738595a328 100644 --- a/packages/hiccup-carbon-icons/src/network.ts +++ b/packages/hiccup-carbon-icons/src/network.ts @@ -1,7 +1,14 @@ -export const NETWORK = - ["svg", +export const NETWORK = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 23 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 23 24", + d: + "M20.5 18v-6h-9V5.9C12.9 5.7 14 4.5 14 3c0-1.7-1.3-3-3-3S8 1.3 8 3c0 1.5 1.1 2.7 2.5 2.9V12h-8v6.1C1.1 18.4 0 19.6 0 21c0 1.7 1.3 3 3 3s3-1.3 3-3c0-1.5-1.1-2.7-2.5-2.9V13h16v5.1c-1.4.2-2.5 1.5-2.5 2.9 0 1.7 1.3 3 3 3s3-1.3 3-3c0-1.5-1-2.8-2.5-3zM9 3c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zM5 21c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2 2 .9 2 2zm15 2c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z", }, - ["path", { d: "M20.5 18v-6h-9V5.9C12.9 5.7 14 4.5 14 3c0-1.7-1.3-3-3-3S8 1.3 8 3c0 1.5 1.1 2.7 2.5 2.9V12h-8v6.1C1.1 18.4 0 19.6 0 21c0 1.7 1.3 3 3 3s3-1.3 3-3c0-1.5-1.1-2.7-2.5-2.9V13h16v5.1c-1.4.2-2.5 1.5-2.5 2.9 0 1.7 1.3 3 3 3s3-1.3 3-3c0-1.5-1-2.8-2.5-3zM9 3c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zM5 21c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2 2 .9 2 2zm15 2c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/new-tab.ts b/packages/hiccup-carbon-icons/src/new-tab.ts index 5ef927612e..40a96bf8c6 100644 --- a/packages/hiccup-carbon-icons/src/new-tab.ts +++ b/packages/hiccup-carbon-icons/src/new-tab.ts @@ -1,4 +1,15 @@ -export const NEW_TAB = - ["svg", { viewBox: "0 0 16 15" }, - ["g", { "fill-rule": "nonzero" }, - ["path", { d: "M14 2h2v1h-2v2h-1V3h-2V2h2V0h1v2zM1 3h8V2H1a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V7.227h-1V14H1V3z" }]]]; +export const NEW_TAB = [ + "svg", + { viewBox: "0 0 16 15" }, + [ + "g", + { "fill-rule": "nonzero" }, + [ + "path", + { + d: + "M14 2h2v1h-2v2h-1V3h-2V2h2V0h1v2zM1 3h8V2H1a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V7.227h-1V14H1V3z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/notification-off.ts b/packages/hiccup-carbon-icons/src/notification-off.ts index 9b62243fa9..6fc9ce1630 100644 --- a/packages/hiccup-carbon-icons/src/notification-off.ts +++ b/packages/hiccup-carbon-icons/src/notification-off.ts @@ -1,9 +1,23 @@ -export const NOTIFICATION_OFF = - ["svg", { viewBox: "0 0 14 16" }, - ["g", { "fill-rule": "evenodd" }, - ["path", - { - "fill-rule": "nonzero", - d: "M1.501 13.987l-.876.702L0 13.908 13.33 3.24l.625.78-1.963 1.572v3.642l1.801 1.35a.5.5 0 0 1 .2.399l.008 2.516a.5.5 0 0 1-.5.501h-4.05a2.5 2.5 0 0 1-4.9 0h-3.05v-.013zM2.735 13H13l-.006-1.765-1.802-1.35a.5.5 0 0 1-.2-.4V6.391L2.735 13zm2.852 1a1.5 1.5 0 0 0 2.829 0h-2.83z", - }], - ["path", { d: "M7.501 1.248c.629.05 1.128.2 1.695.481.933.46 1.616 1.114 2.076 1.9l-.864.505a4.163 4.163 0 0 0-1.68-1.512c-.506-.25-1.148-.376-1.891-.376-.494 0-.875.05-1.366.293-1.429.708-2.324 1.814-2.474 3.475L2.941 9.74.797 11.434l-.62-.784 1.771-1.4.05-3.28c.106-1.968 1.41-3.724 3.071-4.347a5.207 5.207 0 0 1 1.432-.367V0h1v1.248z" }]]]; +export const NOTIFICATION_OFF = [ + "svg", + { viewBox: "0 0 14 16" }, + [ + "g", + { "fill-rule": "evenodd" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M1.501 13.987l-.876.702L0 13.908 13.33 3.24l.625.78-1.963 1.572v3.642l1.801 1.35a.5.5 0 0 1 .2.399l.008 2.516a.5.5 0 0 1-.5.501h-4.05a2.5 2.5 0 0 1-4.9 0h-3.05v-.013zM2.735 13H13l-.006-1.765-1.802-1.35a.5.5 0 0 1-.2-.4V6.391L2.735 13zm2.852 1a1.5 1.5 0 0 0 2.829 0h-2.83z", + }, + ], + [ + "path", + { + d: + "M7.501 1.248c.629.05 1.128.2 1.695.481.933.46 1.616 1.114 2.076 1.9l-.864.505a4.163 4.163 0 0 0-1.68-1.512c-.506-.25-1.148-.376-1.891-.376-.494 0-.875.05-1.366.293-1.429.708-2.324 1.814-2.474 3.475L2.941 9.74.797 11.434l-.62-.784 1.771-1.4.05-3.28c.106-1.968 1.41-3.724 3.071-4.347a5.207 5.207 0 0 1 1.432-.367V0h1v1.248z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/notification-on.ts b/packages/hiccup-carbon-icons/src/notification-on.ts index b9c9cc4086..4560bd09db 100644 --- a/packages/hiccup-carbon-icons/src/notification-on.ts +++ b/packages/hiccup-carbon-icons/src/notification-on.ts @@ -1,7 +1,12 @@ -export const NOTIFICATION_ON = - ["svg", { viewBox: "0 0 14 16" }, - ["path", - { - "fill-rule": "nonzero", - d: "M11.199 9.9a.5.5 0 0 1-.2-.4V6.23a4 4 0 0 0-3.99-4A3.989 3.989 0 0 0 3.01 6.206L3 9.52a.5.5 0 0 1-.202.4L1 11.252V13h12v-1.75L11.199 9.9zM4.55 14H.5a.5.5 0 0 1-.5-.5V11a.5.5 0 0 1 .202-.402l1.799-1.333.01-3.062A4.99 4.99 0 0 1 6.5 1.254V0h1v1.254a5 5 0 0 1 4.498 4.975v3.02L13.8 10.6A.5.5 0 0 1 14 11v2.5a.5.5 0 0 1-.5.5H9.45a2.5 2.5 0 0 1-4.9 0zm1.035 0a1.5 1.5 0 0 0 2.83 0h-2.83z", - }]]; +export const NOTIFICATION_ON = [ + "svg", + { viewBox: "0 0 14 16" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M11.199 9.9a.5.5 0 0 1-.2-.4V6.23a4 4 0 0 0-3.99-4A3.989 3.989 0 0 0 3.01 6.206L3 9.52a.5.5 0 0 1-.202.4L1 11.252V13h12v-1.75L11.199 9.9zM4.55 14H.5a.5.5 0 0 1-.5-.5V11a.5.5 0 0 1 .202-.402l1.799-1.333.01-3.062A4.99 4.99 0 0 1 6.5 1.254V0h1v1.254a5 5 0 0 1 4.498 4.975v3.02L13.8 10.6A.5.5 0 0 1 14 11v2.5a.5.5 0 0 1-.5.5H9.45a2.5 2.5 0 0 1-4.9 0zm1.035 0a1.5 1.5 0 0 0 2.83 0h-2.83z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/open-whisk.ts b/packages/hiccup-carbon-icons/src/open-whisk.ts index 094ba41648..dc5a9b1df9 100644 --- a/packages/hiccup-carbon-icons/src/open-whisk.ts +++ b/packages/hiccup-carbon-icons/src/open-whisk.ts @@ -1,8 +1,21 @@ -export const OPEN_WHISK = - ["svg", +export const OPEN_WHISK = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 25 16", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 25 16", + d: + "M9.9 9.7L4.5 0 0 8l4.5 8h8l.5-.8 3-5.5H9.9zm-4.7 5.1L1.4 8l3.1-5.5 6.9 12.3H5.2zm7.2-1.1l-1.6-2.8h3.1l-1.5 2.8z", }, - ["path", { d: "M9.9 9.7L4.5 0 0 8l4.5 8h8l.5-.8 3-5.5H9.9zm-4.7 5.1L1.4 8l3.1-5.5 6.9 12.3H5.2zm7.2-1.1l-1.6-2.8h3.1l-1.5 2.8z" }], - ["path", { d: "M19.5 0h-7.8l-.6 1.1-3 5.5h6l5.3 9.5L24 8l-4.5-8zm-9.3 5.3l1.5-2.8 1.6 2.8h-3.1zm2.4-4.1h6.2L22.6 8l-3.1 5.5-6.9-12.3z" }]]; + ], + [ + "path", + { + d: + "M19.5 0h-7.8l-.6 1.1-3 5.5h6l5.3 9.5L24 8l-4.5-8zm-9.3 5.3l1.5-2.8 1.6 2.8h-3.1zm2.4-4.1h6.2L22.6 8l-3.1 5.5-6.9-12.3z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/overflow-menu.ts b/packages/hiccup-carbon-icons/src/overflow-menu.ts index 29d0bed9a7..c1d9c7a6d3 100644 --- a/packages/hiccup-carbon-icons/src/overflow-menu.ts +++ b/packages/hiccup-carbon-icons/src/overflow-menu.ts @@ -1,21 +1,32 @@ -export const OVERFLOW_MENU = - ["svg", { viewBox: "0 0 3 15" }, - ["g", { "fill-rule": "evenodd" }, - ["circle", - { - r: 1.5, - cy: 1.5, - cx: 1.5, - }], - ["circle", - { - r: 1.5, - cy: 7.5, - cx: 1.5, - }], - ["circle", - { - r: 1.5, - cy: 13.5, - cx: 1.5, - }]]]; +export const OVERFLOW_MENU = [ + "svg", + { viewBox: "0 0 3 15" }, + [ + "g", + { "fill-rule": "evenodd" }, + [ + "circle", + { + r: 1.5, + cy: 1.5, + cx: 1.5, + }, + ], + [ + "circle", + { + r: 1.5, + cy: 7.5, + cx: 1.5, + }, + ], + [ + "circle", + { + r: 1.5, + cy: 13.5, + cx: 1.5, + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/pa-stress.ts b/packages/hiccup-carbon-icons/src/pa-stress.ts index 9441730042..a5711ee69a 100644 --- a/packages/hiccup-carbon-icons/src/pa-stress.ts +++ b/packages/hiccup-carbon-icons/src/pa-stress.ts @@ -1,7 +1,12 @@ -export const PA_STRESS = - ["svg", { viewBox: "0 0 24 24" }, - ["path", - { - "fill-rule": "evenodd", - d: "M22.588 12.982l-3.937-3.95L16 15V9h-3l1.733-3.898L10.643 1h-6.23L1 4.406v6.265l12.004 11.917 9.584-9.605zm1.412 0L13.008 24 0 11.087V3.99L4 0h7.058l4.11 4.123L17 0v5.96l.04.04H20l-.913 2.053L24 12.983zM9 7a2 2 0 1 1-4 0 2 2 0 0 1 4 0z", - }]]; +export const PA_STRESS = [ + "svg", + { viewBox: "0 0 24 24" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M22.588 12.982l-3.937-3.95L16 15V9h-3l1.733-3.898L10.643 1h-6.23L1 4.406v6.265l12.004 11.917 9.584-9.605zm1.412 0L13.008 24 0 11.087V3.99L4 0h7.058l4.11 4.123L17 0v5.96l.04.04H20l-.913 2.053L24 12.983zM9 7a2 2 0 1 1-4 0 2 2 0 0 1 4 0z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/pa.ts b/packages/hiccup-carbon-icons/src/pa.ts index f660916d13..c974d19225 100644 --- a/packages/hiccup-carbon-icons/src/pa.ts +++ b/packages/hiccup-carbon-icons/src/pa.ts @@ -1,7 +1,12 @@ -export const PA = - ["svg", { viewBox: "0 0 24 24" }, - ["path", - { - "fill-rule": "evenodd", - d: "M22.588 12.982L10.643 1h-6.23L1 4.406v6.265l12.004 11.917 9.584-9.605zm1.412 0L13.008 24 0 11.087V3.99L4 0h7.058L24 12.982zM9 7a2 2 0 1 1-4 0 2 2 0 0 1 4 0z", - }]]; +export const PA = [ + "svg", + { viewBox: "0 0 24 24" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M22.588 12.982L10.643 1h-6.23L1 4.406v6.265l12.004 11.917 9.584-9.605zm1.412 0L13.008 24 0 11.087V3.99L4 0h7.058L24 12.982zM9 7a2 2 0 1 1-4 0 2 2 0 0 1 4 0z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/pause-outline.ts b/packages/hiccup-carbon-icons/src/pause-outline.ts index 0267ca1a96..2f68e0c8c1 100644 --- a/packages/hiccup-carbon-icons/src/pause-outline.ts +++ b/packages/hiccup-carbon-icons/src/pause-outline.ts @@ -1,9 +1,17 @@ -export const PAUSE_OUTLINE = - ["svg", { viewBox: "0 0 16 16" }, - ["g", { "fill-rule": "evenodd" }, - ["path", { d: "M5 5h2v6H5zM9 5h2v6H9z" }], - ["path", - { - "fill-rule": "nonzero", - d: "M8 14.5a6.5 6.5 0 1 0 0-13 6.5 6.5 0 0 0 0 13zM8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16z", - }]]]; +export const PAUSE_OUTLINE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "g", + { "fill-rule": "evenodd" }, + ["path", { d: "M5 5h2v6H5zM9 5h2v6H9z" }], + [ + "path", + { + "fill-rule": "nonzero", + d: + "M8 14.5a6.5 6.5 0 1 0 0-13 6.5 6.5 0 0 0 0 13zM8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/pause-solid.ts b/packages/hiccup-carbon-icons/src/pause-solid.ts index eae48f9acf..b424da92a7 100644 --- a/packages/hiccup-carbon-icons/src/pause-solid.ts +++ b/packages/hiccup-carbon-icons/src/pause-solid.ts @@ -1,7 +1,11 @@ -export const PAUSE_SOLID = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "evenodd", - d: "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zM5 5v6h2V5H5zm4 0v6h2V5H9z", - }]]; +export const PAUSE_SOLID = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "evenodd", + d: "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zM5 5v6h2V5H5zm4 0v6h2V5H9z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/pause.ts b/packages/hiccup-carbon-icons/src/pause.ts index f180fbfa1f..88a60f212f 100644 --- a/packages/hiccup-carbon-icons/src/pause.ts +++ b/packages/hiccup-carbon-icons/src/pause.ts @@ -1,3 +1,5 @@ -export const PAUSE = - ["svg", { viewBox: "0 0 24 24" }, - ["path", { d: "M0 0h9v24H0zM15 0h9v24h-9z" }]]; +export const PAUSE = [ + "svg", + { viewBox: "0 0 24 24" }, + ["path", { d: "M0 0h9v24H0zM15 0h9v24h-9z" }], +]; diff --git a/packages/hiccup-carbon-icons/src/play-outline.ts b/packages/hiccup-carbon-icons/src/play-outline.ts index 4bc9183151..1aacca9998 100644 --- a/packages/hiccup-carbon-icons/src/play-outline.ts +++ b/packages/hiccup-carbon-icons/src/play-outline.ts @@ -1,4 +1,18 @@ -export const PLAY_OUTLINE = - ["svg", { viewBox: "0 0 16 16" }, - ["path", { d: "M8 14.5c3.6 0 6.5-2.9 6.5-6.5S11.6 1.5 8 1.5 1.5 4.4 1.5 8s2.9 6.5 6.5 6.5zM8 16c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8z" }], - ["path", { d: "M5 4.8c0-.2.1-.4.2-.6.3-.6 1.1-.8 1.7-.4L12.4 7c.2.1.3.3.4.4.3.6.2 1.4-.4 1.7l-5.5 3.2c-.2.1-.4.2-.6.2-.7 0-1.2-.6-1.2-1.2V4.8zm2 5.1L10.3 8 7 6.1v3.8z" }]]; +export const PLAY_OUTLINE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + d: + "M8 14.5c3.6 0 6.5-2.9 6.5-6.5S11.6 1.5 8 1.5 1.5 4.4 1.5 8s2.9 6.5 6.5 6.5zM8 16c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8z", + }, + ], + [ + "path", + { + d: + "M5 4.8c0-.2.1-.4.2-.6.3-.6 1.1-.8 1.7-.4L12.4 7c.2.1.3.3.4.4.3.6.2 1.4-.4 1.7l-5.5 3.2c-.2.1-.4.2-.6.2-.7 0-1.2-.6-1.2-1.2V4.8zm2 5.1L10.3 8 7 6.1v3.8z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/play-solid.ts b/packages/hiccup-carbon-icons/src/play-solid.ts index b48db0e54d..64ff0f1fdd 100644 --- a/packages/hiccup-carbon-icons/src/play-solid.ts +++ b/packages/hiccup-carbon-icons/src/play-solid.ts @@ -1,7 +1,12 @@ -export const PLAY_SOLID = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "evenodd", - d: "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zM5.497 4.776v6.456a.25.25 0 0 0 .377.216l5.498-3.232a.25.25 0 0 0 0-.431L5.874 4.56a.25.25 0 0 0-.377.215z", - }]]; +export const PLAY_SOLID = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zM5.497 4.776v6.456a.25.25 0 0 0 .377.216l5.498-3.232a.25.25 0 0 0 0-.431L5.874 4.56a.25.25 0 0 0-.377.215z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/play.ts b/packages/hiccup-carbon-icons/src/play.ts index 58e9faacd6..ac81468147 100644 --- a/packages/hiccup-carbon-icons/src/play.ts +++ b/packages/hiccup-carbon-icons/src/play.ts @@ -1,3 +1,5 @@ -export const PLAY = - ["svg", { viewBox: "0 0 21 24" }, - ["path", { d: "M0 24l21-12L0 0z" }]]; +export const PLAY = [ + "svg", + { viewBox: "0 0 21 24" }, + ["path", { d: "M0 24l21-12L0 0z" }], +]; diff --git a/packages/hiccup-carbon-icons/src/portfolio.ts b/packages/hiccup-carbon-icons/src/portfolio.ts index 206d10ee32..02f1aa7efa 100644 --- a/packages/hiccup-carbon-icons/src/portfolio.ts +++ b/packages/hiccup-carbon-icons/src/portfolio.ts @@ -1,7 +1,12 @@ -export const PORTFOLIO = - ["svg", { viewBox: "0 0 24 20" }, - ["path", - { - "fill-rule": "evenodd", - d: "M7 5H6V1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v4h-1V1H7v4zM1 19h22V7H1v12zM23 6H1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h22a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1z", - }]]; +export const PORTFOLIO = [ + "svg", + { viewBox: "0 0 24 20" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M7 5H6V1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v4h-1V1H7v4zM1 19h22V7H1v12zM23 6H1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h22a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/power.ts b/packages/hiccup-carbon-icons/src/power.ts index 2b468dd744..1551d16167 100644 --- a/packages/hiccup-carbon-icons/src/power.ts +++ b/packages/hiccup-carbon-icons/src/power.ts @@ -1,9 +1,17 @@ -export const POWER = - ["svg", { viewBox: "0 0 15 16" }, - ["g", { "fill-rule": "evenodd" }, - ["path", { d: "M7 0h1v8H7z" }], - ["path", - { - "fill-rule": "nonzero", - d: "M10.74 1.735a7.5 7.5 0 1 1-8.45 1.371c.627-.605 1.62-1.186 2.086-1.398l.414.91c-.52.236-1.356.774-1.805 1.208a6.5 6.5 0 1 0 7.323-1.189l.432-.902z", - }]]]; +export const POWER = [ + "svg", + { viewBox: "0 0 15 16" }, + [ + "g", + { "fill-rule": "evenodd" }, + ["path", { d: "M7 0h1v8H7z" }], + [ + "path", + { + "fill-rule": "nonzero", + d: + "M10.74 1.735a7.5 7.5 0 1 1-8.45 1.371c.627-.605 1.62-1.186 2.086-1.398l.414.91c-.52.236-1.356.774-1.805 1.208a6.5 6.5 0 1 0 7.323-1.189l.432-.902z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/predictive.ts b/packages/hiccup-carbon-icons/src/predictive.ts index 9dba9633b9..0d968a2ec5 100644 --- a/packages/hiccup-carbon-icons/src/predictive.ts +++ b/packages/hiccup-carbon-icons/src/predictive.ts @@ -1,7 +1,12 @@ -export const PREDICTIVE = - ["svg", { viewBox: "0 0 24 18" }, - ["path", - { - "fill-rule": "evenodd", - d: "M6 9h1V8H6v1zM4 9h1V8H4v1zm-1-.5a1.5 1.5 0 1 1-2.999.001A1.5 1.5 0 0 1 3 8.5zM13 12a3 3 0 1 1 0-6 3 3 0 0 1 0 6zm9.5-5c-.652 0-1.2.42-1.408 1h-4.234a3.968 3.968 0 0 0-.85-1.61l2.274-3.41c.072.008.144.02.218.02A1.5 1.5 0 1 0 17 1.5c0 .39.152.74.395 1.007l-2.132 3.198A3.978 3.978 0 0 0 13 5a3.988 3.988 0 0 0-3.858 3H8v1h1a3.999 3.999 0 0 0 6.263 3.295l2.132 3.198A1.49 1.49 0 0 0 17 16.5a1.5 1.5 0 1 0 1.5-1.5c-.074 0-.146.012-.218.02l-2.274-3.41c.61-.702.992-1.607.992-2.61h4.092c.207.58.756 1 1.408 1a1.5 1.5 0 0 0 0-3z", - }]]; +export const PREDICTIVE = [ + "svg", + { viewBox: "0 0 24 18" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M6 9h1V8H6v1zM4 9h1V8H4v1zm-1-.5a1.5 1.5 0 1 1-2.999.001A1.5 1.5 0 0 1 3 8.5zM13 12a3 3 0 1 1 0-6 3 3 0 0 1 0 6zm9.5-5c-.652 0-1.2.42-1.408 1h-4.234a3.968 3.968 0 0 0-.85-1.61l2.274-3.41c.072.008.144.02.218.02A1.5 1.5 0 1 0 17 1.5c0 .39.152.74.395 1.007l-2.132 3.198A3.978 3.978 0 0 0 13 5a3.988 3.988 0 0 0-3.858 3H8v1h1a3.999 3.999 0 0 0 6.263 3.295l2.132 3.198A1.49 1.49 0 0 0 17 16.5a1.5 1.5 0 1 0 1.5-1.5c-.074 0-.146.012-.218.02l-2.274-3.41c.61-.702.992-1.607.992-2.61h4.092c.207.58.756 1 1.408 1a1.5 1.5 0 0 0 0-3z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/purchase.ts b/packages/hiccup-carbon-icons/src/purchase.ts index 562e6a7889..61021733f8 100644 --- a/packages/hiccup-carbon-icons/src/purchase.ts +++ b/packages/hiccup-carbon-icons/src/purchase.ts @@ -1,4 +1,12 @@ -export const PURCHASE = - ["svg", { viewBox: "0 0 16 11" }, - ["path", { d: "M15 3V1H1v2h14zm0 1H1v6h14V4zM.8 0h14.5c.4 0 .7.3.7.8v9.5c0 .4-.3.8-.8.8H.8c-.5-.1-.8-.4-.8-.9V.8C0 .3.3 0 .8 0z" }], - ["path", { d: "M2 9V8h5v1z" }]]; +export const PURCHASE = [ + "svg", + { viewBox: "0 0 16 11" }, + [ + "path", + { + d: + "M15 3V1H1v2h14zm0 1H1v6h14V4zM.8 0h14.5c.4 0 .7.3.7.8v9.5c0 .4-.3.8-.8.8H.8c-.5-.1-.8-.4-.8-.9V.8C0 .3.3 0 .8 0z", + }, + ], + ["path", { d: "M2 9V8h5v1z" }], +]; diff --git a/packages/hiccup-carbon-icons/src/restart.ts b/packages/hiccup-carbon-icons/src/restart.ts index a90da58434..e1b3a75c48 100644 --- a/packages/hiccup-carbon-icons/src/restart.ts +++ b/packages/hiccup-carbon-icons/src/restart.ts @@ -1,7 +1,12 @@ -export const RESTART = - ["svg", { viewBox: "0 0 13 16" }, - ["path", - { - "fill-rule": "nonzero", - d: "M10.948 3L8.542.727 9.23 0 13 3.564 9.228 7.108l-.685-.729L11.075 4H6.5A5.5 5.5 0 1 0 12 9.5h1A6.5 6.5 0 1 1 6.5 3h4.448z", - }]]; +export const RESTART = [ + "svg", + { viewBox: "0 0 13 16" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M10.948 3L8.542.727 9.23 0 13 3.564 9.228 7.108l-.685-.729L11.075 4H6.5A5.5 5.5 0 1 0 12 9.5h1A6.5 6.5 0 1 1 6.5 3h4.448z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/save.ts b/packages/hiccup-carbon-icons/src/save.ts index dca8b0a138..7d546b22ec 100644 --- a/packages/hiccup-carbon-icons/src/save.ts +++ b/packages/hiccup-carbon-icons/src/save.ts @@ -1,7 +1,12 @@ -export const SAVE = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "nonzero", - d: "M12 1.597v2.406a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V1H1v14h3V9a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v6h3V4.702l-3-3.105zM1 0h10.848L16 4.298V15a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1zm10 9H5v5.992l6 .007V9zM5 1v3.003h6V1H5z", - }]]; +export const SAVE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M12 1.597v2.406a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V1H1v14h3V9a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v6h3V4.702l-3-3.105zM1 0h10.848L16 4.298V15a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1zm10 9H5v5.992l6 .007V9zM5 1v3.003h6V1H5z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/schematics.ts b/packages/hiccup-carbon-icons/src/schematics.ts index ba9ba61f3b..3c5f4c7a95 100644 --- a/packages/hiccup-carbon-icons/src/schematics.ts +++ b/packages/hiccup-carbon-icons/src/schematics.ts @@ -1,8 +1,21 @@ -export const SCHEMATICS = - ["svg", +export const SCHEMATICS = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 24", + d: + "M22.259 11.576L19.2 9.694c1.882-1.082 3.53-2.023 3.67-2.118a.494.494 0 0 0 .236-.423.494.494 0 0 0-.235-.424A2472.813 2472.813 0 0 0 12.988.706c-.047-.047-.047-.047-.094-.047C12.471.424 12 .424 11.53.565c-.376.14-.705.33-.988.517-.141.047-6.117 3.765-8.094 4.989l-.659.423a2.054 2.054 0 0 0-.612.424c-.847.94-.894 2.682-.517 4 .188.517.423 1.035.706 1.411.376.424.753.706 1.176.942l.094.047c.283.188 8.941 5.082 9.318 5.27.047.047.659.424.659 1.883 0 .282.188.47.47.47.283 0 .47-.188.47-.47 0-2.024-1.034-2.636-1.128-2.683-3.106-1.74-9.083-5.13-9.318-5.27l-.094-.047c-.33-.236-.66-.424-.847-.753-.236-.283-.377-.66-.518-1.083-.282-1.035-.282-2.447.33-3.106.094-.094.188-.14.329-.235l.659-.423c7.106-4.377 8.047-4.989 8.094-4.989.235-.188.47-.33.753-.423.282-.094.47-.047.706.047h.047c.47.33 5.788 3.53 9.176 5.553-2.259 1.317-9.317 5.317-9.553 5.459a.539.539 0 0 1-.47 0c-.236-.142-6.024-3.483-8.236-4.753-.235-.094-.517-.047-.658.188-.142.188-.048.518.14.612.33.188 8 4.611 8.33 4.847.424.235.941.235 1.365 0 .188-.094 3.012-1.741 5.647-3.247l3.53 2.164c.093.047 1.27.706 1.27 2.26 0 1.693-.47 2.023-1.224 2.635-.047 0-1.223.752-8.47 5.223l-.33.188c-.33.236-.847.518-1.082.424-.235-.141-4.047-2.494-10.024-6.118l1.6-.988a.507.507 0 0 0 .142-.659c-.142-.235-.424-.33-.66-.188L.8 16.47a.562.562 0 0 0-.235.423c0 .188.094.33.235.424l.141.094c10.4 6.353 10.588 6.447 10.635 6.494.142.094.33.094.518.094.518 0 1.082-.282 1.459-.47l.33-.189c8.47-5.27 8.47-5.27 8.517-5.27.847-.66 1.6-1.224 1.6-3.389 0-2.117-1.6-3.011-1.741-3.106z", }, - ["path", { d: "M22.259 11.576L19.2 9.694c1.882-1.082 3.53-2.023 3.67-2.118a.494.494 0 0 0 .236-.423.494.494 0 0 0-.235-.424A2472.813 2472.813 0 0 0 12.988.706c-.047-.047-.047-.047-.094-.047C12.471.424 12 .424 11.53.565c-.376.14-.705.33-.988.517-.141.047-6.117 3.765-8.094 4.989l-.659.423a2.054 2.054 0 0 0-.612.424c-.847.94-.894 2.682-.517 4 .188.517.423 1.035.706 1.411.376.424.753.706 1.176.942l.094.047c.283.188 8.941 5.082 9.318 5.27.047.047.659.424.659 1.883 0 .282.188.47.47.47.283 0 .47-.188.47-.47 0-2.024-1.034-2.636-1.128-2.683-3.106-1.74-9.083-5.13-9.318-5.27l-.094-.047c-.33-.236-.66-.424-.847-.753-.236-.283-.377-.66-.518-1.083-.282-1.035-.282-2.447.33-3.106.094-.094.188-.14.329-.235l.659-.423c7.106-4.377 8.047-4.989 8.094-4.989.235-.188.47-.33.753-.423.282-.094.47-.047.706.047h.047c.47.33 5.788 3.53 9.176 5.553-2.259 1.317-9.317 5.317-9.553 5.459a.539.539 0 0 1-.47 0c-.236-.142-6.024-3.483-8.236-4.753-.235-.094-.517-.047-.658.188-.142.188-.048.518.14.612.33.188 8 4.611 8.33 4.847.424.235.941.235 1.365 0 .188-.094 3.012-1.741 5.647-3.247l3.53 2.164c.093.047 1.27.706 1.27 2.26 0 1.693-.47 2.023-1.224 2.635-.047 0-1.223.752-8.47 5.223l-.33.188c-.33.236-.847.518-1.082.424-.235-.141-4.047-2.494-10.024-6.118l1.6-.988a.507.507 0 0 0 .142-.659c-.142-.235-.424-.33-.66-.188L.8 16.47a.562.562 0 0 0-.235.423c0 .188.094.33.235.424l.141.094c10.4 6.353 10.588 6.447 10.635 6.494.142.094.33.094.518.094.518 0 1.082-.282 1.459-.47l.33-.189c8.47-5.27 8.47-5.27 8.517-5.27.847-.66 1.6-1.224 1.6-3.389 0-2.117-1.6-3.011-1.741-3.106z" }], - ["path", { d: "M5.694 7.247a.488.488 0 0 0 .565.377l4.612-.753-1.036 2.588c-.094.235.047.517.283.612.047.047.14.047.188.047.188 0 .376-.142.423-.283l1.695-4.188L6.07 6.682c-.236.047-.424.33-.377.565zm12.47-1.082a.507.507 0 0 0-.658-.141l-3.012 1.835a.507.507 0 0 0-.141.659c.047.094.141.14.235.188.141.047.33 0 .424-.047l3.012-1.835a.507.507 0 0 0 .14-.66z" }]]; + ], + [ + "path", + { + d: + "M5.694 7.247a.488.488 0 0 0 .565.377l4.612-.753-1.036 2.588c-.094.235.047.517.283.612.047.047.14.047.188.047.188 0 .376-.142.423-.283l1.695-4.188L6.07 6.682c-.236.047-.424.33-.377.565zm12.47-1.082a.507.507 0 0 0-.658-.141l-3.012 1.835a.507.507 0 0 0-.141.659c.047.094.141.14.235.188.141.047.33 0 .424-.047l3.012-1.835a.507.507 0 0 0 .14-.66z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/search.ts b/packages/hiccup-carbon-icons/src/search.ts index ac9910ee51..17a12bafbb 100644 --- a/packages/hiccup-carbon-icons/src/search.ts +++ b/packages/hiccup-carbon-icons/src/search.ts @@ -1,7 +1,12 @@ -export const SEARCH = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "nonzero", - d: "M6.5 12a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11zm4.936-1.27l4.563 4.557-.707.708-4.563-4.558a6.5 6.5 0 1 1 .707-.707z", - }]]; +export const SEARCH = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M6.5 12a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11zm4.936-1.27l4.563 4.557-.707.708-4.563-4.558a6.5 6.5 0 1 1 .707-.707z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/security.ts b/packages/hiccup-carbon-icons/src/security.ts index b96c477daa..df0c144b18 100644 --- a/packages/hiccup-carbon-icons/src/security.ts +++ b/packages/hiccup-carbon-icons/src/security.ts @@ -1,8 +1,21 @@ -export const SECURITY = - ["svg", +export const SECURITY = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 16 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 16 24", + d: + "M13 9.8V5c0-2.8-2.2-5-5-5S3 2.2 3 5v4.8c-1.8 1.5-3 3.7-3 6.2 0 4.4 3.6 8 8 8s8-3.6 8-8c0-2.5-1.2-4.8-3-6.2zM4 5c0-2.2 1.8-4 4-4s4 1.8 4 4v4.1C10.8 8.4 9.5 8 8 8s-2.8.4-4 1.1V5zm4 18c-3.9 0-7-3.1-7-7s3.1-7 7-7 7 3.1 7 7-3.1 7-7 7z", }, - ["path", { d: "M13 9.8V5c0-2.8-2.2-5-5-5S3 2.2 3 5v4.8c-1.8 1.5-3 3.7-3 6.2 0 4.4 3.6 8 8 8s8-3.6 8-8c0-2.5-1.2-4.8-3-6.2zM4 5c0-2.2 1.8-4 4-4s4 1.8 4 4v4.1C10.8 8.4 9.5 8 8 8s-2.8.4-4 1.1V5zm4 18c-3.9 0-7-3.1-7-7s3.1-7 7-7 7 3.1 7 7-3.1 7-7 7z" }], - ["path", { d: "M9.6 14.4c0-.9-.7-1.6-1.6-1.6-.9 0-1.6.7-1.6 1.6 0 .5.2.9.6 1.2V18c0 .6.4 1 1 1s1-.5 1-1v-2.4c.3-.2.6-.7.6-1.2z" }]]; + ], + [ + "path", + { + d: + "M9.6 14.4c0-.9-.7-1.6-1.6-1.6-.9 0-1.6.7-1.6 1.6 0 .5.2.9.6 1.2V18c0 .6.4 1 1 1s1-.5 1-1v-2.4c.3-.2.6-.7.6-1.2z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/services.ts b/packages/hiccup-carbon-icons/src/services.ts index fd24cbc5d8..c753917534 100644 --- a/packages/hiccup-carbon-icons/src/services.ts +++ b/packages/hiccup-carbon-icons/src/services.ts @@ -1,8 +1,21 @@ -export const SERVICES = - ["svg", +export const SERVICES = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 23 23", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 23 23", + d: + "M20.5 9c-1.4 0-2.5 1.1-2.5 2.5s1.1 2.5 2.5 2.5 2.5-1.1 2.5-2.5S21.9 9 20.5 9zm0 4c-.8 0-1.5-.7-1.5-1.5s.7-1.5 1.5-1.5 1.5.7 1.5 1.5c0 .9-.7 1.5-1.5 1.5zM5 11.5C5 10.1 3.9 9 2.5 9S0 10.1 0 11.5 1.1 14 2.5 14 5 12.9 5 11.5zM2.5 13c-.8 0-1.5-.6-1.5-1.5 0-.8.7-1.5 1.5-1.5s1.5.7 1.5 1.5c0 .9-.7 1.5-1.5 1.5zM12 18v-4c1.1-.2 2-1.2 2-2.5 0-1.2-.9-2.2-2-2.5V5c1.1-.2 2-1.2 2-2.5C14 1.1 12.9 0 11.5 0S9 1.1 9 2.5c0 1.2.9 2.2 2 2.5v4c-1.1.2-2 1.2-2 2.5 0 1.2.9 2.2 2 2.5v4c-1.1.2-2 1.2-2 2.5 0 1.4 1.1 2.5 2.5 2.5s2.5-1.1 2.5-2.5c0-1.2-.8-2.2-2-2.5zM10 2.5c0-.8.7-1.5 1.5-1.5s1.5.7 1.5 1.5S12.3 4 11.5 4 10 3.3 10 2.5zm0 9c0-.8.7-1.5 1.5-1.5s1.5.7 1.5 1.5-.7 1.5-1.5 1.5-1.5-.7-1.5-1.5zM11.5 22c-.8 0-1.5-.7-1.5-1.5s.7-1.5 1.5-1.5 1.5.7 1.5 1.5-.7 1.5-1.5 1.5z", }, - ["path", { d: "M20.5 9c-1.4 0-2.5 1.1-2.5 2.5s1.1 2.5 2.5 2.5 2.5-1.1 2.5-2.5S21.9 9 20.5 9zm0 4c-.8 0-1.5-.7-1.5-1.5s.7-1.5 1.5-1.5 1.5.7 1.5 1.5c0 .9-.7 1.5-1.5 1.5zM5 11.5C5 10.1 3.9 9 2.5 9S0 10.1 0 11.5 1.1 14 2.5 14 5 12.9 5 11.5zM2.5 13c-.8 0-1.5-.6-1.5-1.5 0-.8.7-1.5 1.5-1.5s1.5.7 1.5 1.5c0 .9-.7 1.5-1.5 1.5zM12 18v-4c1.1-.2 2-1.2 2-2.5 0-1.2-.9-2.2-2-2.5V5c1.1-.2 2-1.2 2-2.5C14 1.1 12.9 0 11.5 0S9 1.1 9 2.5c0 1.2.9 2.2 2 2.5v4c-1.1.2-2 1.2-2 2.5 0 1.2.9 2.2 2 2.5v4c-1.1.2-2 1.2-2 2.5 0 1.4 1.1 2.5 2.5 2.5s2.5-1.1 2.5-2.5c0-1.2-.8-2.2-2-2.5zM10 2.5c0-.8.7-1.5 1.5-1.5s1.5.7 1.5 1.5S12.3 4 11.5 4 10 3.3 10 2.5zm0 9c0-.8.7-1.5 1.5-1.5s1.5.7 1.5 1.5-.7 1.5-1.5 1.5-1.5-.7-1.5-1.5zM11.5 22c-.8 0-1.5-.7-1.5-1.5s.7-1.5 1.5-1.5 1.5.7 1.5 1.5-.7 1.5-1.5 1.5z" }], - ["path", { d: "M9 6.5C9 5.1 7.9 4 6.5 4S4 5.1 4 6.5c0 1.2.9 2.2 2 2.5v5.1c-1.1.2-2 1.2-2 2.5S5.1 19 6.5 19 9 17.9 9 16.5c0-1.2-.9-2.2-2-2.5V8.9c1.1-.2 2-1.2 2-2.4zm-4 0C5 5.7 5.7 5 6.5 5S8 5.7 8 6.5 7.3 8 6.5 8 5 7.3 5 6.5zm3 10c0 .9-.7 1.5-1.5 1.5S5 17.4 5 16.5 5.7 15 6.5 15s1.5.7 1.5 1.5zM17 14.1V8.9c1.1-.2 2-1.2 2-2.5S17.9 4 16.5 4 14 5.1 14 6.5c0 1.2.9 2.2 2 2.5v5.1c-1.1.2-2 1.2-2 2.5 0 1.4 1.1 2.5 2.5 2.5S19 18 19 16.6c0-1.3-.8-2.3-2-2.5zm-2-7.6c0-.8.7-1.5 1.5-1.5s1.5.7 1.5 1.5S17.3 8 16.5 8 15 7.3 15 6.5zM16.5 18c-.8 0-1.5-.7-1.5-1.5s.7-1.5 1.5-1.5 1.5.7 1.5 1.5-.7 1.5-1.5 1.5z" }]]; + ], + [ + "path", + { + d: + "M9 6.5C9 5.1 7.9 4 6.5 4S4 5.1 4 6.5c0 1.2.9 2.2 2 2.5v5.1c-1.1.2-2 1.2-2 2.5S5.1 19 6.5 19 9 17.9 9 16.5c0-1.2-.9-2.2-2-2.5V8.9c1.1-.2 2-1.2 2-2.4zm-4 0C5 5.7 5.7 5 6.5 5S8 5.7 8 6.5 7.3 8 6.5 8 5 7.3 5 6.5zm3 10c0 .9-.7 1.5-1.5 1.5S5 17.4 5 16.5 5.7 15 6.5 15s1.5.7 1.5 1.5zM17 14.1V8.9c1.1-.2 2-1.2 2-2.5S17.9 4 16.5 4 14 5.1 14 6.5c0 1.2.9 2.2 2 2.5v5.1c-1.1.2-2 1.2-2 2.5 0 1.4 1.1 2.5 2.5 2.5S19 18 19 16.6c0-1.3-.8-2.3-2-2.5zm-2-7.6c0-.8.7-1.5 1.5-1.5s1.5.7 1.5 1.5S17.3 8 16.5 8 15 7.3 15 6.5zM16.5 18c-.8 0-1.5-.7-1.5-1.5s.7-1.5 1.5-1.5 1.5.7 1.5 1.5-.7 1.5-1.5 1.5z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/settings.ts b/packages/hiccup-carbon-icons/src/settings.ts index 99c6bce650..df635b6dc6 100644 --- a/packages/hiccup-carbon-icons/src/settings.ts +++ b/packages/hiccup-carbon-icons/src/settings.ts @@ -1,4 +1,18 @@ -export const SETTINGS = - ["svg", { viewBox: "0 0 15 16" }, - ["path", { d: "M7.5 10.5C8.9 10.5 10 9.4 10 8S8.9 5.5 7.5 5.5 5 6.6 5 8s1.2 2.5 2.5 2.5zm0 1C5.6 11.5 4 9.9 4 8s1.6-3.5 3.5-3.5S11 6.1 11 8s-1.5 3.5-3.5 3.5z" }], - ["path", { d: "M6.3 2.6l-.3.1c-.7.2-1.3.5-1.9 1l-.2.2-1.4-.8-1.3 1.8L2.4 6l-.1.2C2.1 6.8 2 7.4 2 8c0 .3 0 .7.1 1l.1.3-1.2 1L2.2 12l1.1-.6.3.3c.6.8 1.4 1.3 2.4 1.6l.3.1.2 1.6h2.1l.2-1.6.3-.1c.8-.2 1.6-.7 2.2-1.3l.3-.2 1.1.6 1.2-1.7-1.1-1 .1-.3c.1-.5.1-1 .1-1.4 0-.5-.1-1.1-.2-1.6l-.1-.3 1.2-1-1.2-1.7-1.4.6-.3-.2c-.6-.5-1.3-.9-2-1.1l-.2-.1L8.6 1H6.5l-.2 1.6zM5.5.9c0-.5.5-.9 1-.9h2.1c.5 0 .9.4 1 .9l.1 1c.6.2 1.2.5 1.8 1l.7-.4c.4-.2 1-.1 1.3.3l1.2 1.7c.3.4.2 1-.1 1.3l-.7.6c.1.5.1 1.1.1 1.6 0 .4 0 .8-.1 1.3l.6.6c.4.3.4.9.1 1.3l-1.2 1.7c-.3.4-.8.5-1.3.3l-.4-.2c-.6.5-1.3.9-2 1.2l-.1 1c-.1.5-.5.9-1 .9H6.5c-.5 0-.9-.4-1-.9l-.1-1c-.8-.3-1.6-.8-2.3-1.4l-.4.2c-.4.2-1 .1-1.3-.3L.2 11c-.3-.4-.2-1 .1-1.3l.8-.7c0-.4-.1-.7-.1-1 0-.6.1-1.2.2-1.8l-.6-.6C.2 5.3.1 4.7.4 4.3l1.2-1.7c.3-.5.9-.6 1.3-.4l.9.5c.5-.3 1-.6 1.6-.8l.1-1z" }]]; +export const SETTINGS = [ + "svg", + { viewBox: "0 0 15 16" }, + [ + "path", + { + d: + "M7.5 10.5C8.9 10.5 10 9.4 10 8S8.9 5.5 7.5 5.5 5 6.6 5 8s1.2 2.5 2.5 2.5zm0 1C5.6 11.5 4 9.9 4 8s1.6-3.5 3.5-3.5S11 6.1 11 8s-1.5 3.5-3.5 3.5z", + }, + ], + [ + "path", + { + d: + "M6.3 2.6l-.3.1c-.7.2-1.3.5-1.9 1l-.2.2-1.4-.8-1.3 1.8L2.4 6l-.1.2C2.1 6.8 2 7.4 2 8c0 .3 0 .7.1 1l.1.3-1.2 1L2.2 12l1.1-.6.3.3c.6.8 1.4 1.3 2.4 1.6l.3.1.2 1.6h2.1l.2-1.6.3-.1c.8-.2 1.6-.7 2.2-1.3l.3-.2 1.1.6 1.2-1.7-1.1-1 .1-.3c.1-.5.1-1 .1-1.4 0-.5-.1-1.1-.2-1.6l-.1-.3 1.2-1-1.2-1.7-1.4.6-.3-.2c-.6-.5-1.3-.9-2-1.1l-.2-.1L8.6 1H6.5l-.2 1.6zM5.5.9c0-.5.5-.9 1-.9h2.1c.5 0 .9.4 1 .9l.1 1c.6.2 1.2.5 1.8 1l.7-.4c.4-.2 1-.1 1.3.3l1.2 1.7c.3.4.2 1-.1 1.3l-.7.6c.1.5.1 1.1.1 1.6 0 .4 0 .8-.1 1.3l.6.6c.4.3.4.9.1 1.3l-1.2 1.7c-.3.4-.8.5-1.3.3l-.4-.2c-.6.5-1.3.9-2 1.2l-.1 1c-.1.5-.5.9-1 .9H6.5c-.5 0-.9-.4-1-.9l-.1-1c-.8-.3-1.6-.8-2.3-1.4l-.4.2c-.4.2-1 .1-1.3-.3L.2 11c-.3-.4-.2-1 .1-1.3l.8-.7c0-.4-.1-.7-.1-1 0-.6.1-1.2.2-1.8l-.6-.6C.2 5.3.1 4.7.4 4.3l1.2-1.7c.3-.5.9-.6 1.3-.4l.9.5c.5-.3 1-.6 1.6-.8l.1-1z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/star-outline.ts b/packages/hiccup-carbon-icons/src/star-outline.ts index 23345bbfdd..866a2bfe73 100644 --- a/packages/hiccup-carbon-icons/src/star-outline.ts +++ b/packages/hiccup-carbon-icons/src/star-outline.ts @@ -1,3 +1,11 @@ -export const STAR_OUTLINE = - ["svg", { viewBox: "0 0 16 15" }, - ["path", { d: "M3 15l1-5.2-4-4L5.5 5 8 0l2.5 5 5.5.7-4 4 1 5.2-5-2.5L3 15zm5-3.6l3.6 1.8-.7-3.8 2.9-3-4-.5L8 2.2 6.2 5.9l-4 .5 2.9 2.9-.7 3.8L8 11.4z" }]]; +export const STAR_OUTLINE = [ + "svg", + { viewBox: "0 0 16 15" }, + [ + "path", + { + d: + "M3 15l1-5.2-4-4L5.5 5 8 0l2.5 5 5.5.7-4 4 1 5.2-5-2.5L3 15zm5-3.6l3.6 1.8-.7-3.8 2.9-3-4-.5L8 2.2 6.2 5.9l-4 .5 2.9 2.9-.7 3.8L8 11.4z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/star-solid.ts b/packages/hiccup-carbon-icons/src/star-solid.ts index def7732fac..99141c77ff 100644 --- a/packages/hiccup-carbon-icons/src/star-solid.ts +++ b/packages/hiccup-carbon-icons/src/star-solid.ts @@ -1,7 +1,12 @@ -export const STAR_SOLID = - ["svg", { viewBox: "0 0 16 15" }, - ["path", - { - "fill-rule": "evenodd", - d: "M7.998 0L5.5 5 0 5.75l4 4L3 15l4.998-2.5L13 15l-1-5.25 4-4.005L10.5 5z", - }]]; +export const STAR_SOLID = [ + "svg", + { viewBox: "0 0 16 15" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M7.998 0L5.5 5 0 5.75l4 4L3 15l4.998-2.5L13 15l-1-5.25 4-4.005L10.5 5z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/start-outline.ts b/packages/hiccup-carbon-icons/src/start-outline.ts index e3de1325a6..bd1622a1e5 100644 --- a/packages/hiccup-carbon-icons/src/start-outline.ts +++ b/packages/hiccup-carbon-icons/src/start-outline.ts @@ -1,8 +1,15 @@ -export const START_OUTLINE = - ["svg", +export const START_OUTLINE = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 24", + }, + ["path", { d: "M8 17l9-5-9-5z" }], + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 24", + d: + "M12 2c5.5 0 10 4.5 10 10s-4.5 10-10 10S2 17.5 2 12 6.5 2 12 2zm0-2C5.4 0 0 5.4 0 12s5.4 12 12 12 12-5.4 12-12S18.6 0 12 0z", }, - ["path", { d: "M8 17l9-5-9-5z" }], - ["path", { d: "M12 2c5.5 0 10 4.5 10 10s-4.5 10-10 10S2 17.5 2 12 6.5 2 12 2zm0-2C5.4 0 0 5.4 0 12s5.4 12 12 12 12-5.4 12-12S18.6 0 12 0z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/start.ts b/packages/hiccup-carbon-icons/src/start.ts index b82b5b2b3a..c301e1843f 100644 --- a/packages/hiccup-carbon-icons/src/start.ts +++ b/packages/hiccup-carbon-icons/src/start.ts @@ -1,3 +1,5 @@ -export const START = - ["svg", { viewBox: "0 0 21 24" }, - ["path", { d: "M0 24l21-12L0 0z" }]]; +export const START = [ + "svg", + { viewBox: "0 0 21 24" }, + ["path", { d: "M0 24l21-12L0 0z" }], +]; diff --git a/packages/hiccup-carbon-icons/src/stop-outline.ts b/packages/hiccup-carbon-icons/src/stop-outline.ts index 4f24a8f986..d45c545750 100644 --- a/packages/hiccup-carbon-icons/src/stop-outline.ts +++ b/packages/hiccup-carbon-icons/src/stop-outline.ts @@ -1,4 +1,18 @@ -export const STOP_OUTLINE = - ["svg", { viewBox: "0 0 16 16" }, - ["path", { d: "M8 14.5c3.6 0 6.5-2.9 6.5-6.5S11.6 1.5 8 1.5 1.5 4.4 1.5 8s2.9 6.5 6.5 6.5zM8 16c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8z" }], - ["path", { d: "M6 6v4h4V6H6zM5 4h6c.6 0 1 .4 1 1v6c0 .6-.4 1-1 1H5c-.6 0-1-.4-1-1V5c0-.6.4-1 1-1z" }]]; +export const STOP_OUTLINE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + d: + "M8 14.5c3.6 0 6.5-2.9 6.5-6.5S11.6 1.5 8 1.5 1.5 4.4 1.5 8s2.9 6.5 6.5 6.5zM8 16c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8z", + }, + ], + [ + "path", + { + d: + "M6 6v4h4V6H6zM5 4h6c.6 0 1 .4 1 1v6c0 .6-.4 1-1 1H5c-.6 0-1-.4-1-1V5c0-.6.4-1 1-1z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/stop-solid.ts b/packages/hiccup-carbon-icons/src/stop-solid.ts index 7c451e72dc..6f5a347aa0 100644 --- a/packages/hiccup-carbon-icons/src/stop-solid.ts +++ b/packages/hiccup-carbon-icons/src/stop-solid.ts @@ -1,7 +1,12 @@ -export const STOP_SOLID = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "evenodd", - d: "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zM6 5a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1H6z", - }]]; +export const STOP_SOLID = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "evenodd", + d: + "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zM6 5a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1H6z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/stop.ts b/packages/hiccup-carbon-icons/src/stop.ts index f17ef74b4f..c4d7a79a94 100644 --- a/packages/hiccup-carbon-icons/src/stop.ts +++ b/packages/hiccup-carbon-icons/src/stop.ts @@ -1,3 +1,5 @@ -export const STOP = - ["svg", { viewBox: "0 0 24 24" }, - ["path", { d: "M0 0h24v24H0z" }]]; +export const STOP = [ + "svg", + { viewBox: "0 0 24 24" }, + ["path", { d: "M0 0h24v24H0z" }], +]; diff --git a/packages/hiccup-carbon-icons/src/storage.ts b/packages/hiccup-carbon-icons/src/storage.ts index 9fbb6e290f..ff5e371f0c 100644 --- a/packages/hiccup-carbon-icons/src/storage.ts +++ b/packages/hiccup-carbon-icons/src/storage.ts @@ -1,7 +1,14 @@ -export const STORAGE = - ["svg", +export const STORAGE = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 24 24", + d: + "M11.9 1.3c5.4 0 9.3 1 10.6 1.7-1.3.7-4.9 1.6-10.6 1.6-5.6 0-9.1-1-10.3-1.6 1.1-.7 4.7-1.7 10.3-1.7zm0-1.3C5.1 0 0 1.4 0 3s5.1 3 11.9 3C18.7 6 24 4.6 24 3s-5.4-3-12.1-3zM12 18c-4.5 0-12-.7-12-3.2V12h1.2v2.9c0 .5 3.3 2 10.8 2 7.1 0 10.8-1.4 10.8-2V12H24v2.9c0 2.4-7.5 3.1-12 3.1zM12 24c-4.5 0-12-.7-12-3.2V18h1.2v2.8c0 .5 3.3 2 10.8 2 7.1 0 10.8-1.4 10.8-2V18H24v2.8c0 2.5-7.5 3.2-12 3.2zM12 12c-4.4 0-12-.7-12-3.2V6h1.2v2.8c0 .5 3.3 2 10.8 2 7.5 0 10.8-1.4 10.8-2V6H24v2.8c0 2.5-7.5 3.2-12 3.2z", }, - ["path", { d: "M11.9 1.3c5.4 0 9.3 1 10.6 1.7-1.3.7-4.9 1.6-10.6 1.6-5.6 0-9.1-1-10.3-1.6 1.1-.7 4.7-1.7 10.3-1.7zm0-1.3C5.1 0 0 1.4 0 3s5.1 3 11.9 3C18.7 6 24 4.6 24 3s-5.4-3-12.1-3zM12 18c-4.5 0-12-.7-12-3.2V12h1.2v2.9c0 .5 3.3 2 10.8 2 7.1 0 10.8-1.4 10.8-2V12H24v2.9c0 2.4-7.5 3.1-12 3.1zM12 24c-4.5 0-12-.7-12-3.2V18h1.2v2.8c0 .5 3.3 2 10.8 2 7.1 0 10.8-1.4 10.8-2V18H24v2.8c0 2.5-7.5 3.2-12 3.2zM12 12c-4.4 0-12-.7-12-3.2V6h1.2v2.8c0 .5 3.3 2 10.8 2 7.5 0 10.8-1.4 10.8-2V6H24v2.8c0 2.5-7.5 3.2-12 3.2z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/subtract-outline.ts b/packages/hiccup-carbon-icons/src/subtract-outline.ts index 1193da6173..ed4c30e2d4 100644 --- a/packages/hiccup-carbon-icons/src/subtract-outline.ts +++ b/packages/hiccup-carbon-icons/src/subtract-outline.ts @@ -1,9 +1,17 @@ -export const SUBTRACT_OUTLINE = - ["svg", { viewBox: "0 0 16 16" }, - ["g", { "fill-rule": "evenodd" }, - ["path", - { - "fill-rule": "nonzero", - d: "M8 14.5a6.5 6.5 0 1 0 0-13 6.5 6.5 0 0 0 0 13zM8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16z", - }], - ["path", { d: "M4 7h8v2H4z" }]]]; +export const SUBTRACT_OUTLINE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "g", + { "fill-rule": "evenodd" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M8 14.5a6.5 6.5 0 1 0 0-13 6.5 6.5 0 0 0 0 13zM8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16z", + }, + ], + ["path", { d: "M4 7h8v2H4z" }], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/subtract-solid.ts b/packages/hiccup-carbon-icons/src/subtract-solid.ts index 340ab1307b..0e561fd469 100644 --- a/packages/hiccup-carbon-icons/src/subtract-solid.ts +++ b/packages/hiccup-carbon-icons/src/subtract-solid.ts @@ -1,7 +1,11 @@ -export const SUBTRACT_SOLID = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "evenodd", - d: "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zM4 7v2h8V7H4z", - }]]; +export const SUBTRACT_SOLID = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "evenodd", + d: "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zM4 7v2h8V7H4z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/terminal.ts b/packages/hiccup-carbon-icons/src/terminal.ts index 854340d00d..8059b13bbb 100644 --- a/packages/hiccup-carbon-icons/src/terminal.ts +++ b/packages/hiccup-carbon-icons/src/terminal.ts @@ -1,4 +1,12 @@ -export const TERMINAL = - ["svg", { viewBox: "0 0 16 16" }, - ["path", { d: "M16 4.5V15c0 .6-.4 1-1 1H1c-.6 0-1-.4-1-1V1c0-.6.4-1 1-1h14c.6 0 1 .4 1 1v3.5zM15 4V1H1v3h14zm0 1H1v10h14V5z" }], - ["path", { d: "M3 8.4l.7-.8L6 9.9l-2.3 2.3-.7-.7 1.6-1.6z" }]]; +export const TERMINAL = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + d: + "M16 4.5V15c0 .6-.4 1-1 1H1c-.6 0-1-.4-1-1V1c0-.6.4-1 1-1h14c.6 0 1 .4 1 1v3.5zM15 4V1H1v3h14zm0 1H1v10h14V5z", + }, + ], + ["path", { d: "M3 8.4l.7-.8L6 9.9l-2.3 2.3-.7-.7 1.6-1.6z" }], +]; diff --git a/packages/hiccup-carbon-icons/src/unlock.ts b/packages/hiccup-carbon-icons/src/unlock.ts index a776396d72..8d096954c5 100644 --- a/packages/hiccup-carbon-icons/src/unlock.ts +++ b/packages/hiccup-carbon-icons/src/unlock.ts @@ -1,7 +1,12 @@ -export const UNLOCK = - ["svg", { viewBox: "0 0 12 16" }, - ["path", - { - "fill-rule": "nonzero", - d: "M2.5 7V3.5a3.5 3.5 0 0 1 7 0V4h-1v-.5a2.5 2.5 0 0 0-5 0V7h7A1.5 1.5 0 0 1 12 8.5v6a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 0 14.5v-6A1.5 1.5 0 0 1 1.5 7h1zm-1 1a.5.5 0 0 0-.5.5v6a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-6a.5.5 0 0 0-.5-.5h-9z", - }]]; +export const UNLOCK = [ + "svg", + { viewBox: "0 0 12 16" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M2.5 7V3.5a3.5 3.5 0 0 1 7 0V4h-1v-.5a2.5 2.5 0 0 0-5 0V7h7A1.5 1.5 0 0 1 12 8.5v6a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 0 14.5v-6A1.5 1.5 0 0 1 1.5 7h1zm-1 1a.5.5 0 0 0-.5.5v6a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-6a.5.5 0 0 0-.5-.5h-9z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/unlocked.ts b/packages/hiccup-carbon-icons/src/unlocked.ts index 574b77feb9..1d826a392b 100644 --- a/packages/hiccup-carbon-icons/src/unlocked.ts +++ b/packages/hiccup-carbon-icons/src/unlocked.ts @@ -1,7 +1,14 @@ -export const UNLOCKED = - ["svg", +export const UNLOCKED = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 18 24", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 18 24", + d: + "M9 6.5c-1.6 0-3.1.4-4.4 1.2V6.5c0-2.3 2-4.4 4.4-4.4 1.2 0 2.3.5 3.1 1.3l1.5-1.5C12.4.8 10.8 0 9 0 5.5 0 2.5 3 2.5 6.5v3C1.1 11 .3 13 .3 15.3.3 20.1 4.2 24 9 24c4.8 0 8.7-3.9 8.7-8.7 0-4.8-3.9-8.8-8.7-8.8zm4 11.3l-1.5 1.5L9 16.8l-2.5 2.5L5 17.8l2.5-2.5L5 12.8l1.5-1.5L9 13.7l2.5-2.5 1.5 1.6-2.5 2.5 2.5 2.5z", }, - ["path", { d: "M9 6.5c-1.6 0-3.1.4-4.4 1.2V6.5c0-2.3 2-4.4 4.4-4.4 1.2 0 2.3.5 3.1 1.3l1.5-1.5C12.4.8 10.8 0 9 0 5.5 0 2.5 3 2.5 6.5v3C1.1 11 .3 13 .3 15.3.3 20.1 4.2 24 9 24c4.8 0 8.7-3.9 8.7-8.7 0-4.8-3.9-8.8-8.7-8.8zm4 11.3l-1.5 1.5L9 16.8l-2.5 2.5L5 17.8l2.5-2.5L5 12.8l1.5-1.5L9 13.7l2.5-2.5 1.5 1.6-2.5 2.5 2.5 2.5z" }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/upload.ts b/packages/hiccup-carbon-icons/src/upload.ts index f8187a2d94..7bc67223ab 100644 --- a/packages/hiccup-carbon-icons/src/upload.ts +++ b/packages/hiccup-carbon-icons/src/upload.ts @@ -1,8 +1,9 @@ -export const UPLOAD = - ["svg", - { - "fill-rule": "evenodd", - viewBox: "0 0 24 24", - }, - ["path", { d: "M5 6.6l1.2 1.1L11 3v13h2V3l4.8 4.7L19 6.6 12 0z" }], - ["path", { d: "M22 14v6H2v-6H0v10H24V14z" }]]; +export const UPLOAD = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 24", + }, + ["path", { d: "M5 6.6l1.2 1.1L11 3v13h2V3l4.8 4.7L19 6.6 12 0z" }], + ["path", { d: "M22 14v6H2v-6H0v10H24V14z" }], +]; diff --git a/packages/hiccup-carbon-icons/src/user.ts b/packages/hiccup-carbon-icons/src/user.ts index 0294463880..259f7f8bb0 100644 --- a/packages/hiccup-carbon-icons/src/user.ts +++ b/packages/hiccup-carbon-icons/src/user.ts @@ -1,4 +1,18 @@ -export const USER = - ["svg", { viewBox: "0 0 16 16" }, - ["path", { d: "M4 13.7c1.1.8 2.5 1.3 4 1.3s2.9-.5 4-1.3v-1.2c0-.8-.7-1.5-1.5-1.5h-5c-.8 0-1.5.7-1.5 1.5v1.2zm-1-.8v-.4C3 11.1 4.1 10 5.5 10h5c1.4 0 2.5 1.1 2.5 2.5v.4c1.2-1.3 2-3 2-4.9 0-3.9-3.1-7-7-7S1 4.1 1 8c0 1.9.8 3.6 2 4.9zM8 16c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8z" }], - ["path", { d: "M8 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 1C6.3 9 5 7.7 5 6s1.3-3 3-3 3 1.3 3 3-1.3 3-3 3z" }]]; +export const USER = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + d: + "M4 13.7c1.1.8 2.5 1.3 4 1.3s2.9-.5 4-1.3v-1.2c0-.8-.7-1.5-1.5-1.5h-5c-.8 0-1.5.7-1.5 1.5v1.2zm-1-.8v-.4C3 11.1 4.1 10 5.5 10h5c1.4 0 2.5 1.1 2.5 2.5v.4c1.2-1.3 2-3 2-4.9 0-3.9-3.1-7-7-7S1 4.1 1 8c0 1.9.8 3.6 2 4.9zM8 16c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8z", + }, + ], + [ + "path", + { + d: + "M8 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 1C6.3 9 5 7.7 5 6s1.3-3 3-3 3 1.3 3 3-1.3 3-3 3z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/utils/with-size.ts b/packages/hiccup-carbon-icons/src/utils/with-size.ts index dec4eae945..cfe29c53a5 100644 --- a/packages/hiccup-carbon-icons/src/utils/with-size.ts +++ b/packages/hiccup-carbon-icons/src/utils/with-size.ts @@ -1,7 +1,5 @@ -export const withSize = - (icon: any[], size: string) => - [ - icon[0], - { ...icon[1], width: size, height: size }, - ...icon.slice(2) - ]; +export const withSize = (icon: any[], size: string) => [ + icon[0], + { ...icon[1], width: size, height: size }, + ...icon.slice(2), +]; diff --git a/packages/hiccup-carbon-icons/src/visibility-off.ts b/packages/hiccup-carbon-icons/src/visibility-off.ts index b99c2891ad..50cf27942a 100644 --- a/packages/hiccup-carbon-icons/src/visibility-off.ts +++ b/packages/hiccup-carbon-icons/src/visibility-off.ts @@ -1,7 +1,12 @@ -export const VISIBILITY_OFF = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "nonzero", - d: "M11.846 3.45L15.293.007 16 .714l-3.284 3.281c1.261.902 2.377 2.212 3.347 3.93C14.02 11.642 11.333 13.5 8 13.5c-1.392 0-2.667-.324-3.822-.973L.703 16l-.706-.708 3.323-3.32C2.071 11.042.976 9.694.035 7.924 2.012 4.308 4.667 2.5 8 2.5c1.395 0 2.677.317 3.846.95zm-6.928 8.338c.944.477 1.97.712 3.082.712 2.795 0 5.076-1.483 6.907-4.568-.866-1.417-1.833-2.486-2.91-3.219l-1.55 1.55a3 3 0 0 1-4.185 4.182l-1.344 1.343zm-.882-.533l1.518-1.517A3 3 0 0 1 9.74 5.556l1.364-1.363C10.148 3.73 9.115 3.5 8 3.5c-2.798 0-5.047 1.439-6.819 4.432.842 1.465 1.792 2.568 2.855 3.323zm2.948-1.532a2 2 0 0 0 2.74-2.738l-2.74 2.738zm-.707-.707l2.74-2.738a2 2 0 0 0-2.74 2.738z", - }]]; +export const VISIBILITY_OFF = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M11.846 3.45L15.293.007 16 .714l-3.284 3.281c1.261.902 2.377 2.212 3.347 3.93C14.02 11.642 11.333 13.5 8 13.5c-1.392 0-2.667-.324-3.822-.973L.703 16l-.706-.708 3.323-3.32C2.071 11.042.976 9.694.035 7.924 2.012 4.308 4.667 2.5 8 2.5c1.395 0 2.677.317 3.846.95zm-6.928 8.338c.944.477 1.97.712 3.082.712 2.795 0 5.076-1.483 6.907-4.568-.866-1.417-1.833-2.486-2.91-3.219l-1.55 1.55a3 3 0 0 1-4.185 4.182l-1.344 1.343zm-.882-.533l1.518-1.517A3 3 0 0 1 9.74 5.556l1.364-1.363C10.148 3.73 9.115 3.5 8 3.5c-2.798 0-5.047 1.439-6.819 4.432.842 1.465 1.792 2.568 2.855 3.323zm2.948-1.532a2 2 0 0 0 2.74-2.738l-2.74 2.738zm-.707-.707l2.74-2.738a2 2 0 0 0-2.74 2.738z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/visibility-on.ts b/packages/hiccup-carbon-icons/src/visibility-on.ts index 6b67a5bf71..a3e4049ed4 100644 --- a/packages/hiccup-carbon-icons/src/visibility-on.ts +++ b/packages/hiccup-carbon-icons/src/visibility-on.ts @@ -1,4 +1,18 @@ -export const VISIBILITY_ON = - ["svg", { viewBox: "0 0 16 11" }, - ["path", { d: "M8 7.5c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 1c-1.7 0-3-1.3-3-3s1.3-3 3-3 3 1.3 3 3-1.3 3-3 3z" }], - ["path", { d: "M8 10c2.8 0 5.1-1.5 6.9-4.6C13.1 2.5 10.8 1 8 1 5.2 1 3 2.4 1.2 5.4 2.9 8.6 5.2 10 8 10zM8 0c3.3 0 6 1.8 8.1 5.4C14 9.2 11.3 11 8 11S2 9.2 0 5.5C2 1.9 4.6 0 8 0z" }]]; +export const VISIBILITY_ON = [ + "svg", + { viewBox: "0 0 16 11" }, + [ + "path", + { + d: + "M8 7.5c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 1c-1.7 0-3-1.3-3-3s1.3-3 3-3 3 1.3 3 3-1.3 3-3 3z", + }, + ], + [ + "path", + { + d: + "M8 10c2.8 0 5.1-1.5 6.9-4.6C13.1 2.5 10.8 1 8 1 5.2 1 3 2.4 1.2 5.4 2.9 8.6 5.2 10 8 10zM8 0c3.3 0 6 1.8 8.1 5.4C14 9.2 11.3 11 8 11S2 9.2 0 5.5C2 1.9 4.6 0 8 0z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/warning-outline.ts b/packages/hiccup-carbon-icons/src/warning-outline.ts index c50bc9fa28..1ac1e5fd30 100644 --- a/packages/hiccup-carbon-icons/src/warning-outline.ts +++ b/packages/hiccup-carbon-icons/src/warning-outline.ts @@ -1,15 +1,25 @@ -export const WARNING_OUTLINE = - ["svg", { viewBox: "0 0 16 16" }, - ["g", { "fill-rule": "evenodd" }, - ["path", { d: "M7.25 6h1.5v5h-1.5z" }], - ["circle", - { - r: 1, - cy: 12.75, - cx: 8, - }], - ["path", - { - "fill-rule": "nonzero", - d: "M.75 16a.75.75 0 0 1-.67-1.085L7.33.415a.75.75 0 0 1 1.34 0l7.25 14.5A.75.75 0 0 1 15.25 16H.75zm1.214-1.5h12.072L8 2.427 1.964 14.5z", - }]]]; +export const WARNING_OUTLINE = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "g", + { "fill-rule": "evenodd" }, + ["path", { d: "M7.25 6h1.5v5h-1.5z" }], + [ + "circle", + { + r: 1, + cy: 12.75, + cx: 8, + }, + ], + [ + "path", + { + "fill-rule": "nonzero", + d: + "M.75 16a.75.75 0 0 1-.67-1.085L7.33.415a.75.75 0 0 1 1.34 0l7.25 14.5A.75.75 0 0 1 15.25 16H.75zm1.214-1.5h12.072L8 2.427 1.964 14.5z", + }, + ], + ], +]; diff --git a/packages/hiccup-carbon-icons/src/warning-solid.ts b/packages/hiccup-carbon-icons/src/warning-solid.ts index 2195a4fbe8..1f5d882f9f 100644 --- a/packages/hiccup-carbon-icons/src/warning-solid.ts +++ b/packages/hiccup-carbon-icons/src/warning-solid.ts @@ -1,7 +1,12 @@ -export const WARNING_SOLID = - ["svg", { viewBox: "0 0 16 16" }, - ["path", - { - "fill-rule": "nonzero", - d: "M.75 16a.75.75 0 0 1-.67-1.085L7.33.415a.75.75 0 0 1 1.34 0l7.25 14.5A.75.75 0 0 1 15.25 16H.75zm6.5-10v5h1.5V6h-1.5zM8 13.5A.75.75 0 1 0 8 12a.75.75 0 0 0 0 1.5z", - }]]; +export const WARNING_SOLID = [ + "svg", + { viewBox: "0 0 16 16" }, + [ + "path", + { + "fill-rule": "nonzero", + d: + "M.75 16a.75.75 0 0 1-.67-1.085L7.33.415a.75.75 0 0 1 1.34 0l7.25 14.5A.75.75 0 0 1 15.25 16H.75zm6.5-10v5h1.5V6h-1.5zM8 13.5A.75.75 0 1 0 8 12a.75.75 0 0 0 0 1.5z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/warning.ts b/packages/hiccup-carbon-icons/src/warning.ts index c1ced4836d..5ba5641d9c 100644 --- a/packages/hiccup-carbon-icons/src/warning.ts +++ b/packages/hiccup-carbon-icons/src/warning.ts @@ -1,14 +1,17 @@ -export const WARNING = - ["svg", +export const WARNING = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 24 21", + }, + ["path", { d: "M12 0L0 21h24L12 0zm0 3l9 16H3l9-16z" }], + ["path", { d: "M11.2 8.4V10l.4 4h.8l.4-4V8.4z" }], + [ + "circle", { - "fill-rule": "evenodd", - viewBox: "0 0 24 21", + r: 0.8, + cy: 16, + cx: 12, }, - ["path", { d: "M12 0L0 21h24L12 0zm0 3l9 16H3l9-16z" }], - ["path", { d: "M11.2 8.4V10l.4 4h.8l.4-4V8.4z" }], - ["circle", - { - r: 0.8, - cy: 16, - cx: 12, - }]]; + ], +]; diff --git a/packages/hiccup-carbon-icons/src/watson.ts b/packages/hiccup-carbon-icons/src/watson.ts index 56d11dbdd2..5b342ea0c4 100644 --- a/packages/hiccup-carbon-icons/src/watson.ts +++ b/packages/hiccup-carbon-icons/src/watson.ts @@ -1,3 +1,11 @@ -export const WATSON = - ["svg", { viewBox: "0 0 24 22" }, - ["path", { d: "M16.3 5.9c-2-1.1-4.3-1.5-6.5-.9-.3.1-.5.5-.4.8.1.3.4.5.8.4 1-.3 2.1-.3 3.1-.1-1.6.8-3.4 2.7-4.9 5.2-.5.9-1 1.9-1.3 2.9-.4-.4-.7-.8-1-1.2-.8-1.3-.9-2.4-.5-3.2.5-.8 1.6-1.3 3.2-1.2.3 0 .6-.3.7-.6 0-.3-.3-.6-.6-.7-2.1-.2-3.6.5-4.4 1.8-.7 1.2-.5 2.8.5 4.4.4.7 1 1.3 1.6 2-.1.5-.2 1-.3 1.4V18c-.7-.9-1.2-1.9-1.5-3-.1-.3-.4-.5-.8-.5-.3.1-.5.4-.5.8.6 2.3 2 4.3 4.1 5.5C9 21.6 10.5 22 12 22c3 0 5.9-1.5 7.5-4.3 2.4-4.1.9-9.4-3.2-11.8zm-6.9 6c2.2-3.8 5-5.6 6.2-4.9 3.5 2 4.7 6.6 2.7 10.1-1 1.7-4.8 1.5-8.3-.5-.8-.4-1.5-1-2.1-1.5.5-1 .9-2.1 1.5-3.2zm-1.1 7.9c-.6-.3-.9-1.3-.7-2.7 0-.2.1-.4.1-.6l1.8 1.2c2.1 1.2 4.2 1.8 6 1.8h.6c-2.2 1.5-5.3 1.7-7.8.3zM3.2 7.6L.9 6.3c-.3-.2-.6-.1-.8.2-.2.3-.1.7.2.8l2.3 1.3c.1.1.2.1.3.1.2 0 .4-.1.5-.3.2-.3.1-.7-.2-.8zM12 3.5c.3 0 .6-.3.6-.6V.6c0-.3-.3-.6-.6-.6s-.6.3-.6.6v2.2c0 .4.3.7.6.7zM17 4.8c.1.1.2.1.3.1.2 0 .4-.1.5-.3l1.2-2c.2-.3.1-.7-.2-.8-.3-.2-.7-.1-.9.2l-1.2 2c-.1.2 0 .6.3.8zM7 4.8c-.1 0-.2.1-.3.1-.2 0-.4-.1-.5-.3L5 2.6c-.1-.3 0-.7.3-.9.3-.2.7-.1.9.2l1.2 2c0 .3-.1.7-.4.9zM23.9 6.5c-.2-.3-.6-.4-.9-.2l-2.3 1.3c-.3.2-.4.6-.2.9.1.2.3.3.5.3.1 0 .2 0 .3-.1l2.3-1.3c.4-.2.5-.6.3-.9z" }]]; +export const WATSON = [ + "svg", + { viewBox: "0 0 24 22" }, + [ + "path", + { + d: + "M16.3 5.9c-2-1.1-4.3-1.5-6.5-.9-.3.1-.5.5-.4.8.1.3.4.5.8.4 1-.3 2.1-.3 3.1-.1-1.6.8-3.4 2.7-4.9 5.2-.5.9-1 1.9-1.3 2.9-.4-.4-.7-.8-1-1.2-.8-1.3-.9-2.4-.5-3.2.5-.8 1.6-1.3 3.2-1.2.3 0 .6-.3.7-.6 0-.3-.3-.6-.6-.7-2.1-.2-3.6.5-4.4 1.8-.7 1.2-.5 2.8.5 4.4.4.7 1 1.3 1.6 2-.1.5-.2 1-.3 1.4V18c-.7-.9-1.2-1.9-1.5-3-.1-.3-.4-.5-.8-.5-.3.1-.5.4-.5.8.6 2.3 2 4.3 4.1 5.5C9 21.6 10.5 22 12 22c3 0 5.9-1.5 7.5-4.3 2.4-4.1.9-9.4-3.2-11.8zm-6.9 6c2.2-3.8 5-5.6 6.2-4.9 3.5 2 4.7 6.6 2.7 10.1-1 1.7-4.8 1.5-8.3-.5-.8-.4-1.5-1-2.1-1.5.5-1 .9-2.1 1.5-3.2zm-1.1 7.9c-.6-.3-.9-1.3-.7-2.7 0-.2.1-.4.1-.6l1.8 1.2c2.1 1.2 4.2 1.8 6 1.8h.6c-2.2 1.5-5.3 1.7-7.8.3zM3.2 7.6L.9 6.3c-.3-.2-.6-.1-.8.2-.2.3-.1.7.2.8l2.3 1.3c.1.1.2.1.3.1.2 0 .4-.1.5-.3.2-.3.1-.7-.2-.8zM12 3.5c.3 0 .6-.3.6-.6V.6c0-.3-.3-.6-.6-.6s-.6.3-.6.6v2.2c0 .4.3.7.6.7zM17 4.8c.1.1.2.1.3.1.2 0 .4-.1.5-.3l1.2-2c.2-.3.1-.7-.2-.8-.3-.2-.7-.1-.9.2l-1.2 2c-.1.2 0 .6.3.8zM7 4.8c-.1 0-.2.1-.3.1-.2 0-.4-.1-.5-.3L5 2.6c-.1-.3 0-.7.3-.9.3-.2.7-.1.9.2l1.2 2c0 .3-.1.7-.4.9zM23.9 6.5c-.2-.3-.6-.4-.9-.2l-2.3 1.3c-.3.2-.4.6-.2.9.1.2.3.3.5.3.1 0 .2 0 .3-.1l2.3-1.3c.4-.2.5-.6.3-.9z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/src/whisk.ts b/packages/hiccup-carbon-icons/src/whisk.ts index 0e0c1be36a..461922addb 100644 --- a/packages/hiccup-carbon-icons/src/whisk.ts +++ b/packages/hiccup-carbon-icons/src/whisk.ts @@ -1,8 +1,21 @@ -export const WHISK = - ["svg", +export const WHISK = [ + "svg", + { + "fill-rule": "evenodd", + viewBox: "0 0 25 16", + }, + [ + "path", { - "fill-rule": "evenodd", - viewBox: "0 0 25 16", + d: + "M9.9 9.7L4.5 0 0 8l4.5 8h8l.5-.8 3-5.5H9.9zm-4.7 5.1L1.4 8l3.1-5.5 6.9 12.3H5.2zm7.2-1.1l-1.6-2.8h3.1l-1.5 2.8z", }, - ["path", { d: "M9.9 9.7L4.5 0 0 8l4.5 8h8l.5-.8 3-5.5H9.9zm-4.7 5.1L1.4 8l3.1-5.5 6.9 12.3H5.2zm7.2-1.1l-1.6-2.8h3.1l-1.5 2.8z" }], - ["path", { d: "M19.5 0h-7.8l-.6 1.1-3 5.5h6l5.3 9.5L24 8l-4.5-8zm-9.3 5.3l1.5-2.8 1.6 2.8h-3.1zm2.4-4.1h6.2L22.6 8l-3.1 5.5-6.9-12.3z" }]]; + ], + [ + "path", + { + d: + "M19.5 0h-7.8l-.6 1.1-3 5.5h6l5.3 9.5L24 8l-4.5-8zm-9.3 5.3l1.5-2.8 1.6 2.8h-3.1zm2.4-4.1h6.2L22.6 8l-3.1 5.5-6.9-12.3z", + }, + ], +]; diff --git a/packages/hiccup-carbon-icons/test/contact-sheet.ts b/packages/hiccup-carbon-icons/test/contact-sheet.ts index 404e83ae18..f37f8da530 100644 --- a/packages/hiccup-carbon-icons/test/contact-sheet.ts +++ b/packages/hiccup-carbon-icons/test/contact-sheet.ts @@ -3,9 +3,7 @@ import { execSync } from "child_process"; import * as fs from "fs"; import * as icons from "../src/index"; -const REV = execSync('git log --pretty="%h %cI" -1') - .toString() - .trim(); +const REV = execSync('git log --pretty="%h %cI" -1').toString().trim(); // prettier-ignore fs.writeFileSync( diff --git a/packages/hiccup-css/CHANGELOG.md b/packages/hiccup-css/CHANGELOG.md index 4659253cf1..2c47804dc6 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.27](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-css@1.1.26...@thi.ng/hiccup-css@1.1.27) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/hiccup-css + + + + + ## [1.1.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-css@1.1.25...@thi.ng/hiccup-css@1.1.26) (2020-06-01) **Note:** Version bump only for package @thi.ng/hiccup-css diff --git a/packages/hiccup-css/package.json b/packages/hiccup-css/package.json index ca63f85787..14fae75484 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.26", + "version": "1.1.27", "description": "CSS from nested JS data structures", "module": "./index.js", "main": "./lib/index.js", @@ -43,10 +43,10 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", "@thi.ng/errors": "^1.2.14", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/hiccup-css/src/animation.ts b/packages/hiccup-css/src/animation.ts index a442dbc7ac..0c0610dae7 100644 --- a/packages/hiccup-css/src/animation.ts +++ b/packages/hiccup-css/src/animation.ts @@ -63,7 +63,7 @@ export const animation = ( opts = { duration: "250ms", name: id, - ...opts + ...opts, }; return [ at_keyframes.apply(null, [id, ...keyframes]), @@ -74,7 +74,7 @@ export const animation = ( (acc[`animation-${k}`] = (opts)[k]), acc ), {} - ) - ] + ), + ], ]; }; diff --git a/packages/hiccup-css/src/api.ts b/packages/hiccup-css/src/api.ts index c926636d4a..9f864142c1 100644 --- a/packages/hiccup-css/src/api.ts +++ b/packages/hiccup-css/src/api.ts @@ -83,7 +83,7 @@ export const COMPACT: Format = { declStart: "{", declEnd: "}", indent: "", - comments: false + comments: false, }; /** @@ -98,5 +98,5 @@ export const PRETTY: Format = { declStart: " {\n", declEnd: "}\n", indent: " ", - comments: true + comments: true, }; diff --git a/packages/hiccup-css/src/css.ts b/packages/hiccup-css/src/css.ts index 5c65ce78ad..4a3be72337 100644 --- a/packages/hiccup-css/src/css.ts +++ b/packages/hiccup-css/src/css.ts @@ -3,7 +3,7 @@ import { isFunction, isIterable, isPlainObject, - isString + isString, } from "@thi.ng/checks"; import { COMPACT, CSSOpts, DEFAULT_VENDORS } from "./api"; import { expand, formatDecls } from "./impl"; @@ -14,7 +14,7 @@ export const css = (rules: any, opts?: Partial) => { vendors: DEFAULT_VENDORS, fns: {}, depth: 0, - ...opts + ...opts, }; if (isPlainObject(rules)) { return formatDecls(rules, opts); diff --git a/packages/hiccup-css/src/impl.ts b/packages/hiccup-css/src/impl.ts index 0a1dbf6a35..e003f29aca 100644 --- a/packages/hiccup-css/src/impl.ts +++ b/packages/hiccup-css/src/impl.ts @@ -3,7 +3,7 @@ import { isFunction, isIterable, isPlainObject, - isString + isString, } from "@thi.ng/checks"; import { illegalArgs } from "@thi.ng/errors"; import { @@ -14,7 +14,7 @@ import { repeat, str, transduce, - Transducer + Transducer, } from "@thi.ng/transducers"; import type { FnAny } from "@thi.ng/api"; import type { CSSOpts, RuleFn } from "./api"; @@ -98,7 +98,7 @@ const formatRule = (parent: any[], sel: any[], curr: any, opts: CSSOpts) => { f.declStart, formatDecls(curr, opts), space, - f.declEnd + f.declEnd, ].join(""); }; diff --git a/packages/hiccup-css/src/keyframes.ts b/packages/hiccup-css/src/keyframes.ts index 33ea22acb9..e4128a9798 100644 --- a/packages/hiccup-css/src/keyframes.ts +++ b/packages/hiccup-css/src/keyframes.ts @@ -63,7 +63,7 @@ export function at_keyframes(id: string, ...args: any[]): RuleFn { opts.format.declStart, formatDecls(stops[s], opts), inner, - opts.format.declEnd + opts.format.declEnd, ].join("") ); } diff --git a/packages/hiccup-css/src/quoted-functions.ts b/packages/hiccup-css/src/quoted-functions.ts index b43eea0f93..56ae860d30 100644 --- a/packages/hiccup-css/src/quoted-functions.ts +++ b/packages/hiccup-css/src/quoted-functions.ts @@ -12,5 +12,5 @@ export const QUOTED_FNS = { "@keyframes": at_keyframes, "@media": at_media, "@namespace": at_namespace, - "@supports": at_supports + "@supports": at_supports, }; diff --git a/packages/hiccup-css/test/index.ts b/packages/hiccup-css/test/index.ts index ba70a2b7a5..86da1396ac 100644 --- a/packages/hiccup-css/test/index.ts +++ b/packages/hiccup-css/test/index.ts @@ -5,15 +5,14 @@ import { at_keyframes, at_media, css, - PRETTY + PRETTY, } from "../src"; - const rules = { a: { color: "red" }, b: { border: 0 }, c: { font: [["14px", "Inconsolata"], "monospace"] }, - f: { foo: (rules: any) => rules.bar, bar: 1 } + f: { foo: (rules: any) => rules.bar, bar: 1 }, }; describe("hiccup-css", () => { @@ -30,7 +29,10 @@ describe("hiccup-css", () => { assert.equal(css(["a"]), ""); assert.equal(css(["a", rules.a]), "a{color:red;}"); assert.equal( - css([["a", rules.a], ["b", rules.b]]), + css([ + ["a", rules.a], + ["b", rules.b], + ]), "a{color:red;}b{border:0;}" ); assert.equal( @@ -52,7 +54,7 @@ describe("hiccup-css", () => { css([ "#id", ["h1", {}, {}], - ["h2", "h3", ["div", {}], ["[attr]", ["span", rules.a]]] + ["h2", "h3", ["div", {}], ["[attr]", ["span", rules.a]]], ]), "#id h1{}#id h2 div,#id h3 div{}#id h2[attr] span,#id h3[attr] span{color:red;}" ); @@ -68,8 +70,8 @@ describe("hiccup-css", () => { "h2", "h3", ["div", rules.b], - ["[attr]", ["span", rules.a]] - ] + ["[attr]", ["span", rules.a]], + ], ], { format: PRETTY } ), @@ -98,7 +100,7 @@ describe("hiccup-css", () => { css( at_keyframes("fadein", { 0: { opacity: 0 }, - 100: { opacity: 1 } + 100: { opacity: 1 }, }) ), "@keyframes fadein{0%{opacity:0;}100%{opacity:1;}}" @@ -134,9 +136,9 @@ describe("hiccup-css", () => { [ at_media({ print: true, "max-width": "20rem" }, [ "div", - rules.b - ]) - ] + rules.b, + ]), + ], ]) ), "@media screen and print{div .foo{color:red;}@media print and (max-width:20rem){div{border:0;}}}" diff --git a/packages/hiccup-markdown/CHANGELOG.md b/packages/hiccup-markdown/CHANGELOG.md index d4085a5021..0b5d64fc7a 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.16](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-markdown@1.2.15...@thi.ng/hiccup-markdown@1.2.16) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/hiccup-markdown + + + + + ## [1.2.15](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-markdown@1.2.14...@thi.ng/hiccup-markdown@1.2.15) (2020-06-01) **Note:** Version bump only for package @thi.ng/hiccup-markdown diff --git a/packages/hiccup-markdown/package.json b/packages/hiccup-markdown/package.json index cc3c252698..63035021fe 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.15", + "version": "1.2.16", "description": "Markdown parser & serializer from/to Hiccup format", "module": "./index.js", "main": "./lib/index.js", @@ -43,15 +43,15 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/arrays": "^0.6.8", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/defmulti": "^1.2.16", + "@thi.ng/arrays": "^0.6.9", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/defmulti": "^1.2.17", "@thi.ng/errors": "^1.2.14", - "@thi.ng/fsm": "^2.4.12", - "@thi.ng/hiccup": "^3.2.24", - "@thi.ng/strings": "^1.8.9", - "@thi.ng/text-canvas": "^0.2.15", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/fsm": "^2.4.13", + "@thi.ng/hiccup": "^3.2.25", + "@thi.ng/strings": "^1.8.10", + "@thi.ng/text-canvas": "^0.2.16", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/hiccup-markdown/src/parse.ts b/packages/hiccup-markdown/src/parse.ts index 7d9ec5560e..62670bd6f1 100644 --- a/packages/hiccup-markdown/src/parse.ts +++ b/packages/hiccup-markdown/src/parse.ts @@ -8,7 +8,7 @@ import { seq, str, untilStr, - whitespace + whitespace, } from "@thi.ng/fsm"; import { comp, filter } from "@thi.ng/transducers"; import type { Fn, Fn2 } from "@thi.ng/api"; @@ -38,7 +38,7 @@ const enum State { START_CODEBLOCK, STRIKE, STRONG, - TABLE + TABLE, } /** @@ -74,7 +74,7 @@ const DEFAULT_TAGS: TagFactories = { strike: (body) => ["del", body], table: (rows) => ["table", ["tbody", ...rows]], td: (_, xs) => ["td", ...xs], - tr: (_, xs) => ["tr", ...xs] + tr: (_, xs) => ["tr", ...xs], }; const BQUOTE = ">"; @@ -185,7 +185,7 @@ const matchInline = (id: State) => [ str(STRIKE, push(id, State.STRIKE)), str(STRONG, push(id, State.STRONG)), str(EM, push(id, State.EMPHASIS)), - str(CODE, push(id, State.CODE)) + str(CODE, push(id, State.CODE)), ]; const matchLink = (result: Fn2) => @@ -199,7 +199,7 @@ const matchLink = (result: Fn2) => untilStr( LINK_HREF_END, (ctx, body) => ((ctx.href = body), undefined) - ) + ), ], pop((ctx: FSMCtx) => result(ctx.href!, ctx.title!)) ); @@ -208,7 +208,7 @@ const matchPara = (id: State, next: State) => alts( [ ...matchInline(id), - str(NL, (ctx: FSMCtx) => ((ctx.body += " "), [next])) + str(NL, (ctx: FSMCtx) => ((ctx.body += " "), [next])), ], collect(id) ); @@ -257,21 +257,21 @@ export const parse = (_tags?: Partial) => { alts( [ seq([str(CODE), not(str(CODE))], newParaCode), - str(CODEBLOCK, () => [State.START_CODEBLOCK]) + str(CODEBLOCK, () => [State.START_CODEBLOCK]), ], undefined, (_, next) => next ), seq([repeat(str(HR), 3, Infinity), str(NL)], () => [ State.START, - [tags.hr()] + [tags.hr()], ]), str(IMG, newParaInline(State.IMG)), str(LINK_LABEL, newParaInline(State.LINK)), str(STRONG, newParaInline(State.STRONG)), str(STRIKE, newParaInline(State.STRIKE)), str(EM, newParaInline(State.EMPHASIS)), - str(TD, newTable) + str(TD, newTable), ], newPara ), @@ -281,7 +281,7 @@ export const parse = (_tags?: Partial) => { [State.END_PARA]: alts( [ ...matchInline(State.PARA), - str(NL, collectAndRestart(tags.paragraph)) + str(NL, collectAndRestart(tags.paragraph)), ], collect(State.PARA) ), @@ -295,7 +295,7 @@ export const parse = (_tags?: Partial) => { [ ...matchInline(State.BLOCKQUOTE), str(BQUOTE, collectBlockQuote), - str(NL, collectAndRestart(tags.blockquote)) + str(NL, collectAndRestart(tags.blockquote)), ], collect(State.BLOCKQUOTE) ), @@ -305,7 +305,7 @@ export const parse = (_tags?: Partial) => { [State.END_HEADING]: alts( [ ...matchInline(State.HEADING), - str(NL, collectHeading(tags.heading)) + str(NL, collectHeading(tags.heading)), ], collect(State.HEADING) ), @@ -331,7 +331,7 @@ export const parse = (_tags?: Partial) => { collectLi(ctx, tags.li), transition(ctx, State.LI) ) - ) + ), ], collect(State.LI) ), @@ -352,15 +352,15 @@ export const parse = (_tags?: Partial) => { [ ...matchInline(State.TABLE), str(TD, collectTD(tags.td)), - str(NL, collectTR(tags.tr)) + str(NL, collectTR(tags.tr)), ], collect(State.TABLE) ), [State.END_TABLE]: alts([ str(NL, collectTable(tags.table)), - str(TD, () => [State.TABLE]) - ]) + str(TD, () => [State.TABLE]), + ]), }, { stack: [] }, State.START diff --git a/packages/hiccup-markdown/src/serialize.ts b/packages/hiccup-markdown/src/serialize.ts index af4af020ad..61523fe7b6 100644 --- a/packages/hiccup-markdown/src/serialize.ts +++ b/packages/hiccup-markdown/src/serialize.ts @@ -2,7 +2,7 @@ import { implementsFunction, isFunction, isNotStringAndIterable, - isString + isString, } from "@thi.ng/checks"; import { DEFAULT, defmulti, MultiFn3 } from "@thi.ng/defmulti"; import { illegalArgs } from "@thi.ng/errors"; @@ -122,7 +122,7 @@ serializeElement.addAll({ `\n\`\`\`${el[1].lang || ""}\n${body(el, ctx, { ...state, pre: true, - sep: "\n" + sep: "\n", })}\n\`\`\`\n`, code: (el, ctx, state) => @@ -132,7 +132,7 @@ serializeElement.addAll({ const cstate: SerializeState = { ...state, indent: state.indent + 4, - sep: "\n" + sep: "\n", }; return wrap(state.indent === 0 ? "\n" : "")(body(el, ctx, cstate)); }, @@ -142,7 +142,7 @@ serializeElement.addAll({ ...state, indent: state.indent + 4, id: 0, - sep: "\n" + sep: "\n", }; return wrap(state.indent === 0 ? "\n" : "")(body(el, ctx, cstate)); }, @@ -197,7 +197,7 @@ serializeElement.addAll({ { cols: colWidths.map((width) => ({ width })), padding: [1, 0], - border: Border.V + border: Border.V, }, [...thead, colWidths.map((w) => repeat("-", w)), ...tbody] ) @@ -206,7 +206,7 @@ serializeElement.addAll({ caption + "\n" ); - } + }, }); serializeElement.isa("th", "strong"); diff --git a/packages/hiccup-markdown/test/parse.ts b/packages/hiccup-markdown/test/parse.ts index 9ac5fdf940..e58db6cb81 100644 --- a/packages/hiccup-markdown/test/parse.ts +++ b/packages/hiccup-markdown/test/parse.ts @@ -9,7 +9,7 @@ describe("parse", () => { it("CRLF", () => { check(`# hello\r\n\r\nworld\r\n\r\n`, [ ["h1", " hello "], - ["p", "world "] + ["p", "world "], ]); }); @@ -23,75 +23,75 @@ describe("parse", () => { ["br"], " two ", ["em", "lines"], - ". " - ] + ". ", + ], ]); }); it("code", () => { check("inline `const example = 'indeed!'` code\n\n", [ - ["p", "inline ", ["code", "const example = 'indeed!'"], " code "] + ["p", "inline ", ["code", "const example = 'indeed!'"], " code "], ]); }); it("code_block", () => { check("```js\nconst code = () => 'indeed!'\n```\n", [ - ["pre", { lang: "js" }, "const code = () => 'indeed!'"] + ["pre", { lang: "js" }, "const code = () => 'indeed!'"], ]); }); it("em", () => { check(`some _emphasized_ text\n\n`, [ - ["p", "some ", ["em", "emphasized"], " text "] + ["p", "some ", ["em", "emphasized"], " text "], ]); }); it("h1", () => { check(`# Heading One\n\nbody\n\n`, [ ["h1", " Heading One "], - ["p", "body "] + ["p", "body "], ]); }); it("h2", () => { check(`## Heading Two\n\nbody\n\n`, [ ["h2", " Heading Two "], - ["p", "body "] + ["p", "body "], ]); }); it("h3", () => { check(`### Heading Three\n\nbody\n\n`, [ ["h3", " Heading Three "], - ["p", "body "] + ["p", "body "], ]); }); it("h4", () => { check(`#### Heading Four\n\nbody\n\n`, [ ["h4", " Heading Four "], - ["p", "body "] + ["p", "body "], ]); }); it("h5", () => { check(`##### Heading Five\n\nbody\n\n`, [ ["h5", " Heading Five "], - ["p", "body "] + ["p", "body "], ]); }); it("h6", () => { check(`###### Heading Six\n\nbody\n\n`, [ ["h6", " Heading Six "], - ["p", "body "] + ["p", "body "], ]); }); it("h7", () => { check(`####### Heading Seven\n\nbody\n\n`, [ ["p", " Heading Seven "], - ["p", "body "] + ["p", "body "], ]); }); @@ -110,18 +110,18 @@ describe("parse", () => { { src: "https://media.giphy.com/media/f6qMGmXuOdkwU/giphy.gif", - alt: "thi.ng" - } + alt: "thi.ng", + }, ], - " " - ] + " ", + ], ] ); }); it("li", () => { check(`- an item\n- another\n\n`, [ - ["ul", ["li", "an item "], ["li", "another "]] + ["ul", ["li", "an item "], ["li", "another "]], ]); }); @@ -131,20 +131,20 @@ describe("parse", () => { "p", "come ", ["a", { href: "http://thi.ng/umbrella" }, "to"], - " the light " - ] + " the light ", + ], ]); }); it("strike", () => { check(`I ~~am amazing~~ messed up\n\n`, [ - ["p", "I ", ["del", "am amazing"], " messed up "] + ["p", "I ", ["del", "am amazing"], " messed up "], ]); }); it("strong", () => { check(`I **really** meant that\n\n`, [ - ["p", "I ", ["strong", "really"], " meant that "] + ["p", "I ", ["strong", "really"], " meant that "], ]); }); @@ -155,9 +155,9 @@ describe("parse", () => { [ "tbody", ["tr", ["td", " col1 "], ["td", " col2 "]], - ["tr", ["td", " row1 "], ["td", " row2 "]] - ] - ] + ["tr", ["td", " row1 "], ["td", " row2 "]], + ], + ], ]); }); }); diff --git a/packages/hiccup-markdown/test/serialize.ts b/packages/hiccup-markdown/test/serialize.ts index 64e529d67d..b918b6f678 100644 --- a/packages/hiccup-markdown/test/serialize.ts +++ b/packages/hiccup-markdown/test/serialize.ts @@ -10,21 +10,21 @@ describe("hiccup-markdown", () => { // rest args are converted to list items const list = (_: any, type: string, ...xs: any[]) => [ type, - ...xs.map((x) => (Array.isArray(x) ? x : ["li", x])) + ...xs.map((x) => (Array.isArray(x) ? x : ["li", x])), ]; // code block component w/ lang hint const codeblock = (_: any, lang: string, body: any[]) => [ "pre", { lang }, - ["code", body] + ["code", body], ]; // link component for thi.ng URLs const thingLink = (_: any, id: string, label: any) => [ "a", { href: `http://thi.ng/${id}` }, - label + label, ]; // Note: the same hiccup tree can be serialized to HTML via @thi.ng/hiccup or @@ -38,7 +38,7 @@ describe("hiccup-markdown", () => { "p", "This is a test: ", ["strong", "I am strong and ", ["em", "italic"]], - "..." + "...", ], // anon component fn to demo context lookup [(ctx: any) => ["p", `My magic number is: ${ctx.magic}`]], @@ -46,7 +46,7 @@ describe("hiccup-markdown", () => { [ codeblock, "ts", - `import { serialize } from "@thi.ng/hiccup-markdown";` + `import { serialize } from "@thi.ng/hiccup-markdown";`, ], // nested lists [ @@ -55,7 +55,7 @@ describe("hiccup-markdown", () => { "foo", "bar", [list, "ol", "b1", "b2", "b3"], - "baz" + "baz", ], ["blockquote", "So long and thanks for all the fish."], [ @@ -67,8 +67,8 @@ describe("hiccup-markdown", () => { "tr", ["th", "ID"], ["th", "Name"], - ["th", "Comment"] - ] + ["th", "Comment"], + ], ], [ "tbody", @@ -76,22 +76,22 @@ describe("hiccup-markdown", () => { "tr", ["th", 1], ["td", ["code", "map()"]], - ["td", "Transform"] + ["td", "Transform"], ], [ "tr", ["th", 2], ["td", ["code", "filter()"]], - ["td", "Predicate"] - ] - ] + ["td", "Predicate"], + ], + ], ], [ "p", "More info ", [thingLink, "hiccup-markdown", "here"], - "." - ] + ".", + ], ], // optional context object passed to all component functions { magic: 42 } diff --git a/packages/hiccup-svg/CHANGELOG.md b/packages/hiccup-svg/CHANGELOG.md index 03ee1d1612..01ceb1b6ca 100644 --- a/packages/hiccup-svg/CHANGELOG.md +++ b/packages/hiccup-svg/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.4.23](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-svg@3.4.22...@thi.ng/hiccup-svg@3.4.23) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/hiccup-svg + + + + + ## [3.4.22](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup-svg@3.4.21...@thi.ng/hiccup-svg@3.4.22) (2020-06-01) **Note:** Version bump only for package @thi.ng/hiccup-svg diff --git a/packages/hiccup-svg/package.json b/packages/hiccup-svg/package.json index 7ae941a7cf..6a3d988fa9 100644 --- a/packages/hiccup-svg/package.json +++ b/packages/hiccup-svg/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hiccup-svg", - "version": "3.4.22", + "version": "3.4.23", "description": "SVG element functions for @thi.ng/hiccup & @thi.ng/hdom", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/checks": "^2.7.0", - "@thi.ng/color": "^1.2.2", - "@thi.ng/hiccup": "^3.2.24", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/color": "^1.2.3", + "@thi.ng/hiccup": "^3.2.25", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/hiccup-svg/src/circle.ts b/packages/hiccup-svg/src/circle.ts index cb32544ca3..468ed95572 100644 --- a/packages/hiccup-svg/src/circle.ts +++ b/packages/hiccup-svg/src/circle.ts @@ -7,6 +7,6 @@ export const circle = (p: Vec2Like, r: number, attribs?: any): any[] => [ ...attribs, cx: ff(p[0]), cy: ff(p[1]), - r: ff(r) - }) + r: ff(r), + }), ]; diff --git a/packages/hiccup-svg/src/convert.ts b/packages/hiccup-svg/src/convert.ts index 19a90b19ea..10308a71d4 100644 --- a/packages/hiccup-svg/src/convert.ts +++ b/packages/hiccup-svg/src/convert.ts @@ -19,7 +19,7 @@ const ATTRIB_ALIASES: { [id: string]: string } = { lineCap: "stroke-linecap", lineJoin: "stroke-linejoin", miterLimit: "stroke-miterlimit", - weight: "stroke-width" + weight: "stroke-width", }; const TEXT_ALIGN: { [id: string]: string } = { @@ -27,7 +27,7 @@ const TEXT_ALIGN: { [id: string]: string } = { right: "end", center: "middle", start: "start", - end: "end" + end: "end", }; /** @@ -68,7 +68,7 @@ export const convertTree = (tree: any): any[] => { tree[2], { gradientUnits: attribs.gradientUnits || "userSpaceOnUse", - gradientTransform: attribs.gradientTransform + gradientTransform: attribs.gradientTransform, } ); case "radialGradient": @@ -81,7 +81,7 @@ export const convertTree = (tree: any): any[] => { tree[2], { gradientUnits: attribs.gradientUnits || "userSpaceOnUse", - gradientTransform: attribs.gradientTransform + gradientTransform: attribs.gradientTransform, } ); case "circle": diff --git a/packages/hiccup-svg/src/ellipse.ts b/packages/hiccup-svg/src/ellipse.ts index 745c59c6a9..375c7ffbed 100644 --- a/packages/hiccup-svg/src/ellipse.ts +++ b/packages/hiccup-svg/src/ellipse.ts @@ -13,6 +13,6 @@ export const ellipse = ( cx: ff(p[0]), cy: ff(p[1]), rx: ff(rx), - ry: ff(ry) - }) + ry: ff(ry), + }), ]; diff --git a/packages/hiccup-svg/src/gradients.ts b/packages/hiccup-svg/src/gradients.ts index a63b9d957c..fa51803132 100644 --- a/packages/hiccup-svg/src/gradients.ts +++ b/packages/hiccup-svg/src/gradients.ts @@ -6,7 +6,7 @@ const RE_ALPHA_COLOR = /(rgb|hsl)a\(([a-z0-9.-]+),([0-9.%]+),([0-9.%]+),([0-9.]+ const gradient = (type: string, attribs: any, stops: GradientStop[]): any[] => [ type, fattribs(attribs), - ...stops.map(gradientStop) + ...stops.map(gradientStop), ]; const gradientStop = ([offset, col]: GradientStop) => { @@ -37,7 +37,7 @@ export const linearGradient = ( x1: ff(from[0]), y1: ff(from[1]), x2: ff(to[0]), - y2: ff(to[1]) + y2: ff(to[1]), }, stops ); @@ -61,7 +61,7 @@ export const radialGradient = ( cx: ff(to[0]), cy: ff(to[1]), fr: ff(fr), - r: ff(r) + r: ff(r), }, stops ); diff --git a/packages/hiccup-svg/src/group.ts b/packages/hiccup-svg/src/group.ts index 38f10c0c7c..2abfb1bb35 100644 --- a/packages/hiccup-svg/src/group.ts +++ b/packages/hiccup-svg/src/group.ts @@ -3,5 +3,5 @@ import { fattribs } from "./format"; export const group = (attribs: any, ...body: any[]): any[] => [ "g", fattribs({ ...attribs }), - ...body + ...body, ]; diff --git a/packages/hiccup-svg/src/image.ts b/packages/hiccup-svg/src/image.ts index 4b3ce5c7ee..ac2ff423cf 100644 --- a/packages/hiccup-svg/src/image.ts +++ b/packages/hiccup-svg/src/image.ts @@ -8,6 +8,6 @@ export const image = (pos: Vec2Like, url: string, attribs?: any): any[] => [ // TODO replace w/ SVG2 `href` once Safari supports it "xlink:href": url, x: ff(pos[0]), - y: ff(pos[1]) - }) + y: ff(pos[1]), + }), ]; diff --git a/packages/hiccup-svg/src/line.ts b/packages/hiccup-svg/src/line.ts index bde46d8519..007e86d77a 100644 --- a/packages/hiccup-svg/src/line.ts +++ b/packages/hiccup-svg/src/line.ts @@ -8,8 +8,8 @@ export const line = (a: Vec2Like, b: Vec2Like, attribs?: any): any[] => [ x1: ff(a[0]), y1: ff(a[1]), x2: ff(b[0]), - y2: ff(b[1]) - }) + y2: ff(b[1]), + }), ]; export const hline = (y: number, attribs?: any) => diff --git a/packages/hiccup-svg/src/path.ts b/packages/hiccup-svg/src/path.ts index 6ade8848e1..509643476c 100644 --- a/packages/hiccup-svg/src/path.ts +++ b/packages/hiccup-svg/src/path.ts @@ -1,9 +1,4 @@ -import { - fattribs, - ff, - fpoint, - fpoints -} from "./format"; +import { fattribs, ff, fpoint, fpoints } from "./format"; import type { PathSegment } from "./api"; const DEG = 180 / Math.PI; @@ -28,7 +23,7 @@ export const path = (segments: PathSegment[], attribs?: any): any[] => { seg[5] ? 1 : 0, // target xy ff(seg[6]![0]), - ff(seg[6]![1]) + ff(seg[6]![1]), ].join(",") ); break; diff --git a/packages/hiccup-svg/src/points.ts b/packages/hiccup-svg/src/points.ts index 563ef2bf23..1009bb11d3 100644 --- a/packages/hiccup-svg/src/points.ts +++ b/packages/hiccup-svg/src/points.ts @@ -24,7 +24,7 @@ export const points = ( ): any[] => { const group = [ "g", - fattribs(withoutKeys(attribs, new Set(["shape", "size"]))) + fattribs(withoutKeys(attribs, new Set(["shape", "size"]))), ]; const href = buildSymbol(group, shape, size); for (let p of pts) { @@ -62,7 +62,7 @@ export const packedPoints = ( start: 0, cstride: 1, estride: 2, - ...attribs + ...attribs, }; const { start, cstride, estride } = attribs; let num = @@ -76,14 +76,14 @@ export const packedPoints = ( attribs, new Set(["start", "cstride", "estride", "shape", "size", "num"]) ) - ) + ), ]; const href = buildSymbol(group, shape, size); for (let i = start; --num >= 0; i += estride) { // TODO replace w/ SVG2 `href` once Safari supports it group.push([ "use", - { "xlink:href": href, x: ff(pts[i]), y: ff(pts[i + cstride]) } + { "xlink:href": href, x: ff(pts[i]), y: ff(pts[i + cstride]) }, ]); } return group; diff --git a/packages/hiccup-svg/src/polygon.ts b/packages/hiccup-svg/src/polygon.ts index e5d0603cae..81a48f1a0f 100644 --- a/packages/hiccup-svg/src/polygon.ts +++ b/packages/hiccup-svg/src/polygon.ts @@ -5,6 +5,6 @@ export const polygon = (pts: Vec2Like[], attribs?: any): any[] => [ "polygon", fattribs({ ...attribs, - points: fpoints(pts) - }) + points: fpoints(pts), + }), ]; diff --git a/packages/hiccup-svg/src/polyline.ts b/packages/hiccup-svg/src/polyline.ts index 8090b49051..923188f48b 100644 --- a/packages/hiccup-svg/src/polyline.ts +++ b/packages/hiccup-svg/src/polyline.ts @@ -6,6 +6,6 @@ export const polyline = (pts: Vec2Like[], attribs?: any): any[] => [ fattribs({ fill: "none", points: fpoints(pts), - ...attribs - }) + ...attribs, + }), ]; diff --git a/packages/hiccup-svg/src/rect.ts b/packages/hiccup-svg/src/rect.ts index ce9d20793c..e0093efa61 100644 --- a/packages/hiccup-svg/src/rect.ts +++ b/packages/hiccup-svg/src/rect.ts @@ -21,7 +21,7 @@ export const roundedRect = ( x: ff(p[0]), y: ff(p[1]), width: ff(width), - height: ff(height) + height: ff(height), }); if (rx > 0 || ry > 0) { attribs.rx = ff(rx); diff --git a/packages/hiccup-svg/src/svg.ts b/packages/hiccup-svg/src/svg.ts index 17db84799b..890c01fb17 100644 --- a/packages/hiccup-svg/src/svg.ts +++ b/packages/hiccup-svg/src/svg.ts @@ -15,7 +15,7 @@ export const svg = (attribs: any, ...body: any[]): any[] => [ version: "1.1", xmlns: SVG_NS, "xmlns:xlink": XLINK_NS, - ...attribs + ...attribs, }), - ...body + ...body, ]; diff --git a/packages/hiccup-svg/src/text.ts b/packages/hiccup-svg/src/text.ts index ad12d2fba7..3bd282be8f 100644 --- a/packages/hiccup-svg/src/text.ts +++ b/packages/hiccup-svg/src/text.ts @@ -6,7 +6,7 @@ export const text = (p: Vec2Like, body: string, attribs?: any): any[] => [ fattribs({ ...attribs, x: ff(p[0]), - y: ff(p[1]) + y: ff(p[1]), }), - body + body, ]; diff --git a/packages/hiccup/CHANGELOG.md b/packages/hiccup/CHANGELOG.md index 8065af579e..e603650c21 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.2.25](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup@3.2.24...@thi.ng/hiccup@3.2.25) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/hiccup + + + + + ## [3.2.24](https://github.com/thi-ng/umbrella/compare/@thi.ng/hiccup@3.2.23...@thi.ng/hiccup@3.2.24) (2020-06-01) **Note:** Version bump only for package @thi.ng/hiccup diff --git a/packages/hiccup/package.json b/packages/hiccup/package.json index 67ce7c3fd9..96830d66fd 100644 --- a/packages/hiccup/package.json +++ b/packages/hiccup/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/hiccup", - "version": "3.2.24", + "version": "3.2.25", "description": "HTML/SVG/XML serialization of nested data structures, iterables & closures", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.8.0", - "@thi.ng/atom": "^4.1.9", + "@thi.ng/atom": "^4.1.10", "@types/mocha": "^7.0.2", "@types/node": "^14.0.1", "mocha": "^7.1.2", @@ -44,7 +44,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/checks": "^2.7.0", + "@thi.ng/checks": "^2.7.1", "@thi.ng/errors": "^1.2.14", "tslib": "^1.12.0" }, diff --git a/packages/hiccup/src/api.ts b/packages/hiccup/src/api.ts index 2a4c42f198..a6c1c0cb65 100644 --- a/packages/hiccup/src/api.ts +++ b/packages/hiccup/src/api.ts @@ -8,7 +8,7 @@ export const PROC_TAGS: { [id: string]: string } = { "!DOCTYPE": ">\n", "!ENTITY": ">\n", "!ELEMENT": ">\n", - "!ATTLIST": ">\n" + "!ATTLIST": ">\n", }; /** @internal */ @@ -17,7 +17,7 @@ export const ENTITIES: { [id: string]: string } = { "<": "<", ">": ">", '"': """, - "'": "'" + "'": "'", }; /** @internal */ @@ -35,7 +35,7 @@ export const NO_SPANS: { button: 1, option: 1, text: 1, - textarea: 1 + textarea: 1, }; const tagMap = ( diff --git a/packages/hiccup/src/serialize.ts b/packages/hiccup/src/serialize.ts index ce5427a2d0..22499ff5b4 100644 --- a/packages/hiccup/src/serialize.ts +++ b/packages/hiccup/src/serialize.ts @@ -2,15 +2,10 @@ import { implementsFunction, isFunction, isNotStringAndIterable, - isString + isString, } from "@thi.ng/checks"; import { illegalArgs } from "@thi.ng/errors"; -import { - COMMENT, - NO_SPANS, - PROC_TAGS, - VOID_TAGS -} from "./api"; +import { COMMENT, NO_SPANS, PROC_TAGS, VOID_TAGS } from "./api"; import { escape } from "./escape"; import { normalize } from "./normalize"; diff --git a/packages/hiccup/test/index.ts b/packages/hiccup/test/index.ts index 0593057ee7..87d317abfe 100644 --- a/packages/hiccup/test/index.ts +++ b/packages/hiccup/test/index.ts @@ -114,7 +114,7 @@ describe("serialize", () => { [ "div", ["h1.title", "foo"], - ["p", ["span.small", "hello"], ["br"], "bye"] + ["p", ["span.small", "hello"], ["br"], "bye"], ], `

foo

hello
bye

` ); @@ -144,9 +144,9 @@ describe("serialize", () => { [ (_: any, id: string, body: any) => ["div#" + id, body], "foo", - "bar" + "bar", ], - "bar2" + "bar2", ], `
bar
bar2
` ); @@ -156,7 +156,7 @@ describe("serialize", () => { [ "div", [(_: any, [id, body]: any) => ["div#" + id, body], ["foo", "bar"]], - "bar2" + "bar2", ], `
bar
bar2
` ); @@ -168,21 +168,27 @@ describe("serialize", () => { ); it("components nested", () => { - const dlItem = ([def, desc]: any) => [["dt", def], ["dd", desc]]; + const dlItem = ([def, desc]: any) => [ + ["dt", def], + ["dd", desc], + ]; const ulItem = (i: any) => ["li", i]; const list = (_: any, f: any, items: any[]) => items.map(f); const dlList = (_: any, attribs: any, items: any[]) => [ "dl", attribs, - [list, dlItem, items] + [list, dlItem, items], ]; const ulList = (_: any, attribs: any, items: any[]) => [ "ul", attribs, - [list, ulItem, items] + [list, ulItem, items], ]; - const items = [["a", "foo"], ["b", "bar"]]; + const items = [ + ["a", "foo"], + ["b", "bar"], + ]; const widget1 = [dlList, { id: "foo" }, items]; const widget2 = [ulList, { id: "foo" }, items.map((i) => i[1])]; @@ -199,7 +205,7 @@ describe("serialize", () => { const bar = { render: (_: any, id: any) => [foo, id] }; assert.equal( serialize(["section", [bar, "a"], [bar, "b"]], { - foo: { class: "foo" } + foo: { class: "foo" }, }), `
a
b
` ); @@ -209,7 +215,7 @@ describe("serialize", () => { "iterators", [ "ul", - [(_: any, items: any[]) => items.map((i) => ["li", i]), ["a", "b"]] + [(_: any, items: any[]) => items.map((i) => ["li", i]), ["a", "b"]], ], `
  • a
  • b
` ); diff --git a/packages/idgen/CHANGELOG.md b/packages/idgen/CHANGELOG.md index 131d8b95f2..83ee678cd7 100644 --- a/packages/idgen/CHANGELOG.md +++ b/packages/idgen/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/idgen@0.2.14...@thi.ng/idgen@0.2.15) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/idgen + + + + + ## [0.2.14](https://github.com/thi-ng/umbrella/compare/@thi.ng/idgen@0.2.13...@thi.ng/idgen@0.2.14) (2020-06-01) **Note:** Version bump only for package @thi.ng/idgen diff --git a/packages/idgen/package.json b/packages/idgen/package.json index c2d1be1d38..effc9a5bff 100644 --- a/packages/idgen/package.json +++ b/packages/idgen/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/idgen", - "version": "0.2.14", + "version": "0.2.15", "description": "Generator of opaque numeric identifiers with optional support for ID versioning and efficient re-use", "module": "./index.js", "main": "./lib/index.js", @@ -43,7 +43,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", + "@thi.ng/api": "^6.11.1", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/idgen/src/index.ts b/packages/idgen/src/index.ts index 0f02155b90..fe728ec219 100644 --- a/packages/idgen/src/index.ts +++ b/packages/idgen/src/index.ts @@ -4,7 +4,7 @@ import { IClear, INotify, INotifyMixin, - Listener + Listener, } from "@thi.ng/api"; export const EVENT_ADDED = "added"; diff --git a/packages/iges/CHANGELOG.md b/packages/iges/CHANGELOG.md index 8320486af3..26a75a2b9f 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.34](https://github.com/thi-ng/umbrella/compare/@thi.ng/iges@1.1.33...@thi.ng/iges@1.1.34) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/iges + + + + + ## [1.1.33](https://github.com/thi-ng/umbrella/compare/@thi.ng/iges@1.1.32...@thi.ng/iges@1.1.33) (2020-06-01) **Note:** Version bump only for package @thi.ng/iges diff --git a/packages/iges/package.json b/packages/iges/package.json index ca49d4cd58..68a8387cd8 100644 --- a/packages/iges/package.json +++ b/packages/iges/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/iges", - "version": "1.1.33", + "version": "1.1.34", "description": "IGES 5.3 serializer for (currently only) polygonal geometry, both open & closed", "module": "./index.js", "main": "./lib/index.js", @@ -43,12 +43,12 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/defmulti": "^1.2.16", - "@thi.ng/strings": "^1.8.9", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/defmulti": "^1.2.17", + "@thi.ng/strings": "^1.8.10", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/iges/src/index.ts b/packages/iges/src/index.ts index 0c68f63afa..cbbb72dfe5 100644 --- a/packages/iges/src/index.ts +++ b/packages/iges/src/index.ts @@ -1,11 +1,6 @@ import { isArray } from "@thi.ng/checks"; import { defmulti } from "@thi.ng/defmulti"; -import { - float, - hstr, - padLeft, - padRight -} from "@thi.ng/strings"; +import { float, hstr, padLeft, padRight } from "@thi.ng/strings"; import { comp, map, @@ -15,7 +10,7 @@ import { push, transduce, wordWrap, - wrapSides + wrapSides, } from "@thi.ng/transducers"; import { BooleanNode, @@ -31,7 +26,7 @@ import { PolylineMode, SectionType, Type, - Unit + Unit, } from "./api"; import type { ReadonlyVec } from "@thi.ng/vectors"; @@ -57,7 +52,7 @@ const $DATE = (d: Date) => ".", $Z2(d.getUTCHours()), $Z2(d.getUTCMinutes()), - $Z2(d.getUTCSeconds()) + $Z2(d.getUTCSeconds()), ].join("") ); @@ -84,10 +79,10 @@ export const newDocument = ( S: 0, G: 0, P: 1, - D: 0 + D: 0, }, $FF, - $PARAM + $PARAM, }; }; @@ -97,7 +92,7 @@ export const serialize = (doc: IGESDocument) => ...formatGlobals(doc), ...doc.dict, ...doc.param, - formatTerminate(doc) + formatTerminate(doc), ].join("\n"); const formatLine = (body: string, type: SectionType, i: number) => @@ -105,7 +100,7 @@ const formatLine = (body: string, type: SectionType, i: number) => const formatStart = (doc: IGESDocument) => { const res = [ - ...mapIndexed((i, x: string) => formatLine(x, "S", i), doc.start) + ...mapIndexed((i, x: string) => formatLine(x, "S", i), doc.start), ]; doc.offsets.S += res.length; return res; @@ -140,7 +135,7 @@ const formatGlobals = (doc: IGESDocument) => { [g.authorOrg, Type.HSTR], [g.specVersion, Type.INT], [g.draftVersion, Type.INT], - [g.modified || new Date(), Type.DATE] + [g.modified || new Date(), Type.DATE], ], (body, i) => `${$BODY(body)}G${$SEQ(i + 1)}`, LINEWIDTH_GLOBALS @@ -193,7 +188,7 @@ const formatDictEntry = (e: DictEntry) => 0, 0, e.label || "", - e.subscript || 0 + e.subscript || 0, ] ); @@ -246,7 +241,7 @@ const addEntity = ( param: pid, index: did, lineCount: fparams.length, - ...entry + ...entry, }) ); doc.param.push(...fparams); @@ -262,21 +257,21 @@ export const addPolyline = ( const is2D = pts[0].length == 2; const params: Param[] = [ [is2D ? 1 : 2, Type.INT], - [pts.length + (form === PolylineMode.CLOSED ? 1 : 0), Type.INT] + [pts.length + (form === PolylineMode.CLOSED ? 1 : 0), Type.INT], ]; is2D && params.push([0, Type.FLOAT]); return addEntity( doc, EntityType.POLYLINE, { - form: form === PolylineMode.FILLED ? 63 : 11 + form: form === PolylineMode.FILLED ? 63 : 11, }, [ ...params, ...mapcat( (p) => map((x) => [x, Type.FLOAT], p), form === PolylineMode.CLOSED ? wrapSides(pts, 0, 1) : pts - ) + ), ], opts ); @@ -301,7 +296,7 @@ export const addPoint = ( [p[0], Type.FLOAT], [p[1], Type.FLOAT], [p[2] || 0, Type.FLOAT], - [0, Type.POINTER] + [0, Type.POINTER], ], opts ); @@ -322,7 +317,7 @@ export const addLine = ( [a[2] || 0, Type.FLOAT], [b[0], Type.FLOAT], [b[1], Type.FLOAT], - [b[2] || 0, Type.FLOAT] + [b[2] || 0, Type.FLOAT], ], opts ); @@ -377,7 +372,7 @@ export const addCSGBox = ( [xaxis[2], Type.FLOAT], [zaxis[0], Type.FLOAT], [zaxis[1], Type.FLOAT], - [zaxis[2], Type.FLOAT] + [zaxis[2], Type.FLOAT], ], opts ); @@ -402,7 +397,7 @@ export const addCSGCylinder = ( [normal[1], Type.FLOAT], [normal[2], Type.FLOAT], [radius, Type.FLOAT], - [height, Type.FLOAT] + [height, Type.FLOAT], ], opts ); diff --git a/packages/iges/test/index.ts b/packages/iges/test/index.ts index 243d941d87..3377c1ca97 100644 --- a/packages/iges/test/index.ts +++ b/packages/iges/test/index.ts @@ -9,7 +9,7 @@ describe("iges", () => { author: "toxi", authorOrg: "thi.ng", created: new Date(123456789), - modified: new Date(123456789) + modified: new Date(123456789), }); doc.start = ["Example file for @thi.ng/iges"]; @@ -23,7 +23,7 @@ describe("iges", () => { [100, 0], [0, 0], [100, 100], - [100, 0] + [100, 0], ]); assert.equal( diff --git a/packages/imgui/CHANGELOG.md b/packages/imgui/CHANGELOG.md index 1c88144c4b..e104ee50ed 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.21](https://github.com/thi-ng/umbrella/compare/@thi.ng/imgui@0.2.20...@thi.ng/imgui@0.2.21) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/imgui + + + + + ## [0.2.20](https://github.com/thi-ng/umbrella/compare/@thi.ng/imgui@0.2.19...@thi.ng/imgui@0.2.20) (2020-06-01) **Note:** Version bump only for package @thi.ng/imgui diff --git a/packages/imgui/package.json b/packages/imgui/package.json index e45dc1e6f6..71d7182d68 100644 --- a/packages/imgui/package.json +++ b/packages/imgui/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/imgui", - "version": "0.2.20", + "version": "0.2.21", "description": "Immediate mode GUI with flexible state handling & data only shape output", "module": "./index.js", "main": "./lib/index.js", @@ -43,16 +43,16 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/geom": "^1.9.7", - "@thi.ng/geom-api": "^1.0.20", - "@thi.ng/geom-isec": "^0.4.20", - "@thi.ng/geom-tessellate": "^0.2.31", - "@thi.ng/layout": "^0.1.12", - "@thi.ng/math": "^1.7.10", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/geom": "^1.9.8", + "@thi.ng/geom-api": "^1.0.21", + "@thi.ng/geom-isec": "^0.4.21", + "@thi.ng/geom-tessellate": "^0.2.32", + "@thi.ng/layout": "^0.1.13", + "@thi.ng/math": "^1.7.11", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/imgui/src/behaviors/slider.ts b/packages/imgui/src/behaviors/slider.ts index b81c5a0fb7..c3696485dc 100644 --- a/packages/imgui/src/behaviors/slider.ts +++ b/packages/imgui/src/behaviors/slider.ts @@ -1,11 +1,6 @@ import { pointInside } from "@thi.ng/geom"; import { clamp, roundTo } from "@thi.ng/math"; -import { - add2, - clamp2, - round2, - Vec -} from "@thi.ng/vectors"; +import { add2, clamp2, round2, Vec } from "@thi.ng/vectors"; import { Key } from "../api"; import { IMGUI } from "../gui"; import type { IShape } from "@thi.ng/geom-api"; diff --git a/packages/imgui/src/components/button.ts b/packages/imgui/src/components/button.ts index 98088152d6..b96d83e3c6 100644 --- a/packages/imgui/src/components/button.ts +++ b/packages/imgui/src/components/button.ts @@ -109,7 +109,7 @@ export const buttonRaw = ( if (draw) { shape.attribs = { fill: hover ? gui.fgColor(true) : gui.bgColor(focused), - stroke: gui.focusColor(id) + stroke: gui.focusColor(id), }; gui.add(shape); label && gui.add(hover && labelHover ? labelHover : label); diff --git a/packages/imgui/src/components/dial.ts b/packages/imgui/src/components/dial.ts index 9473f888a0..fcbff7d5fe 100644 --- a/packages/imgui/src/components/dial.ts +++ b/packages/imgui/src/components/dial.ts @@ -1,11 +1,6 @@ import { circle, line } from "@thi.ng/geom"; import { IGridLayout, isLayout, LayoutBox } from "@thi.ng/layout"; -import { - HALF_PI, - norm, - PI, - TAU -} from "@thi.ng/math"; +import { HALF_PI, norm, PI, TAU } from "@thi.ng/math"; import { cartesian2, hash } from "@thi.ng/vectors"; import { dialVal } from "../behaviors/dial"; import { handleSlider1Keys, isHoverSlider } from "../behaviors/slider"; diff --git a/packages/imgui/src/components/dropdown.ts b/packages/imgui/src/components/dropdown.ts index 13de9d4364..0c3e7bcbc4 100644 --- a/packages/imgui/src/components/dropdown.ts +++ b/packages/imgui/src/components/dropdown.ts @@ -1,10 +1,5 @@ import { polygon } from "@thi.ng/geom"; -import { - gridLayout, - IGridLayout, - isLayout, - LayoutBox -} from "@thi.ng/layout"; +import { gridLayout, IGridLayout, isLayout, LayoutBox } from "@thi.ng/layout"; import { hash } from "@thi.ng/vectors"; import { Key } from "../api"; import { IMGUI } from "../gui"; @@ -49,10 +44,10 @@ export const dropdown = ( [ [tx - 4, ty + 2], [tx + 4, ty + 2], - [tx, ty - 2] + [tx, ty - 2], ], { - fill: gui.textColor(false) + fill: gui.textColor(false), } ) ) @@ -94,10 +89,10 @@ export const dropdown = ( [ [tx - 4, ty - 2], [tx + 4, ty - 2], - [tx, ty + 2] + [tx, ty + 2], ], { - fill: gui.textColor(false) + fill: gui.textColor(false), } ) ) diff --git a/packages/imgui/src/components/icon-button.ts b/packages/imgui/src/components/icon-button.ts index 2c5ba0728b..a23c55c260 100644 --- a/packages/imgui/src/components/icon-button.ts +++ b/packages/imgui/src/components/icon-button.ts @@ -34,7 +34,7 @@ export const iconButton = ( { translate: pos, fill: col, - stroke: col + stroke: col, }, icon, label @@ -43,7 +43,7 @@ export const iconButton = ( { fill: col, stroke: "none" }, label ) - : undefined + : undefined, ]; }; return buttonRaw( diff --git a/packages/imgui/src/components/radial-menu.ts b/packages/imgui/src/components/radial-menu.ts index e25fb37792..4992b6c4ba 100644 --- a/packages/imgui/src/components/radial-menu.ts +++ b/packages/imgui/src/components/radial-menu.ts @@ -1,10 +1,4 @@ -import { - centroid, - circle, - polygon, - Polygon, - vertices -} from "@thi.ng/geom"; +import { centroid, circle, polygon, Polygon, vertices } from "@thi.ng/geom"; import { triFan } from "@thi.ng/geom-tessellate"; import { fmod } from "@thi.ng/math"; import { mapIndexed } from "@thi.ng/transducers"; @@ -38,9 +32,9 @@ export const radialMenu = ( cell, hash(p), textLabelRaw(p, gui.textColor(false), items[i]), - textLabelRaw(p, gui.textColor(true), items[i]) + textLabelRaw(p, gui.textColor(true), items[i]), ]; - }, triFan(vertices(circle([x, y], r), n))) + }, triFan(vertices(circle([x, y], r), n))), ]); let res: number | undefined; let sel = -1; diff --git a/packages/imgui/src/components/radio.ts b/packages/imgui/src/components/radio.ts index 208f5038e5..ad530ca9c5 100644 --- a/packages/imgui/src/components/radio.ts +++ b/packages/imgui/src/components/radio.ts @@ -1,9 +1,4 @@ -import { - gridLayout, - IGridLayout, - isLayout, - LayoutBox -} from "@thi.ng/layout"; +import { gridLayout, IGridLayout, isLayout, LayoutBox } from "@thi.ng/layout"; import { IMGUI } from "../gui"; import { toggle } from "./toggle"; diff --git a/packages/imgui/src/components/ring.ts b/packages/imgui/src/components/ring.ts index 13285d0cad..a677276002 100644 --- a/packages/imgui/src/components/ring.ts +++ b/packages/imgui/src/components/ring.ts @@ -1,14 +1,7 @@ import { polygon } from "@thi.ng/geom"; import { pointInRect } from "@thi.ng/geom-isec"; import { IGridLayout, isLayout, LayoutBox } from "@thi.ng/layout"; -import { - fitClamped, - HALF_PI, - mix, - norm, - PI, - TAU -} from "@thi.ng/math"; +import { fitClamped, HALF_PI, mix, norm, PI, TAU } from "@thi.ng/math"; import { map, normRange } from "@thi.ng/transducers"; import { cartesian2, hash, Vec } from "@thi.ng/vectors"; import { dialVal } from "../behaviors/dial"; @@ -102,7 +95,8 @@ export const ringGroup = ( ? layout.nest(n, [n, 1]) : layout.nest(1, [ 1, - (layout.rowsForHeight(ringHeight(layout.cellW, thetaGap)) + 1) * n + (layout.rowsForHeight(ringHeight(layout.cellW, thetaGap)) + 1) * + n, ]); let res: number | undefined; let idx: number = -1; @@ -188,7 +182,7 @@ export const ringRaw = ( polygon( [ ...arcVerts(pos, r, startTheta, endTheta, numV), - ...arcVerts(pos, r2, endTheta, startTheta, numV) + ...arcVerts(pos, r2, endTheta, startTheta, numV), ], {} ) @@ -197,7 +191,7 @@ export const ringRaw = ( polygon( [ ...arcVerts(pos, r, startTheta, valTheta, numV), - ...arcVerts(pos, r2, valTheta, startTheta, numV) + ...arcVerts(pos, r2, valTheta, startTheta, numV), ], {} ) diff --git a/packages/imgui/src/components/sliderh.ts b/packages/imgui/src/components/sliderh.ts index 116e658e3b..8dbee20a42 100644 --- a/packages/imgui/src/components/sliderh.ts +++ b/packages/imgui/src/components/sliderh.ts @@ -2,7 +2,11 @@ import { rect } from "@thi.ng/geom"; import { IGridLayout, isLayout, LayoutBox } from "@thi.ng/layout"; import { fit, norm } from "@thi.ng/math"; import { hash } from "@thi.ng/vectors"; -import { handleSlider1Keys, isHoverSlider, slider1Val } from "../behaviors/slider"; +import { + handleSlider1Keys, + isHoverSlider, + slider1Val, +} from "../behaviors/slider"; import { IMGUI } from "../gui"; import { valHash } from "../hash"; import { textLabelRaw } from "./textlabel"; diff --git a/packages/imgui/src/components/sliderv.ts b/packages/imgui/src/components/sliderv.ts index 71fdafbc42..e933e8b87d 100644 --- a/packages/imgui/src/components/sliderv.ts +++ b/packages/imgui/src/components/sliderv.ts @@ -2,7 +2,11 @@ import { rect } from "@thi.ng/geom"; import { IGridLayout, isLayout, LayoutBox } from "@thi.ng/layout"; import { fit, norm } from "@thi.ng/math"; import { hash, ZERO2 } from "@thi.ng/vectors"; -import { handleSlider1Keys, isHoverSlider, slider1Val } from "../behaviors/slider"; +import { + handleSlider1Keys, + isHoverSlider, + slider1Val, +} from "../behaviors/slider"; import { IMGUI } from "../gui"; import { valHash } from "../hash"; import { textLabelRaw, textTransformV } from "./textlabel"; @@ -126,7 +130,7 @@ export const sliderVRaw = ( ZERO2, { transform: textTransformV(theme, x, y, w, h), - fill: gui.textColor(false) + fill: gui.textColor(false), }, (label ? label + " " : "") + (fmt ? fmt(v!) : v) ) diff --git a/packages/imgui/src/components/textfield.ts b/packages/imgui/src/components/textfield.ts index 8addd8f979..67370041d4 100644 --- a/packages/imgui/src/components/textfield.ts +++ b/packages/imgui/src/components/textfield.ts @@ -101,7 +101,7 @@ export const textFieldRaw = ( "line", { stroke: theme.cursor }, [xx, y + 4], - [xx, y + h - 4] + [xx, y + h - 4], ]); } const k = gui.key; diff --git a/packages/imgui/src/components/textlabel.ts b/packages/imgui/src/components/textlabel.ts index 937a91d402..ece6341bfa 100644 --- a/packages/imgui/src/components/textlabel.ts +++ b/packages/imgui/src/components/textlabel.ts @@ -17,7 +17,7 @@ export const textLabel = ( "text", { fill: gui.textColor(false) }, [x + (pad ? theme.pad : 0), y + h / 2 + theme.baseLine], - label + label, ]); }; diff --git a/packages/imgui/src/components/toggle.ts b/packages/imgui/src/components/toggle.ts index 75d102937b..d0111385f7 100644 --- a/packages/imgui/src/components/toggle.ts +++ b/packages/imgui/src/components/toggle.ts @@ -73,7 +73,7 @@ export const toggleRaw = ( if (draw) { box.attribs = { fill: val ? gui.fgColor(hover) : gui.bgColor(hover), - stroke: gui.focusColor(id) + stroke: gui.focusColor(id), }; gui.add(box); label && diff --git a/packages/imgui/src/components/tooltip.ts b/packages/imgui/src/components/tooltip.ts index 592e392edd..25e5e6d1c9 100644 --- a/packages/imgui/src/components/tooltip.ts +++ b/packages/imgui/src/components/tooltip.ts @@ -8,7 +8,7 @@ export const tooltipRaw = (gui: IMGUI, tooltip: string) => { const p = add2(null, [0, 10], gui.mouse); gui.addOverlay( rect(p, [tooltip.length * theme.charWidth + theme.pad, 20], { - fill: theme.bgTooltip + fill: theme.bgTooltip, }), textLabelRaw( add2(null, [4, 10 + theme.baseLine], p), diff --git a/packages/imgui/src/components/xypad.ts b/packages/imgui/src/components/xypad.ts index fa41070a84..35ac2c172c 100644 --- a/packages/imgui/src/components/xypad.ts +++ b/packages/imgui/src/components/xypad.ts @@ -1,7 +1,11 @@ import { line, rect } from "@thi.ng/geom"; import { IGridLayout, LayoutBox } from "@thi.ng/layout"; import { fit2, hash, Vec } from "@thi.ng/vectors"; -import { handleSlider2Keys, isHoverSlider, slider2Val } from "../behaviors/slider"; +import { + handleSlider2Keys, + isHoverSlider, + slider2Val, +} from "../behaviors/slider"; import { IMGUI } from "../gui"; import { textLabelRaw } from "./textlabel"; import { tooltipRaw } from "./tooltip"; @@ -117,16 +121,16 @@ export const xyPadRaw = ( if (draw) { box.attribs = { fill: gui.bgColor(hover || focused), - stroke: gui.focusColor(id) + stroke: gui.focusColor(id), }; const { 0: cx, 1: cy } = fit2([], v, min, max, pos, maxPos); gui.add( box, line([x, cy], [maxX, cy], { - stroke: col + stroke: col, }), line([cx, y], [cx, maxY], { - stroke: col + stroke: col, }), textLabelRaw( [x + lx, y + ly], diff --git a/packages/imgui/src/events.ts b/packages/imgui/src/events.ts index 32c6f4fa43..d1a661cf11 100644 --- a/packages/imgui/src/events.ts +++ b/packages/imgui/src/events.ts @@ -37,7 +37,7 @@ export const useDefaultEventHandlers = (gui: IMGUI) => { ontouchstart: touchActive, ontouchmove: touchActive, ontouchend: touchEnd, - ontouchcancel: touchEnd + ontouchcancel: touchEnd, }); window.addEventListener("keydown", (e) => { gui.setKey(e); diff --git a/packages/imgui/src/gui.ts b/packages/imgui/src/gui.ts index d1e53d43a4..7672bdc15c 100644 --- a/packages/imgui/src/gui.ts +++ b/packages/imgui/src/gui.ts @@ -7,7 +7,7 @@ import { Key, KeyModifier, MouseButton, - NONE + NONE, } from "./api"; import type { Fn0, IClear, IToHiccup } from "@thi.ng/api"; @@ -457,7 +457,7 @@ export class IMGUI implements IClear, IToHiccup { "g", { font: this.theme.font }, ...this.layers[0], - ...this.layers[1] + ...this.layers[1], ]; } } diff --git a/packages/interceptors/CHANGELOG.md b/packages/interceptors/CHANGELOG.md index 149cbafd2d..da0d6cadb1 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.21](https://github.com/thi-ng/umbrella/compare/@thi.ng/interceptors@2.2.20...@thi.ng/interceptors@2.2.21) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/interceptors + + + + + ## [2.2.20](https://github.com/thi-ng/umbrella/compare/@thi.ng/interceptors@2.2.19...@thi.ng/interceptors@2.2.20) (2020-06-01) **Note:** Version bump only for package @thi.ng/interceptors diff --git a/packages/interceptors/package.json b/packages/interceptors/package.json index 09e9e64359..9c60a51255 100644 --- a/packages/interceptors/package.json +++ b/packages/interceptors/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/interceptors", - "version": "2.2.20", + "version": "2.2.21", "description": "Interceptor based event bus, side effect & immutable state handling", "module": "./index.js", "main": "./lib/index.js", @@ -43,11 +43,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/atom": "^4.1.9", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/atom": "^4.1.10", + "@thi.ng/checks": "^2.7.1", "@thi.ng/errors": "^1.2.14", - "@thi.ng/paths": "^4.0.7", + "@thi.ng/paths": "^4.0.8", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/intervals/CHANGELOG.md b/packages/intervals/CHANGELOG.md index d57cb45f9a..d3d0e0f168 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.0.16](https://github.com/thi-ng/umbrella/compare/@thi.ng/intervals@2.0.15...@thi.ng/intervals@2.0.16) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/intervals + + + + + ## [2.0.15](https://github.com/thi-ng/umbrella/compare/@thi.ng/intervals@2.0.14...@thi.ng/intervals@2.0.15) (2020-06-01) **Note:** Version bump only for package @thi.ng/intervals diff --git a/packages/intervals/package.json b/packages/intervals/package.json index 33dda4b7ba..acb1d4fb64 100644 --- a/packages/intervals/package.json +++ b/packages/intervals/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/intervals", - "version": "2.0.15", + "version": "2.0.16", "description": "Closed/open/semi-open interval data type, queries & operations", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/dlogic": "^1.0.23", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/dlogic": "^1.0.24", "@thi.ng/errors": "^1.2.14", "tslib": "^1.12.0" }, diff --git a/packages/iterators/CHANGELOG.md b/packages/iterators/CHANGELOG.md index 0eb6fcdc00..e4a0263e37 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.27](https://github.com/thi-ng/umbrella/compare/@thi.ng/iterators@5.1.26...@thi.ng/iterators@5.1.27) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/iterators + + + + + ## [5.1.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/iterators@5.1.25...@thi.ng/iterators@5.1.26) (2020-06-01) **Note:** Version bump only for package @thi.ng/iterators diff --git a/packages/iterators/package.json b/packages/iterators/package.json index 56cbd58d00..7458cb3c0f 100644 --- a/packages/iterators/package.json +++ b/packages/iterators/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/iterators", - "version": "5.1.26", + "version": "5.1.27", "description": "Clojure inspired, composable ES6 iterators & generators", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/dcons": "^2.2.19", + "@thi.ng/api": "^6.11.1", + "@thi.ng/dcons": "^2.2.20", "@thi.ng/errors": "^1.2.14", "tslib": "^1.12.0" }, diff --git a/packages/iterators/src/cached.ts b/packages/iterators/src/cached.ts index 28e72d748c..5e800546e6 100644 --- a/packages/iterators/src/cached.ts +++ b/packages/iterators/src/cached.ts @@ -4,7 +4,7 @@ export const cached = (input: Iterable) => { let cache: T[] = []; let iter = iterator(input); let done = false; - return function() { + return function () { let i = 0; return { [Symbol.iterator](): IterableIterator { @@ -23,7 +23,7 @@ export const cached = (input: Iterable) => { done = true; } return >{ done }; - } + }, }; }; }; diff --git a/packages/iterators/src/fork.ts b/packages/iterators/src/fork.ts index e5a6df121c..256e6805f9 100644 --- a/packages/iterators/src/fork.ts +++ b/packages/iterators/src/fork.ts @@ -26,7 +26,7 @@ export const fork = (src: Iterable, cacheLimit = 16) => { } }; - return function() { + return function () { const id = forks.length; forks.push(0); return >{ @@ -45,7 +45,7 @@ export const fork = (src: Iterable, cacheLimit = 16) => { } return { done, value }; } - } + }, }; }; }; diff --git a/packages/iterators/src/walk.ts b/packages/iterators/src/walk.ts index 39698a740f..fa8aa1bcc3 100644 --- a/packages/iterators/src/walk.ts +++ b/packages/iterators/src/walk.ts @@ -67,7 +67,7 @@ export function walkIterator(input: any, ...args: any[]) { } else { postOrder = args[0]; } - let walk = function*(iter: Iterator): IterableIterator { + let walk = function* (iter: Iterator): IterableIterator { let v: IteratorResult; while (((v = iter.next()), !v.done)) { if (!postOrder) { diff --git a/packages/iterators/test/index.ts b/packages/iterators/test/index.ts index aa03075d59..d9d829b7f2 100644 --- a/packages/iterators/test/index.ts +++ b/packages/iterators/test/index.ts @@ -8,7 +8,11 @@ describe("iterators", function () { assert.deepEqual([...ti.butLast([1, 2])], [1], "2"); assert.deepEqual([...ti.butLast([1, 2, 3])], [1, 2], "3"); assert.deepEqual([...ti.butLast("hello")], ["h", "e", "l", "l"], "str"); - assert.deepEqual([...ti.butLast(ti.range(10))], [0, 1, 2, 3, 4, 5, 6, 7, 8], "range"); + assert.deepEqual( + [...ti.butLast(ti.range(10))], + [0, 1, 2, 3, 4, 5, 6, 7, 8], + "range" + ); }); it("cached", () => { let cache = ti.cached(ti.range(3)); @@ -24,21 +28,57 @@ describe("iterators", function () { assert.equal(b.next().value, 1, "b.next 1"); assert.strictEqual(a.next().value, undefined, "a.next done"); assert.strictEqual(ti.iterator(a), a, "iterator(a)"); - assert.strictEqual(ti.cached([])().next().value, undefined, "a.next empty"); + assert.strictEqual( + ti.cached([])().next().value, + undefined, + "a.next empty" + ); }); it("consume", () => { let i; - assert.deepEqual([...(i = ti.range(3), ti.consume(i), i)], [], "consume all"); - assert.deepEqual([...(i = ti.range(3), ti.consume(i, 3), i)], [], "consume 3"); - assert.deepEqual([...(i = ti.range(3), ti.consume(i, 10), i)], [], "consume 10"); - assert.deepEqual([...(i = ti.range(3), ti.consume(i, 2), i)], [2], "consume 2"); - assert.deepEqual([...(i = ti.range(3), ti.consume(i, -2), i)], [0, 1, 2], "consume -2"); + assert.deepEqual( + [...((i = ti.range(3)), ti.consume(i), i)], + [], + "consume all" + ); + assert.deepEqual( + [...((i = ti.range(3)), ti.consume(i, 3), i)], + [], + "consume 3" + ); + assert.deepEqual( + [...((i = ti.range(3)), ti.consume(i, 10), i)], + [], + "consume 10" + ); + assert.deepEqual( + [...((i = ti.range(3)), ti.consume(i, 2), i)], + [2], + "consume 2" + ); + assert.deepEqual( + [...((i = ti.range(3)), ti.consume(i, -2), i)], + [0, 1, 2], + "consume -2" + ); }); it("concat", () => { assert.deepEqual([...ti.concat([])], [], "empty"); - assert.deepEqual([...ti.concat([], "", ti.range(0))], [], "3 args empty"); - assert.deepEqual([...ti.concat([1, 2, 3], "abc", ti.range(3))], [1, 2, 3, "a", "b", "c", 0, 1, 2], "3 args any"); - assert.deepEqual([...ti.concat.apply(null, ["abc", null, [1, 2, 3]])], ["a", "b", "c", 1, 2, 3], "skip null"); + assert.deepEqual( + [...ti.concat([], "", ti.range(0))], + [], + "3 args empty" + ); + assert.deepEqual( + [...ti.concat([1, 2, 3], "abc", ti.range(3))], + [1, 2, 3, "a", "b", "c", 0, 1, 2], + "3 args any" + ); + assert.deepEqual( + [...ti.concat.apply(null, ["abc", null, [1, 2, 3]])], + ["a", "b", "c", 1, 2, 3], + "skip null" + ); }); it("constantly", () => { const f = ti.constantly(1); @@ -48,19 +88,45 @@ describe("iterators", function () { }); it("cycle", () => { assert.deepEqual([...ti.cycle([])], [], "empty"); - assert.deepEqual([...ti.take(7, ti.cycle(ti.range(3)))], [0, 1, 2, 0, 1, 2, 0], "cycle range(3)"); - assert.deepEqual([...ti.take(7, ti.cycle("abc"))], ["a", "b", "c", "a", "b", "c", "a"], "cycle string"); + assert.deepEqual( + [...ti.take(7, ti.cycle(ti.range(3)))], + [0, 1, 2, 0, 1, 2, 0], + "cycle range(3)" + ); + assert.deepEqual( + [...ti.take(7, ti.cycle("abc"))], + ["a", "b", "c", "a", "b", "c", "a"], + "cycle string" + ); }); it("dedupe", () => { assert.deepEqual([...ti.dedupe([])], [], "empty"); - assert.deepEqual([...ti.dedupe([1, 2, 2, 3, 4, 4, 4, 3])], [1, 2, 3, 4, 3], "array"); - assert.deepEqual([...ti.dedupe("abbcccaabb")], ["a", "b", "c", "a", "b"], "string"); + assert.deepEqual( + [...ti.dedupe([1, 2, 2, 3, 4, 4, 4, 3])], + [1, 2, 3, 4, 3], + "array" + ); + assert.deepEqual( + [...ti.dedupe("abbcccaabb")], + ["a", "b", "c", "a", "b"], + "string" + ); }); it("dedupeWith", () => { - let coll = [{ a: 1 }, { a: 1, b: 2 }, { a: 2, b: 2 }, { a: 2, b: 2 }, { a: 3 }]; - let eq = (a:any, b:any) => a.a === b.a; + let coll = [ + { a: 1 }, + { a: 1, b: 2 }, + { a: 2, b: 2 }, + { a: 2, b: 2 }, + { a: 3 }, + ]; + let eq = (a: any, b: any) => a.a === b.a; assert.deepEqual([...ti.dedupeWith(eq, [])], [], "empty"); - assert.deepEqual([...ti.dedupeWith(eq, coll)], [{ a: 1 }, { a: 2, b: 2 }, { a: 3 }], "array[obj]"); + assert.deepEqual( + [...ti.dedupeWith(eq, coll)], + [{ a: 1 }, { a: 2, b: 2 }, { a: 3 }], + "array[obj]" + ); }); it("dense", () => { assert.deepEqual( @@ -75,20 +141,44 @@ describe("iterators", function () { assert.deepEqual([...ti.drop(2, [1, 2, 3])], [3], "drop(2)"); assert.deepEqual([...ti.drop(0, [1])], [1], "drop(0)"); assert.deepEqual([...ti.drop(-1, [1])], [1], "drop(-1)"); - assert.deepEqual([...ti.drop(3, ti.range(5))], [3, 4], "drop(3, range)"); + assert.deepEqual( + [...ti.drop(3, ti.range(5))], + [3, 4], + "drop(3, range)" + ); }); it("dropNth", () => { assert.deepEqual([...ti.dropNth(2, [])], [], "empty"); assert.deepEqual([...ti.dropNth(1, ti.range(6))], [], "dropNth(1)"); - assert.deepEqual([...ti.dropNth(2, ti.range(6))], [0, 2, 4], "dropNth(2)"); - assert.deepEqual([...ti.dropNth(3, ti.range(6))], [0, 1, 3, 4], "dropNth(3)"); + assert.deepEqual( + [...ti.dropNth(2, ti.range(6))], + [0, 2, 4], + "dropNth(2)" + ); + assert.deepEqual( + [...ti.dropNth(3, ti.range(6))], + [0, 1, 3, 4], + "dropNth(3)" + ); assert.deepEqual([...ti.dropNth(-1, ti.range(6))], [], "dropNth(-1)"); }); it("dropWhile", () => { assert.deepEqual([...ti.dropWhile((_) => false, [])], [], "empty"); - assert.deepEqual([...ti.dropWhile((_) => true, [1, 2, 3])], [], "always"); - assert.deepEqual([...ti.dropWhile((x) => x < 3, ti.range(6))], [3, 4, 5], "x<3"); - assert.deepEqual([...ti.dropWhile((x) => x > 3, ti.range(6))], [0, 1, 2, 3, 4, 5], "none"); + assert.deepEqual( + [...ti.dropWhile((_) => true, [1, 2, 3])], + [], + "always" + ); + assert.deepEqual( + [...ti.dropWhile((x) => x < 3, ti.range(6))], + [3, 4, 5], + "x<3" + ); + assert.deepEqual( + [...ti.dropWhile((x) => x > 3, ti.range(6))], + [0, 1, 2, 3, 4, 5], + "none" + ); }); it("ensureIterable", () => { assert.doesNotThrow(() => ti.ensureIterable([]), "array"); @@ -97,45 +187,114 @@ describe("iterators", function () { it("every", () => { let nums = ti.iterator([2, 4, 6, 8, 10]) as IterableIterator; assert(!ti.every((_) => true, []), "empty"); - assert(ti.every((x) => (x % 2) === 0, nums), "even"); - assert.deepEqual(nums.next(), { value: undefined, done: true }, "nums done"); + assert( + ti.every((x) => x % 2 === 0, nums), + "even" + ); + assert.deepEqual( + nums.next(), + { value: undefined, done: true }, + "nums done" + ); nums = ti.iterator([2, 3, 4]) as IterableIterator; - assert(!ti.every((x) => (x % 2) === 0, nums), "not even"); + assert(!ti.every((x) => x % 2 === 0, nums), "not even"); assert.deepEqual(nums.next(), { value: 4, done: false }, "next = 4"); }); it("filter", () => { assert.deepEqual([...ti.filter((_) => true, [])], [], "empty"); - assert.deepEqual([...ti.filter((x) => (x % 3) === 0, ti.range(10))], [0, 3, 6, 9], "mult3"); + assert.deepEqual( + [...ti.filter((x) => x % 3 === 0, ti.range(10))], + [0, 3, 6, 9], + "mult3" + ); }); it("flatten", () => { assert.deepEqual([...ti.flatten([])], [], "empty"); - assert.deepEqual([...ti.flatten([null, [null, [undefined]]])], [null, null, undefined], "nulls"); - assert.deepEqual([...ti.flatten([1, ti.range(2, 4), [4, [5, ["abc"]]]])], [1, 2, 3, 4, 5, "abc"], "nested"); - assert.deepEqual([...ti.flatten([{ a: 23, b: 42, c: [1, 2, 3] }])], ["a", 23, "b", 42, "c", 1, 2, 3], "obj iter"); - assert.deepEqual([...ti.flatten([{ a: 23, b: 42, c: [1, 2, 3] }], false)], [{ a: 23, b: 42, c: [1, 2, 3] }], "no obj"); + assert.deepEqual( + [...ti.flatten([null, [null, [undefined]]])], + [null, null, undefined], + "nulls" + ); + assert.deepEqual( + [...ti.flatten([1, ti.range(2, 4), [4, [5, ["abc"]]]])], + [1, 2, 3, 4, 5, "abc"], + "nested" + ); + assert.deepEqual( + [...ti.flatten([{ a: 23, b: 42, c: [1, 2, 3] }])], + ["a", 23, "b", 42, "c", 1, 2, 3], + "obj iter" + ); + assert.deepEqual( + [...ti.flatten([{ a: 23, b: 42, c: [1, 2, 3] }], false)], + [{ a: 23, b: 42, c: [1, 2, 3] }], + "no obj" + ); }); it("flattenWith", () => { - let tx = (x:any) => typeof x == "string" ? ti.map(x => x.charCodeAt(0), x) : ti.maybeIterator(x); + let tx = (x: any) => + typeof x == "string" + ? ti.map((x) => x.charCodeAt(0), x) + : ti.maybeIterator(x); assert.deepEqual( - [...ti.flattenWith(tx, ["ROOT", undefined, ["CHILD_1", null, ["CHILD_2"]]])], - [82, 79, 79, 84, undefined, 67, 72, 73, 76, 68, 95, 49, null, 67, 72, 73, 76, 68, 95, 50], + [ + ...ti.flattenWith(tx, [ + "ROOT", + undefined, + ["CHILD_1", null, ["CHILD_2"]], + ]), + ], + [ + 82, + 79, + 79, + 84, + undefined, + 67, + 72, + 73, + 76, + 68, + 95, + 49, + null, + 67, + 72, + 73, + 76, + 68, + 95, + 50, + ], "chars" ); }); it("fnil", () => { - let f = ti.fnil((x) => x + 1, () => 0); + let f = ti.fnil( + (x) => x + 1, + () => 0 + ); assert.equal(f(), 1); assert.equal(f(1), 2); - f = ti.fnil((a, b) => a + b, () => 0, () => 10); + f = ti.fnil( + (a, b) => a + b, + () => 0, + () => 10 + ); assert.equal(f(), 10); assert.equal(f(1), 11); assert.equal(f(1, 2), 3); - f = ti.fnil((a, b, c) => a + b + c, () => 0, () => 10, () => 100); + f = ti.fnil( + (a, b, c) => a + b + c, + () => 0, + () => 10, + () => 100 + ); assert.equal(f(), 110); assert.equal(f(1), 111); assert.equal(f(1, 2), 103); assert.equal(f(1, 2, 3), 6); - assert.throws(() => ti.fnil(() => { })); + assert.throws(() => ti.fnil(() => {})); }); it("fork", () => { const f = ti.fork([1, 2, 3, 4], 3); @@ -154,12 +313,56 @@ describe("iterators", function () { assert(fb.next().done); }); it("frequencies", () => { - assert.deepEqual([...ti.frequencies([[1, 2], [2, 3], [1, 2], [2, 4]])], [[[1, 2], 2], [[2, 3], 1], [[2, 4], 1]], "array"); - assert.deepEqual([...ti.frequencies(ti.filter((x) => /[a-z]/i.test(x), "hello world!"))], [["h", 1], ["e", 1], ["l", 3], ["o", 2], ["w", 1], ["r", 1], ["d", 1]], "letters"); - assert.deepEqual([...ti.frequencies([1, 2, 3, 4, 5, 9, 3], (x: number) => x & ~1)], [[0, 1], [2, 3], [4, 2], [8, 1]], "key fn"); + assert.deepEqual( + [ + ...ti.frequencies([ + [1, 2], + [2, 3], + [1, 2], + [2, 4], + ]), + ], + [ + [[1, 2], 2], + [[2, 3], 1], + [[2, 4], 1], + ], + "array" + ); + assert.deepEqual( + [ + ...ti.frequencies( + ti.filter((x) => /[a-z]/i.test(x), "hello world!") + ), + ], + [ + ["h", 1], + ["e", 1], + ["l", 3], + ["o", 2], + ["w", 1], + ["r", 1], + ["d", 1], + ], + "letters" + ); + assert.deepEqual( + [...ti.frequencies([1, 2, 3, 4, 5, 9, 3], (x: number) => x & ~1)], + [ + [0, 1], + [2, 3], + [4, 2], + [8, 1], + ], + "key fn" + ); }); it("groupBy", () => { - assert.deepEqual(ti.groupBy((x) => x & ~1, [1, 2, 3, 4, 5, 9, 3]), { "0": [1], "2": [2, 3, 3], "4": [4, 5], "8": [9] }, "mult 2"); + assert.deepEqual( + ti.groupBy((x) => x & ~1, [1, 2, 3, 4, 5, 9, 3]), + { "0": [1], "2": [2, 3, 3], "4": [4, 5], "8": [9] }, + "mult 2" + ); }); it("identity", () => { const x = { a: 1 }; @@ -168,17 +371,47 @@ describe("iterators", function () { assert.strictEqual(ti.identity(undefined), undefined); }); it("indexed", () => { - assert.deepEqual([...ti.indexed([10, 20, 30])], [[0, 10], [1, 20], [2, 30]]); + assert.deepEqual( + [...ti.indexed([10, 20, 30])], + [ + [0, 10], + [1, 20], + [2, 30], + ] + ); }); it("interleave", () => { assert.throws(() => ti.interleave().next(), "no inputs"); - assert.deepEqual([...ti.interleave(ti.range(), ti.range(100, 200), ti.range(200, 205))], [0, 100, 200, 1, 101, 201, 2, 102, 202, 3, 103, 203, 4, 104, 204], "ranges"); + assert.deepEqual( + [ + ...ti.interleave( + ti.range(), + ti.range(100, 200), + ti.range(200, 205) + ), + ], + [0, 100, 200, 1, 101, 201, 2, 102, 202, 3, 103, 203, 4, 104, 204], + "ranges" + ); }); it("interpose", () => { - assert.deepEqual([...ti.interpose("/", ti.range(5))], [0, "/", 1, "/", 2, "/", 3, "/", 4], "slash"); + assert.deepEqual( + [...ti.interpose("/", ti.range(5))], + [0, "/", 1, "/", 2, "/", 3, "/", 4], + "slash" + ); }); it("iterate", () => { - assert.deepEqual([...ti.take(10, ti.iterate((x) => x * 2, 1))], [1, 2, 4, 8, 16, 32, 64, 128, 256, 512], "pow2"); + assert.deepEqual( + [ + ...ti.take( + 10, + ti.iterate((x) => x * 2, 1) + ), + ], + [1, 2, 4, 8, 16, 32, 64, 128, 256, 512], + "pow2" + ); }); it("maybeIterator", () => { assert(ti.maybeIterator("a") !== undefined, "str"); @@ -196,14 +429,37 @@ describe("iterators", function () { assert.equal(ti.maybeObjectIterator(null), undefined, "null"); assert.equal(ti.maybeObjectIterator(0), undefined, "0"); assert.equal(ti.maybeObjectIterator("a"), undefined, "str"); - assert.equal(ti.maybeObjectIterator(ti.range()), undefined, "generator"); + assert.equal( + ti.maybeObjectIterator(ti.range()), + undefined, + "generator" + ); }); it("juxt", () => { - let kernel = ti.juxt((x) => x - 1, (x) => x, (x) => x + 1); + let kernel = ti.juxt( + (x) => x - 1, + (x) => x, + (x) => x + 1 + ); assert.equal(ti.juxt((x) => x)(1), 1, "ident1"); - assert.deepEqual(ti.juxt((x) => x, (x) => x)(1), [1, 1], "ident2"); + assert.deepEqual( + ti.juxt( + (x) => x, + (x) => x + )(1), + [1, 1], + "ident2" + ); assert.deepEqual(kernel(1), [0, 1, 2], "kernel"); - assert.deepEqual([...ti.map(kernel, ti.range(3))], [[-1, 0, 1], [0, 1, 2], [1, 2, 3]], "map kernel"); + assert.deepEqual( + [...ti.map(kernel, ti.range(3))], + [ + [-1, 0, 1], + [0, 1, 2], + [1, 2, 3], + ], + "map kernel" + ); }); it("last", () => { assert.strictEqual(ti.last([]), undefined, "empty"); @@ -212,73 +468,262 @@ describe("iterators", function () { }); it("map", () => { assert.deepEqual([...ti.map((x) => x * 10)], [], "no input"); - assert.deepEqual([...ti.map((x) => x * 10, ti.range(3))], [0, 10, 20], "range(3)"); - assert.deepEqual([...ti.map((x, y, z) => [x, y, z], ti.range(5), ti.range(0, 100, 10), ti.range(0, 1000, 100))], [[0, 0, 0], [1, 10, 100], [2, 20, 200], [3, 30, 300], [4, 40, 400]], "multi range"); + assert.deepEqual( + [...ti.map((x) => x * 10, ti.range(3))], + [0, 10, 20], + "range(3)" + ); + assert.deepEqual( + [ + ...ti.map( + (x, y, z) => [x, y, z], + ti.range(5), + ti.range(0, 100, 10), + ti.range(0, 1000, 100) + ), + ], + [ + [0, 0, 0], + [1, 10, 100], + [2, 20, 200], + [3, 30, 300], + [4, 40, 400], + ], + "multi range" + ); }); it("mapcat", () => { - assert.deepEqual([...ti.mapcat((x) => ti.repeat(x, 3), "hello")], ["h", "h", "h", "e", "e", "e", "l", "l", "l", "l", "l", "l", "o", "o", "o"], "string"); - assert.deepEqual([...ti.mapcat((x, y, z) => [x, y, z], ti.range(5), ti.range(0, 100, 10), ti.range(0, 1000, 100))], [0, 0, 0, 1, 10, 100, 2, 20, 200, 3, 30, 300, 4, 40, 400], "multi range"); - assert.deepEqual([...ti.mapcat((x) => x < 5 ? ti.repeat(x, x) : null, ti.range(10))], [1, 2, 2, 3, 3, 3, 4, 4, 4, 4], "skip null"); + assert.deepEqual( + [...ti.mapcat((x) => ti.repeat(x, 3), "hello")], + [ + "h", + "h", + "h", + "e", + "e", + "e", + "l", + "l", + "l", + "l", + "l", + "l", + "o", + "o", + "o", + ], + "string" + ); + assert.deepEqual( + [ + ...ti.mapcat( + (x, y, z) => [x, y, z], + ti.range(5), + ti.range(0, 100, 10), + ti.range(0, 1000, 100) + ), + ], + [0, 0, 0, 1, 10, 100, 2, 20, 200, 3, 30, 300, 4, 40, 400], + "multi range" + ); + assert.deepEqual( + [ + ...ti.mapcat( + (x) => (x < 5 ? ti.repeat(x, x) : null), + ti.range(10) + ), + ], + [1, 2, 2, 3, 3, 3, 4, 4, 4, 4], + "skip null" + ); }); it("mapIndexed", () => { - assert.deepEqual([...ti.mapIndexed((i, a, b) => [i, a, b], "hello", "there")], [[0, "h", "t"], [1, "e", "h"], [2, "l", "e"], [3, "l", "r"], [4, "o", "e"]], "strings"); + assert.deepEqual( + [...ti.mapIndexed((i, a, b) => [i, a, b], "hello", "there")], + [ + [0, "h", "t"], + [1, "e", "h"], + [2, "l", "e"], + [3, "l", "r"], + [4, "o", "e"], + ], + "strings" + ); }); it("objectIterator", () => { - assert.deepEqual([...ti.objectIterator({ a: 23, b: 42, c: [1, 2, 3] })], [["a", 23], ["b", 42], ["c", [1, 2, 3]]], "mixed"); + assert.deepEqual( + [...ti.objectIterator({ a: 23, b: 42, c: [1, 2, 3] })], + [ + ["a", 23], + ["b", 42], + ["c", [1, 2, 3]], + ], + "mixed" + ); }); it("partition", () => { assert.throws(() => ti.partition(0, 0, ti.range(3)).next(), "bad size"); assert.throws(() => ti.partition(1, 0, ti.range(3)).next(), "bad step"); - assert.deepEqual([...ti.partition(1, 1, ti.range(3))], [[0], [1], [2]], "1,1"); - assert.deepEqual([...ti.partition(3, 3, ti.range(7))], [[0, 1, 2], [3, 4, 5]], "3,3"); - assert.deepEqual([...ti.partition(3, 3, ti.range(7), true)], [[0, 1, 2], [3, 4, 5], [6]], "3,3 all"); - assert.deepEqual([...ti.partition(3, 1, ti.range(7))], [[0, 1, 2], [1, 2, 3], [2, 3, 4], [3, 4, 5], [4, 5, 6]], "3,1"); - assert.deepEqual([...ti.partition(3, 1, ti.range(7), true)], [[0, 1, 2], [1, 2, 3], [2, 3, 4], [3, 4, 5], [4, 5, 6], [5, 6]], "3,1 all"); - assert.deepEqual([...ti.partition(3, 5, ti.range(11))], [[0, 1, 2], [5, 6, 7]], "3,5"); - assert.deepEqual([...ti.partition(3, 5, ti.range(11), true)], [[0, 1, 2], [5, 6, 7], [10]], "3,5 all"); + assert.deepEqual( + [...ti.partition(1, 1, ti.range(3))], + [[0], [1], [2]], + "1,1" + ); + assert.deepEqual( + [...ti.partition(3, 3, ti.range(7))], + [ + [0, 1, 2], + [3, 4, 5], + ], + "3,3" + ); + assert.deepEqual( + [...ti.partition(3, 3, ti.range(7), true)], + [[0, 1, 2], [3, 4, 5], [6]], + "3,3 all" + ); + assert.deepEqual( + [...ti.partition(3, 1, ti.range(7))], + [ + [0, 1, 2], + [1, 2, 3], + [2, 3, 4], + [3, 4, 5], + [4, 5, 6], + ], + "3,1" + ); + assert.deepEqual( + [...ti.partition(3, 1, ti.range(7), true)], + [ + [0, 1, 2], + [1, 2, 3], + [2, 3, 4], + [3, 4, 5], + [4, 5, 6], + [5, 6], + ], + "3,1 all" + ); + assert.deepEqual( + [...ti.partition(3, 5, ti.range(11))], + [ + [0, 1, 2], + [5, 6, 7], + ], + "3,5" + ); + assert.deepEqual( + [...ti.partition(3, 5, ti.range(11), true)], + [[0, 1, 2], [5, 6, 7], [10]], + "3,5 all" + ); }); it("partitionBy", () => { - assert.deepEqual([...ti.partitionBy((x) => x / 5 | 0, ti.range(11))], [[0, 1, 2, 3, 4], [5, 6, 7, 8, 9], [10]], "mult5"); + assert.deepEqual( + [...ti.partitionBy((x) => (x / 5) | 0, ti.range(11))], + [[0, 1, 2, 3, 4], [5, 6, 7, 8, 9], [10]], + "mult5" + ); }); it("randomSample", () => { - ti.run( - (_) => { - let l = [...ti.randomSample(0.5, ti.range(100))].length; - assert(l >= 30 && l <= 70, `50% (${l})`); - }, - ti.range(100) - ); + ti.run((_) => { + let l = [...ti.randomSample(0.5, ti.range(100))].length; + assert(l >= 30 && l <= 70, `50% (${l})`); + }, ti.range(100)); }); it("range", () => { - assert.deepEqual([...ti.take(5, ti.range())], [0, 1, 2, 3, 4], "unbounded"); + assert.deepEqual( + [...ti.take(5, ti.range())], + [0, 1, 2, 3, 4], + "unbounded" + ); assert.deepEqual([...ti.range(5)], [0, 1, 2, 3, 4], "range(to)"); assert.deepEqual([...ti.range(1, 5)], [1, 2, 3, 4], "range(from,to)"); assert.deepEqual([...ti.range(1, 5, 2)], [1, 3], "range(from,to,step)"); assert.deepEqual([...ti.range(1, 5, -2)], [], "range(from,to,-step)"); - assert.deepEqual([...ti.range(5, 1)], [5, 4, 3, 2], "range(from,to) rev"); - assert.deepEqual([...ti.range(5, 1, -2)], [5, 3], "range(from,to,-step) rev"); + assert.deepEqual( + [...ti.range(5, 1)], + [5, 4, 3, 2], + "range(from,to) rev" + ); + assert.deepEqual( + [...ti.range(5, 1, -2)], + [5, 3], + "range(from,to,-step) rev" + ); assert.deepEqual([...ti.range(5, 1, 2)], [], "range(from,to,step) rev"); }); it("reduce", () => { - assert.equal(ti.reduce((acc, x) => acc + x, -1, []), -1, "empty"); - assert.equal(ti.reduce((acc, x) => acc + x, 0, ti.range(10)), 45, "sum"); - assert.equal(ti.reduce((acc, x) => { return acc += x, acc >= 15 ? ti.reduced(acc) : acc }, 0, ti.range()), 15, "sum reduced"); + assert.equal( + ti.reduce((acc, x) => acc + x, -1, []), + -1, + "empty" + ); + assert.equal( + ti.reduce((acc, x) => acc + x, 0, ti.range(10)), + 45, + "sum" + ); + assert.equal( + ti.reduce( + (acc, x) => { + return (acc += x), acc >= 15 ? ti.reduced(acc) : acc; + }, + 0, + ti.range() + ), + 15, + "sum reduced" + ); }); it("reductions", () => { - assert.deepEqual([...ti.reductions((acc, x) => acc + x, -1, [])], [-1], "empty"); - assert.deepEqual([...ti.reductions((acc, x) => acc + x, 0, ti.range(10))], [0, 1, 3, 6, 10, 15, 21, 28, 36, 45], "sums"); - assert.deepEqual([...ti.reductions((acc, x) => { return acc += x, acc >= 15 ? ti.reduced(acc) : acc }, 0, ti.range())], [0, 1, 3, 6, 10, 15], "sum reduced"); + assert.deepEqual( + [...ti.reductions((acc, x) => acc + x, -1, [])], + [-1], + "empty" + ); + assert.deepEqual( + [...ti.reductions((acc, x) => acc + x, 0, ti.range(10))], + [0, 1, 3, 6, 10, 15, 21, 28, 36, 45], + "sums" + ); + assert.deepEqual( + [ + ...ti.reductions( + (acc, x) => { + return (acc += x), acc >= 15 ? ti.reduced(acc) : acc; + }, + 0, + ti.range() + ), + ], + [0, 1, 3, 6, 10, 15], + "sum reduced" + ); }); it("repeat", () => { assert.deepEqual([...ti.repeat(1, 3)], [1, 1, 1], "repeat(1,3)"); - assert.deepEqual([...ti.take(3, ti.repeat(1))], [1, 1, 1], "take(3,repeat(1))"); + assert.deepEqual( + [...ti.take(3, ti.repeat(1))], + [1, 1, 1], + "take(3,repeat(1))" + ); assert.deepEqual([...ti.repeat(1, 0)], [], "repeat(1,0)"); assert.deepEqual([...ti.repeat(1, -1)], [], "repeat(1,-1)"); }); it("repeatedly", () => { let f = () => 1; - assert.deepEqual([...ti.repeatedly(f, 3)], [1, 1, 1], "repeatedly(f,3)"); - assert.deepEqual([...ti.take(3, ti.repeatedly(f))], [1, 1, 1], "take(3,repeatedly(f))"); + assert.deepEqual( + [...ti.repeatedly(f, 3)], + [1, 1, 1], + "repeatedly(f,3)" + ); + assert.deepEqual( + [...ti.take(3, ti.repeatedly(f))], + [1, 1, 1], + "take(3,repeatedly(f))" + ); assert.deepEqual([...ti.repeatedly(f, 0)], [], "repeatedly(f,0)"); assert.deepEqual([...ti.repeatedly(f, -1)], [], "repeatedly(f,-1)"); }); @@ -293,11 +738,23 @@ describe("iterators", function () { }); it("some", () => { let nums = ti.iterator([1, 2, 3]) as IterableIterator; - assert.equal(ti.some((x) => (x % 2) === 0, nums), 2, "even"); + assert.equal( + ti.some((x) => x % 2 === 0, nums), + 2, + "even" + ); assert.deepEqual(nums.next(), { value: 3, done: false }, "rest"); nums = ti.iterator([1, 2, 3]) as IterableIterator; - assert.strictEqual(ti.some((x) => x > 3, nums), undefined, "x>3"); - assert.deepEqual(nums.next(), { value: undefined, done: true }, "no rest"); + assert.strictEqual( + ti.some((x) => x > 3, nums), + undefined, + "x>3" + ); + assert.deepEqual( + nums.next(), + { value: undefined, done: true }, + "no rest" + ); }); it("take", () => { assert.deepEqual([...ti.take(3, [1, 2, 3, 4])], [1, 2, 3], "take(3)"); @@ -312,55 +769,86 @@ describe("iterators", function () { it("takeWhile", () => { let input = ti.range(10); assert.deepEqual([...ti.takeWhile((_) => true, [])], [], "empty"); - assert.deepEqual([...ti.takeWhile((x) => x < 5, input)], [0, 1, 2, 3, 4], "x<5"); + assert.deepEqual( + [...ti.takeWhile((x) => x < 5, input)], + [0, 1, 2, 3, 4], + "x<5" + ); assert.deepEqual([...input], [6, 7, 8, 9], "rest"); }); it("takeLast", () => { assert.deepEqual([...ti.takeLast(5, [])], [], "empty"); - assert.deepEqual([...ti.takeLast(5, ti.range(1000))], [995, 996, 997, 998, 999], "last 1000"); + assert.deepEqual( + [...ti.takeLast(5, ti.range(1000))], + [995, 996, 997, 998, 999], + "last 1000" + ); assert.deepEqual([...ti.takeLast(5, ti.range(3))], [0, 1, 2], "excess"); }); it("walk", () => { - let walk = (post:any) => { + let walk = (post: any) => { let res: any[] = []; - ti.walk((x) => res.push(x), [[1, { a: [2] }], ["3", [4]]], post); + ti.walk( + (x) => res.push(x), + [ + [1, { a: [2] }], + ["3", [4]], + ], + post + ); return res; }; - assert.deepEqual(walk(false), + assert.deepEqual(walk(false), [ [ - [[1, { a: [2] }], ["3", [4]]], [1, { a: [2] }], - 1, - { a: [2] }, - ["a", [2]], - "a", - [2], - 2, ["3", [4]], - "3", - [4], - 4 - ]); - assert.deepEqual(walk(true), - [1, - "a", - 2, - [2], - ["a", [2]], - { a: [2] }, + ], + [1, { a: [2] }], + 1, + { a: [2] }, + ["a", [2]], + "a", + [2], + 2, + ["3", [4]], + "3", + [4], + 4, + ]); + assert.deepEqual(walk(true), [ + 1, + "a", + 2, + [2], + ["a", [2]], + { a: [2] }, + [1, { a: [2] }], + "3", + 4, + [4], + ["3", [4]], + [ [1, { a: [2] }], - "3", - 4, - [4], ["3", [4]], - [[1, { a: [2] }], ["3", [4]]] - ]); + ], + ]); }); it("walkIterator", () => { assert.deepEqual( - [...ti.walkIterator([[1, { a: [2] }], ["3", [4]]], false)], [ - [[1, { a: [2] }], ["3", [4]]], + ...ti.walkIterator( + [ + [1, { a: [2] }], + ["3", [4]], + ], + false + ), + ], + [ + [ + [1, { a: [2] }], + ["3", [4]], + ], [1, { a: [2] }], 1, { a: [2] }, @@ -371,23 +859,46 @@ describe("iterators", function () { ["3", [4]], "3", [4], - 4 - ]); + 4, + ] + ); assert.deepEqual( - [...ti.walkIterator([[1, { a: [2] }], ["3", [4]]], (x) => Array.isArray(x) ? x : null, false)], [ - [[1, { a: [2] }], ["3", [4]]], + ...ti.walkIterator( + [ + [1, { a: [2] }], + ["3", [4]], + ], + (x) => (Array.isArray(x) ? x : null), + false + ), + ], + [ + [ + [1, { a: [2] }], + ["3", [4]], + ], [1, { a: [2] }], 1, { a: [2] }, ["3", [4]], "3", [4], - 4 - ]); + 4, + ] + ); assert.deepEqual( - [...ti.walkIterator([[1, { a: [2] }], ["3", [4]]], true)], - [1, + [ + ...ti.walkIterator( + [ + [1, { a: [2] }], + ["3", [4]], + ], + true + ), + ], + [ + 1, "a", 2, [2], @@ -398,17 +909,42 @@ describe("iterators", function () { 4, [4], ["3", [4]], - [[1, { a: [2] }], ["3", [4]]] - ]); + [ + [1, { a: [2] }], + ["3", [4]], + ], + ] + ); }); it("zip", () => { let langs = [ { id: "js", name: "JavaScript" }, { id: "clj", name: "Clojure" }, - { id: "ts", name: "TypeScript" } + { id: "ts", name: "TypeScript" }, ]; - assert.deepEqual(ti.zip("abcdef", ti.range()), { a: 0, b: 1, c: 2, d: 3, e: 4, f: 5 }, ""); - assert.deepEqual(ti.zip(ti.range(5, 10), ti.range(100, 200), [...new Uint8Array(16)]), [0, 0, 0, 0, 0, 100, 101, 102, 103, 104, 0, 0, 0, 0, 0, 0], "typedarray") - assert.deepEqual(ti.zip(ti.map((x) => x.id, langs), langs), { js: { id: "js", name: "JavaScript" }, clj: { id: "clj", name: "Clojure" }, ts: { id: "ts", name: "TypeScript" } }, "obj"); + assert.deepEqual( + ti.zip("abcdef", ti.range()), + { a: 0, b: 1, c: 2, d: 3, e: 4, f: 5 }, + "" + ); + assert.deepEqual( + ti.zip(ti.range(5, 10), ti.range(100, 200), [ + ...new Uint8Array(16), + ]), + [0, 0, 0, 0, 0, 100, 101, 102, 103, 104, 0, 0, 0, 0, 0, 0], + "typedarray" + ); + assert.deepEqual( + ti.zip( + ti.map((x) => x.id, langs), + langs + ), + { + js: { id: "js", name: "JavaScript" }, + clj: { id: "clj", name: "Clojure" }, + ts: { id: "ts", name: "TypeScript" }, + }, + "obj" + ); }); }); diff --git a/packages/layout/CHANGELOG.md b/packages/layout/CHANGELOG.md index 6d5f32a949..88cfb2bbe8 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.13](https://github.com/thi-ng/umbrella/compare/@thi.ng/layout@0.1.12...@thi.ng/layout@0.1.13) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/layout + + + + + ## [0.1.12](https://github.com/thi-ng/umbrella/compare/@thi.ng/layout@0.1.11...@thi.ng/layout@0.1.12) (2020-06-01) **Note:** Version bump only for package @thi.ng/layout diff --git a/packages/layout/package.json b/packages/layout/package.json index 794984199b..367013542e 100644 --- a/packages/layout/package.json +++ b/packages/layout/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/layout", - "version": "0.1.12", + "version": "0.1.13", "description": "TODO", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/layout/src/grid-layout.ts b/packages/layout/src/grid-layout.ts index 269f525b56..b335b9a2a9 100644 --- a/packages/layout/src/grid-layout.ts +++ b/packages/layout/src/grid-layout.ts @@ -78,7 +78,7 @@ export class GridLayout implements IGridLayout { h, cw: this.cellW, ch: this.cellH, - gap + gap, }; this.propagateSize(rspan); this.currCol = Math.min(this.currCol + cspan, cols) % cols; @@ -88,7 +88,7 @@ export class GridLayout implements IGridLayout { nextSquare() { const box = this.next([ 1, - Math.ceil(this.cellW / (this.cellH + this.gap)) + 1 + Math.ceil(this.cellW / (this.cellH + this.gap)) + 1, ]); box.h = box.w; return box; diff --git a/packages/leb128/CHANGELOG.md b/packages/leb128/CHANGELOG.md index bb02de5bc5..6381d33610 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.21](https://github.com/thi-ng/umbrella/compare/@thi.ng/leb128@1.0.20...@thi.ng/leb128@1.0.21) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/leb128 + + + + + ## [1.0.20](https://github.com/thi-ng/umbrella/compare/@thi.ng/leb128@1.0.19...@thi.ng/leb128@1.0.20) (2020-06-01) **Note:** Version bump only for package @thi.ng/leb128 diff --git a/packages/leb128/package.json b/packages/leb128/package.json index e55bf83f53..7394228393 100644 --- a/packages/leb128/package.json +++ b/packages/leb128/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/leb128", - "version": "1.0.20", + "version": "1.0.21", "description": "WASM based LEB128 encoder / decoder (signed & unsigned)", "module": "./index.js", "main": "./lib/index.js", @@ -44,9 +44,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/checks": "^2.7.0", + "@thi.ng/checks": "^2.7.1", "@thi.ng/errors": "^1.2.14", - "@thi.ng/transducers-binary": "^0.5.16", + "@thi.ng/transducers-binary": "^0.5.17", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/leb128/test/index.ts b/packages/leb128/test/index.ts index 52e9126833..d91936c118 100644 --- a/packages/leb128/test/index.ts +++ b/packages/leb128/test/index.ts @@ -4,7 +4,7 @@ import { decodeSLEB128, decodeULEB128, encodeSLEB128, - encodeULEB128 + encodeULEB128, } from "../src/index"; describe("leb128", () => { diff --git a/packages/lsys/CHANGELOG.md b/packages/lsys/CHANGELOG.md index 4a913dae39..82dc0329e0 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.47](https://github.com/thi-ng/umbrella/compare/@thi.ng/lsys@0.2.46...@thi.ng/lsys@0.2.47) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/lsys + + + + + ## [0.2.46](https://github.com/thi-ng/umbrella/compare/@thi.ng/lsys@0.2.45...@thi.ng/lsys@0.2.46) (2020-06-01) **Note:** Version bump only for package @thi.ng/lsys diff --git a/packages/lsys/package.json b/packages/lsys/package.json index 5b32f4d334..227a93a322 100644 --- a/packages/lsys/package.json +++ b/packages/lsys/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/lsys", - "version": "0.2.46", + "version": "0.2.47", "description": "Functional, extensible L-System architecture w/ support for probabilistic rules", "module": "./index.js", "main": "./lib/index.js", @@ -43,13 +43,13 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/compose": "^1.4.8", + "@thi.ng/api": "^6.11.1", + "@thi.ng/compose": "^1.4.9", "@thi.ng/errors": "^1.2.14", - "@thi.ng/math": "^1.7.10", - "@thi.ng/random": "^1.4.10", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/math": "^1.7.11", + "@thi.ng/random": "^1.4.11", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/lsys/src/index.ts b/packages/lsys/src/index.ts index 1d98180dfb..97643943c5 100644 --- a/packages/lsys/src/index.ts +++ b/packages/lsys/src/index.ts @@ -2,12 +2,7 @@ import { partial, threadLast } from "@thi.ng/compose"; import { illegalState } from "@thi.ng/errors"; import { cossin, HALF_PI } from "@thi.ng/math"; import { IRandom, SYSTEM } from "@thi.ng/random"; -import { - iterate, - last, - mapcat, - take -} from "@thi.ng/transducers"; +import { iterate, last, mapcat, take } from "@thi.ng/transducers"; import { add, Vec } from "@thi.ng/vectors"; import type { Fn2, IObjectOf } from "@thi.ng/api"; @@ -132,7 +127,7 @@ export const TURTLE_IMPL_2D: RuleImplementations = { const prev = ctx.stack.pop(); !prev && illegalState("stack empty"); Object.assign(ctx, prev); - } + }, }; export const turtle2d = (state?: Partial): Turtle2D => ({ @@ -150,7 +145,7 @@ export const turtle2d = (state?: Partial): Turtle2D => ({ curr: [[0, 0]], paths: [], stack: [], - ...state + ...state, }); export const rewrite = (rules: ProductionRules, syms: Iterable) => diff --git a/packages/lsys/test/examples.ts b/packages/lsys/test/examples.ts index 5fcbe7c6ad..08c486d2ca 100644 --- a/packages/lsys/test/examples.ts +++ b/packages/lsys/test/examples.ts @@ -14,18 +14,18 @@ const examples: Example[] = [ { rules: { s: "[f-f-f-f-f-f-f-f]", f: "f---f+f+f+f+f+f+f---f" }, delta: Math.PI / 4, - iter: 6 + iter: 6, }, { rules: { s: "[x]", x: "-yf+xfx+fy-", y: "+xf-yfy-fx+" }, delta: Math.PI / 2, - iter: 7 + iter: 7, }, { rules: { s: "[a]", a: "a-b--b+a++aa+b-", b: "+a-bb--b-a++a+b" }, delta: Math.PI / 3, - iter: 5 - } + iter: 5, + }, ]; const impl = lsys.TURTLE_IMPL_2D; @@ -43,7 +43,7 @@ examples.forEach(({ rules, delta, iter }, i) => stroke: "#00f", "stroke-width": 0.25, width: 600, - height: 600 + height: 600, }, ...lsys .interpret( diff --git a/packages/lsys/test/tree.ts b/packages/lsys/test/tree.ts index 1374f91bf9..d657ed162a 100644 --- a/packages/lsys/test/tree.ts +++ b/packages/lsys/test/tree.ts @@ -27,7 +27,7 @@ fs.writeFileSync( decayStep: 0.85, decayAlive: 0.975, aliveProb: 0.999, - rnd: new XsAdd(0xdecafbad) + rnd: new XsAdd(0xdecafbad), }), // customize implementation to process syms "a" & "g" as "f" { ...impl, a: impl.f, g: impl.f }, @@ -36,7 +36,7 @@ fs.writeFileSync( { s: "[f]", f: "a[kp!>/-g]/a[kp!>/+g]", - g: "a[kp!>/+f]/a[kp!>/-f]" + g: "a[kp!>/+f]/a[kp!>/-f]", }, "s", 13 diff --git a/packages/malloc/CHANGELOG.md b/packages/malloc/CHANGELOG.md index 2961507ec1..4fbfa352ef 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.1.17](https://github.com/thi-ng/umbrella/compare/@thi.ng/malloc@4.1.16...@thi.ng/malloc@4.1.17) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/malloc + + + + + ## [4.1.16](https://github.com/thi-ng/umbrella/compare/@thi.ng/malloc@4.1.15...@thi.ng/malloc@4.1.16) (2020-06-01) **Note:** Version bump only for package @thi.ng/malloc diff --git a/packages/malloc/package.json b/packages/malloc/package.json index e97e6d23ad..4fd7bffd5e 100644 --- a/packages/malloc/package.json +++ b/packages/malloc/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/malloc", - "version": "4.1.16", + "version": "4.1.17", "description": "ArrayBuffer based malloc() impl for hybrid JS/WASM use cases, based on thi.ng/tinyalloc", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/binary": "^2.0.7", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/binary": "^2.0.8", + "@thi.ng/checks": "^2.7.1", "@thi.ng/errors": "^1.2.14", "tslib": "^1.12.0" }, diff --git a/packages/malloc/src/pool.ts b/packages/malloc/src/pool.ts index c4042ae134..9b5affe779 100644 --- a/packages/malloc/src/pool.ts +++ b/packages/malloc/src/pool.ts @@ -1,10 +1,4 @@ -import { - assert, - SIZEOF, - Type, - TypedArray, - typedArray -} from "@thi.ng/api"; +import { assert, SIZEOF, Type, TypedArray, typedArray } from "@thi.ng/api"; import { align, Pow2 } from "@thi.ng/binary"; import { isNumber } from "@thi.ng/checks"; import { illegalArgs } from "@thi.ng/errors"; @@ -91,7 +85,7 @@ export class MemPool implements IMemPool { used: listStats(this._used), top: this.top, available: this.end - this.top + free.size, - total: this.buf.byteLength + total: this.buf.byteLength, }; } @@ -335,8 +329,9 @@ export class MemPool implements IMemPool { protected set minSplit(x: number) { assert( x > SIZEOF_MEM_BLOCK, - `illegal min split threshold: ${x}, require at least ${SIZEOF_MEM_BLOCK + - 1}` + `illegal min split threshold: ${x}, require at least ${ + SIZEOF_MEM_BLOCK + 1 + }` ); this.state[STATE_MIN_SPLIT] = x; } diff --git a/packages/malloc/test/index.ts b/packages/malloc/test/index.ts index c395fad918..6fe4acd927 100644 --- a/packages/malloc/test/index.ts +++ b/packages/malloc/test/index.ts @@ -57,7 +57,7 @@ describe("malloc", () => { assert.deepEqual(stats.free, { count: 0, size: 0 }); assert.deepEqual(stats.used, { count: 3, - size: 16 + 32 + 24 + 3 * BLOCK_OVERHEAD + size: 16 + 32 + 24 + 3 * BLOCK_OVERHEAD, }); // free all @@ -89,7 +89,7 @@ describe("malloc", () => { assert.deepEqual(stats.free, { count: 1, size: 24 }); assert.deepEqual(stats.used, { count: 2, - size: 24 + 2 * BLOCK_OVERHEAD + size: 24 + 2 * BLOCK_OVERHEAD, }); assert.equal(stats.top, base + 32 + 16 + 2 * BLOCK_OVERHEAD, "top4"); @@ -103,7 +103,7 @@ describe("malloc", () => { assert.deepEqual(stats.free, { count: 0, size: 0 }); assert.deepEqual(stats.used, { count: 2, - size: 8 + 64 + 2 * BLOCK_OVERHEAD + size: 8 + 64 + 2 * BLOCK_OVERHEAD, }); assert.equal(stats.top, base + 8 + 64 + 2 * BLOCK_OVERHEAD, "top5"); @@ -128,7 +128,7 @@ describe("malloc", () => { assert.deepEqual(stats.free, { count: 1, size: 8 + BLOCK_OVERHEAD }); assert.deepEqual(stats.used, { count: 2, - size: 64 + 32 + 2 * BLOCK_OVERHEAD + size: 64 + 32 + 2 * BLOCK_OVERHEAD, }); assert.equal( stats.top, @@ -150,7 +150,7 @@ describe("malloc", () => { used: { count: 0, size: 0 }, available: pool.buf.byteLength - base, total: pool.buf.byteLength, - top: base + top: base, }); pool.release(); }); @@ -186,7 +186,7 @@ describe("malloc", () => { 0x3f800000, 0x40000000, 0x40400000, - 0 + 0, ] ); assert.deepEqual( @@ -200,7 +200,7 @@ describe("malloc", () => { 0, 0x403e0000, 0, - 0 + 0, ] ); assert(pool.free(a!), "free a"); diff --git a/packages/math/CHANGELOG.md b/packages/math/CHANGELOG.md index 116b2876f8..1fb4fad012 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. +## [1.7.11](https://github.com/thi-ng/umbrella/compare/@thi.ng/math@1.7.10...@thi.ng/math@1.7.11) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/math + + + + + # [1.7.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/math@1.6.0...@thi.ng/math@1.7.0) (2020-02-25) diff --git a/packages/math/package.json b/packages/math/package.json index 1783d2429f..151699f08e 100644 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/math", - "version": "1.7.10", + "version": "1.7.11", "description": "Assorted common math functions & utilities", "module": "./index.js", "main": "./lib/index.js", diff --git a/packages/math/src/angle.ts b/packages/math/src/angle.ts index 26bee24252..343bee170d 100644 --- a/packages/math/src/angle.ts +++ b/packages/math/src/angle.ts @@ -1,11 +1,4 @@ -import { - DEG2RAD, - HALF_PI, - INV_HALF_PI, - PI, - RAD2DEG, - TAU -} from "./api"; +import { DEG2RAD, HALF_PI, INV_HALF_PI, PI, RAD2DEG, TAU } from "./api"; /** * Returns vector of `[sin(theta)*n, cos(theta)*n]`. @@ -15,7 +8,7 @@ import { */ export const sincos = (theta: number, n = 1) => [ Math.sin(theta) * n, - Math.cos(theta) * n + Math.cos(theta) * n, ]; /** @@ -26,7 +19,7 @@ export const sincos = (theta: number, n = 1) => [ */ export const cossin = (theta: number, n = 1) => [ Math.cos(theta) * n, - Math.sin(theta) * n + Math.sin(theta) * n, ]; /** diff --git a/packages/math/src/solve.ts b/packages/math/src/solve.ts index 91da3fade9..e06f248072 100644 --- a/packages/math/src/solve.ts +++ b/packages/math/src/solve.ts @@ -101,7 +101,7 @@ export const solveCubic = ( return [ u * Math.cos(t) - ba3, u * Math.cos(t - k) - ba3, - u * Math.cos(t - 2 * k) - ba3 + u * Math.cos(t - 2 * k) - ba3, ]; } } diff --git a/packages/matrices/CHANGELOG.md b/packages/matrices/CHANGELOG.md index 962006d450..eb3dc15152 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.19](https://github.com/thi-ng/umbrella/compare/@thi.ng/matrices@0.6.18...@thi.ng/matrices@0.6.19) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/matrices + + + + + ## [0.6.18](https://github.com/thi-ng/umbrella/compare/@thi.ng/matrices@0.6.17...@thi.ng/matrices@0.6.18) (2020-06-01) **Note:** Version bump only for package @thi.ng/matrices diff --git a/packages/matrices/package.json b/packages/matrices/package.json index 354d00b610..07059fe8b6 100644 --- a/packages/matrices/package.json +++ b/packages/matrices/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/matrices", - "version": "0.6.18", + "version": "0.6.19", "description": "Matrix & quaternion operations for 2D/3D geometry processing", "module": "./index.js", "main": "./lib/index.js", @@ -43,10 +43,10 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/math": "^1.7.10", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/math": "^1.7.11", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/matrices/src/alignment-quat.ts b/packages/matrices/src/alignment-quat.ts index 17be9b5723..fb307bd4c2 100644 --- a/packages/matrices/src/alignment-quat.ts +++ b/packages/matrices/src/alignment-quat.ts @@ -3,7 +3,7 @@ import { dot3, mag, normalize as _normalize, - ReadonlyVec + ReadonlyVec, } from "@thi.ng/vectors"; import { quatFromAxisAngle } from "./quat-axis-angle"; diff --git a/packages/matrices/src/api.ts b/packages/matrices/src/api.ts index c9214a12f6..93fdb7550f 100644 --- a/packages/matrices/src/api.ts +++ b/packages/matrices/src/api.ts @@ -1,10 +1,5 @@ import type { Tuple, TypedArray } from "@thi.ng/api"; -import type { - IVector, - MultiVecOp, - ReadonlyVec, - Vec -} from "@thi.ng/vectors"; +import type { IVector, MultiVecOp, ReadonlyVec, Vec } from "@thi.ng/vectors"; export type Mat = Vec; export type ReadonlyMat = ReadonlyVec; diff --git a/packages/matrices/src/column.ts b/packages/matrices/src/column.ts index 2b7c2552c8..96c02360b3 100644 --- a/packages/matrices/src/column.ts +++ b/packages/matrices/src/column.ts @@ -1,9 +1,4 @@ -import { - setS2, - setS3, - setS4, - vop -} from "@thi.ng/vectors"; +import { setS2, setS3, setS4, vop } from "@thi.ng/vectors"; import type { MultiVecOpMN, VecOpMN } from "./api"; /** diff --git a/packages/matrices/src/determinant.ts b/packages/matrices/src/determinant.ts index 881a5da900..4cdfa012fa 100644 --- a/packages/matrices/src/determinant.ts +++ b/packages/matrices/src/determinant.ts @@ -33,7 +33,7 @@ export const detCoeffs44 = (m: ReadonlyMat) => { m30, m31, m32, - m33 + m33, ] = m; return [ dp4(m00, m11, -m01, m10), @@ -47,7 +47,7 @@ export const detCoeffs44 = (m: ReadonlyMat) => { dp4(m20, m33, -m23, m30), dp4(m21, m32, -m22, m31), dp4(m21, m33, -m23, m31), - dp4(m22, m33, -m23, m32) + dp4(m22, m33, -m23, m32), ]; }; diff --git a/packages/matrices/src/diag.ts b/packages/matrices/src/diag.ts index e0373b87d7..584b2e4b26 100644 --- a/packages/matrices/src/diag.ts +++ b/packages/matrices/src/diag.ts @@ -1,9 +1,4 @@ -import { - setS2, - setS3, - setS4, - vop -} from "@thi.ng/vectors"; +import { setS2, setS3, setS4, vop } from "@thi.ng/vectors"; import type { MultiVecOpM } from "./api"; /** diff --git a/packages/matrices/src/frustum.ts b/packages/matrices/src/frustum.ts index bf8e4fdf94..a790a306c9 100644 --- a/packages/matrices/src/frustum.ts +++ b/packages/matrices/src/frustum.ts @@ -63,6 +63,6 @@ export const frustumBounds = ( bottom: -top, top, near, - far + far, }; }; diff --git a/packages/matrices/src/identity.ts b/packages/matrices/src/identity.ts index 7f7d7c7998..3c6873b7c4 100644 --- a/packages/matrices/src/identity.ts +++ b/packages/matrices/src/identity.ts @@ -1,10 +1,5 @@ import { vop } from "@thi.ng/vectors"; -import { - IDENT22, - IDENT23, - IDENT33, - IDENT44 -} from "./constants"; +import { IDENT22, IDENT23, IDENT33, IDENT44 } from "./constants"; import { set } from "./set"; import type { MultiMatOp1 } from "./api"; diff --git a/packages/matrices/src/internal/codegen.ts b/packages/matrices/src/internal/codegen.ts index c5cef5c2a2..06c48d0ee6 100644 --- a/packages/matrices/src/internal/codegen.ts +++ b/packages/matrices/src/internal/codegen.ts @@ -4,7 +4,7 @@ import { compile, DEFAULT_OUT, MATH, - MATH_N + MATH_N, } from "@thi.ng/vectors"; import type { MultiMatOpMM, MultiMatOpMN } from "../api"; diff --git a/packages/matrices/src/invert.ts b/packages/matrices/src/invert.ts index abb9ff1a19..b0f0206b76 100644 --- a/packages/matrices/src/invert.ts +++ b/packages/matrices/src/invert.ts @@ -7,7 +7,7 @@ import { setC4, setC6, Vec, - vop + vop, } from "@thi.ng/vectors"; import { det44FromCoeffs, detCoeffs44 } from "./determinant"; import type { MatOpMU, MultiMatOpMU } from "./api"; @@ -91,7 +91,7 @@ export const invert44: MatOpMU = invert.add(16, (out, m) => { m30, m31, m32, - m33 + m33, ] = m; const [d00, d01, d02, d03, d04, d05, d06, d07, d08, d09, d10, d11] = coeffs; return setC( diff --git a/packages/matrices/src/lookat.ts b/packages/matrices/src/lookat.ts index 00cb916ec3..faf19be8a7 100644 --- a/packages/matrices/src/lookat.ts +++ b/packages/matrices/src/lookat.ts @@ -4,7 +4,7 @@ import { normalize, ReadonlyVec, setC, - sub3 + sub3, } from "@thi.ng/vectors"; import type { Mat } from "./api"; diff --git a/packages/matrices/src/matn.ts b/packages/matrices/src/matn.ts index 7094cc644c..e3bb482b6b 100644 --- a/packages/matrices/src/matn.ts +++ b/packages/matrices/src/matn.ts @@ -1,9 +1,4 @@ -import { - scale22, - scale23, - scale33, - scale44 -} from "./scale"; +import { scale22, scale23, scale33, scale44 } from "./scale"; import type { Mat } from "./api"; export const mat22n = (out: Mat | null, n: number) => scale22(out, n); diff --git a/packages/matrices/src/matv.ts b/packages/matrices/src/matv.ts index b228412ac9..5f360d7975 100644 --- a/packages/matrices/src/matv.ts +++ b/packages/matrices/src/matv.ts @@ -1,9 +1,4 @@ -import { - setVV16, - setVV4, - setVV6, - setVV9 -} from "@thi.ng/vectors"; +import { setVV16, setVV4, setVV6, setVV9 } from "@thi.ng/vectors"; /** * Initializes 2x2 matrix from 2D column vectors. diff --git a/packages/matrices/src/mixq.ts b/packages/matrices/src/mixq.ts index 92d77bd3dc..331c1ecaff 100644 --- a/packages/matrices/src/mixq.ts +++ b/packages/matrices/src/mixq.ts @@ -1,11 +1,4 @@ -import { - dot4, - maddN4, - mulN4, - ReadonlyVec, - set4, - Vec -} from "@thi.ng/vectors"; +import { dot4, maddN4, mulN4, ReadonlyVec, set4, Vec } from "@thi.ng/vectors"; /** * Interpolates quaternion `a` to `b` by given amount `t` [0...1], using diff --git a/packages/matrices/src/mulm.ts b/packages/matrices/src/mulm.ts index a9f5fd3a3f..4c489bffbf 100644 --- a/packages/matrices/src/mulm.ts +++ b/packages/matrices/src/mulm.ts @@ -1,12 +1,4 @@ -import { - dotS2, - dotS3, - dotS4, - setC, - setC4, - setC6, - vop -} from "@thi.ng/vectors"; +import { dotS2, dotS3, dotS4, setC, setC4, setC6, vop } from "@thi.ng/vectors"; import type { MultiMatOpMM } from "./api"; /** diff --git a/packages/matrices/src/mulv.ts b/packages/matrices/src/mulv.ts index 162ea33e36..df17f3e977 100644 --- a/packages/matrices/src/mulv.ts +++ b/packages/matrices/src/mulv.ts @@ -8,7 +8,7 @@ import { setC4, Vec, VecOpVV, - vop + vop, } from "@thi.ng/vectors"; import type { MatOpMV, MultiMatOpMV, ReadonlyMat } from "./api"; diff --git a/packages/matrices/src/mulvm.ts b/packages/matrices/src/mulvm.ts index a7cf3c270d..17342c37c7 100644 --- a/packages/matrices/src/mulvm.ts +++ b/packages/matrices/src/mulvm.ts @@ -9,7 +9,7 @@ import { setC2, setC3, setC4, - Vec + Vec, } from "@thi.ng/vectors"; import type { ReadonlyMat } from "./api"; diff --git a/packages/matrices/src/outer-product.ts b/packages/matrices/src/outer-product.ts index c312636182..3fdbd4f56e 100644 --- a/packages/matrices/src/outer-product.ts +++ b/packages/matrices/src/outer-product.ts @@ -1,10 +1,4 @@ -import { - MultiVecOpVV, - ReadonlyVec, - setC, - setC4, - vop -} from "@thi.ng/vectors"; +import { MultiVecOpVV, ReadonlyVec, setC, setC4, vop } from "@thi.ng/vectors"; import type { Mat } from "./api"; /** diff --git a/packages/matrices/src/quat-euler.ts b/packages/matrices/src/quat-euler.ts index dd6e972f4d..6607a2621d 100644 --- a/packages/matrices/src/quat-euler.ts +++ b/packages/matrices/src/quat-euler.ts @@ -8,7 +8,7 @@ const axisOrder = { xzy: [X3, Z3, Y3], zxy: [Z3, X3, Y3], yzx: [Y3, Z3, X3], - zyx: [Z3, Y3, X3] + zyx: [Z3, Y3, X3], }; /** diff --git a/packages/matrices/src/row.ts b/packages/matrices/src/row.ts index 593858dfae..20bcfd878f 100644 --- a/packages/matrices/src/row.ts +++ b/packages/matrices/src/row.ts @@ -1,9 +1,4 @@ -import { - setS2, - setS3, - setS4, - vop -} from "@thi.ng/vectors"; +import { setS2, setS3, setS4, vop } from "@thi.ng/vectors"; import type { MultiVecOpMN } from "./api"; /** diff --git a/packages/matrices/src/scale.ts b/packages/matrices/src/scale.ts index 4d90fb8ed0..781ceec4d8 100644 --- a/packages/matrices/src/scale.ts +++ b/packages/matrices/src/scale.ts @@ -1,10 +1,5 @@ import { isNumber } from "@thi.ng/checks"; -import { - ReadonlyVec, - setC, - setC4, - setC6 -} from "@thi.ng/vectors"; +import { ReadonlyVec, setC, setC4, setC6 } from "@thi.ng/vectors"; import type { Mat } from "./api"; /** diff --git a/packages/matrices/src/set.ts b/packages/matrices/src/set.ts index 1ef0b23b94..463b674156 100644 --- a/packages/matrices/src/set.ts +++ b/packages/matrices/src/set.ts @@ -1,9 +1,4 @@ -import { - compile, - set as _set, - SET, - set4 -} from "@thi.ng/vectors"; +import { compile, set as _set, SET, set4 } from "@thi.ng/vectors"; import type { MatOpM } from "./api"; const $ = (dim: number) => _set.add(dim, compile(dim, SET, "o,a")); diff --git a/packages/matrices/src/shear.ts b/packages/matrices/src/shear.ts index 9797073a7c..8d2f32f515 100644 --- a/packages/matrices/src/shear.ts +++ b/packages/matrices/src/shear.ts @@ -1,9 +1,4 @@ -import { - identity22, - identity23, - identity33, - identity44 -} from "./identity"; +import { identity22, identity23, identity33, identity44 } from "./identity"; import type { Mat, MatOp1 } from "./api"; const $ = (f: MatOp1) => (i: number) => (m: Mat | null, x: number) => ( diff --git a/packages/matrices/src/skew.ts b/packages/matrices/src/skew.ts index 467c94d2d8..60b6868dce 100644 --- a/packages/matrices/src/skew.ts +++ b/packages/matrices/src/skew.ts @@ -14,7 +14,7 @@ import { shearZX33, shearZX44, shearZY33, - shearZY44 + shearZY44, } from "./shear"; import type { Mat, MatOpN } from "./api"; diff --git a/packages/matrices/test/index.ts b/packages/matrices/test/index.ts index 1ba7702e48..8162c44553 100644 --- a/packages/matrices/test/index.ts +++ b/packages/matrices/test/index.ts @@ -3,7 +3,6 @@ import * as m from "../src/index"; import { range } from "@thi.ng/transducers"; describe("matrices", () => { - it("identity (fixed)", () => { assert.deepEqual(m.identity22([]), m.IDENT22, "m22"); assert.deepEqual(m.identity23([]), m.IDENT23, "m23"); @@ -17,5 +16,4 @@ describe("matrices", () => { assert.deepEqual(m.identity([...range(9)]), m.IDENT33, "m33"); assert.deepEqual(m.identity([...range(16)]), m.IDENT44, "m44"); }); - }); diff --git a/packages/memoize/CHANGELOG.md b/packages/memoize/CHANGELOG.md index fa0e655ef8..8bc6c34fba 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.0.13](https://github.com/thi-ng/umbrella/compare/@thi.ng/memoize@2.0.12...@thi.ng/memoize@2.0.13) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/memoize + + + + + ## [2.0.12](https://github.com/thi-ng/umbrella/compare/@thi.ng/memoize@2.0.11...@thi.ng/memoize@2.0.12) (2020-06-01) **Note:** Version bump only for package @thi.ng/memoize diff --git a/packages/memoize/package.json b/packages/memoize/package.json index 571960209d..b23b67f1b1 100644 --- a/packages/memoize/package.json +++ b/packages/memoize/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/memoize", - "version": "2.0.12", + "version": "2.0.13", "description": "Function memoization with configurable caching", "module": "./index.js", "main": "./lib/index.js", @@ -43,7 +43,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", + "@thi.ng/api": "^6.11.1", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/memoize/src/memoize.ts b/packages/memoize/src/memoize.ts index 533e22913f..f132933826 100644 --- a/packages/memoize/src/memoize.ts +++ b/packages/memoize/src/memoize.ts @@ -1,10 +1,4 @@ -import type { - Fn, - Fn2, - Fn3, - Fn4, - FnAny -} from "@thi.ng/api"; +import type { Fn, Fn2, Fn3, Fn4, FnAny } from "@thi.ng/api"; import type { MapLike } from "./api"; /** diff --git a/packages/memoize/src/memoizej.ts b/packages/memoize/src/memoizej.ts index 33f86068b6..42cf711325 100644 --- a/packages/memoize/src/memoizej.ts +++ b/packages/memoize/src/memoizej.ts @@ -1,11 +1,4 @@ -import type { - Fn, - Fn2, - Fn3, - Fn4, - FnAny, - IObjectOf -} from "@thi.ng/api"; +import type { Fn, Fn2, Fn3, Fn4, FnAny, IObjectOf } from "@thi.ng/api"; /** * Function memoization for arbitrary argument counts. Returns augmented diff --git a/packages/memoize/test/index.ts b/packages/memoize/test/index.ts index f1b115a902..de6097becb 100644 --- a/packages/memoize/test/index.ts +++ b/packages/memoize/test/index.ts @@ -26,14 +26,18 @@ describe("memoize", () => { assert.equal(f([3, 4]), 7); assert.equal(f([1, 2]), 3); assert.equal(f([5, 6]), 11); - assert.deepEqual(calls, [[1, 2], [3, 4], [5, 6]]); + assert.deepEqual(calls, [ + [1, 2], + [3, 4], + [5, 6], + ]); }); it("memoize1 (lru)", () => { const calls: number[][] = []; const cache = new LRUCache(null, { maxlen: 3, - map: () => new EquivMap() + map: () => new EquivMap(), }); const f = m.memoize1( (x) => (calls.push(x), x[0] + x[1]), @@ -46,7 +50,20 @@ describe("memoize", () => { assert.equal(f([5, 6]), 11); assert.equal(f([7, 8]), 15); assert.equal(f([3, 4]), 7); // <-- recompute - assert.deepEqual(calls, [[1, 2], [3, 4], [5, 6], [7, 8], [3, 4]]); - assert.deepEqual([...cache.keys()], [[5, 6], [7, 8], [3, 4]]); + assert.deepEqual(calls, [ + [1, 2], + [3, 4], + [5, 6], + [7, 8], + [3, 4], + ]); + assert.deepEqual( + [...cache.keys()], + [ + [5, 6], + [7, 8], + [3, 4], + ] + ); }); }); diff --git a/packages/mime/CHANGELOG.md b/packages/mime/CHANGELOG.md index 2179a306b6..3d6fdf55f6 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.13](https://github.com/thi-ng/umbrella/compare/@thi.ng/mime@0.1.12...@thi.ng/mime@0.1.13) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/mime + + + + + ## [0.1.12](https://github.com/thi-ng/umbrella/compare/@thi.ng/mime@0.1.11...@thi.ng/mime@0.1.12) (2020-06-01) **Note:** Version bump only for package @thi.ng/mime diff --git a/packages/mime/package.json b/packages/mime/package.json index 47ecee5f0c..073ff8901d 100644 --- a/packages/mime/package.json +++ b/packages/mime/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/mime", - "version": "0.1.12", + "version": "0.1.13", "description": "350+ file extension to MIME type mappings, based on mime-db", "module": "./index.js", "main": "./lib/index.js", @@ -43,7 +43,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", + "@thi.ng/api": "^6.11.1", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/mime/src/index.ts b/packages/mime/src/index.ts index e1fc2c7738..f990666516 100644 --- a/packages/mime/src/index.ts +++ b/packages/mime/src/index.ts @@ -160,7 +160,7 @@ export const MIME_TYPES = ((defs: any) => { "xv+xml": "mxml,xhvml,xvml,xvm", yang: "yang", "yin+xml": "yin", - zip: "zip" + zip: "zip", }, audio: { "3gpp": "*3gpp", @@ -177,14 +177,14 @@ export const MIME_TYPES = ((defs: any) => { wav: "wav", wave: "*wav", webm: "weba", - xm: "xm" + xm: "xm", }, font: { collection: "ttc", otf: "otf", ttf: "ttf", woff: "woff", - woff2: "woff2" + woff2: "woff2", }, image: { aces: "exr", @@ -215,7 +215,7 @@ export const MIME_TYPES = ((defs: any) => { tiff: "tif,tiff", "tiff-fx": "tfx", webp: "webp", - wmf: "wmf" + wmf: "wmf", }, message: { "disposition-notification": "disposition-notification", @@ -223,7 +223,7 @@ export const MIME_TYPES = ((defs: any) => { "global-delivery-status": "u8dsn", "global-disposition-notification": "u8mdn", "global-headers": "u8hdr", - rfc822: "eml,mime" + rfc822: "eml,mime", }, model: { "3mf": "3mf", @@ -239,7 +239,7 @@ export const MIME_TYPES = ((defs: any) => { "x3d+fastinfoset": "x3db", "x3d+vrml": "*x3dv,x3dvz", "x3d+xml": "x3d,x3dz", - "x3d-vrml": "x3dv" + "x3d-vrml": "x3dv", }, text: { "cache-manifest": "appcache,manifest", @@ -269,7 +269,7 @@ export const MIME_TYPES = ((defs: any) => { vcard: "vcard", vtt: "vtt", xml: "*xml", - yaml: "yaml,yml" + yaml: "yaml,yml", }, video: { "3gpp": "3gp,3gpp", @@ -286,8 +286,8 @@ export const MIME_TYPES = ((defs: any) => { ogg: "ogv", quicktime: "qt,mov", webm: "webm", - "x-msvideo": "avi" - } + "x-msvideo": "avi", + }, }); /** diff --git a/packages/morton/CHANGELOG.md b/packages/morton/CHANGELOG.md index 7f31b60eff..b1b8f41844 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.15](https://github.com/thi-ng/umbrella/compare/@thi.ng/morton@2.0.14...@thi.ng/morton@2.0.15) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/morton + + + + + ## [2.0.14](https://github.com/thi-ng/umbrella/compare/@thi.ng/morton@2.0.13...@thi.ng/morton@2.0.14) (2020-06-01) **Note:** Version bump only for package @thi.ng/morton diff --git a/packages/morton/package.json b/packages/morton/package.json index 56b9314ecf..4394fc9593 100644 --- a/packages/morton/package.json +++ b/packages/morton/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/morton", - "version": "2.0.14", + "version": "2.0.15", "description": "Z-order curve / Morton encoding, decoding & range extraction for arbitrary dimensions", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/binary": "^2.0.7", - "@thi.ng/math": "^1.7.10", + "@thi.ng/api": "^6.11.1", + "@thi.ng/binary": "^2.0.8", + "@thi.ng/math": "^1.7.11", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/morton/src/mux.ts b/packages/morton/src/mux.ts index bed61b72cf..a399fb0b67 100644 --- a/packages/morton/src/mux.ts +++ b/packages/morton/src/mux.ts @@ -1,14 +1,9 @@ -import { - decode10, - decode16, - encode10, - encode16 -} from "./raw"; +import { decode10, decode16, encode10, encode16 } from "./raw"; import { decodeScaled10, decodeScaled16, encodeScaled10, - encodeScaled16 + encodeScaled16, } from "./scaled"; const MIN = [0, 0, 0]; @@ -25,7 +20,7 @@ export const demux2 = (n: number) => [decode16(n), decode16(n >>> 1)]; export const demux3 = (n: number) => [ decode10(n), decode10(n >>> 1), - decode10(n >>> 2) + decode10(n >>> 2), ]; export const muxScaled2 = ( @@ -74,7 +69,7 @@ export const demuxScaled3 = ( ) => [ decodeScaled10(n, minx, maxx), decodeScaled10(n >>> 1, miny, maxy), - decodeScaled10(n >>> 2, minz, maxz) + decodeScaled10(n >>> 2, minz, maxz), ]; export const muxScaled2v = ( diff --git a/packages/morton/src/scaled.ts b/packages/morton/src/scaled.ts index 9099bace91..d547bf04fb 100644 --- a/packages/morton/src/scaled.ts +++ b/packages/morton/src/scaled.ts @@ -7,7 +7,7 @@ import { decode5, encode10, encode16, - encode5 + encode5, } from "./raw"; const prescale = (x: number, min: number, max: number, bits: number) => { diff --git a/packages/morton/src/zcurve.ts b/packages/morton/src/zcurve.ts index 3d0e52d552..40031aa021 100644 --- a/packages/morton/src/zcurve.ts +++ b/packages/morton/src/zcurve.ts @@ -3,7 +3,7 @@ import { NumericArray, Range1_32, Range1_64, - RangeValueMap + RangeValueMap, } from "@thi.ng/api"; import { MASKS } from "@thi.ng/binary"; @@ -181,7 +181,7 @@ export class ZCurve { * * @remarks * Partially based on: - * {@link https://github.com/statgen/LDServer/blob/master/core/src/Morton.cpp#L38} + * {@link https://github.com/statgen/LDServer/blob/develop/core/src/Morton.cpp#L38} * * @param zcurr * @param zmin diff --git a/packages/morton/test/zcurve.ts b/packages/morton/test/zcurve.ts index dbee94fe21..cb287dee50 100644 --- a/packages/morton/test/zcurve.ts +++ b/packages/morton/test/zcurve.ts @@ -26,7 +26,7 @@ describe("ZCurve", () => { [2, 5], [3, 5], [2, 6], - [3, 6] + [3, 6], ] ); }); @@ -49,7 +49,7 @@ describe("ZCurve", () => { [3, 6], [4, 4], [4, 5], - [4, 6] + [4, 6], ] ); }); @@ -78,7 +78,7 @@ describe("ZCurve", () => { 196n, 198n, 208n, - 212n + 212n, ] ); assert.deepEqual( @@ -103,7 +103,7 @@ describe("ZCurve", () => { [4, 4, 1], [4, 5, 1], [4, 6, 0], - [4, 6, 1] + [4, 6, 1], ] ); }); diff --git a/packages/parse/CHANGELOG.md b/packages/parse/CHANGELOG.md index aea60a6eec..330a3efee9 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.5.7](https://github.com/thi-ng/umbrella/compare/@thi.ng/parse@0.5.6...@thi.ng/parse@0.5.7) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/parse + + + + + ## [0.5.6](https://github.com/thi-ng/umbrella/compare/@thi.ng/parse@0.5.5...@thi.ng/parse@0.5.6) (2020-06-01) **Note:** Version bump only for package @thi.ng/parse diff --git a/packages/parse/package.json b/packages/parse/package.json index 63df892136..28dfc43ca5 100644 --- a/packages/parse/package.json +++ b/packages/parse/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/parse", - "version": "0.5.6", + "version": "0.5.7", "description": "Purely functional parser combinators & AST generation for generic inputs", "module": "./index.js", "main": "./lib/index.js", @@ -43,11 +43,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/defmulti": "^1.2.16", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/defmulti": "^1.2.17", "@thi.ng/errors": "^1.2.14", - "@thi.ng/strings": "^1.8.9" + "@thi.ng/strings": "^1.8.10" }, "files": [ "*.js", diff --git a/packages/parse/test/tsconfig.json b/packages/parse/test/tsconfig.json index f6e63560dd..72b29d55ac 100644 --- a/packages/parse/test/tsconfig.json +++ b/packages/parse/test/tsconfig.json @@ -4,8 +4,5 @@ "outDir": "../build", "module": "commonjs" }, - "include": [ - "./**/*.ts", - "../src/**/*.ts" - ] + "include": ["./**/*.ts", "../src/**/*.ts"] } diff --git a/packages/paths/CHANGELOG.md b/packages/paths/CHANGELOG.md index 0155f15aaa..4edc0996e5 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.0.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/paths@4.0.7...@thi.ng/paths@4.0.8) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/paths + + + + + ## [4.0.7](https://github.com/thi-ng/umbrella/compare/@thi.ng/paths@4.0.6...@thi.ng/paths@4.0.7) (2020-05-16) diff --git a/packages/paths/package.json b/packages/paths/package.json index d3509f4773..93fc246423 100644 --- a/packages/paths/package.json +++ b/packages/paths/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/paths", - "version": "4.0.7", + "version": "4.0.8", "description": "Immutable, optimized and optionally typed path-based object property / array accessors with structural sharing", "module": "./index.js", "main": "./lib/index.js", @@ -43,7 +43,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/checks": "^2.7.0", + "@thi.ng/checks": "^2.7.1", "@thi.ng/errors": "^1.2.14", "tslib": "^1.12.0" }, diff --git a/packages/pixel/CHANGELOG.md b/packages/pixel/CHANGELOG.md index ec47503044..14796cf500 100644 --- a/packages/pixel/CHANGELOG.md +++ b/packages/pixel/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/pixel@0.3.1...@thi.ng/pixel@0.3.2) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/pixel + + + + + ## [0.3.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/pixel@0.3.0...@thi.ng/pixel@0.3.1) (2020-06-01) **Note:** Version bump only for package @thi.ng/pixel diff --git a/packages/pixel/package.json b/packages/pixel/package.json index 89473354b1..e6d724e43f 100644 --- a/packages/pixel/package.json +++ b/packages/pixel/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/pixel", - "version": "0.3.1", + "version": "0.3.2", "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", @@ -43,10 +43,10 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/math": "^1.7.10", - "@thi.ng/porter-duff": "^0.1.20", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/math": "^1.7.11", + "@thi.ng/porter-duff": "^0.1.21", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/pixel/test/index.ts b/packages/pixel/test/index.ts index 3034b1a7e9..8e94758f0a 100644 --- a/packages/pixel/test/index.ts +++ b/packages/pixel/test/index.ts @@ -11,7 +11,7 @@ import { GRAY8, PackedFormat, RGB565, - RGB888 + RGB888, } from "../src/index"; // import { equiv } from "@thi.ng/equiv"; @@ -47,7 +47,7 @@ describe("pixel", () => { 0xffff0000, 0xffff1d1d, 0xffff9696, - 0xffff4c4c + 0xffff4c4c, ]); }); @@ -90,7 +90,7 @@ describe("pixel", () => { 0xff000000, 0xffff0000, 0xff00ff00, - 0xff0000ff + 0xff0000ff, ]); }); diff --git a/packages/pointfree-lang/CHANGELOG.md b/packages/pointfree-lang/CHANGELOG.md index 2c5eed8bfa..07009ea568 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.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/pointfree-lang@1.4.4...@thi.ng/pointfree-lang@1.4.5) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/pointfree-lang + + + + + ## [1.4.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/pointfree-lang@1.4.3...@thi.ng/pointfree-lang@1.4.4) (2020-06-01) **Note:** Version bump only for package @thi.ng/pointfree-lang diff --git a/packages/pointfree-lang/package.json b/packages/pointfree-lang/package.json index 0c518c264e..25388f5688 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.4", + "version": "1.4.5", "description": "Forth style syntax layer/compiler & CLI for the @thi.ng/pointfree DSL", "module": "./index.js", "main": "./lib/index.js", @@ -47,10 +47,10 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/bench": "^2.0.12", + "@thi.ng/api": "^6.11.1", + "@thi.ng/bench": "^2.0.13", "@thi.ng/errors": "^1.2.14", - "@thi.ng/pointfree": "^2.0.5", + "@thi.ng/pointfree": "^2.0.6", "commander": "^5.1.0", "tslib": "^1.12.0" }, diff --git a/packages/pointfree-lang/test/readme.ts b/packages/pointfree-lang/test/readme.ts index 5ee44854a7..13ad22f26d 100644 --- a/packages/pointfree-lang/test/readme.ts +++ b/packages/pointfree-lang/test/readme.ts @@ -44,7 +44,7 @@ const drawLine = (ctx: StackContext) => { const env = pf.ffi( {}, { - "gfx.line": drawLine + "gfx.line": drawLine, } ); diff --git a/packages/pointfree/CHANGELOG.md b/packages/pointfree/CHANGELOG.md index 1f49f71f2a..45704c6667 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.6](https://github.com/thi-ng/umbrella/compare/@thi.ng/pointfree@2.0.5...@thi.ng/pointfree@2.0.6) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/pointfree + + + + + ## [2.0.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/pointfree@2.0.4...@thi.ng/pointfree@2.0.5) (2020-06-01) **Note:** Version bump only for package @thi.ng/pointfree diff --git a/packages/pointfree/package.json b/packages/pointfree/package.json index 718af06344..887da3b55e 100644 --- a/packages/pointfree/package.json +++ b/packages/pointfree/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/pointfree", - "version": "2.0.5", + "version": "2.0.6", "description": "Pointfree functional composition / Forth style stack execution engine", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/compose": "^1.4.8", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/compose": "^1.4.9", "@thi.ng/equiv": "^1.0.23", "@thi.ng/errors": "^1.2.14", "tslib": "^1.12.0" diff --git a/packages/pointfree/src/context.ts b/packages/pointfree/src/context.ts index ef6f5849e1..8b7d29e953 100644 --- a/packages/pointfree/src/context.ts +++ b/packages/pointfree/src/context.ts @@ -10,5 +10,5 @@ import type { Stack, StackContext, StackEnv } from "./api"; export const ctx = (stack: Stack = [], env: StackEnv = {}): StackContext => [ stack, [], - env + env, ]; diff --git a/packages/poisson/CHANGELOG.md b/packages/poisson/CHANGELOG.md index 6a221fe4e5..d028bce4a7 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.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/poisson@1.1.2...@thi.ng/poisson@1.1.3) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/poisson + + + + + ## [1.1.2](https://github.com/thi-ng/umbrella/compare/@thi.ng/poisson@1.1.1...@thi.ng/poisson@1.1.2) (2020-06-01) **Note:** Version bump only for package @thi.ng/poisson diff --git a/packages/poisson/package.json b/packages/poisson/package.json index 182c31ba5a..8469bb5b22 100644 --- a/packages/poisson/package.json +++ b/packages/poisson/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/poisson", - "version": "1.1.2", + "version": "1.1.3", "description": "nD Stratified grid and Poisson-disc sampling w/ support for spatial density functions and custom PRNGs", "module": "./index.js", "main": "./lib/index.js", @@ -43,11 +43,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/checks": "^2.7.0", - "@thi.ng/geom-api": "^1.0.20", - "@thi.ng/random": "^1.4.10", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/geom-api": "^1.0.21", + "@thi.ng/random": "^1.4.11", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/porter-duff/CHANGELOG.md b/packages/porter-duff/CHANGELOG.md index f34d6fb2bb..54c3dafdd3 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.21](https://github.com/thi-ng/umbrella/compare/@thi.ng/porter-duff@0.1.20...@thi.ng/porter-duff@0.1.21) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/porter-duff + + + + + ## [0.1.20](https://github.com/thi-ng/umbrella/compare/@thi.ng/porter-duff@0.1.19...@thi.ng/porter-duff@0.1.20) (2020-06-01) **Note:** Version bump only for package @thi.ng/porter-duff diff --git a/packages/porter-duff/package.json b/packages/porter-duff/package.json index c02b49d394..ad0760aee4 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.20", + "version": "0.1.21", "description": "Porter-Duff operators for packed ints & float-array alpha compositing", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/math": "^1.7.10", + "@thi.ng/api": "^6.11.1", + "@thi.ng/math": "^1.7.11", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/porter-duff/src/porter-duff.ts b/packages/porter-duff/src/porter-duff.ts index 02b42be547..af47a8f86b 100644 --- a/packages/porter-duff/src/porter-duff.ts +++ b/packages/porter-duff/src/porter-duff.ts @@ -3,7 +3,7 @@ import { postmultiply, postmultiplyInt, premultiply, - premultiplyInt + premultiplyInt, } from "./premultiply"; import { setC4, setN4 } from "./utils"; import type { Fn2, Fn3 } from "@thi.ng/api"; diff --git a/packages/ramp/CHANGELOG.md b/packages/ramp/CHANGELOG.md index ca87d5017a..01d9e76647 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.21](https://github.com/thi-ng/umbrella/compare/@thi.ng/ramp@0.1.20...@thi.ng/ramp@0.1.21) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/ramp + + + + + ## [0.1.20](https://github.com/thi-ng/umbrella/compare/@thi.ng/ramp@0.1.19...@thi.ng/ramp@0.1.20) (2020-06-01) **Note:** Version bump only for package @thi.ng/ramp diff --git a/packages/ramp/package.json b/packages/ramp/package.json index cd4853dc7e..871b8f10a1 100644 --- a/packages/ramp/package.json +++ b/packages/ramp/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/ramp", - "version": "0.1.20", + "version": "0.1.21", "description": "Parametric interpolated 1D lookup tables for remapping values", "module": "./index.js", "main": "./lib/index.js", @@ -43,12 +43,12 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/arrays": "^0.6.8", - "@thi.ng/compare": "^1.3.7", - "@thi.ng/math": "^1.7.10", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/api": "^6.11.1", + "@thi.ng/arrays": "^0.6.9", + "@thi.ng/compare": "^1.3.8", + "@thi.ng/math": "^1.7.11", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/ramp/src/aramp.ts b/packages/ramp/src/aramp.ts index b2960c52c3..6619f049c0 100644 --- a/packages/ramp/src/aramp.ts +++ b/packages/ramp/src/aramp.ts @@ -10,7 +10,7 @@ export abstract class ARamp implements IRamp { constructor( stops: Vec[] = [ [0, 0], - [1, 1] + [1, 1], ] ) { this.stops = stops; diff --git a/packages/ramp/src/hermite.ts b/packages/ramp/src/hermite.ts index 4f1fd07747..50bbecfa78 100644 --- a/packages/ramp/src/hermite.ts +++ b/packages/ramp/src/hermite.ts @@ -1,9 +1,4 @@ -import { - mix, - mixCubicHermite, - norm, - tangentCardinal -} from "@thi.ng/math"; +import { mix, mixCubicHermite, norm, tangentCardinal } from "@thi.ng/math"; import { comp, extendSides, @@ -11,7 +6,7 @@ import { map, mapcat, normRange, - partition + partition, } from "@thi.ng/transducers"; import { ARamp } from "./aramp"; import type { Vec } from "@thi.ng/vectors"; @@ -48,7 +43,7 @@ export class HermiteRamp extends ARamp { return map( (t) => [ mix(bx, cx, t), - mixCubicHermite(by, t1, cy, t2, t) + mixCubicHermite(by, t1, cy, t2, t), ], normRange(res, false) ); diff --git a/packages/random/CHANGELOG.md b/packages/random/CHANGELOG.md index 7d45a641ff..75c4fa7de2 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. +## [1.4.11](https://github.com/thi-ng/umbrella/compare/@thi.ng/random@1.4.10...@thi.ng/random@1.4.11) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/random + + + + + ## [1.4.10](https://github.com/thi-ng/umbrella/compare/@thi.ng/random@1.4.9...@thi.ng/random@1.4.10) (2020-06-01) **Note:** Version bump only for package @thi.ng/random diff --git a/packages/random/package.json b/packages/random/package.json index 8ec1704d49..ffad8901df 100644 --- a/packages/random/package.json +++ b/packages/random/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/random", - "version": "1.4.10", + "version": "1.4.11", "description": "Pseudo-random number generators w/ unified API", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/random/src/constants.ts b/packages/random/src/constants.ts index 541b7d145e..f09b5dfc22 100644 --- a/packages/random/src/constants.ts +++ b/packages/random/src/constants.ts @@ -4,7 +4,7 @@ export const DEFAULT_SEED_128 = [ 0xdecafbad, 0x2fa9d75b, 0xe41f67e3, - 0x5c83ec1a + 0x5c83ec1a, ]; export const DEFAULT_SEED_160 = [...DEFAULT_SEED_128, 0xf69a5c71]; diff --git a/packages/random/src/smush32.ts b/packages/random/src/smush32.ts index c863813fec..1a66974a89 100644 --- a/packages/random/src/smush32.ts +++ b/packages/random/src/smush32.ts @@ -3,7 +3,7 @@ import { DEFAULT_SEED_32 } from "./constants"; import type { IBuffered, ICopy } from "@thi.ng/api"; import type { ISeedable } from "./api"; -// https://github.com/thi-ng/ct-head/blob/master/random.h +// https://github.com/thi-ng/ct-head/blob/develop/random.h // https://gist.github.com/voidqk/d112165a26b45244a65298933c0349a4 export class Smush32 extends ARandom diff --git a/packages/random/src/xsadd.ts b/packages/random/src/xsadd.ts index 4145e6cf3a..67063d4d8e 100644 --- a/packages/random/src/xsadd.ts +++ b/packages/random/src/xsadd.ts @@ -3,7 +3,7 @@ import { DEFAULT_SEED_32 } from "./constants"; import type { IBuffered, ICopy } from "@thi.ng/api"; import type { ISeedable } from "./api"; -// https://github.com/MersenneTwister-Lab/XSadd/blob/master/xsadd.h +// https://github.com/MersenneTwister-Lab/XSadd/blob/develop/xsadd.h export class XsAdd extends ARandom implements IBuffered, ICopy, ISeedable { diff --git a/packages/range-coder/CHANGELOG.md b/packages/range-coder/CHANGELOG.md index ec16f58114..0533277e87 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.47](https://github.com/thi-ng/umbrella/compare/@thi.ng/range-coder@1.0.46...@thi.ng/range-coder@1.0.47) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/range-coder + + + + + ## [1.0.46](https://github.com/thi-ng/umbrella/compare/@thi.ng/range-coder@1.0.45...@thi.ng/range-coder@1.0.46) (2020-06-01) **Note:** Version bump only for package @thi.ng/range-coder diff --git a/packages/range-coder/package.json b/packages/range-coder/package.json index 6cd5becea1..c86deb2e67 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.46", + "version": "1.0.47", "description": "Binary data range encoder / decoder", "module": "./index.js", "main": "./lib/index.js", @@ -34,7 +34,7 @@ "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@microsoft/api-extractor": "^7.8.0", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/transducers": "^7.1.0", "@types/mocha": "^7.0.2", "@types/node": "^14.0.1", "mocha": "^7.1.2", @@ -44,7 +44,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/bitstream": "^1.1.17", + "@thi.ng/bitstream": "^1.1.18", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/range-coder/test/index.ts b/packages/range-coder/test/index.ts index 6e50c8017f..7bd62ef26c 100644 --- a/packages/range-coder/test/index.ts +++ b/packages/range-coder/test/index.ts @@ -23,5 +23,5 @@ describe("range-coder", () => { const randomArray = (n: number, len: number) => new Uint8Array([ ...repeatedly(() => ~~(Math.random() * 256), n), - ...repeat(0, len - n) + ...repeat(0, len - n), ]); diff --git a/packages/resolve-map/CHANGELOG.md b/packages/resolve-map/CHANGELOG.md index 289276af8f..faf4433ecc 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.1.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/resolve-map@4.1.25...@thi.ng/resolve-map@4.1.26) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/resolve-map + + + + + ## [4.1.25](https://github.com/thi-ng/umbrella/compare/@thi.ng/resolve-map@4.1.24...@thi.ng/resolve-map@4.1.25) (2020-06-01) **Note:** Version bump only for package @thi.ng/resolve-map diff --git a/packages/resolve-map/package.json b/packages/resolve-map/package.json index 23a73f2cf0..d2f9f7d280 100644 --- a/packages/resolve-map/package.json +++ b/packages/resolve-map/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/resolve-map", - "version": "4.1.25", + "version": "4.1.26", "description": "DAG resolution of vanilla objects & arrays with internally linked values", "module": "./index.js", "main": "./lib/index.js", @@ -42,10 +42,10 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", "@thi.ng/errors": "^1.2.14", - "@thi.ng/paths": "^4.0.7", + "@thi.ng/paths": "^4.0.8", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/resolve-map/src/index.ts b/packages/resolve-map/src/index.ts index 74f6007be9..958d7cce2c 100644 --- a/packages/resolve-map/src/index.ts +++ b/packages/resolve-map/src/index.ts @@ -1,10 +1,5 @@ import { NumOrString, SEMAPHORE } from "@thi.ng/api"; -import { - isArray, - isFunction, - isPlainObject, - isString -} from "@thi.ng/checks"; +import { isArray, isFunction, isPlainObject, isString } from "@thi.ng/checks"; import { illegalArgs } from "@thi.ng/errors"; import { exists, getInUnsafe, mutInUnsafe } from "@thi.ng/paths"; diff --git a/packages/resolve-map/test/index.ts b/packages/resolve-map/test/index.ts index 85d0dddda0..2e6befc3a9 100644 --- a/packages/resolve-map/test/index.ts +++ b/packages/resolve-map/test/index.ts @@ -11,7 +11,7 @@ describe("resolve-map", () => { assert.deepEqual(resolve({ a: "@c", b: "@a", c: 1 }), { a: 1, b: 1, - c: 1 + c: 1, }); }); @@ -19,7 +19,7 @@ describe("resolve-map", () => { assert.deepEqual(resolve({ a: "@c/1", b: "@a", c: [1, 2] }), { a: 2, b: 2, - c: [1, 2] + c: [1, 2], }); }); @@ -28,7 +28,7 @@ describe("resolve-map", () => { resolve({ a1: { b: 1, c: "@b" }, a2: { b: 2, c: "@b" }, - a3: { b: 3, c: "@/a1/b" } + a3: { b: 3, c: "@/a1/b" }, }), { a1: { b: 1, c: 1 }, a2: { b: 2, c: 2 }, a3: { b: 3, c: 1 } } ); @@ -38,7 +38,7 @@ describe("resolve-map", () => { assert.deepEqual( resolve({ a: { b: { c: "@../c/d", d: "@c", e: "@/c/d" }, c: { d: 1 } }, - c: { d: 10 } + c: { d: 10 }, }), { a: { b: { c: 1, d: 1, e: 10 }, c: { d: 1 } }, c: { d: 10 } } ); @@ -57,14 +57,14 @@ describe("resolve-map", () => { resolve({ a: (x: ResolveFn) => x("b/c") * 10, b: { c: "@d", d: "@/e" }, - e: () => 1 + e: () => 1, }), { a: 10, b: { c: 1, d: 1 }, e: 1 } ); const res = resolve({ a: (x: ResolveFn) => x("b/c")() * 10, b: { c: "@d", d: "@/e" }, - e: () => () => 1 + e: () => () => 1, }); assert.equal(res.a, 10); assert.strictEqual(res.b.c, res.e); @@ -78,7 +78,7 @@ describe("resolve-map", () => { resolve({ a: (x: ResolveFn) => x("b/c"), b: { c: "@d", d: "@/e" }, - e: () => (n++, 1) + e: () => (n++, 1), }), { a: 1, b: { c: 1, d: 1 }, e: 1 } ); @@ -90,7 +90,7 @@ describe("resolve-map", () => { resolve({ a: "@b/c/d", b: ($: ResolveFn) => ({ c: { d: { e: $("/x") } } }), - x: 1 + x: 1, }), { a: { e: 1 }, b: { c: { d: { e: 1 } } }, x: 1 } ); @@ -128,7 +128,7 @@ describe("resolve-map", () => { tx.push(), tx.range(10, 100, 5) ); - } + }, }; // prettier-ignore assert.deepEqual( @@ -149,7 +149,7 @@ describe("resolve-map", () => { it("destructures w/ local renames", () => { assert.deepEqual(resolve({ a: 1, b: ({ a: aa }: any) => aa }), { a: 1, - b: 1 + b: 1, }); }); @@ -165,7 +165,7 @@ describe("resolve-map", () => { resolve({ a: 1, b: 2, - c: new Function("{ a, b, }", "return a + b") + c: new Function("{ a, b, }", "return a + b"), }), { a: 1, b: 2, c: 3 }, "comma & whitespaces" @@ -174,7 +174,7 @@ describe("resolve-map", () => { resolve({ a: 1, b: 2, - c: new Function("{ a, b: bb, }", "return a + bb") + c: new Function("{ a, b: bb, }", "return a + bb"), }), { a: 1, b: 2, c: 3 }, "comma & whitespaces & rename" diff --git a/packages/rle-pack/CHANGELOG.md b/packages/rle-pack/CHANGELOG.md index a677ac684e..f42cc7d71d 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.18](https://github.com/thi-ng/umbrella/compare/@thi.ng/rle-pack@2.1.17...@thi.ng/rle-pack@2.1.18) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/rle-pack + + + + + # [2.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/rle-pack@2.0.6...@thi.ng/rle-pack@2.1.0) (2019-07-07) ### Features diff --git a/packages/rle-pack/package.json b/packages/rle-pack/package.json index 9cd91d856d..7b36f496c8 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.17", + "version": "2.1.18", "description": "Binary run-length encoding packer w/ flexible repeat bit widths", "module": "./index.js", "main": "./lib/index.js", @@ -44,7 +44,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/bitstream": "^1.1.17", + "@thi.ng/bitstream": "^1.1.18", "@thi.ng/errors": "^1.2.14", "tslib": "^1.12.0" }, diff --git a/packages/router/CHANGELOG.md b/packages/router/CHANGELOG.md index 2b37b4e06e..c889306280 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.23](https://github.com/thi-ng/umbrella/compare/@thi.ng/router@2.0.22...@thi.ng/router@2.0.23) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/router + + + + + ## [2.0.22](https://github.com/thi-ng/umbrella/compare/@thi.ng/router@2.0.21...@thi.ng/router@2.0.22) (2020-06-01) **Note:** Version bump only for package @thi.ng/router diff --git a/packages/router/package.json b/packages/router/package.json index 59f613339c..67e75eec47 100644 --- a/packages/router/package.json +++ b/packages/router/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/router", - "version": "2.0.22", + "version": "2.0.23", "description": "Generic router for browser & non-browser based applications", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", "@thi.ng/equiv": "^1.0.23", "@thi.ng/errors": "^1.2.14", "tslib": "^1.12.0" diff --git a/packages/router/src/basic.ts b/packages/router/src/basic.ts index 3dc4ec0ee7..7e383698fc 100644 --- a/packages/router/src/basic.ts +++ b/packages/router/src/basic.ts @@ -3,17 +3,12 @@ import { isString } from "@thi.ng/checks"; import { equiv } from "@thi.ng/equiv"; import { illegalArgs, illegalArity } from "@thi.ng/errors"; import { EVENT_ROUTE_CHANGED } from "./constants"; -import type { - Event, - INotify, - IObjectOf, - Listener -} from "@thi.ng/api"; +import type { Event, INotify, IObjectOf, Listener } from "@thi.ng/api"; import type { Route, RouteMatch, RouteParamValidator, - RouterConfig + RouterConfig, } from "./api"; @INotifyMixin @@ -27,7 +22,7 @@ export class BasicRouter implements INotify { ((route, _, params) => ({ id: route.id, title: route.title, - params + params, })); config.prefix = config.prefix === undefined ? "/" : config.prefix; config.separator = config.separator || "/"; diff --git a/packages/router/src/history.ts b/packages/router/src/history.ts index 9eaeb75234..ad498dff8e 100644 --- a/packages/router/src/history.ts +++ b/packages/router/src/history.ts @@ -28,7 +28,7 @@ export class HTMLRouter extends BasicRouter { this.route( this.format({ id: route.id, - title: route.title + title: route.title, }) ); } else { @@ -120,7 +120,7 @@ export class HTMLRouter extends BasicRouter { protected handleRouteFailure() { this.ignoreHashChange = true; location.hash = this.format({ - id: this.routeForID(this.config.defaultRouteID)!.id + id: this.routeForID(this.config.defaultRouteID)!.id, }); this.ignoreHashChange = false; return true; diff --git a/packages/rstream-csp/CHANGELOG.md b/packages/rstream-csp/CHANGELOG.md index 62353e1ca4..f6d1c0f173 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.25](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-csp@2.0.24...@thi.ng/rstream-csp@2.0.25) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/rstream-csp + + + + + ## [2.0.24](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-csp@2.0.23...@thi.ng/rstream-csp@2.0.24) (2020-06-01) **Note:** Version bump only for package @thi.ng/rstream-csp diff --git a/packages/rstream-csp/package.json b/packages/rstream-csp/package.json index e9b36eabef..d37d6908e6 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.24", + "version": "2.0.25", "description": "@thi.ng/csp bridge module for @thi.ng/rstream", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/csp": "^1.1.26", - "@thi.ng/rstream": "^4.3.5", + "@thi.ng/csp": "^1.1.27", + "@thi.ng/rstream": "^4.4.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/rstream-csp/test/index.ts b/packages/rstream-csp/test/index.ts index 637e9ba614..55531703f2 100644 --- a/packages/rstream-csp/test/index.ts +++ b/packages/rstream-csp/test/index.ts @@ -3,8 +3,7 @@ import * as rs from "@thi.ng/rstream"; import * as assert from "assert"; import { fromChannel } from "../src/index"; - -describe("fromChannel", function() { +describe("fromChannel", function () { it("receives all values", (done) => { let ch = csp.Channel.range(5); let src = fromChannel(ch); @@ -18,7 +17,7 @@ describe("fromChannel", function() { assert(ch.isClosed(), "channel not closed"); assert.equal(src.getState(), rs.State.DONE, "stream not done"); done(); - } + }, }); }); }); diff --git a/packages/rstream-dot/CHANGELOG.md b/packages/rstream-dot/CHANGELOG.md index 1136f9e6fa..2efa5c5472 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.32](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-dot@1.1.31...@thi.ng/rstream-dot@1.1.32) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/rstream-dot + + + + + ## [1.1.31](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-dot@1.1.30...@thi.ng/rstream-dot@1.1.31) (2020-06-01) **Note:** Version bump only for package @thi.ng/rstream-dot diff --git a/packages/rstream-dot/package.json b/packages/rstream-dot/package.json index 17999db19b..7ac5c3c036 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.31", + "version": "1.1.32", "description": "Graphviz DOT conversion of @thi.ng/rstream dataflow graph topologies", "module": "./index.js", "main": "./lib/index.js", @@ -43,7 +43,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/rstream": "^4.3.5", + "@thi.ng/rstream": "^4.4.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/rstream-dot/src/index.ts b/packages/rstream-dot/src/index.ts index fcb1719271..e4a9d4579e 100644 --- a/packages/rstream-dot/src/index.ts +++ b/packages/rstream-dot/src/index.ts @@ -2,14 +2,9 @@ import { ISubscribable, Stream, StreamMerge, - StreamSync + StreamSync, } from "@thi.ng/rstream"; -import type { - DotOpts, - Node, - NodeType, - WalkState -} from "./api"; +import type { DotOpts, Node, NodeType, WalkState } from "./api"; export * from "./api"; @@ -68,7 +63,7 @@ export const walk = ( body: opts.values && sub.deref ? JSON.stringify(sub.deref()) - : undefined + : undefined, }; state.subs.set(sub, desc); state.id++; @@ -98,20 +93,18 @@ export const toDot = (state: WalkState, opts?: Partial) => { noid: "gray", stream: "blue", streammerge: "red", - streamsync: "red" - } + streamsync: "red", + }, }, opts ); return [ "digraph g {", `rankdir=${opts.dir};`, - `node[fontname=${opts.font},fontsize=${ - opts.fontsize - },style=filled,fontcolor=${opts.text}];`, + `node[fontname=${opts.font},fontsize=${opts.fontsize},style=filled,fontcolor=${opts.text}];`, `edge[fontname=${opts.font},fontsize=${opts.fontsize}];`, ...[...state.subs.values()].map((n) => dotNode(n, opts)), ...state.rels.map((r) => dotEdge(r[0], r[1], opts)), - "}" + "}", ].join("\n"); }; diff --git a/packages/rstream-gestures/CHANGELOG.md b/packages/rstream-gestures/CHANGELOG.md index a7d545ad1c..cfa9cddf15 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. +## [2.0.24](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-gestures@2.0.23...@thi.ng/rstream-gestures@2.0.24) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/rstream-gestures + + + + + ## [2.0.23](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-gestures@2.0.22...@thi.ng/rstream-gestures@2.0.23) (2020-06-01) **Note:** Version bump only for package @thi.ng/rstream-gestures diff --git a/packages/rstream-gestures/package.json b/packages/rstream-gestures/package.json index a1d729567a..3c159b0ab7 100644 --- a/packages/rstream-gestures/package.json +++ b/packages/rstream-gestures/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/rstream-gestures", - "version": "2.0.23", + "version": "2.0.24", "description": "Unified mouse, mouse wheel & multi-touch event stream abstraction", "module": "./index.js", "main": "./lib/index.js", @@ -43,11 +43,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/math": "^1.7.10", - "@thi.ng/rstream": "^4.3.5", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/math": "^1.7.11", + "@thi.ng/rstream": "^4.4.0", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/rstream-gestures/src/gesture-stream.ts b/packages/rstream-gestures/src/gesture-stream.ts index f13abf2d12..bd66a03e7f 100644 --- a/packages/rstream-gestures/src/gesture-stream.ts +++ b/packages/rstream-gestures/src/gesture-stream.ts @@ -6,7 +6,7 @@ import { GestureEvent, GestureInfo, GestureStreamOpts, - GestureType + GestureType, } from "./api"; import type { IObjectOf } from "@thi.ng/api"; @@ -26,7 +26,7 @@ const startEvents = new Set([ "mousedown", "touchmove", "touchstart", - "mousemove" + "mousemove", ]); const endEvents = new Set(["mouseup", "touchend", "touchcancel"]); @@ -40,7 +40,7 @@ const eventGestureTypeMap: IObjectOf = { touchcancel: GestureType.END, mousedown: GestureType.START, mouseup: GestureType.END, - wheel: GestureType.ZOOM + wheel: GestureType.ZOOM, }; /** @@ -88,7 +88,7 @@ export const gestureStream = ( preventContextMenu: true, local: true, scale: false, - ..._opts + ..._opts, }; const dpr = window.devicePixelRatio || 1; const active: GestureInfo[] = []; @@ -102,7 +102,7 @@ export const gestureStream = ( "touchend", "touchcancel", "touchmove", - "mouseup" + "mouseup", ]; !isBody && tempEvents.push("mousemove"); @@ -155,7 +155,7 @@ export const gestureStream = ( touch.pos = pos; touch.delta = [ pos[0] - touch.start![0], - pos[1] - touch.start![1] + pos[1] - touch.start![1], ]; if (isTouch) { touch.force = (t).force; @@ -202,9 +202,9 @@ export const gestureStream = ( active, zoom, zoomDelta, - isTouch + isTouch, }; - }) + }), }); return stream; diff --git a/packages/rstream-graph/CHANGELOG.md b/packages/rstream-graph/CHANGELOG.md index 752bca248c..fc1ea0c0d8 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.25](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-graph@3.2.24...@thi.ng/rstream-graph@3.2.25) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/rstream-graph + + + + + ## [3.2.24](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-graph@3.2.23...@thi.ng/rstream-graph@3.2.24) (2020-06-01) **Note:** Version bump only for package @thi.ng/rstream-graph diff --git a/packages/rstream-graph/package.json b/packages/rstream-graph/package.json index 09978fb6f3..0e133dd747 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.24", + "version": "3.2.25", "description": "Declarative dataflow graph construction for @thi.ng/rstream", "module": "./index.js", "main": "./lib/index.js", @@ -43,13 +43,13 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", "@thi.ng/errors": "^1.2.14", - "@thi.ng/paths": "^4.0.7", - "@thi.ng/resolve-map": "^4.1.25", - "@thi.ng/rstream": "^4.3.5", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/paths": "^4.0.8", + "@thi.ng/resolve-map": "^4.1.26", + "@thi.ng/rstream": "^4.4.0", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/rstream-log-file/CHANGELOG.md b/packages/rstream-log-file/CHANGELOG.md index fc1f533bdc..eb3c05abf3 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.47](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-log-file@0.1.46...@thi.ng/rstream-log-file@0.1.47) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/rstream-log-file + + + + + ## [0.1.46](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-log-file@0.1.45...@thi.ng/rstream-log-file@0.1.46) (2020-06-01) **Note:** Version bump only for package @thi.ng/rstream-log-file diff --git a/packages/rstream-log-file/package.json b/packages/rstream-log-file/package.json index 1ad75924aa..74262f71c2 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.46", + "version": "0.1.47", "description": "File output handler for structured, multilevel & hierarchical loggers based on @thi.ng/rstream", "module": "./index.js", "main": "./lib/index.js", @@ -43,7 +43,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/rstream": "^4.3.5", + "@thi.ng/rstream": "^4.4.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/rstream-log-file/src/index.ts b/packages/rstream-log-file/src/index.ts index fe55762266..91f127aac9 100644 --- a/packages/rstream-log-file/src/index.ts +++ b/packages/rstream-log-file/src/index.ts @@ -8,5 +8,5 @@ export const writeFile = (path: string): ISubscriber => ({ process.stderr.write(e.message); } }); - } + }, }); diff --git a/packages/rstream-log/CHANGELOG.md b/packages/rstream-log/CHANGELOG.md index b7a8af9b50..18994c3e0b 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.32](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-log@3.1.31...@thi.ng/rstream-log@3.1.32) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/rstream-log + + + + + ## [3.1.31](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-log@3.1.30...@thi.ng/rstream-log@3.1.31) (2020-06-01) **Note:** Version bump only for package @thi.ng/rstream-log diff --git a/packages/rstream-log/package.json b/packages/rstream-log/package.json index 592986ed44..4838ff573f 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.31", + "version": "3.1.32", "description": "Structured, multilevel & hierarchical loggers based on @thi.ng/rstream", "module": "./index.js", "main": "./lib/index.js", @@ -43,11 +43,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", "@thi.ng/errors": "^1.2.14", - "@thi.ng/rstream": "^4.3.5", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/rstream": "^4.4.0", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/rstream-log/src/logger.ts b/packages/rstream-log/src/logger.ts index dc87f44859..29b58d998e 100644 --- a/packages/rstream-log/src/logger.ts +++ b/packages/rstream-log/src/logger.ts @@ -1,11 +1,6 @@ import { LogLevel } from "@thi.ng/api"; import { illegalArity } from "@thi.ng/errors"; -import { - CloseMode, - ISubscribable, - nextID, - StreamMerge -} from "@thi.ng/rstream"; +import { CloseMode, ISubscribable, nextID, StreamMerge } from "@thi.ng/rstream"; import type { ILogger, LogEntry } from "./api"; export class Logger extends StreamMerge implements ILogger { diff --git a/packages/rstream-log/src/xform/format.ts b/packages/rstream-log/src/xform/format.ts index 8710c58e3a..39be112c92 100644 --- a/packages/rstream-log/src/xform/format.ts +++ b/packages/rstream-log/src/xform/format.ts @@ -1,11 +1,6 @@ import { LogLevel } from "@thi.ng/api"; import { map, Transducer } from "@thi.ng/transducers"; -import type { - BodyFormat, - DateFormat, - LogEntry, - LogEntryObj -} from "../api"; +import type { BodyFormat, DateFormat, LogEntry, LogEntryObj } from "../api"; export const isoDate = (dt: number) => new Date(dt).toISOString(); @@ -61,7 +56,7 @@ export const formatJSON = ( id, level: LogLevel[level], time: dtfmt!(time), - body + body, }) ); }; diff --git a/packages/rstream-log/test/index.ts b/packages/rstream-log/test/index.ts index 475d0b498f..37134e6597 100644 --- a/packages/rstream-log/test/index.ts +++ b/packages/rstream-log/test/index.ts @@ -8,7 +8,7 @@ const collect = (acc: string[]) => { next(x) { acc.push(x); }, - result: acc + result: acc, }; }; @@ -34,7 +34,7 @@ describe("rstream-log", () => { "[DEBUG] foo: 2 hello", "[INFO] foo: 3 hello", "[WARN] foo: 4 hello", - "[SEVERE] foo: 5 hello" + "[SEVERE] foo: 5 hello", ]); sub.unsubscribe(); assert.equal(logger.getState(), State.ACTIVE); diff --git a/packages/rstream-query/CHANGELOG.md b/packages/rstream-query/CHANGELOG.md index a8c1807c97..09521d9c7f 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.32](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-query@1.1.31...@thi.ng/rstream-query@1.1.32) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/rstream-query + + + + + ## [1.1.31](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream-query@1.1.30...@thi.ng/rstream-query@1.1.31) (2020-06-01) **Note:** Version bump only for package @thi.ng/rstream-query diff --git a/packages/rstream-query/package.json b/packages/rstream-query/package.json index 9f54cb8465..06f53c7cfc 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.31", + "version": "1.1.32", "description": "@thi.ng/rstream based triple store & reactive query engine", "module": "./index.js", "main": "./lib/index.js", @@ -43,15 +43,15 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/associative": "^4.0.11", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/associative": "^4.1.0", + "@thi.ng/checks": "^2.7.1", "@thi.ng/equiv": "^1.0.23", "@thi.ng/errors": "^1.2.14", - "@thi.ng/math": "^1.7.10", - "@thi.ng/rstream": "^4.3.5", - "@thi.ng/rstream-dot": "^1.1.31", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/math": "^1.7.11", + "@thi.ng/rstream": "^4.4.0", + "@thi.ng/rstream-dot": "^1.1.32", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/rstream-query/src/store.ts b/packages/rstream-query/src/store.ts index 83cc173123..e066b470d2 100644 --- a/packages/rstream-query/src/store.ts +++ b/packages/rstream-query/src/store.ts @@ -9,14 +9,9 @@ import { nextID, Stream, Subscription, - sync + sync, } from "@thi.ng/rstream"; -import { - DotOpts, - IToDot, - toDot, - walk -} from "@thi.ng/rstream-dot"; +import { DotOpts, IToDot, toDot, walk } from "@thi.ng/rstream-dot"; import { assocObj, comp, @@ -24,7 +19,7 @@ import { map, mapIndexed, transduce, - Transducer + Transducer, } from "@thi.ng/transducers"; import { patternVars, resolvePathPattern } from "./pattern"; import { isQVar, qvarResolver } from "./qvar"; @@ -36,7 +31,7 @@ import { intersect3, joinSolutions, limitSolutions, - resultTriples + resultTriples, } from "./xforms"; import type { Edit, @@ -50,7 +45,7 @@ import type { Triple, TripleIds, Triples, - WhereQuerySpec + WhereQuerySpec, } from "./api"; export class TripleStore implements Iterable, IToDot { @@ -80,7 +75,7 @@ export class TripleStore implements Iterable, IToDot { this.indexSelections = { s: new Map(), p: new Map(), - o: new Map() + o: new Map(), }; this.streamS = new Stream({ id: "S", closeOut: CloseMode.NEVER }); this.streamP = new Stream({ id: "P", closeOut: CloseMode.NEVER }); @@ -231,7 +226,7 @@ export class TripleStore implements Iterable, IToDot { id, src, xform, - reset: true + reset: true, }); this.queries.set(key, >results); submit(this.indexS, qs, s); @@ -329,7 +324,7 @@ export class TripleStore implements Iterable, IToDot { xform: comp( map(({ a, b }) => join(a, b)), dedupe(equiv) - ) + ), }); } @@ -341,20 +336,20 @@ export class TripleStore implements Iterable, IToDot { const src = transduce( mapIndexed((i, q) => [ String(i), - q + q, ]), assocObj(), queries ); let xforms: Transducer[] = [ joinSolutions(Object.keys(src).length), - dedupe(equiv) + dedupe(equiv), ]; keepVars && xforms.push(filterSolutions(keepVars)); return sync({ id, src, - xform: >comp.apply(null, xforms) + xform: >comp.apply(null, xforms), }); } diff --git a/packages/rstream-query/src/xforms.ts b/packages/rstream-query/src/xforms.ts index a3d2e3a1d0..0c27074fc9 100644 --- a/packages/rstream-query/src/xforms.ts +++ b/packages/rstream-query/src/xforms.ts @@ -8,15 +8,9 @@ import { keySelector, map, Reducer, - Transducer + Transducer, } from "@thi.ng/transducers"; -import { - BindFn, - Edit, - Solutions, - Triple, - TripleIds -} from "./api"; +import { BindFn, Edit, Solutions, Triple, TripleIds } from "./api"; import { TripleStore } from "./store"; import type { IObjectOf } from "@thi.ng/api"; diff --git a/packages/rstream-query/test/example.ts b/packages/rstream-query/test/example.ts index 0e1dff487c..8b6e413fc5 100644 --- a/packages/rstream-query/test/example.ts +++ b/packages/rstream-query/test/example.ts @@ -9,7 +9,7 @@ const store = new q.TripleStore([ ["portland", "part-of", "usa"], ["oregon", "type", "state"], ["usa", "type", "country"], - ["uk", "type", "country"] + ["uk", "type", "country"], ]); // alternatively, convert an object into a sequence of triples @@ -46,19 +46,19 @@ store // then a city's "part-of" relationships (if any) ["?city", "partOf", "?country"], // the matched ?country must have type = "country" - ["?country", "type", "country"] - ] - } + ["?country", "type", "country"], + ], + }, ], // `bind` is an (optional) query post-processor and // allows injection of new variables into the result set // here we create a new var "answer" whose values are derived from // the other two query vars bind: { - answer: (res) => `${res.city} is located in ${res.country}` + answer: (res) => `${res.city} is located in ${res.country}`, }, // another post-processing step, only keeps "answer" var in results - select: ["answer"] + select: ["answer"], }) .subscribe(trace()); // Set { @@ -70,7 +70,7 @@ const addCity = (name: string, country: string) => store.into([ [name, "type", "city"], [name, "partOf", country], - [country, "type", "country"] + [country, "type", "country"], ]); addCity("berlin", "germany"); diff --git a/packages/rstream-query/test/index.ts b/packages/rstream-query/test/index.ts index 9ed6240563..0f01b1189b 100644 --- a/packages/rstream-query/test/index.ts +++ b/packages/rstream-query/test/index.ts @@ -8,7 +8,7 @@ describe("rstream-query", () => { ["c", "type", "baz"], // 2 ["a", "value", 0], // 3 ["b", "value", 1], // 4 - ["c", "friend", "a"] // 5 + ["c", "friend", "a"], // 5 ]; let store: TripleStore; @@ -87,7 +87,10 @@ describe("rstream-query", () => { .addParamQuery(["a", "?p", "?o"]) .subscribe({ next: (r) => res.push(r) }); assert.deepEqual(res, [ - new Set([{ p: "type", o: "foo" }, { p: "value", o: 0 }]) + new Set([ + { p: "type", o: "foo" }, + { p: "value", o: 0 }, + ]), ]); }); @@ -100,8 +103,8 @@ describe("rstream-query", () => { new Set([ { s: "a", o: "foo" }, { s: "b", o: "bar" }, - { s: "c", o: "baz" } - ]) + { s: "c", o: "baz" }, + ]), ]); }); @@ -153,8 +156,8 @@ describe("rstream-query", () => { { s: "c", p: "type", o: "baz" }, { s: "a", p: "value", o: 0 }, { s: "b", p: "value", o: 1 }, - { s: "c", p: "friend", o: "a" } - ]) + { s: "c", p: "friend", o: "a" }, + ]), ]); }); }); diff --git a/packages/rstream/CHANGELOG.md b/packages/rstream/CHANGELOG.md index 0a2f2ff8c5..fd4d417294 100644 --- a/packages/rstream/CHANGELOG.md +++ b/packages/rstream/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. +# [4.4.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream@4.3.5...@thi.ng/rstream@4.4.0) (2020-06-14) + + +### Features + +* **rstream:** add debounce() sub & tests ([9c53bb4](https://github.com/thi-ng/umbrella/commit/9c53bb4faffee0a06046de64325f0b4ddeedd3a0)) +* **rstream:** add emitLast metastream option ([1073735](https://github.com/thi-ng/umbrella/commit/107373574cd6f15531e6210c016cde1a9939e040)) +* **rstream:** add error handling for transducer phase ([609424e](https://github.com/thi-ng/umbrella/commit/609424e6b332e5f2df89d07b6b5af02fc5b4ba99)) + + + + + ## [4.3.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/rstream@4.3.4...@thi.ng/rstream@4.3.5) (2020-06-01) **Note:** Version bump only for package @thi.ng/rstream diff --git a/packages/rstream/README.md b/packages/rstream/README.md index eacedfba6d..eaf5fc08f2 100644 --- a/packages/rstream/README.md +++ b/packages/rstream/README.md @@ -136,7 +136,7 @@ yarn add @thi.ng/rstream ``` -Package sizes (gzipped, pre-treeshake): ESM: 5.26 KB / CJS: 5.45 KB / UMD: 5.38 KB +Package sizes (gzipped, pre-treeshake): ESM: 5.37 KB / CJS: 5.56 KB / UMD: 5.48 KB ## Dependencies @@ -736,6 +736,7 @@ Create value stream from worker messages. ### Other subscription ops +- [debounce](https://github.com/thi-ng/umbrella/tree/develop/packages/rstream/src/subs/debounce.ts) - ignore high frequency interim values - [resolve](https://github.com/thi-ng/umbrella/tree/develop/packages/rstream/src/subs/resolve.ts) - resolve on-stream promises - [trace](https://github.com/thi-ng/umbrella/tree/develop/packages/rstream/src/subs/trace.ts) - debug helper - [transduce](https://github.com/thi-ng/umbrella/tree/develop/packages/rstream/src/subs/transduce.ts) - transduce or just reduce an entire stream into a promise diff --git a/packages/rstream/package.json b/packages/rstream/package.json index 8f31213e9b..3df52e8d98 100644 --- a/packages/rstream/package.json +++ b/packages/rstream/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/rstream", - "version": "4.3.5", + "version": "4.4.0", "description": "Reactive streams & subscription primitives for constructing dataflow graphs / pipelines", "module": "./index.js", "main": "./lib/index.js", @@ -43,13 +43,13 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/associative": "^4.0.11", - "@thi.ng/atom": "^4.1.9", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/associative": "^4.1.0", + "@thi.ng/atom": "^4.1.10", + "@thi.ng/checks": "^2.7.1", "@thi.ng/errors": "^1.2.14", - "@thi.ng/paths": "^4.0.7", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/paths": "^4.0.8", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/rstream/src/forkjoin.ts b/packages/rstream/src/forkjoin.ts index bc1370da90..36e0cc5d7d 100644 --- a/packages/rstream/src/forkjoin.ts +++ b/packages/rstream/src/forkjoin.ts @@ -1,9 +1,4 @@ -import { - comp, - map, - mapcat, - range -} from "@thi.ng/transducers"; +import { comp, map, mapcat, range } from "@thi.ng/transducers"; import { sync } from "./stream-sync"; import { tunnel } from "./subs/tunnel"; import { Subscription } from "./subscription"; @@ -129,11 +124,11 @@ export const forkJoin = ( transferables: opts.transferables, interrupt: opts.interrupt === true, terminate: opts.terminate, - id: String(id) + id: String(id), }) ), workerIDs - ) + ), ], xform: comp( // form result tuple in original order @@ -142,7 +137,7 @@ export const forkJoin = ( map(opts.join) ), reset: true, - backPressure: opts.backPressure + backPressure: opts.backPressure, }); }; diff --git a/packages/rstream/src/from/raf.ts b/packages/rstream/src/from/raf.ts index d9ef574cd5..c2a4e757f4 100644 --- a/packages/rstream/src/from/raf.ts +++ b/packages/rstream/src/from/raf.ts @@ -22,7 +22,7 @@ export const fromRAF = (opts?: Partial) => : new Stream((stream) => { let i = 0; let isActive = true; - let loop = () => { + const loop = () => { isActive && stream.next(i++); isActive && (id = requestAnimationFrame(loop)); }; diff --git a/packages/rstream/src/index.ts b/packages/rstream/src/index.ts index 50d9b11fd4..49f299cb1a 100644 --- a/packages/rstream/src/index.ts +++ b/packages/rstream/src/index.ts @@ -22,6 +22,7 @@ export * from "./from/worker"; export * from "./subs/asidechain"; export * from "./subs/bisect"; +export * from "./subs/debounce"; export * from "./subs/post-worker"; export * from "./subs/resolve"; export * from "./subs/sidechain-partition"; diff --git a/packages/rstream/src/metastream.ts b/packages/rstream/src/metastream.ts index e4e1bf0e18..f46d2ec244 100644 --- a/packages/rstream/src/metastream.ts +++ b/packages/rstream/src/metastream.ts @@ -3,6 +3,17 @@ import { CloseMode, CommonOpts, State } from "./api"; import { Subscription } from "./subscription"; import { optsWithID } from "./utils/idgen"; +export interface MetaStreamOpts extends CommonOpts { + /** + * If true, emits the last received value from the metastream's + * current child stream (if any) when the metastream's parent is + * calling `.done()`. + * + * @defaultValue false + */ + emitLast: boolean; +} + /** * Returns a {@link Subscription} which transforms each incoming value * into a new {@link Stream}, subscribes to it (via an hidden / internal @@ -87,20 +98,24 @@ import { optsWithID } from "./utils/idgen"; */ export const metaStream = ( factory: Fn>, - opts?: Partial + opts?: Partial ) => new MetaStream(factory, opts); export class MetaStream extends Subscription { factory: Fn>; stream?: Subscription; sub?: Subscription; + emitLast: boolean; + doneRequested: boolean; constructor( factory: Fn>, - opts?: Partial + opts: Partial = {} ) { super(undefined, optsWithID("metastram", opts)); this.factory = factory; + this.emitLast = opts.emitLast === true; + this.doneRequested = false; } next(x: A) { @@ -114,6 +129,7 @@ export class MetaStream extends Subscription { this.sub = this.stream.subscribe({ next: (x) => { stream === this.stream && super.dispatch(x); + this.doneRequested && this.done(); }, done: () => { this.stream!.unsubscribe(this.sub); @@ -130,10 +146,14 @@ export class MetaStream extends Subscription { } done() { - if (this.stream) { - this.detach(true); + if (this.emitLast && !this.doneRequested) { + this.doneRequested = true; + } else { + if (this.stream) { + this.detach(true); + } + this.closeIn !== CloseMode.NEVER && super.done(); } - this.closeIn !== CloseMode.NEVER && super.done(); } unsubscribe(sub?: Subscription) { diff --git a/packages/rstream/src/stream-merge.ts b/packages/rstream/src/stream-merge.ts index 4c35d565a6..38c4b50a0b 100644 --- a/packages/rstream/src/stream-merge.ts +++ b/packages/rstream/src/stream-merge.ts @@ -1,9 +1,4 @@ -import { - CloseMode, - ISubscribable, - State, - TransformableOpts -} from "./api"; +import { CloseMode, ISubscribable, State, TransformableOpts } from "./api"; import { Subscription } from "./subscription"; import { optsWithID } from "./utils/idgen"; @@ -94,7 +89,7 @@ export class StreamMerge extends Subscription { } }, done: () => this.markDone(src), - __owner: this + __owner: this, }, { id: `in-${src.id}` } ) diff --git a/packages/rstream/src/stream.ts b/packages/rstream/src/stream.ts index 8f3750f19b..c7809eb004 100644 --- a/packages/rstream/src/stream.ts +++ b/packages/rstream/src/stream.ts @@ -6,7 +6,7 @@ import { ISubscriber, LOGGER, StreamCancel, - StreamSource + StreamSource, } from "./api"; import { Subscription } from "./subscription"; import { optsWithID } from "./utils/idgen"; diff --git a/packages/rstream/src/subs/debounce.ts b/packages/rstream/src/subs/debounce.ts new file mode 100644 index 0000000000..3d3ccc0230 --- /dev/null +++ b/packages/rstream/src/subs/debounce.ts @@ -0,0 +1,19 @@ +import { fromIterable } from "../from/iterable"; +import { metaStream, MetaStreamOpts } from "../metastream"; + +/** + * Returns a subscription which ignores any intermediate inputs arriving + * faster than given `delay` time period. + * + * @example + * ```ts + * + * ``` + * + * @param delay + */ +export const debounce = (delay: number, opts?: Partial) => + metaStream((x: T) => fromIterable([x], { delay }), { + emitLast: true, + ...opts, + }); diff --git a/packages/rstream/src/subs/post-worker.ts b/packages/rstream/src/subs/post-worker.ts index fbd8e1fc69..a77b31b4f0 100644 --- a/packages/rstream/src/subs/post-worker.ts +++ b/packages/rstream/src/subs/post-worker.ts @@ -65,6 +65,6 @@ export const postWorker = ( _worker.terminate(); }, terminate); } - } + }, }; }; diff --git a/packages/rstream/src/subs/sidechain-partition.ts b/packages/rstream/src/subs/sidechain-partition.ts index 2f4cde7cca..1855959bfb 100644 --- a/packages/rstream/src/subs/sidechain-partition.ts +++ b/packages/rstream/src/subs/sidechain-partition.ts @@ -65,7 +65,7 @@ export class SidechainPartition extends ASidechain { } $this.done(); delete $this.buf; - } + }, }); } diff --git a/packages/rstream/src/subs/sidechain-toggle.ts b/packages/rstream/src/subs/sidechain-toggle.ts index f8461001f9..cccd7179e7 100644 --- a/packages/rstream/src/subs/sidechain-toggle.ts +++ b/packages/rstream/src/subs/sidechain-toggle.ts @@ -56,13 +56,13 @@ export class SidechainToggle extends ASidechain { const $this = this; this.sideSub = side.subscribe({ next(x) { - if (pred!(x)) { + if (pred(x)) { $this.isActive = !$this.isActive; } }, done() { $this.done(); - } + }, }); } diff --git a/packages/rstream/src/subs/trace.ts b/packages/rstream/src/subs/trace.ts index 3ebc9b0df6..505a0065b3 100644 --- a/packages/rstream/src/subs/trace.ts +++ b/packages/rstream/src/subs/trace.ts @@ -16,5 +16,5 @@ export const trace = (prefix?: any): ISubscriber => ({ }, error(e) { prefix ? console.log(prefix, "error", e) : console.log("error", e); - } + }, }); diff --git a/packages/rstream/src/subs/transduce.ts b/packages/rstream/src/subs/transduce.ts index 455adea5c0..0e482a775d 100644 --- a/packages/rstream/src/subs/transduce.ts +++ b/packages/rstream/src/subs/transduce.ts @@ -1,4 +1,4 @@ -import { isReduced } from "@thi.ng/transducers"; +import { isReduced, Reduced } from "@thi.ng/transducers"; import { Subscription } from "../subscription"; import type { Reducer, Transducer } from "@thi.ng/transducers"; @@ -39,7 +39,13 @@ export const transduce = ( sub = src.subscribe( { next(x) { - const _acc = rfn[2](acc, x); + let _acc: C | Reduced; + try { + _acc = rfn[2](acc, x); + } catch (e) { + reject(e); + return; + } if (isReduced(_acc)) { resolve(_acc.deref()); } else { @@ -51,7 +57,7 @@ export const transduce = ( }, error(e) { reject(e); - } + }, }, xform ); diff --git a/packages/rstream/src/subscription.ts b/packages/rstream/src/subscription.ts index 7799192ef4..8d62d974bb 100644 --- a/packages/rstream/src/subscription.ts +++ b/packages/rstream/src/subscription.ts @@ -9,6 +9,7 @@ import { Reducer, Transducer, unreduced, + Reduced, } from "@thi.ng/transducers"; import { CloseMode, @@ -30,7 +31,8 @@ import { nextID } from "./utils/idgen"; * Most other types in rstream, including {@link Stream}s, are * `Subscription`s and all can be: * - * - linked into directed graphs (sync or async & not necessarily DAGs) + * - connected into directed graphs (sync or async & not necessarily + * DAGs) * - transformed using transducers (incl. support for early termination) * - can have any number of subscribers (optionally each w/ their own * transducers) @@ -40,9 +42,17 @@ import { nextID } from "./utils/idgen"; * subscribers has an error handler itself * - implement the {@link @thi.ng/api#IDeref} interface * + * If a transducer is provided (via the `xform` option), all received + * values will be first processed by the transducer and only its + * transformed result(s) (if any) will be passed to downstream + * subscribers. Any uncaught errors *inside* the transducer will cause + * this subscription's error handler to be called and will stop this + * subscription from receiving any further values (by default, unless + * overridden). + * * Subscription behavior can be customized via the additional (optional) - * options arg. See `CommonOpts` and `SubscriptionOpts` for further - * details. + * options arg. See {@link CommonOpts} and {@link SubscriptionOpts} for + * further details. * * @example * ```ts @@ -244,7 +254,13 @@ export class Subscription next(x: A) { if (this.state < State.DONE) { if (this.xform) { - const acc = this.xform[2]([], x); + let acc: B[] | Reduced; + try { + acc = this.xform[2]([], x); + } catch (e) { + this.error(e); + return; + } const uacc = unreduced(acc); const n = uacc.length; for (let i = 0; i < n; i++) { @@ -260,13 +276,18 @@ export class Subscription done() { LOGGER.debug(this.id, "entering done()"); if (this.state < State.DONE) { - if (this.xform) { - const acc = this.xform[1]([]); - const uacc = unreduced(acc); - const n = uacc.length; - for (let i = 0; i < n; i++) { - this.dispatch(uacc[i]); + try { + if (this.xform) { + const acc = this.xform[1]([]); + const uacc = unreduced(acc); + const n = uacc.length; + for (let i = 0; i < n; i++) { + this.dispatch(uacc[i]); + } } + } catch (e) { + this.error(e); + return; } this.state = State.DONE; for (let s of this.subs.slice()) { diff --git a/packages/rstream/src/tween.ts b/packages/rstream/src/tween.ts index e933fdbb99..f46951380e 100644 --- a/packages/rstream/src/tween.ts +++ b/packages/rstream/src/tween.ts @@ -75,9 +75,9 @@ export const tween = ( ? fromRAF() : isNumber(clock) ? fromInterval(clock) - : clock + : clock, }, - closeIn: CloseMode.FIRST + closeIn: CloseMode.FIRST, }).transform( scan( reducer( diff --git a/packages/rstream/test/bisect.ts b/packages/rstream/test/bisect.ts index 6a44c1dfe8..86f0582b6e 100644 --- a/packages/rstream/test/bisect.ts +++ b/packages/rstream/test/bisect.ts @@ -1,11 +1,6 @@ import { map } from "@thi.ng/transducers"; import * as assert from "assert"; -import { - bisect, - fromIterable, - Stream, - subscription -} from "../src/index"; +import { bisect, fromIterable, Stream, subscription } from "../src/index"; // prettier-ignore describe("bisect", () => { diff --git a/packages/rstream/test/debounce.ts b/packages/rstream/test/debounce.ts new file mode 100644 index 0000000000..55ca6065d7 --- /dev/null +++ b/packages/rstream/test/debounce.ts @@ -0,0 +1,35 @@ +import * as assert from "assert"; +import { debounce, fromIterable } from "../src/index"; +import { TIMEOUT } from "./config"; + +describe("debounce", () => { + it("basic", (done) => { + const acc: number[] = []; + fromIterable([1, 2, 3], { delay: TIMEOUT }) + .subscribe(debounce(TIMEOUT * 1.5)) + .subscribe({ + next(x) { + acc.push(x); + }, + }); + setTimeout(() => { + assert.deepEqual(acc, [3]); + done(); + }, TIMEOUT * 5); + }); + + it("no last", (done) => { + const acc: number[] = []; + fromIterable([1, 2, 3], { delay: TIMEOUT }) + .subscribe(debounce(TIMEOUT * 1.5, { emitLast: false })) + .subscribe({ + next(x) { + acc.push(x); + }, + }); + setTimeout(() => { + assert.deepEqual(acc, []); + done(); + }, TIMEOUT * 5); + }); +}); diff --git a/packages/rstream/test/from-iterable.ts b/packages/rstream/test/from-iterable.ts index 2ff3f476b0..b57a852cba 100644 --- a/packages/rstream/test/from-iterable.ts +++ b/packages/rstream/test/from-iterable.ts @@ -1,10 +1,5 @@ import * as assert from "assert"; -import { - fromIterable, - State, - Stream, - Subscription -} from "../src/index"; +import { fromIterable, State, Stream, Subscription } from "../src/index"; import { TIMEOUT } from "./config"; describe("fromIterable()", () => { @@ -37,7 +32,7 @@ describe("fromIterable()", () => { done() { assert.deepEqual(buf, data); done(); - } + }, }); }); @@ -47,7 +42,7 @@ describe("fromIterable()", () => { assert.equal(src.getState(), State.DONE, "src not done"); assert.equal(sub.getState(), State.DONE, "sub not done"); done(); - } + }, }); }); @@ -63,11 +58,11 @@ describe("fromIterable()", () => { assert.deepEqual(buf, data); assert(Date.now() - t0 >= (data.length + 1) * 10); done(); - } + }, }); }); - it("can be cancelled", function(done) { + it("can be cancelled", function (done) { this.timeout(TIMEOUT * 5); let buf: any[] = []; let doneCalled = false; @@ -78,7 +73,7 @@ describe("fromIterable()", () => { }, done() { doneCalled = true; - } + }, }); setTimeout(() => src.cancel(), TIMEOUT * 1.5); setTimeout(() => { diff --git a/packages/rstream/test/from-promise.ts b/packages/rstream/test/from-promise.ts index a83328c85c..20c7cd7828 100644 --- a/packages/rstream/test/from-promise.ts +++ b/packages/rstream/test/from-promise.ts @@ -1,10 +1,5 @@ import * as assert from "assert"; -import { - fromIterable, - fromPromise, - resolve, - State -} from "../src/index"; +import { fromIterable, fromPromise, resolve, State } from "../src/index"; import { TIMEOUT } from "./config"; describe("fromPromise()", () => { @@ -19,7 +14,7 @@ describe("fromPromise()", () => { done() { assert(called, "not called next()"); done(); - } + }, }); }); @@ -38,7 +33,7 @@ describe("fromPromise()", () => { assert.equal(src.getState(), State.ERROR); assert.equal(sub.getState(), State.ERROR); called = true; - } + }, }); setTimeout(() => { assert(called, "not called"); @@ -65,7 +60,7 @@ describe("fromPromise()", () => { assert.equal(src.getState(), State.ERROR); assert.equal(sub.getState(), State.ERROR); called = true; - } + }, }); setTimeout(() => { assert(called, "not called"); @@ -88,7 +83,7 @@ describe("fromPromise()", () => { done() { assert(called, "not called"); done(); - } + }, }); }); }); diff --git a/packages/rstream/test/sidechain-partition.ts b/packages/rstream/test/sidechain-partition.ts index d1fe41935d..d7c98f6a04 100644 --- a/packages/rstream/test/sidechain-partition.ts +++ b/packages/rstream/test/sidechain-partition.ts @@ -1,12 +1,7 @@ import * as assert from "assert"; -import { - sidechainPartition, - State, - Stream, - stream -} from "../src/index"; +import { sidechainPartition, State, Stream, stream } from "../src/index"; -describe("SidechainPartition", function() { +describe("SidechainPartition", function () { let src: Stream, side: Stream, buf: any[]; beforeEach(() => { @@ -23,10 +18,10 @@ describe("SidechainPartition", function() { done() { assert.deepEqual(buf, [ [1, 2], - [3, 4, 5] + [3, 4, 5], ]); done(); - } + }, }); src.next(1); src.next(2); @@ -50,10 +45,10 @@ describe("SidechainPartition", function() { done() { assert.deepEqual(buf, [ [1, 2, 3], - [4, 5] + [4, 5], ]); done(); - } + }, }); src.next(1); src.next(2); diff --git a/packages/rstream/test/sidechain-toggle.ts b/packages/rstream/test/sidechain-toggle.ts index bf03ab3ed8..065244a0bc 100644 --- a/packages/rstream/test/sidechain-toggle.ts +++ b/packages/rstream/test/sidechain-toggle.ts @@ -1,11 +1,6 @@ import { Predicate } from "@thi.ng/api"; import * as assert from "assert"; -import { - sidechainToggle, - State, - Stream, - stream -} from "../src/index"; +import { sidechainToggle, State, Stream, stream } from "../src/index"; describe("SidechainToggle", () => { let src: Stream, side: Stream, buf: any[]; @@ -29,7 +24,7 @@ describe("SidechainToggle", () => { done() { assert.deepEqual(buf, expect); done(); - } + }, }); src.next(1); src.next(2); diff --git a/packages/rstream/test/stream-merge.ts b/packages/rstream/test/stream-merge.ts index 31a2b6d046..71a360d900 100644 --- a/packages/rstream/test/stream-merge.ts +++ b/packages/rstream/test/stream-merge.ts @@ -6,7 +6,7 @@ import { fromIterableSync, merge, State, - StreamMerge + StreamMerge, } from "../src/index"; describe("StreamMerge", () => { @@ -24,7 +24,7 @@ describe("StreamMerge", () => { expected ); done(); - } + }, }; }; @@ -33,8 +33,8 @@ describe("StreamMerge", () => { src: [ fromIterable([1, 2]), fromIterable([10, 20, 30, 40]), - fromIterable([100, 200, 300]) - ] + fromIterable([100, 200, 300]), + ], }); }); @@ -70,7 +70,7 @@ describe("StreamMerge", () => { it("applies transducer", (done) => { src = merge({ src: [fromIterable([1, 2]), fromIterable([10, 20])], - xform: mapcat((x: number) => [x, x + 1]) + xform: mapcat((x: number) => [x, x + 1]), }); src.subscribe(check([1, 2, 2, 3, 10, 11, 20, 21], done)); }); @@ -78,7 +78,7 @@ describe("StreamMerge", () => { it("transducer streams", (done) => { const sources = [ fromIterable([1, 2, 3]), - fromIterable([4, 5, 6]) + fromIterable([4, 5, 6]), ].map((s) => s.subscribe(map((x) => fromIterable([x, x, x])))); const main = merge({ src: sources }); const histogram = frequencies(); @@ -96,11 +96,11 @@ describe("StreamMerge", () => { [3, 3], [4, 3], [5, 3], - [6, 3] + [6, 3], ]) ); done(); - } + }, }); }); }); diff --git a/packages/rstream/test/timeout.ts b/packages/rstream/test/timeout.ts index 9c0f0c9a43..688589ec59 100644 --- a/packages/rstream/test/timeout.ts +++ b/packages/rstream/test/timeout.ts @@ -3,18 +3,18 @@ import { timeout } from "../src"; import { TIMEOUT } from "./config"; describe("Timeout", () => { - it("times out", function(done) { + it("times out", function (done) { this.timeout(TIMEOUT * 2); timeout(TIMEOUT).subscribe({ error: (e) => { assert(e instanceof Error); done(); - } + }, }); }); - it("times out with error object", function(done) { + it("times out with error object", function (done) { this.timeout(TIMEOUT * 2); const error = "error object"; @@ -23,23 +23,23 @@ describe("Timeout", () => { error: (err) => { assert.equal(err, error); done(); - } + }, }); }); - it("cancels timeout in cleanup()", function(done) { + it("cancels timeout in cleanup()", function (done) { this.timeout(TIMEOUT * 3); timeout(TIMEOUT) .subscribe({ - error: () => assert.fail("timed out") + error: () => assert.fail("timed out"), }) .unsubscribe(); setTimeout(() => done(), TIMEOUT * 2); }); - it("resets timeout when value received", function(done) { + it("resets timeout when value received", function (done) { this.timeout(TIMEOUT * 4); const res: any[] = []; @@ -50,7 +50,7 @@ describe("Timeout", () => { }, error: () => { assert.deepEqual(res, [1, 2]); - } + }, }); setTimeout(() => t.next(1), TIMEOUT * 0.7); diff --git a/packages/rstream/test/transducers.ts b/packages/rstream/test/transducers.ts index 09aeb29cb8..32018f2fee 100644 --- a/packages/rstream/test/transducers.ts +++ b/packages/rstream/test/transducers.ts @@ -4,7 +4,7 @@ import { map, mapcat, partition, - take + take, } from "@thi.ng/transducers"; import * as assert from "assert"; import { fromIterable, Stream } from "../src/index"; @@ -22,7 +22,7 @@ describe("transducers", () => { done() { assert.deepEqual(buf, expected); done(); - } + }, }; }; @@ -39,7 +39,10 @@ describe("transducers", () => { it("works combined", (done) => { src.subscribe( check([101, 201, 301], done), - comp(map((x: number) => x * 10), map((x: number) => x + 1)) + comp( + map((x: number) => x * 10), + map((x: number) => x + 1) + ) ); }); @@ -50,12 +53,18 @@ describe("transducers", () => { it("emits multiple values", (done) => { src.subscribe( check([10, 10, 20], done), - comp(mapcat((x) => [x, x]), take(3)) + comp( + mapcat((x) => [x, x]), + take(3) + ) ); }); it("filters values", (done) => { - src.subscribe(check([10, 30], done), filter((x: number) => x % 20 > 0)); + src.subscribe( + check([10, 30], done), + filter((x: number) => x % 20 > 0) + ); }); it("emits remaining", (done) => { diff --git a/packages/rstream/tpl.readme.md b/packages/rstream/tpl.readme.md index 2ec018ec45..e0395020b9 100644 --- a/packages/rstream/tpl.readme.md +++ b/packages/rstream/tpl.readme.md @@ -651,6 +651,7 @@ Create value stream from worker messages. ### Other subscription ops +- [debounce](https://github.com/thi-ng/umbrella/tree/develop/packages/rstream/src/subs/debounce.ts) - ignore high frequency interim values - [resolve](https://github.com/thi-ng/umbrella/tree/develop/packages/rstream/src/subs/resolve.ts) - resolve on-stream promises - [trace](https://github.com/thi-ng/umbrella/tree/develop/packages/rstream/src/subs/trace.ts) - debug helper - [transduce](https://github.com/thi-ng/umbrella/tree/develop/packages/rstream/src/subs/transduce.ts) - transduce or just reduce an entire stream into a promise diff --git a/packages/sax/CHANGELOG.md b/packages/sax/CHANGELOG.md index 70aae82aa8..4ece3a95bd 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.27](https://github.com/thi-ng/umbrella/compare/@thi.ng/sax@1.1.26...@thi.ng/sax@1.1.27) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/sax + + + + + ## [1.1.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/sax@1.1.25...@thi.ng/sax@1.1.26) (2020-06-01) **Note:** Version bump only for package @thi.ng/sax diff --git a/packages/sax/package.json b/packages/sax/package.json index 96a4580eeb..7eb90a3d41 100644 --- a/packages/sax/package.json +++ b/packages/sax/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/sax", - "version": "1.1.26", + "version": "1.1.27", "description": "Transducer-based, SAX-like, non-validating, speedy & tiny XML parser", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/transducers-fsm": "^1.1.26", + "@thi.ng/api": "^6.11.1", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/transducers-fsm": "^1.1.27", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/sax/src/index.ts b/packages/sax/src/index.ts index 0247f3d51c..00f7027057 100644 --- a/packages/sax/src/index.ts +++ b/packages/sax/src/index.ts @@ -90,7 +90,7 @@ export enum Type { /** * Parser error event */ - ERROR + ERROR, } interface ParseState extends FSMState { @@ -125,7 +125,7 @@ const enum State { DOCTYPE, PROC_DECL, PROC_END, - CDATA + CDATA, // H_CHAR, // U_CHAR, } @@ -135,7 +135,7 @@ const ENTITIES: IObjectOf = { "<": "<", ">": ">", """: '"', - "'": "'" + "'": "'", }; const ENTITY_RE = new RegExp(`(${Object.keys(ENTITIES).join("|")})`, "g"); @@ -149,7 +149,7 @@ const ESCAPE_SEQS: IObjectOf = { b: "\b", '"': '"', "'": "'", - "\\": "\\" + "\\": "\\", }; /** @@ -182,10 +182,10 @@ export function parse(...args: any[]): any { children: true, entities: false, trim: false, - ...args[0] - } + ...args[0], + }, }, - terminate: State.ERROR + terminate: State.ERROR, }); } @@ -294,9 +294,9 @@ const PARSER: FSMStateMap = { } else { return error( state, - `unmatched tag: '${state.tag}' @ pos ${state.pos - - state.tag!.length - - 2}` + `unmatched tag: '${state.tag}' @ pos ${ + state.pos - state.tag!.length - 2 + }` ); } } @@ -313,7 +313,7 @@ const PARSER: FSMStateMap = { } return [ { type: Type.ELEM_START, ...res }, - { type: Type.ELEM_END, ...res } + { type: Type.ELEM_END, ...res }, ]; } else { return unexpected(state, ch); @@ -553,12 +553,12 @@ const PARSER: FSMStateMap = { state.state = State.WAIT; state.isProc = false; return [ - { type: Type.PROC, tag: state.tag, attribs: state.attribs } + { type: Type.PROC, tag: state.tag, attribs: state.attribs }, ]; } else { return unexpected(state, ch); } - } + }, }; const beginElementBody = (state: ParseState) => { diff --git a/packages/sax/test/index.ts b/packages/sax/test/index.ts index b3b7d3051b..76025a6745 100644 --- a/packages/sax/test/index.ts +++ b/packages/sax/test/index.ts @@ -36,12 +36,12 @@ describe("sax", () => { ...e.attribs, cx: parseFloat(e.attribs.cx), cy: parseFloat(e.attribs.cy), - r: parseFloat(e.attribs.r) - } + r: parseFloat(e.attribs.r), + }, ]) ), svg - ) + ), ], [ ["circle", { cx: 50, cy: 150, r: 50 }], @@ -53,9 +53,9 @@ describe("sax", () => { cy: 150, fill: "rgba(0,255,255,0.25)", r: 100, - stroke: "#ff0000" - } - ] + stroke: "#ff0000", + }, + ], ] ); }); @@ -69,7 +69,10 @@ describe("sax", () => { const parsedChildren = (e: ParseElement) => tx.iterator( - tx.comp(tx.map(parseElement), tx.filter((e: any) => !!e)), + tx.comp( + tx.map(parseElement), + tx.filter((e: any) => !!e) + ), e.children ); @@ -79,12 +82,12 @@ describe("sax", () => { // implementations parseElement.add("circle", (e) => [ e.tag, - numericAttribs(e, "cx", "cy", "r") + numericAttribs(e, "cx", "cy", "r"), ]); parseElement.add("rect", (e) => [ e.tag, - numericAttribs(e, "x", "y", "width", "height") + numericAttribs(e, "x", "y", "width", "height"), ]); parseElement.add("g", (e) => [e.tag, e.attribs, ...parsedChildren(e)]); @@ -92,7 +95,7 @@ describe("sax", () => { parseElement.add("svg", (e) => [ e.tag, numericAttribs(e, "width", "height"), - ...parsedChildren(e) + ...parsedChildren(e), ]); // implementation for unhandled elements (just return undefined) @@ -106,7 +109,7 @@ describe("sax", () => { version: "1.1", height: 300, width: 300, - xmlns: "http://www.w3.org/2000/svg" + xmlns: "http://www.w3.org/2000/svg", }, [ "g", @@ -120,8 +123,8 @@ describe("sax", () => { cy: 150, fill: "rgba(0,255,255,0.25)", r: 100, - stroke: "#ff0000" - } + stroke: "#ff0000", + }, ], [ "rect", @@ -131,16 +134,16 @@ describe("sax", () => { width: 140, height: 140, fill: "none", - stroke: "black" - } - ] + stroke: "black", + }, + ], ], [ "g", { fill: "none", stroke: "black" }, ["circle", { cx: 150, cy: 150, r: 50 }], - ["circle", { cx: 150, cy: 150, r: 25 }] - ] + ["circle", { cx: 150, cy: 150, r: 25 }], + ], ] ); }); @@ -155,7 +158,7 @@ describe("sax", () => { [ { type: 4, tag: "a", attribs: {} }, { type: 4, tag: "b", attribs: {} }, - { type: 7, body: "unmatched tag: 'c' @ pos 7" } + { type: 7, body: "unmatched tag: 'c' @ pos 7" }, ] ); }); @@ -169,8 +172,8 @@ describe("sax", () => { type: 5, tag: "foo", attribs: { a: true, b: "2", c: true }, - children: [] - } + children: [], + }, ], "no slash" ); @@ -178,7 +181,7 @@ describe("sax", () => { [...parse({ boolean: true }, ``)], [ { type: 4, tag: "foo", attribs: { a: true, b: "2", c: true } }, - { type: 5, tag: "foo", attribs: { a: true, b: "2", c: true } } + { type: 5, tag: "foo", attribs: { a: true, b: "2", c: true } }, ], "with slash" ); diff --git a/packages/scenegraph/CHANGELOG.md b/packages/scenegraph/CHANGELOG.md index b87ec03f34..657c6c5255 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.1.22](https://github.com/thi-ng/umbrella/compare/@thi.ng/scenegraph@0.1.21...@thi.ng/scenegraph@0.1.22) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/scenegraph + + + + + ## [0.1.21](https://github.com/thi-ng/umbrella/compare/@thi.ng/scenegraph@0.1.20...@thi.ng/scenegraph@0.1.21) (2020-06-01) **Note:** Version bump only for package @thi.ng/scenegraph diff --git a/packages/scenegraph/package.json b/packages/scenegraph/package.json index 2cd5dfe529..5fc5807201 100644 --- a/packages/scenegraph/package.json +++ b/packages/scenegraph/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/scenegraph", - "version": "0.1.21", + "version": "0.1.22", "description": "Extensible 2D/3D scene graph with @thi.ng/hdom-canvas support", "module": "./index.js", "main": "./lib/index.js", @@ -43,10 +43,10 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/matrices": "^0.6.18", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/matrices": "^0.6.19", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/scenegraph/src/node2.ts b/packages/scenegraph/src/node2.ts index 12e620e548..eaa171b4cb 100644 --- a/packages/scenegraph/src/node2.ts +++ b/packages/scenegraph/src/node2.ts @@ -1,10 +1,5 @@ import { isNumber } from "@thi.ng/checks"; -import { - invert23, - mulM23, - mulV23, - transform23 -} from "@thi.ng/matrices"; +import { invert23, mulM23, mulV23, transform23 } from "@thi.ng/matrices"; import { ANode } from "./anode"; import type { IToHiccup, Nullable } from "@thi.ng/api"; import type { ReadonlyVec, Vec } from "@thi.ng/vectors"; @@ -70,7 +65,7 @@ export class Node2D extends ANode this.body ? ["g", { transform: this.mat }, this.body] : undefined, - ...this.children + ...this.children, ] : this.body ? ["g", { transform: this.mat }, this.body] diff --git a/packages/scenegraph/src/node3.ts b/packages/scenegraph/src/node3.ts index c2465fc7d4..129ef17660 100644 --- a/packages/scenegraph/src/node3.ts +++ b/packages/scenegraph/src/node3.ts @@ -1,10 +1,5 @@ import { isNumber } from "@thi.ng/checks"; -import { - invert44, - mulM44, - mulV344, - transform44 -} from "@thi.ng/matrices"; +import { invert44, mulM44, mulV344, transform44 } from "@thi.ng/matrices"; import { ANode } from "./anode"; import type { IToHiccup, Nullable } from "@thi.ng/api"; import type { ReadonlyVec, Vec } from "@thi.ng/vectors"; @@ -69,7 +64,7 @@ export class Node3D extends ANode this.body ? ["g", { transform: this.mat }, this.body] : undefined, - ...this.children + ...this.children, ] : this.body ? ["g", { transform: this.mat }, this.body] diff --git a/packages/seq/CHANGELOG.md b/packages/seq/CHANGELOG.md index 4f6a0ac4ed..12fc2c7073 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.15](https://github.com/thi-ng/umbrella/compare/@thi.ng/seq@0.2.14...@thi.ng/seq@0.2.15) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/seq + + + + + ## [0.2.14](https://github.com/thi-ng/umbrella/compare/@thi.ng/seq@0.2.13...@thi.ng/seq@0.2.14) (2020-06-01) **Note:** Version bump only for package @thi.ng/seq diff --git a/packages/seq/package.json b/packages/seq/package.json index 24ed5735bc..ff46a4b355 100644 --- a/packages/seq/package.json +++ b/packages/seq/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/seq", - "version": "0.2.14", + "version": "0.2.15", "description": "Various implementations of the @thi.ng/api `ISeq` interface / sequence abstraction", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/seq/src/array.ts b/packages/seq/src/array.ts index 3332122447..d99d38a7b8 100644 --- a/packages/seq/src/array.ts +++ b/packages/seq/src/array.ts @@ -27,7 +27,7 @@ export const aseq = ( }, next() { return aseq(buf, start + 1, end); - } + }, } : undefined; }; @@ -60,7 +60,7 @@ export const rseq = ( }, next() { return rseq(buf, start! - 1, end); - } + }, } : undefined; }; diff --git a/packages/seq/src/concat.ts b/packages/seq/src/concat.ts index c60ca212b5..481dfe79f2 100644 --- a/packages/seq/src/concat.ts +++ b/packages/seq/src/concat.ts @@ -26,7 +26,7 @@ export const concat = ( }, next() { return $seq(curr!.next(), i); - } + }, } : undefined; }; @@ -56,7 +56,7 @@ export const concatA = (...args: Nullable>[]) => { }, next() { return $seq(i, j + 1); - } + }, } : undefined; }; diff --git a/packages/seq/src/cons.ts b/packages/seq/src/cons.ts index c49aa4ef27..1ec4b60501 100644 --- a/packages/seq/src/cons.ts +++ b/packages/seq/src/cons.ts @@ -12,5 +12,5 @@ export const cons = (head: T, seq?: ISeq): ISeq => ({ }, next() { return seq; - } + }, }); diff --git a/packages/seq/src/lazyseq.ts b/packages/seq/src/lazyseq.ts index f094f00b14..9037d0be2d 100644 --- a/packages/seq/src/lazyseq.ts +++ b/packages/seq/src/lazyseq.ts @@ -34,6 +34,6 @@ export const lazyseq = (fn: Fn0 | undefined>): ISeq => { }, next() { return ensure() !== undefined ? seq!.next() : undefined; - } + }, }; }; diff --git a/packages/seq/test/concat.ts b/packages/seq/test/concat.ts index dba6af8b39..4cc4540f8a 100644 --- a/packages/seq/test/concat.ts +++ b/packages/seq/test/concat.ts @@ -1,11 +1,5 @@ import * as assert from "assert"; -import { - aseq, - concat, - concatA, - iterator, - rseq -} from "../src"; +import { aseq, concat, concatA, iterator, rseq } from "../src"; describe("concat / iterator", () => { it("concat", () => { @@ -24,7 +18,7 @@ describe("concat / iterator", () => { rseq([1, 2, 3]), undefined ) - ) + ), ], [1, 2, 3, 3, 2, 1] ); diff --git a/packages/seq/test/cons.ts b/packages/seq/test/cons.ts index 596f669758..1497297d3e 100644 --- a/packages/seq/test/cons.ts +++ b/packages/seq/test/cons.ts @@ -5,17 +5,7 @@ describe("cons", () => { it("cons", () => { assert.equal(cons(1).first(), 1); assert.equal(cons(1).next(), undefined); - assert.equal( - cons(1, cons(2)) - .next()! - .first(), - 2 - ); - assert.equal( - cons(1, cons(2)) - .next()! - .next(), - undefined - ); + assert.equal(cons(1, cons(2)).next()!.first(), 2); + assert.equal(cons(1, cons(2)).next()!.next(), undefined); }); }); diff --git a/packages/seq/test/custom.ts b/packages/seq/test/custom.ts index 5c13d51413..185cf1e542 100644 --- a/packages/seq/test/custom.ts +++ b/packages/seq/test/custom.ts @@ -18,7 +18,7 @@ export class Range implements ISeqable { }, next() { return $seq(i + 1); - } + }, } : undefined; return $seq(0); diff --git a/packages/sexpr/CHANGELOG.md b/packages/sexpr/CHANGELOG.md index b911fa5945..d805a61e8b 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.18](https://github.com/thi-ng/umbrella/compare/@thi.ng/sexpr@0.2.17...@thi.ng/sexpr@0.2.18) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/sexpr + + + + + ## [0.2.17](https://github.com/thi-ng/umbrella/compare/@thi.ng/sexpr@0.2.16...@thi.ng/sexpr@0.2.17) (2020-06-01) **Note:** Version bump only for package @thi.ng/sexpr diff --git a/packages/sexpr/package.json b/packages/sexpr/package.json index e1ba48dd96..c05109b725 100644 --- a/packages/sexpr/package.json +++ b/packages/sexpr/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/sexpr", - "version": "0.2.17", + "version": "0.2.18", "description": "Extensible S-Expression parser & runtime infrastructure", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/defmulti": "^1.2.16", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/defmulti": "^1.2.17", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/sexpr/src/constants.ts b/packages/sexpr/src/constants.ts index 9565ed06f1..fa186b8069 100644 --- a/packages/sexpr/src/constants.ts +++ b/packages/sexpr/src/constants.ts @@ -3,5 +3,5 @@ import type { SyntaxOpts } from "./api"; export const DEFAULT_SYNTAX: SyntaxOpts = { scopes: [["(", ")"]], whiteSpace: /(\s|,)/, - string: '"' + string: '"', }; diff --git a/packages/sexpr/src/parse.ts b/packages/sexpr/src/parse.ts index c54c887b00..35bf42b2a6 100644 --- a/packages/sexpr/src/parse.ts +++ b/packages/sexpr/src/parse.ts @@ -1,13 +1,7 @@ import { isString } from "@thi.ng/checks"; import { DEFAULT_SYNTAX } from "./constants"; import { tokenize } from "./tokenize"; -import type { - ASTNode, - Expression, - Root, - SyntaxOpts, - Token -} from "./api"; +import type { ASTNode, Expression, Root, SyntaxOpts, Token } from "./api"; export class ParseError extends Error { line: number; @@ -35,7 +29,7 @@ export const parse = ( ) => { const { scopes } = { ...DEFAULT_SYNTAX, - ...opts + ...opts, }; const scopeOpen = scopes.map((x) => x[0]); const scopeClose = scopes.map((x) => x[1]); diff --git a/packages/sexpr/src/tokenize.ts b/packages/sexpr/src/tokenize.ts index f0545e9e8d..e354bdd6d1 100644 --- a/packages/sexpr/src/tokenize.ts +++ b/packages/sexpr/src/tokenize.ts @@ -16,7 +16,7 @@ import type { SyntaxOpts, Token } from "./api"; export function* tokenize(src: Iterable, opts?: Partial) { const { scopes: rawScopes, whiteSpace, string } = { ...DEFAULT_SYNTAX, - ...opts + ...opts, }; const scopes = rawScopes .reduce((acc, x) => acc.concat(x), []) @@ -30,7 +30,7 @@ export function* tokenize(src: Iterable, opts?: Partial) { const $ = (value: string): Token => ({ value, line: tokenLine, - col: tokenCol + col: tokenCol, }); for (let c of src) { if (c === "\n") { diff --git a/packages/sexpr/test/index.ts b/packages/sexpr/test/index.ts index 69664c378f..32283a1e6f 100644 --- a/packages/sexpr/test/index.ts +++ b/packages/sexpr/test/index.ts @@ -8,7 +8,7 @@ import { runtime, Sym, SyntaxOpts, - tokenize + tokenize, } from "../src/index"; const ops = defmulti((x) => (x).value); @@ -16,7 +16,7 @@ const rt = runtime, any, any>({ expr: (x, env) => ops(x.children[0], x.children, env), sym: (x, env) => env[x.value], str: (x) => x.value, - num: (x) => x.value + num: (x) => x.value, }); const $eval = (src: string, env: any = {}) => rt(parse(src).children[0], env); @@ -32,13 +32,16 @@ ops.addAll({ "*": op((acc, x) => acc * x), "-": op((acc, x) => acc - x), "/": op((acc, x) => acc / x), - count: (_, [__, x]) => rt(x).length + count: (_, [__, x]) => rt(x).length, }); ops.add(DEFAULT, (x, [_, ...args], env) => { const f = env[(x).value]; assert(!!f, "missing impl"); - return f.apply(null, args.map((a) => rt(a, env))); + return f.apply( + null, + args.map((a) => rt(a, env)) + ); }); describe("sexpr", () => { @@ -57,19 +60,22 @@ describe("sexpr", () => { value: "(", children: [ { type: "sym", value: "len" }, - { type: "str", value: "234" } - ] - } - ] - } - ] + { type: "str", value: "234" }, + ], + }, + ], + }, + ], }); }); it("custom syntax", () => { const syntax: Partial = { - scopes: [["<", ">"], ["{", "}"]], - string: "'" + scopes: [ + ["<", ">"], + ["{", "}"], + ], + string: "'", }; assert.deepEqual(parse(``, syntax), { type: "root", @@ -80,7 +86,7 @@ describe("sexpr", () => { children: [ { type: "sym", - value: "nest" + value: "nest", }, { type: "expr", @@ -88,25 +94,25 @@ describe("sexpr", () => { children: [ { type: "sym", - value: "a" + value: "a", }, { type: "str", - value: "2" + value: "2", }, { type: "sym", - value: "b" + value: "b", }, { type: "num", - value: 3 - } - ] - } - ] - } - ] + value: 3, + }, + ], + }, + ], + }, + ], }); }); @@ -133,7 +139,7 @@ describe("sexpr", () => { it("fn in env", () => { assert.equal( $eval(`(join (+ 1 2) (+ 3 4))`, { - join: (...xs: any[]) => xs.join(",") + join: (...xs: any[]) => xs.join(","), }), "3,7" ); diff --git a/packages/shader-ast-glsl/CHANGELOG.md b/packages/shader-ast-glsl/CHANGELOG.md index 1d14e406df..cbac3df6cc 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.1.30](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast-glsl@0.1.29...@thi.ng/shader-ast-glsl@0.1.30) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/shader-ast-glsl + + + + + ## [0.1.29](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast-glsl@0.1.28...@thi.ng/shader-ast-glsl@0.1.29) (2020-06-01) **Note:** Version bump only for package @thi.ng/shader-ast-glsl diff --git a/packages/shader-ast-glsl/package.json b/packages/shader-ast-glsl/package.json index 4a33fc5c60..d74aa13831 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.1.29", + "version": "0.1.30", "description": "Customizable GLSL code generator for @thi.ng/shader-ast", "module": "./index.js", "main": "./lib/index.js", @@ -43,10 +43,10 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", "@thi.ng/errors": "^1.2.14", - "@thi.ng/shader-ast": "^0.3.23", + "@thi.ng/shader-ast": "^0.3.24", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/shader-ast-glsl/src/target.ts b/packages/shader-ast-glsl/src/target.ts index e78866341a..15983c2310 100644 --- a/packages/shader-ast-glsl/src/target.ts +++ b/packages/shader-ast-glsl/src/target.ts @@ -10,7 +10,7 @@ import { Sym, sym, Term, - Type + Type, } from "@thi.ng/shader-ast"; import { GLSLOpts, GLSLTarget, GLSLVersion } from "./api"; import type { Fn } from "@thi.ng/api"; @@ -39,7 +39,7 @@ export const targetGLSL = (opts?: Partial) => { version: GLSLVersion.GLES_300, versionPragma: true, prelude: "", - ...opts + ...opts, }; const isVS = _opts.type === "vs"; @@ -60,13 +60,13 @@ export const targetGLSL = (opts?: Partial) => { type = ({ in: "attribute", out: "varying", - uni: "uniform" + uni: "uniform", })[opts.type]; } else { type = ({ in: "varying", out: null, - uni: "uniform" + uni: "uniform", })[opts.type]; !type && unsupported( @@ -96,9 +96,7 @@ export const targetGLSL = (opts?: Partial) => { _opts.version >= GLSLVersion.GLES_300 ? `${t.type}(${$list(t.init)})` : unsupported( - `array initializers not available in GLSL ${ - _opts.version - }` + `array initializers not available in GLSL ${_opts.version}` ), assign: (t) => emit(t.l) + " = " + emit(t.r), @@ -188,7 +186,7 @@ export const targetGLSL = (opts?: Partial) => { ternary: (t) => `(${emit(t.test)} ? ${emit(t.t)} : ${emit(t.f)})`, - while: (t) => `while (${emit(t.test)}) ${emit(t.scope)}` + while: (t) => `while (${emit(t.test)}) ${emit(t.scope)}`, }); Object.assign(emit, { @@ -198,7 +196,7 @@ export const targetGLSL = (opts?: Partial) => { gl_FrontFacing: sym("bool", "gl_FrontFacing", { const: true }), gl_PointCoord: sym("vec2", "gl_PointCoord", { const: true }), gl_PointSize: sym("float", "gl_PointSize"), - gl_Position: sym("vec4", "gl_Position") + gl_Position: sym("vec4", "gl_Position"), }); return emit; diff --git a/packages/shader-ast-glsl/test/index.ts b/packages/shader-ast-glsl/test/index.ts index d129f8e001..0376352720 100644 --- a/packages/shader-ast-glsl/test/index.ts +++ b/packages/shader-ast-glsl/test/index.ts @@ -15,7 +15,7 @@ import { Vec, vec2, vec3, - vec4 + vec4, } from "@thi.ng/shader-ast"; import * as assert from "assert"; import { GLSLVersion, targetGLSL } from "../src"; @@ -23,12 +23,12 @@ import { GLSLVersion, targetGLSL } from "../src"; const vs100 = targetGLSL({ type: "vs", version: GLSLVersion.GLES_100, - versionPragma: false + versionPragma: false, }); const fs100 = targetGLSL({ type: "fs", version: GLSLVersion.GLES_100, - versionPragma: false + versionPragma: false, }); const vs300 = targetGLSL({ type: "vs", versionPragma: false }); const fs300 = targetGLSL({ type: "fs", versionPragma: false }); @@ -116,22 +116,22 @@ describe("shader-ast (glsl)", () => { "attribute vec3 a;", "in vec3 a;", "varying vec3 a;", - "in vec3 a;" + "in vec3 a;", ], [ input("vec3", "a", { loc: 1 }), "attribute vec3 a;", "layout(location=1) in vec3 a;", "varying vec3 a;", - "layout(location=1) in vec3 a;" + "layout(location=1) in vec3 a;", ], [ input("vec3", "a", { loc: 1, num: 3 }), "attribute vec3 a[3];", "layout(location=1) in vec3 a[3];", "varying vec3 a[3];", - "layout(location=1) in vec3 a[3];" - ] + "layout(location=1) in vec3 a[3];", + ], ].forEach(([inp, v100, v300, f100, f300]: any) => { const spec = scope([inp], true); assert.equal(vs100(spec), v100, "vs100"); @@ -147,13 +147,13 @@ describe("shader-ast (glsl)", () => { [ uniform("vec3", "a", { loc: 1 }), "uniform vec3 a;", - "layout(location=1) uniform vec3 a;" + "layout(location=1) uniform vec3 a;", ], [ uniform("vec3", "a", { loc: 1, num: 3 }), "uniform vec3 a[3];", - "layout(location=1) uniform vec3 a[3];" - ] + "layout(location=1) uniform vec3 a[3];", + ], ].forEach(([uni, gl100, gl300]: any) => { const spec = scope([uni], true); assert.equal(vs100(spec), gl100, "vs100"); @@ -169,20 +169,20 @@ describe("shader-ast (glsl)", () => { output("vec3", "a"), "varying vec3 a;", "out vec3 a;", - "out vec3 a;" + "out vec3 a;", ], [ output("vec3", "a", { loc: 1 }), "varying vec3 a;", "layout(location=1) out vec3 a;", - "layout(location=1) out vec3 a;" + "layout(location=1) out vec3 a;", ], [ output("vec3", "a", { loc: 1, num: 3 }), "varying vec3 a[3];", "layout(location=1) out vec3 a[3];", - "layout(location=1) out vec3 a[3];" - ] + "layout(location=1) out vec3 a[3];", + ], ].forEach(([out, v100, v300, f300]: any) => { const spec = scope([out], true); assert.equal(vs100(spec), v100, "vs100"); diff --git a/packages/shader-ast-js/CHANGELOG.md b/packages/shader-ast-js/CHANGELOG.md index f7844e8bd1..492972c4d3 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.4.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast-js@0.4.25...@thi.ng/shader-ast-js@0.4.26) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/shader-ast-js + + + + + ## [0.4.25](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast-js@0.4.24...@thi.ng/shader-ast-js@0.4.25) (2020-06-01) **Note:** Version bump only for package @thi.ng/shader-ast-js diff --git a/packages/shader-ast-js/package.json b/packages/shader-ast-js/package.json index 9a7aa52a73..c699a50543 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.4.25", + "version": "0.4.26", "description": "Customizable JS code generator, compiler & runtime for @thi.ng/shader-ast", "module": "./index.js", "main": "./lib/index.js", @@ -43,14 +43,14 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", "@thi.ng/errors": "^1.2.14", - "@thi.ng/math": "^1.7.10", - "@thi.ng/matrices": "^0.6.18", - "@thi.ng/pixel": "^0.3.1", - "@thi.ng/shader-ast": "^0.3.23", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/math": "^1.7.11", + "@thi.ng/matrices": "^0.6.19", + "@thi.ng/pixel": "^0.3.2", + "@thi.ng/shader-ast": "^0.3.24", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/shader-ast-js/src/api.ts b/packages/shader-ast-js/src/api.ts index 037ff0ed43..6a5f1d0e68 100644 --- a/packages/shader-ast-js/src/api.ts +++ b/packages/shader-ast-js/src/api.ts @@ -1,11 +1,4 @@ -import type { - Fn, - Fn2, - Fn3, - Fn4, - Fn5, - Fn6 -} from "@thi.ng/api"; +import type { Fn, Fn2, Fn3, Fn4, Fn5, Fn6 } from "@thi.ng/api"; import type { Mat } from "@thi.ng/matrices"; import type { Term } from "@thi.ng/shader-ast"; import type { Vec } from "@thi.ng/vectors"; diff --git a/packages/shader-ast-js/src/env.ts b/packages/shader-ast-js/src/env.ts index f93cc6b252..e784ab6c25 100644 --- a/packages/shader-ast-js/src/env.ts +++ b/packages/shader-ast-js/src/env.ts @@ -4,7 +4,7 @@ import { mat33n, mat33v, mat44n, - mat44v + mat44v, } from "@thi.ng/matrices"; import { setSwizzle2, @@ -17,7 +17,7 @@ import { swizzle3, swizzle4, ZERO3, - ZERO4 + ZERO4, } from "@thi.ng/vectors"; import { FLOAT } from "./env/float"; import { INT } from "./env/int"; @@ -51,7 +51,7 @@ const SAMPLER_TODO: JSBuiltinsSampler = { textureOffsetn: () => 0, textureProj: () => ZERO4, textureProjn: () => 0, - textureSize: () => ZERO3 + textureSize: () => ZERO3, }; export const JS_DEFAULT_ENV: JSEnv = { @@ -94,5 +94,5 @@ export const JS_DEFAULT_ENV: JSEnv = { sampler3D: SAMPLER_TODO, samplerCube: SAMPLER_TODO, sampler2DShadow: SAMPLER_TODO, - samplerCubeShadow: SAMPLER_TODO + samplerCubeShadow: SAMPLER_TODO, }; diff --git a/packages/shader-ast-js/src/env/float.ts b/packages/shader-ast-js/src/env/float.ts index 6588e90587..08f02ac9a6 100644 --- a/packages/shader-ast-js/src/env/float.ts +++ b/packages/shader-ast-js/src/env/float.ts @@ -6,7 +6,7 @@ import { mix, rad, smoothStep, - step + step, } from "@thi.ng/math"; import type { JSBuiltinsFloat } from "../api"; @@ -43,5 +43,5 @@ export const FLOAT: JSBuiltinsFloat = { smoothstep: smoothStep, sqrt: Math.sqrt, step, - tan: Math.tan + tan: Math.tan, }; diff --git a/packages/shader-ast-js/src/env/int.ts b/packages/shader-ast-js/src/env/int.ts index 6d9a1663c5..f7ece76493 100644 --- a/packages/shader-ast-js/src/env/int.ts +++ b/packages/shader-ast-js/src/env/int.ts @@ -20,5 +20,5 @@ export const INT: JSBuiltinsInt = { rshift: (a, b) => a >> b, sign: Math.sign, sub: (a, b) => (a - b) | 0, - sub1: (a) => -a | 0 + sub1: (a) => -a | 0, }; diff --git a/packages/shader-ast-js/src/env/ivec2.ts b/packages/shader-ast-js/src/env/ivec2.ts index 19215039d7..298ee93142 100644 --- a/packages/shader-ast-js/src/env/ivec2.ts +++ b/packages/shader-ast-js/src/env/ivec2.ts @@ -14,7 +14,7 @@ import { mulNI2, rshiftI2, subI2, - subNI2 + subNI2, } from "@thi.ng/vectors"; import { VEC2 } from "./vec2"; import type { JSBuiltinsIntVec } from "../api"; @@ -41,5 +41,5 @@ export const IVEC2: JSBuiltinsIntVec = { bitnot1: (a) => bitNotI2([], a), bitor: (a, b) => bitOrI2([], a, b), rshift: (a, b) => rshiftI2([], a, b), - bitxor: (a, b) => bitXorI2([], a, b) + bitxor: (a, b) => bitXorI2([], a, b), }; diff --git a/packages/shader-ast-js/src/env/ivec3.ts b/packages/shader-ast-js/src/env/ivec3.ts index 34b7d6fc00..99319d848c 100644 --- a/packages/shader-ast-js/src/env/ivec3.ts +++ b/packages/shader-ast-js/src/env/ivec3.ts @@ -14,7 +14,7 @@ import { mulNI3, rshiftI3, subI3, - subNI3 + subNI3, } from "@thi.ng/vectors"; import { VEC3 } from "./vec3"; import type { JSBuiltinsIntVec } from "../api"; @@ -41,5 +41,5 @@ export const IVEC3: JSBuiltinsIntVec = { bitnot1: (a) => bitNotI3([], a), bitor: (a, b) => bitOrI3([], a, b), rshift: (a, b) => rshiftI3([], a, b), - bitxor: (a, b) => bitXorI3([], a, b) + bitxor: (a, b) => bitXorI3([], a, b), }; diff --git a/packages/shader-ast-js/src/env/ivec4.ts b/packages/shader-ast-js/src/env/ivec4.ts index abf43a942a..277c7e7085 100644 --- a/packages/shader-ast-js/src/env/ivec4.ts +++ b/packages/shader-ast-js/src/env/ivec4.ts @@ -14,7 +14,7 @@ import { mulNI4, rshiftI4, subI4, - subNI4 + subNI4, } from "@thi.ng/vectors"; import { VEC4 } from "./vec4"; import type { JSBuiltinsIntVec } from "../api"; @@ -41,5 +41,5 @@ export const IVEC4: JSBuiltinsIntVec = { bitnot1: (a) => bitNotI4([], a), bitor: (a, b) => bitOrI4([], a, b), rshift: (a, b) => rshiftI4([], a, b), - bitxor: (a, b) => bitXorI4([], a, b) + bitxor: (a, b) => bitXorI4([], a, b), }; diff --git a/packages/shader-ast-js/src/env/mat2.ts b/packages/shader-ast-js/src/env/mat2.ts index 0ef6f871df..b38015909a 100644 --- a/packages/shader-ast-js/src/env/mat2.ts +++ b/packages/shader-ast-js/src/env/mat2.ts @@ -9,7 +9,7 @@ import { mulV22, mulVM22, sub22, - subN22 + subN22, } from "@thi.ng/matrices"; import { neg } from "@thi.ng/vectors"; import type { JSBuiltinsMat } from "../api"; @@ -32,5 +32,5 @@ export const MAT2: JSBuiltinsMat = { sub: (a, b) => sub22([], a, b), sub1: (a) => neg([], a), subnv: (a, b) => sub22(null, [a, a, a, a], b), - subvn: (a, b) => subN22([], a, b) + subvn: (a, b) => subN22([], a, b), }; diff --git a/packages/shader-ast-js/src/env/mat3.ts b/packages/shader-ast-js/src/env/mat3.ts index 1131788f9b..9632cbb403 100644 --- a/packages/shader-ast-js/src/env/mat3.ts +++ b/packages/shader-ast-js/src/env/mat3.ts @@ -9,7 +9,7 @@ import { mulV33, mulVM33, sub33, - subN33 + subN33, } from "@thi.ng/matrices"; import { neg, vecOf } from "@thi.ng/vectors"; import type { JSBuiltinsMat } from "../api"; @@ -32,5 +32,5 @@ export const MAT3: JSBuiltinsMat = { sub: (a, b) => sub33([], a, b), sub1: (a) => neg([], a), subnv: (a, b) => sub33(null, vecOf(9, a), b), - subvn: (a, b) => subN33([], a, b) + subvn: (a, b) => subN33([], a, b), }; diff --git a/packages/shader-ast-js/src/env/mat4.ts b/packages/shader-ast-js/src/env/mat4.ts index bf5af27dc8..16437213b8 100644 --- a/packages/shader-ast-js/src/env/mat4.ts +++ b/packages/shader-ast-js/src/env/mat4.ts @@ -9,7 +9,7 @@ import { mulV44, mulVM44, sub44, - subN44 + subN44, } from "@thi.ng/matrices"; import { neg, vecOf } from "@thi.ng/vectors"; import type { JSBuiltinsMat } from "../api"; @@ -32,5 +32,5 @@ export const MAT4: JSBuiltinsMat = { sub: (a, b) => sub44([], a, b), sub1: (a) => neg([], a), subnv: (a, b) => sub44(null, vecOf(16, a), b), - subvn: (a, b) => subN44([], a, b) + subvn: (a, b) => subN44([], a, b), }; diff --git a/packages/shader-ast-js/src/env/uint.ts b/packages/shader-ast-js/src/env/uint.ts index 0569cba866..e4a35ceedf 100644 --- a/packages/shader-ast-js/src/env/uint.ts +++ b/packages/shader-ast-js/src/env/uint.ts @@ -20,5 +20,5 @@ export const UINT: JSBuiltinsInt = { rshift: (a, b) => a >>> b, sign: Math.sign, sub: (a, b) => (a - b) >>> 0, - sub1: (a) => -a >>> 0 + sub1: (a) => -a >>> 0, }; diff --git a/packages/shader-ast-js/src/env/uvec2.ts b/packages/shader-ast-js/src/env/uvec2.ts index 40eb2bac4f..aafb0c4fcb 100644 --- a/packages/shader-ast-js/src/env/uvec2.ts +++ b/packages/shader-ast-js/src/env/uvec2.ts @@ -14,7 +14,7 @@ import { mulU2, rshiftU2, subNU2, - subU2 + subU2, } from "@thi.ng/vectors"; import { VEC2 } from "./vec2"; import type { JSBuiltinsIntVec } from "../api"; @@ -41,5 +41,5 @@ export const UVEC2: JSBuiltinsIntVec = { bitnot1: (a) => bitNotU2([], a), bitor: (a, b) => bitOrU2([], a, b), rshift: (a, b) => rshiftU2([], a, b), - bitxor: (a, b) => bitXorU2([], a, b) + bitxor: (a, b) => bitXorU2([], a, b), }; diff --git a/packages/shader-ast-js/src/env/uvec3.ts b/packages/shader-ast-js/src/env/uvec3.ts index e44309b4bc..3cd091f44d 100644 --- a/packages/shader-ast-js/src/env/uvec3.ts +++ b/packages/shader-ast-js/src/env/uvec3.ts @@ -14,7 +14,7 @@ import { mulU3, rshiftU3, subNU3, - subU3 + subU3, } from "@thi.ng/vectors"; import { VEC3 } from "./vec3"; import type { JSBuiltinsIntVec } from "../api"; @@ -41,5 +41,5 @@ export const UVEC3: JSBuiltinsIntVec = { bitnot1: (a) => bitNotU3([], a), bitor: (a, b) => bitOrU3([], a, b), rshift: (a, b) => rshiftU3([], a, b), - bitxor: (a, b) => bitXorU3([], a, b) + bitxor: (a, b) => bitXorU3([], a, b), }; diff --git a/packages/shader-ast-js/src/env/uvec4.ts b/packages/shader-ast-js/src/env/uvec4.ts index 708d5238c9..1d9f47ed1f 100644 --- a/packages/shader-ast-js/src/env/uvec4.ts +++ b/packages/shader-ast-js/src/env/uvec4.ts @@ -14,7 +14,7 @@ import { mulU4, rshiftU4, subNU4, - subU4 + subU4, } from "@thi.ng/vectors"; import { VEC4 } from "./vec4"; import type { JSBuiltinsIntVec } from "../api"; @@ -41,5 +41,5 @@ export const UVEC4: JSBuiltinsIntVec = { bitnot1: (a) => bitNotU4([], a), bitor: (a, b) => bitOrU4([], a, b), rshift: (a, b) => rshiftU4([], a, b), - bitxor: (a, b) => bitXorU4([], a, b) + bitxor: (a, b) => bitXorU4([], a, b), }; diff --git a/packages/shader-ast-js/src/env/vec2.ts b/packages/shader-ast-js/src/env/vec2.ts index 37e6ed28ed..58c57a5ea3 100644 --- a/packages/shader-ast-js/src/env/vec2.ts +++ b/packages/shader-ast-js/src/env/vec2.ts @@ -45,7 +45,7 @@ import { sub2, subN2, tan2, - ZERO2 + ZERO2, } from "@thi.ng/vectors"; import type { JSBuiltinsVec } from "../api"; @@ -104,5 +104,5 @@ export const VEC2: JSBuiltinsVec = { sub1: (a) => neg([], a), subnv: (a, b) => sub2(null, [a, a], b), subvn: (a, b) => subN2([], a, b), - tan: (a) => tan2([], a) + tan: (a) => tan2([], a), }; diff --git a/packages/shader-ast-js/src/env/vec3.ts b/packages/shader-ast-js/src/env/vec3.ts index 9129da495f..928d8de988 100644 --- a/packages/shader-ast-js/src/env/vec3.ts +++ b/packages/shader-ast-js/src/env/vec3.ts @@ -46,7 +46,7 @@ import { sub3, subN3, tan3, - ZERO3 + ZERO3, } from "@thi.ng/vectors"; import type { JSBuiltinsVec3 } from "../api"; @@ -106,5 +106,5 @@ export const VEC3: JSBuiltinsVec3 = { sub1: (a) => neg([], a), subnv: (a, b) => sub3(null, [a, a, a], b), subvn: (a, b) => subN3([], a, b), - tan: (a) => tan3([], a) + tan: (a) => tan3([], a), }; diff --git a/packages/shader-ast-js/src/env/vec4.ts b/packages/shader-ast-js/src/env/vec4.ts index 1055dac860..c25b73faca 100644 --- a/packages/shader-ast-js/src/env/vec4.ts +++ b/packages/shader-ast-js/src/env/vec4.ts @@ -45,7 +45,7 @@ import { sub4, subN4, tan4, - ZERO4 + ZERO4, } from "@thi.ng/vectors"; import type { JSBuiltinsVec } from "../api"; @@ -104,5 +104,5 @@ export const VEC4: JSBuiltinsVec = { sub1: (a) => neg([], a), subnv: (a, b) => sub4(null, [a, a, a, a], b), subvn: (a, b) => subN4([], a, b), - tan: (a) => tan4([], a) + tan: (a) => tan4([], a), }; diff --git a/packages/shader-ast-js/src/target.ts b/packages/shader-ast-js/src/target.ts index 26b18a012f..44c8746c73 100644 --- a/packages/shader-ast-js/src/target.ts +++ b/packages/shader-ast-js/src/target.ts @@ -13,7 +13,7 @@ import { Scope, Swizzle, Sym, - Term + Term, } from "@thi.ng/shader-ast"; import { JS_DEFAULT_ENV } from "./env"; import type { Fn } from "@thi.ng/api"; @@ -26,7 +26,7 @@ const CMP_OPS: Partial> = { "==": "eq", "!=": "neq", ">=": "gte", - ">": "gt" + ">": "gt", }; const OP_IDS: Record = { ...(CMP_OPS), @@ -44,7 +44,7 @@ const OP_IDS: Record = { "^": "bitxor", "~": "bitnot", "<<": "lshift", - ">>": "rshift" + ">>": "rshift", }; const PRELUDE = [ @@ -67,7 +67,7 @@ const PRELUDE = [ "sampler3D", "samplerCube", "sampler2DShadow", - "samplerCubeShadow" + "samplerCubeShadow", ] .map((x) => `const ${x} = env.${x};`) .join("\n"); @@ -243,7 +243,7 @@ export const targetJS = () => { ternary: (t) => `(${emit(t.test)} ? ${emit(t.t)} : ${emit(t.f)})`, - while: (t) => `while (${emit(t.test)}) ${emit(t.scope)}` + while: (t) => `while (${emit(t.test)}) ${emit(t.scope)}`, }); Object.assign(emit, { @@ -253,7 +253,7 @@ export const targetJS = () => { "env", [PRELUDE, emit(tree), "return {", exports, "};"].join("\n") )(env); - } + }, }); return emit; diff --git a/packages/shader-ast-stdlib/CHANGELOG.md b/packages/shader-ast-stdlib/CHANGELOG.md index 68c56bbb09..87ae2c6c19 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.3.23](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast-stdlib@0.3.22...@thi.ng/shader-ast-stdlib@0.3.23) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/shader-ast-stdlib + + + + + ## [0.3.22](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast-stdlib@0.3.21...@thi.ng/shader-ast-stdlib@0.3.22) (2020-06-01) **Note:** Version bump only for package @thi.ng/shader-ast-stdlib diff --git a/packages/shader-ast-stdlib/package.json b/packages/shader-ast-stdlib/package.json index 90274938eb..f04385d546 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.3.22", + "version": "0.3.23", "description": "Function collection for modular GPGPU / shader programming with @thi.ng/shader-ast", "module": "./index.js", "main": "./lib/index.js", @@ -43,7 +43,7 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/shader-ast": "^0.3.23", + "@thi.ng/shader-ast": "^0.3.24", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/shader-ast-stdlib/src/color/linear-srgb.ts b/packages/shader-ast-stdlib/src/color/linear-srgb.ts index 995fd50139..d1ceb3cba2 100644 --- a/packages/shader-ast-stdlib/src/color/linear-srgb.ts +++ b/packages/shader-ast-stdlib/src/color/linear-srgb.ts @@ -6,7 +6,7 @@ import { Term, vec2, vec3, - vec4 + vec4, } from "@thi.ng/shader-ast"; const GAMMA = float(2.2); @@ -16,7 +16,7 @@ const $ = (t: Term, x: FloatTerm): Term => { float: x, vec2: vec2(x), vec3: vec3(x), - vec4: vec4(x, x, x, 1) + vec4: vec4(x, x, x, 1), }[t.type]; /** diff --git a/packages/shader-ast-stdlib/src/color/porter-duff.ts b/packages/shader-ast-stdlib/src/color/porter-duff.ts index 29c672f655..eeef2597f6 100644 --- a/packages/shader-ast-stdlib/src/color/porter-duff.ts +++ b/packages/shader-ast-stdlib/src/color/porter-duff.ts @@ -9,7 +9,7 @@ import { ret, sub, vec4, - Vec4Sym + Vec4Sym, } from "@thi.ng/shader-ast"; import { clamp01 } from "../math/clamp"; import type { Fn2 } from "@thi.ng/api"; @@ -53,7 +53,7 @@ export const porterDuff = ( srcZero && destZero ? vec4() : clamp01(srcZero ? dest : destZero ? src : add(src, dest)) - ) + ), ]; }); diff --git a/packages/shader-ast-stdlib/src/fog/exp.ts b/packages/shader-ast-stdlib/src/fog/exp.ts index 5d5e9bbaef..7bdc8410d4 100644 --- a/packages/shader-ast-stdlib/src/fog/exp.ts +++ b/packages/shader-ast-stdlib/src/fog/exp.ts @@ -1,12 +1,4 @@ -import { - defn, - exp, - FLOAT1, - mul, - neg, - ret, - sub -} from "@thi.ng/shader-ast"; +import { defn, exp, FLOAT1, mul, neg, ret, sub } from "@thi.ng/shader-ast"; import { clamp01 } from "../math/clamp"; /** diff --git a/packages/shader-ast-stdlib/src/fog/exp2.ts b/packages/shader-ast-stdlib/src/fog/exp2.ts index c7fe349bdf..e6e2531609 100644 --- a/packages/shader-ast-stdlib/src/fog/exp2.ts +++ b/packages/shader-ast-stdlib/src/fog/exp2.ts @@ -1,12 +1,4 @@ -import { - assign, - defn, - exp2, - FLOAT1, - mul, - ret, - sub -} from "@thi.ng/shader-ast"; +import { assign, defn, exp2, FLOAT1, mul, ret, sub } from "@thi.ng/shader-ast"; import { clamp01 } from "../math/clamp"; /** @@ -23,6 +15,8 @@ export const fogExp2 = defn( ["float", "float"], (dist, density) => [ assign(density, mul(density, dist)), - ret(sub(FLOAT1, clamp01(exp2(mul(mul(density, density), -Math.LOG2E))))) + ret( + sub(FLOAT1, clamp01(exp2(mul(mul(density, density), -Math.LOG2E)))) + ), ] ); diff --git a/packages/shader-ast-stdlib/src/light/lambert.ts b/packages/shader-ast-stdlib/src/light/lambert.ts index bb04f074c7..af1098db6f 100644 --- a/packages/shader-ast-stdlib/src/light/lambert.ts +++ b/packages/shader-ast-stdlib/src/light/lambert.ts @@ -5,7 +5,7 @@ import { madd, max, mul, - Vec3Term + Vec3Term, } from "@thi.ng/shader-ast"; import { fit1101 } from "../math/fit"; diff --git a/packages/shader-ast-stdlib/src/light/trilight.ts b/packages/shader-ast-stdlib/src/light/trilight.ts index 6cfba48658..0711a0f710 100644 --- a/packages/shader-ast-stdlib/src/light/trilight.ts +++ b/packages/shader-ast-stdlib/src/light/trilight.ts @@ -11,7 +11,7 @@ import { neg, ret, sub, - sym + sym, } from "@thi.ng/shader-ast"; /** @@ -38,7 +38,7 @@ export const trilight = defn( add(mul(c1, max(d, FLOAT0)), mul(c2, sub(FLOAT1, abs(d)))), mul(c3, max(dot(neg(n), l), FLOAT0)) ) - ) + ), ]; } ); diff --git a/packages/shader-ast-stdlib/src/math/additive.ts b/packages/shader-ast-stdlib/src/math/additive.ts index 994719efbd..4c88dc7022 100644 --- a/packages/shader-ast-stdlib/src/math/additive.ts +++ b/packages/shader-ast-stdlib/src/math/additive.ts @@ -14,7 +14,7 @@ import { Prim, ret, sym, - Term + Term, } from "@thi.ng/shader-ast"; import type { Fn } from "@thi.ng/api"; @@ -62,9 +62,9 @@ export const additive = ( ) ), assign(amp, mul(amp, decay)), - assign(pos, mul(pos, 2)) + assign(pos, mul(pos, 2)), ] ), - ret(n) + ret(n), ]; }); diff --git a/packages/shader-ast-stdlib/src/math/cartesian.ts b/packages/shader-ast-stdlib/src/math/cartesian.ts index e0f13f4f80..a824121f2c 100644 --- a/packages/shader-ast-stdlib/src/math/cartesian.ts +++ b/packages/shader-ast-stdlib/src/math/cartesian.ts @@ -9,7 +9,7 @@ import { sym, Vec2Sym, Vec2Term, - vec3 + vec3, } from "@thi.ng/shader-ast"; import { cossin } from "./sincos"; @@ -42,6 +42,6 @@ export const cartesian3 = defn("vec3", "cartesian3", ["vec3"], (v) => { mul(mul(r, $x(t)), $y(p)), mul(r, $y(t)) ) - ) + ), ]; }); diff --git a/packages/shader-ast-stdlib/src/math/clamp.ts b/packages/shader-ast-stdlib/src/math/clamp.ts index d88fbd1f39..4ed91c0f98 100644 --- a/packages/shader-ast-stdlib/src/math/clamp.ts +++ b/packages/shader-ast-stdlib/src/math/clamp.ts @@ -9,7 +9,7 @@ import { vec3, Vec3Term, vec4, - Vec4Term + Vec4Term, } from "@thi.ng/shader-ast"; const __clamp = (min: number, max: number) => ( diff --git a/packages/shader-ast-stdlib/src/math/cross2.ts b/packages/shader-ast-stdlib/src/math/cross2.ts index d45137ca59..5f7d30104c 100644 --- a/packages/shader-ast-stdlib/src/math/cross2.ts +++ b/packages/shader-ast-stdlib/src/math/cross2.ts @@ -1,11 +1,4 @@ -import { - $x, - $y, - FloatTerm, - mul, - sub, - Vec2Term -} from "@thi.ng/shader-ast"; +import { $x, $y, FloatTerm, mul, sub, Vec2Term } from "@thi.ng/shader-ast"; /** * Inline function. Computes 2D cross product of given vectors. diff --git a/packages/shader-ast-stdlib/src/math/dist-chebyshev.ts b/packages/shader-ast-stdlib/src/math/dist-chebyshev.ts index 8c5e506998..57e2070c4a 100644 --- a/packages/shader-ast-stdlib/src/math/dist-chebyshev.ts +++ b/packages/shader-ast-stdlib/src/math/dist-chebyshev.ts @@ -8,7 +8,7 @@ import { sub, Vec2Term, Vec3Term, - Vec4Term + Vec4Term, } from "@thi.ng/shader-ast"; export const distChebyshev2 = ( diff --git a/packages/shader-ast-stdlib/src/math/dist-manhattan.ts b/packages/shader-ast-stdlib/src/math/dist-manhattan.ts index 617d01c2dc..1a9b38ab74 100644 --- a/packages/shader-ast-stdlib/src/math/dist-manhattan.ts +++ b/packages/shader-ast-stdlib/src/math/dist-manhattan.ts @@ -8,7 +8,7 @@ import { sub, Vec2Term, Vec3Term, - Vec4Term + Vec4Term, } from "@thi.ng/shader-ast"; export const distManhattan2 = ( diff --git a/packages/shader-ast-stdlib/src/math/fit.ts b/packages/shader-ast-stdlib/src/math/fit.ts index 370d2ef29e..cfe185f44d 100644 --- a/packages/shader-ast-stdlib/src/math/fit.ts +++ b/packages/shader-ast-stdlib/src/math/fit.ts @@ -14,7 +14,7 @@ import { ret, sub, Term, - ternary + ternary, } from "@thi.ng/shader-ast"; /** diff --git a/packages/shader-ast-stdlib/src/math/magsq.ts b/packages/shader-ast-stdlib/src/math/magsq.ts index 05d6ce8fbe..b18363d9db 100644 --- a/packages/shader-ast-stdlib/src/math/magsq.ts +++ b/packages/shader-ast-stdlib/src/math/magsq.ts @@ -1,13 +1,13 @@ import { defn, dot, ret } from "@thi.ng/shader-ast"; export const magSq2 = defn("float", "magSq2", ["vec2"], (v) => [ - ret(dot(v, v)) + ret(dot(v, v)), ]); export const magSq3 = defn("float", "magSq3", ["vec3"], (v) => [ - ret(dot(v, v)) + ret(dot(v, v)), ]); export const magSq4 = defn("float", "magSq4", ["vec4"], (v) => [ - ret(dot(v, v)) + ret(dot(v, v)), ]); diff --git a/packages/shader-ast-stdlib/src/math/maxcomp.ts b/packages/shader-ast-stdlib/src/math/maxcomp.ts index 2a61da98c7..499d0d09df 100644 --- a/packages/shader-ast-stdlib/src/math/maxcomp.ts +++ b/packages/shader-ast-stdlib/src/math/maxcomp.ts @@ -6,7 +6,7 @@ import { max, Vec2Sym, Vec3Sym, - Vec4Sym + Vec4Sym, } from "@thi.ng/shader-ast"; /** diff --git a/packages/shader-ast-stdlib/src/math/mincomp.ts b/packages/shader-ast-stdlib/src/math/mincomp.ts index 4975f026d0..65409a9955 100644 --- a/packages/shader-ast-stdlib/src/math/mincomp.ts +++ b/packages/shader-ast-stdlib/src/math/mincomp.ts @@ -6,7 +6,7 @@ import { min, Vec2Sym, Vec3Sym, - Vec4Sym + Vec4Sym, } from "@thi.ng/shader-ast"; /** diff --git a/packages/shader-ast-stdlib/src/math/orthogonal.ts b/packages/shader-ast-stdlib/src/math/orthogonal.ts index b5a69f5786..35f28b36e7 100644 --- a/packages/shader-ast-stdlib/src/math/orthogonal.ts +++ b/packages/shader-ast-stdlib/src/math/orthogonal.ts @@ -10,7 +10,7 @@ import { ternary, vec2, Vec2Term, - vec3 + vec3, } from "@thi.ng/shader-ast"; /** @@ -41,5 +41,5 @@ export const orthogonal3 = defn("vec3", "orthogonal3", ["vec3"], (v) => [ vec3(neg($y(v)), $x(v), 0), vec3(0, neg($z(v)), $y(v)) ) - ) + ), ]); diff --git a/packages/shader-ast-stdlib/src/math/polar.ts b/packages/shader-ast-stdlib/src/math/polar.ts index b68480be5d..83dfbb4305 100644 --- a/packages/shader-ast-stdlib/src/math/polar.ts +++ b/packages/shader-ast-stdlib/src/math/polar.ts @@ -11,7 +11,7 @@ import { ret, sym, vec2, - vec3 + vec3, } from "@thi.ng/shader-ast"; /** @@ -21,7 +21,7 @@ import { * @param v - */ export const polar2 = defn("vec2", "polar2", ["vec2"], (v) => [ - ret(vec2(length(v), atan(div($y(v), $x(v))))) + ret(vec2(length(v), atan(div($y(v), $x(v))))), ]); /** @@ -35,6 +35,6 @@ export const polar3 = defn("vec3", "polar3", ["vec3"], (v) => { let r: FloatSym; return [ (r = sym(length(v))), - ret(vec3(r, asin(div($z(v), r)), atan(div($y(v), $x(v))))) + ret(vec3(r, asin(div($z(v), r)), atan(div($y(v), $x(v))))), ]; }); diff --git a/packages/shader-ast-stdlib/src/math/sincos.ts b/packages/shader-ast-stdlib/src/math/sincos.ts index 49ad76a9e5..ad8d184950 100644 --- a/packages/shader-ast-stdlib/src/math/sincos.ts +++ b/packages/shader-ast-stdlib/src/math/sincos.ts @@ -1,9 +1,4 @@ -import { - cos, - FloatTerm, - sin, - vec2 -} from "@thi.ng/shader-ast"; +import { cos, FloatTerm, sin, vec2 } from "@thi.ng/shader-ast"; /** * Inline function. Returns vec2(sin(x), cos(x)). diff --git a/packages/shader-ast-stdlib/src/matrix/convert.ts b/packages/shader-ast-stdlib/src/matrix/convert.ts index 02219c07dd..1aa69f0194 100644 --- a/packages/shader-ast-stdlib/src/matrix/convert.ts +++ b/packages/shader-ast-stdlib/src/matrix/convert.ts @@ -5,12 +5,12 @@ import { mat4, ret, vec3, - vec4 + vec4, } from "@thi.ng/shader-ast"; export const m22ToM33 = defn("mat3", "m22ToM33", ["mat2"], (m) => { return [ - ret(mat3(vec3(indexMat(m, 0), 0), vec3(indexMat(m, 1), 0), vec3())) + ret(mat3(vec3(indexMat(m, 0), 0), vec3(indexMat(m, 1), 0), vec3())), ]; }); @@ -23,6 +23,6 @@ export const m33ToM44 = defn("mat4", "m33ToM44", ["mat3"], (m) => { vec4(indexMat(m, 2), 0), vec4() ) - ) + ), ]; }); diff --git a/packages/shader-ast-stdlib/src/matrix/lookat.ts b/packages/shader-ast-stdlib/src/matrix/lookat.ts index 6d3736d171..275e9a2b0f 100644 --- a/packages/shader-ast-stdlib/src/matrix/lookat.ts +++ b/packages/shader-ast-stdlib/src/matrix/lookat.ts @@ -9,7 +9,7 @@ import { sub, sym, Vec3Sym, - vec4 + vec4, } from "@thi.ng/shader-ast"; /** @@ -39,7 +39,7 @@ export const lookat = defn( vec4(z, neg(dot(eye, z))), vec4(0, 0, 0, 1) ) - ) + ), ]; } ); diff --git a/packages/shader-ast-stdlib/src/matrix/mvp.ts b/packages/shader-ast-stdlib/src/matrix/mvp.ts index c0054a5d6b..761edafd3b 100644 --- a/packages/shader-ast-stdlib/src/matrix/mvp.ts +++ b/packages/shader-ast-stdlib/src/matrix/mvp.ts @@ -1,10 +1,4 @@ -import { - FLOAT1, - Mat4Term, - mul, - Vec3Term, - vec4 -} from "@thi.ng/shader-ast"; +import { FLOAT1, Mat4Term, mul, Vec3Term, vec4 } from "@thi.ng/shader-ast"; /** * Inline function. Multiplies `pos` with given model, view & projection diff --git a/packages/shader-ast-stdlib/src/matrix/normal.ts b/packages/shader-ast-stdlib/src/matrix/normal.ts index d706416fcc..f6a92e3868 100644 --- a/packages/shader-ast-stdlib/src/matrix/normal.ts +++ b/packages/shader-ast-stdlib/src/matrix/normal.ts @@ -4,7 +4,7 @@ import { mul, normalize, Vec3Term, - vec4 + vec4, } from "@thi.ng/shader-ast"; /** diff --git a/packages/shader-ast-stdlib/src/matrix/rotation.ts b/packages/shader-ast-stdlib/src/matrix/rotation.ts index 087ca491d7..3ea52ce7e8 100644 --- a/packages/shader-ast-stdlib/src/matrix/rotation.ts +++ b/packages/shader-ast-stdlib/src/matrix/rotation.ts @@ -17,7 +17,7 @@ import { sub, sym, Vec2Term, - vec3 + vec3, } from "@thi.ng/shader-ast"; import { perpendicularCCW } from "../math/orthogonal"; import { cossin } from "../math/sincos"; @@ -32,7 +32,7 @@ export const rotationX3 = defn("mat3", "rotationX3", ["float"], (theta) => { let cs: Vec2Term; return [ (cs = sym(cossin(theta))), - ret(mat3(1, 0, 0, 0, $x(cs), $y(cs), 0, neg($y(cs)), $x(cs))) + ret(mat3(1, 0, 0, 0, $x(cs), $y(cs), 0, neg($y(cs)), $x(cs))), ]; }); @@ -40,7 +40,7 @@ export const rotationY3 = defn("mat3", "rotationY3", ["float"], (theta) => { let cs: Vec2Term; return [ (cs = sym(cossin(theta))), - ret(mat3($x(cs), 0, neg($y(cs)), 0, 1, 0, $y(cs), 0, $x(cs))) + ret(mat3($x(cs), 0, neg($y(cs)), 0, 1, 0, $y(cs), 0, $x(cs))), ]; }); @@ -48,7 +48,7 @@ export const rotationZ3 = defn("mat3", "rotationZ3", ["float"], (theta) => { let cs: Vec2Term; return [ (cs = sym(cossin(theta))), - ret(mat3($x(cs), $y(cs), 0, neg($y(cs)), $x(cs), 0, 0, 0, 1)) + ret(mat3($x(cs), $y(cs), 0, neg($y(cs)), $x(cs), 0, 0, 0, 1)), ]; }); @@ -75,7 +75,7 @@ export const rotationX4 = defn("mat4", "rotationX4", ["float"], (theta) => { 0, 1 ) - ) + ), ]; }); @@ -102,7 +102,7 @@ export const rotationY4 = defn("mat4", "rotationY4", ["float"], (theta) => { 0, 1 ) - ) + ), ]; }); @@ -129,7 +129,7 @@ export const rotationZ4 = defn("mat4", "rotationZ4", ["float"], (theta) => { 0, 1 ) - ) + ), ]; }); @@ -160,7 +160,7 @@ export const rotationAroundAxis3 = defn( $$($y(axis), neg($z(axis)), 1, $x(axis), s, c, s), $$($z(axis), $y(axis), neg($x(axis)), 1, s, s, c) ) - ) + ), ]; } ); diff --git a/packages/shader-ast-stdlib/src/noise/curl3.ts b/packages/shader-ast-stdlib/src/noise/curl3.ts index dbf94087bc..f07a80991d 100644 --- a/packages/shader-ast-stdlib/src/noise/curl3.ts +++ b/packages/shader-ast-stdlib/src/noise/curl3.ts @@ -13,7 +13,7 @@ import { vec2, Vec2Sym, vec3, - Vec3Sym + Vec3Sym, } from "@thi.ng/shader-ast"; import { snoiseVec3 } from "./simplex3"; @@ -46,7 +46,7 @@ export const curlNoise3 = defn( ), mul(2, e) ) - ) + ), ]; } ); diff --git a/packages/shader-ast-stdlib/src/noise/hash.ts b/packages/shader-ast-stdlib/src/noise/hash.ts index da345115c7..9256303b5e 100644 --- a/packages/shader-ast-stdlib/src/noise/hash.ts +++ b/packages/shader-ast-stdlib/src/noise/hash.ts @@ -18,7 +18,7 @@ import { vec3, Vec3Sym, vec4, - Vec4Sym + Vec4Sym, } from "@thi.ng/shader-ast"; /** @@ -27,7 +27,7 @@ import { * @param p - */ export const hash2 = defn("vec2", "hash2", ["vec2"], (p) => [ - ret(fract(mul(sin(mul(p, mat2(127.1, 311.7, 269.5, 183.3))), 43758.5453))) + ret(fract(mul(sin(mul(p, mat2(127.1, 311.7, 269.5, 183.3))), 43758.5453))), ]); /** @@ -49,7 +49,7 @@ export const hash3 = defn("vec3", "hash3", ["vec2"], (p) => [ 43758.5453 ) ) - ) + ), ]); const H = vec3(0.1031, 0.103, 0.0973); @@ -68,7 +68,7 @@ export const hash11 = defn("float", "hash11", ["float"], (p) => { (x = sym(fract(mul(p, 0.1031)))), assign(x, mul(x, add(x, 19.19))), assign(x, mul(x, add(x, x))), - ret(fract(x)) + ret(fract(x)), ]; }); @@ -84,7 +84,7 @@ export const hash12 = defn("float", "hash12", ["vec2"], (p) => { return [ (x = sym(fract(mul($(p, "xyx"), 0.1031)))), assign(x, add(x, dot(x, add($(x, "yzx"), 19.19)))), - ret(fract(mul(add($x(x), $y(x)), $z(x)))) + ret(fract(mul(add($x(x), $y(x)), $z(x)))), ]; }); @@ -100,7 +100,7 @@ export const hash13 = defn("float", "hash13", ["vec3"], (p) => { return [ (x = sym(fract(mul($(p, "xyx"), 0.1031)))), assign(x, add(x, dot(x, add($(x, "yzx"), 19.19)))), - ret(fract(mul(add($x(x), $y(x)), $z(x)))) + ret(fract(mul(add($x(x), $y(x)), $z(x)))), ]; }); @@ -116,7 +116,7 @@ export const hash21 = defn("vec2", "hash21", ["float"], (p) => { return [ (x = sym(fract(mul(vec3(p), H)))), assign(x, add(x, dot(x, add($(x, "yzx"), 19.19)))), - ret(fract(mul(add($(x, "xx"), $(x, "yz")), $(x, "zy")))) + ret(fract(mul(add($(x, "xx"), $(x, "yz")), $(x, "zy")))), ]; }); @@ -132,7 +132,7 @@ export const hash22 = defn("vec2", "hash22", ["vec2"], (p) => { return [ (x = sym(fract(mul($(p, "xyx"), H)))), assign(x, add(x, dot(x, add($(x, "yzx"), 19.19)))), - ret(fract(mul(add($(x, "xx"), $(x, "yz")), $(x, "zy")))) + ret(fract(mul(add($(x, "xx"), $(x, "yz")), $(x, "zy")))), ]; }); @@ -148,7 +148,7 @@ export const hash23 = defn("vec2", "hash23", ["vec3"], (p) => { return [ (x = sym(fract(mul(p, H)))), assign(x, add(x, dot(x, add($(x, "yzx"), 19.19)))), - ret(fract(mul(add($(x, "xx"), $(x, "yz")), $(x, "zy")))) + ret(fract(mul(add($(x, "xx"), $(x, "yz")), $(x, "zy")))), ]; }); @@ -164,7 +164,7 @@ export const hash31 = defn("vec3", "hash31", ["float"], (p) => { return [ (x = sym(fract(mul(p, H)))), assign(x, add(x, dot(x, add($(x, "yzx"), 19.19)))), - ret(fract(mul(add($(x, "xxy"), $(x, "yzz")), $(x, "zyx")))) + ret(fract(mul(add($(x, "xxy"), $(x, "yzz")), $(x, "zyx")))), ]; }); @@ -180,7 +180,7 @@ export const hash32 = defn("vec3", "hash32", ["vec2"], (p) => { return [ (x = sym(fract(mul($(p, "xyx"), H)))), assign(x, add(x, dot(x, add($(x, "yzx"), 19.19)))), - ret(fract(mul(add($(x, "xxy"), $(x, "yzz")), $(x, "zyx")))) + ret(fract(mul(add($(x, "xxy"), $(x, "yzz")), $(x, "zyx")))), ]; }); @@ -196,7 +196,7 @@ export const hash33 = defn("vec3", "hash33", ["vec3"], (p) => { return [ (x = sym(fract(mul(p, H)))), assign(x, add(x, dot(x, add($(x, "yzx"), 19.19)))), - ret(fract(mul(add($(x, "xxy"), $(x, "yzz")), $(x, "zyx")))) + ret(fract(mul(add($(x, "xxy"), $(x, "yzz")), $(x, "zyx")))), ]; }); @@ -212,7 +212,7 @@ export const hash41 = defn("vec4", "hash41", ["float"], (p) => { return [ (x = sym(fract(mul(p, H4)))), assign(x, add(x, dot(x, add($(x, "wzxy"), 19.19)))), - ret(fract(mul(add($(x, "xxyz"), $(x, "yzzw")), $(x, "zywx")))) + ret(fract(mul(add($(x, "xxyz"), $(x, "yzzw")), $(x, "zywx")))), ]; }); @@ -228,7 +228,7 @@ export const hash42 = defn("vec4", "hash42", ["vec2"], (p) => { return [ (x = sym(fract(mul($(p, "xyxy"), H4)))), assign(x, add(x, dot(x, add($(x, "wzxy"), 19.19)))), - ret(fract(mul(add($(x, "xxyz"), $(x, "yzzw")), $(x, "zywx")))) + ret(fract(mul(add($(x, "xxyz"), $(x, "yzzw")), $(x, "zywx")))), ]; }); @@ -244,7 +244,7 @@ export const hash43 = defn("vec4", "hash43", ["vec3"], (p) => { return [ (x = sym(fract(mul($(p, "xyzx"), H4)))), assign(x, add(x, dot(x, add($(x, "wzxy"), 19.19)))), - ret(fract(mul(add($(x, "xxyz"), $(x, "yzzw")), $(x, "zywx")))) + ret(fract(mul(add($(x, "xxyz"), $(x, "yzzw")), $(x, "zywx")))), ]; }); @@ -260,6 +260,6 @@ export const hash44 = defn("vec4", "hash44", ["vec4"], (p) => { return [ (x = sym(fract(mul(p, H4)))), assign(x, add(x, dot(x, add($(x, "wzxy"), 19.19)))), - ret(fract(mul(add($(x, "xxyz"), $(x, "yzzw")), $(x, "zywx")))) + ret(fract(mul(add($(x, "xxyz"), $(x, "yzzw")), $(x, "zywx")))), ]; }); diff --git a/packages/shader-ast-stdlib/src/noise/permute.ts b/packages/shader-ast-stdlib/src/noise/permute.ts index e4a6ff61b3..aef68c9b9f 100644 --- a/packages/shader-ast-stdlib/src/noise/permute.ts +++ b/packages/shader-ast-stdlib/src/noise/permute.ts @@ -6,12 +6,12 @@ import { mod, mul, Prim, - ret + ret, } from "@thi.ng/shader-ast"; const __permute = (type: T, suffix = "") => defn(type, `permute${suffix}`, [type], (v) => [ - ret(mod(mul(v, add(mul(v, float(34)), FLOAT1)), float(289))) + ret(mod(mul(v, add(mul(v, float(34)), FLOAT1)), float(289))), ]); export const permute = __permute("float"); diff --git a/packages/shader-ast-stdlib/src/noise/simplex2.ts b/packages/shader-ast-stdlib/src/noise/simplex2.ts index 226e02c9fd..d73e2904bd 100644 --- a/packages/shader-ast-stdlib/src/noise/simplex2.ts +++ b/packages/shader-ast-stdlib/src/noise/simplex2.ts @@ -26,7 +26,7 @@ import { vec3, Vec3Sym, vec4, - Vec4Sym + Vec4Sym, } from "@thi.ng/shader-ast"; import { magSq2 } from "../math/magsq"; import { permute3 } from "./permute"; @@ -102,6 +102,6 @@ export const snoise2 = defn("float", "snoise2", ["vec2"], (v) => { $(g, "yz"), add(mul($(a0, "yz"), $(x12, "xz")), mul($(h, "yz"), $(x12, "yw"))) ), - ret(mul(130, dot(m, g))) + ret(mul(130, dot(m, g))), ]; }); diff --git a/packages/shader-ast-stdlib/src/noise/simplex3.ts b/packages/shader-ast-stdlib/src/noise/simplex3.ts index 5fd0f2a114..a210a09c76 100644 --- a/packages/shader-ast-stdlib/src/noise/simplex3.ts +++ b/packages/shader-ast-stdlib/src/noise/simplex3.ts @@ -28,7 +28,7 @@ import { vec3, Vec3Sym, vec4, - Vec4Sym + Vec4Sym, } from "@thi.ng/shader-ast"; import { permute4 } from "./permute"; @@ -149,7 +149,7 @@ export const snoise3 = defn("float", "snoise3", ["vec3"], (v) => { vec4(dot(p0, x0), dot(p1, x1), dot(p2, x2), dot(p3, x3)) ) ) - ) + ), ]; }); @@ -165,6 +165,6 @@ export const snoiseVec3 = defn("vec3", "snoiseVec3", ["vec3"], (p) => { vec3(add($z(p), 74.2), sub($x(p), 124.5), add($y(p), 99.4)) ) ) - ) + ), ]; }); diff --git a/packages/shader-ast-stdlib/src/noise/voronoi2.ts b/packages/shader-ast-stdlib/src/noise/voronoi2.ts index 47c91d1b78..66898594f4 100644 --- a/packages/shader-ast-stdlib/src/noise/voronoi2.ts +++ b/packages/shader-ast-stdlib/src/noise/voronoi2.ts @@ -27,7 +27,7 @@ import { vec2, Vec2Sym, vec3, - Vec3Sym + Vec3Sym, } from "@thi.ng/shader-ast"; import { hash32 } from "./hash"; @@ -98,12 +98,12 @@ export const voronoise2 = defn( ) )), assign(va, madd(w, $z(o), va)), - assign(wt, add(wt, w)) + assign(wt, add(wt, w)), ] - ) + ), ] ), - ret(div(va, wt)) + ret(div(va, wt)), ]; } ); diff --git a/packages/shader-ast-stdlib/src/noise/worley2.ts b/packages/shader-ast-stdlib/src/noise/worley2.ts index 4b96ff629a..37f106b2c2 100644 --- a/packages/shader-ast-stdlib/src/noise/worley2.ts +++ b/packages/shader-ast-stdlib/src/noise/worley2.ts @@ -24,7 +24,7 @@ import { ternary, Vec2Sym, vec3, - Vec3Sym + Vec3Sym, } from "@thi.ng/shader-ast"; import { permute3 } from "./permute"; @@ -103,6 +103,6 @@ export const worley2 = (distFn: Func2<"vec3", "vec3", "vec3">) => ), assign($(d1, "yz"), min($(d1, "yz"), $(d2, "yz"))), assign($y(d1), min(min($y(d1), $z(d1)), $x(d2))), - ret(sqrt($xy(d1))) + ret(sqrt($xy(d1))), ]; }); diff --git a/packages/shader-ast-stdlib/src/raymarch/ao.ts b/packages/shader-ast-stdlib/src/raymarch/ao.ts index 59cfcdc127..71fea5dc5e 100644 --- a/packages/shader-ast-stdlib/src/raymarch/ao.ts +++ b/packages/shader-ast-stdlib/src/raymarch/ao.ts @@ -14,7 +14,7 @@ import { mul, ret, sub, - sym + sym, } from "@thi.ng/shader-ast"; import { clamp01 } from "../math/clamp"; import type { RaymarchScene } from "../api"; @@ -46,9 +46,9 @@ export const raymarchAO = (scene: RaymarchScene, numSamples = 5) => r, add(r, mul(w, sub(d0, $x(scene(add(p, mul(n, d0))))))) ), - assign(w, mul(w, FLOAT05)) + assign(w, mul(w, FLOAT05)), ] ), - ret(sub(FLOAT1, clamp01(r))) + ret(sub(FLOAT1, clamp01(r))), ]; }); diff --git a/packages/shader-ast-stdlib/src/raymarch/direction.ts b/packages/shader-ast-stdlib/src/raymarch/direction.ts index af31752a64..d0340df8de 100644 --- a/packages/shader-ast-stdlib/src/raymarch/direction.ts +++ b/packages/shader-ast-stdlib/src/raymarch/direction.ts @@ -11,7 +11,7 @@ import { sym, tan, Vec2Sym, - vec3 + vec3, } from "@thi.ng/shader-ast"; /** @@ -31,7 +31,7 @@ export const raymarchDir = defn( normalize( vec3(uv, neg(div($y(res), tan(div(radians(fov), FLOAT2))))) ) - ) + ), ]; } ); diff --git a/packages/shader-ast-stdlib/src/raymarch/normal.ts b/packages/shader-ast-stdlib/src/raymarch/normal.ts index f8f2ce02fa..c3052cc0e0 100644 --- a/packages/shader-ast-stdlib/src/raymarch/normal.ts +++ b/packages/shader-ast-stdlib/src/raymarch/normal.ts @@ -10,7 +10,7 @@ import { sym, vec2, Vec2Sym, - vec3 + vec3, } from "@thi.ng/shader-ast"; import type { RaymarchScene } from "../api"; @@ -30,6 +30,6 @@ export const raymarchNormal = (scene: RaymarchScene, name = "raymarchNormal") => sub($x(scene(add(p, $(dn, id)))), $x(scene(sub(p, $(dn, id))))); return [ (dn = sym(vec2(smooth, 0))), - ret(normalize(vec3(comp("xyy"), comp("yxy"), comp("yyx")))) + ret(normalize(vec3(comp("xyy"), comp("yxy"), comp("yyx")))), ]; }); diff --git a/packages/shader-ast-stdlib/src/raymarch/point-at.ts b/packages/shader-ast-stdlib/src/raymarch/point-at.ts index cf25468394..60c9f1c270 100644 --- a/packages/shader-ast-stdlib/src/raymarch/point-at.ts +++ b/packages/shader-ast-stdlib/src/raymarch/point-at.ts @@ -1,11 +1,4 @@ -import { - add, - FloatTerm, - mul, - normalize, - Term, - Vec -} from "@thi.ng/shader-ast"; +import { add, FloatTerm, mul, normalize, Term, Vec } from "@thi.ng/shader-ast"; /** * Inline function. Returns point on ray (`p`, `dir`) at distance `t`. diff --git a/packages/shader-ast-stdlib/src/raymarch/scene.ts b/packages/shader-ast-stdlib/src/raymarch/scene.ts index 374f59bc48..e485989a69 100644 --- a/packages/shader-ast-stdlib/src/raymarch/scene.ts +++ b/packages/shader-ast-stdlib/src/raymarch/scene.ts @@ -16,7 +16,7 @@ import { ret, sym, vec2, - Vec2Sym + Vec2Sym, } from "@thi.ng/shader-ast"; import { rayPointAt } from "./point-at"; import type { RaymarchOpts, RaymarchScene } from "../api"; @@ -49,7 +49,7 @@ export const raymarchScene = ( steps: 100, eps: 0.01, bias: 0.7, - ..._opts + ..._opts, }; return defn("vec2", opts.name, ["vec3", "vec3"], (pos, dir) => { let total: FloatSym; @@ -64,13 +64,13 @@ export const raymarchScene = ( () => [ assign(res, scene(rayPointAt(pos, dir, total))), ifThen(lt($x(res), float(opts.eps)), [ - ret(vec2(total, $y(res))) + ret(vec2(total, $y(res))), ]), assign(total, madd($x(res), float(opts.bias), total)), - ifThen(gt(total, float(opts.far)), [brk]) + ifThen(gt(total, float(opts.far)), [brk]), ] ), - ret(vec2(opts.far, 0)) + ret(vec2(opts.far, 0)), ]; }); }; diff --git a/packages/shader-ast-stdlib/src/screen/uv.ts b/packages/shader-ast-stdlib/src/screen/uv.ts index 1a7a1f8fba..b8931fff86 100644 --- a/packages/shader-ast-stdlib/src/screen/uv.ts +++ b/packages/shader-ast-stdlib/src/screen/uv.ts @@ -10,7 +10,7 @@ import { sym, Vec2Sym, Vec2Term, - Vec4Term + Vec4Term, } from "@thi.ng/shader-ast"; import { fit0111 } from "../math/fit"; @@ -40,7 +40,7 @@ export const aspectCorrectedUV = defn( return [ (uv = sym("vec2", fit0111(div(pos, res)))), assign($x(uv), mul($x(uv), div($x(res), $y(res)))), - ret(uv) + ret(uv), ]; } ); diff --git a/packages/shader-ast-stdlib/src/sdf/box.ts b/packages/shader-ast-stdlib/src/sdf/box.ts index 74e4d2e881..2b386a3db9 100644 --- a/packages/shader-ast-stdlib/src/sdf/box.ts +++ b/packages/shader-ast-stdlib/src/sdf/box.ts @@ -12,7 +12,7 @@ import { vec2, Vec2Sym, vec3, - Vec3Sym + Vec3Sym, } from "@thi.ng/shader-ast"; import { maxComp2, maxComp3 } from "../math/maxcomp"; @@ -22,18 +22,13 @@ import { maxComp2, maxComp3 } from "../math/maxcomp"; * @param p - vec2 * @param size - vec2 */ -export const sdfBox2 = defn( - "float", - "sdRect", - ["vec2", "vec2"], - (p, size) => { - let d: Vec2Sym; - return [ - (d = sym(sub(abs(p), size))), - ret(add(min(maxComp2(d), FLOAT0), length(max(d, vec2())))) - ]; - } -); +export const sdfBox2 = defn("float", "sdRect", ["vec2", "vec2"], (p, size) => { + let d: Vec2Sym; + return [ + (d = sym(sub(abs(p), size))), + ret(add(min(maxComp2(d), FLOAT0), length(max(d, vec2())))), + ]; +}); /** * Returns signed distance from `p` to centered AABB of `size`. @@ -41,15 +36,10 @@ export const sdfBox2 = defn( * @param p - vec3 * @param size - vec3 */ -export const sdfBox3 = defn( - "float", - "sdAABB", - ["vec3", "vec3"], - (p, size) => { - let d: Vec3Sym; - return [ - (d = sym(sub(abs(p), size))), - ret(add(min(maxComp3(d), FLOAT0), length(max(d, vec3())))) - ]; - } -); +export const sdfBox3 = defn("float", "sdAABB", ["vec3", "vec3"], (p, size) => { + let d: Vec3Sym; + return [ + (d = sym(sub(abs(p), size))), + ret(add(min(maxComp3(d), FLOAT0), length(max(d, vec3())))), + ]; +}); diff --git a/packages/shader-ast-stdlib/src/sdf/cylinder.ts b/packages/shader-ast-stdlib/src/sdf/cylinder.ts index 24c8b99a59..b277ea940f 100644 --- a/packages/shader-ast-stdlib/src/sdf/cylinder.ts +++ b/packages/shader-ast-stdlib/src/sdf/cylinder.ts @@ -12,7 +12,7 @@ import { sub, sym, vec2, - Vec2Sym + Vec2Sym, } from "@thi.ng/shader-ast"; import { maxComp2 } from "../math/maxcomp"; @@ -32,7 +32,7 @@ export const sdfCylinder = defn( let d: Vec2Sym; return [ (d = sym(sub(abs(vec2(length($(p, "xz")), $y(p))), vec2(h, r)))), - ret(add(min(maxComp2(d), FLOAT0), length(max(d, vec2())))) + ret(add(min(maxComp2(d), FLOAT0), length(max(d, vec2())))), ]; } ); diff --git a/packages/shader-ast-stdlib/src/sdf/line.ts b/packages/shader-ast-stdlib/src/sdf/line.ts index cc67749126..b50d01ab09 100644 --- a/packages/shader-ast-stdlib/src/sdf/line.ts +++ b/packages/shader-ast-stdlib/src/sdf/line.ts @@ -8,7 +8,7 @@ import { sub, Sym, sym, - Vec + Vec, } from "@thi.ng/shader-ast"; import { clamp01 } from "../math/clamp"; @@ -24,7 +24,7 @@ const line = (p: Sym, a: Sym, b: Sym) => { return [ (pa = sym(sub(p, a))), (ba = sym(sub(b, a))), - ret(length(sub(pa, mul(ba, clamp01(div(dot(pa, ba), dot(ba, ba))))))) + ret(length(sub(pa, mul(ba, clamp01(div(dot(pa, ba), dot(ba, ba))))))), ]; }; diff --git a/packages/shader-ast-stdlib/src/sdf/plane.ts b/packages/shader-ast-stdlib/src/sdf/plane.ts index b3717faf89..cfe67f4194 100644 --- a/packages/shader-ast-stdlib/src/sdf/plane.ts +++ b/packages/shader-ast-stdlib/src/sdf/plane.ts @@ -1,9 +1,4 @@ -import { - add, - defn, - dot, - ret -} from "@thi.ng/shader-ast"; +import { add, defn, dot, ret } from "@thi.ng/shader-ast"; /** * Returns signed distance from `p` to plane defined by `normal` and `w`. diff --git a/packages/shader-ast-stdlib/src/sdf/repeat.ts b/packages/shader-ast-stdlib/src/sdf/repeat.ts index b3cef4ad1c..5c3cbe7c04 100644 --- a/packages/shader-ast-stdlib/src/sdf/repeat.ts +++ b/packages/shader-ast-stdlib/src/sdf/repeat.ts @@ -1,11 +1,4 @@ -import { - defn, - FLOAT05, - mod, - mul, - ret, - sub -} from "@thi.ng/shader-ast"; +import { defn, FLOAT05, mod, mul, ret, sub } from "@thi.ng/shader-ast"; /** * Domain repetition by wrapping position `p` into period `c`. diff --git a/packages/shader-ast-stdlib/src/sdf/smooth-isec.ts b/packages/shader-ast-stdlib/src/sdf/smooth-isec.ts index 1e3a971ccb..49384cb482 100644 --- a/packages/shader-ast-stdlib/src/sdf/smooth-isec.ts +++ b/packages/shader-ast-stdlib/src/sdf/smooth-isec.ts @@ -8,7 +8,7 @@ import { mul, ret, sub, - sym + sym, } from "@thi.ng/shader-ast"; import { clamp01 } from "../math/clamp"; import { fit1101 } from "../math/fit"; @@ -25,7 +25,7 @@ export const sdfSmoothIntersect = defn( let h: FloatSym; return [ (h = sym(clamp01(fit1101(div(sub(b, a), k))))), - ret(add(mix(b, a, h), mul(mul(k, h), sub(FLOAT1, h)))) + ret(add(mix(b, a, h), mul(mul(k, h), sub(FLOAT1, h)))), ]; } ); diff --git a/packages/shader-ast-stdlib/src/sdf/smooth-sub.ts b/packages/shader-ast-stdlib/src/sdf/smooth-sub.ts index 3964c9f287..6112c8ff0d 100644 --- a/packages/shader-ast-stdlib/src/sdf/smooth-sub.ts +++ b/packages/shader-ast-stdlib/src/sdf/smooth-sub.ts @@ -9,7 +9,7 @@ import { neg, ret, sub, - sym + sym, } from "@thi.ng/shader-ast"; import { clamp01 } from "../math/clamp"; import { fit1101 } from "../math/fit"; @@ -26,7 +26,7 @@ export const sdfSmoothSubtract = defn( let h: FloatSym; return [ (h = sym(clamp01(fit1101(div(add(b, a), k))))), - ret(add(mix(b, neg(a), h), mul(mul(k, h), sub(FLOAT1, h)))) + ret(add(mix(b, neg(a), h), mul(mul(k, h), sub(FLOAT1, h)))), ]; } ); diff --git a/packages/shader-ast-stdlib/src/sdf/smooth-union.ts b/packages/shader-ast-stdlib/src/sdf/smooth-union.ts index 4a706efb0d..5845cf71a5 100644 --- a/packages/shader-ast-stdlib/src/sdf/smooth-union.ts +++ b/packages/shader-ast-stdlib/src/sdf/smooth-union.ts @@ -7,7 +7,7 @@ import { mul, ret, sub, - sym + sym, } from "@thi.ng/shader-ast"; import { clamp01 } from "../math/clamp"; import { fit1101 } from "../math/fit"; @@ -24,7 +24,7 @@ export const sdfSmoothUnion = defn( let h: FloatSym; return [ (h = sym(clamp01(fit1101(div(sub(b, a), k))))), - ret(sub(mix(b, a, h), mul(mul(k, h), sub(FLOAT1, h)))) + ret(sub(mix(b, a, h), mul(mul(k, h), sub(FLOAT1, h)))), ]; } ); diff --git a/packages/shader-ast-stdlib/src/sdf/sphere.ts b/packages/shader-ast-stdlib/src/sdf/sphere.ts index 6660869aac..648becaa88 100644 --- a/packages/shader-ast-stdlib/src/sdf/sphere.ts +++ b/packages/shader-ast-stdlib/src/sdf/sphere.ts @@ -1,9 +1,4 @@ -import { - defn, - length, - ret, - sub -} from "@thi.ng/shader-ast"; +import { defn, length, ret, sub } from "@thi.ng/shader-ast"; /** * Returns signed distance from `p` to centered circle of radius `r`. diff --git a/packages/shader-ast-stdlib/src/sdf/torus.ts b/packages/shader-ast-stdlib/src/sdf/torus.ts index fda97b0a06..7a9af1b4f3 100644 --- a/packages/shader-ast-stdlib/src/sdf/torus.ts +++ b/packages/shader-ast-stdlib/src/sdf/torus.ts @@ -1,12 +1,4 @@ -import { - $, - $y, - defn, - length, - ret, - sub, - vec2 -} from "@thi.ng/shader-ast"; +import { $, $y, defn, length, ret, sub, vec2 } from "@thi.ng/shader-ast"; /** * Returns signed distance from `p` to torus centered around Y-axis with @@ -21,6 +13,6 @@ export const sdfTorus = defn( "sdTorus", ["vec3", "float", "float"], (p, r1, r2) => [ - ret(sub(length(vec2(sub(length($(p, "xz")), r2), $y(p))), r1)) + ret(sub(length(vec2(sub(length($(p, "xz")), r2), $y(p))), r1)), ] ); diff --git a/packages/shader-ast-stdlib/src/sdf/tri.ts b/packages/shader-ast-stdlib/src/sdf/tri.ts index e6165dc3fc..56f56bdbcd 100644 --- a/packages/shader-ast-stdlib/src/sdf/tri.ts +++ b/packages/shader-ast-stdlib/src/sdf/tri.ts @@ -14,7 +14,7 @@ import { sub, sym, vec2, - Vec2Sym + Vec2Sym, } from "@thi.ng/shader-ast"; import { clamp01 } from "../math/clamp"; import { cross2 } from "../math/cross2"; @@ -59,7 +59,7 @@ export const sdfTriangle2 = defn( vec2(dot(pq2, pq2), mul(s, cross2(v2, e2))) ) )), - ret(mul(neg(sqrt($x(d))), sign($y(d)))) + ret(mul(neg(sqrt($x(d))), sign($y(d)))), ]; } ); diff --git a/packages/shader-ast-stdlib/src/tex/blur.ts b/packages/shader-ast-stdlib/src/tex/blur.ts index 08dd3e68a7..feba48dcd9 100644 --- a/packages/shader-ast-stdlib/src/tex/blur.ts +++ b/packages/shader-ast-stdlib/src/tex/blur.ts @@ -11,7 +11,7 @@ import { texture, vec2, Vec2Sym, - Vec4Sym + Vec4Sym, } from "@thi.ng/shader-ast"; /** @@ -63,7 +63,7 @@ export const blur5 = defn( (off = sym(div(mul(vec2(1 + 1 / 3), dir), res))), (col = sym(mul(texture(tex, uv), k1))), singlePass(col, tex, uv, off, k2), - ret(col) + ret(col), ]; } ); @@ -95,7 +95,7 @@ export const blur9 = defn( (col = sym(mul(texture(tex, uv), 0.227027027))), singlePass(col, tex, uv, off, k1), singlePass(col, tex, uv, off2, k2), - ret(col) + ret(col), ]; } ); @@ -131,7 +131,7 @@ export const blur13 = defn( singlePass(col, tex, uv, off, k1), singlePass(col, tex, uv, off2, k2), singlePass(col, tex, uv, off3, k3), - ret(col) + ret(col), ]; } ); diff --git a/packages/shader-ast-stdlib/src/tex/index-coord.ts b/packages/shader-ast-stdlib/src/tex/index-coord.ts index 44ea56db0a..18b808de6f 100644 --- a/packages/shader-ast-stdlib/src/tex/index-coord.ts +++ b/packages/shader-ast-stdlib/src/tex/index-coord.ts @@ -6,7 +6,7 @@ import { modi, UintTerm, uvec2, - UVec2Term + UVec2Term, } from "@thi.ng/shader-ast"; /** diff --git a/packages/shader-ast-stdlib/src/tex/index-uv.ts b/packages/shader-ast-stdlib/src/tex/index-uv.ts index c8e547b5ab..f165fa8d15 100644 --- a/packages/shader-ast-stdlib/src/tex/index-uv.ts +++ b/packages/shader-ast-stdlib/src/tex/index-uv.ts @@ -9,7 +9,7 @@ import { modi, mul, ret, - vec2 + vec2, } from "@thi.ng/shader-ast"; /** @@ -29,7 +29,7 @@ export const indexToUV = defn( div(float(modi(i, $x(size))), float($x(size))), div(float(div(i, $x(size))), float($y(size))) ) - ) + ), ] ); @@ -50,6 +50,6 @@ export const uvToIndex = defn( int(mul($x(uv), float(width))), int(mul($y(uv), float(mul(width, width)))) ) - ) + ), ] ); diff --git a/packages/shader-ast-stdlib/src/tex/read-index.ts b/packages/shader-ast-stdlib/src/tex/read-index.ts index 298f0067d9..5adc89dab1 100644 --- a/packages/shader-ast-stdlib/src/tex/read-index.ts +++ b/packages/shader-ast-stdlib/src/tex/read-index.ts @@ -5,7 +5,7 @@ import { IntTerm, IVec2Term, Sampler2DTerm, - texture + texture, } from "@thi.ng/shader-ast"; import { indexToUV } from "./index-uv"; diff --git a/packages/shader-ast/CHANGELOG.md b/packages/shader-ast/CHANGELOG.md index ac7d3923c1..001f59d65e 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.3.24](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast@0.3.23...@thi.ng/shader-ast@0.3.24) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/shader-ast + + + + + ## [0.3.23](https://github.com/thi-ng/umbrella/compare/@thi.ng/shader-ast@0.3.22...@thi.ng/shader-ast@0.3.23) (2020-06-01) **Note:** Version bump only for package @thi.ng/shader-ast diff --git a/packages/shader-ast/package.json b/packages/shader-ast/package.json index 85b294a681..0c233441b8 100644 --- a/packages/shader-ast/package.json +++ b/packages/shader-ast/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/shader-ast", - "version": "0.3.23", + "version": "0.3.24", "description": "DSL to define shader code in TypeScript and cross-compile to GLSL, JS and other targets", "module": "./index.js", "main": "./lib/index.js", @@ -43,10 +43,10 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/defmulti": "^1.2.16", - "@thi.ng/dgraph": "^1.2.11", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/defmulti": "^1.2.17", + "@thi.ng/dgraph": "^1.2.12", "@thi.ng/errors": "^1.2.14", "tslib": "^1.12.0" }, diff --git a/packages/shader-ast/src/api/function.ts b/packages/shader-ast/src/api/function.ts index 0ab5fc8825..70cc146478 100644 --- a/packages/shader-ast/src/api/function.ts +++ b/packages/shader-ast/src/api/function.ts @@ -1,14 +1,4 @@ -import type { - Fn, - Fn0, - Fn2, - Fn3, - Fn4, - Fn5, - Fn6, - Fn7, - Fn8 -} from "@thi.ng/api"; +import type { Fn, Fn0, Fn2, Fn3, Fn4, Fn5, Fn6, Fn7, Fn8 } from "@thi.ng/api"; import type { FnCall, Sym, Term } from "./nodes"; import type { SymOpts } from "./syms"; import type { Type } from "./types"; diff --git a/packages/shader-ast/src/api/nodes.ts b/packages/shader-ast/src/api/nodes.ts index 479b558f84..b2bbfbffa3 100644 --- a/packages/shader-ast/src/api/nodes.ts +++ b/packages/shader-ast/src/api/nodes.ts @@ -7,18 +7,13 @@ import type { Func5, Func6, Func7, - Func8 + Func8, } from "./function"; import type { Operator } from "./ops"; import type { SymOpts } from "./syms"; import type { Tag } from "./tags"; import type { BoolTerm } from "./terms"; -import type { - Assignable, - Indexable, - Type, - Vec -} from "./types"; +import type { Assignable, Indexable, Type, Vec } from "./types"; export interface Term { tag: Tag; diff --git a/packages/shader-ast/src/api/target.ts b/packages/shader-ast/src/api/target.ts index 903a7571bf..09313e3e75 100644 --- a/packages/shader-ast/src/api/target.ts +++ b/packages/shader-ast/src/api/target.ts @@ -17,7 +17,7 @@ import type { Swizzle, Sym, Ternary, - WhileLoop + WhileLoop, } from "./nodes"; import type { Tag } from "./tags"; diff --git a/packages/shader-ast/src/api/types.ts b/packages/shader-ast/src/api/types.ts index 7329f8bf68..82fb4d0ad6 100644 --- a/packages/shader-ast/src/api/types.ts +++ b/packages/shader-ast/src/api/types.ts @@ -1,10 +1,5 @@ import type { Index, Swizzle, Sym } from "./nodes"; -import type { - BoolTerm, - FloatTerm, - IntTerm, - UintTerm -} from "./terms"; +import type { BoolTerm, FloatTerm, IntTerm, UintTerm } from "./terms"; export type Type = | "void" diff --git a/packages/shader-ast/src/ast/assign.ts b/packages/shader-ast/src/ast/assign.ts index b3ffb1ecea..ba6f0df633 100644 --- a/packages/shader-ast/src/ast/assign.ts +++ b/packages/shader-ast/src/ast/assign.ts @@ -14,6 +14,6 @@ export const assign = ( tag: "assign", type: l.type, l, - r + r, }; }; diff --git a/packages/shader-ast/src/ast/controlflow.ts b/packages/shader-ast/src/ast/controlflow.ts index d30b7b6eff..c6f79cc5d5 100644 --- a/packages/shader-ast/src/ast/controlflow.ts +++ b/packages/shader-ast/src/ast/controlflow.ts @@ -8,7 +8,7 @@ import type { Sym, Term, Ternary, - WhileLoop + WhileLoop, } from "../api/nodes"; import type { BoolTerm } from "../api/terms"; import type { Type } from "../api/types"; @@ -22,7 +22,7 @@ export const ifThen = ( type: "void", test, t: scope(truthy), - f: falsey ? scope(falsey) : undefined + f: falsey ? scope(falsey) : undefined, }); export const ternary =
( @@ -34,7 +34,7 @@ export const ternary = ( type: t.type, test, t, - f + f, }); // prettier-ignore @@ -56,7 +56,7 @@ export function forLoop(...xs: any[]): ForLoop { init: init ? decl(init) : undefined, test: test(init!), iter: iter ? iter(init!) : undefined, - scope: scope(body(init!)) + scope: scope(body(init!)), }; } @@ -64,13 +64,13 @@ export const whileLoop = (test: BoolTerm, body: Term[]): WhileLoop => ({ tag: "while", type: "void", test, - scope: scope(body) + scope: scope(body), }); const ctrl = (id: string): ControlFlow => ({ tag: "ctrl", type: "void", - id + id, }); export const brk = ctrl("break"); diff --git a/packages/shader-ast/src/ast/function.ts b/packages/shader-ast/src/ast/function.ts index 6f3c1c1720..f18e045049 100644 --- a/packages/shader-ast/src/ast/function.ts +++ b/packages/shader-ast/src/ast/function.ts @@ -1,12 +1,7 @@ import { assert } from "@thi.ng/api"; import { isString } from "@thi.ng/checks"; import { gensym } from "./idgen"; -import { - allChildren, - scope, - scopedChildren, - walk -} from "./scope"; +import { allChildren, scope, scopedChildren, walk } from "./scope"; import { sym } from "./sym"; import type { Arg, @@ -27,7 +22,7 @@ import type { FnBody6, FnBody7, FnBody8, - ScopeBody + ScopeBody, } from "../api/function"; import type { FnCall, @@ -44,7 +39,7 @@ import type { TaggedFn6, TaggedFn7, TaggedFn8, - Term + Term, } from "../api/nodes"; import type { SymOpts } from "../api/syms"; import type { Type } from "../api/types"; @@ -55,7 +50,7 @@ const defArg = (a: Arg): FuncArg => { tag: "arg", type, id: id || gensym(), - opts: { q: "in", ...opts } + opts: { q: "in", ...opts }, }; }; @@ -152,7 +147,7 @@ export function ret(val?: Term): FuncReturn { return { tag: "ret", type: val ? val.type : "void", - val + val, }; } @@ -201,5 +196,5 @@ export const builtinCall = ( tag: "call_i", type, id, - args + args, }); diff --git a/packages/shader-ast/src/ast/indexed.ts b/packages/shader-ast/src/ast/indexed.ts index b6189b9de3..affc7f035d 100644 --- a/packages/shader-ast/src/ast/indexed.ts +++ b/packages/shader-ast/src/ast/indexed.ts @@ -6,7 +6,7 @@ import type { Indexable, IndexTypeMap, MatIndexTypeMap, - NumericI + NumericI, } from "../api/types"; export const index = ( @@ -16,7 +16,7 @@ export const index = ( tag: "idx", type: val.type.substr(0, val.type.length - 2), id: isNumber(id) ? int(id) : id, - val + val, }); // prettier-ignore @@ -28,7 +28,7 @@ export function indexMat(m: Sym, a: number, b?: number): Index { tag: "idx", type: m.type.replace("mat", "vec"), id: int(a), - val: m + val: m, }; return b !== undefined ? { tag: "idx", type: "float", id: int(b), val: idx } diff --git a/packages/shader-ast/src/ast/item.ts b/packages/shader-ast/src/ast/item.ts index 18a3e3b9fd..f96646518a 100644 --- a/packages/shader-ast/src/ast/item.ts +++ b/packages/shader-ast/src/ast/item.ts @@ -1,22 +1,8 @@ -import { - bool, - float, - int, - uint, - vec2, - vec3, - vec4 -} from "./lit"; +import { bool, float, int, uint, vec2, vec3, vec4 } from "./lit"; import type { IObjectOf } from "@thi.ng/api"; import type { Term } from "../api/nodes"; import type { FloatTerm } from "../api/terms"; -import type { - Int, - IVec, - Prim, - Type, - UVec -} from "../api/types"; +import type { Int, IVec, Prim, Type, UVec } from "../api/types"; /** * Returns base type for given term. Used for array ops. @@ -69,5 +55,5 @@ export const matchingBoolType = ( uvec3: "bvec3", vec4: "bvec4", ivec4: "bvec4", - uvec4: "bvec4" + uvec4: "bvec4", })[t.type]; diff --git a/packages/shader-ast/src/ast/lit.ts b/packages/shader-ast/src/ast/lit.ts index 5b3e0bd949..8db38361b9 100644 --- a/packages/shader-ast/src/ast/lit.ts +++ b/packages/shader-ast/src/ast/lit.ts @@ -8,14 +8,14 @@ import type { UintTerm, Vec2Term, Vec3Term, - Vec4Term + Vec4Term, } from "../api/terms"; import type { NumericB, NumericF, NumericI, NumericU, - Type + Type, } from "../api/types"; export const lit = ( @@ -26,7 +26,7 @@ export const lit = ( tag: "lit", type, info, - val + val, }); export const bool = (x: NumericB) => lit("bool", isNumber(x) ? !!x : x); diff --git a/packages/shader-ast/src/ast/ops.ts b/packages/shader-ast/src/ast/ops.ts index d0fd9ef582..fab9c56ecb 100644 --- a/packages/shader-ast/src/ast/ops.ts +++ b/packages/shader-ast/src/ast/ops.ts @@ -3,12 +3,7 @@ import { isMat, isVec } from "./checks"; import { numberWithMatchingType } from "./item"; import { float } from "./lit"; import type { IObjectOf } from "@thi.ng/api"; -import type { - Op1, - Op2, - Sym, - Term -} from "../api/nodes"; +import type { Op1, Op2, Sym, Term } from "../api/nodes"; import type { ComparisonOperator, Operator } from "../api/ops"; import type { BoolTerm, @@ -20,7 +15,7 @@ import type { UintTerm, Vec2Term, Vec3Term, - Vec4Term + Vec4Term, } from "../api/terms"; import type { Comparable, @@ -30,7 +25,7 @@ import type { Prim, Type, UVec, - Vec + Vec, } from "../api/types"; export const op1 = ( @@ -42,7 +37,7 @@ export const op1 = ( type: val.type, op, val, - post + post, }); const OP_INFO: IObjectOf = { @@ -55,7 +50,7 @@ const OP_INFO: IObjectOf = { ivin: "vn", iniv: "nv", uvui: "vn", - uiuv: "nv" + uiuv: "nv", }; export const op2 = ( @@ -107,7 +102,7 @@ export const op2 = ( info: info || OP_INFO[l!.type.substr(0, 2) + r!.type.substr(0, 2)], op, l: l!, - r: r! + r: r!, }; }; diff --git a/packages/shader-ast/src/ast/scope.ts b/packages/shader-ast/src/ast/scope.ts index 6fd775a433..e31a267d6b 100644 --- a/packages/shader-ast/src/ast/scope.ts +++ b/packages/shader-ast/src/ast/scope.ts @@ -15,7 +15,7 @@ import type { Scope, Sym, Term, - Ternary + Ternary, } from "../api/nodes"; import type { Type } from "../api/types"; @@ -121,7 +121,7 @@ export const buildCallGraph = ( export const decl = (id: Sym): Decl => ({ tag: "decl", type: id.type, - id + id, }); /** @@ -145,7 +145,7 @@ export const scope = (body: (Term | null)[], global = false): Scope => ({ .filter((x) => x != null) .map((x) => (x!.tag === "sym" ? decl(>x) : x)) ), - global + global, }); /** diff --git a/packages/shader-ast/src/ast/swizzle.ts b/packages/shader-ast/src/ast/swizzle.ts index 84e4f7964a..b7ba423c95 100644 --- a/packages/shader-ast/src/ast/swizzle.ts +++ b/packages/shader-ast/src/ast/swizzle.ts @@ -12,7 +12,7 @@ import type { Swizzle4, Swizzle4_1, Swizzle4_2, - Swizzle4_3 + Swizzle4_3, } from "../api/swizzles"; import type { BVec2Term, @@ -26,15 +26,9 @@ import type { UVec4Term, Vec2Term, Vec3Term, - Vec4Term + Vec4Term, } from "../api/terms"; -import type { - BVec, - IVec, - Type, - UVec, - Vec -} from "../api/types"; +import type { BVec, IVec, Type, UVec, Vec } from "../api/types"; // prettier-ignore export function $(a: Vec2Term, id: T): Swizzle>; @@ -75,7 +69,7 @@ export function $(val: Term, id: string): Swizzle { ? rtype("bool", "bvec") : rtype("float", "vec"), val, - id + id, }; } diff --git a/packages/shader-ast/src/ast/sym.ts b/packages/shader-ast/src/ast/sym.ts index b4a074f2ce..68c800fe6b 100644 --- a/packages/shader-ast/src/ast/sym.ts +++ b/packages/shader-ast/src/ast/sym.ts @@ -55,7 +55,7 @@ export function sym(type: any, ...xs: any[]): Sym { type, id: id! || gensym(), opts: opts! || {}, - init: init! + init: init!, }; } @@ -98,9 +98,9 @@ export const arraySym = ( ? { tag: "array_init", type: atype, - init + init, } - : undefined + : undefined, }; }; diff --git a/packages/shader-ast/src/builtin/math.ts b/packages/shader-ast/src/builtin/math.ts index 379dddfae9..70777db2b4 100644 --- a/packages/shader-ast/src/builtin/math.ts +++ b/packages/shader-ast/src/builtin/math.ts @@ -17,7 +17,7 @@ import type { UVec4Term, Vec2Term, Vec3Term, - Vec4Term + Vec4Term, } from "../api/terms"; import type { Mat, Prim, Vec } from "../api/types"; diff --git a/packages/shader-ast/src/builtin/texture.ts b/packages/shader-ast/src/builtin/texture.ts index e1d66d0bef..dc70e4d4e0 100644 --- a/packages/shader-ast/src/builtin/texture.ts +++ b/packages/shader-ast/src/builtin/texture.ts @@ -19,14 +19,9 @@ import type { USamplerCubeTerm, Vec2Term, Vec3Term, - Vec4Term + Vec4Term, } from "../api/terms"; -import type { - IVec, - Prim, - Sampler, - Vec -} from "../api/types"; +import type { IVec, Prim, Sampler, Vec } from "../api/types"; const texRetType = (sampler: Term) => { const t = sampler.type[0]; diff --git a/packages/shader-ast/src/optimize.ts b/packages/shader-ast/src/optimize.ts index 2ab50e53f3..c7a62896cf 100644 --- a/packages/shader-ast/src/optimize.ts +++ b/packages/shader-ast/src/optimize.ts @@ -3,12 +3,7 @@ import { DEFAULT, defmulti } from "@thi.ng/defmulti"; import { isLitNumeric } from "./ast/checks"; import { lit } from "./ast/lit"; import { allChildren, walk } from "./ast/scope"; -import type { - Lit, - Op1, - Op2, - Term -} from "./api/nodes"; +import type { Lit, Op1, Op2, Term } from "./api/nodes"; import type { Operator } from "./api/ops"; const replaceNode = (node: any, next: any) => { @@ -53,7 +48,7 @@ foldNode.addAll({ replaceNode(node, lit(op.type, res)); } } - } + }, }); /** diff --git a/packages/shader-ast/test/index.ts b/packages/shader-ast/test/index.ts index 2ca6ec1a27..e4e70661ce 100644 --- a/packages/shader-ast/test/index.ts +++ b/packages/shader-ast/test/index.ts @@ -12,14 +12,14 @@ describe("shader-ast", () => { tag: "lit", type: "vec2", info: "n", - val: [{ tag: "lit", type: "float", info: undefined, val: 0 }] + val: [{ tag: "lit", type: "float", info: undefined, val: 0 }], }, r: { tag: "lit", type: "vec2", info: "n", - val: [{ tag: "lit", type: "float", info: undefined, val: 0 }] - } + val: [{ tag: "lit", type: "float", info: undefined, val: 0 }], + }, }); }); @@ -34,8 +34,8 @@ describe("shader-ast", () => { tag: "lit", type: "vec2", info: "n", - val: [{ tag: "lit", type: "float", info: undefined, val: 0 }] - } + val: [{ tag: "lit", type: "float", info: undefined, val: 0 }], + }, }); }); @@ -49,9 +49,9 @@ describe("shader-ast", () => { tag: "lit", type: "vec2", info: "n", - val: [{ tag: "lit", type: "float", info: undefined, val: 0 }] + val: [{ tag: "lit", type: "float", info: undefined, val: 0 }], }, - r: { tag: "lit", type: "float", info: undefined, val: 1 } + r: { tag: "lit", type: "float", info: undefined, val: 1 }, }); }); }); diff --git a/packages/simd/CHANGELOG.md b/packages/simd/CHANGELOG.md index 664c3941c7..4327bb2c5b 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.2.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/simd@0.2.3...@thi.ng/simd@0.2.4) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/simd + + + + + ## [0.2.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/simd@0.2.2...@thi.ng/simd@0.2.3) (2020-06-01) **Note:** Version bump only for package @thi.ng/simd diff --git a/packages/simd/package.json b/packages/simd/package.json index 065cbcfe21..724e9fa165 100644 --- a/packages/simd/package.json +++ b/packages/simd/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/simd", - "version": "0.2.3", + "version": "0.2.4", "description": "WASM based SIMD vector operations for batch processing", "module": "./index.js", "main": "./lib/index.js", @@ -46,9 +46,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/checks": "^2.7.0", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/transducers-binary": "^0.5.16", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/transducers-binary": "^0.5.17", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/simd/src/index.ts b/packages/simd/src/index.ts index adc718a5af..d5c0b8d4a1 100644 --- a/packages/simd/src/index.ts +++ b/packages/simd/src/index.ts @@ -38,8 +38,8 @@ export const init = (memory: WebAssembly.Memory): SIMD | undefined => { console.error( `abort called in ${file}: ${line}:${column}` ); - } - } + }, + }, } ).exports, f32: new Float32Array(buf), @@ -49,6 +49,6 @@ export const init = (memory: WebAssembly.Memory): SIMD | undefined => { u16: new Uint16Array(buf), i16: new Int16Array(buf), u8: new Uint8Array(buf), - i8: new Int8Array(buf) + i8: new Int8Array(buf), }; }; diff --git a/packages/soa/CHANGELOG.md b/packages/soa/CHANGELOG.md index 27c5e6c3ea..03c8e750d0 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.23](https://github.com/thi-ng/umbrella/compare/@thi.ng/soa@0.1.22...@thi.ng/soa@0.1.23) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/soa + + + + + ## [0.1.22](https://github.com/thi-ng/umbrella/compare/@thi.ng/soa@0.1.21...@thi.ng/soa@0.1.22) (2020-06-01) **Note:** Version bump only for package @thi.ng/soa diff --git a/packages/soa/package.json b/packages/soa/package.json index 5aef24ee5a..dfa3c61cd1 100644 --- a/packages/soa/package.json +++ b/packages/soa/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/soa", - "version": "0.1.22", + "version": "0.1.23", "description": "SOA & AOS memory mapped structured views with optional & extensible serialization", "module": "./index.js", "main": "./lib/index.js", @@ -44,10 +44,10 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/binary": "^2.0.7", - "@thi.ng/transducers-binary": "^0.5.16", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/api": "^6.11.1", + "@thi.ng/binary": "^2.0.8", + "@thi.ng/transducers-binary": "^0.5.17", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/soa/src/serialize.ts b/packages/soa/src/serialize.ts index ea6d474f13..c410315af3 100644 --- a/packages/soa/src/serialize.ts +++ b/packages/soa/src/serialize.ts @@ -5,7 +5,7 @@ import type { SerializedTuple, Serializer, SerializerPair, - SerializerSpecs + SerializerSpecs, } from "./api"; /** @@ -13,7 +13,7 @@ import type { */ export const ident = >{ decode: (x) => x, - encode: (x) => x + encode: (x) => x, }; /** @@ -21,7 +21,7 @@ export const ident = >{ */ export const scalar = >{ decode: (v) => v[0], - encode: (x) => [x] + encode: (x) => [x], }; const toUTF8 = utf8Decode(); @@ -51,7 +51,7 @@ export const utf8z = (maxLen: number) => const bytes = [...utf8Encode(v), 0]; assert(bytes.length <= maxLen, `string too large: "${v}"`); return bytes; - } + }, }; export const serializer = ( @@ -70,5 +70,5 @@ export const serializer = ( res[id] = specs[id].encode(tuple[id]); } return res; - } + }, }); diff --git a/packages/soa/src/soa.ts b/packages/soa/src/soa.ts index 25d7b15e4c..ba4e7729a3 100644 --- a/packages/soa/src/soa.ts +++ b/packages/soa/src/soa.ts @@ -4,7 +4,7 @@ import { SIZEOF, TypedArray, typedArray, - TYPEDARRAY_CTORS + TYPEDARRAY_CTORS, } from "@thi.ng/api"; import { prepareSpec } from "./utils"; import type { ReadonlyVec, Vec } from "@thi.ng/vectors"; diff --git a/packages/soa/test/aos.ts b/packages/soa/test/aos.ts index bf7b6e93c2..6fa354e059 100644 --- a/packages/soa/test/aos.ts +++ b/packages/soa/test/aos.ts @@ -10,7 +10,7 @@ describe("aos", () => { { a: { type: Type.U16, size: 1 }, // 2, 0 b: { type: Type.F32, size: 2 }, // 8, 4 - c: { type: Type.U8, size: 1 } // 1, 12 + c: { type: Type.U8, size: 1 }, // 1, 12 }, undefined, 0x100 @@ -28,15 +28,18 @@ describe("aos", () => { assert.equal(struct.buffers.a.buffer.byteLength, 0x100 + 0x20); struct.setValues({ a: [[0x1001], [0x2002]], - b: [[1, 2], [3, 4]], - c: [[0xff], [0xfe]] + b: [ + [1, 2], + [3, 4], + ], + c: [[0xff], [0xfe]], }); assert( equiv( [...struct.values()], [ { a: [0x1001], b: [1, 2], c: [0xff] }, - { a: [0x2002], b: [3, 4], c: [0xfe] } + { a: [0x2002], b: [3, 4], c: [0xfe] }, ] ) ); diff --git a/packages/soa/test/serialize.ts b/packages/soa/test/serialize.ts index f85db51c46..0792a2851b 100644 --- a/packages/soa/test/serialize.ts +++ b/packages/soa/test/serialize.ts @@ -1,11 +1,6 @@ import { Type } from "@thi.ng/api"; import * as assert from "assert"; -import { - scalar, - serializer, - soa, - utf8z -} from "../src"; +import { scalar, serializer, soa, utf8z } from "../src"; describe("serialize", () => { it("scalar", () => { @@ -15,7 +10,7 @@ describe("serialize", () => { struct.setIndex(1, ser.encode({ id: 0xaa55aa55 })); assert.deepEqual([...struct.values()].map(ser.decode), [ { id: 0xdecafbad }, - { id: 0xaa55aa55 } + { id: 0xaa55aa55 }, ]); }); diff --git a/packages/soa/test/soa.ts b/packages/soa/test/soa.ts index 4c82890ddc..2c20ab8170 100644 --- a/packages/soa/test/soa.ts +++ b/packages/soa/test/soa.ts @@ -8,7 +8,7 @@ describe("soa", () => { const struct = soa(2, { a: { type: Type.U16 }, b: { size: 2, default: [1, 2] }, - c: { type: Type.I8, size: 2, default: [-3, 4] } + c: { type: Type.I8, size: 2, default: [-3, 4] }, }); assert.equal(struct.length, 2); assert.deepEqual(struct.keys(), ["a", "b", "c"]); @@ -23,7 +23,7 @@ describe("soa", () => { [...struct.values()], [ { a: [0], b: [1, 2], c: [-3, 4] }, - { a: [0], b: [1, 2], c: [-3, 4] } + { a: [0], b: [1, 2], c: [-3, 4] }, ] ) ); @@ -33,12 +33,12 @@ describe("soa", () => { const src = soa(2, { a: { type: Type.U16 }, b: { size: 2, default: [1, 2] }, - c: { type: Type.I8, size: 2, default: [-3, 4] } + c: { type: Type.I8, size: 2, default: [-3, 4] }, }); const dest = soa(4, { a: { type: Type.U16, default: [0xaa55] }, b: { size: 2 }, - c: { type: Type.I8, size: 2 } + c: { type: Type.I8, size: 2 }, }); src.copyTo(dest, undefined, 2); assert( @@ -48,7 +48,7 @@ describe("soa", () => { { a: [0xaa55], b: [0, 0], c: [0, 0] }, { a: [0xaa55], b: [0, 0], c: [0, 0] }, { a: [0], b: [1, 2], c: [-3, 4] }, - { a: [0], b: [1, 2], c: [-3, 4] } + { a: [0], b: [1, 2], c: [-3, 4] }, ] ) ); diff --git a/packages/sparse/CHANGELOG.md b/packages/sparse/CHANGELOG.md index e727236b5c..861ef719b3 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.43](https://github.com/thi-ng/umbrella/compare/@thi.ng/sparse@0.1.42...@thi.ng/sparse@0.1.43) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/sparse + + + + + ## [0.1.42](https://github.com/thi-ng/umbrella/compare/@thi.ng/sparse@0.1.41...@thi.ng/sparse@0.1.42) (2020-06-01) **Note:** Version bump only for package @thi.ng/sparse diff --git a/packages/sparse/package.json b/packages/sparse/package.json index df086d1628..c02c4374dd 100644 --- a/packages/sparse/package.json +++ b/packages/sparse/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/sparse", - "version": "0.1.42", + "version": "0.1.43", "description": "Sparse vector & matrix implementations", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/sparse/src/csc.ts b/packages/sparse/src/csc.ts index 3452e602d7..f2a5682f1f 100644 --- a/packages/sparse/src/csc.ts +++ b/packages/sparse/src/csc.ts @@ -1,11 +1,6 @@ import { assert } from "@thi.ng/api"; import { ASparseMatrix } from "./amatrix"; -import { - at, - compress, - diag, - setAt -} from "./compressed"; +import { at, compress, diag, setAt } from "./compressed"; import type { NzEntry } from "./api"; export class CSC extends ASparseMatrix { diff --git a/packages/sparse/src/csr.ts b/packages/sparse/src/csr.ts index c66f5db4a2..7e8d8a59f2 100644 --- a/packages/sparse/src/csr.ts +++ b/packages/sparse/src/csr.ts @@ -1,12 +1,6 @@ import { assert } from "@thi.ng/api"; import { ASparseMatrix } from "./amatrix"; -import { - at, - compress, - diag, - remove, - setAt -} from "./compressed"; +import { at, compress, diag, remove, setAt } from "./compressed"; import type { NzEntry } from "./api"; export class CSR extends ASparseMatrix { diff --git a/packages/strings/CHANGELOG.md b/packages/strings/CHANGELOG.md index 489c33539f..e2d73c7fbc 100644 --- a/packages/strings/CHANGELOG.md +++ b/packages/strings/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.8.10](https://github.com/thi-ng/umbrella/compare/@thi.ng/strings@1.8.9...@thi.ng/strings@1.8.10) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/strings + + + + + ## [1.8.9](https://github.com/thi-ng/umbrella/compare/@thi.ng/strings@1.8.8...@thi.ng/strings@1.8.9) (2020-06-01) **Note:** Version bump only for package @thi.ng/strings diff --git a/packages/strings/package.json b/packages/strings/package.json index 51fc0ffa03..a544304490 100644 --- a/packages/strings/package.json +++ b/packages/strings/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/strings", - "version": "1.8.9", + "version": "1.8.10", "description": "Various string formatting & utility functions", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", + "@thi.ng/api": "^6.11.1", "@thi.ng/errors": "^1.2.14", - "@thi.ng/memoize": "^2.0.12", + "@thi.ng/memoize": "^2.0.13", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/strings/src/float.ts b/packages/strings/src/float.ts index cc773fdee2..d82cfb3b97 100644 --- a/packages/strings/src/float.ts +++ b/packages/strings/src/float.ts @@ -12,8 +12,10 @@ import type { Stringer } from "./api"; * @param len - number of fractional digits * @kind function */ -export const float: (prec: number) => Stringer = memoizeJ( - (prec) => (x: number) => nanOrInf(x) || x.toFixed(prec) +export const float: ( + prec: number +) => Stringer = memoizeJ((prec) => (x: number) => + nanOrInf(x) || x.toFixed(prec) ); /** @@ -38,8 +40,8 @@ export const floatFixedWidth: ( (x === 0 ? "0" : ax < pr || ax >= pl - ? exp(x, width) - : x.toFixed(prec - (x < pln ? 1 : 0))) + ? exp(x, width) + : x.toFixed(prec - (x < pln ? 1 : 0))) ); }; }); @@ -59,7 +61,7 @@ const nanOrInf = (x: number) => isNaN(x) ? "NaN" : x === Infinity - ? "+∞" - : x === -Infinity - ? "-∞" - : undefined; + ? "+∞" + : x === -Infinity + ? "-∞" + : undefined; diff --git a/packages/strings/src/slugify.ts b/packages/strings/src/slugify.ts index 266a17e32a..2b68307426 100644 --- a/packages/strings/src/slugify.ts +++ b/packages/strings/src/slugify.ts @@ -46,4 +46,4 @@ export const slugifyGH = (str: string) => { .replace(re, (c) => dest[src.indexOf(c)]) .replace(/[^\w\-]+/g, "") .replace(/(^-+)|(-+$)/g, ""); -}; \ No newline at end of file +}; diff --git a/packages/strings/src/splice.ts b/packages/strings/src/splice.ts index 9bd6adc4ab..1b7e650a54 100644 --- a/packages/strings/src/splice.ts +++ b/packages/strings/src/splice.ts @@ -32,6 +32,6 @@ export const splice = ( return from <= 0 ? insert + src.substr(to) : from >= src.length - ? src + insert - : src.substr(0, from) + insert + src.substr(to); + ? src + insert + : src.substr(0, from) + insert + src.substr(to); }; diff --git a/packages/strings/src/units.ts b/packages/strings/src/units.ts index 38097e7450..667b93b0c6 100644 --- a/packages/strings/src/units.ts +++ b/packages/strings/src/units.ts @@ -19,7 +19,7 @@ export const units: ( <[number, number, string]>[ x[0], x[2] != null ? x[2] : prec, - x[1] + x[1], ] ) .sort((a, b) => a[0] - b[0]); @@ -45,7 +45,7 @@ export const bits = units( [1, " bits", 0], [KB, " Kb"], [KB ** 2, " Mb"], - [KB ** 3, " Gb"] + [KB ** 3, " Gb"], ], " bits", 2 @@ -58,7 +58,7 @@ export const bytes = units( [KB ** 2, " MB"], [KB ** 3, " GB"], [KB ** 4, " TB"], - [KB ** 5, " PB"] + [KB ** 5, " PB"], ], " bytes", 2 @@ -73,7 +73,7 @@ export const seconds = units( [1, " secs"], [60, " mins"], [60 * 60, " hours"], - [24 * 60 * 60, " days"] + [24 * 60 * 60, " days"], ], " secs", 3 @@ -87,7 +87,7 @@ export const meters = units( [1e-3, " mm"], [1e-2, " cm"], [1, " m"], - [1e3, " km"] + [1e3, " km"], ], " m", 2 @@ -103,7 +103,7 @@ export const grams = units( [1e3, " kg"], [1e6, " t"], [1e9, " kt"], - [1e12, " Mt"] + [1e12, " Mt"], ], " g", 2 diff --git a/packages/strings/src/uuid.ts b/packages/strings/src/uuid.ts index ae4e5760b4..d6ca1c1376 100644 --- a/packages/strings/src/uuid.ts +++ b/packages/strings/src/uuid.ts @@ -28,5 +28,5 @@ export const uuid = (id: ArrayLike, i = 0) => U8(id[i++]), U8(id[i++]), U8(id[i++]), - U8(id[i++]) + U8(id[i++]), ].join(""); diff --git a/packages/strings/src/wrap.ts b/packages/strings/src/wrap.ts index f8362795db..c915deaa6d 100644 --- a/packages/strings/src/wrap.ts +++ b/packages/strings/src/wrap.ts @@ -5,6 +5,6 @@ import type { Stringer } from "./api"; * Returns a {@link Stringer} which wrap inputs with given `pad` string on * both sides. */ -export const wrap: (pad: string) => Stringer = memoizeJ( - (pad: string) => (x: any) => pad + x + pad -); +export const wrap: ( + pad: string +) => Stringer = memoizeJ((pad: string) => (x: any) => pad + x + pad); diff --git a/packages/strings/test/splice.ts b/packages/strings/test/splice.ts index c5e7968415..afb9878bc7 100644 --- a/packages/strings/test/splice.ts +++ b/packages/strings/test/splice.ts @@ -26,4 +26,4 @@ describe("splice", () => { assert.equal(splice(SRC, "xx", -3, 4), "xx"); assert.equal(splice(SRC, "xx", -3, 2), "xxc"); }); -}); \ No newline at end of file +}); diff --git a/packages/system/CHANGELOG.md b/packages/system/CHANGELOG.md index e23911fd2e..74a2e50814 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.12](https://github.com/thi-ng/umbrella/compare/@thi.ng/system@0.2.11...@thi.ng/system@0.2.12) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/system + + + + + ## [0.2.11](https://github.com/thi-ng/umbrella/compare/@thi.ng/system@0.2.10...@thi.ng/system@0.2.11) (2020-06-01) **Note:** Version bump only for package @thi.ng/system diff --git a/packages/system/package.json b/packages/system/package.json index 7a2c220499..a4cc4a854c 100644 --- a/packages/system/package.json +++ b/packages/system/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/system", - "version": "0.2.11", + "version": "0.2.12", "description": "Minimal DI / life cycle container for stateful app components", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/dgraph": "^1.2.11", + "@thi.ng/api": "^6.11.1", + "@thi.ng/dgraph": "^1.2.12", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/text-canvas/CHANGELOG.md b/packages/text-canvas/CHANGELOG.md index 706de94b04..80db9ded9f 100644 --- a/packages/text-canvas/CHANGELOG.md +++ b/packages/text-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.2.16](https://github.com/thi-ng/umbrella/compare/@thi.ng/text-canvas@0.2.15...@thi.ng/text-canvas@0.2.16) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/text-canvas + + + + + ## [0.2.15](https://github.com/thi-ng/umbrella/compare/@thi.ng/text-canvas@0.2.14...@thi.ng/text-canvas@0.2.15) (2020-06-01) **Note:** Version bump only for package @thi.ng/text-canvas diff --git a/packages/text-canvas/package.json b/packages/text-canvas/package.json index 51b9c1b0e7..6030a2781e 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.15", + "version": "0.2.16", "description": "Text based canvas, drawing, tables with arbitrary formatting (incl. ANSI/HTML)", "module": "./index.js", "main": "./lib/index.js", @@ -44,12 +44,12 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/arrays": "^0.6.8", - "@thi.ng/geom-clip-line": "^1.0.18", - "@thi.ng/math": "^1.7.10", - "@thi.ng/memoize": "^2.0.12", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/arrays": "^0.6.9", + "@thi.ng/geom-clip-line": "^1.0.19", + "@thi.ng/math": "^1.7.11", + "@thi.ng/memoize": "^2.0.13", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/text-canvas/src/ansi.ts b/packages/text-canvas/src/ansi.ts index 40f9c629f5..d1d87704c5 100644 --- a/packages/text-canvas/src/ansi.ts +++ b/packages/text-canvas/src/ansi.ts @@ -24,5 +24,5 @@ export const FMT_ANSI16: StringFormat = { }), end: ANSI_RESET, prefix: ANSI_RESET, - suffix: "\n" + suffix: "\n", }; diff --git a/packages/text-canvas/src/canvas.ts b/packages/text-canvas/src/canvas.ts index 0b322a3b84..282d99c3cc 100644 --- a/packages/text-canvas/src/canvas.ts +++ b/packages/text-canvas/src/canvas.ts @@ -1,11 +1,6 @@ import { peek } from "@thi.ng/arrays"; import { clamp } from "@thi.ng/math"; -import { - ClipRect, - NONE, - StrokeStyle, - STYLE_ASCII -} from "./api"; +import { ClipRect, NONE, StrokeStyle, STYLE_ASCII } from "./api"; import { charCode, intersectRect } from "./utils"; import type { Fn0, NumOrString } from "@thi.ng/api"; @@ -30,7 +25,7 @@ export class Canvas { this.format = this.defaultFormat = format; this.styles = [style]; this.clipRects = [ - { x1: 0, y1: 0, x2: width, y2: height, w: width, h: height } + { 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 e0908a3871..e13ae932f1 100644 --- a/packages/text-canvas/src/html.ts +++ b/packages/text-canvas/src/html.ts @@ -14,7 +14,7 @@ export const formatHtml = ({ bg, bold, dim, - underline + underline, }: HtmlFormatOpts): StringFormat => ({ start: memoize1((x: number) => { let y = x & 0xf; @@ -30,7 +30,7 @@ export const formatHtml = ({ }), end: "
", prefix: "", - suffix: "
" + suffix: "
", }); /** @@ -54,7 +54,7 @@ export const FMT_HTML_INLINE_CSS = formatHtml({ "#55f", "#f5f", "#5ff", - "#fff" + "#fff", ], attrib: "style", delim: ";", @@ -62,7 +62,7 @@ export const FMT_HTML_INLINE_CSS = formatHtml({ bg: "background:", bold: "font-weight:bold", dim: "opacity:0.5", - underline: "text-decoration:underline" + underline: "text-decoration:underline", }); /** @@ -86,7 +86,7 @@ export const FMT_HTML_TACHYONS = formatHtml({ "blue", "hot-pink", "lightest-blue", - "white" + "white", ], attrib: "class", delim: " ", @@ -94,5 +94,5 @@ export const FMT_HTML_TACHYONS = formatHtml({ bg: "bg-", bold: "b", dim: "o-50", - underline: "underline" + underline: "underline", }); diff --git a/packages/text-canvas/src/image.ts b/packages/text-canvas/src/image.ts index e8c5df70c3..bea6f0d463 100644 --- a/packages/text-canvas/src/image.ts +++ b/packages/text-canvas/src/image.ts @@ -31,7 +31,14 @@ export const resize = (canvas: Canvas, newWidth: number, newHeight: number) => { canvas.width = newWidth; canvas.height = newHeight; canvas.clipRects = [ - { x1: 0, y1: 0, x2: newWidth, y2: newHeight, w: newWidth, h: newHeight } + { + x1: 0, + y1: 0, + x2: newWidth, + y2: newHeight, + w: newWidth, + h: newHeight, + }, ]; }; @@ -106,7 +113,7 @@ export const image = ( gamma: 1, invert: false, bits: 8, - ...opts + ...opts, }; const max = (1 << bits) - 1; const mask = invert ? max : 0; diff --git a/packages/text-canvas/src/style.ts b/packages/text-canvas/src/style.ts index bfbe262ab2..9ba8256cfc 100644 --- a/packages/text-canvas/src/style.ts +++ b/packages/text-canvas/src/style.ts @@ -12,7 +12,7 @@ export const horizontalOnly = ({ hl, dot }: StrokeStyle): StrokeStyle => ({ tjt: hl, tjb: hl, jct: hl, - dot + dot, }); export const verticalOnly = ({ vl, dot }: StrokeStyle): StrokeStyle => ({ @@ -27,5 +27,5 @@ export const verticalOnly = ({ vl, dot }: StrokeStyle): StrokeStyle => ({ tjt: vl, tjb: vl, jct: vl, - dot + dot, }); diff --git a/packages/text-canvas/src/table.ts b/packages/text-canvas/src/table.ts index 8e25ba95d4..cb2cc537ae 100644 --- a/packages/text-canvas/src/table.ts +++ b/packages/text-canvas/src/table.ts @@ -8,7 +8,7 @@ import { canvas, endClip, endStyle, - setAt + setAt, } from "./canvas"; import { hline, vline } from "./hvline"; import { fillRect, strokeRect } from "./rect"; @@ -73,7 +73,7 @@ export const initTable = (opts: TableOpts, cells: (string | RawCell)[][]) => { bH, bV, bFH, - bFV + bFV, }; }; @@ -96,7 +96,7 @@ export const drawTable = ( bH, bV, bFH, - bFV + bFV, } = opts; const fmt = opts.format !== undefined ? opts.format : canvas.format; const fmtHd = opts.formatHead !== undefined ? opts.formatHead : fmt; diff --git a/packages/text-canvas/src/text.ts b/packages/text-canvas/src/text.ts index f79af00cab..a06de5af13 100644 --- a/packages/text-canvas/src/text.ts +++ b/packages/text-canvas/src/text.ts @@ -1,12 +1,6 @@ import { peek } from "@thi.ng/arrays"; import { wordWrap } from "@thi.ng/transducers"; -import { - beginClip, - beginStyle, - Canvas, - endClip, - endStyle -} from "./canvas"; +import { beginClip, beginStyle, Canvas, endClip, endStyle } from "./canvas"; import { fillRect, strokeRect } from "./rect"; import type { TextBoxOpts } from "./api"; @@ -103,7 +97,7 @@ export const textBox = ( const { format, style, padding } = { format: canvas.format, padding: [0, 0], - ...opts + ...opts, }; const currFmt = canvas.format; canvas.format = format; diff --git a/packages/transducers-binary/CHANGELOG.md b/packages/transducers-binary/CHANGELOG.md index 9650e62af9..c99dd5765f 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.5.17](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-binary@0.5.16...@thi.ng/transducers-binary@0.5.17) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/transducers-binary + + + + + ## [0.5.16](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-binary@0.5.15...@thi.ng/transducers-binary@0.5.16) (2020-06-01) **Note:** Version bump only for package @thi.ng/transducers-binary diff --git a/packages/transducers-binary/package.json b/packages/transducers-binary/package.json index 1374d651d5..17f6ba69ac 100644 --- a/packages/transducers-binary/package.json +++ b/packages/transducers-binary/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/transducers-binary", - "version": "0.5.16", + "version": "0.5.17", "description": "Binary data related transducers & reducers", "module": "./index.js", "main": "./lib/index.js", @@ -43,10 +43,10 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/compose": "^1.4.8", - "@thi.ng/random": "^1.4.10", - "@thi.ng/strings": "^1.8.9", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/compose": "^1.4.9", + "@thi.ng/random": "^1.4.11", + "@thi.ng/strings": "^1.8.10", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/transducers-binary/src/base64.ts b/packages/transducers-binary/src/base64.ts index 44b37667a2..9f38e42f15 100644 --- a/packages/transducers-binary/src/base64.ts +++ b/packages/transducers-binary/src/base64.ts @@ -6,7 +6,7 @@ import { iterator1, reduced, Reducer, - Transducer + Transducer, } from "@thi.ng/transducers"; const B64_CHARS = @@ -141,7 +141,7 @@ export function base64Encode(...args: any[]): any { } } return acc; - } + }, ]; }; } diff --git a/packages/transducers-binary/src/bits.ts b/packages/transducers-binary/src/bits.ts index aaa026794f..96b9ab2886 100644 --- a/packages/transducers-binary/src/bits.ts +++ b/packages/transducers-binary/src/bits.ts @@ -4,7 +4,7 @@ import { isReduced, iterator, Reducer, - Transducer + Transducer, } from "@thi.ng/transducers"; /** diff --git a/packages/transducers-binary/src/bytes.ts b/packages/transducers-binary/src/bytes.ts index 8a766091fa..29448a2b5b 100644 --- a/packages/transducers-binary/src/bytes.ts +++ b/packages/transducers-binary/src/bytes.ts @@ -1,17 +1,11 @@ -import { - bytes16, - bytes24, - bytes32, - bytesF32, - bytesF64 -} from "@thi.ng/binary"; +import { bytes16, bytes24, bytes32, bytesF32, bytesF64 } from "@thi.ng/binary"; import { unsupported } from "@thi.ng/errors"; import { iterator, mapcat, reduce, Reducer, - Transducer + Transducer, } from "@thi.ng/transducers"; import { BinStructItem, Type } from "./api"; import { utf8Encode } from "./utf8"; @@ -19,69 +13,69 @@ import { utf8Encode } from "./utf8"; export const i8 = (x: number): BinStructItem => [Type.I8, x]; export const i8array = (x: ArrayLike): BinStructItem => [ Type.I8_ARRAY, - x + x, ]; export const u8 = (x: number): BinStructItem => [Type.U8, x]; export const u8array = (x: ArrayLike): BinStructItem => [ Type.U8_ARRAY, - x + x, ]; export const i16 = (x: number, le = false): BinStructItem => [Type.I16, x, le]; export const i16array = (x: ArrayLike, le = false): BinStructItem => [ Type.I16_ARRAY, x, - le + le, ]; export const u16 = (x: number, le = false): BinStructItem => [Type.U16, x, le]; export const u16array = (x: ArrayLike, le = false): BinStructItem => [ Type.U16_ARRAY, x, - le + le, ]; export const i24 = (x: number, le = false): BinStructItem => [Type.I24, x, le]; export const i24array = (x: ArrayLike, le = false): BinStructItem => [ Type.I24_ARRAY, x, - le + le, ]; export const u24 = (x: number, le = false): BinStructItem => [Type.U24, x, le]; export const u24array = (x: ArrayLike, le = false): BinStructItem => [ Type.U24_ARRAY, x, - le + le, ]; export const i32 = (x: number, le = false): BinStructItem => [Type.I32, x, le]; export const i32array = (x: ArrayLike, le = false): BinStructItem => [ Type.I32_ARRAY, x, - le + le, ]; export const u32 = (x: number, le = false): BinStructItem => [Type.U32, x, le]; export const u32array = (x: ArrayLike, le = false): BinStructItem => [ Type.U32_ARRAY, x, - le + le, ]; export const f32 = (x: number, le = false): BinStructItem => [Type.F32, x, le]; export const f32array = (x: ArrayLike, le = false): BinStructItem => [ Type.F32_ARRAY, x, - le + le, ]; export const f64 = (x: number, le = false): BinStructItem => [Type.F64, x, le]; export const f64array = (x: ArrayLike, le = false): BinStructItem => [ Type.F64_ARRAY, x, - le + le, ]; export const str = (x: string): BinStructItem => [Type.STR, x]; @@ -293,6 +287,6 @@ export function bytes(cap = 1024, src?: Iterable) { default: } return acc; - } + }, ]; } diff --git a/packages/transducers-binary/src/hex-dump.ts b/packages/transducers-binary/src/hex-dump.ts index 97ab91597a..63d207c6fb 100644 --- a/packages/transducers-binary/src/hex-dump.ts +++ b/packages/transducers-binary/src/hex-dump.ts @@ -8,7 +8,7 @@ import { mapIndexed, padLast, partition, - Transducer + Transducer, } from "@thi.ng/transducers"; import type { HexDumpOpts } from "./api"; diff --git a/packages/transducers-binary/src/partition-bits.ts b/packages/transducers-binary/src/partition-bits.ts index 763d689d4a..3ba86d18c7 100644 --- a/packages/transducers-binary/src/partition-bits.ts +++ b/packages/transducers-binary/src/partition-bits.ts @@ -3,7 +3,7 @@ import { isReduced, iterator, Reducer, - Transducer + Transducer, } from "@thi.ng/transducers"; /** @@ -34,8 +34,8 @@ export function partitionBits(...args: any[]): any { return destSize < srcSize ? small(rfn, destSize, srcSize) : destSize > srcSize - ? large(rfn, destSize, srcSize) - : rfn; + ? large(rfn, destSize, srcSize) + : rfn; }) ); } @@ -65,7 +65,7 @@ const small = ( r = wordSize - b; y = r > 0 ? (x >>> maxb) & m2 : 0; return acc; - } + }, ]; }; @@ -96,6 +96,6 @@ const large = ( y = (x & ((1 << r) - 1)) << (n - r); } return acc; - } + }, ]; }; diff --git a/packages/transducers-binary/src/utf8.ts b/packages/transducers-binary/src/utf8.ts index 023ef12ec4..913e55f85e 100644 --- a/packages/transducers-binary/src/utf8.ts +++ b/packages/transducers-binary/src/utf8.ts @@ -4,7 +4,7 @@ import { iterator, iterator1, Reducer, - Transducer + Transducer, } from "@thi.ng/transducers"; /** @@ -150,14 +150,14 @@ export function utf8Encode(src?: string): any { buf = [ 0xe0 | (u >> 12), 0x80 | ((u >> 6) & 0x3f), - 0x80 | (u & 0x3f) + 0x80 | (u & 0x3f), ]; } else if (u < 0x200000) { buf = [ 0xf0 | (u >> 18), 0x80 | ((u >> 12) & 0x3f), 0x80 | ((u >> 6) & 0x3f), - 0x80 | (u & 0x3f) + 0x80 | (u & 0x3f), ]; } else if (u < 0x4000000) { buf = [ @@ -165,7 +165,7 @@ export function utf8Encode(src?: string): any { 0x80 | ((u >> 18) & 0x3f), 0x80 | ((u >> 12) & 0x3f), 0x80 | ((u >> 6) & 0x3f), - 0x80 | (u & 0x3f) + 0x80 | (u & 0x3f), ]; } else { buf = [ @@ -174,7 +174,7 @@ export function utf8Encode(src?: string): any { 0x80 | ((u >> 18) & 0x3f), 0x80 | ((u >> 12) & 0x3f), 0x80 | ((u >> 6) & 0x3f), - 0x80 | (u & 0x3f) + 0x80 | (u & 0x3f), ]; } for (let i = 0, n = buf.length; i < n; i++) { diff --git a/packages/transducers-binary/test/partition-bits.ts b/packages/transducers-binary/test/partition-bits.ts index d0b7d7e4f6..ec5ba30259 100644 --- a/packages/transducers-binary/test/partition-bits.ts +++ b/packages/transducers-binary/test/partition-bits.ts @@ -1,16 +1,28 @@ import * as assert from "assert"; import { radix } from "@thi.ng/strings"; -import { comp, map, padLast, partition, iterator, range, run } from "@thi.ng/transducers"; +import { + comp, + map, + padLast, + partition, + iterator, + range, + run, +} from "@thi.ng/transducers"; import { bits, partitionBits } from "../src"; const src = [0xff, 0xa5, 0xfe, 0xf7]; -const xform = (n: number) => - comp(partitionBits(n), map(radix(2, n))); +const xform = (n: number) => comp(partitionBits(n), map(radix(2, n))); const xformB = (n: number) => - comp(bits(8), padLast(n, 0), partition(n, true), map((x) => x.join(""))); + comp( + bits(8), + padLast(n, 0), + partition(n, true), + map((x) => x.join("")) + ); const check = (n: number) => assert.deepEqual( @@ -20,7 +32,9 @@ const check = (n: number) => ); describe("partitionBits", () => { - - it("all sizes", () => run(map((n: number) => check(n)), range(1, 33))); - -}); \ No newline at end of file + it("all sizes", () => + run( + map((n: number) => check(n)), + range(1, 33) + )); +}); diff --git a/packages/transducers-fsm/CHANGELOG.md b/packages/transducers-fsm/CHANGELOG.md index ac176e4bad..1868db1a7e 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.27](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-fsm@1.1.26...@thi.ng/transducers-fsm@1.1.27) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/transducers-fsm + + + + + ## [1.1.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-fsm@1.1.25...@thi.ng/transducers-fsm@1.1.26) (2020-06-01) **Note:** Version bump only for package @thi.ng/transducers-fsm diff --git a/packages/transducers-fsm/package.json b/packages/transducers-fsm/package.json index 11eb2dcdba..ed098c7e2e 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.26", + "version": "1.1.27", "description": "Transducer-based Finite State Machine transformer", "module": "./index.js", "main": "./lib/index.js", @@ -43,8 +43,8 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/transducers-fsm/src/index.ts b/packages/transducers-fsm/src/index.ts index 4537fc56dd..e34ef1b17d 100644 --- a/packages/transducers-fsm/src/index.ts +++ b/packages/transducers-fsm/src/index.ts @@ -3,7 +3,7 @@ import { ensureReduced, isReduced, Reducer, - Transducer + Transducer, } from "@thi.ng/transducers"; import type { Fn0, IObjectOf } from "@thi.ng/api"; diff --git a/packages/transducers-fsm/test/index.ts b/packages/transducers-fsm/test/index.ts index eef860a970..dea873be63 100644 --- a/packages/transducers-fsm/test/index.ts +++ b/packages/transducers-fsm/test/index.ts @@ -29,10 +29,10 @@ describe("transducers-fsm", () => { state.state = "done"; } }, - done: () => {} + done: () => {}, }, terminate: "done", - init: () => ({ state: "skip", count: 0 }) + init: () => ({ state: "skip", count: 0 }), }); assert.deepEqual( [...tx.iterator(testFSM, tx.range(100))], @@ -45,9 +45,12 @@ describe("transducers-fsm", () => { assert.deepEqual( [ ...tx.iterator( - tx.comp(testFSM, tx.map((x: number) => x * 10)), + tx.comp( + testFSM, + tx.map((x: number) => x * 10) + ), tx.range(100) - ) + ), ], [50, 60, 70, 80, 90, 150, 160, 170, 180, 190] ); diff --git a/packages/transducers-hdom/CHANGELOG.md b/packages/transducers-hdom/CHANGELOG.md index a698d1d30f..652cb30ccc 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.56](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-hdom@2.0.55...@thi.ng/transducers-hdom@2.0.56) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/transducers-hdom + + + + + ## [2.0.55](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-hdom@2.0.54...@thi.ng/transducers-hdom@2.0.55) (2020-06-01) **Note:** Version bump only for package @thi.ng/transducers-hdom diff --git a/packages/transducers-hdom/package.json b/packages/transducers-hdom/package.json index 8c42c88770..36f9c227f3 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.55", + "version": "2.0.56", "description": "Transducer based UI updater for @thi.ng/hdom", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/hdom": "^8.0.27", - "@thi.ng/hiccup": "^3.2.24", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/hdom": "^8.0.28", + "@thi.ng/hiccup": "^3.2.25", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/transducers-hdom/src/index.ts b/packages/transducers-hdom/src/index.ts index 1960784da5..b02fdfd135 100644 --- a/packages/transducers-hdom/src/index.ts +++ b/packages/transducers-hdom/src/index.ts @@ -2,7 +2,7 @@ import { DEFAULT_IMPL, HDOMImplementation, HDOMOpts, - resolveRoot + resolveRoot, } from "@thi.ng/hdom"; import { derefContext } from "@thi.ng/hiccup"; import { scan, Transducer } from "@thi.ng/transducers"; @@ -65,6 +65,6 @@ export const updateDOM = ( return curr; } return prev; - } + }, ]); }; diff --git a/packages/transducers-patch/CHANGELOG.md b/packages/transducers-patch/CHANGELOG.md index 3883f2c6f0..32c53ab5e3 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.1.18](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-patch@0.1.17...@thi.ng/transducers-patch@0.1.18) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/transducers-patch + + + + + ## [0.1.17](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-patch@0.1.16...@thi.ng/transducers-patch@0.1.17) (2020-06-01) **Note:** Version bump only for package @thi.ng/transducers-patch diff --git a/packages/transducers-patch/package.json b/packages/transducers-patch/package.json index 802b364595..e164b27340 100644 --- a/packages/transducers-patch/package.json +++ b/packages/transducers-patch/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/transducers-patch", - "version": "0.1.17", + "version": "0.1.18", "description": "Reducers for patch-based, immutable-by-default array & object editing", "module": "./index.js", "main": "./lib/index.js", @@ -43,11 +43,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/checks": "^2.7.1", "@thi.ng/errors": "^1.2.14", - "@thi.ng/paths": "^4.0.7", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/paths": "^4.0.8", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/transducers-patch/test/index.ts b/packages/transducers-patch/test/index.ts index e509fd9085..306ceac578 100644 --- a/packages/transducers-patch/test/index.ts +++ b/packages/transducers-patch/test/index.ts @@ -12,7 +12,7 @@ describe("transducers-patch", () => { [Patch.INSERT, 0, [10, 11]], [Patch.UPDATE, 1, (x, n) => x * n, 10], [Patch.DELETE, 3], - [Patch.SET, 2, 200] + [Patch.SET, 2, 200], ] ), [ @@ -20,7 +20,7 @@ describe("transducers-patch", () => { [10, 11, 1, 2, 3], [10, 110, 1, 2, 3], [10, 110, 1, 3], - [10, 110, 200, 3] + [10, 110, 200, 3], ] ); }); @@ -33,14 +33,14 @@ describe("transducers-patch", () => { [ [Patch.SET, ["a", "b"], 1], [Patch.UPDATE, "a.b", (x, n) => x + n, 10], - [Patch.DELETE, "x"] + [Patch.DELETE, "x"], ] ), [ { x: 23 }, { x: 23, a: { b: 1 } }, { x: 23, a: { b: 11 } }, - { a: { b: 11 } } + { a: { b: 11 } }, ] ); }); diff --git a/packages/transducers-stats/CHANGELOG.md b/packages/transducers-stats/CHANGELOG.md index 7e0f3c3764..700d9b71af 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.27](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-stats@1.1.26...@thi.ng/transducers-stats@1.1.27) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/transducers-stats + + + + + ## [1.1.26](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers-stats@1.1.25...@thi.ng/transducers-stats@1.1.26) (2020-06-01) **Note:** Version bump only for package @thi.ng/transducers-stats diff --git a/packages/transducers-stats/package.json b/packages/transducers-stats/package.json index 120950991f..3ce1031ee5 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.26", + "version": "1.1.27", "description": "Transducers for statistical / technical analysis", "module": "./index.js", "main": "./lib/index.js", @@ -43,10 +43,10 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/checks": "^2.7.0", - "@thi.ng/dcons": "^2.2.19", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/dcons": "^2.2.20", "@thi.ng/errors": "^1.2.14", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/transducers-stats/src/bollinger.ts b/packages/transducers-stats/src/bollinger.ts index 86cec37c1b..0d388b6879 100644 --- a/packages/transducers-stats/src/bollinger.ts +++ b/packages/transducers-stats/src/bollinger.ts @@ -5,7 +5,7 @@ import { map, multiplex, partition, - Transducer + Transducer, } from "@thi.ng/transducers"; import { mse } from "./mse"; import { sma } from "./sma"; diff --git a/packages/transducers-stats/src/donchian.ts b/packages/transducers-stats/src/donchian.ts index 10a61f3805..6a945a890f 100644 --- a/packages/transducers-stats/src/donchian.ts +++ b/packages/transducers-stats/src/donchian.ts @@ -3,7 +3,7 @@ import { iterator, map, partition, - Transducer + Transducer, } from "@thi.ng/transducers"; import { bounds } from "./bounds"; diff --git a/packages/transducers-stats/src/ema.ts b/packages/transducers-stats/src/ema.ts index 6a40af3f67..5b591707c7 100644 --- a/packages/transducers-stats/src/ema.ts +++ b/packages/transducers-stats/src/ema.ts @@ -1,10 +1,5 @@ import { illegalArgs } from "@thi.ng/errors"; -import { - compR, - iterator1, - Reducer, - Transducer -} from "@thi.ng/transducers"; +import { compR, iterator1, Reducer, Transducer } from "@thi.ng/transducers"; /** * {@link https://en.wikipedia.org/wiki/Moving_average#Exponential_moving_average} diff --git a/packages/transducers-stats/src/hma.ts b/packages/transducers-stats/src/hma.ts index b8185ac1b2..eb580e87e1 100644 --- a/packages/transducers-stats/src/hma.ts +++ b/packages/transducers-stats/src/hma.ts @@ -4,7 +4,7 @@ import { iterator1, map, multiplex, - Transducer + Transducer, } from "@thi.ng/transducers"; import { wma } from "./wma"; diff --git a/packages/transducers-stats/src/macd.ts b/packages/transducers-stats/src/macd.ts index e8168f34c1..6b11900d0d 100644 --- a/packages/transducers-stats/src/macd.ts +++ b/packages/transducers-stats/src/macd.ts @@ -1,10 +1,4 @@ -import { - $iter, - compR, - Reducer, - step, - Transducer -} from "@thi.ng/transducers"; +import { $iter, compR, Reducer, step, Transducer } from "@thi.ng/transducers"; import { ema } from "./ema"; export interface MACD { @@ -75,7 +69,7 @@ export function macd(...args: any[]): any { signal, div: macd - signal, fast, - slow + slow, }); }); }) diff --git a/packages/transducers-stats/src/momentum.ts b/packages/transducers-stats/src/momentum.ts index e9c0ff070a..ca43914331 100644 --- a/packages/transducers-stats/src/momentum.ts +++ b/packages/transducers-stats/src/momentum.ts @@ -1,11 +1,6 @@ import { DCons } from "@thi.ng/dcons"; import { illegalArgs } from "@thi.ng/errors"; -import { - compR, - iterator1, - Reducer, - Transducer -} from "@thi.ng/transducers"; +import { compR, iterator1, Reducer, Transducer } from "@thi.ng/transducers"; /** * {@link en.wikipedia.org/wiki/Momentum_(technical_analysis)} diff --git a/packages/transducers-stats/src/roc.ts b/packages/transducers-stats/src/roc.ts index c2a8087e8c..0684edcd7d 100644 --- a/packages/transducers-stats/src/roc.ts +++ b/packages/transducers-stats/src/roc.ts @@ -1,11 +1,6 @@ import { DCons } from "@thi.ng/dcons"; import { illegalArgs } from "@thi.ng/errors"; -import { - compR, - iterator1, - Reducer, - Transducer -} from "@thi.ng/transducers"; +import { compR, iterator1, Reducer, Transducer } from "@thi.ng/transducers"; /** * Rate of change. diff --git a/packages/transducers-stats/src/rsi.ts b/packages/transducers-stats/src/rsi.ts index 3ee46c1b5c..5617af669c 100644 --- a/packages/transducers-stats/src/rsi.ts +++ b/packages/transducers-stats/src/rsi.ts @@ -4,7 +4,7 @@ import { iterator1, map, multiplex, - Transducer + Transducer, } from "@thi.ng/transducers"; import { momentum } from "./momentum"; import { sma } from "./sma"; diff --git a/packages/transducers-stats/src/sd.ts b/packages/transducers-stats/src/sd.ts index ea29a157bb..aebfd33c35 100644 --- a/packages/transducers-stats/src/sd.ts +++ b/packages/transducers-stats/src/sd.ts @@ -5,7 +5,7 @@ import { map, multiplex, partition, - Transducer + Transducer, } from "@thi.ng/transducers"; import { mse } from "./mse"; import { sma } from "./sma"; diff --git a/packages/transducers-stats/src/sma.ts b/packages/transducers-stats/src/sma.ts index 306d0fff42..f6db1fa68e 100644 --- a/packages/transducers-stats/src/sma.ts +++ b/packages/transducers-stats/src/sma.ts @@ -1,11 +1,6 @@ import { DCons } from "@thi.ng/dcons"; import { illegalArgs } from "@thi.ng/errors"; -import { - compR, - iterator1, - Reducer, - Transducer -} from "@thi.ng/transducers"; +import { compR, iterator1, Reducer, Transducer } from "@thi.ng/transducers"; /** * Like {@link @thi.ng/transducers#(movingAverage:1)}, but using more diff --git a/packages/transducers-stats/src/stochastic.ts b/packages/transducers-stats/src/stochastic.ts index cbe97c8e20..2d91d4edfb 100644 --- a/packages/transducers-stats/src/stochastic.ts +++ b/packages/transducers-stats/src/stochastic.ts @@ -1,10 +1,4 @@ -import { - $iter, - compR, - Reducer, - step, - Transducer -} from "@thi.ng/transducers"; +import { $iter, compR, Reducer, step, Transducer } from "@thi.ng/transducers"; import { donchian } from "./donchian"; import { sma } from "./sma"; diff --git a/packages/transducers-stats/src/wma.ts b/packages/transducers-stats/src/wma.ts index 132f124d8a..715b36d5ef 100644 --- a/packages/transducers-stats/src/wma.ts +++ b/packages/transducers-stats/src/wma.ts @@ -5,7 +5,7 @@ import { map, partition, range, - Transducer + Transducer, } from "@thi.ng/transducers"; import { dot } from "./dot"; diff --git a/packages/transducers/CHANGELOG.md b/packages/transducers/CHANGELOG.md index a1542dc6fc..89ff18ec8e 100644 --- a/packages/transducers/CHANGELOG.md +++ b/packages/transducers/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. +# [7.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.0.0...@thi.ng/transducers@7.1.0) (2020-06-14) + + +### Features + +* **transducers:** add keyPermutations, tests, update readme ([5110d50](https://github.com/thi-ng/umbrella/commit/5110d50ba0c499c48c288820b9fb73ee42f9142f)) + + + + + # [7.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@6.7.0...@thi.ng/transducers@7.0.0) (2020-06-01) diff --git a/packages/transducers/README.md b/packages/transducers/README.md index 82494c2240..d26285e914 100644 --- a/packages/transducers/README.md +++ b/packages/transducers/README.md @@ -165,7 +165,7 @@ yarn add @thi.ng/transducers ``` -Package sizes (gzipped, pre-treeshake): ESM: 8.00 KB / CJS: 8.54 KB / UMD: 7.72 KB +Package sizes (gzipped, pre-treeshake): ESM: 8.05 KB / CJS: 8.58 KB / UMD: 7.77 KB ## Dependencies @@ -893,6 +893,7 @@ tx.transduce(tx.map((x) => x*10), tx.push(), tx.range(4)) - [dup](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers/src/iter/dup.ts) - [extendSides](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers/src/iter/extend-sides.ts) - [iterate](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers/src/iter/iterate.ts) +- [keyPermutations](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers/src/iter/key-permutations.ts) - [keys](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers/src/iter/keys.ts) - [line](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers/src/iter/line.ts) - [normRange](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers/src/iter/norm-range.ts) diff --git a/packages/transducers/package.json b/packages/transducers/package.json index bd24da948d..0ae2e69d08 100644 --- a/packages/transducers/package.json +++ b/packages/transducers/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/transducers", - "version": "7.0.0", + "version": "7.1.0", "description": "Lightweight transducer implementations for ES6 / TypeScript", "module": "./index.js", "main": "./lib/index.js", @@ -43,16 +43,16 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/arrays": "^0.6.8", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/compare": "^1.3.7", - "@thi.ng/compose": "^1.4.8", + "@thi.ng/api": "^6.11.1", + "@thi.ng/arrays": "^0.6.9", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/compare": "^1.3.8", + "@thi.ng/compose": "^1.4.9", "@thi.ng/equiv": "^1.0.23", "@thi.ng/errors": "^1.2.14", - "@thi.ng/math": "^1.7.10", - "@thi.ng/random": "^1.4.10", - "@thi.ng/strings": "^1.8.9", + "@thi.ng/math": "^1.7.11", + "@thi.ng/random": "^1.4.11", + "@thi.ng/strings": "^1.8.10", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/transducers/src/func/juxtr.ts b/packages/transducers/src/func/juxtr.ts index ba68cbe3cb..5de1942684 100644 --- a/packages/transducers/src/func/juxtr.ts +++ b/packages/transducers/src/func/juxtr.ts @@ -49,7 +49,7 @@ export function juxtR(...rs: Reducer[]): any { return reduced([unreduced(aa1)]); } return [aa1]; - } + }, ]; } case 2: { @@ -65,7 +65,7 @@ export function juxtR(...rs: Reducer[]): any { return reduced([unreduced(aa1), unreduced(aa2)]); } return [aa1, aa2]; - } + }, ]; } case 3: { @@ -83,11 +83,11 @@ export function juxtR(...rs: Reducer[]): any { return reduced([ unreduced(aa1), unreduced(aa2), - unreduced(aa3) + unreduced(aa3), ]); } return [aa1, aa2, aa3]; - } + }, ]; } default: @@ -106,7 +106,7 @@ export function juxtR(...rs: Reducer[]): any { res[i] = a; } return done ? reduced(res) : res; - } + }, ]; } } diff --git a/packages/transducers/src/index.ts b/packages/transducers/src/index.ts index 6a9267e02f..007972d85e 100644 --- a/packages/transducers/src/index.ts +++ b/packages/transducers/src/index.ts @@ -116,6 +116,7 @@ export * from "./iter/cycle"; export * from "./iter/dup"; export * from "./iter/extend-sides"; export * from "./iter/iterate"; +export * from "./iter/key-permutations"; export * from "./iter/keys"; export * from "./iter/line"; export * from "./iter/norm-range"; diff --git a/packages/transducers/src/internal/group-opts.ts b/packages/transducers/src/internal/group-opts.ts index d2a34dee42..6df754f02e 100644 --- a/packages/transducers/src/internal/group-opts.ts +++ b/packages/transducers/src/internal/group-opts.ts @@ -15,5 +15,5 @@ export const __groupByOpts = ( >{ key: identity, group: push(), - ...opts + ...opts, }; diff --git a/packages/transducers/src/internal/sort-opts.ts b/packages/transducers/src/internal/sort-opts.ts index 3135b64636..c4533372a7 100644 --- a/packages/transducers/src/internal/sort-opts.ts +++ b/packages/transducers/src/internal/sort-opts.ts @@ -13,5 +13,5 @@ export const __sortOpts = (opts?: Partial>) => >{ key: identity, compare, - ...opts + ...opts, }; diff --git a/packages/transducers/src/iter/key-permutations.ts b/packages/transducers/src/iter/key-permutations.ts new file mode 100644 index 0000000000..229c567fa7 --- /dev/null +++ b/packages/transducers/src/iter/key-permutations.ts @@ -0,0 +1,46 @@ +import type { IObjectOf, Pair } from "@thi.ng/api"; +import { assocObj } from "../rfn/assoc-obj"; +import { map } from "../xform/map"; +import { mapcat } from "../xform/mapcat"; +import { partition } from "../xform/partition"; +import { pairs } from "./pairs"; +import { permutations } from "./permutations"; + +/** + * Similar to {@link permutations}, however takes an object with each + * key specifying an array of its possible values. Yields an iterable of + * objects of all value permutations. + * + * @remarks + * The resulting object type will be derived from the value types in the + * given `spec` object. + * + * The order of resulting permutations is not guaranteed and depending + * on the VM's iteration behavior of `Object.keys()`. + * + * @example + * ```ts + * [...keyPermutations({ a: [1, 2], b: [true, false], c: ["X", "Y"] })] + * // [ + * // { a: 1, b: true, c: 'X' }, + * // { a: 1, b: true, c: 'Y' }, + * // { a: 1, b: false, c: 'X' }, + * // { a: 1, b: false, c: 'Y' }, + * // { a: 2, b: true, c: 'X' }, + * // { a: 2, b: true, c: 'Y' }, + * // { a: 2, b: false, c: 'X' }, + * // { a: 2, b: false, c: 'Y' } + * // ] + * ``` + * + * @param spec - permutation spec object + */ +export const keyPermutations = >( + spec: T +): IterableIterator<{ [k in keyof T]: T[k][0] }> => + ( + map( + (x) => assocObj(>>partition(2, x)), + permutations(...mapcat(([k, v]) => [[k], v], pairs(spec))) + ) + ); diff --git a/packages/transducers/src/rfn/count.ts b/packages/transducers/src/rfn/count.ts index 27e80d8ce8..abb701c7a7 100644 --- a/packages/transducers/src/rfn/count.ts +++ b/packages/transducers/src/rfn/count.ts @@ -19,5 +19,8 @@ export function count(...args: any[]): any { } let offset: number = args[0] || 0; let step: number = args[1] || 1; - return reducer(() => offset, (acc, _) => acc + step); + return reducer( + () => offset, + (acc, _) => acc + step + ); } diff --git a/packages/transducers/src/rfn/div.ts b/packages/transducers/src/rfn/div.ts index e4dd08d5d2..f4b41cb1d2 100644 --- a/packages/transducers/src/rfn/div.ts +++ b/packages/transducers/src/rfn/div.ts @@ -10,5 +10,8 @@ export function div(init: number, xs: Iterable): number; export function div(init: number, xs?: Iterable): any { return xs ? reduce(div(init), xs) - : reducer(() => init, (acc, x: number) => acc / x); + : reducer( + () => init, + (acc, x: number) => acc / x + ); } diff --git a/packages/transducers/src/rfn/group-binary.ts b/packages/transducers/src/rfn/group-binary.ts index d32f3f2950..4a96626491 100644 --- a/packages/transducers/src/rfn/group-binary.ts +++ b/packages/transducers/src/rfn/group-binary.ts @@ -95,12 +95,12 @@ export const groupBinary = ( const init = branch || (() => ({})); let rfn: Reducer = groupByObj({ key: branchPred(key, 1, left, right), - group: leaf || push() + group: leaf || push(), }); for (let i = 2, maxIndex = 1 << bits; i < maxIndex; i <<= 1) { rfn = groupByObj({ key: branchPred(key, i, left, right), - group: [init, rfn[1], rfn[2]] + group: [init, rfn[1], rfn[2]], }); } return [init, rfn[1], rfn[2]]; diff --git a/packages/transducers/src/rfn/group-by-map.ts b/packages/transducers/src/rfn/group-by-map.ts index a36d9e0278..7fa50f8ddb 100644 --- a/packages/transducers/src/rfn/group-by-map.ts +++ b/packages/transducers/src/rfn/group-by-map.ts @@ -30,6 +30,6 @@ export function groupByMap(...args: any[]): any { ? reduce(acc.get(k)!, x) : reduce(init(), x) ); - } + }, ]; } diff --git a/packages/transducers/src/rfn/group-by-obj.ts b/packages/transducers/src/rfn/group-by-obj.ts index 714dcf1706..4c5e7f377a 100644 --- a/packages/transducers/src/rfn/group-by-obj.ts +++ b/packages/transducers/src/rfn/group-by-obj.ts @@ -29,6 +29,6 @@ export function groupByObj(...args: any[]): any { ? _reduce(acc[k], x) : _reduce(_init(), x); return acc; - } + }, ]; } diff --git a/packages/transducers/src/rfn/max.ts b/packages/transducers/src/rfn/max.ts index a3486e2137..d0d19c1b2e 100644 --- a/packages/transducers/src/rfn/max.ts +++ b/packages/transducers/src/rfn/max.ts @@ -6,5 +6,8 @@ export function max(xs: Iterable): number; export function max(xs?: Iterable): any { return xs ? reduce(max(), xs) - : reducer(() => -Infinity, (acc, x: number) => Math.max(acc, x)); + : reducer( + () => -Infinity, + (acc, x: number) => Math.max(acc, x) + ); } diff --git a/packages/transducers/src/rfn/mean.ts b/packages/transducers/src/rfn/mean.ts index 862185975c..2ef04560f8 100644 --- a/packages/transducers/src/rfn/mean.ts +++ b/packages/transducers/src/rfn/mean.ts @@ -14,6 +14,6 @@ export function mean(xs?: Iterable): any { : >[ () => (n = 0), (acc) => (n > 1 ? acc / n : acc), - (acc, x) => (n++, acc + x) + (acc, x) => (n++, acc + x), ]; } diff --git a/packages/transducers/src/rfn/min.ts b/packages/transducers/src/rfn/min.ts index 62e24344e9..b0be2cbb58 100644 --- a/packages/transducers/src/rfn/min.ts +++ b/packages/transducers/src/rfn/min.ts @@ -6,5 +6,8 @@ export function min(xs: Iterable): number; export function min(xs?: Iterable): any { return xs ? reduce(min(), xs) - : reducer(() => Infinity, (acc, x: number) => Math.min(acc, x)); + : reducer( + () => Infinity, + (acc, x: number) => Math.min(acc, x) + ); } diff --git a/packages/transducers/src/rfn/push-copy.ts b/packages/transducers/src/rfn/push-copy.ts index ce5e8107f8..664ce625cc 100644 --- a/packages/transducers/src/rfn/push-copy.ts +++ b/packages/transducers/src/rfn/push-copy.ts @@ -2,4 +2,7 @@ import { reducer } from "../reduce"; import type { Reducer } from "../api"; export const pushCopy = (): Reducer => - reducer(() => [], (acc, x) => ((acc = acc.slice()).push(x), acc)); + reducer( + () => [], + (acc, x) => ((acc = acc.slice()).push(x), acc) + ); diff --git a/packages/transducers/src/rfn/push-sort.ts b/packages/transducers/src/rfn/push-sort.ts index 2ee09592af..d6c231edb8 100644 --- a/packages/transducers/src/rfn/push-sort.ts +++ b/packages/transducers/src/rfn/push-sort.ts @@ -20,6 +20,6 @@ export function pushSort( : >[ () => [], (acc) => acc.sort(cmp), - (acc, x) => (acc.push(x), acc) + (acc, x) => (acc.push(x), acc), ]; } diff --git a/packages/transducers/src/rfn/push.ts b/packages/transducers/src/rfn/push.ts index f28e4c4033..cb656aa8f2 100644 --- a/packages/transducers/src/rfn/push.ts +++ b/packages/transducers/src/rfn/push.ts @@ -6,5 +6,8 @@ export function push(xs: Iterable): T[]; export function push(xs?: Iterable): any { return xs ? [...xs] - : reducer(() => [], (acc, x) => (acc.push(x), acc)); + : reducer( + () => [], + (acc, x) => (acc.push(x), acc) + ); } diff --git a/packages/transducers/src/rfn/reductions.ts b/packages/transducers/src/rfn/reductions.ts index c39dc8fda6..186a75530b 100644 --- a/packages/transducers/src/rfn/reductions.ts +++ b/packages/transducers/src/rfn/reductions.ts @@ -21,6 +21,6 @@ export function reductions(rfn: Reducer, xs?: Iterable): any { } acc.push(res); return acc; - } + }, ]; } diff --git a/packages/transducers/src/transduce.ts b/packages/transducers/src/transduce.ts index cd6278f7aa..5d34ecce04 100644 --- a/packages/transducers/src/transduce.ts +++ b/packages/transducers/src/transduce.ts @@ -2,12 +2,7 @@ import { illegalArity } from "@thi.ng/errors"; import { ensureTransducer } from "./internal/ensure"; import { reduce } from "./reduce"; import { map } from "./xform/map"; -import type { - IReducible, - Reducer, - Transducer, - TxLike -} from "./api"; +import type { IReducible, Reducer, Transducer, TxLike } from "./api"; export function transduce( tx: TxLike, diff --git a/packages/transducers/src/xform/drop-while.ts b/packages/transducers/src/xform/drop-while.ts index 81f4621102..e4c1278308 100644 --- a/packages/transducers/src/xform/drop-while.ts +++ b/packages/transducers/src/xform/drop-while.ts @@ -16,9 +16,8 @@ export function dropWhile(...args: any[]): any { const r = rfn[2]; const pred = args[0]; let ok = true; - return compR( - rfn, - (acc, x: T) => ((ok = ok && pred(x)) ? acc : r(acc, x)) + return compR(rfn, (acc, x: T) => + (ok = ok && pred(x)) ? acc : r(acc, x) ); }) ); diff --git a/packages/transducers/src/xform/drop.ts b/packages/transducers/src/xform/drop.ts index c8beb49de3..37f98aa8cc 100644 --- a/packages/transducers/src/xform/drop.ts +++ b/packages/transducers/src/xform/drop.ts @@ -6,14 +6,13 @@ import type { Reducer, Transducer } from "../api"; export function drop(n: number): Transducer; export function drop(n: number, src: Iterable): IterableIterator; export function drop(n: number, src?: Iterable): any { - return isIterable(src) + return isIterable(src) ? iterator1(drop(n), src) : (rfn: Reducer) => { const r = rfn[2]; let m = n; - return compR( - rfn, - (acc, x: T) => (m > 0 ? (m--, acc) : r(acc, x)) + return compR(rfn, (acc, x: T) => + m > 0 ? (m--, acc) : r(acc, x) ); }; } diff --git a/packages/transducers/src/xform/pad-last.ts b/packages/transducers/src/xform/pad-last.ts index a19a5c1955..5b7892d244 100644 --- a/packages/transducers/src/xform/pad-last.ts +++ b/packages/transducers/src/xform/pad-last.ts @@ -57,7 +57,7 @@ export function padLast(n: number, fill: T, src?: Iterable): any { } return complete(acc); }, - (acc, x) => (m++, reduce(acc, x)) + (acc, x) => (m++, reduce(acc, x)), ]; }; } diff --git a/packages/transducers/src/xform/partition-by.ts b/packages/transducers/src/xform/partition-by.ts index 78e88498ff..9f09cafb95 100644 --- a/packages/transducers/src/xform/partition-by.ts +++ b/packages/transducers/src/xform/partition-by.ts @@ -60,7 +60,7 @@ export function partitionBy(...args: any[]): any { prev = curr; } return acc; - } + }, ]; }) ); diff --git a/packages/transducers/src/xform/partition.ts b/packages/transducers/src/xform/partition.ts index 2b3d78df08..064c02243b 100644 --- a/packages/transducers/src/xform/partition.ts +++ b/packages/transducers/src/xform/partition.ts @@ -98,7 +98,7 @@ export function partition(...args: any[]): any { skip--; } return acc; - } + }, ]; }; } diff --git a/packages/transducers/src/xform/scan.ts b/packages/transducers/src/xform/scan.ts index 11c0ee1360..cf9b9bde39 100644 --- a/packages/transducers/src/xform/scan.ts +++ b/packages/transducers/src/xform/scan.ts @@ -54,7 +54,7 @@ export function scan(...args: any[]): any { return ensureReduced(reduceo(_acc, (acc).deref())); } return reduceo(_acc, acc); - } + }, ]; }) ); diff --git a/packages/transducers/src/xform/sliding-window.ts b/packages/transducers/src/xform/sliding-window.ts index 9bac4c785d..284c2cd4fd 100644 --- a/packages/transducers/src/xform/sliding-window.ts +++ b/packages/transducers/src/xform/sliding-window.ts @@ -10,7 +10,7 @@ import { $iter } from "../iterator"; * accumulation buffer. * * @remarks - * If `size` is implements {@link IDeref}, the window size will be + * If `size` implements {@link IDeref}, the window size will be * re-evaluated for each new input and therefore can be used as * mechanism to dynamically adjust the window size. * diff --git a/packages/transducers/src/xform/stream-shuffle.ts b/packages/transducers/src/xform/stream-shuffle.ts index 972b85ced8..e51a9bb4d2 100644 --- a/packages/transducers/src/xform/stream-shuffle.ts +++ b/packages/transducers/src/xform/stream-shuffle.ts @@ -55,7 +55,7 @@ export function streamShuffle(...args: any[]): any { acc = reduce(acc, buf.shift()!); } return acc; - } + }, ]; }) ); diff --git a/packages/transducers/src/xform/stream-sort.ts b/packages/transducers/src/xform/stream-sort.ts index c25ced21f2..2644415616 100644 --- a/packages/transducers/src/xform/stream-sort.ts +++ b/packages/transducers/src/xform/stream-sort.ts @@ -44,7 +44,7 @@ export function streamSort(...args: any[]): any { acc = reduce(acc, buf.shift()!); } return acc; - } + }, ]; }; } diff --git a/packages/transducers/src/xform/take-last.ts b/packages/transducers/src/xform/take-last.ts index b82312c7c8..fce3d397e8 100644 --- a/packages/transducers/src/xform/take-last.ts +++ b/packages/transducers/src/xform/take-last.ts @@ -32,7 +32,7 @@ export function takeLast(n: number, src?: Iterable): any { } buf.push(x); return acc; - } + }, ]; }; } diff --git a/packages/transducers/src/xform/toggle.ts b/packages/transducers/src/xform/toggle.ts index dabc5c4625..0f050cbfac 100644 --- a/packages/transducers/src/xform/toggle.ts +++ b/packages/transducers/src/xform/toggle.ts @@ -41,7 +41,7 @@ export function toggle( return [ init, complete, - (acc: any) => reduce(acc, (state = !state) ? on : off) + (acc: any) => reduce(acc, (state = !state) ? on : off), ]; }; } diff --git a/packages/transducers/src/xform/word-wrap.ts b/packages/transducers/src/xform/word-wrap.ts index bbefe689be..190df3f0d6 100644 --- a/packages/transducers/src/xform/word-wrap.ts +++ b/packages/transducers/src/xform/word-wrap.ts @@ -44,7 +44,7 @@ export function wordWrap(...args: any[]): any { const { delim, always } = { delim: 1, always: true, - ...args[1] + ...args[1], }; return partitionBy(() => { let n = 0; diff --git a/packages/transducers/test/fuzzy.ts b/packages/transducers/test/fuzzy.ts index 2cd3090b0a..d9f2cfbd85 100644 --- a/packages/transducers/test/fuzzy.ts +++ b/packages/transducers/test/fuzzy.ts @@ -6,15 +6,39 @@ describe("fuzzy", () => { it("strings", () => { const opts = ["hello", "hallo", "hey", "heyoka"]; assert.deepEqual([...filterFuzzy("hl", opts)], ["hello", "hallo"]); - assert.deepEqual([...filterFuzzy("he", opts)], ["hello", "hey", "heyoka"]); - assert.deepEqual([...filterFuzzy("ho", opts)], ["hello", "hallo", "heyoka"]); + assert.deepEqual( + [...filterFuzzy("he", opts)], + ["hello", "hey", "heyoka"] + ); + assert.deepEqual( + [...filterFuzzy("ho", opts)], + ["hello", "hallo", "heyoka"] + ); assert.deepEqual([...filterFuzzy("hey", opts)], ["hey", "heyoka"]); assert.deepEqual([...filterFuzzy("hk", opts)], ["heyoka"]); }); it("arrays", () => { - const opts = [[1, 2, 3], [1, 3, 4], [4, 5, 6], [1, 3, 6]]; - assert.deepEqual([...filterFuzzy([1, 3], opts)], [[1, 2, 3], [1, 3, 4], [1, 3, 6]]); - assert.deepEqual([...filterFuzzy([4], opts)], [[1, 3, 4], [4, 5, 6]]); + const opts = [ + [1, 2, 3], + [1, 3, 4], + [4, 5, 6], + [1, 3, 6], + ]; + assert.deepEqual( + [...filterFuzzy([1, 3], opts)], + [ + [1, 2, 3], + [1, 3, 4], + [1, 3, 6], + ] + ); + assert.deepEqual( + [...filterFuzzy([4], opts)], + [ + [1, 3, 4], + [4, 5, 6], + ] + ); assert.deepEqual([...filterFuzzy([3, 6], opts)], [[1, 3, 6]]); assert.deepEqual([...filterFuzzy([], opts)], opts); }); diff --git a/packages/transducers/test/juxtr.ts b/packages/transducers/test/juxtr.ts index 6cb23f7bd1..649e03b8b1 100644 --- a/packages/transducers/test/juxtr.ts +++ b/packages/transducers/test/juxtr.ts @@ -6,33 +6,26 @@ const src = [1, 2, 3, 4]; const early = tx.reducer( () => 0, - (acc, x) => acc + x < 6 ? acc + x : tx.reduced(acc) + (acc, x) => (acc + x < 6 ? acc + x : tx.reduced(acc)) ); describe("juxtR", () => { it("arity-1", () => { - assert.deepEqual( - tx.reduce(tx.juxtR(tx.str("-")), src), - ["1-2-3-4"] - ); - assert.deepEqual( - tx.reduce(tx.juxtR(early), src), - [3] - ); - assert.deepEqual( - tx.transduce(tx.take(2), tx.juxtR(tx.str("-")), src), - ["1-2"] - ); + assert.deepEqual(tx.reduce(tx.juxtR(tx.str("-")), src), ["1-2-3-4"]); + assert.deepEqual(tx.reduce(tx.juxtR(early), src), [3]); + assert.deepEqual(tx.transduce(tx.take(2), tx.juxtR(tx.str("-")), src), [ + "1-2", + ]); }); it("arity-2", () => { - assert.deepEqual( - tx.reduce(tx.juxtR(tx.push(), tx.str("-")), src), - [[1, 2, 3, 4], "1-2-3-4"] - ); - assert.deepEqual( - tx.reduce(tx.juxtR(tx.push(), early), src), - [[1, 2, 3], 3] - ); + assert.deepEqual(tx.reduce(tx.juxtR(tx.push(), tx.str("-")), src), [ + [1, 2, 3, 4], + "1-2-3-4", + ]); + assert.deepEqual(tx.reduce(tx.juxtR(tx.push(), early), src), [ + [1, 2, 3], + 3, + ]); assert.deepEqual( tx.transduce(tx.take(2), tx.juxtR(early, tx.str("-")), src), [3, "1-2"] @@ -40,7 +33,10 @@ describe("juxtR", () => { }); it("arity-3", () => { assert.deepEqual( - tx.reduce(tx.juxtR(tx.add(), tx.reductions(tx.add()), tx.str("-")), src), + tx.reduce( + tx.juxtR(tx.add(), tx.reductions(tx.add()), tx.str("-")), + src + ), [10, [0, 1, 3, 6, 10], "1-2-3-4"] ); assert.deepEqual( @@ -48,21 +44,40 @@ describe("juxtR", () => { [6, [0, 1, 3, 6], 3] ); assert.deepEqual( - tx.transduce(tx.take(2), tx.juxtR(early, tx.push(), tx.str("-")), src), + tx.transduce( + tx.take(2), + tx.juxtR(early, tx.push(), tx.str("-")), + src + ), [3, [1, 2], "1-2"] ); }); it("arity-4", () => { assert.deepEqual( - tx.reduce(tx.juxtR(tx.add(), tx.reductions(tx.add()), tx.push(), tx.str("-")), src), + tx.reduce( + tx.juxtR( + tx.add(), + tx.reductions(tx.add()), + tx.push(), + tx.str("-") + ), + src + ), [10, [0, 1, 3, 6, 10], [1, 2, 3, 4], "1-2-3-4"] ); assert.deepEqual( - tx.reduce(tx.juxtR(tx.add(), tx.reductions(tx.add()), tx.str("-"), early), src), + tx.reduce( + tx.juxtR(tx.add(), tx.reductions(tx.add()), tx.str("-"), early), + src + ), [6, [0, 1, 3, 6], "1-2-3", 3] ); assert.deepEqual( - tx.transduce(tx.take(2), tx.juxtR(early, tx.add(), tx.push(), tx.str("-")), src), + tx.transduce( + tx.take(2), + tx.juxtR(early, tx.add(), tx.push(), tx.str("-")), + src + ), [3, 3, [1, 2], "1-2"] ); }); diff --git a/packages/transducers/test/keyperms.ts b/packages/transducers/test/keyperms.ts new file mode 100644 index 0000000000..d67d9dca0d --- /dev/null +++ b/packages/transducers/test/keyperms.ts @@ -0,0 +1,27 @@ +import { keyPermutations } from "../src"; + +import * as assert from "assert"; + +describe("keyPermutations", () => { + it("basic", () => { + assert.deepEqual( + new Set([ + ...keyPermutations({ + a: [1, 2], + b: [true, false], + c: ["X", "Y"], + }), + ]), + new Set([ + { a: 1, b: true, c: "X" }, + { a: 1, b: true, c: "Y" }, + { a: 1, b: false, c: "X" }, + { a: 1, b: false, c: "Y" }, + { a: 2, b: true, c: "X" }, + { a: 2, b: true, c: "Y" }, + { a: 2, b: false, c: "X" }, + { a: 2, b: false, c: "Y" }, + ]) + ); + }); +}); diff --git a/packages/transducers/test/map-deep.ts b/packages/transducers/test/map-deep.ts index 0b0f433d7c..51cabcbec7 100644 --- a/packages/transducers/test/map-deep.ts +++ b/packages/transducers/test/map-deep.ts @@ -5,36 +5,48 @@ import * as assert from "assert"; describe("deepTransform", () => { it("transforms hiccup", () => { assert.deepEqual( - deepTransform( - [ - ({ type, meta, title, body }) => ["div", { class: type }, title, meta, body], - { - meta: [ - ({ author, date }) => ["div.meta", author, `(${date})`], - { - author: ({ email, name }) => ["a", { href: `mailto:${email}` }, name], - date: (epoch) => new Date(epoch).toISOString() - } - ], - title: (title) => ["h1", title] - } - ] - )( + deepTransform([ + ({ type, meta, title, body }) => [ + "div", + { class: type }, + title, + meta, + body, + ], { - meta: { - author: { name: "Alice", email: "a@b.com" }, - date: 1041510896000 - }, - type: "post", - title: "Hello world", - body: "Ratione necessitatibus doloremque itaque." - } - ), - ['div', - { class: 'post' }, - ['h1', 'Hello world'], - ['div.meta', ["a", { href: "mailto:a@b.com" }, "Alice"], '(2003-01-02T12:34:56.000Z)'], - 'Ratione necessitatibus doloremque itaque.'] + meta: [ + ({ author, date }) => ["div.meta", author, `(${date})`], + { + author: ({ email, name }) => [ + "a", + { href: `mailto:${email}` }, + name, + ], + date: (epoch) => new Date(epoch).toISOString(), + }, + ], + title: (title) => ["h1", title], + }, + ])({ + meta: { + author: { name: "Alice", email: "a@b.com" }, + date: 1041510896000, + }, + type: "post", + title: "Hello world", + body: "Ratione necessitatibus doloremque itaque.", + }), + [ + "div", + { class: "post" }, + ["h1", "Hello world"], + [ + "div.meta", + ["a", { href: "mailto:a@b.com" }, "Alice"], + "(2003-01-02T12:34:56.000Z)", + ], + "Ratione necessitatibus doloremque itaque.", + ] ); }); }); diff --git a/packages/transducers/test/pad-last.ts b/packages/transducers/test/pad-last.ts index 4a1aa3b139..a4e3275e76 100644 --- a/packages/transducers/test/pad-last.ts +++ b/packages/transducers/test/pad-last.ts @@ -4,25 +4,13 @@ import * as assert from "assert"; describe("padLast", () => { it("all", () => { - assert.deepEqual( - [...padLast(8, 0, [])], - [] - ); - assert.deepEqual( - [...padLast(8, 0, [1])], - [1, 0, 0, 0, 0, 0, 0, 0] - ); + assert.deepEqual([...padLast(8, 0, [])], []); + assert.deepEqual([...padLast(8, 0, [1])], [1, 0, 0, 0, 0, 0, 0, 0]); assert.deepEqual( [...padLast(8, 0, [1, 2, 3, 4, 5])], [1, 2, 3, 4, 5, 0, 0, 0] ); - assert.deepEqual( - [...padLast(2, 0, [1, 2, 3])], - [1, 2, 3, 0] - ); - assert.deepEqual( - [...padLast(2, 0, [1, 2, 3, 4])], - [1, 2, 3, 4] - ); + assert.deepEqual([...padLast(2, 0, [1, 2, 3])], [1, 2, 3, 0]); + assert.deepEqual([...padLast(2, 0, [1, 2, 3, 4])], [1, 2, 3, 4]); }); }); diff --git a/packages/transducers/test/permutations.ts b/packages/transducers/test/permutations.ts index 241f45b265..8b07330623 100644 --- a/packages/transducers/test/permutations.ts +++ b/packages/transducers/test/permutations.ts @@ -26,22 +26,40 @@ describe("permutations", () => { ); assert.deepEqual( [...permutations("a", "-", range(2))], - [["a", "-", 0], ["a", "-", 1]] + [ + ["a", "-", 0], + ["a", "-", 1], + ] ); assert.deepEqual( [...permutations("a", "-+", range(2))], - [["a", "-", 0], ["a", "-", 1], ["a", "+", 0], ["a", "+", 1]] + [ + ["a", "-", 0], + ["a", "-", 1], + ["a", "+", 0], + ["a", "+", 1], + ] ); }); it("transformed", () => { assert.deepEqual( - [...iterator(map((x: any[]) => x.join("")), permutations("ab", "-", range(2)))], - ['a-0', 'a-1', 'b-0', 'b-1'] + [ + ...iterator( + map((x: any[]) => x.join("")), + permutations("ab", "-", range(2)) + ), + ], + ["a-0", "a-1", "b-0", "b-1"] ); }); it("swizzle", () => { assert.deepEqual( - [...iterator(map((x: string[]) => swizzle(x)({ x: 0, y: 1, z: 2 })), permutations("xyz", "xyz", "xyz"))], + [ + ...iterator( + map((x: string[]) => swizzle(x)({ x: 0, y: 1, z: 2 })), + permutations("xyz", "xyz", "xyz") + ), + ], [...permutationsN(3)] ); }); @@ -55,22 +73,44 @@ describe("permutationsN", () => { assert.deepEqual([...permutationsN(1)], [[0]]); }); it("two", () => { - assert.deepEqual([...permutationsN(2)], [[0, 0], [0, 1], [1, 0], [1, 1]]); + assert.deepEqual( + [...permutationsN(2)], + [ + [0, 0], + [0, 1], + [1, 0], + [1, 1], + ] + ); }); it("two/three", () => { assert.deepEqual( [...permutationsN(2, 3)], [ - [0, 0], [0, 1], [0, 2], - [1, 0], [1, 1], [1, 2], - [2, 0], [2, 1], [2, 2] + [0, 0], + [0, 1], + [0, 2], + [1, 0], + [1, 1], + [1, 2], + [2, 0], + [2, 1], + [2, 2], ] ); }); it("with offsets", () => { - assert.deepEqual([...permutationsN(2, 2, [100, 1000])], [[100, 1000], [100, 1001], [101, 1000], [101, 1001]]); + assert.deepEqual( + [...permutationsN(2, 2, [100, 1000])], + [ + [100, 1000], + [100, 1001], + [101, 1000], + [101, 1001], + ] + ); }); it("insufficient offsets", () => { assert.throws(() => permutationsN(2, 2, [0])); }); -}); \ No newline at end of file +}); diff --git a/packages/transducers/tpl.readme.md b/packages/transducers/tpl.readme.md index 9450ce57b4..7a89b93a52 100644 --- a/packages/transducers/tpl.readme.md +++ b/packages/transducers/tpl.readme.md @@ -769,6 +769,7 @@ tx.transduce(tx.map((x) => x*10), tx.push(), tx.range(4)) - [dup](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers/src/iter/dup.ts) - [extendSides](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers/src/iter/extend-sides.ts) - [iterate](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers/src/iter/iterate.ts) +- [keyPermutations](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers/src/iter/key-permutations.ts) - [keys](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers/src/iter/keys.ts) - [line](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers/src/iter/line.ts) - [normRange](https://github.com/thi-ng/umbrella/tree/develop/packages/transducers/src/iter/norm-range.ts) diff --git a/packages/unionstruct/CHANGELOG.md b/packages/unionstruct/CHANGELOG.md index bb593e62f4..69cd9074c8 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.17](https://github.com/thi-ng/umbrella/compare/@thi.ng/unionstruct@1.1.16...@thi.ng/unionstruct@1.1.17) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/unionstruct + + + + + # [1.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/unionstruct@1.0.6...@thi.ng/unionstruct@1.1.0) (2019-07-07) ### Bug Fixes diff --git a/packages/unionstruct/package.json b/packages/unionstruct/package.json index 70ae22304d..f4e0d19421 100644 --- a/packages/unionstruct/package.json +++ b/packages/unionstruct/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/unionstruct", - "version": "1.1.16", + "version": "1.1.17", "description": "C-style struct, union and bitfield read/write views of ArrayBuffers", "module": "./index.js", "main": "./lib/index.js", diff --git a/packages/unionstruct/src/index.ts b/packages/unionstruct/src/index.ts index 583d82f681..e5666417ab 100644 --- a/packages/unionstruct/src/index.ts +++ b/packages/unionstruct/src/index.ts @@ -24,7 +24,7 @@ const TYPES: { [id: string]: [number, string, boolean] } = { u8: [8, "Uint", false], i32: [32, "Int", true], i16: [16, "Int", true], - i8: [8, "Int", true] + i8: [8, "Int", true], }; const UNION = "union"; @@ -178,7 +178,7 @@ const makeField = ( Object.defineProperty(obj, id, { get: () => f, enumerable: true, - configurable: false + configurable: false, }); bitOffset += (f as any).__size; } else { @@ -208,7 +208,7 @@ const makeField = ( get, set, enumerable: true, - configurable: false + configurable: false, }); } return bitOffset; @@ -229,7 +229,7 @@ export const typedef = ( __buffer: dv.buffer, __spec: spec, __size: size, - __offsets: {} + __offsets: {}, }; for (let i = 0; i < spec.length; i++) { let f = spec[i]; diff --git a/packages/unionstruct/test/index.ts b/packages/unionstruct/test/index.ts index 60454462a0..c2651cfd3e 100644 --- a/packages/unionstruct/test/index.ts +++ b/packages/unionstruct/test/index.ts @@ -2,10 +2,27 @@ import { Field, union, struct } from "../src/index"; import * as assert from "assert"; describe("nested struct + union", () => { - let i = [["f64", "f64"], ["u8", "u8"]]; - let u = [["u16", "u16"], ["str", "struct", i]]; - let o = [["u8", "u8"], ["un", "union", u], ["u32", "u32"]]; - let bf = [["a", "i32", 1], ["b", "u32", 5], ["c", "u32", 26], ["d", "u32", 28], ["e", "i32", 2], ["f", "f32"]]; + let i = [ + ["f64", "f64"], + ["u8", "u8"], + ]; + let u = [ + ["u16", "u16"], + ["str", "struct", i], + ]; + let o = [ + ["u8", "u8"], + ["un", "union", u], + ["u32", "u32"], + ]; + let bf = [ + ["a", "i32", 1], + ["b", "u32", 5], + ["c", "u32", 26], + ["d", "u32", 28], + ["e", "i32", 2], + ["f", "f32"], + ]; it("sizes (aligned)", () => { assert.equal(struct(i).__size, 0x48, "inner"); assert.equal(union(u).__size, 0x48, "union"); @@ -38,34 +55,42 @@ describe("nested struct + union", () => { }); it("values (aligned)", () => { let s = struct(o); - assert.equal((s.u8 = 0xff, s.u8), 0xff, "o.u8"); - assert.equal((s.un.u16 = 0xffff, s.un.u16), 0xffff, "o.un.u16"); - assert.equal((s.un.str.f64 = Math.PI, s.un.str.f64), Math.PI, "o.un.str.f64"); + assert.equal(((s.u8 = 0xff), s.u8), 0xff, "o.u8"); + assert.equal(((s.un.u16 = 0xffff), s.un.u16), 0xffff, "o.un.u16"); + assert.equal( + ((s.un.str.f64 = Math.PI), s.un.str.f64), + Math.PI, + "o.un.str.f64" + ); assert.equal(s.un.u16, 0x4009, "o.un.u16 (2)"); - assert.equal((s.un.str.u8 = 0xaa, s.un.str.u8), 0xaa, "o.un.str.u8"); - assert.equal((s.u32 = 0x87654321, s.u32), 0x87654321, "o.u32"); + assert.equal(((s.un.str.u8 = 0xaa), s.un.str.u8), 0xaa, "o.un.str.u8"); + assert.equal(((s.u32 = 0x87654321), s.u32), 0x87654321, "o.u32"); }); it("values (unaligned)", () => { let s = struct(o, null, 0, false); - assert.equal((s.u8 = 0xff, s.u8), 0xff, "o.u8"); - assert.equal((s.un.u16 = 0xffff, s.un.u16), 0xffff, "o.un.u16"); - assert.equal((s.un.str.f64 = Math.PI, s.un.str.f64), Math.PI, "o.un.str.f64"); + assert.equal(((s.u8 = 0xff), s.u8), 0xff, "o.u8"); + assert.equal(((s.un.u16 = 0xffff), s.un.u16), 0xffff, "o.un.u16"); + assert.equal( + ((s.un.str.f64 = Math.PI), s.un.str.f64), + Math.PI, + "o.un.str.f64" + ); assert.equal(s.un.u16, 0x4009, "o.un.u16 (2)"); - assert.equal((s.un.str.u8 = 0xaa, s.un.str.u8), 0xaa, "o.un.str.u8"); - assert.equal((s.u32 = 0x87654321, s.u32), 0x87654321, "o.u32"); + assert.equal(((s.un.str.u8 = 0xaa), s.un.str.u8), 0xaa, "o.un.str.u8"); + assert.equal(((s.u32 = 0x87654321), s.u32), 0x87654321, "o.u32"); }); it("bitfields (aligned)", () => { let s = struct(bf); - assert.equal((s.a = 1, s.a), -1, "s.a"); - assert.equal((s.b = 0x1f, s.b), 0x1f, "s.b"); - assert.equal((s.c = 0x7654321, s.c), 0x3654321, "s.c"); - assert.equal((s.d = 0xff654321, s.d), 0xf654321, "s.d"); - assert.equal((s.e = 0x2, s.e), -2, "s.e"); - assert.equal((s.f = 2, s.f), 2, "s.f"); + assert.equal(((s.a = 1), s.a), -1, "s.a"); + assert.equal(((s.b = 0x1f), s.b), 0x1f, "s.b"); + assert.equal(((s.c = 0x7654321), s.c), 0x3654321, "s.c"); + assert.equal(((s.d = 0xff654321), s.d), 0xf654321, "s.d"); + assert.equal(((s.e = 0x2), s.e), -2, "s.e"); + assert.equal(((s.f = 2), s.f), 2, "s.f"); assert.equal(s.e, -2, "s.e (read)"); assert.equal(s.d, 0xf654321, "s.d (read)"); assert.equal(s.c, 0x3654321, "s.c (read)"); assert.equal(s.b, 0x1f, "s.b (read)"); assert.equal(s.a, -1, "s.a (read)"); }); -}); \ No newline at end of file +}); diff --git a/packages/vector-pools/CHANGELOG.md b/packages/vector-pools/CHANGELOG.md index 3e4f145eaa..1b1c826ce2 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.32](https://github.com/thi-ng/umbrella/compare/@thi.ng/vector-pools@1.0.31...@thi.ng/vector-pools@1.0.32) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/vector-pools + + + + + ## [1.0.31](https://github.com/thi-ng/umbrella/compare/@thi.ng/vector-pools@1.0.30...@thi.ng/vector-pools@1.0.31) (2020-06-01) **Note:** Version bump only for package @thi.ng/vector-pools diff --git a/packages/vector-pools/package.json b/packages/vector-pools/package.json index 3299676071..616ef2515e 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.31", + "version": "1.0.32", "description": "Data structures for managing & working with strided, memory mapped vectors", "module": "./index.js", "main": "./lib/index.js", @@ -43,12 +43,12 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/binary": "^2.0.7", - "@thi.ng/checks": "^2.7.0", - "@thi.ng/malloc": "^4.1.16", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/api": "^6.11.1", + "@thi.ng/binary": "^2.0.8", + "@thi.ng/checks": "^2.7.1", + "@thi.ng/malloc": "^4.1.17", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/vector-pools/src/api.ts b/packages/vector-pools/src/api.ts index 74d96df814..813aa8e9c6 100644 --- a/packages/vector-pools/src/api.ts +++ b/packages/vector-pools/src/api.ts @@ -5,7 +5,7 @@ import { IRelease, NULL_LOGGER, Type, - TypedArray + TypedArray, } from "@thi.ng/api"; import { MemPool, MemPoolOpts } from "@thi.ng/malloc"; import type { ReadonlyVec, StridedVec, Vec } from "@thi.ng/vectors"; diff --git a/packages/vector-pools/src/attrib-pool.ts b/packages/vector-pools/src/attrib-pool.ts index aed13e411d..0568594e1c 100644 --- a/packages/vector-pools/src/attrib-pool.ts +++ b/packages/vector-pools/src/attrib-pool.ts @@ -5,7 +5,7 @@ import { SIZEOF, TypedArray, typedArray, - TYPEDARRAY_CTORS + TYPEDARRAY_CTORS, } from "@thi.ng/api"; import { align, Pow2 } from "@thi.ng/binary"; import { isNumber } from "@thi.ng/checks"; @@ -41,7 +41,7 @@ export class AttribPool implements IRelease { constructor(opts?: AttribPoolOpts) { opts = { resizable: true, - ...opts + ...opts, }; this.pool = !(opts.mem instanceof MemPool) ? new MemPool(opts.mem) @@ -368,7 +368,7 @@ const resizeAttribs = ( const dStride = stride / SIZEOF[type]; newAttribs[id] = [ typedArray(type, buf, dest + a.byteOffset, num * dStride + a.size), - dStride + dStride, ]; } return newAttribs; diff --git a/packages/vector-pools/src/convert.ts b/packages/vector-pools/src/convert.ts index 6a937bfa78..5a72a633a1 100644 --- a/packages/vector-pools/src/convert.ts +++ b/packages/vector-pools/src/convert.ts @@ -1,9 +1,4 @@ -import { - GL2TYPE, - GLType, - Type, - TYPE2GL -} from "@thi.ng/api"; +import { GL2TYPE, GLType, Type, TYPE2GL } from "@thi.ng/api"; /** * Returns canonical {@link @thi.ng/api#Type} value of `type` by first diff --git a/packages/vector-pools/test/attribs.ts b/packages/vector-pools/test/attribs.ts index 5115a76708..975de57993 100644 --- a/packages/vector-pools/test/attribs.ts +++ b/packages/vector-pools/test/attribs.ts @@ -13,34 +13,49 @@ describe("vector-pools", () => { type: Type.F32, size: 2, // 8 bytes byteOffset: 0, - data: [[1, 2], [3, 4]] + data: [ + [1, 2], + [3, 4], + ], }, id: { type: Type.U32, size: 1, // 4 bytes byteOffset: 8, data: [1, 2], - index: 4 + index: 4, }, index: { type: Type.U16, size: 1, // 2 bytes byteOffset: 12, - data: [10, 20] + data: [10, 20], }, col: { type: Type.U8, size: 4, // 4 bytes byteOffset: 14, - data: [[128, 129, 130, 131], [255, 254, 253, 252]], - index: 6 - } - } + data: [ + [128, 129, 130, 131], + [255, 254, 253, 252], + ], + index: 6, + }, + }, }); assert( equiv( [...pool.attribValues("pos")], - [[1, 2], [3, 4], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0]] + [ + [1, 2], + [3, 4], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + ] ) ); assert(equiv([...pool.attribValues("id")], [0, 0, 0, 0, 1, 2, 0, 0])); @@ -58,7 +73,7 @@ describe("vector-pools", () => { [0, 0, 0, 0], [0, 0, 0, 0], [128, 129, 130, 131], - [255, 254, 253, 252] + [255, 254, 253, 252], ] ) ); diff --git a/packages/vectors/CHANGELOG.md b/packages/vectors/CHANGELOG.md index 7566da6169..af8dafcd9e 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.4.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/vectors@4.4.3...@thi.ng/vectors@4.4.4) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/vectors + + + + + ## [4.4.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/vectors@4.4.2...@thi.ng/vectors@4.4.3) (2020-06-01) **Note:** Version bump only for package @thi.ng/vectors diff --git a/packages/vectors/package.json b/packages/vectors/package.json index 189fb7849a..dbfdd4c49b 100644 --- a/packages/vectors/package.json +++ b/packages/vectors/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/vectors", - "version": "4.4.3", + "version": "4.4.4", "description": "Optimized 2d/3d/4d and arbitrary length vector operations", "module": "./index.js", "main": "./lib/index.js", @@ -43,15 +43,15 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/binary": "^2.0.7", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/binary": "^2.0.8", + "@thi.ng/checks": "^2.7.1", "@thi.ng/equiv": "^1.0.23", "@thi.ng/errors": "^1.2.14", - "@thi.ng/math": "^1.7.10", - "@thi.ng/memoize": "^2.0.12", - "@thi.ng/random": "^1.4.10", - "@thi.ng/transducers": "^7.0.0", + "@thi.ng/math": "^1.7.11", + "@thi.ng/memoize": "^2.0.13", + "@thi.ng/random": "^1.4.11", + "@thi.ng/transducers": "^7.1.0", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/vectors/src/addns.ts b/packages/vectors/src/addns.ts index 19d4559549..a149c6d97e 100644 --- a/packages/vectors/src/addns.ts +++ b/packages/vectors/src/addns.ts @@ -1,10 +1,5 @@ import { VecOpSVN } from "./api"; -import { - ARGS_V, - ARGS_VN, - defOpS, - SARGS_V -} from "./internal/codegen"; +import { ARGS_V, ARGS_VN, defOpS, SARGS_V } from "./internal/codegen"; import { MATH_N } from "./internal/templates"; export const [addNS2, addNS3, addNS4] = defOpS( diff --git a/packages/vectors/src/api.ts b/packages/vectors/src/api.ts index 2085e3bee6..94d5ccaae8 100644 --- a/packages/vectors/src/api.ts +++ b/packages/vectors/src/api.ts @@ -11,7 +11,7 @@ import { IEqualsDelta, ILength, Tuple, - TypedArray + TypedArray, } from "@thi.ng/api"; export interface Vec extends Iterable, ILength { diff --git a/packages/vectors/src/atan.ts b/packages/vectors/src/atan.ts index aac62e4dcd..a1d2d8f754 100644 --- a/packages/vectors/src/atan.ts +++ b/packages/vectors/src/atan.ts @@ -1,9 +1,4 @@ -import { - MultiVecOpV, - MultiVecOpVV, - VecOpV, - VecOpVV -} from "./api"; +import { MultiVecOpV, MultiVecOpVV, VecOpV, VecOpVV } from "./api"; import { ARGS_VV, defFnOp, defOp } from "./internal/codegen"; import { FN2 } from "./internal/templates"; diff --git a/packages/vectors/src/buffer.ts b/packages/vectors/src/buffer.ts index 0318155690..067274d700 100644 --- a/packages/vectors/src/buffer.ts +++ b/packages/vectors/src/buffer.ts @@ -3,14 +3,9 @@ import { Type, typedArray, TYPEDARRAY_CTORS, - TypedArrayTypeMap + TypedArrayTypeMap, } from "@thi.ng/api"; -import { - ReadonlyVec, - Vec, - VecOpSV, - VectorConstructor -} from "./api"; +import { ReadonlyVec, Vec, VecOpSV, VectorConstructor } from "./api"; /** * Takes an `ArrayBuffer` and creates a number of typed array vector diff --git a/packages/vectors/src/cartesian.ts b/packages/vectors/src/cartesian.ts index a8738a7de4..0848184a73 100644 --- a/packages/vectors/src/cartesian.ts +++ b/packages/vectors/src/cartesian.ts @@ -1,10 +1,5 @@ import { cossin } from "@thi.ng/math"; -import { - MultiVecOpVO, - ReadonlyVec, - ZERO2, - ZERO3 -} from "./api"; +import { MultiVecOpVO, ReadonlyVec, ZERO2, ZERO3 } from "./api"; import { vop } from "./internal/vop"; import { maddN2 } from "./maddn"; import { setC3 } from "./setc"; diff --git a/packages/vectors/src/clamp.ts b/packages/vectors/src/clamp.ts index db37df63cf..468a0cda26 100644 --- a/packages/vectors/src/clamp.ts +++ b/packages/vectors/src/clamp.ts @@ -1,4 +1,8 @@ -import { clamp as _clamp, clamp01 as _clamp01, clamp11 as _clamp11 } from "@thi.ng/math"; +import { + clamp as _clamp, + clamp01 as _clamp01, + clamp11 as _clamp11, +} from "@thi.ng/math"; import { MultiVecOpVVV, VecOpVVV } from "./api"; import { ARGS_VVV, defHofOp } from "./internal/codegen"; import { FN3 } from "./internal/templates"; diff --git a/packages/vectors/src/compare.ts b/packages/vectors/src/compare.ts index 6c1439815f..0e12a4cba6 100644 --- a/packages/vectors/src/compare.ts +++ b/packages/vectors/src/compare.ts @@ -47,14 +47,14 @@ export const comparator3 = ( ? az === bz ? 0 : az < bz - ? -3 - : 3 + ? -3 + : 3 : ay < by - ? -2 - : 2 + ? -2 + : 2 : ax < bx - ? -1 - : 1; + ? -1 + : 1; }; /** @@ -88,15 +88,15 @@ export const comparator4 = ( ? aw === bw ? 0 : aw < bw - ? -4 - : 4 + ? -4 + : 4 : az < bz - ? -3 - : 3 + ? -3 + : 3 : ay < by - ? -2 - : 2 + ? -2 + : 2 : ax < bx - ? -1 - : 1; + ? -1 + : 1; }; diff --git a/packages/vectors/src/convert.ts b/packages/vectors/src/convert.ts index 861c25a390..0c8465c003 100644 --- a/packages/vectors/src/convert.ts +++ b/packages/vectors/src/convert.ts @@ -5,7 +5,7 @@ import { Template, ToBVecOpV, Vec, - VecOpV + VecOpV, } from "./api"; import { ARGS_V, defOp, NEW_OUT } from "./internal/codegen"; diff --git a/packages/vectors/src/divns.ts b/packages/vectors/src/divns.ts index 388d41a5c0..9897b932a0 100644 --- a/packages/vectors/src/divns.ts +++ b/packages/vectors/src/divns.ts @@ -1,10 +1,5 @@ import { VecOpSVN } from "./api"; -import { - ARGS_V, - ARGS_VN, - defOpS, - SARGS_V -} from "./internal/codegen"; +import { ARGS_V, ARGS_VN, defOpS, SARGS_V } from "./internal/codegen"; import { MATH_N } from "./internal/templates"; export const [divNS2, divNS3, divNS4] = defOpS( diff --git a/packages/vectors/src/fit.ts b/packages/vectors/src/fit.ts index e54d6da1ae..6c5b3eeb09 100644 --- a/packages/vectors/src/fit.ts +++ b/packages/vectors/src/fit.ts @@ -1,10 +1,5 @@ import { fit as _fit, fit01 as _fit01, fit11 as _fit11 } from "@thi.ng/math"; -import { - MultiVecOpVVV, - MultiVecOpVVVVV, - VecOpVVV, - VecOpVVVVV -} from "./api"; +import { MultiVecOpVVV, MultiVecOpVVVVV, VecOpVVV, VecOpVVVVV } from "./api"; import { ARGS_VVV, defHofOp } from "./internal/codegen"; import { FN3, FN5 } from "./internal/templates"; diff --git a/packages/vectors/src/gvec.ts b/packages/vectors/src/gvec.ts index 2a5c0bc67a..60c7c9a1a3 100644 --- a/packages/vectors/src/gvec.ts +++ b/packages/vectors/src/gvec.ts @@ -27,12 +27,12 @@ const PROPS = new Set([ SYM_O, SYM_S, SYM_STR, - Symbol.iterator + Symbol.iterator, ]); const keys = memoize1((size: number) => [ ...map(String, range(size)), - ...PROPS + ...PROPS, ]); /** @@ -131,7 +131,7 @@ export const gvec = ( case SYM_STR: return () => JSON.stringify([ - ...stridedValues(obj, size, offset, stride) + ...stridedValues(obj, size, offset, stride), ]); default: const j = parseInt(id); @@ -166,5 +166,5 @@ export const gvec = ( }, ownKeys() { return keys(size); - } + }, }); diff --git a/packages/vectors/src/hash.ts b/packages/vectors/src/hash.ts index d43f612794..fd00f1fd7c 100644 --- a/packages/vectors/src/hash.ts +++ b/packages/vectors/src/hash.ts @@ -43,7 +43,7 @@ import { ReadonlyVec } from "./api"; * // 0.0106 % * ``` * - * - {@link https://github.com/thi-ng/c-thing/blob/master/src/math/hashfn.c} + * - {@link https://github.com/thi-ng/c-thing/blob/develop/src/math/hashfn.c} * - {@link @thi.ng/morton# | @thi.ng/morton} for Z-curve ordered hashing * * @param v - vector diff --git a/packages/vectors/src/internal/accessors.ts b/packages/vectors/src/internal/accessors.ts index 1371c6f827..f733bc9753 100644 --- a/packages/vectors/src/internal/accessors.ts +++ b/packages/vectors/src/internal/accessors.ts @@ -9,37 +9,37 @@ export const declareIndex = ( const get = idx > 0 ? strided - ? function() { + ? function () { return this.buf[this.offset + idx * this.stride]; } - : function() { + : function () { return this.buf[this.offset + idx]; } - : function() { + : function () { return this.buf[this.offset]; }; const set = idx > 0 ? strided - ? function(n: number) { + ? function (n: number) { this.buf[this.offset + idx * this.stride] = n; } - : function(n: number) { + : function (n: number) { this.buf[this.offset + idx] = n; } - : function(n: number) { + : function (n: number) { this.buf[this.offset] = n; }; defNumeric && Object.defineProperty(proto, idx, { get, set, - enumerable: true + enumerable: true, }); Object.defineProperty(proto, id, { get, set, - enumerable: true + enumerable: true, }); }; diff --git a/packages/vectors/src/internal/codegen.ts b/packages/vectors/src/internal/codegen.ts index 9b53f1b02e..854595f87d 100644 --- a/packages/vectors/src/internal/codegen.ts +++ b/packages/vectors/src/internal/codegen.ts @@ -6,15 +6,9 @@ import { str, take, transduce, - zip + zip, } from "@thi.ng/transducers"; -import { - MultiVecOpVN, - MultiVecOpVV, - Template, - VecOpVN, - VecOpVV -} from "../api"; +import { MultiVecOpVN, MultiVecOpVV, Template, VecOpVN, VecOpVV } from "../api"; import { FN, MATH, @@ -22,7 +16,7 @@ import { SIGNED, SIGNED_N, UNSIGNED, - UNSIGNED_N + UNSIGNED_N, } from "./templates"; import { vop } from "./vop"; @@ -135,7 +129,7 @@ const assemble = ( ) ), post, - ret !== "" ? `return ${ret};` : "" + ret !== "" ? `return ${ret};` : "", ]; const assembleG = ( @@ -155,7 +149,7 @@ const assembleG = ( ), "}", post, - ret !== null ? `return ${ret};` : "" + ret !== null ? `return ${ret};` : "", ]; /** @internal */ diff --git a/packages/vectors/src/logic-and.ts b/packages/vectors/src/logic-and.ts index 0f83f13689..5d12f141e1 100644 --- a/packages/vectors/src/logic-and.ts +++ b/packages/vectors/src/logic-and.ts @@ -1,9 +1,4 @@ -import { - BVecOpVN, - BVecOpVV, - MultiBVecOpVN, - MultiBVecOpVV -} from "./api"; +import { BVecOpVN, BVecOpVV, MultiBVecOpVN, MultiBVecOpVV } from "./api"; import { ARGS_VN, defOp } from "./internal/codegen"; import { MATH, MATH_N } from "./internal/templates"; diff --git a/packages/vectors/src/logic-or.ts b/packages/vectors/src/logic-or.ts index ee307d9cf9..2a1e860ffc 100644 --- a/packages/vectors/src/logic-or.ts +++ b/packages/vectors/src/logic-or.ts @@ -1,9 +1,4 @@ -import { - BVecOpVN, - BVecOpVV, - MultiBVecOpVN, - MultiBVecOpVV -} from "./api"; +import { BVecOpVN, BVecOpVV, MultiBVecOpVN, MultiBVecOpVV } from "./api"; import { ARGS_VN, defOp } from "./internal/codegen"; import { MATH, MATH_N } from "./internal/templates"; diff --git a/packages/vectors/src/map.ts b/packages/vectors/src/map.ts index f77ac2c7b1..a1330d3d2f 100644 --- a/packages/vectors/src/map.ts +++ b/packages/vectors/src/map.ts @@ -1,11 +1,4 @@ -import { - IVector, - VecOpV, - VecOpVN, - VecOpVV, - VecOpVVN, - VecOpVVV -} from "./api"; +import { IVector, VecOpV, VecOpVN, VecOpVV, VecOpVVN, VecOpVVV } from "./api"; /** * Vec2/3/4 view based buffer transformation for {@link VecOpVV} type diff --git a/packages/vectors/src/mulns.ts b/packages/vectors/src/mulns.ts index dc9850ac3e..e568648f9f 100644 --- a/packages/vectors/src/mulns.ts +++ b/packages/vectors/src/mulns.ts @@ -1,10 +1,5 @@ import { VecOpSVN } from "./api"; -import { - ARGS_V, - ARGS_VN, - defOpS, - SARGS_V -} from "./internal/codegen"; +import { ARGS_V, ARGS_VN, defOpS, SARGS_V } from "./internal/codegen"; import { MATH_N } from "./internal/templates"; export const [mulNS2, mulNS3, mulNS4] = defOpS( diff --git a/packages/vectors/src/random.ts b/packages/vectors/src/random.ts index 60e776960a..16b5f9ac70 100644 --- a/packages/vectors/src/random.ts +++ b/packages/vectors/src/random.ts @@ -1,10 +1,5 @@ import { IRandom, SYSTEM } from "@thi.ng/random"; -import { - MultiVecOpOOO, - ReadonlyVec, - Vec, - VecOpOOO -} from "./api"; +import { MultiVecOpOOO, ReadonlyVec, Vec, VecOpOOO } from "./api"; import { defHofOp } from "./internal/codegen"; import { normalize } from "./normalize"; diff --git a/packages/vectors/src/randoms.ts b/packages/vectors/src/randoms.ts index b507e731fd..b234e74f6c 100644 --- a/packages/vectors/src/randoms.ts +++ b/packages/vectors/src/randoms.ts @@ -1,10 +1,5 @@ import { IRandom, SYSTEM } from "@thi.ng/random"; -import { - ReadonlyVec, - VecOpSOO, - VecOpSOOO, - VecOpSVO -} from "./api"; +import { ReadonlyVec, VecOpSOO, VecOpSOOO, VecOpSVO } from "./api"; import { defHofOpS, SARGS_VV } from "./internal/codegen"; import { normalizeS2, normalizeS3, normalizeS4 } from "./normalizes"; diff --git a/packages/vectors/src/setvv.ts b/packages/vectors/src/setvv.ts index e18e2faa9c..f0934714aa 100644 --- a/packages/vectors/src/setvv.ts +++ b/packages/vectors/src/setvv.ts @@ -1,9 +1,4 @@ -import { - ReadonlyVec, - Vec, - VecOpVV, - VecOpVVV -} from "./api"; +import { ReadonlyVec, Vec, VecOpVV, VecOpVVV } from "./api"; import { setC, setC4, setC6 } from "./setc"; /** diff --git a/packages/vectors/src/subns.ts b/packages/vectors/src/subns.ts index 4ad14fc3fc..8fce56ccea 100644 --- a/packages/vectors/src/subns.ts +++ b/packages/vectors/src/subns.ts @@ -1,10 +1,5 @@ import { VecOpSVN } from "./api"; -import { - ARGS_V, - ARGS_VN, - defOpS, - SARGS_V -} from "./internal/codegen"; +import { ARGS_V, ARGS_VN, defOpS, SARGS_V } from "./internal/codegen"; import { MATH_N } from "./internal/templates"; export const [subNS2, subNS3, subNS4] = defOpS( diff --git a/packages/vectors/src/vec2.ts b/packages/vectors/src/vec2.ts index e6a58237e6..e24dfd0340 100644 --- a/packages/vectors/src/vec2.ts +++ b/packages/vectors/src/vec2.ts @@ -9,7 +9,7 @@ import { Vec, X2, Y2, - ZERO2 + ZERO2, } from "./api"; import { intoStridedBuffer, mapStridedBuffer } from "./buffer"; import { eqDelta2 } from "./eqdelta"; diff --git a/packages/vectors/src/vec3.ts b/packages/vectors/src/vec3.ts index d6dfe7c653..9a5b03821b 100644 --- a/packages/vectors/src/vec3.ts +++ b/packages/vectors/src/vec3.ts @@ -10,7 +10,7 @@ import { X3, Y3, Z3, - ZERO3 + ZERO3, } from "./api"; import { intoStridedBuffer, mapStridedBuffer } from "./buffer"; import { eqDelta3 } from "./eqdelta"; diff --git a/packages/vectors/src/vec4.ts b/packages/vectors/src/vec4.ts index be6d33c372..5ea6807b83 100644 --- a/packages/vectors/src/vec4.ts +++ b/packages/vectors/src/vec4.ts @@ -10,7 +10,7 @@ import { X4, Y4, Z4, - ZERO4 + ZERO4, } from "./api"; import { intoStridedBuffer, mapStridedBuffer } from "./buffer"; import { eqDelta4 } from "./eqdelta"; diff --git a/packages/webgl-msdf/CHANGELOG.md b/packages/webgl-msdf/CHANGELOG.md index 07618e7724..b4d55e0327 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.37](https://github.com/thi-ng/umbrella/compare/@thi.ng/webgl-msdf@0.1.36...@thi.ng/webgl-msdf@0.1.37) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/webgl-msdf + + + + + ## [0.1.36](https://github.com/thi-ng/umbrella/compare/@thi.ng/webgl-msdf@0.1.35...@thi.ng/webgl-msdf@0.1.36) (2020-06-07) **Note:** Version bump only for package @thi.ng/webgl-msdf diff --git a/packages/webgl-msdf/package.json b/packages/webgl-msdf/package.json index 2be92b04eb..29cc520c6e 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.36", + "version": "0.1.37", "description": "Multi-channel SDF font rendering & basic text layout for WebGL", "module": "./index.js", "main": "./lib/index.js", @@ -43,12 +43,12 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/shader-ast": "^0.3.23", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/vector-pools": "^1.0.31", - "@thi.ng/vectors": "^4.4.3", - "@thi.ng/webgl": "^2.0.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/shader-ast": "^0.3.24", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/vector-pools": "^1.0.32", + "@thi.ng/vectors": "^4.4.4", + "@thi.ng/webgl": "^2.0.1", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/webgl-msdf/src/convert.ts b/packages/webgl-msdf/src/convert.ts index 42c5af9fe3..98e306daf6 100644 --- a/packages/webgl-msdf/src/convert.ts +++ b/packages/webgl-msdf/src/convert.ts @@ -20,8 +20,8 @@ export const convertGlyphs = (raw: RawGlyphs): MSDFFont => ({ pos: [ch.x, ch.y], offset: [ch.xoffset, ch.yoffset], size: [ch.width, ch.height], - step: ch.xadvance + step: ch.xadvance, }; return acc; - }, {}) + }, {}), }); diff --git a/packages/webgl-msdf/src/shader.ts b/packages/webgl-msdf/src/shader.ts index 22b22b21f2..f9d7c60855 100644 --- a/packages/webgl-msdf/src/shader.ts +++ b/packages/webgl-msdf/src/shader.ts @@ -27,7 +27,7 @@ import { texture, vec2, Vec2Sym, - vec4 + vec4, } from "@thi.ng/shader-ast"; import { ONE4, ZERO4 } from "@thi.ng/vectors"; import { BLEND_NORMAL, GLVec4, ShaderSpec } from "@thi.ng/webgl"; @@ -37,7 +37,7 @@ export interface MSDFShaderOpts { } export const median3 = defn("float", "median3", ["vec3"], (v) => [ - ret(max(min($x(v), $y(v)), min(max($x(v), $y(v)), $z(v)))) + ret(max(min($x(v), $y(v)), min(max($x(v), $y(v)), $z(v)))), ]); export const msdfSample = defn( @@ -50,7 +50,7 @@ export const msdfSample = defn( return [ (sd = sym(sub(median3($xyz(texture(tex, uv))), FLOAT05))), (w = sym(clamp(add(div(sd, fwidth(sd)), FLOAT05), FLOAT0, FLOAT1))), - ret(vec2(sd, w)) + ret(vec2(sd, w)), ]; } ); @@ -63,8 +63,8 @@ export const msdfShader = (opts: Partial = {}): ShaderSpec => ({ assign( gl.gl_Position, mul(mul(unis.proj, unis.modelview), vec4(ins.position, 1)) - ) - ]) + ), + ]), ], fs: (_, unis, ins, outs) => [ defMain(() => { @@ -75,21 +75,21 @@ export const msdfShader = (opts: Partial = {}): ShaderSpec => ({ outs.fragColor, mix(unis.bg, opts.color ? ins.vcolor : unis.fg, $y(w)) ), - ifThen(lt($x(w), unis.thresh), [discard]) + ifThen(lt($x(w), unis.thresh), [discard]), ]; - }) + }), ], ext: { - OES_standard_derivatives: true + OES_standard_derivatives: true, }, attribs: { position: "vec3", uv: "vec2", - ...(opts.color ? { color: "vec4" } : null) + ...(opts.color ? { color: "vec4" } : null), }, varying: { vuv: "vec2", - ...(opts.color ? { vcolor: "vec4" } : null) + ...(opts.color ? { vcolor: "vec4" } : null), }, uniforms: { modelview: "mat4", @@ -97,10 +97,10 @@ export const msdfShader = (opts: Partial = {}): ShaderSpec => ({ tex: "sampler2D", thresh: ["float", 1e-3], bg: ["vec4", ZERO4], - ...(!opts.color ? { fg: ["vec4", ONE4] } : null) + ...(!opts.color ? { fg: ["vec4", ONE4] } : null), }, state: { blend: true, - blendFn: BLEND_NORMAL - } + blendFn: BLEND_NORMAL, + }, }); diff --git a/packages/webgl-msdf/src/text.ts b/packages/webgl-msdf/src/text.ts index ceca79ff7c..525f3b26c2 100644 --- a/packages/webgl-msdf/src/text.ts +++ b/packages/webgl-msdf/src/text.ts @@ -1,19 +1,7 @@ import { GLType } from "@thi.ng/api"; -import { - add, - map, - mapcat, - range, - transduce -} from "@thi.ng/transducers"; +import { add, map, mapcat, range, transduce } from "@thi.ng/transducers"; import { AttribPool } from "@thi.ng/vector-pools"; -import { - add2, - div2, - madd2, - mul2, - ONE4 -} from "@thi.ng/vectors"; +import { add2, div2, madd2, mul2, ONE4 } from "@thi.ng/vectors"; import type { GLVec4, ModelSpec } from "@thi.ng/webgl"; import type { MSDFFont, TextAlign, TextOpts } from "./api"; @@ -29,7 +17,7 @@ export const text = ( dirX: 1, dirY: 1, color: ONE4, - ...opts + ...opts, }; const dir: number[] = [opts.dirX!, opts.dirY!]; const lineHeight = glyphs.lineHeight * opts.leading! * opts.dirY!; @@ -44,15 +32,15 @@ export const text = ( type: GLType.F32, default: opts.color, size: 4, - byteOffset: 20 - } + byteOffset: 20, + }, } - : null) + : null), }, num: len * 4, mem: { - size: len * 4 * (opts.useColor ? 36 : 20) + 8 + /* FIXME */ 40 - } + size: len * 4 * (opts.useColor ? 36 : 20) + 8 + /* FIXME */ 40, + }, }); const lines = txt.split("\n"); for (let i = 0, yy = 0, id = 0; i < lines.length; i++) { @@ -68,7 +56,7 @@ export const text = ( [x, y, 0], [x + sx, y, 0], [x + sx, y + sy, 0], - [x, y + sy, 0] + [x, y + sy, 0], ], id * 4 ); @@ -78,7 +66,7 @@ export const text = ( div2([], g.pos, glyphs.size), div2([], [g.pos[0] + g.size[0], g.pos[1]], glyphs.size), div2([], add2([], g.pos, g.size), glyphs.size), - div2([], [g.pos[0], g.pos[1] + g.size[1]], glyphs.size) + div2([], [g.pos[0], g.pos[1] + g.size[1]], glyphs.size), ], id * 4 ); @@ -93,12 +81,12 @@ export const text = ( ...mapcat( (i) => [i, i + 1, i + 2, i, i + 2, i + 3], range(0, len * 4, 4) - ) - ]) + ), + ]), }, uniforms: {}, num: len * 6, - mode: 4 // TRIANGLES + mode: 4, // TRIANGLES }; }; diff --git a/packages/webgl-shadertoy/CHANGELOG.md b/packages/webgl-shadertoy/CHANGELOG.md index 5c3720be06..0197f145bd 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.24](https://github.com/thi-ng/umbrella/compare/@thi.ng/webgl-shadertoy@0.2.23...@thi.ng/webgl-shadertoy@0.2.24) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/webgl-shadertoy + + + + + ## [0.2.23](https://github.com/thi-ng/umbrella/compare/@thi.ng/webgl-shadertoy@0.2.22...@thi.ng/webgl-shadertoy@0.2.23) (2020-06-07) **Note:** Version bump only for package @thi.ng/webgl-shadertoy diff --git a/packages/webgl-shadertoy/package.json b/packages/webgl-shadertoy/package.json index 2b1373e1fb..90271147c4 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.23", + "version": "0.2.24", "description": "Basic WebGL scaffolding for running interactive fragment shaders via @thi.ng/shader-ast", "module": "./index.js", "main": "./lib/index.js", @@ -43,11 +43,11 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/shader-ast": "^0.3.23", - "@thi.ng/shader-ast-glsl": "^0.1.29", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/webgl": "^2.0.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/shader-ast": "^0.3.24", + "@thi.ng/shader-ast-glsl": "^0.1.30", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/webgl": "^2.0.1", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/webgl-shadertoy/src/api.ts b/packages/webgl-shadertoy/src/api.ts index fbb3b2e0ee..5a494af62e 100644 --- a/packages/webgl-shadertoy/src/api.ts +++ b/packages/webgl-shadertoy/src/api.ts @@ -1,10 +1,5 @@ import type { Fn2 } from "@thi.ng/api"; -import type { - FloatSym, - IntSym, - ScopeBody, - Vec2Sym -} from "@thi.ng/shader-ast"; +import type { FloatSym, IntSym, ScopeBody, Vec2Sym } from "@thi.ng/shader-ast"; import type { GLSLTarget } from "@thi.ng/shader-ast-glsl"; import type { ITexture, ModelSpec, UniformDecl } from "@thi.ng/webgl"; diff --git a/packages/webgl/CHANGELOG.md b/packages/webgl/CHANGELOG.md index 5320e17525..c4896a029c 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. +## [2.0.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/webgl@2.0.0...@thi.ng/webgl@2.0.1) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/webgl + + + + + # [2.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/webgl@1.0.17...@thi.ng/webgl@2.0.0) (2020-06-07) diff --git a/packages/webgl/package.json b/packages/webgl/package.json index 5bc92252f1..3f5510114d 100644 --- a/packages/webgl/package.json +++ b/packages/webgl/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/webgl", - "version": "2.0.0", + "version": "2.0.1", "description": "WebGL & GLSL abstraction layer", "module": "./index.js", "main": "./lib/index.js", @@ -43,21 +43,21 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/adapt-dpi": "^1.0.0", - "@thi.ng/api": "^6.11.0", - "@thi.ng/associative": "^4.0.11", - "@thi.ng/binary": "^2.0.7", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/adapt-dpi": "^1.0.1", + "@thi.ng/api": "^6.11.1", + "@thi.ng/associative": "^4.1.0", + "@thi.ng/binary": "^2.0.8", + "@thi.ng/checks": "^2.7.1", "@thi.ng/equiv": "^1.0.23", "@thi.ng/errors": "^1.2.14", - "@thi.ng/matrices": "^0.6.18", - "@thi.ng/pixel": "^0.3.1", - "@thi.ng/shader-ast": "^0.3.23", - "@thi.ng/shader-ast-glsl": "^0.1.29", - "@thi.ng/shader-ast-stdlib": "^0.3.22", - "@thi.ng/transducers": "^7.0.0", - "@thi.ng/vector-pools": "^1.0.31", - "@thi.ng/vectors": "^4.4.3", + "@thi.ng/matrices": "^0.6.19", + "@thi.ng/pixel": "^0.3.2", + "@thi.ng/shader-ast": "^0.3.24", + "@thi.ng/shader-ast-glsl": "^0.1.30", + "@thi.ng/shader-ast-stdlib": "^0.3.23", + "@thi.ng/transducers": "^7.1.0", + "@thi.ng/vector-pools": "^1.0.32", + "@thi.ng/vectors": "^4.4.4", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/webgl/src/api/ext.ts b/packages/webgl/src/api/ext.ts index 5735043af0..4b8c08bcca 100644 --- a/packages/webgl/src/api/ext.ts +++ b/packages/webgl/src/api/ext.ts @@ -3,12 +3,12 @@ import type { IObjectOf } from "@thi.ng/api"; export const GL_EXT_INFO: IObjectOf = { WEBGL_draw_buffers: { gl: true, - alias: "GL_EXT_draw_buffers" + alias: "GL_EXT_draw_buffers", }, OES_standard_derivatives: { gl: true, - alias: "GL_OES_standard_derivatives" - } + alias: "GL_OES_standard_derivatives", + }, }; export interface ExtensionInfo { diff --git a/packages/webgl/src/api/multipass.ts b/packages/webgl/src/api/multipass.ts index b659838615..8f3429e116 100644 --- a/packages/webgl/src/api/multipass.ts +++ b/packages/webgl/src/api/multipass.ts @@ -8,7 +8,7 @@ import type { ShaderState, ShaderVaryingSpecs, UniformDecl, - UniformValues + UniformValues, } from "./shader"; import type { ITexture, TextureOpts } from "./texture"; diff --git a/packages/webgl/src/api/shader.ts b/packages/webgl/src/api/shader.ts index 85438917d4..d71ef87204 100644 --- a/packages/webgl/src/api/shader.ts +++ b/packages/webgl/src/api/shader.ts @@ -8,7 +8,7 @@ import type { IDeref, IObjectOf, IRelease, - NumericArray + NumericArray, } from "@thi.ng/api"; import type { Func, Sym } from "@thi.ng/shader-ast"; import type { GLSLTarget } from "@thi.ng/shader-ast-glsl"; @@ -29,7 +29,7 @@ import type { GLVec, GLVec2, GLVec3, - GLVec4 + GLVec4, } from "./glsl"; import type { ModelAttributeSpecs, ModelSpec } from "./model"; import type { StencilFnParams, StencilOpParams } from "./stencil"; diff --git a/packages/webgl/src/material.ts b/packages/webgl/src/material.ts index cd9184959a..69512c1f66 100644 --- a/packages/webgl/src/material.ts +++ b/packages/webgl/src/material.ts @@ -5,13 +5,13 @@ import type { ShaderUniformSpecs } from "./api/shader"; export const DEFAULT_MATERIAL: Material = { ambientCol: [0.1, 0.1, 0.1], diffuseCol: [0.8, 0.8, 0.8], - specularCol: [1, 1, 1] + specularCol: [1, 1, 1], }; const TYPES: Record = { ambientCol: "vec3", diffuseCol: "vec3", - specularCol: "vec3" + specularCol: "vec3", }; export const defMaterial = ( diff --git a/packages/webgl/src/matrices.ts b/packages/webgl/src/matrices.ts index b106b2f766..1ae327e46b 100644 --- a/packages/webgl/src/matrices.ts +++ b/packages/webgl/src/matrices.ts @@ -1,10 +1,5 @@ import { isNumber } from "@thi.ng/checks"; -import { - IDENT44, - mulM44, - normal44, - ortho -} from "@thi.ng/matrices"; +import { IDENT44, mulM44, normal44, ortho } from "@thi.ng/matrices"; import type { IObjectOf } from "@thi.ng/api"; import type { ReadonlyVec } from "@thi.ng/vectors"; import type { GLMat4 } from "./api/glsl"; diff --git a/packages/webgl/src/shaders/lambert.ts b/packages/webgl/src/shaders/lambert.ts index 0e378b8c96..a51692aa83 100644 --- a/packages/webgl/src/shaders/lambert.ts +++ b/packages/webgl/src/shaders/lambert.ts @@ -5,14 +5,14 @@ import { mul, normalize, texture, - vec4 + vec4, } from "@thi.ng/shader-ast"; import { diffuseLighting, halfLambert, lambert, surfaceNormal, - transformMVP + transformMVP, } from "@thi.ng/shader-ast-stdlib"; import { defMaterial } from "../material"; import { autoNormalMatrix2 } from "../matrices"; @@ -39,8 +39,8 @@ export const LAMBERT = (opts: Partial = {}): ShaderSpec => ({ unis.view, unis.proj ) - ) - ]) + ), + ]), ], fs: (_, unis, ins, outs) => [ defMain(() => [ @@ -63,8 +63,8 @@ export const LAMBERT = (opts: Partial = {}): ShaderSpec => ({ ), 1 ) - ) - ]) + ), + ]), ], // pre: ALIAS_TEXTURE, attribs: { @@ -75,12 +75,12 @@ export const LAMBERT = (opts: Partial = {}): ShaderSpec => ({ ? { [opts.color]: "vec3" } : null), ...(opts.instancePos ? { [opts.instancePos]: "vec3" } : null), - ...(opts.instanceColor ? { [opts.instanceColor]: "vec3" } : null) + ...(opts.instanceColor ? { [opts.instanceColor]: "vec3" } : null), }, varying: { vcolor: "vec3", vnormal: "vec3", - ...(opts.uv ? { vuv: "vec2" } : null) + ...(opts.uv ? { vuv: "vec2" } : null), }, uniforms: { model: "mat4", @@ -93,11 +93,11 @@ export const LAMBERT = (opts: Partial = {}): ShaderSpec => ({ { diffuseCol: [1, 1, 1], ...opts.material }, { specularCol: false } ), - ...(opts.uv ? { tex: "sampler2D" } : null) + ...(opts.uv ? { tex: "sampler2D" } : null), }, state: { depth: true, cull: true, - ...opts.state - } + ...opts.state, + }, }); diff --git a/packages/webgl/src/shaders/phong.ts b/packages/webgl/src/shaders/phong.ts index a199d11db1..279d293c8b 100644 --- a/packages/webgl/src/shaders/phong.ts +++ b/packages/webgl/src/shaders/phong.ts @@ -14,7 +14,7 @@ import { Sym, sym, ternary, - vec4 + vec4, } from "@thi.ng/shader-ast"; import { diffuseLighting, surfaceNormal } from "@thi.ng/shader-ast-stdlib"; import { defMaterial } from "../material"; @@ -39,9 +39,12 @@ export const PHONG = (opts: Partial = {}): ShaderSpec => ({ assign(outs.vlight, sub(unis.lightPos, $(worldPos, "xyz"))), assign(outs.veye, sub(unis.eyePos, $(worldPos, "xyz"))), assign(outs.vcolor, colorAttrib(opts, ins, unis.diffuseCol)), - assign(gl.gl_Position, mul(mul(unis.proj, unis.view), worldPos)) + assign( + gl.gl_Position, + mul(mul(unis.proj, unis.view), worldPos) + ), ]; - }) + }), ], fs: (_, unis, ins, outs) => [ defMain(() => { @@ -80,9 +83,9 @@ export const PHONG = (opts: Partial = {}): ShaderSpec => ({ ), 1 ) - ) + ), ]; - }) + }), ], attribs: { position: "vec3", @@ -91,13 +94,13 @@ export const PHONG = (opts: Partial = {}): ShaderSpec => ({ ? { [opts.color]: "vec3" } : null), ...(opts.instancePos ? { [opts.instancePos]: "vec3" } : null), - ...(opts.instanceColor ? { [opts.instanceColor]: "vec3" } : null) + ...(opts.instanceColor ? { [opts.instanceColor]: "vec3" } : null), }, varying: { vnormal: "vec3", veye: "vec3", vlight: "vec3", - vcolor: "vec3" + vcolor: "vec3", }, uniforms: { model: "mat4", @@ -108,11 +111,11 @@ export const PHONG = (opts: Partial = {}): ShaderSpec => ({ eyePos: "vec3", lightPos: ["vec3", [0, 0, 2]], lightCol: ["vec3", [1, 1, 1]], - ...defMaterial(opts.material) + ...defMaterial(opts.material), }, state: { depth: true, cull: true, - ...opts.state - } + ...opts.state, + }, }); diff --git a/packages/webgl/src/shaders/pipeline.ts b/packages/webgl/src/shaders/pipeline.ts index 80e6567357..843ac6d11a 100644 --- a/packages/webgl/src/shaders/pipeline.ts +++ b/packages/webgl/src/shaders/pipeline.ts @@ -5,27 +5,27 @@ import { FLOAT0, FLOAT1, texture, - vec4 + vec4, } from "@thi.ng/shader-ast"; import type { ShaderFn, ShaderSpec } from "../api/shader"; export const PASSTHROUGH_VS: ShaderFn = (gl, _, ins) => [ - defMain(() => [assign(gl.gl_Position, vec4(ins.position, FLOAT0, FLOAT1))]) + defMain(() => [assign(gl.gl_Position, vec4(ins.position, FLOAT0, FLOAT1))]), ]; export const PASSTHROUGH_VS_UV: ShaderFn = (gl, _, ins, outs) => [ defMain(() => [ assign(outs.v_uv, ins.uv), - assign(gl.gl_Position, vec4(ins.position, FLOAT0, FLOAT1)) - ]) + assign(gl.gl_Position, vec4(ins.position, FLOAT0, FLOAT1)), + ]), ]; export const PASSTHROUGH_FS: ShaderFn = (gl, _, __, outs) => [ - defMain(() => [assign(outs.fragColor, $xy(gl.gl_FragCoord))]) + defMain(() => [assign(outs.fragColor, $xy(gl.gl_FragCoord))]), ]; export const PASSTHROUGH_FS_UV: ShaderFn = (_, unis, ins, outs) => [ - defMain(() => [assign(outs.fragColor, texture(unis.tex, ins.v_uv))]) + defMain(() => [assign(outs.fragColor, texture(unis.tex, ins.v_uv))]), ]; export const FX_SHADER_SPEC: ShaderSpec = { @@ -35,7 +35,7 @@ export const FX_SHADER_SPEC: ShaderSpec = { varying: {}, uniforms: {}, state: { depth: false }, - ext: {} + ext: {}, }; export const FX_SHADER_SPEC_UV: ShaderSpec = { @@ -45,5 +45,5 @@ export const FX_SHADER_SPEC_UV: ShaderSpec = { varying: { v_uv: "vec2" }, uniforms: { tex: "sampler2D" }, state: { depth: false }, - ext: {} + ext: {}, }; diff --git a/packages/webgl/src/syntax.ts b/packages/webgl/src/syntax.ts index 5db8c3240c..5423694b45 100644 --- a/packages/webgl/src/syntax.ts +++ b/packages/webgl/src/syntax.ts @@ -7,14 +7,14 @@ export const PREFIXES: GLSLDeclPrefixes = { a: "a_", v: "v_", u: "u_", - o: "o_" + o: "o_", }; export const NO_PREFIXES: GLSLDeclPrefixes = { a: "", v: "", u: "", - o: "" + o: "", }; /** @@ -30,11 +30,13 @@ export const SYNTAX: Record = { `attribute ${isArray(type) ? type[0] : type} ${pre.a}${id};`, varying: { vs: (id, type, pre) => arrayDecl("varying", type, pre.v + id), - fs: (id, type, pre) => arrayDecl("varying", type, pre.v + id) + fs: (id, type, pre) => arrayDecl("varying", type, pre.v + id), }, uniform: (id, u, pre) => arrayDecl("uniform", u, pre.u + id), output: (id, type, pre) => - isArray(type) ? `#define ${pre.o}${id} gl_FragData[${type[1]}]` : "" + isArray(type) + ? `#define ${pre.o}${id} gl_FragData[${type[1]}]` + : "", }, /** * WebGL 2 (GLSL ES 3) @@ -47,14 +49,14 @@ export const SYNTAX: Record = { : `in ${type} ${pre.a}${id};`, varying: { vs: (id, type, pre) => arrayDecl("out", type, pre.v + id), - fs: (id, type, pre) => arrayDecl("in", type, pre.v + id) + fs: (id, type, pre) => arrayDecl("in", type, pre.v + id), }, uniform: (id, u, pre) => arrayDecl("uniform", u, pre.u + id), output: (id, type, pre) => isArray(type) ? `layout(location=${type[1]}) out ${type[0]} ${pre.o}${id};` - : `out ${type} ${pre.o}${id};` - } + : `out ${type} ${pre.o}${id};`, + }, }; const arrayDecl = ( diff --git a/packages/webgl/src/textures/checkerboard.ts b/packages/webgl/src/textures/checkerboard.ts index 7eeba13e3c..76a0749302 100644 --- a/packages/webgl/src/textures/checkerboard.ts +++ b/packages/webgl/src/textures/checkerboard.ts @@ -14,7 +14,7 @@ export const checkerboard = (opts: Partial) => { col1: 0xffffffff, col2: 0xff000000, cornerCols: [0xffff0000, 0xff00ff00, 0xff0000ff, 0xffffff00], - ...opts + ...opts, }; const size = opts.size!; const col1 = ARGB8888.toABGR(opts.col1!); diff --git a/packages/webgl/src/textures/stripes.ts b/packages/webgl/src/textures/stripes.ts index 2dfaeb9756..a28dd32874 100644 --- a/packages/webgl/src/textures/stripes.ts +++ b/packages/webgl/src/textures/stripes.ts @@ -12,7 +12,7 @@ export const stripes = (opts: Partial) => { size: 16, col1: 0xffffffff, col2: 0xff000000, - ...opts + ...opts, }; const size = opts.size!; const col1 = ARGB8888.toABGR(opts.col1!); diff --git a/packages/webgl/src/uniforms.ts b/packages/webgl/src/uniforms.ts index 854f7f1b14..24a37f34c6 100644 --- a/packages/webgl/src/uniforms.ts +++ b/packages/webgl/src/uniforms.ts @@ -1,11 +1,6 @@ import { equivArrayLike } from "@thi.ng/equiv"; import { IDENT22, IDENT33, IDENT44 } from "@thi.ng/matrices"; -import { - ReadonlyVec, - ZERO2, - ZERO3, - ZERO4 -} from "@thi.ng/vectors"; +import { ReadonlyVec, ZERO2, ZERO3, ZERO4 } from "@thi.ng/vectors"; import type { Fn, Fn3, IObjectOf } from "@thi.ng/api"; import type { GLVec } from "./api/glsl"; import type { UniformValue } from "./api/shader"; @@ -75,14 +70,12 @@ const uniformM = (fn: SetterM, sysDefault?: ReadonlyVec) => ( const Z1 = [0]; -export const UNIFORM_SETTERS: IObjectOf< - Fn3< - WebGLRenderingContext, - WebGLUniformLocation, - number | ReadonlyVec | undefined, - Fn - > -> = { +export const UNIFORM_SETTERS: IObjectOf +>> = { bool: uniformS("i"), float: uniformS("f"), int: uniformS("i"), @@ -124,5 +117,5 @@ export const UNIFORM_SETTERS: IObjectOf< "sampler2DShadow[]": uniformV("1iv", Z1), "sampler3D[]": uniformV("1iv", Z1), "samplerCube[]": uniformV("1iv", Z1), - "samplerCubeShadow[]": uniformV("1iv", Z1) + "samplerCubeShadow[]": uniformV("1iv", Z1), }; diff --git a/packages/webgl/src/utils.ts b/packages/webgl/src/utils.ts index c16b9e3e54..6295643b6e 100644 --- a/packages/webgl/src/utils.ts +++ b/packages/webgl/src/utils.ts @@ -1,9 +1,4 @@ -import { - add, - mul, - Sym, - Term -} from "@thi.ng/shader-ast"; +import { add, mul, Sym, Term } from "@thi.ng/shader-ast"; import type { IObjectOf } from "@thi.ng/api"; import type { ShaderOpts } from "./api/shader"; diff --git a/packages/zipper/CHANGELOG.md b/packages/zipper/CHANGELOG.md index 451aa12060..b944e0415b 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.17](https://github.com/thi-ng/umbrella/compare/@thi.ng/zipper@0.1.16...@thi.ng/zipper@0.1.17) (2020-06-14) + +**Note:** Version bump only for package @thi.ng/zipper + + + + + ## [0.1.16](https://github.com/thi-ng/umbrella/compare/@thi.ng/zipper@0.1.15...@thi.ng/zipper@0.1.16) (2020-06-01) **Note:** Version bump only for package @thi.ng/zipper diff --git a/packages/zipper/package.json b/packages/zipper/package.json index bb3f926328..b40b1d61c8 100644 --- a/packages/zipper/package.json +++ b/packages/zipper/package.json @@ -1,6 +1,6 @@ { "name": "@thi.ng/zipper", - "version": "0.1.16", + "version": "0.1.17", "description": "Functional tree editing, manipulation & navigation", "module": "./index.js", "main": "./lib/index.js", @@ -43,9 +43,9 @@ "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.11.0", - "@thi.ng/arrays": "^0.6.8", - "@thi.ng/checks": "^2.7.0", + "@thi.ng/api": "^6.11.1", + "@thi.ng/arrays": "^0.6.9", + "@thi.ng/checks": "^2.7.1", "tslib": "^1.12.0" }, "files": [ diff --git a/packages/zipper/src/zipper.ts b/packages/zipper/src/zipper.ts index 73c86702a4..dedddcf59e 100644 --- a/packages/zipper/src/zipper.ts +++ b/packages/zipper/src/zipper.ts @@ -14,7 +14,7 @@ const newPath = ( r, path, nodes, - changed + changed, }); const changedPath = (path?: Path) => @@ -44,9 +44,9 @@ export class Location { } get depth() { - let d =0; + let d = 0; let path = this._path; - while(path) { + while (path) { d++; path = path.path; } @@ -318,7 +318,7 @@ export const arrayZipper = (root: T[]) => { branch: isArray, children: (x) => x, - factory: (_, xs) => xs + factory: (_, xs) => xs, }, root ); diff --git a/packages/zipper/test/custom.ts b/packages/zipper/test/custom.ts index 4e4ae1e0ca..6c5de5663a 100644 --- a/packages/zipper/test/custom.ts +++ b/packages/zipper/test/custom.ts @@ -23,8 +23,8 @@ describe("custom", () => { type: "branch", children: [ { type: "leaf", value: 1 }, - { type: "leaf", value: 2 } - ] + { type: "leaf", value: 2 }, + ], }, { type: "leaf", value: 3 }, { @@ -33,11 +33,11 @@ describe("custom", () => { { type: "leaf", value: 4 }, { type: "branch", - children: [{ type: "leaf", value: 5 }] - } - ] - } - ] + children: [{ type: "leaf", value: 5 }], + }, + ], + }, + ], }; a = zipper( { @@ -45,8 +45,8 @@ describe("custom", () => { children: (x) => (x).children, factory: (src, children) => ({ type: (src).type, - children - }) + children, + }), }, tree ); @@ -99,17 +99,17 @@ describe("custom", () => { type: "branch", children: [ { type: "leaf", value: 1 }, - { type: "leaf", value: 10 } - ] + { type: "leaf", value: 10 }, + ], }, - ...tree.children.slice(1) - ] + ...tree.children.slice(1), + ], } ); assert.deepEqual( a.next!.rightmost.down!.right!.down!.replace({ type: "leaf", - value: 10 + value: 10, }).up!.root, { type: "root", @@ -121,11 +121,11 @@ describe("custom", () => { { type: "leaf", value: 4 }, { type: "branch", - children: [{ type: "leaf", value: 10 }] - } - ] - } - ] + children: [{ type: "leaf", value: 10 }], + }, + ], + }, + ], } ); }); diff --git a/scripts/make-example b/scripts/make-example index cb4096e34d..402f6bf30c 100755 --- a/scripts/make-example +++ b/scripts/make-example @@ -42,13 +42,11 @@ cat << EOF > "$MODULE"/package.json }, "devDependencies": { "parcel-bundler": "^1.12.4", - "terser": "^4.6.3", - "typescript": "^3.7.5" + "terser": "^4.6.13", + "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "latest", - "@thi.ng/rstream": "latest", - "@thi.ng/transducers-hdom": "latest" + "@thi.ng/api": "latest" }, "browserslist": [ "last 3 Chrome versions" diff --git a/scripts/make-module b/scripts/make-module index 6d730da73c..1b57acf9a8 100755 --- a/scripts/make-module +++ b/scripts/make-module @@ -77,17 +77,17 @@ cat << EOF > "$MODULE"/package.json }, "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", - "@microsoft/api-extractor": "^7.7.8", - "@types/mocha": "^7.0.1", - "@types/node": "^13.7.4", - "mocha": "^7.1.1", - "nyc": "^15.0.0", - "ts-node": "^8.6.2", - "typedoc": "^0.16.10", - "typescript": "^3.8.3" + "@microsoft/api-extractor": "^7.8.0", + "@types/mocha": "^7.0.2", + "@types/node": "^14.0.1", + "mocha": "^7.1.2", + "nyc": "^15.0.1", + "ts-node": "^8.10.1", + "typedoc": "^0.17.6", + "typescript": "^3.9.2" }, "dependencies": { - "@thi.ng/api": "^6.10.2" + "@thi.ng/api": "^6.11.0" }, "files": [ "*.js", diff --git a/tools/src/doc-table.ts b/tools/src/doc-table.ts index c474c08790..f9fa70777d 100644 --- a/tools/src/doc-table.ts +++ b/tools/src/doc-table.ts @@ -1,17 +1,11 @@ import { serialize } from "@thi.ng/hiccup"; -import { - comp, - filter, - map, - push, - transduce -} from "@thi.ng/transducers"; +import { comp, filter, map, push, transduce } from "@thi.ng/transducers"; import { existsSync, readdirSync, writeFileSync } from "fs"; import { META_FIELD, Package } from "./api"; import { readJSON } from "./io"; import { shortName } from "./partials/package"; -const REPO_URL = "https://github.com/thi-ng/umbrella/blob/master/packages"; +const REPO_URL = "https://github.com/thi-ng/umbrella/blob/develop/packages"; const NPM_URL = "https://www.npmjs.com/package"; const BADGE_URL = "https://img.shields.io/npm/v"; const BASE_DIR = "./packages/"; @@ -28,21 +22,21 @@ const pkgDetails = (p: Package) => [ "img", { src: `${BADGE_URL}/${p.name}.svg`, - alt: "npm version" - } - ] - ] + alt: "npm version", + }, + ], + ], ], [ "td", [ "a", { - href: `${REPO_URL}/${shortName(p.name)}/CHANGELOG.md` + href: `${REPO_URL}/${shortName(p.name)}/CHANGELOG.md`, }, - "changelog" - ] - ] + "changelog", + ], + ], ]; const packages = transduce( @@ -71,17 +65,17 @@ writeFileSync( "meta", { "http-equiv": "Content-Type", - content: "text/html; charset=utf-8" - } + content: "text/html; charset=utf-8", + }, ], [ "link", { href: "https://unpkg.com/tachyons@4/css/tachyons.min.css", - rel: "stylesheet" - } - ] + rel: "stylesheet", + }, + ], ], [ "body.measure.center.sans-serif.lh-copy", @@ -90,12 +84,12 @@ writeFileSync( { alt: "docs.thi.ng", src: - "https://media.thi.ng/umbrella/banners/docsthing.svg" - } + "https://media.thi.ng/umbrella/banners/docsthing.svg", + }, ], [ "p", - "This site hosts auto-generated documentation for the following projects:" + "This site hosts auto-generated documentation for the following projects:", ], ["table.w-100", ["tbody", ...packages]], [ @@ -109,15 +103,15 @@ writeFileSync( [ "a", { href: "https://twitter.com/thing_umbrella/" }, - "twitter" + "twitter", ], [ "p.mt3.f7.gray", "Last updated: ", - new Date().toISOString() - ] - ] - ] - ] + new Date().toISOString(), + ], + ], + ], + ], ]) );