@ims360/svelte-ivory 0.0.48 → 0.0.49

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.
@@ -26,7 +26,7 @@
26
26
 
27
27
  <script lang="ts">
28
28
  let {
29
- class: clazz = 'py-2 flex flex-row items-center truncate',
29
+ class: clazz,
30
30
  children,
31
31
  onclick,
32
32
  ignoreWidth = false,
@@ -42,7 +42,7 @@
42
42
  const column = tableContext.registerColumn({ resizable, ...props });
43
43
 
44
44
  const finalOnClick = $derived(onclick || rowContext.onclick);
45
- const allowClicking = $derived(!!onclick);
45
+ const allowClicking = $derived(!!(onclick || rowContext.onclick));
46
46
 
47
47
  const element = $derived.by(() => {
48
48
  if (finalOnClick) return 'button';
@@ -59,27 +59,27 @@
59
59
  $effect(() => {
60
60
  if (!column.resizable && props.width !== undefined) column.resize(props.width);
61
61
  });
62
+
63
+ const widthStyle = $derived(
64
+ `calc(${column.width ?? 0}px - var(--spacing) * ${offsetNestingLevel * tableContext.nestingInset}) !important;`
65
+ );
62
66
  </script>
63
67
 
64
68
  <!-- svelte-ignore a11y_no_static_element_interactions -->
65
69
  <svelte:element
66
70
  this={element}
67
71
  onclick={allowClicking ? finalOnClick : undefined}
68
- href={rowContext.href}
72
+ href={!allowClicking ? rowContext.href : undefined}
69
73
  type={allowClicking ? 'button' : undefined}
70
- style={ignoreWidth
71
- ? ''
72
- : `width: calc(${column.width ?? 0}px - var(--spacing) * ${offsetNestingLevel * tableContext.nestingInset}) !important;`}
73
- class={[
74
- 'flex h-full shrink-0 flex-row items-stretch justify-start truncate',
75
- !ignoreWidth && [
76
- 'after:mr-2 after:ml-auto after:h-full after:w-px',
77
- column.dragging && 'after:bg-primary-400-600',
78
- !column.dragging && column.hovering && 'after:bg-surface-300-700'
79
- ]
80
- ]}
74
+ style={ignoreWidth ? '' : `width: ${widthStyle}`}
75
+ class={twMerge(
76
+ clsx([
77
+ 'box-border flex h-full shrink-0 flex-row items-center justify-start gap-1 truncate',
78
+ column.width !== 0 && 'pr-2',
79
+ defaultClasses,
80
+ clazz
81
+ ])
82
+ )}
81
83
  >
82
- <div class={twMerge(clsx(['flex flex-row items-center gap-1', defaultClasses, clazz]))}>
83
- {@render children()}
84
- </div>
84
+ {@render children()}
85
85
  </svelte:element>
@@ -47,6 +47,7 @@
47
47
  readonly registerColumn: (config: ColumnConfig) => ColumnController;
48
48
  readonly toggleExpansion: (id: string) => void;
49
49
  readonly nestingInset: number;
50
+ readonly rowHeight: number;
50
51
  };
51
52
 
52
53
  function setTableContext<T extends TableRow<T>>(context: TableContext<T>) {
@@ -160,6 +161,9 @@
160
161
  },
161
162
  get nestingInset() {
162
163
  return nestingInset;
164
+ },
165
+ get rowHeight() {
166
+ return rowHeight;
163
167
  }
164
168
  });
165
169
  </script>
@@ -213,9 +217,9 @@
213
217
  minWidth={0}
214
218
  >
215
219
  <div
216
- class="flex h-full items-center justify-end pr-2"
217
- style="width: calc(var(--spacing) * {nestingLevel *
218
- nestingInset} + {treeIndicatorInset}px);"
220
+ class="flex h-full items-center justify-end"
221
+ style="width: calc(var(--spacing) * {nestingLevel * nestingInset -
222
+ 2} + {treeIndicatorInset}px);"
219
223
  >
220
224
  {#if node.children}
221
225
  <ChevronRight
@@ -41,6 +41,7 @@ export type TableContext<T extends TableRow<T>> = {
41
41
  readonly registerColumn: (config: ColumnConfig) => ColumnController;
42
42
  readonly toggleExpansion: (id: string) => void;
43
43
  readonly nestingInset: number;
44
+ readonly rowHeight: number;
44
45
  };
45
46
  export declare function getTableContext<T extends TableRow<T>>(): TableContext<T>;
46
47
  declare function $$render<T extends TableRow<T>>(): {
@@ -1 +1 @@
1
- {"version":3,"file":"Table.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/components/table/Table.svelte.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Table.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/components/table/Table.svelte.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ims360/svelte-ivory",
3
- "version": "0.0.48",
3
+ "version": "0.0.49",
4
4
  "keywords": [
5
5
  "svelte"
6
6
  ],
@@ -26,7 +26,7 @@
26
26
 
27
27
  <script lang="ts">
28
28
  let {
29
- class: clazz = 'py-2 flex flex-row items-center truncate',
29
+ class: clazz,
30
30
  children,
31
31
  onclick,
32
32
  ignoreWidth = false,
@@ -42,7 +42,7 @@
42
42
  const column = tableContext.registerColumn({ resizable, ...props });
43
43
 
44
44
  const finalOnClick = $derived(onclick || rowContext.onclick);
45
- const allowClicking = $derived(!!onclick);
45
+ const allowClicking = $derived(!!(onclick || rowContext.onclick));
46
46
 
47
47
  const element = $derived.by(() => {
48
48
  if (finalOnClick) return 'button';
@@ -59,27 +59,27 @@
59
59
  $effect(() => {
60
60
  if (!column.resizable && props.width !== undefined) column.resize(props.width);
61
61
  });
62
+
63
+ const widthStyle = $derived(
64
+ `calc(${column.width ?? 0}px - var(--spacing) * ${offsetNestingLevel * tableContext.nestingInset}) !important;`
65
+ );
62
66
  </script>
63
67
 
64
68
  <!-- svelte-ignore a11y_no_static_element_interactions -->
65
69
  <svelte:element
66
70
  this={element}
67
71
  onclick={allowClicking ? finalOnClick : undefined}
68
- href={rowContext.href}
72
+ href={!allowClicking ? rowContext.href : undefined}
69
73
  type={allowClicking ? 'button' : undefined}
70
- style={ignoreWidth
71
- ? ''
72
- : `width: calc(${column.width ?? 0}px - var(--spacing) * ${offsetNestingLevel * tableContext.nestingInset}) !important;`}
73
- class={[
74
- 'flex h-full shrink-0 flex-row items-stretch justify-start truncate',
75
- !ignoreWidth && [
76
- 'after:mr-2 after:ml-auto after:h-full after:w-px',
77
- column.dragging && 'after:bg-primary-400-600',
78
- !column.dragging && column.hovering && 'after:bg-surface-300-700'
79
- ]
80
- ]}
74
+ style={ignoreWidth ? '' : `width: ${widthStyle}`}
75
+ class={twMerge(
76
+ clsx([
77
+ 'box-border flex h-full shrink-0 flex-row items-center justify-start gap-1 truncate',
78
+ column.width !== 0 && 'pr-2',
79
+ defaultClasses,
80
+ clazz
81
+ ])
82
+ )}
81
83
  >
82
- <div class={twMerge(clsx(['flex flex-row items-center gap-1', defaultClasses, clazz]))}>
83
- {@render children()}
84
- </div>
84
+ {@render children()}
85
85
  </svelte:element>
@@ -47,6 +47,7 @@
47
47
  readonly registerColumn: (config: ColumnConfig) => ColumnController;
48
48
  readonly toggleExpansion: (id: string) => void;
49
49
  readonly nestingInset: number;
50
+ readonly rowHeight: number;
50
51
  };
51
52
 
52
53
  function setTableContext<T extends TableRow<T>>(context: TableContext<T>) {
@@ -160,6 +161,9 @@
160
161
  },
161
162
  get nestingInset() {
162
163
  return nestingInset;
164
+ },
165
+ get rowHeight() {
166
+ return rowHeight;
163
167
  }
164
168
  });
165
169
  </script>
@@ -213,9 +217,9 @@
213
217
  minWidth={0}
214
218
  >
215
219
  <div
216
- class="flex h-full items-center justify-end pr-2"
217
- style="width: calc(var(--spacing) * {nestingLevel *
218
- nestingInset} + {treeIndicatorInset}px);"
220
+ class="flex h-full items-center justify-end"
221
+ style="width: calc(var(--spacing) * {nestingLevel * nestingInset -
222
+ 2} + {treeIndicatorInset}px);"
219
223
  >
220
224
  {#if node.children}
221
225
  <ChevronRight