Skip to content

@antelopejs/dms v0.10.0

Choose a tag to compare

@Upd4ting Upd4ting released this 22 Oct 22:26
· 87 commits to main since this release

Upgrade notes

  • Implements @antelopejs/interface-dms 0.8 (>=0.8.0 <0.9.0); modules raise their floor to @antelopejs/interface-dms >=0.8.0 and @antelopejs/dms >=0.10.0. See Migrate from 0.7 to 0.8.
  • KpiCard: showPreviousValue defaults to true, so a card whose data carries previousValue prints it beside the change; set false to keep a card compact (#352).
  • A RelationType / CascaderRelationType with multiple: true filters with include / exclude instead of is / is_not: a saved view or a link filtering it with is: lists nothing until saved again or rewritten as include: (#363).

compare changes

🚀 Enhancements

  • config: Refuse a production start on public secrets or without the dashboard origin (#401)
  • auth: Take the client address from the header the hosting platform writes (auth.clientIpHeader) (#405)
  • frontend: Proxy the storage's signed URLs through the frontend server (#406)
  • tenancy: ⚠️ Route every member and invite write through changeTenantMembers (#407)
  • frontend: ⚠️ Compute each frontend module from its config, report served versions (#408)
  • dms-core: One public hydration check, isHydratingComponent (#376)
  • page: Route params for header-button availability, breadcrumb parent, one PageLayoutRequest (#387)
  • Shared page toolbar for pages with a period or live data (#351)
  • drawer: Resizable drawers, 600px side default, and side panel row options for row drawers (#375)
  • table-view: Declare watches on the forms a table view generates (#379)
  • interface-dms: FrontendModulesChanged event for late frontend modules (#382)
  • data-types: Filter a tags column on the rows holding a tag (#380)
  • table-view: ⚠️ Adopt @antelopejs/interface-data-api 0.3 (#389)
  • realtime: Scope page messages to the tenant they are about (#353)
  • automation: Configurable texts, tone, tenant and templates for the DMS automation nodes (#337)
  • kpi-card: Show the comparison value and follow the selected comparison (#352)
  • layout-banners: Scope layout banners to the application's pages by default (#348)
  • row-navigation: Steps follow the table's full result, live tables and the kanban (#375, #398)
  • layout: Settings from the account menu only, profile picture in the sidebar (#374)
  • form: Dependent relation options and field value rules (#346)
  • table-view: Require a table's list for the actions reached from its rows (#371)
  • automation: Dry-run the DMS actions in a builder test run (#388)

🩹 Fixes

  • tenant-lifecycle: Refuse admission under a barrier with 409, not 500 (#409)
  • auth: A session outlives the browser only when written persistent (#377)
  • layout: Store a signed-in user's footer language switch on their profile (#383)
  • skills: Make dms-dev.sh stop, status and restart work on Windows Git Bash (#384)
  • layout: Translated close / select labels and a readable phone header (#386)
  • notifications: Stop Mark read clicks from landing on Delete in the inbox (#342)
  • grid: Lay a row nested in a cell out on its own children (#350)
  • Onboarding SSR read, and row action, row token and action-target container fixes for block-built pages (#332)
  • chart: Chart and widget fixes for block-built dashboards (#334)
  • save-bar: Lift the toasts above a save bar on the bottom edge (#372)
  • table-view: Row containers, grouped display, cards, bulk row runs, wide tables and calendar period comparisons (#344)
  • realtime: Share one realtime connection between a browser's tabs (#335)
  • form: Generic form and i18n fixes (nested options, secret rotation, group labels, module-default note) (#333)
  • data-types: Keep formatters out of component setup and log dev errors (#338)
  • data-types: Read a null array as empty in include and exclude filters (#341)
  • form: Keep a refused submit's field error while its value is unchanged (#360)
  • form: Label a relation's ids from its select route, in the picker and the filter chips (#378)
  • table: Write a number field's unit wherever its value is drawn (#381)
  • modules: Modules page and module store polish (installed tiles, store view, working copies) (#345)
  • format: Read durations as written, let a number step drive the steppers, group every figure (#391)
  • form: Address suggestions, relation add entry, confirm Close and date picker close (#392)
  • roles: Preview a role as a non-owner member, and tell resolvers it is a preview (#356)
  • form: Forms and KeyValueList follow the container's width in drawers and modals (#375, #399)
  • table: Count the archive without agreeing with a noun, let a table view name it (#394)
  • form: Show a read-only list as a table of values, a URL as its image (#395)
  • dialog: Closing any dialog gives the page its clicks at once (#375, #400)
  • data-types: Multiple relation include; date greater than excludes the picked day; order filters skip empty values; typed chip editor (#363)
  • table-view: Combine views with tabs, date chips for relative filters, and keep the tab on reload (#358)
  • form: Narrow date fields and repeater rows, and relation labels in change notes (#361)
  • frontend: Refresh counts after a kanban move, no header sort on a hand-ordered table (#362)
  • frontend: Configured add label in every placement, bulk toast counts what the route changed (#364)
  • table-view: Warn at registration about a quick filter with no values to pick (#370)
  • form: Create, cancel and save behaviour of forms, section scroll, error summary (#343)
  • No layout shift from the live toggle, fetched banners, KPI and table skeletons, and live rows (#354)
  • table-view: Links open on the table's defaults, global nav badges, kept view search (#365)
  • table-view: Tab and view counters count what a click would list (#373)
  • table-view: Generic TableView fixes from block-built pages (#336)
  • table-view: Per-action access in forms, relative dates while hydrating, expanded rows (#385)

💅 Refactors

  • startup: Rely on the api startup gate instead of a DMS one (#402)
  • table-view: Keep a table view's row actions schema in its own module (#393)
  • dms: ⚠️ Remove the compatibility paths of #119 and #172, restore the migration guides (#390, #119, #172)

📖 Documentation

  • file-storage: Uploads stop at 100 MB at the Cloudflare edge on AntelopeJS Cloud (#410)
  • migration: Note the KPI compared-figure default and include on multiple relations (#415)

🏡 Chore

  • release: @antelopejs/interface-dms v0.8.0 (43489c4e)

✅ Tests

  • Pin file-storage-local 0.1.11, mongodb 1.4.4 and api with interface-api 0.0.16 in the harness (#411)
  • realtime: Bind the verified tenant as the auth decorator does (#414)

⚠️ Breaking Changes

  • tenancy: ⚠️ Route every member and invite write through changeTenantMembers (#407)
  • frontend: ⚠️ Compute each frontend module from its config, report served versions (#408)
  • table-view: ⚠️ Adopt @antelopejs/interface-data-api 0.3 (#389)
  • dms: ⚠️ Remove the compatibility paths of #119 and #172, restore the migration guides (#390, #119, #172)

❤️ Contributors