twico-ui 1.20.2 → 1.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,13 @@
2
2
 
3
3
  All notable changes to Twico UI are documented here (newest first). This file is generated automatically on each release by [semantic-release](https://semantic-release.gitbook.io/) from [Conventional Commits](https://www.conventionalcommits.org/) — do not edit it by hand. The same notes appear on each [GitHub Release](https://github.com/EncryptionL/twico-ui/releases).
4
4
 
5
+ # [1.21.0](https://github.com/EncryptionL/twico-ui/compare/v1.20.2...v1.21.0) (2026-07-28)
6
+
7
+
8
+ ### Features
9
+
10
+ * **datatable:** add toolbarActions slot for custom toolbar controls ([c1c3142](https://github.com/EncryptionL/twico-ui/commit/c1c3142787cb2a21811b16d6774f0e1f2c6045b9)), closes [#286](https://github.com/EncryptionL/twico-ui/issues/286)
11
+
5
12
  ## [1.20.2](https://github.com/EncryptionL/twico-ui/compare/v1.20.1...v1.20.2) (2026-07-24)
6
13
 
7
14
 
package/dist/index.cjs CHANGED
@@ -8128,6 +8128,8 @@ var DT_CSS = `
8128
8128
  /* Toolbar */
8129
8129
  .twc-dt__toolbar { position: relative; z-index: 10; display: flex; align-items: center; gap: 6px; padding: 8px 10px;
8130
8130
  border-bottom: var(--border-thin) solid var(--color-divider); flex-wrap: wrap; }
8131
+ /* #286: host-supplied leading toolbar slot \u2014 a flex cluster so multiple buttons align with the built-ins. */
8132
+ .twc-dt__toolbar-actions { display: inline-flex; align-items: center; gap: 6px; }
8131
8133
  /* z-index above the scroll area's sticky header (z:3) so a toolbar button's
8132
8134
  hover tooltip (a ::after that hangs below the bar) paints over the table
8133
8135
  instead of being covered by the header/first rows. */
@@ -9082,6 +9084,7 @@ function Datatable({
9082
9084
  searchable = true,
9083
9085
  quickFilter,
9084
9086
  onQuickFilterChange,
9087
+ toolbarActions,
9085
9088
  rowPinning = false,
9086
9089
  rowReorder = false,
9087
9090
  rowResize = false,
@@ -10664,6 +10667,7 @@ function Datatable({
10664
10667
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `twc-dt ${className}`, ref: rootRef, "data-density": density, "data-resizing": resizing || void 0, ...rest, children: [
10665
10668
  __twcStyles,
10666
10669
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "twc-dt__toolbar", "data-compact": compact || void 0, children: [
10670
+ toolbarActions != null ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "twc-dt__toolbar-actions", children: toolbarActions }) : null,
10667
10671
  (batchActions.length || hasBatchEditor) && selected.size > 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "twc-dt__batch", children: [
10668
10672
  /* @__PURE__ */ jsxRuntime.jsx("button", { type: "button", className: "twc-dt__batch-x", onClick: clearSelection, "aria-label": "Clear selection", children: /* @__PURE__ */ jsxRuntime.jsx(Svg, { d: I.x }) }),
10669
10673
  /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "twc-dt__batch-count", children: [