base/CHANGELOG.md

5.2 KiB

Changelog

[1.0.22] - 2026-06-28

Added

  • List: Added internal filtering and sorting capabilities on the List component across all three layout modes (normal, group, tree). Supports filter and order attributes and state fields. In tree mode, filtering correctly propagates up to preserve parent-descendant hierarchy. Added a MutationObserver to listen to attribute changes and sync them reactively to internal component state.

[1.0.21] - 2026-06-27

Fixed

  • API: Preserved declarative preset fields injected through $.request.* when the API component initializes its internal reactive request state.
  • Nav: Restored horizontal dropdown behavior by removing container-level clipping, added label/class support for menu grouping, and switched vertical mode dropdown groups to inline expansion so long sidebars can scroll without popup clipping.

[1.0.18] - 2026-06-11

Changed

  • Component-Based Refactor: Reorganized source code into independent, PascalCase named modules (e.g., AutoForm.js, TagsInput.js, List.js) to improve maintainability.
  • De-ESM Architecture: Eliminated internal ESM import/export dependencies between modules. Logic is now shared via globalThis and registration patterns, ensuring 100% UMD compatibility.
  • Improved Encapsulation: Each component is now a self-contained unit responsible for its own registration and internal logic.
  • Global API Consistency: Ensured all public APIs (HTTP, UI, AutoForm, etc.) are consistently mounted to globalThis.

Fixed

  • Scope Initialization: Fixed a critical TypeError in DatePicker and TagsInput by refining parent scope inheritance and preventing recursive self-parenting in the underlying state engine.

[1.0.13] - 2026-06-08

Fixed

  • State Integration: Bumped @apigo.cc/state to 1.0.18 to restore the globally injected $/$$ helpers from the original UMD era, fixing TagsInput element targeting.
  • AutoForm Layout: Fixed horizontal grid layout breakage caused by missing AUTOFORM_STYLE registration.
  • AutoForm Expansion: Restored AutoForm.register with deep-blueprint [control-wrapper] physical insertion mechanism, fixing the blank rendering bug of TagsInput and ColorPicker.
  • Form Controls: Removed height: 100% from ColorPicker preventing flex squash; fixed horizontal mode left-padding overflow for Check/Radio/Switch components.
  • Build: Fully expunged .mjs artifacts from vite build pipeline to enforce UMD compliance.

[1.0.12] - 2026-06-05

Changed

  • De-ESM Refactor: Fully transitioned the runtime environment to synchronous UMD loading, eliminating race conditions and rendering artifacts.
  • AutoForm Purification: Purged all "black-box" patching logic that dynamically modified component templates. Field rendering now follows 100% transparent, explicit TEMPLATE logic.
  • Philosophy Alignment: Removed all forbidden RefreshState calls from business logic, entrusting the asynchronous MutationObserver engine for all UI updates.

[1.0.11] - 2026-06-05

Changed

  • Dependency: Updated @apigo.cc/state CDN script dependency to 1.0.16 for AutoForm nested field mounting bindings fix.

[1.0.10] - 2026-06-05

Fixed

  • List: Removed reactive data-binding for prevHeight and postHeight and refactored virtual scroll to directly mutate padding DOM node heights, preventing reactive re-render overhead.
  • List: Ignored elements with offsetHeight === 0 during layout measurement, preventing hidden tab state (display: none) from polluting height average avg.
  • List: Applied a safety minimum limit (16px) to average item height calculations to prevent visibleCount explosion.
  • List: Implemented a synchronization re-entry lock using setTimeout in list refresh to cut recursive scroll event loops.
  • Config: Configured server.fs.allow: ['..'] in vite.config.js to allow local development cross-directory assets access (like fonts).

[1.0.9] - 2026-06-05

Changed

  • Document: Comprehensive rewrite of base/README.md utilizing example-driven and static declaration binding paradigm.
  • Document: Created base/CAPABILITY.md as the 100% complete spec checklist for all components and API.
  • Config: Updated @apigo.cc/state dependency reference to v1.0.13.

[1.0.8] - 2026-06-05

Changed

  • Bump version and align dependencies.

[1.0.7] - 2026-05-29

Added

  • DatePicker: New control with range support (main/shadow field sync).
  • ColorPicker: New control with color input and text hex input.
  • IconPicker: New control with searchable Bootstrap Icons grid.
  • AutoForm: Automatically registered the new controls.

[1.0.6] - 2026-05-27

Added

  • AutoForm: Support data-driven visibility using field.if (utilizing state's $$ double-calculation).
  • AutoForm: Added reactive data property mapped to state.data.

Changed

  • AutoForm: Decoupled from global State.editingData. Data must now be passed via the data property.
  • Internal: Optimized _addAutoFormComponent to support nested templates.

[1.0.5] - 2026-05-23

Added

  • Documented project-wide "Manual DOM Sync" design principle for performance critical components.

Fixed

  • Verified VirtualScroll stability and timing.
  • Synchronized component registration lifecycle during rapid DOM mutations.