@krumio/trailhand-ui 1.10.0 → 1.10.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.
@@ -1,5 +1,6 @@
1
1
  import { LitElement, TemplateResult } from 'lit';
2
2
  import '../checkbox/checkbox';
3
+ import '../pagination/pagination';
3
4
  import 'iconify-icon';
4
5
  /**
5
6
  * Type definition for sort functions
@@ -43,6 +44,13 @@ export declare class DataTable extends LitElement {
43
44
  loading: boolean;
44
45
  keyField: string;
45
46
  selectable: boolean;
47
+ /**
48
+ * Optional callback to control whether an individual row can be selected
49
+ * when `selectable` is true. Rows for which this returns false render a
50
+ * disabled checkbox and are excluded from the header select-all/tri-state
51
+ * calculation. Defaults to allowing selection for every row.
52
+ */
53
+ rowSelectable: (row: RowData) => boolean;
46
54
  renderActions?: (row: RowData) => unknown;
47
55
  emptyMessage: string;
48
56
  noResultsMessage: string;
@@ -193,6 +201,13 @@ export declare class DataTable extends LitElement {
193
201
  * Navigate to the previous page
194
202
  */
195
203
  prevPage(): void;
204
+ /**
205
+ * Handle a `page-change` event bubbled up from the `<trailhand-pagination>`
206
+ * control and apply it to the table's own page state.
207
+ * @param e - The page-change event
208
+ * @private
209
+ */
210
+ private _handlePaginationChange;
196
211
  /**
197
212
  * Reset search query
198
213
  */
@@ -208,18 +223,6 @@ export declare class DataTable extends LitElement {
208
223
  * @private
209
224
  */
210
225
  private _renderSortIcon;
211
- /**
212
- * Render chevron left icon
213
- * @returns TemplateResult
214
- * @private
215
- */
216
- private _renderChevronLeft;
217
- /**
218
- * Render chevron right icon
219
- * @returns TemplateResult
220
- * @private
221
- */
222
- private _renderChevronRight;
223
226
  /**
224
227
  * Total number of rendered columns, including the selection and actions
225
228
  * columns when present. Used for colspan on empty/loading rows.
@@ -1 +1 @@
1
- {"version":3,"file":"data-table.d.ts","sourceRoot":"","sources":["../../../src/components/data-table/data-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,cAAc,EAAE,MAAM,KAAK,CAAC;AAI5D,OAAO,sBAAsB,CAAC;AAC9B,OAAO,cAAc,CAAC;AAatB;;GAEG;AACH,KAAK,YAAY,GAAG,CAClB,CAAC,EAAE,OAAO,EACV,CAAC,EAAE,OAAO,EACV,SAAS,EAAE,KAAK,GAAG,MAAM,KACtB,MAAM,CAAC;AAEZ;;GAEG;AACH,KAAK,YAAY,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK,MAAM,CAAC;AAE7C;;GAEG;AACH,UAAU,OAAO;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,KAAK,GAAG,CAAC,CAAC;IACzD,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;IAC7B,UAAU,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;CACtD;AAED;;;GAGG;AACH,qBAAa,SAAU,SAAQ,UAAU;IAEvC,OAAO,EAAE,eAAe,EAAE,CAAM;IAGhC,IAAI,EAAE,OAAO,EAAE,CAAM;IAGrB,WAAW,SAAM;IAGjB,UAAU,UAAQ;IAGlB,QAAQ,UAAQ;IAGhB,SAAS,UAAQ;IAGjB,OAAO,UAAS;IAGhB,QAAQ,SAAQ;IAGhB,UAAU,UAAS;IAGnB,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC;IAG1C,YAAY,SAAuB;IAGnC,gBAAgB,SAAsB;IAGtC,UAAU,UAAS;IAGnB,UAAU,SAAK;IAEf;;;;OAIG;IAEH,WAAW,SAAK;IAIhB,OAAO,CAAC,YAAY,CAAM;IAG1B,OAAO,CAAC,YAAY,CAAK;IAGzB,OAAO,CAAC,WAAW,CAAuB;IAG1C,OAAO,CAAC,cAAc,CAAyB;IAE/C;;;;;;OAMG;IAEH,OAAO,CAAC,aAAa,CAAgC;IAErD;;;OAGG;IACH,OAAO,KAAK,qBAAqB,GAKhC;IAED,OAAgB,MAAM,0BAwOpB;IAEF;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAIvB;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;IAmBpB;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IAgBnB;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAiC1B;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IAaxB;;;;OAIG;IACH,OAAO,KAAK,aAAa,GAexB;IAED;;;;OAIG;IACH,OAAO,KAAK,WAAW,GA6BtB;IAED;;;;OAIG;IACH,OAAO,KAAK,cAAc,GAWzB;IAED;;;;OAIG;IACH,OAAO,KAAK,WAAW,GAQtB;IAED;;;;OAIG;IACH,OAAO,KAAK,eAAe,GAK1B;IAED;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAMrB;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAiBnB;;;;OAIG;IACH,OAAO,KAAK,oBAAoB,GAc/B;IAED;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAa5B;;;;OAIG;IACH,OAAO,CAAC,yBAAyB;IAcjC;;;OAGG;IACH,OAAO,CAAC,4BAA4B;IAcpC;;OAEG;IACH,cAAc,IAAI,IAAI;IAKtB;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAa5B;;OAEG;IACH,QAAQ,IAAI,IAAI;IAIhB;;OAEG;IACH,QAAQ,IAAI,IAAI;IAIhB;;OAEG;IACH,WAAW,IAAI,IAAI;IAInB;;OAEG;IACH,SAAS,IAAI,IAAI;IAKjB;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAkCvB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAS1B;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAS3B;;;;OAIG;IACH,OAAO,KAAK,iBAAiB,GAS5B;IAED;;;OAGG;IACM,MAAM,IAAI,cAAc;CAoLlC"}
1
+ {"version":3,"file":"data-table.d.ts","sourceRoot":"","sources":["../../../src/components/data-table/data-table.ts"],"names":[],"mappings":"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"}
@@ -9,17 +9,14 @@ import { property, state } from 'lit/decorators.js';
9
9
  import { repeat } from 'lit/directives/repeat.js';
10
10
  import { dataTableFormatters } from '../../utils/formatters';
11
11
  import '../checkbox/checkbox';
12
+ import '../pagination/pagination';
12
13
  import 'iconify-icon';
13
14
  import { addIcon } from 'iconify-icon';
14
15
  import chevronUp from '@iconify/icons-heroicons/chevron-up-20-solid';
15
16
  import chevronDown from '@iconify/icons-heroicons/chevron-down-20-solid';
16
- import chevronLeft from '@iconify/icons-heroicons/chevron-left-20-solid';
17
- import chevronRight from '@iconify/icons-heroicons/chevron-right-20-solid';
18
17
  // Pre-load icons to avoid CDN delay
19
18
  addIcon('heroicons:chevron-up-20-solid', chevronUp);
20
19
  addIcon('heroicons:chevron-down-20-solid', chevronDown);
21
- addIcon('heroicons:chevron-left-20-solid', chevronLeft);
22
- addIcon('heroicons:chevron-right-20-solid', chevronRight);
23
20
  /**
24
21
  * A feature-rich data table component with sorting, filtering, and pagination.
25
22
  * Supports custom cell rendering, row actions, and various formatters.
@@ -36,6 +33,13 @@ export class DataTable extends LitElement {
36
33
  this.loading = false;
37
34
  this.keyField = 'id';
38
35
  this.selectable = false;
36
+ /**
37
+ * Optional callback to control whether an individual row can be selected
38
+ * when `selectable` is true. Rows for which this returns false render a
39
+ * disabled checkbox and are excluded from the header select-all/tri-state
40
+ * calculation. Defaults to allowing selection for every row.
41
+ */
42
+ this.rowSelectable = () => true;
39
43
  this.emptyMessage = 'No data available';
40
44
  this.noResultsMessage = 'No results found';
41
45
  this.serverSide = false;
@@ -300,15 +304,15 @@ export class DataTable extends LitElement {
300
304
  * @private
301
305
  */
302
306
  get _headerCheckboxState() {
303
- const visible = this._paginatedRows;
304
- if (visible.length === 0) {
307
+ const selectableRows = this._paginatedRows.filter((row) => this.rowSelectable(row));
308
+ if (selectableRows.length === 0) {
305
309
  return 'none';
306
310
  }
307
- const selectedCount = visible.filter((row) => this._selectedRows.has(row[this.keyField])).length;
311
+ const selectedCount = selectableRows.filter((row) => this._selectedRows.has(row[this.keyField])).length;
308
312
  if (selectedCount === 0) {
309
313
  return 'none';
310
314
  }
311
- return selectedCount === visible.length ? 'all' : 'some';
315
+ return selectedCount === selectableRows.length ? 'all' : 'some';
312
316
  }
313
317
  /**
314
318
  * Emit the current selection as a `selection-change` event
@@ -330,6 +334,9 @@ export class DataTable extends LitElement {
330
334
  * @private
331
335
  */
332
336
  _handleRowSelectionChange(row) {
337
+ if (!this.rowSelectable(row)) {
338
+ return;
339
+ }
333
340
  const key = row[this.keyField];
334
341
  const next = new Map(this._selectedRows);
335
342
  if (next.has(key)) {
@@ -346,13 +353,13 @@ export class DataTable extends LitElement {
346
353
  * @private
347
354
  */
348
355
  _handleHeaderSelectionChange() {
349
- const visible = this._paginatedRows;
356
+ const selectableRows = this._paginatedRows.filter((row) => this.rowSelectable(row));
350
357
  const next = new Map(this._selectedRows);
351
358
  if (this._headerCheckboxState === 'all') {
352
- visible.forEach((row) => next.delete(row[this.keyField]));
359
+ selectableRows.forEach((row) => next.delete(row[this.keyField]));
353
360
  }
354
361
  else {
355
- visible.forEach((row) => next.set(row[this.keyField], row));
362
+ selectableRows.forEach((row) => next.set(row[this.keyField], row));
356
363
  }
357
364
  this._selectedRows = next;
358
365
  this._emitSelectionChange();
@@ -390,6 +397,15 @@ export class DataTable extends LitElement {
390
397
  prevPage() {
391
398
  this.goToPage(this._currentPage - 1);
392
399
  }
400
+ /**
401
+ * Handle a `page-change` event bubbled up from the `<trailhand-pagination>`
402
+ * control and apply it to the table's own page state.
403
+ * @param e - The page-change event
404
+ * @private
405
+ */
406
+ _handlePaginationChange(e) {
407
+ this.goToPage(e.detail.page);
408
+ }
393
409
  /**
394
410
  * Reset search query
395
411
  */
@@ -440,32 +456,6 @@ export class DataTable extends LitElement {
440
456
  ></iconify-icon>
441
457
  `;
442
458
  }
443
- /**
444
- * Render chevron left icon
445
- * @returns TemplateResult
446
- * @private
447
- */
448
- _renderChevronLeft() {
449
- return html `
450
- <iconify-icon
451
- class="data-table__pagination-icon"
452
- icon="heroicons:chevron-left-20-solid"
453
- ></iconify-icon>
454
- `;
455
- }
456
- /**
457
- * Render chevron right icon
458
- * @returns TemplateResult
459
- * @private
460
- */
461
- _renderChevronRight() {
462
- return html `
463
- <iconify-icon
464
- class="data-table__pagination-icon"
465
- icon="heroicons:chevron-right-20-solid"
466
- ></iconify-icon>
467
- `;
468
- }
469
459
  /**
470
460
  * Total number of rendered columns, including the selection and actions
471
461
  * columns when present. Used for colspan on empty/loading rows.
@@ -586,6 +576,7 @@ export class DataTable extends LitElement {
586
576
  <trailhand-checkbox
587
577
  size="medium"
588
578
  .checked=${this._selectedRows.has(row[this.keyField])}
579
+ .disabled=${!this.rowSelectable(row)}
589
580
  @checkbox-change=${() => this._handleRowSelectionChange(row)}
590
581
  aria-label="Select row"
591
582
  ></trailhand-checkbox>
@@ -622,35 +613,15 @@ export class DataTable extends LitElement {
622
613
  <!-- Pagination (visible even while loading so controls stay accessible) -->
623
614
  ${this.paginated && this._totalPages > 1
624
615
  ? html `
625
- <div class="data-table__pagination">
626
- <div class="data-table__pagination-info">
627
- ${this._paginationInfo.start}-${this._paginationInfo.end}
628
- of ${this._paginationInfo.total}
629
- </div>
630
- <div class="data-table__pagination-controls">
631
- <button
632
- class="data-table__pagination-btn"
633
- ?disabled=${this._effectiveCurrentPage === 1 || this.loading}
634
- @click=${this.prevPage}
635
- aria-label="Previous page"
636
- >
637
- ${this._renderChevronLeft()}
638
- </button>
639
-
640
- <span class="data-table__pagination-current">
641
- ${this._effectiveCurrentPage} / ${this._totalPages}
642
- </span>
643
-
644
- <button
645
- class="data-table__pagination-btn"
646
- ?disabled=${this._effectiveCurrentPage === this._totalPages || this.loading}
647
- @click=${this.nextPage}
648
- aria-label="Next page"
649
- >
650
- ${this._renderChevronRight()}
651
- </button>
652
- </div>
653
- </div>
616
+ <trailhand-pagination
617
+ current-page=${this._effectiveCurrentPage}
618
+ total-pages=${this._totalPages}
619
+ start-item=${this._paginationInfo.start}
620
+ end-item=${this._paginationInfo.end}
621
+ total-items=${this._paginationInfo.total}
622
+ .disabled=${this.loading}
623
+ @page-change=${this._handlePaginationChange}
624
+ ></trailhand-pagination>
654
625
  `
655
626
  : ''}
656
627
  </div>
@@ -832,63 +803,6 @@ DataTable.styles = css `
832
803
  text-align: center;
833
804
  vertical-align: middle;
834
805
  }
835
-
836
- .data-table__pagination {
837
- display: flex;
838
- justify-content: space-between;
839
- align-items: center;
840
- padding: 1rem 0;
841
- gap: 1rem;
842
- flex-wrap: wrap;
843
- }
844
-
845
- .data-table__pagination-info {
846
- color: var(--muted, var(--th-color-text-muted, #8D8D8D));
847
- font-size: 13px;
848
- }
849
-
850
- .data-table__pagination-controls {
851
- display: flex;
852
- align-items: center;
853
- gap: 1rem;
854
- }
855
-
856
- .data-table__pagination-current {
857
- color: var(--body-text, var(--th-color-text-primary, #212121));
858
- font-size: 13px;
859
- min-width: 60px;
860
- text-align: center;
861
- }
862
-
863
- .data-table__pagination-btn {
864
- display: flex;
865
- align-items: center;
866
- justify-content: center;
867
- width: 32px;
868
- height: 32px;
869
- padding: 0;
870
- border: 1px solid var(--border, var(--th-color-border, #D7D7D7));
871
- border-radius: 4px;
872
- background-color: var(--body-bg, var(--th-color-white, #FFFFFF));
873
- color: var(--body-text, var(--th-color-text-primary, #212121));
874
- cursor: pointer;
875
- transition: all 0.2s;
876
- }
877
-
878
- .data-table__pagination-btn:hover:not(:disabled) {
879
- background-color: var(--sortable-table-row-hover-bg, var(--th-color-grey-100, #FAFAFA));
880
- border-color: var(--link, var(--th-color-primary, #3d98d3));
881
- }
882
-
883
- .data-table__pagination-btn:disabled {
884
- opacity: 0.4;
885
- cursor: not-allowed;
886
- }
887
-
888
- .data-table__pagination-icon {
889
- width: 16px;
890
- height: 16px;
891
- }
892
806
  `;
893
807
  __decorate([
894
808
  property({ type: Array })
@@ -917,6 +831,9 @@ __decorate([
917
831
  __decorate([
918
832
  property({ type: Boolean })
919
833
  ], DataTable.prototype, "selectable", void 0);
834
+ __decorate([
835
+ property({ attribute: false })
836
+ ], DataTable.prototype, "rowSelectable", void 0);
920
837
  __decorate([
921
838
  property({ attribute: false })
922
839
  ], DataTable.prototype, "renderActions", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"data-table.js","sourceRoot":"","sources":["../../../src/components/data-table/data-table.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-table.js","sourceRoot":"","sources":["../../../src/components/data-table/data-table.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { Pagination } from './pagination';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/pagination/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { Pagination } from './pagination';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/pagination/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,66 @@
1
+ import { LitElement, TemplateResult } from 'lit';
2
+ import 'iconify-icon';
3
+ export interface PaginationProps {
4
+ currentPage: number;
5
+ totalPages: number;
6
+ startItem: number;
7
+ endItem: number;
8
+ totalItems: number;
9
+ showInfo: boolean;
10
+ disabled: boolean;
11
+ }
12
+ /**
13
+ * A reusable pagination control: previous/next buttons, a "current / total"
14
+ * page indicator, and an optional "start-end of total" info string.
15
+ *
16
+ * This component does not track page state itself.
17
+ * The consumer passes `current-page` / `total-pages` (and, if `show-info`
18
+ * is enabled, the item-range props) and listens for the `page-change`
19
+ * event to apply the new page.
20
+ *
21
+ * @fires page-change - Detail: `{ page: number }`. Fired when the user
22
+ * clicks the previous or next button with a valid target page. The
23
+ * consumer owns page state and is responsible for applying it (and, for
24
+ * server-side pagination, fetching the corresponding data).
25
+ *
26
+ * @example
27
+ * ```html
28
+ * <trailhand-pagination
29
+ * current-page="2"
30
+ * total-pages="8"
31
+ * start-item="11"
32
+ * end-item="20"
33
+ * total-items="76"
34
+ * @page-change=${(e) => this.goToPage(e.detail.page)}
35
+ * ></trailhand-pagination>
36
+ * ```
37
+ */
38
+ export declare class Pagination extends LitElement {
39
+ /** The current page number (1-indexed). */
40
+ currentPage: number;
41
+ /** Total number of pages. */
42
+ totalPages: number;
43
+ /** First item index (1-indexed) shown on the current page. Used in the info text. */
44
+ startItem: number;
45
+ /** Last item index (1-indexed) shown on the current page. Used in the info text. */
46
+ endItem: number;
47
+ /** Total number of items across all pages. Used in the info text. */
48
+ totalItems: number;
49
+ /** Whether to show the "start-end of total" info text. */
50
+ showInfo: boolean;
51
+ /** Disables both buttons, e.g. while a page fetch is in flight. */
52
+ disabled: boolean;
53
+ static styles: import("lit").CSSResult;
54
+ /**
55
+ * Emit a `page-change` event for the given target page.
56
+ * @param page - The page number to request.
57
+ * @private
58
+ */
59
+ private _emitPageChange;
60
+ private _handlePrev;
61
+ private _handleNext;
62
+ private _renderChevronLeft;
63
+ private _renderChevronRight;
64
+ render(): TemplateResult;
65
+ }
66
+ //# sourceMappingURL=pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../src/components/pagination/pagination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,cAAc,EAAE,MAAM,KAAK,CAAC;AAE5D,OAAO,cAAc,CAAC;AAKtB,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,UAAW,SAAQ,UAAU;IACxC,2CAA2C;IAE3C,WAAW,SAAK;IAEhB,6BAA6B;IAE7B,UAAU,SAAK;IAEf,qFAAqF;IAErF,SAAS,SAAK;IAEd,oFAAoF;IAEpF,OAAO,SAAK;IAEZ,qEAAqE;IAErE,UAAU,SAAK;IAEf,0DAA0D;IAE1D,QAAQ,UAAQ;IAEhB,mEAAmE;IAEnE,QAAQ,UAAS;IAEjB,OAAgB,MAAM,0BA8DpB;IAEF;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAUvB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,mBAAmB;IASlB,MAAM,IAAI,cAAc;CAoClC"}
@@ -0,0 +1,221 @@
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 } from 'lit';
8
+ import { property } from 'lit/decorators.js';
9
+ import 'iconify-icon';
10
+ import { addIcon } from 'iconify-icon';
11
+ import chevronLeft from '@iconify/icons-heroicons/chevron-left-20-solid';
12
+ import chevronRight from '@iconify/icons-heroicons/chevron-right-20-solid';
13
+ // Pre-load icons to avoid CDN delay
14
+ addIcon('heroicons:chevron-left-20-solid', chevronLeft);
15
+ addIcon('heroicons:chevron-right-20-solid', chevronRight);
16
+ /**
17
+ * A reusable pagination control: previous/next buttons, a "current / total"
18
+ * page indicator, and an optional "start-end of total" info string.
19
+ *
20
+ * This component does not track page state itself.
21
+ * The consumer passes `current-page` / `total-pages` (and, if `show-info`
22
+ * is enabled, the item-range props) and listens for the `page-change`
23
+ * event to apply the new page.
24
+ *
25
+ * @fires page-change - Detail: `{ page: number }`. Fired when the user
26
+ * clicks the previous or next button with a valid target page. The
27
+ * consumer owns page state and is responsible for applying it (and, for
28
+ * server-side pagination, fetching the corresponding data).
29
+ *
30
+ * @example
31
+ * ```html
32
+ * <trailhand-pagination
33
+ * current-page="2"
34
+ * total-pages="8"
35
+ * start-item="11"
36
+ * end-item="20"
37
+ * total-items="76"
38
+ * @page-change=${(e) => this.goToPage(e.detail.page)}
39
+ * ></trailhand-pagination>
40
+ * ```
41
+ */
42
+ export class Pagination extends LitElement {
43
+ constructor() {
44
+ super(...arguments);
45
+ /** The current page number (1-indexed). */
46
+ this.currentPage = 1;
47
+ /** Total number of pages. */
48
+ this.totalPages = 1;
49
+ /** First item index (1-indexed) shown on the current page. Used in the info text. */
50
+ this.startItem = 0;
51
+ /** Last item index (1-indexed) shown on the current page. Used in the info text. */
52
+ this.endItem = 0;
53
+ /** Total number of items across all pages. Used in the info text. */
54
+ this.totalItems = 0;
55
+ /** Whether to show the "start-end of total" info text. */
56
+ this.showInfo = true;
57
+ /** Disables both buttons, e.g. while a page fetch is in flight. */
58
+ this.disabled = false;
59
+ }
60
+ /**
61
+ * Emit a `page-change` event for the given target page.
62
+ * @param page - The page number to request.
63
+ * @private
64
+ */
65
+ _emitPageChange(page) {
66
+ this.dispatchEvent(new CustomEvent('page-change', {
67
+ detail: { page },
68
+ bubbles: true,
69
+ composed: true,
70
+ }));
71
+ }
72
+ _handlePrev() {
73
+ if (this.currentPage > 1 && !this.disabled) {
74
+ this._emitPageChange(this.currentPage - 1);
75
+ }
76
+ }
77
+ _handleNext() {
78
+ if (this.currentPage < this.totalPages && !this.disabled) {
79
+ this._emitPageChange(this.currentPage + 1);
80
+ }
81
+ }
82
+ _renderChevronLeft() {
83
+ return html `
84
+ <iconify-icon
85
+ class="pagination__icon"
86
+ icon="heroicons:chevron-left-20-solid"
87
+ ></iconify-icon>
88
+ `;
89
+ }
90
+ _renderChevronRight() {
91
+ return html `
92
+ <iconify-icon
93
+ class="pagination__icon"
94
+ icon="heroicons:chevron-right-20-solid"
95
+ ></iconify-icon>
96
+ `;
97
+ }
98
+ render() {
99
+ return html `
100
+ <div class="pagination">
101
+ ${this.showInfo
102
+ ? html `
103
+ <div class="pagination__info">
104
+ ${this.startItem}-${this.endItem} of ${this.totalItems}
105
+ </div>
106
+ `
107
+ : ''}
108
+ <div class="pagination__controls">
109
+ <button
110
+ class="pagination__btn"
111
+ ?disabled=${this.currentPage === 1 || this.disabled}
112
+ @click=${this._handlePrev}
113
+ aria-label="Previous page"
114
+ >
115
+ ${this._renderChevronLeft()}
116
+ </button>
117
+
118
+ <span class="pagination__current">
119
+ ${this.currentPage} / ${this.totalPages}
120
+ </span>
121
+
122
+ <button
123
+ class="pagination__btn"
124
+ ?disabled=${this.currentPage === this.totalPages || this.disabled}
125
+ @click=${this._handleNext}
126
+ aria-label="Next page"
127
+ >
128
+ ${this._renderChevronRight()}
129
+ </button>
130
+ </div>
131
+ </div>
132
+ `;
133
+ }
134
+ }
135
+ Pagination.styles = css `
136
+ :host {
137
+ display: block;
138
+ font-family: var(--font-family, 'Poppins', sans-serif);
139
+ }
140
+
141
+ .pagination {
142
+ display: flex;
143
+ justify-content: space-between;
144
+ align-items: center;
145
+ padding: 1rem 0;
146
+ gap: 1rem;
147
+ flex-wrap: wrap;
148
+ }
149
+
150
+ .pagination__info {
151
+ color: var(--muted, var(--th-color-text-muted, #8D8D8D));
152
+ font-size: 13px;
153
+ }
154
+
155
+ .pagination__controls {
156
+ display: flex;
157
+ align-items: center;
158
+ gap: 1rem;
159
+ }
160
+
161
+ .pagination__current {
162
+ color: var(--body-text, var(--th-color-text-primary, #212121));
163
+ font-size: 13px;
164
+ min-width: 60px;
165
+ text-align: center;
166
+ }
167
+
168
+ .pagination__btn {
169
+ display: flex;
170
+ align-items: center;
171
+ justify-content: center;
172
+ width: 32px;
173
+ height: 32px;
174
+ padding: 0;
175
+ border: 1px solid var(--border, var(--th-color-border, #D7D7D7));
176
+ border-radius: 4px;
177
+ background-color: var(--body-bg, var(--th-color-white, #FFFFFF));
178
+ color: var(--body-text, var(--th-color-text-primary, #212121));
179
+ cursor: pointer;
180
+ transition: all 0.2s;
181
+ }
182
+
183
+ .pagination__btn:hover:not(:disabled) {
184
+ background-color: var(--sortable-table-row-hover-bg, var(--th-color-grey-100, #FAFAFA));
185
+ border-color: var(--link, var(--th-color-primary, #3d98d3));
186
+ }
187
+
188
+ .pagination__btn:disabled {
189
+ opacity: 0.4;
190
+ cursor: not-allowed;
191
+ }
192
+
193
+ .pagination__icon {
194
+ width: 16px;
195
+ height: 16px;
196
+ }
197
+ `;
198
+ __decorate([
199
+ property({ type: Number, attribute: 'current-page' })
200
+ ], Pagination.prototype, "currentPage", void 0);
201
+ __decorate([
202
+ property({ type: Number, attribute: 'total-pages' })
203
+ ], Pagination.prototype, "totalPages", void 0);
204
+ __decorate([
205
+ property({ type: Number, attribute: 'start-item' })
206
+ ], Pagination.prototype, "startItem", void 0);
207
+ __decorate([
208
+ property({ type: Number, attribute: 'end-item' })
209
+ ], Pagination.prototype, "endItem", void 0);
210
+ __decorate([
211
+ property({ type: Number, attribute: 'total-items' })
212
+ ], Pagination.prototype, "totalItems", void 0);
213
+ __decorate([
214
+ property({ type: Boolean, attribute: 'show-info' })
215
+ ], Pagination.prototype, "showInfo", void 0);
216
+ __decorate([
217
+ property({ type: Boolean })
218
+ ], Pagination.prototype, "disabled", void 0);
219
+ // Register the element
220
+ customElements.define('trailhand-pagination', Pagination);
221
+ //# sourceMappingURL=pagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../../src/components/pagination/pagination.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -16,5 +16,6 @@ export * from './components/dropdown';
16
16
  export * from './components/code-editor';
17
17
  export * from './components/text-area';
18
18
  export * from './components/loading-spinner';
19
+ export * from './components/pagination';
19
20
  export * from './utils';
20
21
  //# 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;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAG7C,cAAc,SAAS,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;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AAGxC,cAAc,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -17,6 +17,7 @@ export * from './components/dropdown';
17
17
  export * from './components/code-editor';
18
18
  export * from './components/text-area';
19
19
  export * from './components/loading-spinner';
20
+ export * from './components/pagination';
20
21
  // Export utilities
21
22
  export * from './utils';
22
23
  //# 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;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAE7C,mBAAmB;AACnB,cAAc,SAAS,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;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AAExC,mBAAmB;AACnB,cAAc,SAAS,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@krumio/trailhand-ui",
3
- "version": "1.10.0",
3
+ "version": "1.10.2",
4
4
  "type": "module",
5
5
  "description": "Reusable web components built with Lit Element",
6
6
  "main": "./dist/index.js",