Skip to content
Permalink
develop
Switch branches/tags
Go to file
 
 
Cannot retrieve contributors at this time

Change Log

All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.

Note: Unlisted patch versions only involve non-code or otherwise excluded changes and/or version bumps of transitive dependencies.

2.1.9 (2022-04-07)

♻️ Refactoring

  • replace deprecated .substr() w/ .substring() (0710509)

2.1.0 (2021-11-17)

🚀 Features

  • Using workspaces for local tools (bf7a404) Improving the overall build ergonomics
    • introduced a tools workspaces
    • imported it in all needed packages/examples
    • inclusive project root

♻️ Refactoring

  • testrunner to binary (4ebbbb2) this commit reverts (partly) changes made in: ef346d7a8753590dc9094108a3d861a8dbd5dd2c overall purpose is better testament ergonomics: instead of having to pass NODE_OPTIONS with every invocation having a binary to handle this for us.

2.0.1 (2021-10-13)

♻️ Refactoring

  • update imports in all tests/pkgs (effd591)
  • update imports in all pkgs (5fa2b6f)
    • add .js suffix for all relative imports

2.0.0 (2021-10-12)

🛑 Breaking changes

  • major update of ALL pkgs (export maps, ESM only) (0d1d6ea)
  • BREAKING CHANGE: discontinue CommonJS & UMD versions
    • only ESM modules will be published from now on
    • CJS obsolete due to ESM support in recent versions of node:
      • i.e. launch NodeJS via:
      • node --experimental-specifier-resolution=node --experimental-repl-await
      • in the node REPL use await import(...) instead of require()
    • UMD obsolete due to widespread browser support for ESM Also:
    • normalize/restructure/reorg all package.json files
    • cleanup all build scripts, remove obsolete
    • switch from mocha to @thi.ng/testament for all tests

♻️ Refactoring

1.0.3 (2021-08-18)

🩹 Bug fixes

  • include missing src folder in pkg (67e2f71)
    • thanks to @djmike for reporting
    • see fix in fa8fdda12

0.2.70 (2021-04-24)

♻️ Refactoring

0.2.53 (2021-02-20)

♻️ Refactoring

0.2.44 (2020-12-07)

♻️ Refactoring

  • update type-only imports (f01e3f4)
  • update type-only imports in various tests/pkgs (3fd9c24)

0.2.42 (2020-11-24)

🩹 Bug fixes

  • update XY-pad value rounding/snapping (d45c073)

♻️ Refactoring

0.2.40 (2020-09-22)

♻️ Refactoring

  • extract handleTextfieldKeys() (3c676aa)
  • update hoverButton() behavior, re-use (a2a4c3b)
  • extract layoutBox() helper, re-use (7e94bb4)
  • minor updates IMGUI class (aec84c6)
    • extract gc() method
    • update endTheme()/endDisabled()
  • dedupe dropdown caret (69332d9)
  • dedupe button label handling/creation (467159c)
  • update textField() key/cursor handling (27889d3)
  • dedupe dial/ring value labels (ff2b318)
    • extract dialValueLabel() helper

0.2.39 (2020-09-13)

♻️ Refactoring

  • update deps, imports, use new Fn types (7921929)

0.2.36 (2020-08-19)

🩹 Bug fixes

  • don't update curr value to click position (12d6705)
    • when click occurs only update result value, not current value
    • fixes jitter issue when component state values are being interpolated (externally)

0.2.7 (2020-04-05)

♻️ Refactoring

  • switch to non-const enums (f0552e2)

0.2.0 (2020-02-25)

🚀 Features

♻️ Refactoring

0.1.6 (2020-01-24)

♻️ Refactoring

0.1.0 (2019-08-16)

🚀 Features

  • add IMGUI.clear(), update deps (d10732d)
  • add IMGUI.draw flag, update components, add/update hash fns (c9bc287)
  • add key handling for radialMenu() (99c2987)
  • add dialGroup, ringGroup, fix/update label hashing (0333fa6)
  • add disabled component stack, update theme & behaviors (dce481a)
  • add theme stack, extract default event handlers (b4aee22)
  • add cursor & LayoutBox support, add docs (b8d0892)
  • non-destructive value updates, local state (b499c8c)
    • update all components to return new values (if edited) or else undefined
    • store local state (dropdown, textfield) in IMGUI state cache
  • update dropdown key handlers (Esc) (c2ef036)
  • add cursor blink config, update textFieldRaw() (1d80e14)
  • add iconButton() (07599a4)
  • add textTransformH/V, update buttons to allow any body (05cc31f)
    • cache button labels in buttonH/V
  • add GridLayout.spansForSize/colsForWidth/rowsForHeight (713dce1)
  • update toggleRaw() to update value earlier (21ba39d)
  • update IMGUIOpts, input handling, optional event handling (d06a235)
    • remove width/height from IMGUIOpts
    • add IMGUI.setMouse/setKey to update mouse/key state
    • remove obsolete Set of active keys
    • make existing event handling optional, move to .useDefaultEventHandlers()
  • add component resource caching & GC, update all comps & theme (7c3d399)
    • add .registerID() to mark used components & invalidate cache
    • add .resource() to retrieved component assets
    • update all comps to use cached shapes (at least partially)
  • rename dial => ring, add new dial, extract dialVal() (cd9a339)
  • add buttonV, radialMenu, update dropdown (03d5932)
  • add dial widget, extract key handlers, update layout (d3d2b27)
    • add dial/diaRaw() widgets
    • extract button & slider value updaters / key handlers
    • add GridLayout.nextSquare()
    • update button, toggle, sliders & xyPad widgets
  • add layouted sliderV/Group, add/update various comp (7e0bfeb)
    • add square option for toggle() & radio()
    • add sliderV/sliderVGroup()
    • add textLabel() (layouted version)
    • add layouted xyPad w/ opt height constraints
    • minor optimizations GridLayout.next()
    • add IMGUI.textWidth()
  • update button, dropdown, radio, sliderHGroup (588a321)
    • update buttonRaw to allow any IShape
    • update button to provide rect
    • update dropdown, radio, sliderHGroup to use nested layout
    • update radio to support horizontal/vertical layouts
    • remove dropdownRaw, radioRaw, sliderHGroupRaw
  • update IGridLayout & GridLayout.next() (0c1d483)
    • expose readonly layout props
    • clamp colspan to max cols
    • minor optimizations
  • add/update layout types, handling, add more ctrl key consts (4086590)
  • add GridLayout, update all components (4f94981)
  • add xyPad label offset args, minor refactoring (d224fe0)
  • update theme init/config, add setTheme() (76ad91c)
  • add toggle & radio buttons (6a491aa)
  • add vertical slider, rename slider/sliderGroup (40c050e)
    • slider / sliderGroup = sliderH/sliderHGroup
    • add new sliderV / sliderVGroup
  • update dropdown, add tooltip support & tri icon (d662811)
  • add home/end key support in textField (ae75c08)
  • add color type, keys, update default theme (e4facae)
  • add dropdown widget, update hover behaviors (b9d725a)
  • add XY-pad widget (6446e6e)
  • add touch support, minor widget refactoring (dcd19bc)
  • update tab handling, allow all items unfocused (1a63694)
  • update textField, set cursor via mouse, update alt move/del (4f9760d)
  • add textfield scrolling, cursor movement, word jump (c94d4d9)
  • add slider value format, minor other updates (399fa21)
  • add textField widget, update theme & key handling (53b068f)
  • add key consts, update key handling (shift/alt mods) (7809734)
  • import as new package @thi.ng/imgui (f94b430)

🩹 Bug fixes

  • touch event handling (FF/Safari) (af697d9)

Performance improvements

  • update comp hashing to use murmur hash vs toString, use ES6 Maps (7db92b9)
    • hash() ~2x faster than String()
    • use ES6 Maps for IMGUI resource caches to avoid hash string conv (8-10x faster)

♻️ Refactoring

  • extract hover behavior fns, fix button behavior (15ae744)
    • extract IMGUI.isHover as isHoverSlider()
    • add isHoverButton(), revert behavior to not trigger if mouse released outside
    • update all required comps
  • update label handling in sliderV/radialMenu, update ring (ad0d9c9)
  • update mouse hover handling (8e907e0)
  • update button & dropdown (c030b4d)