@krumio/trailhand-ui 1.7.0 → 1.8.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.
Files changed (52) hide show
  1. package/dist/components/action-menu/action-menu.d.ts.map +1 -1
  2. package/dist/components/action-menu/action-menu.js +2 -0
  3. package/dist/components/action-menu/action-menu.js.map +1 -1
  4. package/dist/components/data-table/data-table.d.ts +1 -11
  5. package/dist/components/data-table/data-table.d.ts.map +1 -1
  6. package/dist/components/data-table/data-table.js +9 -82
  7. package/dist/components/data-table/data-table.js.map +1 -1
  8. package/dist/components/icon/icon.d.ts +16 -0
  9. package/dist/components/icon/icon.d.ts.map +1 -1
  10. package/dist/components/icon/icon.js +30 -2
  11. package/dist/components/icon/icon.js.map +1 -1
  12. package/dist/components/progress-bar/index.d.ts +2 -0
  13. package/dist/components/progress-bar/index.d.ts.map +1 -0
  14. package/dist/components/progress-bar/index.js +2 -0
  15. package/dist/components/progress-bar/index.js.map +1 -0
  16. package/dist/components/progress-bar/progress-bar.d.ts +27 -0
  17. package/dist/components/progress-bar/progress-bar.d.ts.map +1 -0
  18. package/dist/components/progress-bar/progress-bar.js +124 -0
  19. package/dist/components/progress-bar/progress-bar.js.map +1 -0
  20. package/dist/components/th-card/index.d.ts +3 -0
  21. package/dist/components/th-card/index.d.ts.map +1 -0
  22. package/dist/components/th-card/index.js +2 -0
  23. package/dist/components/th-card/index.js.map +1 -0
  24. package/dist/components/th-card/th-card.d.ts +40 -0
  25. package/dist/components/th-card/th-card.d.ts.map +1 -0
  26. package/dist/components/th-card/th-card.js +376 -0
  27. package/dist/components/th-card/th-card.js.map +1 -0
  28. package/dist/components/th-tag/index.d.ts +3 -0
  29. package/dist/components/th-tag/index.d.ts.map +1 -0
  30. package/dist/components/th-tag/index.js +2 -0
  31. package/dist/components/th-tag/index.js.map +1 -0
  32. package/dist/components/th-tag/th-tag.d.ts +67 -0
  33. package/dist/components/th-tag/th-tag.d.ts.map +1 -0
  34. package/dist/components/th-tag/th-tag.js +287 -0
  35. package/dist/components/th-tag/th-tag.js.map +1 -0
  36. package/dist/components/toggle-switch/toggle-switch.d.ts.map +1 -1
  37. package/dist/components/toggle-switch/toggle-switch.js +2 -0
  38. package/dist/components/toggle-switch/toggle-switch.js.map +1 -1
  39. package/dist/index.d.ts +4 -0
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +5 -0
  42. package/dist/index.js.map +1 -1
  43. package/dist/styles/colors.css +34 -4
  44. package/dist/utils/formatters.d.ts +9 -0
  45. package/dist/utils/formatters.d.ts.map +1 -0
  46. package/dist/utils/formatters.js +66 -0
  47. package/dist/utils/formatters.js.map +1 -0
  48. package/dist/utils/index.d.ts +2 -0
  49. package/dist/utils/index.d.ts.map +1 -0
  50. package/dist/utils/index.js +2 -0
  51. package/dist/utils/index.js.map +1 -0
  52. package/package.json +3 -2
@@ -0,0 +1,287 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { LitElement, html, css, nothing } from 'lit';
8
+ import { property } from 'lit/decorators.js';
9
+ import '../icon/icon';
10
+ /**
11
+ * A tag/badge component for displaying labels, statuses, or categories.
12
+ * Can be used for status indicators, category labels, or dismissible chips.
13
+ *
14
+ * @fires tag-dismiss - Fired when the dismiss button is clicked (if dismissible)
15
+ *
16
+ * @slot - Default slot for tag content (alternative to label prop)
17
+ */
18
+ export class ThTag extends LitElement {
19
+ constructor() {
20
+ super(...arguments);
21
+ /**
22
+ * The text label to display in the tag
23
+ */
24
+ this.label = '';
25
+ /**
26
+ * Visual variant/color scheme
27
+ */
28
+ this.variant = 'default';
29
+ /**
30
+ * Size of the tag
31
+ */
32
+ this.size = 'md';
33
+ /**
34
+ * Whether the tag can be dismissed/closed
35
+ */
36
+ this.dismissible = false;
37
+ /**
38
+ * Whether the tag is disabled
39
+ */
40
+ this.disabled = false;
41
+ /**
42
+ * Whether to use outlined style (border instead of filled background)
43
+ */
44
+ this.outlined = false;
45
+ /**
46
+ * Optional icon to display before the label (trailhand-icon name)
47
+ */
48
+ this.icon = '';
49
+ /**
50
+ * Value passed in the dismiss event (useful for identifying which tag was dismissed)
51
+ */
52
+ this.value = '';
53
+ }
54
+ /**
55
+ * Handle dismiss button click
56
+ */
57
+ _handleDismiss(e) {
58
+ e.stopPropagation();
59
+ const event = new CustomEvent('tag-dismiss', {
60
+ bubbles: true,
61
+ composed: true,
62
+ detail: { value: this.value || this.label },
63
+ });
64
+ this.dispatchEvent(event);
65
+ }
66
+ /**
67
+ * Render the dismiss button icon
68
+ */
69
+ _renderDismissIcon() {
70
+ return html `<trailhand-icon name="close"></trailhand-icon>`;
71
+ }
72
+ /**
73
+ * Render the component
74
+ */
75
+ render() {
76
+ const classes = [
77
+ 'tag',
78
+ `tag--${this.variant}`,
79
+ `tag--${this.size}`,
80
+ this.outlined ? 'tag--outlined' : '',
81
+ ].filter(Boolean).join(' ');
82
+ return html `
83
+ <span class=${classes} part="tag">
84
+ ${this.icon
85
+ ? html `<span class="tag__icon" part="icon">
86
+ <trailhand-icon name=${this.icon}></trailhand-icon>
87
+ </span>`
88
+ : nothing}
89
+ <span class="tag__label" part="label">
90
+ ${this.label || html `<slot></slot>`}
91
+ </span>
92
+ ${this.dismissible
93
+ ? html `
94
+ <button
95
+ class="tag__dismiss"
96
+ part="dismiss"
97
+ type="button"
98
+ aria-label="Remove tag"
99
+ @click=${this._handleDismiss}
100
+ >
101
+ ${this._renderDismissIcon()}
102
+ </button>
103
+ `
104
+ : nothing}
105
+ </span>
106
+ `;
107
+ }
108
+ }
109
+ ThTag.styles = css `
110
+ :host {
111
+ display: inline-flex;
112
+ align-self: center;
113
+ }
114
+
115
+ :host([disabled]) {
116
+ opacity: 0.5;
117
+ pointer-events: none;
118
+ }
119
+
120
+ .tag {
121
+ padding: 6px 14px;
122
+ display: inline-flex;
123
+ align-items: center;
124
+ gap: 6px;
125
+ border-radius: 9999px;
126
+ font-feature-settings: 'liga' off, 'clig' off;
127
+ font-family: var(--font-family, 'Poppins', sans-serif);
128
+ font-size: 10px;
129
+ font-style: normal;
130
+ font-weight: 600;
131
+ line-height: normal;
132
+ white-space: nowrap;
133
+ transition: all 0.15s ease;
134
+ }
135
+
136
+ /* Size variants */
137
+ .tag--sm {
138
+ padding: 3px 9px;
139
+ font-size: 11px;
140
+ line-height: 16px;
141
+ }
142
+
143
+ .tag--md {
144
+ padding: 4px 12px;
145
+ font-size: 13px;
146
+ line-height: 18px;
147
+ }
148
+
149
+ .tag--lg {
150
+ padding: 6px 16px;
151
+ font-size: 15px;
152
+ line-height: 20px;
153
+ }
154
+
155
+ /* Color variants - soft pastel backgrounds with colored text */
156
+ .tag--default {
157
+ background-color: var(--color-background-hover, var(--color-grey-200, #EBEBEB));
158
+ color: var(--color-text-secondary, var(--color-grey-600, #636363));
159
+ }
160
+
161
+ .tag--info {
162
+ background-color: var(--color-info-fill, var(--color-light-blue, #e6f3ff));
163
+ color: var(--color-info-outline, var(--color-blue, #0085ff));
164
+ }
165
+
166
+ .tag--success {
167
+ background-color: var(--color-success-fill, var(--color-light-green, #d2fdd2));
168
+ color: var(--color-success-outline, var(--color-green, #097409));
169
+ }
170
+
171
+ .tag--warning {
172
+ background-color: var(--color-warning-fill, var(--color-light-yellow, #fffeb4));
173
+ color: var(--color-warning-outline, var(--color-dark-yellow, #a89939));
174
+ }
175
+
176
+ .tag--error {
177
+ background-color: var(--color-error-fill, var(--color-light-red, #fee2e2));
178
+ color: var(--color-error-outline, var(--color-red, #9F3A3A));
179
+ }
180
+
181
+ /* Outlined variants */
182
+ .tag--outlined {
183
+ background-color: transparent;
184
+ border: 1px solid currentColor;
185
+ }
186
+
187
+ .tag--outlined.tag--default {
188
+ background-color: transparent;
189
+ color: var(--color-text-secondary, var(--color-grey-600, #4b5563));
190
+ }
191
+
192
+ .tag--outlined.tag--info {
193
+ background-color: transparent;
194
+ color: var(--color-info-outline, var(--color-blue, #0085ff));
195
+ }
196
+
197
+ .tag--outlined.tag--success {
198
+ background-color: transparent;
199
+ color: var(--color-success-outline, var(--color-green, #097409));
200
+ }
201
+
202
+ .tag--outlined.tag--warning {
203
+ background-color: transparent;
204
+ color: var(--color-warning-outline, var(--color-dark-yellow, #a89939));
205
+ }
206
+
207
+ .tag--outlined.tag--error {
208
+ background-color: transparent;
209
+ color: var(--color-error-outline, var(--color-red, #9F3A3A));
210
+ }
211
+
212
+ /* Icon styling */
213
+ .tag__icon {
214
+ display: flex;
215
+ align-items: center;
216
+ font-size: 1em;
217
+ }
218
+
219
+ /* Dismiss button */
220
+ .tag__dismiss {
221
+ display: flex;
222
+ align-items: center;
223
+ justify-content: center;
224
+ background: none;
225
+ border: none;
226
+ padding: 0;
227
+ margin-left: 2px;
228
+ cursor: pointer;
229
+ color: inherit;
230
+ opacity: 0.7;
231
+ transition: opacity 0.15s ease;
232
+ line-height: 1;
233
+ }
234
+
235
+ .tag__dismiss:hover {
236
+ opacity: 1;
237
+ }
238
+
239
+ .tag__dismiss:focus {
240
+ outline: none;
241
+ opacity: 1;
242
+ }
243
+
244
+ .tag__dismiss trailhand-icon {
245
+ font-size: 1em;
246
+ }
247
+
248
+ /* Size-specific dismiss button adjustments */
249
+ .tag--sm .tag__dismiss trailhand-icon {
250
+ font-size: 12px;
251
+ }
252
+
253
+ .tag--md .tag__dismiss trailhand-icon {
254
+ font-size: 14px;
255
+ }
256
+
257
+ .tag--lg .tag__dismiss trailhand-icon {
258
+ font-size: 16px;
259
+ }
260
+ `;
261
+ __decorate([
262
+ property({ type: String })
263
+ ], ThTag.prototype, "label", void 0);
264
+ __decorate([
265
+ property({ type: String })
266
+ ], ThTag.prototype, "variant", void 0);
267
+ __decorate([
268
+ property({ type: String })
269
+ ], ThTag.prototype, "size", void 0);
270
+ __decorate([
271
+ property({ type: Boolean })
272
+ ], ThTag.prototype, "dismissible", void 0);
273
+ __decorate([
274
+ property({ type: Boolean })
275
+ ], ThTag.prototype, "disabled", void 0);
276
+ __decorate([
277
+ property({ type: Boolean })
278
+ ], ThTag.prototype, "outlined", void 0);
279
+ __decorate([
280
+ property({ type: String })
281
+ ], ThTag.prototype, "icon", void 0);
282
+ __decorate([
283
+ property({ type: String })
284
+ ], ThTag.prototype, "value", void 0);
285
+ // Register the element
286
+ customElements.define('trailhand-tag', ThTag);
287
+ //# sourceMappingURL=th-tag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"th-tag.js","sourceRoot":"","sources":["../../../src/components/th-tag/th-tag.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-switch.d.ts","sourceRoot":"","sources":["../../../src/components/toggle-switch/toggle-switch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,cAAc,EAAE,MAAM,KAAK,CAAC;AAW5D;;;GAGG;AACH,qBAAa,YAAa,SAAQ,UAAU;IAE1C,OAAO,UAAS;IAGhB,OAAO,SAAQ;IAGf,QAAQ,SAAS;IAGjB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGjC,IAAI,SAAM;IAEV,OAAO,CAAC,yBAAyB,CAAqB;IAEtD,OAAgB,MAAM,0BAyDpB;;IASO,iBAAiB,IAAI,IAAI;IAWzB,oBAAoB,IAAI,IAAI;IAQrC;;;OAGG;IACH,oBAAoB,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI;IAOpC;;;OAGG;IACH,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAkB3C;;;OAGG;IACH,kBAAkB,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI;IAalC;;;OAGG;IACM,MAAM,IAAI,cAAc;CAclC"}
1
+ {"version":3,"file":"toggle-switch.d.ts","sourceRoot":"","sources":["../../../src/components/toggle-switch/toggle-switch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,cAAc,EAAE,MAAM,KAAK,CAAC;AAW5D;;;GAGG;AACH,qBAAa,YAAa,SAAQ,UAAU;IAE1C,OAAO,UAAS;IAGhB,OAAO,SAAQ;IAGf,QAAQ,SAAS;IAGjB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGjC,IAAI,SAAM;IAEV,OAAO,CAAC,yBAAyB,CAAqB;IAEtD,OAAgB,MAAM,0BA0DpB;;IASO,iBAAiB,IAAI,IAAI;IAWzB,oBAAoB,IAAI,IAAI;IAQrC;;;OAGG;IACH,oBAAoB,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI;IAOpC;;;OAGG;IACH,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAkB3C;;;OAGG;IACH,kBAAkB,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI;IAalC;;;OAGG;IACM,MAAM,IAAI,cAAc;CAelC"}
@@ -88,6 +88,7 @@ export class ToggleSwitch extends LitElement {
88
88
  <label class="toggle-switch">
89
89
  <input
90
90
  type="checkbox"
91
+ aria-label=${this.name || `${this.offLabel} / ${this.onLabel}`}
91
92
  .checked=${this.checked}
92
93
  @change=${this.handleToggleChange}
93
94
  />
@@ -102,6 +103,7 @@ ToggleSwitch.styles = css `
102
103
  display: flex;
103
104
  align-items: center;
104
105
  margin-right: 10px;
106
+ font-family: var(--font-family, 'Poppins', sans-serif);
105
107
  }
106
108
 
107
109
  .toggle-switch {
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-switch.js","sourceRoot":"","sources":["../../../src/components/toggle-switch/toggle-switch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toggle-switch.js","sourceRoot":"","sources":["../../../src/components/toggle-switch/toggle-switch.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,4 +3,8 @@ export * from './components/action-menu';
3
3
  export * from './components/data-table';
4
4
  export * from './components/button';
5
5
  export * from './components/icon';
6
+ export * from './components/th-tag';
7
+ export * from './components/th-card';
8
+ export * from './components/progress-bar';
9
+ export * from './utils';
6
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAG1C,cAAc,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -4,4 +4,9 @@ export * from './components/action-menu';
4
4
  export * from './components/data-table';
5
5
  export * from './components/button';
6
6
  export * from './components/icon';
7
+ export * from './components/th-tag';
8
+ export * from './components/th-card';
9
+ export * from './components/progress-bar';
10
+ // Export utilities
11
+ export * from './utils';
7
12
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAE1C,mBAAmB;AACnB,cAAc,SAAS,CAAC"}
@@ -9,9 +9,9 @@
9
9
  :root {
10
10
  /* Color Palette */
11
11
  /* Primary Blues */
12
- --color-primary: #3d98d3; /* Primary brand color */
13
- --color-light-primary: #e6f3ff; /* Light variant for backgrounds */
14
- --color-dark-primary: #005cb9; /* Dark variant for buttons/links */
12
+ --color-primary: #0086FF; /* Primary brand color */
13
+ --color-light-primary: #e6f3ff; /* Light variant for backgrounds */
14
+ --color-dark-primary: #005cb9; /* Dark variant for buttons/links */
15
15
 
16
16
  /* Black + White */
17
17
  --color-black: #000000;
@@ -37,7 +37,7 @@
37
37
  --color-dark-green: #0f8240;
38
38
 
39
39
  --color-light-yellow: #fffeb4;
40
- --color-yellow: #d3c255;
40
+ --color-yellow: #D3C255;
41
41
  --color-dark-yellow: #a89939;
42
42
 
43
43
  --color-light-blue: #e6f3ff;
@@ -99,6 +99,21 @@
99
99
  --button-confirmation-bg-hover: var(--color-dark-green);
100
100
  --button-confirmation-color: var(--color-white);
101
101
 
102
+ /* Cards */
103
+ --th-card-bg: var(--color-white);
104
+ --th-card-border: var(--color-border);
105
+ --th-card-title-color: var(--color-text-primary);
106
+ --th-card-subtitle-color: var(--color-text-secondary);
107
+ --th-card-text-color: var(--color-text-secondary);
108
+ --th-card-icon-color: var(--color-text-primary);
109
+ --th-card-dismiss-color: var(--color-text-muted);
110
+
111
+ /* Progress Bar */
112
+ --progress-bar-fill-color: var(--color-primary);
113
+ --progress-bar-track-color: var(--color-grey-200);
114
+ --progress-bar-title-color: var(--color-text-primary);
115
+ --progress-bar-label-color: var(--color-text-secondary);
116
+
102
117
  /* Shadow colors using opacity */
103
118
  --color-shadow: rgba(0, 0, 0, 0.1);
104
119
  --color-shadow-medium: rgba(0, 0, 0, 0.15);
@@ -129,4 +144,19 @@
129
144
 
130
145
  --button-disabled-bg: var(--color-grey-700);
131
146
  --button-disabled-color: var(--color-grey-500);
147
+
148
+ /* Cards */
149
+ --th-card-bg: var(--color-grey-700);
150
+ --th-card-border: var(--color-grey-600);
151
+ --th-card-title-color: var(--color-grey-100);
152
+ --th-card-subtitle-color: var(--color-grey-300);
153
+ --th-card-text-color: var(--color-grey-300);
154
+ --th-card-icon-color: var(--color-grey-100);
155
+ --th-card-dismiss-color: var(--color-grey-500);
156
+
157
+ /* Progress Bar */
158
+ --progress-bar-fill-color: var(--color-primary);
159
+ --progress-bar-track-color: var(--color-grey-600);
160
+ --progress-bar-title-color: var(--color-grey-100);
161
+ --progress-bar-label-color: var(--color-grey-300);
132
162
  }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Type definition for formatter functions
3
+ */
4
+ export type FormatterFunction = (value: any) => string;
5
+ /**
6
+ * Data table formatters for common column types
7
+ */
8
+ export declare const dataTableFormatters: Record<string, FormatterFunction>;
9
+ //# sourceMappingURL=formatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatters.d.ts","sourceRoot":"","sources":["../../src/utils/formatters.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,MAAM,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CA8DjE,CAAC"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Data table formatters for common column types
3
+ */
4
+ export const dataTableFormatters = {
5
+ /**
6
+ * Format a date value as relative time (e.g., "5d", "3h", "15m")
7
+ */
8
+ age: (value) => {
9
+ if (!value)
10
+ return '-';
11
+ const date = new Date(value);
12
+ const now = new Date();
13
+ const diffMs = now.getTime() - date.getTime();
14
+ const diffMins = Math.floor(diffMs / 60000);
15
+ const diffHours = Math.floor(diffMs / 3600000);
16
+ const diffDays = Math.floor(diffMs / 86400000);
17
+ if (diffDays > 0)
18
+ return `${diffDays}d`;
19
+ if (diffHours > 0)
20
+ return `${diffHours}h`;
21
+ if (diffMins > 0)
22
+ return `${diffMins}m`;
23
+ return 'Just now';
24
+ },
25
+ /**
26
+ * Format a date as a localized date string
27
+ */
28
+ date: (value) => {
29
+ if (!value)
30
+ return '-';
31
+ return new Date(value).toLocaleDateString();
32
+ },
33
+ /**
34
+ * Format a date as a localized date and time string
35
+ */
36
+ dateTime: (value) => {
37
+ if (!value)
38
+ return '-';
39
+ return new Date(value).toLocaleString();
40
+ },
41
+ /**
42
+ * Format memory bytes to human readable format (B, KB, MB, GB, TB)
43
+ */
44
+ memory: (value) => {
45
+ if (!value || value === 0)
46
+ return '0 B';
47
+ const units = ['B', 'KB', 'MB', 'GB', 'TB'];
48
+ let val = Number(value);
49
+ let unitIndex = 0;
50
+ while (val >= 1024 && unitIndex < units.length - 1) {
51
+ val = val / 1024;
52
+ unitIndex++;
53
+ }
54
+ return `${Math.round(val)} ${units[unitIndex]}`;
55
+ },
56
+ /**
57
+ * Format millicpus value
58
+ */
59
+ milliCPUs: (value) => {
60
+ if (!value || value === 0)
61
+ return '0';
62
+ const formatted = Math.round(Number(value)).toString();
63
+ return formatted === '0' ? '0' : formatted;
64
+ },
65
+ };
66
+ //# sourceMappingURL=formatters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../src/utils/formatters.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAsC;IACpE;;OAEG;IACH,GAAG,EAAE,CAAC,KAAU,EAAU,EAAE;QAC1B,IAAI,CAAC,KAAK;YAAE,OAAO,GAAG,CAAC;QACvB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC;QAE/C,IAAI,QAAQ,GAAG,CAAC;YAAE,OAAO,GAAG,QAAQ,GAAG,CAAC;QACxC,IAAI,SAAS,GAAG,CAAC;YAAE,OAAO,GAAG,SAAS,GAAG,CAAC;QAC1C,IAAI,QAAQ,GAAG,CAAC;YAAE,OAAO,GAAG,QAAQ,GAAG,CAAC;QACxC,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,IAAI,EAAE,CAAC,KAAU,EAAU,EAAE;QAC3B,IAAI,CAAC,KAAK;YAAE,OAAO,GAAG,CAAC;QACvB,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,kBAAkB,EAAE,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,QAAQ,EAAE,CAAC,KAAU,EAAU,EAAE;QAC/B,IAAI,CAAC,KAAK;YAAE,OAAO,GAAG,CAAC;QACvB,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,EAAE,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,MAAM,EAAE,CAAC,KAAU,EAAU,EAAE;QAC7B,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAExC,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC5C,IAAI,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,OAAO,GAAG,IAAI,IAAI,IAAI,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnD,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC;YACjB,SAAS,EAAE,CAAC;QACd,CAAC;QAED,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,SAAS,EAAE,CAAC,KAAU,EAAU,EAAE;QAChC,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,CAAC;YAAE,OAAO,GAAG,CAAC;QAEtC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACvD,OAAO,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7C,CAAC;CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './formatters';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './formatters';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@krumio/trailhand-ui",
3
- "version": "1.7.0",
3
+ "version": "1.8.0",
4
4
  "type": "module",
5
5
  "description": "Reusable web components built with Lit Element",
6
6
  "main": "./dist/index.js",
@@ -55,6 +55,7 @@
55
55
  "dependencies": {
56
56
  "@fortawesome/fontawesome-svg-core": "^7.1.0",
57
57
  "@fortawesome/free-solid-svg-icons": "^7.1.0",
58
+ "@fortawesome/pro-duotone-svg-icons": "^7.1.0",
58
59
  "@iconify/icons-heroicons": "^1.2.9",
59
60
  "iconify-icon": "^3.0.2",
60
61
  "lit": "^3.3.1"
@@ -75,4 +76,4 @@
75
76
  "vite": "^6.4.1",
76
77
  "vitest": "^4.0.17"
77
78
  }
78
- }
79
+ }