@iris-ui-kit/vue 0.2.0 → 0.2.2

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/dist/index.cjs CHANGED
@@ -3218,39 +3218,37 @@ var IrisPopoverContent = vue.defineComponent({
3218
3218
  target?.focus();
3219
3219
  }
3220
3220
  });
3221
- const contentVNode = vue.computed(
3222
- () => vue.h(
3223
- "div",
3224
- {
3225
- ...attrs,
3226
- ref: (el) => {
3227
- innerRef.value = el ?? null;
3228
- },
3229
- id: ctx.contentId,
3230
- role: "dialog",
3231
- tabindex: -1,
3232
- "data-state": ctx.open.value ? "open" : "closed",
3233
- "data-placement": ctx.placement,
3234
- style: {
3235
- ...floatingStyles.value,
3236
- background: "var(--iris-surface)",
3237
- color: "var(--iris-foreground)",
3238
- border: "1px solid var(--iris-border)",
3239
- borderRadius: "var(--iris-radius-md)",
3240
- padding: "var(--iris-padding-md)",
3241
- boxShadow: "0 8px 24px -8px rgba(0, 0, 0, 0.16), 0 4px 8px -2px rgba(0, 0, 0, 0.08)",
3242
- fontSize: "14px",
3243
- zIndex: "1000",
3244
- outline: "none",
3245
- ...attrs.style ?? {}
3246
- }
3221
+ const renderContent = () => vue.h(
3222
+ "div",
3223
+ {
3224
+ ...attrs,
3225
+ ref: (el) => {
3226
+ innerRef.value = el ?? null;
3247
3227
  },
3248
- slots.default?.()
3249
- )
3228
+ id: ctx.contentId,
3229
+ role: "dialog",
3230
+ tabindex: -1,
3231
+ "data-state": ctx.open.value ? "open" : "closed",
3232
+ "data-placement": ctx.placement,
3233
+ style: {
3234
+ ...floatingStyles.value,
3235
+ background: "var(--iris-surface)",
3236
+ color: "var(--iris-foreground)",
3237
+ border: "1px solid var(--iris-border)",
3238
+ borderRadius: "var(--iris-radius-md)",
3239
+ padding: "var(--iris-padding-md)",
3240
+ boxShadow: "0 8px 24px -8px rgba(0, 0, 0, 0.16), 0 4px 8px -2px rgba(0, 0, 0, 0.08)",
3241
+ fontSize: "14px",
3242
+ zIndex: "1000",
3243
+ outline: "none",
3244
+ ...attrs.style ?? {}
3245
+ }
3246
+ },
3247
+ slots.default?.()
3250
3248
  );
3251
3249
  return () => {
3252
3250
  if (!ctx.open.value) return null;
3253
- const node = contentVNode.value;
3251
+ const node = renderContent();
3254
3252
  if (props.teleport === false) return node;
3255
3253
  return vue.h(vue.Teleport, { to: props.teleport }, [node]);
3256
3254
  };
@@ -9291,6 +9289,7 @@ var IrisTable = vue.defineComponent({
9291
9289
  "update:sort": (_value) => true,
9292
9290
  "update:columnWidths": (_value) => true,
9293
9291
  rowClick: (_row, _index) => true,
9292
+ rowDblclick: (_row, _index) => true,
9294
9293
  cellEdit: (_payload) => true,
9295
9294
  expandedRowsChange: (_keys) => true
9296
9295
  },
@@ -9697,6 +9696,8 @@ var IrisTable = vue.defineComponent({
9697
9696
  const isLeaf = !col.children || col.children.length === 0;
9698
9697
  const sortable = isLeaf && col.sortable;
9699
9698
  const align = col.align ?? "left";
9699
+ const headerSlot = slots[`header.${col.key}`];
9700
+ const title = headerSlot?.({ column: col }) ?? col.title;
9700
9701
  cells.push(
9701
9702
  vue.h(
9702
9703
  "div",
@@ -9727,7 +9728,7 @@ var IrisTable = vue.defineComponent({
9727
9728
  textOverflow: "ellipsis"
9728
9729
  }
9729
9730
  },
9730
- [col.title, sortable ? sortIndicator(col) : null]
9731
+ [title, sortable ? sortIndicator(col) : null]
9731
9732
  )
9732
9733
  );
9733
9734
  }
@@ -9797,6 +9798,8 @@ var IrisTable = vue.defineComponent({
9797
9798
  const col = props.columns[ci];
9798
9799
  if (visibleColSet.value && !visibleColSet.value.has(ci)) continue;
9799
9800
  const align = col.align ?? "left";
9801
+ const headerSlot = slots[`header.${col.key}`];
9802
+ const title = headerSlot?.({ column: col }) ?? col.title;
9800
9803
  wireResize(col);
9801
9804
  const handle = props.resizableColumns ? vue.h("span", {
9802
9805
  ref: (el) => {
@@ -9864,7 +9867,7 @@ var IrisTable = vue.defineComponent({
9864
9867
  },
9865
9868
  "aria-sort": internalSort.value?.key === col.key ? internalSort.value.direction === "asc" ? "ascending" : "descending" : col.sortable ? "none" : void 0
9866
9869
  },
9867
- [col.title, sortIndicator(col), handle]
9870
+ [title, sortIndicator(col), handle]
9868
9871
  )
9869
9872
  );
9870
9873
  }
@@ -10140,6 +10143,7 @@ var IrisTable = vue.defineComponent({
10140
10143
  "data-iris-table-row": "",
10141
10144
  "data-state": selected ? "selected" : void 0,
10142
10145
  onClick: () => emit("rowClick", row, index),
10146
+ onDblclick: () => emit("rowDblclick", row, index),
10143
10147
  style: {
10144
10148
  display: "grid",
10145
10149
  gridTemplateColumns: gridTemplate.value,