vs-datatable 0.6.0 → 0.6.1
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.css +1 -1
- package/dist/vs-datatable.es.js +155 -152
- package/dist/vs-datatable.umd.js +2 -2
- package/package.json +1 -1
- package/src/styles/base.scss +2 -2
package/dist/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.vs-pagination[data-v-dd26d1ca]{display:flex;align-items:center;justify-content:center;gap:var(--vs-spacing-sm);flex-wrap:wrap}.vs-pagination-button[data-v-dd26d1ca]{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--vs-spacing-sm);border:1px solid var(--vs-table-border);background-color:var(--vs-table-bg);color:var(--vs-dark);text-decoration:none;border-radius:var(--vs-border-radius);font-size:var(--vs-font-size-sm);transition:var(--vs-transition-fast);cursor:pointer}.vs-pagination-button[data-v-dd26d1ca]:hover:not(:disabled){background-color:var(--vs-table-hover-bg);border-color:var(--vs-primary)}.vs-pagination-button.vs-active[data-v-dd26d1ca]{background-color:var(--vs-primary);border-color:var(--vs-primary);color:#fff}.vs-pagination-button[data-v-dd26d1ca]:disabled{opacity:.5;cursor:not-allowed}.vs-pagination-nav[data-v-dd26d1ca]{font-weight:var(--vs-font-weight-bold)}.vs-pagination-ellipsis[data-v-dd26d1ca]{color:var(--vs-secondary);padding:0 var(--vs-spacing-sm);font-size:var(--vs-font-size-sm)}@media (max-width: 768px){.vs-pagination-button[data-v-dd26d1ca]{min-width:28px;height:28px;font-size:12px}}.vs-rows-per-page[data-v-dd11bb0e]{display:flex;align-items:center;gap:8px;font-size:14px}.vs-rows-label[data-v-dd11bb0e]{white-space:nowrap}.vs-datatable[data-v-84a43921]{--vs-table-wrapper-overflow: auto}.vs-table-wrapper[data-v-84a43921]{overflow:var(--vs-table-wrapper-overflow)}.vs-header-content[data-v-84a43921]{display:flex;align-items:center;gap:var(--vs-spacing-sm)}.vs-header-label[data-v-84a43921]{flex:1}.vs-checkbox-column[data-v-84a43921]{width:50px;text-align:center}.vs-row-clickable[data-v-84a43921]{cursor:pointer}.vs-row-selected[data-v-84a43921]{background-color:rgba(var(--vs-primary),.1)}.vs-table-footer[data-v-84a43921]{display:flex;align-items:center;justify-content:space-between;padding:var(--vs-spacing-sm) 0}.vs-table-info[data-v-84a43921]{color:var(--vs-secondary);font-size:var(--vs-font-size-md)}.vs-search-container[data-v-84a43921]{margin-bottom:var(--vs-spacing-md)}:root{--vs-primary: #007bff;--vs-secondary: #6c757d;--vs-success: #28a745;--vs-danger: #dc3545;--vs-warning: #ffc107;--vs-info: #17a2b8;--vs-light: #f8f9fa;--vs-dark: #343a40;--vs-table-bg: #ffffff;--vs-table-border: #dee2e6;--vs-table-header-bg: #f8f9fa;--vs-table-header-color: #495057;--vs-table-hover-bg: #f5f5f5;--vs-table-stripe-bg: #fafafa;--vs-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--vs-font-size: 14px;--vs-font-size-sm: 12px;--vs-font-size-lg: 16px;--vs-font-weight-normal: 400;--vs-font-weight-bold: 600;--vs-spacing-xs: 4px;--vs-spacing-sm: 8px;--vs-spacing-md: 16px;--vs-spacing-lg: 24px;--vs-spacing-xl: 32px;--vs-border-radius: 4px;--vs-border-radius-sm: 2px;--vs-border-radius-lg: 8px;--vs-shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--vs-shadow: 0 2px 4px rgba(0, 0, 0, .1);--vs-shadow-lg: 0 4px 8px rgba(0, 0, 0, .15);--vs-transition: all .2s ease-in-out;--vs-transition-fast: all .15s ease-in-out;--vs-z-dropdown: 1000;--vs-z-sticky: 1020;--vs-z-fixed: 1030;--vs-z-modal: 1040;--vs-z-popover: 1050;--vs-z-tooltip: 1060}.vs-datatable{font-family:var(--vs-font-family);font-size:var(--vs-font-size);line-height:1.5;color:var(--vs-dark);background-color:var(--vs-table-bg);box-sizing:border-box}.vs-datatable *,.vs-datatable *:before,.vs-datatable *:after{box-sizing:border-box}.vs-table-container{position:relative;background-color:var(--vs-table-bg);border:1px solid var(--vs-table-border);border-radius:var(--vs-border-radius);overflow:hidden;box-shadow:var(--vs-shadow-sm)}.vs-table{width:100%;margin:0;border-collapse:separate;border-spacing:0;background-color:var(--vs-table-bg)}.vs-table thead{background-color:var(--vs-table-header-bg)}.vs-table thead th{padding:var(--vs-spacing-md);font-weight:var(--vs-font-weight-bold);color:var(--vs-table-header-color);text-align:left;vertical-align:middle;border-bottom:2px solid var(--vs-table-border);position:relative;-webkit-user-select:none;user-select:none}.vs-table thead th:first-child{border-top-left-radius:var(--vs-border-radius)}.vs-table thead th:last-child{border-top-right-radius:var(--vs-border-radius)}.vs-table tbody tr{transition:var(--vs-transition-fast);border-bottom:1px solid var(--vs-table-border)}.vs-table tbody tr:hover{background-color:var(--vs-table-hover-bg)}.vs-table tbody tr:nth-child(2n){background-color:var(--vs-table-stripe-bg)}.vs-table tbody tr:last-child{border-bottom:none}.vs-table tbody tr td{padding:var(--vs-spacing-md);vertical-align:middle;border-right:1px solid var(--vs-table-border)}.vs-table tbody tr td:last-child{border-right:none}.vs-sortable{cursor:pointer;position:relative}.vs-sortable:hover{background-color:rgba(var(--vs-primary),.1)}.vs-sortable .vs-sort-icons{display:inline-flex;flex-direction:column;margin-left:var(--vs-spacing-sm);vertical-align:middle}.vs-sortable .vs-sort-icons .vs-sort-icon{font-size:10px;line-height:1;color:var(--vs-secondary);transition:var(--vs-transition-fast);margin:-8px 0}.vs-sortable .vs-sort-icons .vs-sort-icon.vs-sort-asc,.vs-sortable .vs-sort-icons .vs-sort-icon.vs-sort-desc{color:var(--vs-primary)}.vs-sortable .vs-sort-icons .vs-sort-icon svg{fill:#e3e3e3}.vs-sortable .vs-sort-icons .vs-sort-icon.vs-active svg{fill:currentColor}.vs-sortable .vs-sort-priority{display:inline-block;background-color:var(--vs-primary);color:#fff;font-size:10px;padding:2px 6px;border-radius:var(--vs-border-radius-sm);margin-left:var(--vs-spacing-sm);font-weight:var(--vs-font-weight-bold)}.vs-loading{display:flex;align-items:center;justify-content:center;padding:var(--vs-spacing-xl);color:var(--vs-secondary)}.vs-loading .vs-spinner{width:20px;height:20px;border:2px solid var(--vs-table-border);border-top:2px solid var(--vs-primary);border-radius:50%;animation:vs-spin 1s linear infinite;margin-right:var(--vs-spacing-sm)}@keyframes vs-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.vs-no-data{text-align:center;padding:var(--vs-spacing-xl);color:var(--vs-secondary)}.vs-no-data .vs-no-data-icon{width:60px;height:60px;margin:0 auto var(--vs-spacing-md);opacity:.5}.vs-no-data .vs-no-data-message{font-size:var(--vs-font-size-lg);font-weight:var(--vs-font-weight-bold);margin-bottom:var(--vs-spacing-sm)}.vs-no-data .vs-no-data-description{font-size:var(--vs-font-size-sm);color:var(--vs-secondary)}.vs-search{position:relative;margin-bottom:var(--vs-spacing-md)}.vs-search .vs-search-input{width:100%;padding:var(--vs-spacing-sm) var(--vs-spacing-md);padding-left:40px;border:1px solid var(--vs-table-border);border-radius:var(--vs-border-radius);font-size:var(--vs-font-size);transition:var(--vs-transition-fast)}.vs-search .vs-search-input:focus{outline:none;border-color:var(--vs-primary);box-shadow:0 0 0 2px rgba(var(--vs-primary),.25)}.vs-search .vs-search-icon{position:absolute;left:var(--vs-spacing-md);top:50%;transform:translateY(-50%);color:var(--vs-secondary);pointer-events:none}.vs-pagination{display:flex;align-items:center;justify-content:center;gap:var(--vs-spacing-sm);margin-top:var(--vs-spacing-md)}.vs-pagination .vs-pagination-button{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--vs-spacing-sm);border:1px solid var(--vs-table-border);background-color:var(--vs-table-bg);color:var(--vs-dark);text-decoration:none;border-radius:var(--vs-border-radius);font-size:var(--vs-font-size-sm);transition:var(--vs-transition-fast);cursor:pointer}.vs-pagination .vs-pagination-button:hover:not(:disabled){background-color:var(--vs-table-hover-bg);border-color:var(--vs-primary)}.vs-pagination .vs-pagination-button.vs-active{background-color:var(--vs-primary);border-color:var(--vs-primary);color:#fff}.vs-pagination .vs-pagination-button:disabled{opacity:.5;cursor:not-allowed}.vs-pagination .vs-pagination-ellipsis{color:var(--vs-secondary);padding:0 var(--vs-spacing-sm)}.vs-checkbox{display:inline-flex;align-items:center;cursor:pointer}.vs-checkbox input[type=checkbox]{width:16px;height:16px;margin:0;cursor:pointer;accent-color:var(--vs-primary)}.vs-checkbox label{margin:0;cursor:pointer;font-size:var(--vs-font-size-sm)}.vs-footer-left{display:flex;align-items:center;gap:12px}.vs-divider{width:1px;height:20px;background-color:#ccc}.vs-rows-per-page{display:flex;align-items:center;gap:8px;font-size:14px;color:#495057}.vs-items-dropdown{padding:6px 8px;border:1px solid #ddd;border-radius:4px;background-color:#fff;font-size:14px}@media (max-width: 768px){.vs-table-container{overflow-x:auto}.vs-table{min-width:600px}.vs-pagination{flex-wrap:wrap;gap:var(--vs-spacing-xs)}.vs-pagination .vs-pagination-button{min-width:28px;height:28px;font-size:12px}}.vs-text-center{text-align:center}.vs-text-left{text-align:left}.vs-text-right{text-align:right}.vs-text-muted{color:var(--vs-secondary)}.vs-text-primary{color:var(--vs-primary)}.vs-text-success{color:var(--vs-success)}.vs-text-danger{color:var(--vs-danger)}.vs-text-warning{color:var(--vs-warning)}.vs-bg-primary{background-color:var(--vs-primary)}.vs-bg-success{background-color:var(--vs-success)}.vs-bg-danger{background-color:var(--vs-danger)}.vs-bg-warning{background-color:var(--vs-warning)}.vs-bg-light{background-color:var(--vs-light)}.vs-border{border:1px solid var(--vs-table-border)}.vs-border-top{border-top:1px solid var(--vs-table-border)}.vs-border-bottom{border-bottom:1px solid var(--vs-table-border)}.vs-border-left{border-left:1px solid var(--vs-table-border)}.vs-border-right{border-right:1px solid var(--vs-table-border)}.vs-rounded{border-radius:var(--vs-border-radius)}.vs-rounded-sm{border-radius:var(--vs-border-radius-sm)}.vs-rounded-lg{border-radius:var(--vs-border-radius-lg)}.vs-shadow{box-shadow:var(--vs-shadow)}.vs-shadow-sm{box-shadow:var(--vs-shadow-sm)}.vs-shadow-lg{box-shadow:var(--vs-shadow-lg)}.vs-fade-in{animation:vs-fade-in .3s ease-in-out}@keyframes vs-fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.vs-slide-in{animation:vs-slide-in .3s ease-in-out}@keyframes vs-slide-in{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}.vs-datatable.vs-theme-dark{--vs-primary: #0d6efd;--vs-secondary: #6c757d;--vs-success: #198754;--vs-danger: #dc3545;--vs-warning: #ffc107;--vs-info: #0dcaf0;--vs-light: #f8f9fa;--vs-dark: #212529;--vs-table-bg: #1a1a1a;--vs-table-border: #333333;--vs-table-header-bg: #2d2d2d;--vs-table-header-color: #ffffff;--vs-table-hover-bg: #333333;--vs-table-stripe-bg: #222222;color:#fff;background-color:var(--vs-table-bg)}.vs-datatable.vs-theme-minimal{--vs-primary: #000000;--vs-secondary: #666666;--vs-success: #000000;--vs-danger: #000000;--vs-warning: #000000;--vs-info: #000000;--vs-light: #f9f9f9;--vs-dark: #000000;--vs-table-bg: #ffffff;--vs-table-border: #e0e0e0;--vs-table-header-bg: #ffffff;--vs-table-header-color: #000000;--vs-table-hover-bg: #f5f5f5;--vs-table-stripe-bg: #ffffff}.vs-datatable.vs-theme-minimal .vs-table{border:none;box-shadow:none}.vs-datatable.vs-theme-minimal .vs-table thead th{border-bottom:2px solid var(--vs-table-border);font-weight:500}.vs-datatable.vs-theme-minimal .vs-table tbody tr{border-bottom:1px solid var(--vs-table-border)}.vs-datatable.vs-theme-colorful{--vs-primary: #e91e63;--vs-secondary: #9c27b0;--vs-success: #4caf50;--vs-danger: #f44336;--vs-warning: #ff9800;--vs-info: #2196f3;--vs-light: #f3e5f5;--vs-dark: #2e2e2e;--vs-table-bg: #ffffff;--vs-table-border: #e1bee7;--vs-table-header-bg: linear-gradient(135deg, #e91e63, #9c27b0);--vs-table-header-color: #ffffff;--vs-table-hover-bg: #f3e5f5;--vs-table-stripe-bg: #fafafa}.vs-datatable.vs-theme-colorful .vs-table thead th{background:var(--vs-table-header-bg);color:var(--vs-table-header-color);font-weight:600}.vs-datatable.vs-theme-colorful .vs-pagination-button.vs-active{background:linear-gradient(135deg,var(--vs-primary),var(--vs-secondary))}.vs-datatable.vs-theme-corporate{--vs-primary: #1e3a8a;--vs-secondary: #64748b;--vs-success: #059669;--vs-danger: #dc2626;--vs-warning: #d97706;--vs-info: #0891b2;--vs-light: #f8fafc;--vs-dark: #1e293b;--vs-table-bg: #ffffff;--vs-table-border: #e2e8f0;--vs-table-header-bg: #f1f5f9;--vs-table-header-color: #334155;--vs-table-hover-bg: #f8fafc;--vs-table-stripe-bg: #ffffff;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.vs-datatable.vs-theme-corporate .vs-table{border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.vs-datatable.vs-theme-corporate .vs-table thead th{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:16px 20px}.vs-datatable.vs-theme-corporate .vs-table tbody td{padding:16px 20px;font-size:14px}.vs-datatable.vs-theme-compact{--vs-spacing-xs: 2px;--vs-spacing-sm: 4px;--vs-spacing-md: 8px;--vs-spacing-lg: 12px;--vs-spacing-xl: 16px;--vs-font-size: 12px;--vs-font-size-sm: 10px;--vs-font-size-lg: 14px}.vs-datatable.vs-theme-compact .vs-table thead th{padding:var(--vs-spacing-sm) var(--vs-spacing-md);font-size:var(--vs-font-size-sm)}.vs-datatable.vs-theme-compact .vs-table tbody td{padding:var(--vs-spacing-sm) var(--vs-spacing-md);font-size:var(--vs-font-size)}.vs-datatable.vs-theme-compact .vs-pagination-button{min-width:24px;height:24px;font-size:var(--vs-font-size-sm)}.vs-datatable.vs-theme-rounded{--vs-border-radius: 12px;--vs-border-radius-sm: 6px;--vs-border-radius-lg: 16px}.vs-datatable.vs-theme-rounded .vs-table-container{border-radius:var(--vs-border-radius);overflow:hidden}.vs-datatable.vs-theme-rounded .vs-table thead th:first-child{border-top-left-radius:var(--vs-border-radius)}.vs-datatable.vs-theme-rounded .vs-table thead th:last-child{border-top-right-radius:var(--vs-border-radius)}.vs-datatable.vs-theme-rounded .vs-pagination-button{border-radius:var(--vs-border-radius-sm)}.vs-datatable.vs-theme-brand{--vs-primary: #ff6b35;--vs-secondary: #004e89;--vs-success: #00a896;--vs-danger: #e63946;--vs-warning: #f77f00;--vs-info: #06a77d}.vs-datatable.vs-theme-brand .vs-table-container{border:2px solid var(--vs-primary);border-radius:16px;box-shadow:0 8px 32px #ff6b3533}.vs-datatable.vs-theme-brand .vs-table thead th{background:linear-gradient(135deg,var(--vs-primary),var(--vs-secondary));color:#fff;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.1)}.vs-datatable.vs-theme-brand .vs-pagination-button.vs-active{background:var(--vs-primary);transform:scale(1.05)}.vs-datatable.vs-theme-brand .vs-pagination-button:hover:not(:disabled){border-color:var(--vs-primary);transform:translateY(-1px)}
|
|
1
|
+
.vs-pagination[data-v-dd26d1ca]{display:flex;align-items:center;justify-content:center;gap:var(--vs-spacing-sm);flex-wrap:wrap}.vs-pagination-button[data-v-dd26d1ca]{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--vs-spacing-sm);border:1px solid var(--vs-table-border);background-color:var(--vs-table-bg);color:var(--vs-dark);text-decoration:none;border-radius:var(--vs-border-radius);font-size:var(--vs-font-size-sm);transition:var(--vs-transition-fast);cursor:pointer}.vs-pagination-button[data-v-dd26d1ca]:hover:not(:disabled){background-color:var(--vs-table-hover-bg);border-color:var(--vs-primary)}.vs-pagination-button.vs-active[data-v-dd26d1ca]{background-color:var(--vs-primary);border-color:var(--vs-primary);color:#fff}.vs-pagination-button[data-v-dd26d1ca]:disabled{opacity:.5;cursor:not-allowed}.vs-pagination-nav[data-v-dd26d1ca]{font-weight:var(--vs-font-weight-bold)}.vs-pagination-ellipsis[data-v-dd26d1ca]{color:var(--vs-secondary);padding:0 var(--vs-spacing-sm);font-size:var(--vs-font-size-sm)}@media (max-width: 768px){.vs-pagination-button[data-v-dd26d1ca]{min-width:28px;height:28px;font-size:12px}}.vs-search .vs-search-input[data-v-5ef0abcd]{font-size:18px!important}.vs-rows-per-page[data-v-dd11bb0e]{display:flex;align-items:center;gap:8px;font-size:14px}.vs-rows-label[data-v-dd11bb0e]{white-space:nowrap}.vs-datatable[data-v-84a43921]{--vs-table-wrapper-overflow: auto}.vs-table-wrapper[data-v-84a43921]{overflow:var(--vs-table-wrapper-overflow)}.vs-header-content[data-v-84a43921]{display:flex;align-items:center;gap:var(--vs-spacing-sm)}.vs-header-label[data-v-84a43921]{flex:1}.vs-checkbox-column[data-v-84a43921]{width:50px;text-align:center}.vs-row-clickable[data-v-84a43921]{cursor:pointer}.vs-row-selected[data-v-84a43921]{background-color:rgba(var(--vs-primary),.1)}.vs-table-footer[data-v-84a43921]{display:flex;align-items:center;justify-content:space-between;padding:var(--vs-spacing-sm) 0}.vs-table-info[data-v-84a43921]{color:var(--vs-secondary);font-size:var(--vs-font-size-md)}.vs-search-container[data-v-84a43921]{margin-bottom:var(--vs-spacing-md)}:root{--vs-primary: #007bff;--vs-secondary: #6c757d;--vs-success: #28a745;--vs-danger: #dc3545;--vs-warning: #ffc107;--vs-info: #17a2b8;--vs-light: #f8f9fa;--vs-dark: #343a40;--vs-table-bg: #ffffff;--vs-table-border: #dee2e6;--vs-table-header-bg: #f8f9fa;--vs-table-header-color: #495057;--vs-table-hover-bg: #f5f5f5;--vs-table-stripe-bg: #fafafa;--vs-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--vs-font-size: 14px;--vs-font-size-sm: 12px;--vs-font-size-lg: 16px;--vs-font-weight-normal: 400;--vs-font-weight-bold: 600;--vs-spacing-xs: 4px;--vs-spacing-sm: 8px;--vs-spacing-md: 16px;--vs-spacing-lg: 24px;--vs-spacing-xl: 32px;--vs-border-radius: 4px;--vs-border-radius-sm: 2px;--vs-border-radius-lg: 8px;--vs-shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--vs-shadow: 0 2px 4px rgba(0, 0, 0, .1);--vs-shadow-lg: 0 4px 8px rgba(0, 0, 0, .15);--vs-transition: all .2s ease-in-out;--vs-transition-fast: all .15s ease-in-out;--vs-z-dropdown: 1000;--vs-z-sticky: 1020;--vs-z-fixed: 1030;--vs-z-modal: 1040;--vs-z-popover: 1050;--vs-z-tooltip: 1060}.vs-datatable{font-family:var(--vs-font-family);font-size:var(--vs-font-size);line-height:1.5;color:var(--vs-dark);background-color:var(--vs-table-bg);box-sizing:border-box}.vs-datatable *,.vs-datatable *:before,.vs-datatable *:after{box-sizing:border-box}.vs-table-container{position:relative;background-color:var(--vs-table-bg);border:1px solid var(--vs-table-border);border-radius:var(--vs-border-radius);overflow:hidden;box-shadow:var(--vs-shadow-sm)}.vs-table{width:100%;margin:0;border-collapse:separate;border-spacing:0;background-color:var(--vs-table-bg)}.vs-table thead{background-color:var(--vs-table-header-bg)}.vs-table thead th{padding:var(--vs-spacing-md);font-weight:var(--vs-font-weight-bold);color:var(--vs-table-header-color);text-align:left;vertical-align:middle;border-bottom:2px solid var(--vs-table-border);position:relative;-webkit-user-select:none;user-select:none}.vs-table thead th:first-child{border-top-left-radius:var(--vs-border-radius)}.vs-table thead th:last-child{border-top-right-radius:var(--vs-border-radius)}.vs-table tbody tr{transition:var(--vs-transition-fast);border-bottom:1px solid var(--vs-table-border)}.vs-table tbody tr:hover{background-color:var(--vs-table-hover-bg)}.vs-table tbody tr:nth-child(2n){background-color:var(--vs-table-stripe-bg)}.vs-table tbody tr:last-child{border-bottom:none}.vs-table tbody tr td{padding:var(--vs-spacing-md);vertical-align:middle;border-right:1px solid var(--vs-table-border)}.vs-table tbody tr td:last-child{border-right:none}.vs-sortable{cursor:pointer;position:relative}.vs-sortable:hover{background-color:rgba(var(--vs-primary),.1)}.vs-sortable .vs-sort-icons{display:inline-flex;flex-direction:column;margin-left:var(--vs-spacing-sm);vertical-align:middle}.vs-sortable .vs-sort-icons .vs-sort-icon{font-size:10px;line-height:1;color:var(--vs-secondary);transition:var(--vs-transition-fast);margin:-8px 0}.vs-sortable .vs-sort-icons .vs-sort-icon.vs-sort-asc,.vs-sortable .vs-sort-icons .vs-sort-icon.vs-sort-desc{color:var(--vs-primary)}.vs-sortable .vs-sort-icons .vs-sort-icon svg{fill:#e3e3e3}.vs-sortable .vs-sort-icons .vs-sort-icon.vs-active svg{fill:currentColor}.vs-sortable .vs-sort-priority{display:inline-block;background-color:var(--vs-primary);color:#fff;font-size:10px;padding:2px 6px;border-radius:var(--vs-border-radius-sm);margin-left:var(--vs-spacing-sm);font-weight:var(--vs-font-weight-bold)}.vs-loading{display:flex;align-items:center;justify-content:center;padding:var(--vs-spacing-xl);color:var(--vs-secondary)}.vs-loading .vs-spinner{width:20px;height:20px;border:2px solid var(--vs-table-border);border-top:2px solid var(--vs-primary);border-radius:50%;animation:vs-spin 1s linear infinite;margin-right:var(--vs-spacing-sm)}@keyframes vs-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.vs-no-data{text-align:center;padding:var(--vs-spacing-xl);color:var(--vs-secondary)}.vs-no-data .vs-no-data-icon{width:60px;height:60px;margin:0 auto var(--vs-spacing-md);opacity:.5}.vs-no-data .vs-no-data-message{font-size:var(--vs-font-size-lg);font-weight:var(--vs-font-weight-bold);margin-bottom:var(--vs-spacing-sm)}.vs-no-data .vs-no-data-description{font-size:var(--vs-font-size-sm);color:var(--vs-secondary)}.vs-search{position:relative;margin-bottom:var(--vs-spacing-md)}.vs-search .vs-search-input{width:100%;padding:var(--vs-spacing-md) var(--vs-spacing-md);padding-left:50px;border:1px solid var(--vs-table-border);border-radius:var(--vs-border-radius);font-size:var(--vs-font-size);transition:var(--vs-transition-fast)}.vs-search .vs-search-input:focus{outline:none;border-color:var(--vs-primary);box-shadow:0 0 0 2px rgba(var(--vs-primary),.25)}.vs-search .vs-search-icon{position:absolute;left:var(--vs-spacing-md);top:50%;transform:translateY(-50%);color:var(--vs-secondary);pointer-events:none}.vs-pagination{display:flex;align-items:center;justify-content:center;gap:var(--vs-spacing-sm);margin-top:var(--vs-spacing-md)}.vs-pagination .vs-pagination-button{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--vs-spacing-sm);border:1px solid var(--vs-table-border);background-color:var(--vs-table-bg);color:var(--vs-dark);text-decoration:none;border-radius:var(--vs-border-radius);font-size:var(--vs-font-size-sm);transition:var(--vs-transition-fast);cursor:pointer}.vs-pagination .vs-pagination-button:hover:not(:disabled){background-color:var(--vs-table-hover-bg);border-color:var(--vs-primary)}.vs-pagination .vs-pagination-button.vs-active{background-color:var(--vs-primary);border-color:var(--vs-primary);color:#fff}.vs-pagination .vs-pagination-button:disabled{opacity:.5;cursor:not-allowed}.vs-pagination .vs-pagination-ellipsis{color:var(--vs-secondary);padding:0 var(--vs-spacing-sm)}.vs-checkbox{display:inline-flex;align-items:center;cursor:pointer}.vs-checkbox input[type=checkbox]{width:16px;height:16px;margin:0;cursor:pointer;accent-color:var(--vs-primary)}.vs-checkbox label{margin:0;cursor:pointer;font-size:var(--vs-font-size-sm)}.vs-footer-left{display:flex;align-items:center;gap:12px}.vs-divider{width:1px;height:20px;background-color:#ccc}.vs-rows-per-page{display:flex;align-items:center;gap:8px;font-size:14px;color:#495057}.vs-items-dropdown{padding:6px 8px;border:1px solid #ddd;border-radius:4px;background-color:#fff;font-size:14px}@media (max-width: 768px){.vs-table-container{overflow-x:auto}.vs-table{min-width:600px}.vs-pagination{flex-wrap:wrap;gap:var(--vs-spacing-xs)}.vs-pagination .vs-pagination-button{min-width:28px;height:28px;font-size:12px}}.vs-text-center{text-align:center}.vs-text-left{text-align:left}.vs-text-right{text-align:right}.vs-text-muted{color:var(--vs-secondary)}.vs-text-primary{color:var(--vs-primary)}.vs-text-success{color:var(--vs-success)}.vs-text-danger{color:var(--vs-danger)}.vs-text-warning{color:var(--vs-warning)}.vs-bg-primary{background-color:var(--vs-primary)}.vs-bg-success{background-color:var(--vs-success)}.vs-bg-danger{background-color:var(--vs-danger)}.vs-bg-warning{background-color:var(--vs-warning)}.vs-bg-light{background-color:var(--vs-light)}.vs-border{border:1px solid var(--vs-table-border)}.vs-border-top{border-top:1px solid var(--vs-table-border)}.vs-border-bottom{border-bottom:1px solid var(--vs-table-border)}.vs-border-left{border-left:1px solid var(--vs-table-border)}.vs-border-right{border-right:1px solid var(--vs-table-border)}.vs-rounded{border-radius:var(--vs-border-radius)}.vs-rounded-sm{border-radius:var(--vs-border-radius-sm)}.vs-rounded-lg{border-radius:var(--vs-border-radius-lg)}.vs-shadow{box-shadow:var(--vs-shadow)}.vs-shadow-sm{box-shadow:var(--vs-shadow-sm)}.vs-shadow-lg{box-shadow:var(--vs-shadow-lg)}.vs-fade-in{animation:vs-fade-in .3s ease-in-out}@keyframes vs-fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.vs-slide-in{animation:vs-slide-in .3s ease-in-out}@keyframes vs-slide-in{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}.vs-datatable.vs-theme-dark{--vs-primary: #0d6efd;--vs-secondary: #6c757d;--vs-success: #198754;--vs-danger: #dc3545;--vs-warning: #ffc107;--vs-info: #0dcaf0;--vs-light: #f8f9fa;--vs-dark: #212529;--vs-table-bg: #1a1a1a;--vs-table-border: #333333;--vs-table-header-bg: #2d2d2d;--vs-table-header-color: #ffffff;--vs-table-hover-bg: #333333;--vs-table-stripe-bg: #222222;color:#fff;background-color:var(--vs-table-bg)}.vs-datatable.vs-theme-minimal{--vs-primary: #000000;--vs-secondary: #666666;--vs-success: #000000;--vs-danger: #000000;--vs-warning: #000000;--vs-info: #000000;--vs-light: #f9f9f9;--vs-dark: #000000;--vs-table-bg: #ffffff;--vs-table-border: #e0e0e0;--vs-table-header-bg: #ffffff;--vs-table-header-color: #000000;--vs-table-hover-bg: #f5f5f5;--vs-table-stripe-bg: #ffffff}.vs-datatable.vs-theme-minimal .vs-table{border:none;box-shadow:none}.vs-datatable.vs-theme-minimal .vs-table thead th{border-bottom:2px solid var(--vs-table-border);font-weight:500}.vs-datatable.vs-theme-minimal .vs-table tbody tr{border-bottom:1px solid var(--vs-table-border)}.vs-datatable.vs-theme-colorful{--vs-primary: #e91e63;--vs-secondary: #9c27b0;--vs-success: #4caf50;--vs-danger: #f44336;--vs-warning: #ff9800;--vs-info: #2196f3;--vs-light: #f3e5f5;--vs-dark: #2e2e2e;--vs-table-bg: #ffffff;--vs-table-border: #e1bee7;--vs-table-header-bg: linear-gradient(135deg, #e91e63, #9c27b0);--vs-table-header-color: #ffffff;--vs-table-hover-bg: #f3e5f5;--vs-table-stripe-bg: #fafafa}.vs-datatable.vs-theme-colorful .vs-table thead th{background:var(--vs-table-header-bg);color:var(--vs-table-header-color);font-weight:600}.vs-datatable.vs-theme-colorful .vs-pagination-button.vs-active{background:linear-gradient(135deg,var(--vs-primary),var(--vs-secondary))}.vs-datatable.vs-theme-corporate{--vs-primary: #1e3a8a;--vs-secondary: #64748b;--vs-success: #059669;--vs-danger: #dc2626;--vs-warning: #d97706;--vs-info: #0891b2;--vs-light: #f8fafc;--vs-dark: #1e293b;--vs-table-bg: #ffffff;--vs-table-border: #e2e8f0;--vs-table-header-bg: #f1f5f9;--vs-table-header-color: #334155;--vs-table-hover-bg: #f8fafc;--vs-table-stripe-bg: #ffffff;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.vs-datatable.vs-theme-corporate .vs-table{border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.vs-datatable.vs-theme-corporate .vs-table thead th{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:16px 20px}.vs-datatable.vs-theme-corporate .vs-table tbody td{padding:16px 20px;font-size:14px}.vs-datatable.vs-theme-compact{--vs-spacing-xs: 2px;--vs-spacing-sm: 4px;--vs-spacing-md: 8px;--vs-spacing-lg: 12px;--vs-spacing-xl: 16px;--vs-font-size: 12px;--vs-font-size-sm: 10px;--vs-font-size-lg: 14px}.vs-datatable.vs-theme-compact .vs-table thead th{padding:var(--vs-spacing-sm) var(--vs-spacing-md);font-size:var(--vs-font-size-sm)}.vs-datatable.vs-theme-compact .vs-table tbody td{padding:var(--vs-spacing-sm) var(--vs-spacing-md);font-size:var(--vs-font-size)}.vs-datatable.vs-theme-compact .vs-pagination-button{min-width:24px;height:24px;font-size:var(--vs-font-size-sm)}.vs-datatable.vs-theme-rounded{--vs-border-radius: 12px;--vs-border-radius-sm: 6px;--vs-border-radius-lg: 16px}.vs-datatable.vs-theme-rounded .vs-table-container{border-radius:var(--vs-border-radius);overflow:hidden}.vs-datatable.vs-theme-rounded .vs-table thead th:first-child{border-top-left-radius:var(--vs-border-radius)}.vs-datatable.vs-theme-rounded .vs-table thead th:last-child{border-top-right-radius:var(--vs-border-radius)}.vs-datatable.vs-theme-rounded .vs-pagination-button{border-radius:var(--vs-border-radius-sm)}.vs-datatable.vs-theme-brand{--vs-primary: #ff6b35;--vs-secondary: #004e89;--vs-success: #00a896;--vs-danger: #e63946;--vs-warning: #f77f00;--vs-info: #06a77d}.vs-datatable.vs-theme-brand .vs-table-container{border:2px solid var(--vs-primary);border-radius:16px;box-shadow:0 8px 32px #ff6b3533}.vs-datatable.vs-theme-brand .vs-table thead th{background:linear-gradient(135deg,var(--vs-primary),var(--vs-secondary));color:#fff;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.1)}.vs-datatable.vs-theme-brand .vs-pagination-button.vs-active{background:var(--vs-primary);transform:scale(1.05)}.vs-datatable.vs-theme-brand .vs-pagination-button:hover:not(:disabled){border-color:var(--vs-primary);transform:translateY(-1px)}
|
package/dist/vs-datatable.es.js
CHANGED
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
import { defineComponent as K, computed as
|
|
2
|
-
import './index.css';function
|
|
3
|
-
return s.split(".").reduce((
|
|
1
|
+
import { defineComponent as K, computed as k, createElementBlock as f, openBlock as b, createElementVNode as n, createCommentVNode as x, Fragment as B, renderList as L, normalizeClass as V, toDisplayString as P, unref as d, ref as M, watch as F, useAttrs as J, onMounted as W, onUnmounted as X, onBeforeMount as Y, createVNode as q, renderSlot as A, isRef as z, normalizeStyle as ee, withModifiers as te, createTextVNode as se } from "vue";
|
|
2
|
+
import './index.css';function Z(e, s) {
|
|
3
|
+
return s.split(".").reduce((a, t) => a?.[t], e) ?? "";
|
|
4
4
|
}
|
|
5
|
-
function
|
|
6
|
-
return typeof
|
|
5
|
+
function C(e, s, a = "id") {
|
|
6
|
+
return typeof a == "function" ? a(e, s) : e[a] || s;
|
|
7
7
|
}
|
|
8
|
-
function
|
|
8
|
+
function j(e, s, a = "id") {
|
|
9
9
|
return s.some(
|
|
10
|
-
(t) =>
|
|
10
|
+
(t) => C(t, -1, a) === C(e, -1, a)
|
|
11
11
|
);
|
|
12
12
|
}
|
|
13
|
-
function
|
|
13
|
+
function ae(e, s) {
|
|
14
14
|
return e.length + (s ? 1 : 0);
|
|
15
15
|
}
|
|
16
|
-
function
|
|
16
|
+
function le(e, s) {
|
|
17
17
|
if (!s.length) return e;
|
|
18
|
-
const
|
|
18
|
+
const a = (t, r) => r.split(".").reduce((l, c) => l?.[c], t) ?? "";
|
|
19
19
|
return [...e].sort((t, r) => {
|
|
20
|
-
for (const { field:
|
|
21
|
-
const i =
|
|
20
|
+
for (const { field: l, order: c } of s) {
|
|
21
|
+
const i = a(t, l), g = a(r, l);
|
|
22
22
|
if (i !== g)
|
|
23
23
|
return c === "asc" ? i > g ? 1 : -1 : i < g ? 1 : -1;
|
|
24
24
|
}
|
|
25
25
|
return 0;
|
|
26
26
|
});
|
|
27
27
|
}
|
|
28
|
-
function oe(e, s,
|
|
29
|
-
if (!
|
|
30
|
-
const t = (s - 1) *
|
|
28
|
+
function oe(e, s, a) {
|
|
29
|
+
if (!a) return e;
|
|
30
|
+
const t = (s - 1) * a, r = t + a;
|
|
31
31
|
return e.slice(t, r);
|
|
32
32
|
}
|
|
33
|
-
function ne(e, s,
|
|
34
|
-
const t = (e - 1) * s + 1, r = Math.min(e * s,
|
|
33
|
+
function ne(e, s, a) {
|
|
34
|
+
const t = (e - 1) * s + 1, r = Math.min(e * s, a);
|
|
35
35
|
return { start: t, end: r };
|
|
36
36
|
}
|
|
37
|
-
function
|
|
37
|
+
function E(e, s) {
|
|
38
38
|
return Math.ceil(e / s);
|
|
39
39
|
}
|
|
40
|
-
function re(e, s,
|
|
40
|
+
function re(e, s, a) {
|
|
41
41
|
if (!s || s.trim() === "") return e;
|
|
42
42
|
const t = s.toLowerCase();
|
|
43
43
|
return e.filter((r) => Object.values(r).some(
|
|
44
|
-
(
|
|
44
|
+
(l) => String(l ?? "").toLowerCase().includes(t)
|
|
45
45
|
));
|
|
46
46
|
}
|
|
47
47
|
const de = ["id"], ce = ["disabled"], ie = {
|
|
@@ -62,22 +62,22 @@ const de = ["id"], ce = ["disabled"], ie = {
|
|
|
62
62
|
},
|
|
63
63
|
emits: ["update:modelValue", "page-changed"],
|
|
64
64
|
setup(e, { emit: s }) {
|
|
65
|
-
const
|
|
66
|
-
get: () =>
|
|
65
|
+
const a = e, t = s, r = a.maxVisible ?? 3, l = k({
|
|
66
|
+
get: () => a.modelValue,
|
|
67
67
|
set: (m) => {
|
|
68
68
|
t("update:modelValue", m), t("page-changed", m);
|
|
69
69
|
}
|
|
70
|
-
}), c =
|
|
70
|
+
}), c = k(() => l.value <= Math.floor(r / 2) ? 1 : l.value >= g.value - Math.floor(r / 2) ? Math.max(g.value - r + 1, 1) : l.value - Math.floor(r / 2)), i = k(() => Math.min(c.value + r - 1, g.value)), g = k(() => E(a.totalRecords, a.rowsPerPage)), S = k(() => {
|
|
71
71
|
const m = [];
|
|
72
72
|
for (let u = c.value; u <= i.value; u++)
|
|
73
73
|
m.push(u);
|
|
74
74
|
return m;
|
|
75
75
|
}), y = (m) => {
|
|
76
|
-
m >= 1 && m <= g.value && (
|
|
76
|
+
m >= 1 && m <= g.value && (l.value = m);
|
|
77
77
|
}, O = () => {
|
|
78
|
-
|
|
78
|
+
l.value > 1 && l.value--;
|
|
79
79
|
}, D = () => {
|
|
80
|
-
|
|
80
|
+
l.value < g.value && l.value++;
|
|
81
81
|
};
|
|
82
82
|
return (m, u) => (b(), f("div", {
|
|
83
83
|
class: "vs-pagination",
|
|
@@ -87,7 +87,7 @@ const de = ["id"], ce = ["disabled"], ie = {
|
|
|
87
87
|
onClick: O,
|
|
88
88
|
type: "button",
|
|
89
89
|
class: "vs-pagination-button vs-pagination-nav",
|
|
90
|
-
disabled:
|
|
90
|
+
disabled: l.value === 1
|
|
91
91
|
}, " ‹‹ ", 8, ce),
|
|
92
92
|
c.value > 1 ? (b(), f("button", {
|
|
93
93
|
key: 0,
|
|
@@ -96,12 +96,12 @@ const de = ["id"], ce = ["disabled"], ie = {
|
|
|
96
96
|
onClick: u[0] || (u[0] = (o) => y(1))
|
|
97
97
|
}, " 1 ")) : x("", !0),
|
|
98
98
|
c.value > 2 ? (b(), f("span", ie, "...")) : x("", !0),
|
|
99
|
-
(b(!0), f(
|
|
99
|
+
(b(!0), f(B, null, L(S.value, (o) => (b(), f("button", {
|
|
100
100
|
key: o,
|
|
101
101
|
type: "button",
|
|
102
102
|
class: V([
|
|
103
103
|
"vs-pagination-button",
|
|
104
|
-
{ "vs-active":
|
|
104
|
+
{ "vs-active": l.value === o }
|
|
105
105
|
]),
|
|
106
106
|
id: e.tablename + "-page-" + o,
|
|
107
107
|
onClick: (v) => y(o)
|
|
@@ -117,16 +117,16 @@ const de = ["id"], ce = ["disabled"], ie = {
|
|
|
117
117
|
onClick: D,
|
|
118
118
|
type: "button",
|
|
119
119
|
class: "vs-pagination-button vs-pagination-nav",
|
|
120
|
-
disabled:
|
|
120
|
+
disabled: l.value === g.value
|
|
121
121
|
}, " ›› ", 8, he)
|
|
122
122
|
], 8, de));
|
|
123
123
|
}
|
|
124
|
-
}),
|
|
125
|
-
const
|
|
124
|
+
}), N = (e, s) => {
|
|
125
|
+
const a = e.__vccOpts || e;
|
|
126
126
|
for (const [t, r] of s)
|
|
127
|
-
|
|
128
|
-
return
|
|
129
|
-
}, fe = /* @__PURE__ */
|
|
127
|
+
a[t] = r;
|
|
128
|
+
return a;
|
|
129
|
+
}, fe = /* @__PURE__ */ N(ge, [["__scopeId", "data-v-dd26d1ca"]]), be = { class: "vs-search" }, me = ["placeholder", "value"], we = /* @__PURE__ */ K({
|
|
130
130
|
__name: "VsSearch",
|
|
131
131
|
props: {
|
|
132
132
|
modelValue: {},
|
|
@@ -134,17 +134,20 @@ const de = ["id"], ce = ["disabled"], ie = {
|
|
|
134
134
|
},
|
|
135
135
|
emits: ["update:modelValue", "input-typed"],
|
|
136
136
|
setup(e, { emit: s }) {
|
|
137
|
-
const
|
|
138
|
-
const
|
|
139
|
-
|
|
137
|
+
const a = s, t = (r) => {
|
|
138
|
+
const l = r.target;
|
|
139
|
+
a("update:modelValue", l.value), a("input-typed", l.value);
|
|
140
140
|
};
|
|
141
|
-
return (r,
|
|
142
|
-
|
|
141
|
+
return (r, l) => (b(), f("div", be, [
|
|
142
|
+
l[0] || (l[0] = n("div", { class: "vs-search-icon" }, [
|
|
143
143
|
n("svg", {
|
|
144
|
-
|
|
145
|
-
|
|
144
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
145
|
+
height: "24px",
|
|
146
|
+
viewBox: "0 -960 960 960",
|
|
147
|
+
width: "24px",
|
|
148
|
+
fill: "#e3e3e3"
|
|
146
149
|
}, [
|
|
147
|
-
n("path", { d: "
|
|
150
|
+
n("path", { d: "M784-120 532-372q-30 24-69 38t-83 14q-109 0-184.5-75.5T120-580q0-109 75.5-184.5T380-840q109 0 184.5 75.5T640-580q0 44-14 83t-38 69l252 252-56 56ZM380-400q75 0 127.5-52.5T560-580q0-75-52.5-127.5T380-760q-75 0-127.5 52.5T200-580q0 75 52.5 127.5T380-400Z" })
|
|
148
151
|
])
|
|
149
152
|
], -1)),
|
|
150
153
|
n("input", {
|
|
@@ -156,7 +159,7 @@ const de = ["id"], ce = ["disabled"], ie = {
|
|
|
156
159
|
}, null, 40, me)
|
|
157
160
|
]));
|
|
158
161
|
}
|
|
159
|
-
}), ye = { class: "vs-rows-per-page" },
|
|
162
|
+
}), ye = /* @__PURE__ */ N(we, [["__scopeId", "data-v-5ef0abcd"]]), pe = { class: "vs-rows-per-page" }, ke = ["value"], Ce = ["value"], Pe = /* @__PURE__ */ K({
|
|
160
163
|
__name: "VsRowsPerPage",
|
|
161
164
|
props: {
|
|
162
165
|
modelValue: {},
|
|
@@ -164,27 +167,27 @@ const de = ["id"], ce = ["disabled"], ie = {
|
|
|
164
167
|
},
|
|
165
168
|
emits: ["update:modelValue", "rows-per-page-changed"],
|
|
166
169
|
setup(e, { emit: s }) {
|
|
167
|
-
const
|
|
170
|
+
const a = e, t = s, r = a.options ?? [10, 25, 50, 100], l = (c) => {
|
|
168
171
|
const i = Number(c.target.value);
|
|
169
172
|
t("update:modelValue", i), t("rows-per-page-changed", i);
|
|
170
173
|
};
|
|
171
|
-
return (c, i) => (b(), f("div",
|
|
174
|
+
return (c, i) => (b(), f("div", pe, [
|
|
172
175
|
i[0] || (i[0] = n("span", { class: "vs-rows-label" }, "Items Per Page", -1)),
|
|
173
176
|
n("select", {
|
|
174
177
|
class: "vs-items-dropdown",
|
|
175
178
|
value: e.modelValue,
|
|
176
|
-
onChange:
|
|
179
|
+
onChange: l
|
|
177
180
|
}, [
|
|
178
|
-
(b(!0), f(
|
|
181
|
+
(b(!0), f(B, null, L(d(r), (g) => (b(), f("option", {
|
|
179
182
|
key: g,
|
|
180
183
|
value: g
|
|
181
184
|
}, P(g), 9, Ce))), 128))
|
|
182
|
-
], 40,
|
|
185
|
+
], 40, ke)
|
|
183
186
|
]));
|
|
184
187
|
}
|
|
185
|
-
}),
|
|
186
|
-
function
|
|
187
|
-
const
|
|
188
|
+
}), Se = /* @__PURE__ */ N(Pe, [["__scopeId", "data-v-dd11bb0e"]]);
|
|
189
|
+
function Re(e, s, a, t, r) {
|
|
190
|
+
const l = M(1), c = M(e.sort ?? []);
|
|
188
191
|
F(
|
|
189
192
|
() => e.sort,
|
|
190
193
|
(u) => {
|
|
@@ -192,13 +195,13 @@ function Se(e, s, l, t, r) {
|
|
|
192
195
|
},
|
|
193
196
|
{ deep: !0 }
|
|
194
197
|
);
|
|
195
|
-
const i =
|
|
198
|
+
const i = k(
|
|
196
199
|
() => e.serverOptions?.sort ?? c.value ?? []
|
|
197
200
|
);
|
|
198
201
|
return {
|
|
199
|
-
sortedRows:
|
|
202
|
+
sortedRows: k(() => {
|
|
200
203
|
let u = e.rows;
|
|
201
|
-
return r.value && (u = re(u, r.value)), i.value.length && (u =
|
|
204
|
+
return r.value && (u = re(u, r.value)), i.value.length && (u = le(u, i.value)), e.rowsPerPage && (u = oe(u, a.value, t.value)), u;
|
|
202
205
|
}),
|
|
203
206
|
activeSort: i,
|
|
204
207
|
sortHelpers: {
|
|
@@ -212,49 +215,49 @@ function Se(e, s, l, t, r) {
|
|
|
212
215
|
let v = [];
|
|
213
216
|
e.serverOptions ? v = [...e.serverOptions.sort ?? []] : e.sort && (v = [...e.sort]);
|
|
214
217
|
const p = v.findIndex((R) => R.field === u);
|
|
215
|
-
o.shiftKey ? p === -1 ? v.push({ field: u, order: "asc" }) : v[p]?.order === "asc" ? v[p].order = "desc" : v.splice(p, 1) : p === -1 ? v = [{ field: u, order: "asc" }] : v[p]?.order === "asc" ? v = [{ field: u, order: "desc" }] : v = [], v = v.map((R, T) => ({ ...R, priority: T + 1 })), e.serverOptions ? s("update:serverOptions", { ...e.serverOptions, sort: v }) : s("update:sort", v),
|
|
218
|
+
o.shiftKey ? p === -1 ? v.push({ field: u, order: "asc" }) : v[p]?.order === "asc" ? v[p].order = "desc" : v.splice(p, 1) : p === -1 ? v = [{ field: u, order: "asc" }] : v[p]?.order === "asc" ? v = [{ field: u, order: "desc" }] : v = [], v = v.map((R, T) => ({ ...R, priority: T + 1 })), e.serverOptions ? s("update:serverOptions", { ...e.serverOptions, sort: v }) : s("update:sort", v), a.value = l.value, s("sort-changed", { sort: v });
|
|
216
219
|
}
|
|
217
220
|
}
|
|
218
221
|
};
|
|
219
222
|
}
|
|
220
|
-
function
|
|
221
|
-
const
|
|
223
|
+
function Ve(e, s, a, t, r) {
|
|
224
|
+
const l = k({
|
|
222
225
|
get: () => e.serverItemsLength !== void 0 ? e.serverItemsLength : r.value.length,
|
|
223
226
|
set: (y) => {
|
|
224
227
|
e.serverItemsLength !== void 0 && s("update:serverItemsLength", y);
|
|
225
228
|
}
|
|
226
|
-
}), c =
|
|
227
|
-
get: () => e.serverOptions?.page ??
|
|
229
|
+
}), c = k({
|
|
230
|
+
get: () => e.serverOptions?.page ?? a.value,
|
|
228
231
|
set: (y) => {
|
|
229
|
-
e.serverOptions ? s("update:serverOptions", { ...e.serverOptions, page: y }) :
|
|
232
|
+
e.serverOptions ? s("update:serverOptions", { ...e.serverOptions, page: y }) : a.value = y;
|
|
230
233
|
}
|
|
231
|
-
}), i =
|
|
234
|
+
}), i = k(() => {
|
|
232
235
|
const y = t.value;
|
|
233
|
-
return ne(
|
|
236
|
+
return ne(a.value, y, l.value);
|
|
234
237
|
}), g = (y) => {
|
|
235
238
|
e.serverOptions && s("update:serverOptions", { ...e.serverOptions, page: y }), s("page-updated", y);
|
|
236
239
|
};
|
|
237
240
|
return {
|
|
238
241
|
currentPage: c,
|
|
239
|
-
totalRecords:
|
|
242
|
+
totalRecords: l,
|
|
240
243
|
recordRange: i,
|
|
241
244
|
handlePageChange: g,
|
|
242
245
|
paginationHelpers: {
|
|
243
|
-
page:
|
|
244
|
-
totalRecords:
|
|
246
|
+
page: a,
|
|
247
|
+
totalRecords: l,
|
|
245
248
|
recordRange: i,
|
|
246
249
|
handlePageChange: g
|
|
247
250
|
}
|
|
248
251
|
};
|
|
249
252
|
}
|
|
250
|
-
function
|
|
251
|
-
const r =
|
|
253
|
+
function xe(e, s, a, t) {
|
|
254
|
+
const r = k({
|
|
252
255
|
get: () => t.value,
|
|
253
256
|
set: (c) => t.value = c
|
|
254
257
|
});
|
|
255
258
|
return F(t, (c) => {
|
|
256
|
-
const i = e.serverItemsLength ?? e.rows.length, g =
|
|
257
|
-
|
|
259
|
+
const i = e.serverItemsLength ?? e.rows.length, g = E(i, c);
|
|
260
|
+
a.value > g ? a.value = g || 1 : a.value < 1 && (a.value = 1);
|
|
258
261
|
}), {
|
|
259
262
|
vsRowsPerPage: r,
|
|
260
263
|
handleRowsPerPage: (c) => {
|
|
@@ -262,13 +265,13 @@ function Ve(e, s, l, t) {
|
|
|
262
265
|
}
|
|
263
266
|
};
|
|
264
267
|
}
|
|
265
|
-
function
|
|
266
|
-
const
|
|
268
|
+
function Te(e, s) {
|
|
269
|
+
const a = (c) => {
|
|
267
270
|
s.value = c, e("input-typed", c);
|
|
268
271
|
};
|
|
269
272
|
return {
|
|
270
273
|
searchQuery: s,
|
|
271
|
-
onInputTyped:
|
|
274
|
+
onInputTyped: a,
|
|
272
275
|
clearSearch: () => {
|
|
273
276
|
s.value = "", e("input-typed", "");
|
|
274
277
|
},
|
|
@@ -277,15 +280,15 @@ function xe(e, s) {
|
|
|
277
280
|
},
|
|
278
281
|
searchHelpers: {
|
|
279
282
|
searchQuery: s,
|
|
280
|
-
onInputTyped:
|
|
283
|
+
onInputTyped: a
|
|
281
284
|
}
|
|
282
285
|
};
|
|
283
286
|
}
|
|
284
|
-
function
|
|
285
|
-
const
|
|
287
|
+
function $e(e, s) {
|
|
288
|
+
const a = M(1), t = M(e.serverOptions?.rowsPerPage ?? e.rowsPerPage), r = M(""), { sortedRows: l, sortHelpers: c } = Re(e, s, a, t, r), { totalRecords: i, recordRange: g, handlePageChange: S } = Ve(e, s, a, t, l), { handleRowsPerPage: y } = xe(e, s, a, t), { onInputTyped: O } = Te(s, r);
|
|
286
289
|
return {
|
|
287
290
|
//Pagination
|
|
288
|
-
page:
|
|
291
|
+
page: a,
|
|
289
292
|
totalRecords: i,
|
|
290
293
|
recordRange: g,
|
|
291
294
|
handlePageChange: S,
|
|
@@ -293,39 +296,39 @@ function Te(e, s) {
|
|
|
293
296
|
rowsPerPage: t,
|
|
294
297
|
handleRowsPerPage: y,
|
|
295
298
|
//Sort
|
|
296
|
-
sortedRows:
|
|
299
|
+
sortedRows: l,
|
|
297
300
|
sortHelpers: c,
|
|
298
301
|
//Search
|
|
299
302
|
searchQuery: r,
|
|
300
303
|
onInputTyped: O
|
|
301
304
|
};
|
|
302
305
|
}
|
|
303
|
-
function
|
|
304
|
-
const
|
|
306
|
+
function Ie(e, s) {
|
|
307
|
+
const a = M(e.itemSelected || []);
|
|
305
308
|
F(
|
|
306
309
|
() => e.itemSelected,
|
|
307
310
|
(o) => {
|
|
308
|
-
o ?
|
|
311
|
+
o ? a.value = [...o] : a.value = [];
|
|
309
312
|
},
|
|
310
313
|
{ immediate: !0, deep: !0 }
|
|
311
314
|
);
|
|
312
|
-
const t =
|
|
313
|
-
get: () =>
|
|
315
|
+
const t = k({
|
|
316
|
+
get: () => a.value,
|
|
314
317
|
set: (o) => {
|
|
315
|
-
|
|
318
|
+
a.value = o, s("update:itemSelected", o);
|
|
316
319
|
}
|
|
317
|
-
}), r =
|
|
320
|
+
}), r = k(() => e.itemSelected !== null), l = k(
|
|
318
321
|
() => e.rows.length > 0 && t.value.length === e.rows.length
|
|
319
|
-
), c =
|
|
322
|
+
), c = k(() => !e.rows.length || !t.value.length ? !1 : !l.value && e.rows.some(
|
|
320
323
|
(o, v) => t.value.some(
|
|
321
|
-
(p, R) =>
|
|
324
|
+
(p, R) => C(p, R, e.rowKey) === C(o, v, e.rowKey)
|
|
322
325
|
)
|
|
323
326
|
)), i = (o, v) => {
|
|
324
|
-
const p =
|
|
327
|
+
const p = C(o, v, e.rowKey);
|
|
325
328
|
t.value.some(
|
|
326
|
-
(T, H) =>
|
|
329
|
+
(T, H) => C(T, H, e.rowKey) === p
|
|
327
330
|
) ? (t.value = t.value.filter(
|
|
328
|
-
(T, H) =>
|
|
331
|
+
(T, H) => C(T, H, e.rowKey) !== p
|
|
329
332
|
), s("row-deselected", o, v)) : (t.value = [...t.value, o], s("row-selected", o, v));
|
|
330
333
|
}, g = (o) => {
|
|
331
334
|
const v = o.target;
|
|
@@ -334,17 +337,17 @@ function $e(e, s) {
|
|
|
334
337
|
return {
|
|
335
338
|
selectedItems: t,
|
|
336
339
|
isItemSelectedControlled: r,
|
|
337
|
-
isAllChecked:
|
|
340
|
+
isAllChecked: l,
|
|
338
341
|
isSomeChecked: c,
|
|
339
342
|
toggleRow: i,
|
|
340
343
|
toggleAll: g,
|
|
341
344
|
selectRow: (o, v) => {
|
|
342
|
-
|
|
345
|
+
j(o, t.value, e.rowKey) || (t.value = [...t.value, o], s("row-selected", o, v));
|
|
343
346
|
},
|
|
344
347
|
deselectRow: (o, v) => {
|
|
345
|
-
const p =
|
|
348
|
+
const p = C(o, v, e.rowKey);
|
|
346
349
|
t.value = t.value.filter(
|
|
347
|
-
(R, T) =>
|
|
350
|
+
(R, T) => C(R, T, e.rowKey) !== p
|
|
348
351
|
), s("row-deselected", o, v);
|
|
349
352
|
},
|
|
350
353
|
selectAll: () => {
|
|
@@ -359,33 +362,33 @@ function $e(e, s) {
|
|
|
359
362
|
selectionHelpers: {
|
|
360
363
|
selectedItems: t,
|
|
361
364
|
isItemSelectedControlled: r,
|
|
362
|
-
isAllChecked:
|
|
365
|
+
isAllChecked: l,
|
|
363
366
|
isSomeChecked: c,
|
|
364
367
|
toggleRow: i,
|
|
365
368
|
toggleAll: g
|
|
366
369
|
}
|
|
367
370
|
};
|
|
368
371
|
}
|
|
369
|
-
const
|
|
372
|
+
const Oe = { class: "vs-datatable" }, _e = {
|
|
370
373
|
key: 0,
|
|
371
374
|
class: "vs-search-container"
|
|
372
|
-
},
|
|
375
|
+
}, De = {
|
|
373
376
|
ref: "tableResponsiveRef",
|
|
374
377
|
class: "vs-table-wrapper"
|
|
375
|
-
},
|
|
378
|
+
}, He = {
|
|
376
379
|
key: 0,
|
|
377
380
|
class: "vs-checkbox-column",
|
|
378
381
|
style: { width: "5%" }
|
|
379
|
-
},
|
|
382
|
+
}, Me = { class: "vs-checkbox" }, Be = ["id", "checked", "indeterminate"], Le = ["for"], Ae = ["onClick"], Ke = { class: "vs-header-content" }, Ne = { class: "vs-header-label" }, qe = {
|
|
380
383
|
key: 0,
|
|
381
384
|
class: "vs-sort-icons"
|
|
382
|
-
},
|
|
385
|
+
}, ze = {
|
|
383
386
|
key: 1,
|
|
384
387
|
class: "vs-sort-priority"
|
|
385
|
-
}, Fe = { key: 0 }, Ue = ["colspan"],
|
|
388
|
+
}, Fe = { key: 0 }, Ue = ["colspan"], Ze = { key: 1 }, je = ["colspan"], Ee = { class: "vs-no-data-message" }, Qe = { class: "vs-no-data-description" }, Ge = ["onClick"], Je = { class: "vs-checkbox" }, We = ["id", "value", "checked", "onChange"], Xe = ["for"], Ye = {
|
|
386
389
|
key: 1,
|
|
387
390
|
class: "vs-table-footer"
|
|
388
|
-
},
|
|
391
|
+
}, et = { class: "vs-footer-left" }, tt = { class: "vs-table-info" }, st = /* @__PURE__ */ K({
|
|
389
392
|
__name: "VsDataTable",
|
|
390
393
|
props: {
|
|
391
394
|
rows: { default: () => [] },
|
|
@@ -418,7 +421,7 @@ const Ie = { class: "vs-datatable" }, Oe = {
|
|
|
418
421
|
},
|
|
419
422
|
emits: ["update:itemSelected", "update:serverItemsLength", "update:serverOptions", "update:sort", "input-typed", "page-updated", "sort-changed", "row-click", "row-selected", "row-deselected", "all-rows-selected", "table:mounted", "table:unmounted", "table:before-mount", "data-loaded", "data-error"],
|
|
420
423
|
setup(e, { emit: s }) {
|
|
421
|
-
const
|
|
424
|
+
const a = e, t = s, r = J(), l = k(() => !!r.onRowClick), {
|
|
422
425
|
page: c,
|
|
423
426
|
rowsPerPage: i,
|
|
424
427
|
totalRecords: g,
|
|
@@ -429,32 +432,32 @@ const Ie = { class: "vs-datatable" }, Oe = {
|
|
|
429
432
|
sortHelpers: m,
|
|
430
433
|
searchQuery: u,
|
|
431
434
|
onInputTyped: o
|
|
432
|
-
} =
|
|
435
|
+
} = $e(a, t), {
|
|
433
436
|
selectedItems: v,
|
|
434
437
|
isItemSelectedControlled: p,
|
|
435
438
|
isAllChecked: R,
|
|
436
439
|
isSomeChecked: T,
|
|
437
440
|
toggleAll: H,
|
|
438
|
-
toggleRow:
|
|
439
|
-
} =
|
|
440
|
-
() =>
|
|
441
|
+
toggleRow: Q
|
|
442
|
+
} = Ie(a, t), U = k(
|
|
443
|
+
() => ae(a.columns, p.value)
|
|
441
444
|
);
|
|
442
|
-
return
|
|
445
|
+
return W(() => {
|
|
443
446
|
t("table:mounted");
|
|
444
447
|
try {
|
|
445
|
-
t("data-loaded",
|
|
448
|
+
t("data-loaded", a.rows);
|
|
446
449
|
} catch (_) {
|
|
447
450
|
t("data-error", _);
|
|
448
451
|
}
|
|
449
|
-
}),
|
|
452
|
+
}), X(() => {
|
|
450
453
|
t("table:unmounted");
|
|
451
|
-
}),
|
|
454
|
+
}), Y(() => {
|
|
452
455
|
t("table:before-mount");
|
|
453
|
-
}), (_, w) => (b(), f("div",
|
|
454
|
-
e.showSearch ? (b(), f("div",
|
|
455
|
-
|
|
456
|
+
}), (_, w) => (b(), f("div", Oe, [
|
|
457
|
+
e.showSearch ? (b(), f("div", _e, [
|
|
458
|
+
q(ye, {
|
|
456
459
|
modelValue: d(u),
|
|
457
|
-
"onUpdate:modelValue": w[0] || (w[0] = (h) =>
|
|
460
|
+
"onUpdate:modelValue": w[0] || (w[0] = (h) => z(u) ? u.value = h : null),
|
|
458
461
|
onInputTyped: d(o),
|
|
459
462
|
placeholder: e.searchPlaceholder,
|
|
460
463
|
class: V(e.searchClass)
|
|
@@ -464,14 +467,14 @@ const Ie = { class: "vs-datatable" }, Oe = {
|
|
|
464
467
|
n("div", {
|
|
465
468
|
class: V(["vs-table-container", e.containerClass])
|
|
466
469
|
}, [
|
|
467
|
-
n("div",
|
|
470
|
+
n("div", De, [
|
|
468
471
|
n("table", {
|
|
469
472
|
class: V(["vs-table", e.tableClass])
|
|
470
473
|
}, [
|
|
471
474
|
n("thead", null, [
|
|
472
475
|
n("tr", null, [
|
|
473
|
-
d(p) ? (b(), f("th",
|
|
474
|
-
n("div",
|
|
476
|
+
d(p) ? (b(), f("th", He, [
|
|
477
|
+
n("div", Me, [
|
|
475
478
|
n("input", {
|
|
476
479
|
type: "checkbox",
|
|
477
480
|
id: e.tablename + "-main-checkbox",
|
|
@@ -479,22 +482,22 @@ const Ie = { class: "vs-datatable" }, Oe = {
|
|
|
479
482
|
indeterminate: d(T),
|
|
480
483
|
onChange: w[1] || (w[1] = //@ts-ignore
|
|
481
484
|
(...h) => d(H) && d(H)(...h))
|
|
482
|
-
}, null, 40,
|
|
485
|
+
}, null, 40, Be),
|
|
483
486
|
n("label", {
|
|
484
487
|
for: e.tablename + "-main-checkbox"
|
|
485
|
-
}, null, 8,
|
|
488
|
+
}, null, 8, Le)
|
|
486
489
|
])
|
|
487
490
|
])) : x("", !0),
|
|
488
|
-
(b(!0), f(
|
|
491
|
+
(b(!0), f(B, null, L(e.columns, (h) => (b(), f("th", {
|
|
489
492
|
key: h.field,
|
|
490
493
|
onClick: ($) => h.sortable ? d(m).handleSort(h.field, $) : null,
|
|
491
494
|
style: ee({ width: h.width + "%" }),
|
|
492
495
|
class: V([h.sortable ? "vs-sortable" : "", e.headerClass])
|
|
493
496
|
}, [
|
|
494
497
|
A(_.$slots, `header-${h.field}`, { column: h }, () => [
|
|
495
|
-
n("div",
|
|
496
|
-
n("span",
|
|
497
|
-
h.sortable ? (b(), f("div",
|
|
498
|
+
n("div", Ke, [
|
|
499
|
+
n("span", Ne, P(h.label), 1),
|
|
500
|
+
h.sortable ? (b(), f("div", qe, [
|
|
498
501
|
n("span", {
|
|
499
502
|
class: V(["vs-sort-icon vs-sort-asc", {
|
|
500
503
|
"vs-active": d(m).isColumnSorted(h.field) && d(m).getSortOrder(h.field) === "asc"
|
|
@@ -524,27 +527,27 @@ const Ie = { class: "vs-datatable" }, Oe = {
|
|
|
524
527
|
], -1)
|
|
525
528
|
])], 2)
|
|
526
529
|
])) : x("", !0),
|
|
527
|
-
d(m).getSortPriority(h.field) !== null ? (b(), f("span",
|
|
530
|
+
d(m).getSortPriority(h.field) !== null ? (b(), f("span", ze, P(d(m).getSortPriority(h.field)), 1)) : x("", !0)
|
|
528
531
|
])
|
|
529
532
|
], !0)
|
|
530
|
-
], 14,
|
|
533
|
+
], 14, Ae))), 128))
|
|
531
534
|
])
|
|
532
535
|
]),
|
|
533
536
|
n("tbody", null, [
|
|
534
537
|
e.loading ? (b(), f("tr", Fe, [
|
|
535
538
|
n("td", {
|
|
536
|
-
colspan:
|
|
539
|
+
colspan: U.value,
|
|
537
540
|
class: "vs-loading"
|
|
538
541
|
}, [
|
|
539
542
|
w[7] || (w[7] = n("div", { class: "vs-spinner" }, null, -1)),
|
|
540
543
|
n("span", null, P(e.loadingText), 1)
|
|
541
544
|
], 8, Ue)
|
|
542
|
-
])) : d(D).length ? (b(!0), f(
|
|
543
|
-
key: d(
|
|
545
|
+
])) : d(D).length ? (b(!0), f(B, { key: 2 }, L(d(D), (h, $) => (b(), f("tr", {
|
|
546
|
+
key: d(C)(h, $),
|
|
544
547
|
class: V([
|
|
545
548
|
e.rowClass,
|
|
546
|
-
{ "vs-row-clickable":
|
|
547
|
-
{ "vs-row-selected": d(
|
|
549
|
+
{ "vs-row-clickable": l.value },
|
|
550
|
+
{ "vs-row-selected": d(j)(h, d(v), e.rowKey) }
|
|
548
551
|
]),
|
|
549
552
|
onClick: (I) => _.$emit("row-click", h, $)
|
|
550
553
|
}, [
|
|
@@ -557,32 +560,32 @@ const Ie = { class: "vs-datatable" }, Oe = {
|
|
|
557
560
|
n("div", Je, [
|
|
558
561
|
n("input", {
|
|
559
562
|
type: "checkbox",
|
|
560
|
-
id: e.tablename + "-checkbox-" + d(
|
|
563
|
+
id: e.tablename + "-checkbox-" + d(C)(h, $),
|
|
561
564
|
value: h,
|
|
562
|
-
checked: d(v).some((I,
|
|
563
|
-
onChange: (I) => d(
|
|
565
|
+
checked: d(v).some((I, G) => d(C)(I, G) === d(C)(h, $)),
|
|
566
|
+
onChange: (I) => d(Q)(h, $)
|
|
564
567
|
}, null, 40, We),
|
|
565
568
|
n("label", {
|
|
566
|
-
for: e.tablename + "-checkbox-" + d(
|
|
569
|
+
for: e.tablename + "-checkbox-" + d(C)(h, $)
|
|
567
570
|
}, null, 8, Xe)
|
|
568
571
|
])
|
|
569
572
|
])) : x("", !0),
|
|
570
|
-
(b(!0), f(
|
|
573
|
+
(b(!0), f(B, null, L(e.columns, (I) => (b(), f("td", {
|
|
571
574
|
key: I.field,
|
|
572
575
|
class: V(e.cellClass)
|
|
573
576
|
}, [
|
|
574
577
|
A(_.$slots, `cell-${I.field}`, {
|
|
575
578
|
item: h,
|
|
576
|
-
value: d(
|
|
579
|
+
value: d(Z)(h, I.field),
|
|
577
580
|
column: I,
|
|
578
581
|
index: $
|
|
579
582
|
}, () => [
|
|
580
|
-
se(P(d(
|
|
583
|
+
se(P(d(Z)(h, I.field)), 1)
|
|
581
584
|
], !0)
|
|
582
585
|
], 2))), 128))
|
|
583
|
-
], 10, Ge))), 128)) : (b(), f("tr",
|
|
586
|
+
], 10, Ge))), 128)) : (b(), f("tr", Ze, [
|
|
584
587
|
n("td", {
|
|
585
|
-
colspan:
|
|
588
|
+
colspan: U.value,
|
|
586
589
|
class: "vs-no-data"
|
|
587
590
|
}, [
|
|
588
591
|
A(_.$slots, "no-data", {}, () => [
|
|
@@ -594,28 +597,28 @@ const Ie = { class: "vs-datatable" }, Oe = {
|
|
|
594
597
|
n("path", { d: "M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-5 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z" })
|
|
595
598
|
])
|
|
596
599
|
], -1)),
|
|
597
|
-
n("div",
|
|
600
|
+
n("div", Ee, P(e.noDataText), 1),
|
|
598
601
|
n("div", Qe, P(e.noDataDescription), 1)
|
|
599
602
|
], !0)
|
|
600
|
-
], 8,
|
|
603
|
+
], 8, je)
|
|
601
604
|
]))
|
|
602
605
|
])
|
|
603
606
|
], 2)
|
|
604
607
|
], 512)
|
|
605
608
|
], 2),
|
|
606
609
|
e.showFooter ? (b(), f("div", Ye, [
|
|
607
|
-
n("div",
|
|
608
|
-
|
|
610
|
+
n("div", et, [
|
|
611
|
+
q(Se, {
|
|
609
612
|
modelValue: d(i),
|
|
610
|
-
"onUpdate:modelValue": w[3] || (w[3] = (h) =>
|
|
613
|
+
"onUpdate:modelValue": w[3] || (w[3] = (h) => z(i) ? i.value = h : null),
|
|
611
614
|
onRowsPerPageChanged: d(O)
|
|
612
615
|
}, null, 8, ["modelValue", "onRowsPerPageChanged"]),
|
|
613
616
|
w[9] || (w[9] = n("div", { class: "vs-divider" }, null, -1)),
|
|
614
|
-
n("div",
|
|
617
|
+
n("div", tt, P(d(S).start < 1 ? 0 : d(S).start) + " - " + P(d(S).end) + " of " + P(d(g)) + " " + P(e.entriesText), 1)
|
|
615
618
|
]),
|
|
616
|
-
|
|
619
|
+
q(fe, {
|
|
617
620
|
modelValue: d(c),
|
|
618
|
-
"onUpdate:modelValue": w[4] || (w[4] = (h) =>
|
|
621
|
+
"onUpdate:modelValue": w[4] || (w[4] = (h) => z(c) ? c.value = h : null),
|
|
619
622
|
totalRecords: d(g),
|
|
620
623
|
rowsPerPage: d(i),
|
|
621
624
|
maxVisible: e.maxVisiblePages,
|
|
@@ -626,12 +629,12 @@ const Ie = { class: "vs-datatable" }, Oe = {
|
|
|
626
629
|
])) : x("", !0)
|
|
627
630
|
]));
|
|
628
631
|
}
|
|
629
|
-
}),
|
|
632
|
+
}), at = /* @__PURE__ */ N(st, [["__scopeId", "data-v-84a43921"]]), ot = {
|
|
630
633
|
install(e) {
|
|
631
|
-
e.component("VsDataTable",
|
|
634
|
+
e.component("VsDataTable", at);
|
|
632
635
|
}
|
|
633
636
|
};
|
|
634
637
|
export {
|
|
635
|
-
|
|
636
|
-
|
|
638
|
+
at as VsDataTable,
|
|
639
|
+
ot as default
|
|
637
640
|
};
|
package/dist/vs-datatable.umd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(C,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(C=typeof globalThis<"u"?globalThis:C||self,e(C.VsDataTable={},C.Vue))})(this,(function(C,e){"use strict";var P=document.createElement("style");P.textContent=`.vs-pagination[data-v-dd26d1ca]{display:flex;align-items:center;justify-content:center;gap:var(--vs-spacing-sm);flex-wrap:wrap}.vs-pagination-button[data-v-dd26d1ca]{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--vs-spacing-sm);border:1px solid var(--vs-table-border);background-color:var(--vs-table-bg);color:var(--vs-dark);text-decoration:none;border-radius:var(--vs-border-radius);font-size:var(--vs-font-size-sm);transition:var(--vs-transition-fast);cursor:pointer}.vs-pagination-button[data-v-dd26d1ca]:hover:not(:disabled){background-color:var(--vs-table-hover-bg);border-color:var(--vs-primary)}.vs-pagination-button.vs-active[data-v-dd26d1ca]{background-color:var(--vs-primary);border-color:var(--vs-primary);color:#fff}.vs-pagination-button[data-v-dd26d1ca]:disabled{opacity:.5;cursor:not-allowed}.vs-pagination-nav[data-v-dd26d1ca]{font-weight:var(--vs-font-weight-bold)}.vs-pagination-ellipsis[data-v-dd26d1ca]{color:var(--vs-secondary);padding:0 var(--vs-spacing-sm);font-size:var(--vs-font-size-sm)}@media (max-width: 768px){.vs-pagination-button[data-v-dd26d1ca]{min-width:28px;height:28px;font-size:12px}}.vs-rows-per-page[data-v-dd11bb0e]{display:flex;align-items:center;gap:8px;font-size:14px}.vs-rows-label[data-v-dd11bb0e]{white-space:nowrap}.vs-datatable[data-v-84a43921]{--vs-table-wrapper-overflow: auto}.vs-table-wrapper[data-v-84a43921]{overflow:var(--vs-table-wrapper-overflow)}.vs-header-content[data-v-84a43921]{display:flex;align-items:center;gap:var(--vs-spacing-sm)}.vs-header-label[data-v-84a43921]{flex:1}.vs-checkbox-column[data-v-84a43921]{width:50px;text-align:center}.vs-row-clickable[data-v-84a43921]{cursor:pointer}.vs-row-selected[data-v-84a43921]{background-color:rgba(var(--vs-primary),.1)}.vs-table-footer[data-v-84a43921]{display:flex;align-items:center;justify-content:space-between;padding:var(--vs-spacing-sm) 0}.vs-table-info[data-v-84a43921]{color:var(--vs-secondary);font-size:var(--vs-font-size-md)}.vs-search-container[data-v-84a43921]{margin-bottom:var(--vs-spacing-md)}:root{--vs-primary: #007bff;--vs-secondary: #6c757d;--vs-success: #28a745;--vs-danger: #dc3545;--vs-warning: #ffc107;--vs-info: #17a2b8;--vs-light: #f8f9fa;--vs-dark: #343a40;--vs-table-bg: #ffffff;--vs-table-border: #dee2e6;--vs-table-header-bg: #f8f9fa;--vs-table-header-color: #495057;--vs-table-hover-bg: #f5f5f5;--vs-table-stripe-bg: #fafafa;--vs-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--vs-font-size: 14px;--vs-font-size-sm: 12px;--vs-font-size-lg: 16px;--vs-font-weight-normal: 400;--vs-font-weight-bold: 600;--vs-spacing-xs: 4px;--vs-spacing-sm: 8px;--vs-spacing-md: 16px;--vs-spacing-lg: 24px;--vs-spacing-xl: 32px;--vs-border-radius: 4px;--vs-border-radius-sm: 2px;--vs-border-radius-lg: 8px;--vs-shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--vs-shadow: 0 2px 4px rgba(0, 0, 0, .1);--vs-shadow-lg: 0 4px 8px rgba(0, 0, 0, .15);--vs-transition: all .2s ease-in-out;--vs-transition-fast: all .15s ease-in-out;--vs-z-dropdown: 1000;--vs-z-sticky: 1020;--vs-z-fixed: 1030;--vs-z-modal: 1040;--vs-z-popover: 1050;--vs-z-tooltip: 1060}.vs-datatable{font-family:var(--vs-font-family);font-size:var(--vs-font-size);line-height:1.5;color:var(--vs-dark);background-color:var(--vs-table-bg);box-sizing:border-box}.vs-datatable *,.vs-datatable *:before,.vs-datatable *:after{box-sizing:border-box}.vs-table-container{position:relative;background-color:var(--vs-table-bg);border:1px solid var(--vs-table-border);border-radius:var(--vs-border-radius);overflow:hidden;box-shadow:var(--vs-shadow-sm)}.vs-table{width:100%;margin:0;border-collapse:separate;border-spacing:0;background-color:var(--vs-table-bg)}.vs-table thead{background-color:var(--vs-table-header-bg)}.vs-table thead th{padding:var(--vs-spacing-md);font-weight:var(--vs-font-weight-bold);color:var(--vs-table-header-color);text-align:left;vertical-align:middle;border-bottom:2px solid var(--vs-table-border);position:relative;-webkit-user-select:none;user-select:none}.vs-table thead th:first-child{border-top-left-radius:var(--vs-border-radius)}.vs-table thead th:last-child{border-top-right-radius:var(--vs-border-radius)}.vs-table tbody tr{transition:var(--vs-transition-fast);border-bottom:1px solid var(--vs-table-border)}.vs-table tbody tr:hover{background-color:var(--vs-table-hover-bg)}.vs-table tbody tr:nth-child(2n){background-color:var(--vs-table-stripe-bg)}.vs-table tbody tr:last-child{border-bottom:none}.vs-table tbody tr td{padding:var(--vs-spacing-md);vertical-align:middle;border-right:1px solid var(--vs-table-border)}.vs-table tbody tr td:last-child{border-right:none}.vs-sortable{cursor:pointer;position:relative}.vs-sortable:hover{background-color:rgba(var(--vs-primary),.1)}.vs-sortable .vs-sort-icons{display:inline-flex;flex-direction:column;margin-left:var(--vs-spacing-sm);vertical-align:middle}.vs-sortable .vs-sort-icons .vs-sort-icon{font-size:10px;line-height:1;color:var(--vs-secondary);transition:var(--vs-transition-fast);margin:-8px 0}.vs-sortable .vs-sort-icons .vs-sort-icon.vs-sort-asc,.vs-sortable .vs-sort-icons .vs-sort-icon.vs-sort-desc{color:var(--vs-primary)}.vs-sortable .vs-sort-icons .vs-sort-icon svg{fill:#e3e3e3}.vs-sortable .vs-sort-icons .vs-sort-icon.vs-active svg{fill:currentColor}.vs-sortable .vs-sort-priority{display:inline-block;background-color:var(--vs-primary);color:#fff;font-size:10px;padding:2px 6px;border-radius:var(--vs-border-radius-sm);margin-left:var(--vs-spacing-sm);font-weight:var(--vs-font-weight-bold)}.vs-loading{display:flex;align-items:center;justify-content:center;padding:var(--vs-spacing-xl);color:var(--vs-secondary)}.vs-loading .vs-spinner{width:20px;height:20px;border:2px solid var(--vs-table-border);border-top:2px solid var(--vs-primary);border-radius:50%;animation:vs-spin 1s linear infinite;margin-right:var(--vs-spacing-sm)}@keyframes vs-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.vs-no-data{text-align:center;padding:var(--vs-spacing-xl);color:var(--vs-secondary)}.vs-no-data .vs-no-data-icon{width:60px;height:60px;margin:0 auto var(--vs-spacing-md);opacity:.5}.vs-no-data .vs-no-data-message{font-size:var(--vs-font-size-lg);font-weight:var(--vs-font-weight-bold);margin-bottom:var(--vs-spacing-sm)}.vs-no-data .vs-no-data-description{font-size:var(--vs-font-size-sm);color:var(--vs-secondary)}.vs-search{position:relative;margin-bottom:var(--vs-spacing-md)}.vs-search .vs-search-input{width:100%;padding:var(--vs-spacing-sm) var(--vs-spacing-md);padding-left:40px;border:1px solid var(--vs-table-border);border-radius:var(--vs-border-radius);font-size:var(--vs-font-size);transition:var(--vs-transition-fast)}.vs-search .vs-search-input:focus{outline:none;border-color:var(--vs-primary);box-shadow:0 0 0 2px rgba(var(--vs-primary),.25)}.vs-search .vs-search-icon{position:absolute;left:var(--vs-spacing-md);top:50%;transform:translateY(-50%);color:var(--vs-secondary);pointer-events:none}.vs-pagination{display:flex;align-items:center;justify-content:center;gap:var(--vs-spacing-sm);margin-top:var(--vs-spacing-md)}.vs-pagination .vs-pagination-button{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--vs-spacing-sm);border:1px solid var(--vs-table-border);background-color:var(--vs-table-bg);color:var(--vs-dark);text-decoration:none;border-radius:var(--vs-border-radius);font-size:var(--vs-font-size-sm);transition:var(--vs-transition-fast);cursor:pointer}.vs-pagination .vs-pagination-button:hover:not(:disabled){background-color:var(--vs-table-hover-bg);border-color:var(--vs-primary)}.vs-pagination .vs-pagination-button.vs-active{background-color:var(--vs-primary);border-color:var(--vs-primary);color:#fff}.vs-pagination .vs-pagination-button:disabled{opacity:.5;cursor:not-allowed}.vs-pagination .vs-pagination-ellipsis{color:var(--vs-secondary);padding:0 var(--vs-spacing-sm)}.vs-checkbox{display:inline-flex;align-items:center;cursor:pointer}.vs-checkbox input[type=checkbox]{width:16px;height:16px;margin:0;cursor:pointer;accent-color:var(--vs-primary)}.vs-checkbox label{margin:0;cursor:pointer;font-size:var(--vs-font-size-sm)}.vs-footer-left{display:flex;align-items:center;gap:12px}.vs-divider{width:1px;height:20px;background-color:#ccc}.vs-rows-per-page{display:flex;align-items:center;gap:8px;font-size:14px;color:#495057}.vs-items-dropdown{padding:6px 8px;border:1px solid #ddd;border-radius:4px;background-color:#fff;font-size:14px}@media (max-width: 768px){.vs-table-container{overflow-x:auto}.vs-table{min-width:600px}.vs-pagination{flex-wrap:wrap;gap:var(--vs-spacing-xs)}.vs-pagination .vs-pagination-button{min-width:28px;height:28px;font-size:12px}}.vs-text-center{text-align:center}.vs-text-left{text-align:left}.vs-text-right{text-align:right}.vs-text-muted{color:var(--vs-secondary)}.vs-text-primary{color:var(--vs-primary)}.vs-text-success{color:var(--vs-success)}.vs-text-danger{color:var(--vs-danger)}.vs-text-warning{color:var(--vs-warning)}.vs-bg-primary{background-color:var(--vs-primary)}.vs-bg-success{background-color:var(--vs-success)}.vs-bg-danger{background-color:var(--vs-danger)}.vs-bg-warning{background-color:var(--vs-warning)}.vs-bg-light{background-color:var(--vs-light)}.vs-border{border:1px solid var(--vs-table-border)}.vs-border-top{border-top:1px solid var(--vs-table-border)}.vs-border-bottom{border-bottom:1px solid var(--vs-table-border)}.vs-border-left{border-left:1px solid var(--vs-table-border)}.vs-border-right{border-right:1px solid var(--vs-table-border)}.vs-rounded{border-radius:var(--vs-border-radius)}.vs-rounded-sm{border-radius:var(--vs-border-radius-sm)}.vs-rounded-lg{border-radius:var(--vs-border-radius-lg)}.vs-shadow{box-shadow:var(--vs-shadow)}.vs-shadow-sm{box-shadow:var(--vs-shadow-sm)}.vs-shadow-lg{box-shadow:var(--vs-shadow-lg)}.vs-fade-in{animation:vs-fade-in .3s ease-in-out}@keyframes vs-fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.vs-slide-in{animation:vs-slide-in .3s ease-in-out}@keyframes vs-slide-in{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}.vs-datatable.vs-theme-dark{--vs-primary: #0d6efd;--vs-secondary: #6c757d;--vs-success: #198754;--vs-danger: #dc3545;--vs-warning: #ffc107;--vs-info: #0dcaf0;--vs-light: #f8f9fa;--vs-dark: #212529;--vs-table-bg: #1a1a1a;--vs-table-border: #333333;--vs-table-header-bg: #2d2d2d;--vs-table-header-color: #ffffff;--vs-table-hover-bg: #333333;--vs-table-stripe-bg: #222222;color:#fff;background-color:var(--vs-table-bg)}.vs-datatable.vs-theme-minimal{--vs-primary: #000000;--vs-secondary: #666666;--vs-success: #000000;--vs-danger: #000000;--vs-warning: #000000;--vs-info: #000000;--vs-light: #f9f9f9;--vs-dark: #000000;--vs-table-bg: #ffffff;--vs-table-border: #e0e0e0;--vs-table-header-bg: #ffffff;--vs-table-header-color: #000000;--vs-table-hover-bg: #f5f5f5;--vs-table-stripe-bg: #ffffff}.vs-datatable.vs-theme-minimal .vs-table{border:none;box-shadow:none}.vs-datatable.vs-theme-minimal .vs-table thead th{border-bottom:2px solid var(--vs-table-border);font-weight:500}.vs-datatable.vs-theme-minimal .vs-table tbody tr{border-bottom:1px solid var(--vs-table-border)}.vs-datatable.vs-theme-colorful{--vs-primary: #e91e63;--vs-secondary: #9c27b0;--vs-success: #4caf50;--vs-danger: #f44336;--vs-warning: #ff9800;--vs-info: #2196f3;--vs-light: #f3e5f5;--vs-dark: #2e2e2e;--vs-table-bg: #ffffff;--vs-table-border: #e1bee7;--vs-table-header-bg: linear-gradient(135deg, #e91e63, #9c27b0);--vs-table-header-color: #ffffff;--vs-table-hover-bg: #f3e5f5;--vs-table-stripe-bg: #fafafa}.vs-datatable.vs-theme-colorful .vs-table thead th{background:var(--vs-table-header-bg);color:var(--vs-table-header-color);font-weight:600}.vs-datatable.vs-theme-colorful .vs-pagination-button.vs-active{background:linear-gradient(135deg,var(--vs-primary),var(--vs-secondary))}.vs-datatable.vs-theme-corporate{--vs-primary: #1e3a8a;--vs-secondary: #64748b;--vs-success: #059669;--vs-danger: #dc2626;--vs-warning: #d97706;--vs-info: #0891b2;--vs-light: #f8fafc;--vs-dark: #1e293b;--vs-table-bg: #ffffff;--vs-table-border: #e2e8f0;--vs-table-header-bg: #f1f5f9;--vs-table-header-color: #334155;--vs-table-hover-bg: #f8fafc;--vs-table-stripe-bg: #ffffff;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.vs-datatable.vs-theme-corporate .vs-table{border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.vs-datatable.vs-theme-corporate .vs-table thead th{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:16px 20px}.vs-datatable.vs-theme-corporate .vs-table tbody td{padding:16px 20px;font-size:14px}.vs-datatable.vs-theme-compact{--vs-spacing-xs: 2px;--vs-spacing-sm: 4px;--vs-spacing-md: 8px;--vs-spacing-lg: 12px;--vs-spacing-xl: 16px;--vs-font-size: 12px;--vs-font-size-sm: 10px;--vs-font-size-lg: 14px}.vs-datatable.vs-theme-compact .vs-table thead th{padding:var(--vs-spacing-sm) var(--vs-spacing-md);font-size:var(--vs-font-size-sm)}.vs-datatable.vs-theme-compact .vs-table tbody td{padding:var(--vs-spacing-sm) var(--vs-spacing-md);font-size:var(--vs-font-size)}.vs-datatable.vs-theme-compact .vs-pagination-button{min-width:24px;height:24px;font-size:var(--vs-font-size-sm)}.vs-datatable.vs-theme-rounded{--vs-border-radius: 12px;--vs-border-radius-sm: 6px;--vs-border-radius-lg: 16px}.vs-datatable.vs-theme-rounded .vs-table-container{border-radius:var(--vs-border-radius);overflow:hidden}.vs-datatable.vs-theme-rounded .vs-table thead th:first-child{border-top-left-radius:var(--vs-border-radius)}.vs-datatable.vs-theme-rounded .vs-table thead th:last-child{border-top-right-radius:var(--vs-border-radius)}.vs-datatable.vs-theme-rounded .vs-pagination-button{border-radius:var(--vs-border-radius-sm)}.vs-datatable.vs-theme-brand{--vs-primary: #ff6b35;--vs-secondary: #004e89;--vs-success: #00a896;--vs-danger: #e63946;--vs-warning: #f77f00;--vs-info: #06a77d}.vs-datatable.vs-theme-brand .vs-table-container{border:2px solid var(--vs-primary);border-radius:16px;box-shadow:0 8px 32px #ff6b3533}.vs-datatable.vs-theme-brand .vs-table thead th{background:linear-gradient(135deg,var(--vs-primary),var(--vs-secondary));color:#fff;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.1)}.vs-datatable.vs-theme-brand .vs-pagination-button.vs-active{background:var(--vs-primary);transform:scale(1.05)}.vs-datatable.vs-theme-brand .vs-pagination-button:hover:not(:disabled){border-color:var(--vs-primary);transform:translateY(-1px)}
|
|
2
|
-
/*$vite$:1*/`,document.head.appendChild(P);function R(t,s){return s.split(".").reduce((o,a)=>o?.[a],t)??""}function u(t,s,o="id"){return typeof o=="function"?o(t,s):t[o]||s}function T(t,s,o="id"){return s.some(a=>u(a,-1,o)===u(t,-1,o))}function I(t,s){return t.length+(s?1:0)}function O(t,s){if(!s.length)return t;const o=(a,l)=>l.split(".").reduce((r,i)=>r?.[i],a)??"";return[...t].sort((a,l)=>{for(const{field:r,order:i}of s){const d=o(a,r),f=o(l,r);if(d!==f)return i==="asc"?d>f?1:-1:d<f?1:-1}return 0})}function H(t,s,o){if(!o)return t;const a=(s-1)*o,l=a+o;return t.slice(a,l)}function L(t,s,o){const a=(t-1)*s+1,l=Math.min(t*s,o);return{start:a,end:l}}function D(t,s){return Math.ceil(t/s)}function M(t,s,o){if(!s||s.trim()==="")return t;const a=s.toLowerCase();return t.filter(l=>Object.values(l).some(r=>String(r??"").toLowerCase().includes(a)))}const A=["id"],K=["disabled"],j={key:1,class:"vs-pagination-ellipsis"},F=["id","onClick"],U={key:2,class:"vs-pagination-ellipsis"},Y=["disabled"],Z=e.defineComponent({__name:"VsPagination",props:{modelValue:{},totalRecords:{},rowsPerPage:{},tablename:{},maxVisible:{},paginationClass:{}},emits:["update:modelValue","page-changed"],setup(t,{emit:s}){const o=t,a=s,l=o.maxVisible??3,r=e.computed({get:()=>o.modelValue,set:g=>{a("update:modelValue",g),a("page-changed",g)}}),i=e.computed(()=>r.value<=Math.floor(l/2)?1:r.value>=f.value-Math.floor(l/2)?Math.max(f.value-l+1,1):r.value-Math.floor(l/2)),d=e.computed(()=>Math.min(i.value+l-1,f.value)),f=e.computed(()=>D(o.totalRecords,o.rowsPerPage)),x=e.computed(()=>{const g=[];for(let c=i.value;c<=d.value;c++)g.push(c);return g}),m=g=>{g>=1&&g<=f.value&&(r.value=g)},S=()=>{r.value>1&&r.value--},z=()=>{r.value<f.value&&r.value++};return(g,c)=>(e.openBlock(),e.createElementBlock("div",{class:"vs-pagination",id:t.tablename+"-pagination"},[e.createElementVNode("button",{onClick:S,type:"button",class:"vs-pagination-button vs-pagination-nav",disabled:r.value===1}," ‹‹ ",8,K),i.value>1?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"vs-pagination-button",onClick:c[0]||(c[0]=n=>m(1))}," 1 ")):e.createCommentVNode("",!0),i.value>2?(e.openBlock(),e.createElementBlock("span",j,"...")):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,n=>(e.openBlock(),e.createElementBlock("button",{key:n,type:"button",class:e.normalizeClass(["vs-pagination-button",{"vs-active":r.value===n}]),id:t.tablename+"-page-"+n,onClick:v=>m(n)},e.toDisplayString(n),11,F))),128)),d.value<f.value-1?(e.openBlock(),e.createElementBlock("span",U,"...")):e.createCommentVNode("",!0),d.value<f.value?(e.openBlock(),e.createElementBlock("button",{key:3,type:"button",class:"vs-pagination-button",onClick:c[1]||(c[1]=n=>m(f.value))},e.toDisplayString(f.value),1)):e.createCommentVNode("",!0),e.createElementVNode("button",{onClick:z,type:"button",class:"vs-pagination-button vs-pagination-nav",disabled:r.value===f.value}," ›› ",8,Y)],8,A))}}),N=(t,s)=>{const o=t.__vccOpts||t;for(const[a,l]of s)o[a]=l;return o},Q=N(Z,[["__scopeId","data-v-dd26d1ca"]]),G={class:"vs-search"},J=["placeholder","value"],W=e.defineComponent({__name:"VsSearch",props:{modelValue:{},placeholder:{}},emits:["update:modelValue","input-typed"],setup(t,{emit:s}){const o=s,a=l=>{const r=l.target;o("update:modelValue",r.value),o("input-typed",r.value)};return(l,r)=>(e.openBlock(),e.createElementBlock("div",G,[r[0]||(r[0]=e.createElementVNode("div",{class:"vs-search-icon"},[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"currentColor"},[e.createElementVNode("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"})])],-1)),e.createElementVNode("input",{type:"text",class:"vs-search-input",placeholder:t.placeholder,value:t.modelValue,onInput:a},null,40,J)]))}}),X={class:"vs-rows-per-page"},q=["value"],ee=["value"],te=N(e.defineComponent({__name:"VsRowsPerPage",props:{modelValue:{},options:{}},emits:["update:modelValue","rows-per-page-changed"],setup(t,{emit:s}){const o=t,a=s,l=o.options??[10,25,50,100],r=i=>{const d=Number(i.target.value);a("update:modelValue",d),a("rows-per-page-changed",d)};return(i,d)=>(e.openBlock(),e.createElementBlock("div",X,[d[0]||(d[0]=e.createElementVNode("span",{class:"vs-rows-label"},"Items Per Page",-1)),e.createElementVNode("select",{class:"vs-items-dropdown",value:t.modelValue,onChange:r},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),f=>(e.openBlock(),e.createElementBlock("option",{key:f,value:f},e.toDisplayString(f),9,ee))),128))],40,q)]))}}),[["__scopeId","data-v-dd11bb0e"]]);function ae(t,s,o,a,l){const r=e.ref(1),i=e.ref(t.sort??[]);e.watch(()=>t.sort,c=>{c&&(i.value=[...c])},{deep:!0});const d=e.computed(()=>t.serverOptions?.sort??i.value??[]);return{sortedRows:e.computed(()=>{let c=t.rows;return l.value&&(c=M(c,l.value)),d.value.length&&(c=O(c,d.value)),t.rowsPerPage&&(c=H(c,o.value,a.value)),c}),activeSort:d,sortHelpers:{isColumnSorted:c=>d.value.some(n=>n.field===c),getSortPriority:c=>{const n=d.value.find(v=>v.field===c);return n?n.priority??null:null},getSortOrder:c=>d.value.find(n=>n.field===c)?.order??null,handleSort:(c,n)=>{let v=[];t.serverOptions?v=[...t.serverOptions.sort??[]]:t.sort&&(v=[...t.sort]);const h=v.findIndex(y=>y.field===c);n.shiftKey?h===-1?v.push({field:c,order:"asc"}):v[h]?.order==="asc"?v[h].order="desc":v.splice(h,1):h===-1?v=[{field:c,order:"asc"}]:v[h]?.order==="asc"?v=[{field:c,order:"desc"}]:v=[],v=v.map((y,w)=>({...y,priority:w+1})),t.serverOptions?s("update:serverOptions",{...t.serverOptions,sort:v}):s("update:sort",v),o.value=r.value,s("sort-changed",{sort:v})}}}}function se(t,s,o,a,l){const r=e.computed({get:()=>t.serverItemsLength!==void 0?t.serverItemsLength:l.value.length,set:m=>{t.serverItemsLength!==void 0&&s("update:serverItemsLength",m)}}),i=e.computed({get:()=>t.serverOptions?.page??o.value,set:m=>{t.serverOptions?s("update:serverOptions",{...t.serverOptions,page:m}):o.value=m}}),d=e.computed(()=>{const m=a.value;return L(o.value,m,r.value)}),f=m=>{t.serverOptions&&s("update:serverOptions",{...t.serverOptions,page:m}),s("page-updated",m)};return{currentPage:i,totalRecords:r,recordRange:d,handlePageChange:f,paginationHelpers:{page:o,totalRecords:r,recordRange:d,handlePageChange:f}}}function oe(t,s,o,a){const l=e.computed({get:()=>a.value,set:i=>a.value=i});return e.watch(a,i=>{const d=t.serverItemsLength??t.rows.length,f=D(d,i);o.value>f?o.value=f||1:o.value<1&&(o.value=1)}),{vsRowsPerPage:l,handleRowsPerPage:i=>{a.value=i,s("rows-per-page-changed",i)}}}function re(t,s){const o=i=>{s.value=i,t("input-typed",i)};return{searchQuery:s,onInputTyped:o,clearSearch:()=>{s.value="",t("input-typed","")},setSearchQuery:i=>{s.value=i,t("input-typed",i)},searchHelpers:{searchQuery:s,onInputTyped:o}}}function ne(t,s){const o=e.ref(1),a=e.ref(t.serverOptions?.rowsPerPage??t.rowsPerPage),l=e.ref(""),{sortedRows:r,sortHelpers:i}=ae(t,s,o,a,l),{totalRecords:d,recordRange:f,handlePageChange:x}=se(t,s,o,a,r),{handleRowsPerPage:m}=oe(t,s,o,a),{onInputTyped:S}=re(s,l);return{page:o,totalRecords:d,recordRange:f,handlePageChange:x,rowsPerPage:a,handleRowsPerPage:m,sortedRows:r,sortHelpers:i,searchQuery:l,onInputTyped:S}}function le(t,s){const o=e.ref(t.itemSelected||[]);e.watch(()=>t.itemSelected,n=>{n?o.value=[...n]:o.value=[]},{immediate:!0,deep:!0});const a=e.computed({get:()=>o.value,set:n=>{o.value=n,s("update:itemSelected",n)}}),l=e.computed(()=>t.itemSelected!==null),r=e.computed(()=>t.rows.length>0&&a.value.length===t.rows.length),i=e.computed(()=>!t.rows.length||!a.value.length?!1:!r.value&&t.rows.some((n,v)=>a.value.some((h,y)=>u(h,y,t.rowKey)===u(n,v,t.rowKey)))),d=(n,v)=>{const h=u(n,v,t.rowKey);a.value.some((w,B)=>u(w,B,t.rowKey)===h)?(a.value=a.value.filter((w,B)=>u(w,B,t.rowKey)!==h),s("row-deselected",n,v)):(a.value=[...a.value,n],s("row-selected",n,v))},f=n=>{const v=n.target;a.value=v.checked?[...t.rows]:[],s("all-rows-selected",a.value)};return{selectedItems:a,isItemSelectedControlled:l,isAllChecked:r,isSomeChecked:i,toggleRow:d,toggleAll:f,selectRow:(n,v)=>{T(n,a.value,t.rowKey)||(a.value=[...a.value,n],s("row-selected",n,v))},deselectRow:(n,v)=>{const h=u(n,v,t.rowKey);a.value=a.value.filter((y,w)=>u(y,w,t.rowKey)!==h),s("row-deselected",n,v)},selectAll:()=>{a.value=[...t.rows],s("all-rows-selected",a.value)},deselectAll:()=>{a.value=[],s("all-rows-selected",[])},clearSelection:()=>{a.value=[]},selectionHelpers:{selectedItems:a,isItemSelectedControlled:l,isAllChecked:r,isSomeChecked:i,toggleRow:d,toggleAll:f}}}const ie={class:"vs-datatable"},de={key:0,class:"vs-search-container"},ce={ref:"tableResponsiveRef",class:"vs-table-wrapper"},ve={key:0,class:"vs-checkbox-column",style:{width:"5%"}},be={class:"vs-checkbox"},fe=["id","checked","indeterminate"],ge=["for"],pe=["onClick"],me={class:"vs-header-content"},he={class:"vs-header-label"},ue={key:0,class:"vs-sort-icons"},xe={key:1,class:"vs-sort-priority"},ye={key:0},we=["colspan"],ke={key:1},Ve=["colspan"],Ce={class:"vs-no-data-message"},Se={class:"vs-no-data-description"},Ee=["onClick"],ze={class:"vs-checkbox"},Be=["id","value","checked","onChange"],Ne=["for"],Pe={key:1,class:"vs-table-footer"},Re={class:"vs-footer-left"},Te={class:"vs-table-info"},$=N(e.defineComponent({__name:"VsDataTable",props:{rows:{default:()=>[]},itemSelected:{default:null},tablename:{default:"default-table"},sort:{},serverItemsLength:{},serverOptions:{default:null},showHeader:{type:Boolean,default:!0},headerText:{default:""},loading:{type:Boolean,default:!1},columns:{},tableClass:{},rowClass:{},showFooter:{type:Boolean,default:!0},containerClass:{},headerClass:{},cellClass:{},showSearch:{type:Boolean,default:!0},searchClass:{},searchPlaceholder:{default:"Search..."},paginationClass:{},loadingText:{default:"Loading..."},noDataText:{default:"No data available"},noDataDescription:{default:"Try adjusting your search criteria"},entriesText:{default:"entries"},maxVisiblePages:{default:5},rowsPerPage:{default:10},rowKey:{type:[String,Function],default:"id"}},emits:["update:itemSelected","update:serverItemsLength","update:serverOptions","update:sort","input-typed","page-updated","sort-changed","row-click","row-selected","row-deselected","all-rows-selected","table:mounted","table:unmounted","table:before-mount","data-loaded","data-error"],setup(t,{emit:s}){const o=t,a=s,l=e.useAttrs(),r=e.computed(()=>!!l.onRowClick),{page:i,rowsPerPage:d,totalRecords:f,recordRange:x,handlePageChange:m,handleRowsPerPage:S,sortedRows:z,sortHelpers:g,searchQuery:c,onInputTyped:n}=ne(o,a),{selectedItems:v,isItemSelectedControlled:h,isAllChecked:y,isSomeChecked:w,toggleAll:B,toggleRow:$e}=le(o,a),_=e.computed(()=>I(o.columns,h.value));return e.onMounted(()=>{a("table:mounted");try{a("data-loaded",o.rows)}catch(E){a("data-error",E)}}),e.onUnmounted(()=>{a("table:unmounted")}),e.onBeforeMount(()=>{a("table:before-mount")}),(E,p)=>(e.openBlock(),e.createElementBlock("div",ie,[t.showSearch?(e.openBlock(),e.createElementBlock("div",de,[e.createVNode(W,{modelValue:e.unref(c),"onUpdate:modelValue":p[0]||(p[0]=b=>e.isRef(c)?c.value=b:null),onInputTyped:e.unref(n),placeholder:t.searchPlaceholder,class:e.normalizeClass(t.searchClass)},null,8,["modelValue","onInputTyped","placeholder","class"]),e.renderSlot(E.$slots,"filterArea",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["vs-table-container",t.containerClass])},[e.createElementVNode("div",ce,[e.createElementVNode("table",{class:e.normalizeClass(["vs-table",t.tableClass])},[e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[e.unref(h)?(e.openBlock(),e.createElementBlock("th",ve,[e.createElementVNode("div",be,[e.createElementVNode("input",{type:"checkbox",id:t.tablename+"-main-checkbox",checked:e.unref(y),indeterminate:e.unref(w),onChange:p[1]||(p[1]=(...b)=>e.unref(B)&&e.unref(B)(...b))},null,40,fe),e.createElementVNode("label",{for:t.tablename+"-main-checkbox"},null,8,ge)])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,b=>(e.openBlock(),e.createElementBlock("th",{key:b.field,onClick:k=>b.sortable?e.unref(g).handleSort(b.field,k):null,style:e.normalizeStyle({width:b.width+"%"}),class:e.normalizeClass([b.sortable?"vs-sortable":"",t.headerClass])},[e.renderSlot(E.$slots,`header-${b.field}`,{column:b},()=>[e.createElementVNode("div",me,[e.createElementVNode("span",he,e.toDisplayString(b.label),1),b.sortable?(e.openBlock(),e.createElementBlock("div",ue,[e.createElementVNode("span",{class:e.normalizeClass(["vs-sort-icon vs-sort-asc",{"vs-active":e.unref(g).isColumnSorted(b.field)&&e.unref(g).getSortOrder(b.field)==="asc"}])},[...p[5]||(p[5]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24px",viewBox:"0 -960 960 960",width:"24px"},[e.createElementVNode("path",{d:"m280-400 200-200 200 200H280Z"})],-1)])],2),e.createElementVNode("span",{class:e.normalizeClass(["vs-sort-icon vs-sort-desc",{"vs-active":e.unref(g).isColumnSorted(b.field)&&e.unref(g).getSortOrder(b.field)==="desc"}])},[...p[6]||(p[6]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24px",viewBox:"0 -960 960 960",width:"24px"},[e.createElementVNode("path",{d:"M480-360 280-560h400L480-360Z"})],-1)])],2)])):e.createCommentVNode("",!0),e.unref(g).getSortPriority(b.field)!==null?(e.openBlock(),e.createElementBlock("span",xe,e.toDisplayString(e.unref(g).getSortPriority(b.field)),1)):e.createCommentVNode("",!0)])],!0)],14,pe))),128))])]),e.createElementVNode("tbody",null,[t.loading?(e.openBlock(),e.createElementBlock("tr",ye,[e.createElementVNode("td",{colspan:_.value,class:"vs-loading"},[p[7]||(p[7]=e.createElementVNode("div",{class:"vs-spinner"},null,-1)),e.createElementVNode("span",null,e.toDisplayString(t.loadingText),1)],8,we)])):e.unref(z).length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(e.unref(z),(b,k)=>(e.openBlock(),e.createElementBlock("tr",{key:e.unref(u)(b,k),class:e.normalizeClass([t.rowClass,{"vs-row-clickable":r.value},{"vs-row-selected":e.unref(T)(b,e.unref(v),t.rowKey)}]),onClick:V=>E.$emit("row-click",b,k)},[e.unref(h)?(e.openBlock(),e.createElementBlock("td",{key:0,onClick:p[2]||(p[2]=e.withModifiers(()=>{},["stop"])),class:"vs-checkbox-column"},[e.createElementVNode("div",ze,[e.createElementVNode("input",{type:"checkbox",id:t.tablename+"-checkbox-"+e.unref(u)(b,k),value:b,checked:e.unref(v).some((V,_e)=>e.unref(u)(V,_e)===e.unref(u)(b,k)),onChange:V=>e.unref($e)(b,k)},null,40,Be),e.createElementVNode("label",{for:t.tablename+"-checkbox-"+e.unref(u)(b,k)},null,8,Ne)])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,V=>(e.openBlock(),e.createElementBlock("td",{key:V.field,class:e.normalizeClass(t.cellClass)},[e.renderSlot(E.$slots,`cell-${V.field}`,{item:b,value:e.unref(R)(b,V.field),column:V,index:k},()=>[e.createTextVNode(e.toDisplayString(e.unref(R)(b,V.field)),1)],!0)],2))),128))],10,Ee))),128)):(e.openBlock(),e.createElementBlock("tr",ke,[e.createElementVNode("td",{colspan:_.value,class:"vs-no-data"},[e.renderSlot(E.$slots,"no-data",{},()=>[p[8]||(p[8]=e.createElementVNode("div",{class:"vs-no-data-icon"},[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"currentColor"},[e.createElementVNode("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-5 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z"})])],-1)),e.createElementVNode("div",Ce,e.toDisplayString(t.noDataText),1),e.createElementVNode("div",Se,e.toDisplayString(t.noDataDescription),1)],!0)],8,Ve)]))])],2)],512)],2),t.showFooter?(e.openBlock(),e.createElementBlock("div",Pe,[e.createElementVNode("div",Re,[e.createVNode(te,{modelValue:e.unref(d),"onUpdate:modelValue":p[3]||(p[3]=b=>e.isRef(d)?d.value=b:null),onRowsPerPageChanged:e.unref(S)},null,8,["modelValue","onRowsPerPageChanged"]),p[9]||(p[9]=e.createElementVNode("div",{class:"vs-divider"},null,-1)),e.createElementVNode("div",Te,e.toDisplayString(e.unref(x).start<1?0:e.unref(x).start)+" - "+e.toDisplayString(e.unref(x).end)+" of "+e.toDisplayString(e.unref(f))+" "+e.toDisplayString(t.entriesText),1)]),e.createVNode(Q,{modelValue:e.unref(i),"onUpdate:modelValue":p[4]||(p[4]=b=>e.isRef(i)?i.value=b:null),totalRecords:e.unref(f),rowsPerPage:e.unref(d),maxVisible:t.maxVisiblePages,tablename:t.tablename,class:e.normalizeClass(t.paginationClass),onPageChanged:e.unref(m)},null,8,["modelValue","totalRecords","rowsPerPage","maxVisible","tablename","class","onPageChanged"])])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-84a43921"]]),De={install(t){t.component("VsDataTable",$)}};C.VsDataTable=$,C.default=De,Object.defineProperties(C,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|
|
1
|
+
(function(C,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(C=typeof globalThis<"u"?globalThis:C||self,e(C.VsDataTable={},C.Vue))})(this,(function(C,e){"use strict";var P=document.createElement("style");P.textContent=`.vs-pagination[data-v-dd26d1ca]{display:flex;align-items:center;justify-content:center;gap:var(--vs-spacing-sm);flex-wrap:wrap}.vs-pagination-button[data-v-dd26d1ca]{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--vs-spacing-sm);border:1px solid var(--vs-table-border);background-color:var(--vs-table-bg);color:var(--vs-dark);text-decoration:none;border-radius:var(--vs-border-radius);font-size:var(--vs-font-size-sm);transition:var(--vs-transition-fast);cursor:pointer}.vs-pagination-button[data-v-dd26d1ca]:hover:not(:disabled){background-color:var(--vs-table-hover-bg);border-color:var(--vs-primary)}.vs-pagination-button.vs-active[data-v-dd26d1ca]{background-color:var(--vs-primary);border-color:var(--vs-primary);color:#fff}.vs-pagination-button[data-v-dd26d1ca]:disabled{opacity:.5;cursor:not-allowed}.vs-pagination-nav[data-v-dd26d1ca]{font-weight:var(--vs-font-weight-bold)}.vs-pagination-ellipsis[data-v-dd26d1ca]{color:var(--vs-secondary);padding:0 var(--vs-spacing-sm);font-size:var(--vs-font-size-sm)}@media (max-width: 768px){.vs-pagination-button[data-v-dd26d1ca]{min-width:28px;height:28px;font-size:12px}}.vs-search .vs-search-input[data-v-5ef0abcd]{font-size:18px!important}.vs-rows-per-page[data-v-dd11bb0e]{display:flex;align-items:center;gap:8px;font-size:14px}.vs-rows-label[data-v-dd11bb0e]{white-space:nowrap}.vs-datatable[data-v-84a43921]{--vs-table-wrapper-overflow: auto}.vs-table-wrapper[data-v-84a43921]{overflow:var(--vs-table-wrapper-overflow)}.vs-header-content[data-v-84a43921]{display:flex;align-items:center;gap:var(--vs-spacing-sm)}.vs-header-label[data-v-84a43921]{flex:1}.vs-checkbox-column[data-v-84a43921]{width:50px;text-align:center}.vs-row-clickable[data-v-84a43921]{cursor:pointer}.vs-row-selected[data-v-84a43921]{background-color:rgba(var(--vs-primary),.1)}.vs-table-footer[data-v-84a43921]{display:flex;align-items:center;justify-content:space-between;padding:var(--vs-spacing-sm) 0}.vs-table-info[data-v-84a43921]{color:var(--vs-secondary);font-size:var(--vs-font-size-md)}.vs-search-container[data-v-84a43921]{margin-bottom:var(--vs-spacing-md)}:root{--vs-primary: #007bff;--vs-secondary: #6c757d;--vs-success: #28a745;--vs-danger: #dc3545;--vs-warning: #ffc107;--vs-info: #17a2b8;--vs-light: #f8f9fa;--vs-dark: #343a40;--vs-table-bg: #ffffff;--vs-table-border: #dee2e6;--vs-table-header-bg: #f8f9fa;--vs-table-header-color: #495057;--vs-table-hover-bg: #f5f5f5;--vs-table-stripe-bg: #fafafa;--vs-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--vs-font-size: 14px;--vs-font-size-sm: 12px;--vs-font-size-lg: 16px;--vs-font-weight-normal: 400;--vs-font-weight-bold: 600;--vs-spacing-xs: 4px;--vs-spacing-sm: 8px;--vs-spacing-md: 16px;--vs-spacing-lg: 24px;--vs-spacing-xl: 32px;--vs-border-radius: 4px;--vs-border-radius-sm: 2px;--vs-border-radius-lg: 8px;--vs-shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--vs-shadow: 0 2px 4px rgba(0, 0, 0, .1);--vs-shadow-lg: 0 4px 8px rgba(0, 0, 0, .15);--vs-transition: all .2s ease-in-out;--vs-transition-fast: all .15s ease-in-out;--vs-z-dropdown: 1000;--vs-z-sticky: 1020;--vs-z-fixed: 1030;--vs-z-modal: 1040;--vs-z-popover: 1050;--vs-z-tooltip: 1060}.vs-datatable{font-family:var(--vs-font-family);font-size:var(--vs-font-size);line-height:1.5;color:var(--vs-dark);background-color:var(--vs-table-bg);box-sizing:border-box}.vs-datatable *,.vs-datatable *:before,.vs-datatable *:after{box-sizing:border-box}.vs-table-container{position:relative;background-color:var(--vs-table-bg);border:1px solid var(--vs-table-border);border-radius:var(--vs-border-radius);overflow:hidden;box-shadow:var(--vs-shadow-sm)}.vs-table{width:100%;margin:0;border-collapse:separate;border-spacing:0;background-color:var(--vs-table-bg)}.vs-table thead{background-color:var(--vs-table-header-bg)}.vs-table thead th{padding:var(--vs-spacing-md);font-weight:var(--vs-font-weight-bold);color:var(--vs-table-header-color);text-align:left;vertical-align:middle;border-bottom:2px solid var(--vs-table-border);position:relative;-webkit-user-select:none;user-select:none}.vs-table thead th:first-child{border-top-left-radius:var(--vs-border-radius)}.vs-table thead th:last-child{border-top-right-radius:var(--vs-border-radius)}.vs-table tbody tr{transition:var(--vs-transition-fast);border-bottom:1px solid var(--vs-table-border)}.vs-table tbody tr:hover{background-color:var(--vs-table-hover-bg)}.vs-table tbody tr:nth-child(2n){background-color:var(--vs-table-stripe-bg)}.vs-table tbody tr:last-child{border-bottom:none}.vs-table tbody tr td{padding:var(--vs-spacing-md);vertical-align:middle;border-right:1px solid var(--vs-table-border)}.vs-table tbody tr td:last-child{border-right:none}.vs-sortable{cursor:pointer;position:relative}.vs-sortable:hover{background-color:rgba(var(--vs-primary),.1)}.vs-sortable .vs-sort-icons{display:inline-flex;flex-direction:column;margin-left:var(--vs-spacing-sm);vertical-align:middle}.vs-sortable .vs-sort-icons .vs-sort-icon{font-size:10px;line-height:1;color:var(--vs-secondary);transition:var(--vs-transition-fast);margin:-8px 0}.vs-sortable .vs-sort-icons .vs-sort-icon.vs-sort-asc,.vs-sortable .vs-sort-icons .vs-sort-icon.vs-sort-desc{color:var(--vs-primary)}.vs-sortable .vs-sort-icons .vs-sort-icon svg{fill:#e3e3e3}.vs-sortable .vs-sort-icons .vs-sort-icon.vs-active svg{fill:currentColor}.vs-sortable .vs-sort-priority{display:inline-block;background-color:var(--vs-primary);color:#fff;font-size:10px;padding:2px 6px;border-radius:var(--vs-border-radius-sm);margin-left:var(--vs-spacing-sm);font-weight:var(--vs-font-weight-bold)}.vs-loading{display:flex;align-items:center;justify-content:center;padding:var(--vs-spacing-xl);color:var(--vs-secondary)}.vs-loading .vs-spinner{width:20px;height:20px;border:2px solid var(--vs-table-border);border-top:2px solid var(--vs-primary);border-radius:50%;animation:vs-spin 1s linear infinite;margin-right:var(--vs-spacing-sm)}@keyframes vs-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.vs-no-data{text-align:center;padding:var(--vs-spacing-xl);color:var(--vs-secondary)}.vs-no-data .vs-no-data-icon{width:60px;height:60px;margin:0 auto var(--vs-spacing-md);opacity:.5}.vs-no-data .vs-no-data-message{font-size:var(--vs-font-size-lg);font-weight:var(--vs-font-weight-bold);margin-bottom:var(--vs-spacing-sm)}.vs-no-data .vs-no-data-description{font-size:var(--vs-font-size-sm);color:var(--vs-secondary)}.vs-search{position:relative;margin-bottom:var(--vs-spacing-md)}.vs-search .vs-search-input{width:100%;padding:var(--vs-spacing-md) var(--vs-spacing-md);padding-left:50px;border:1px solid var(--vs-table-border);border-radius:var(--vs-border-radius);font-size:var(--vs-font-size);transition:var(--vs-transition-fast)}.vs-search .vs-search-input:focus{outline:none;border-color:var(--vs-primary);box-shadow:0 0 0 2px rgba(var(--vs-primary),.25)}.vs-search .vs-search-icon{position:absolute;left:var(--vs-spacing-md);top:50%;transform:translateY(-50%);color:var(--vs-secondary);pointer-events:none}.vs-pagination{display:flex;align-items:center;justify-content:center;gap:var(--vs-spacing-sm);margin-top:var(--vs-spacing-md)}.vs-pagination .vs-pagination-button{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--vs-spacing-sm);border:1px solid var(--vs-table-border);background-color:var(--vs-table-bg);color:var(--vs-dark);text-decoration:none;border-radius:var(--vs-border-radius);font-size:var(--vs-font-size-sm);transition:var(--vs-transition-fast);cursor:pointer}.vs-pagination .vs-pagination-button:hover:not(:disabled){background-color:var(--vs-table-hover-bg);border-color:var(--vs-primary)}.vs-pagination .vs-pagination-button.vs-active{background-color:var(--vs-primary);border-color:var(--vs-primary);color:#fff}.vs-pagination .vs-pagination-button:disabled{opacity:.5;cursor:not-allowed}.vs-pagination .vs-pagination-ellipsis{color:var(--vs-secondary);padding:0 var(--vs-spacing-sm)}.vs-checkbox{display:inline-flex;align-items:center;cursor:pointer}.vs-checkbox input[type=checkbox]{width:16px;height:16px;margin:0;cursor:pointer;accent-color:var(--vs-primary)}.vs-checkbox label{margin:0;cursor:pointer;font-size:var(--vs-font-size-sm)}.vs-footer-left{display:flex;align-items:center;gap:12px}.vs-divider{width:1px;height:20px;background-color:#ccc}.vs-rows-per-page{display:flex;align-items:center;gap:8px;font-size:14px;color:#495057}.vs-items-dropdown{padding:6px 8px;border:1px solid #ddd;border-radius:4px;background-color:#fff;font-size:14px}@media (max-width: 768px){.vs-table-container{overflow-x:auto}.vs-table{min-width:600px}.vs-pagination{flex-wrap:wrap;gap:var(--vs-spacing-xs)}.vs-pagination .vs-pagination-button{min-width:28px;height:28px;font-size:12px}}.vs-text-center{text-align:center}.vs-text-left{text-align:left}.vs-text-right{text-align:right}.vs-text-muted{color:var(--vs-secondary)}.vs-text-primary{color:var(--vs-primary)}.vs-text-success{color:var(--vs-success)}.vs-text-danger{color:var(--vs-danger)}.vs-text-warning{color:var(--vs-warning)}.vs-bg-primary{background-color:var(--vs-primary)}.vs-bg-success{background-color:var(--vs-success)}.vs-bg-danger{background-color:var(--vs-danger)}.vs-bg-warning{background-color:var(--vs-warning)}.vs-bg-light{background-color:var(--vs-light)}.vs-border{border:1px solid var(--vs-table-border)}.vs-border-top{border-top:1px solid var(--vs-table-border)}.vs-border-bottom{border-bottom:1px solid var(--vs-table-border)}.vs-border-left{border-left:1px solid var(--vs-table-border)}.vs-border-right{border-right:1px solid var(--vs-table-border)}.vs-rounded{border-radius:var(--vs-border-radius)}.vs-rounded-sm{border-radius:var(--vs-border-radius-sm)}.vs-rounded-lg{border-radius:var(--vs-border-radius-lg)}.vs-shadow{box-shadow:var(--vs-shadow)}.vs-shadow-sm{box-shadow:var(--vs-shadow-sm)}.vs-shadow-lg{box-shadow:var(--vs-shadow-lg)}.vs-fade-in{animation:vs-fade-in .3s ease-in-out}@keyframes vs-fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.vs-slide-in{animation:vs-slide-in .3s ease-in-out}@keyframes vs-slide-in{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}.vs-datatable.vs-theme-dark{--vs-primary: #0d6efd;--vs-secondary: #6c757d;--vs-success: #198754;--vs-danger: #dc3545;--vs-warning: #ffc107;--vs-info: #0dcaf0;--vs-light: #f8f9fa;--vs-dark: #212529;--vs-table-bg: #1a1a1a;--vs-table-border: #333333;--vs-table-header-bg: #2d2d2d;--vs-table-header-color: #ffffff;--vs-table-hover-bg: #333333;--vs-table-stripe-bg: #222222;color:#fff;background-color:var(--vs-table-bg)}.vs-datatable.vs-theme-minimal{--vs-primary: #000000;--vs-secondary: #666666;--vs-success: #000000;--vs-danger: #000000;--vs-warning: #000000;--vs-info: #000000;--vs-light: #f9f9f9;--vs-dark: #000000;--vs-table-bg: #ffffff;--vs-table-border: #e0e0e0;--vs-table-header-bg: #ffffff;--vs-table-header-color: #000000;--vs-table-hover-bg: #f5f5f5;--vs-table-stripe-bg: #ffffff}.vs-datatable.vs-theme-minimal .vs-table{border:none;box-shadow:none}.vs-datatable.vs-theme-minimal .vs-table thead th{border-bottom:2px solid var(--vs-table-border);font-weight:500}.vs-datatable.vs-theme-minimal .vs-table tbody tr{border-bottom:1px solid var(--vs-table-border)}.vs-datatable.vs-theme-colorful{--vs-primary: #e91e63;--vs-secondary: #9c27b0;--vs-success: #4caf50;--vs-danger: #f44336;--vs-warning: #ff9800;--vs-info: #2196f3;--vs-light: #f3e5f5;--vs-dark: #2e2e2e;--vs-table-bg: #ffffff;--vs-table-border: #e1bee7;--vs-table-header-bg: linear-gradient(135deg, #e91e63, #9c27b0);--vs-table-header-color: #ffffff;--vs-table-hover-bg: #f3e5f5;--vs-table-stripe-bg: #fafafa}.vs-datatable.vs-theme-colorful .vs-table thead th{background:var(--vs-table-header-bg);color:var(--vs-table-header-color);font-weight:600}.vs-datatable.vs-theme-colorful .vs-pagination-button.vs-active{background:linear-gradient(135deg,var(--vs-primary),var(--vs-secondary))}.vs-datatable.vs-theme-corporate{--vs-primary: #1e3a8a;--vs-secondary: #64748b;--vs-success: #059669;--vs-danger: #dc2626;--vs-warning: #d97706;--vs-info: #0891b2;--vs-light: #f8fafc;--vs-dark: #1e293b;--vs-table-bg: #ffffff;--vs-table-border: #e2e8f0;--vs-table-header-bg: #f1f5f9;--vs-table-header-color: #334155;--vs-table-hover-bg: #f8fafc;--vs-table-stripe-bg: #ffffff;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.vs-datatable.vs-theme-corporate .vs-table{border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.vs-datatable.vs-theme-corporate .vs-table thead th{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:16px 20px}.vs-datatable.vs-theme-corporate .vs-table tbody td{padding:16px 20px;font-size:14px}.vs-datatable.vs-theme-compact{--vs-spacing-xs: 2px;--vs-spacing-sm: 4px;--vs-spacing-md: 8px;--vs-spacing-lg: 12px;--vs-spacing-xl: 16px;--vs-font-size: 12px;--vs-font-size-sm: 10px;--vs-font-size-lg: 14px}.vs-datatable.vs-theme-compact .vs-table thead th{padding:var(--vs-spacing-sm) var(--vs-spacing-md);font-size:var(--vs-font-size-sm)}.vs-datatable.vs-theme-compact .vs-table tbody td{padding:var(--vs-spacing-sm) var(--vs-spacing-md);font-size:var(--vs-font-size)}.vs-datatable.vs-theme-compact .vs-pagination-button{min-width:24px;height:24px;font-size:var(--vs-font-size-sm)}.vs-datatable.vs-theme-rounded{--vs-border-radius: 12px;--vs-border-radius-sm: 6px;--vs-border-radius-lg: 16px}.vs-datatable.vs-theme-rounded .vs-table-container{border-radius:var(--vs-border-radius);overflow:hidden}.vs-datatable.vs-theme-rounded .vs-table thead th:first-child{border-top-left-radius:var(--vs-border-radius)}.vs-datatable.vs-theme-rounded .vs-table thead th:last-child{border-top-right-radius:var(--vs-border-radius)}.vs-datatable.vs-theme-rounded .vs-pagination-button{border-radius:var(--vs-border-radius-sm)}.vs-datatable.vs-theme-brand{--vs-primary: #ff6b35;--vs-secondary: #004e89;--vs-success: #00a896;--vs-danger: #e63946;--vs-warning: #f77f00;--vs-info: #06a77d}.vs-datatable.vs-theme-brand .vs-table-container{border:2px solid var(--vs-primary);border-radius:16px;box-shadow:0 8px 32px #ff6b3533}.vs-datatable.vs-theme-brand .vs-table thead th{background:linear-gradient(135deg,var(--vs-primary),var(--vs-secondary));color:#fff;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.1)}.vs-datatable.vs-theme-brand .vs-pagination-button.vs-active{background:var(--vs-primary);transform:scale(1.05)}.vs-datatable.vs-theme-brand .vs-pagination-button:hover:not(:disabled){border-color:var(--vs-primary);transform:translateY(-1px)}
|
|
2
|
+
/*$vite$:1*/`,document.head.appendChild(P);function R(t,s){return s.split(".").reduce((o,a)=>o?.[a],t)??""}function u(t,s,o="id"){return typeof o=="function"?o(t,s):t[o]||s}function T(t,s,o="id"){return s.some(a=>u(a,-1,o)===u(t,-1,o))}function I(t,s){return t.length+(s?1:0)}function O(t,s){if(!s.length)return t;const o=(a,l)=>l.split(".").reduce((r,i)=>r?.[i],a)??"";return[...t].sort((a,l)=>{for(const{field:r,order:i}of s){const d=o(a,r),f=o(l,r);if(d!==f)return i==="asc"?d>f?1:-1:d<f?1:-1}return 0})}function M(t,s,o){if(!o)return t;const a=(s-1)*o,l=a+o;return t.slice(a,l)}function H(t,s,o){const a=(t-1)*s+1,l=Math.min(t*s,o);return{start:a,end:l}}function _(t,s){return Math.ceil(t/s)}function L(t,s,o){if(!s||s.trim()==="")return t;const a=s.toLowerCase();return t.filter(l=>Object.values(l).some(r=>String(r??"").toLowerCase().includes(a)))}const A=["id"],K=["disabled"],j={key:1,class:"vs-pagination-ellipsis"},F=["id","onClick"],q={key:2,class:"vs-pagination-ellipsis"},U=["disabled"],Y=e.defineComponent({__name:"VsPagination",props:{modelValue:{},totalRecords:{},rowsPerPage:{},tablename:{},maxVisible:{},paginationClass:{}},emits:["update:modelValue","page-changed"],setup(t,{emit:s}){const o=t,a=s,l=o.maxVisible??3,r=e.computed({get:()=>o.modelValue,set:p=>{a("update:modelValue",p),a("page-changed",p)}}),i=e.computed(()=>r.value<=Math.floor(l/2)?1:r.value>=f.value-Math.floor(l/2)?Math.max(f.value-l+1,1):r.value-Math.floor(l/2)),d=e.computed(()=>Math.min(i.value+l-1,f.value)),f=e.computed(()=>_(o.totalRecords,o.rowsPerPage)),x=e.computed(()=>{const p=[];for(let c=i.value;c<=d.value;c++)p.push(c);return p}),m=p=>{p>=1&&p<=f.value&&(r.value=p)},E=()=>{r.value>1&&r.value--},B=()=>{r.value<f.value&&r.value++};return(p,c)=>(e.openBlock(),e.createElementBlock("div",{class:"vs-pagination",id:t.tablename+"-pagination"},[e.createElementVNode("button",{onClick:E,type:"button",class:"vs-pagination-button vs-pagination-nav",disabled:r.value===1}," ‹‹ ",8,K),i.value>1?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"vs-pagination-button",onClick:c[0]||(c[0]=n=>m(1))}," 1 ")):e.createCommentVNode("",!0),i.value>2?(e.openBlock(),e.createElementBlock("span",j,"...")):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,n=>(e.openBlock(),e.createElementBlock("button",{key:n,type:"button",class:e.normalizeClass(["vs-pagination-button",{"vs-active":r.value===n}]),id:t.tablename+"-page-"+n,onClick:v=>m(n)},e.toDisplayString(n),11,F))),128)),d.value<f.value-1?(e.openBlock(),e.createElementBlock("span",q,"...")):e.createCommentVNode("",!0),d.value<f.value?(e.openBlock(),e.createElementBlock("button",{key:3,type:"button",class:"vs-pagination-button",onClick:c[1]||(c[1]=n=>m(f.value))},e.toDisplayString(f.value),1)):e.createCommentVNode("",!0),e.createElementVNode("button",{onClick:B,type:"button",class:"vs-pagination-button vs-pagination-nav",disabled:r.value===f.value}," ›› ",8,U)],8,A))}}),N=(t,s)=>{const o=t.__vccOpts||t;for(const[a,l]of s)o[a]=l;return o},Z=N(Y,[["__scopeId","data-v-dd26d1ca"]]),Q={class:"vs-search"},G=["placeholder","value"],J=N(e.defineComponent({__name:"VsSearch",props:{modelValue:{},placeholder:{}},emits:["update:modelValue","input-typed"],setup(t,{emit:s}){const o=s,a=l=>{const r=l.target;o("update:modelValue",r.value),o("input-typed",r.value)};return(l,r)=>(e.openBlock(),e.createElementBlock("div",Q,[r[0]||(r[0]=e.createElementVNode("div",{class:"vs-search-icon"},[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24px",viewBox:"0 -960 960 960",width:"24px",fill:"#e3e3e3"},[e.createElementVNode("path",{d:"M784-120 532-372q-30 24-69 38t-83 14q-109 0-184.5-75.5T120-580q0-109 75.5-184.5T380-840q109 0 184.5 75.5T640-580q0 44-14 83t-38 69l252 252-56 56ZM380-400q75 0 127.5-52.5T560-580q0-75-52.5-127.5T380-760q-75 0-127.5 52.5T200-580q0 75 52.5 127.5T380-400Z"})])],-1)),e.createElementVNode("input",{type:"text",class:"vs-search-input",placeholder:t.placeholder,value:t.modelValue,onInput:a},null,40,G)]))}}),[["__scopeId","data-v-5ef0abcd"]]),W={class:"vs-rows-per-page"},X=["value"],ee=["value"],te=N(e.defineComponent({__name:"VsRowsPerPage",props:{modelValue:{},options:{}},emits:["update:modelValue","rows-per-page-changed"],setup(t,{emit:s}){const o=t,a=s,l=o.options??[10,25,50,100],r=i=>{const d=Number(i.target.value);a("update:modelValue",d),a("rows-per-page-changed",d)};return(i,d)=>(e.openBlock(),e.createElementBlock("div",W,[d[0]||(d[0]=e.createElementVNode("span",{class:"vs-rows-label"},"Items Per Page",-1)),e.createElementVNode("select",{class:"vs-items-dropdown",value:t.modelValue,onChange:r},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),f=>(e.openBlock(),e.createElementBlock("option",{key:f,value:f},e.toDisplayString(f),9,ee))),128))],40,X)]))}}),[["__scopeId","data-v-dd11bb0e"]]);function ae(t,s,o,a,l){const r=e.ref(1),i=e.ref(t.sort??[]);e.watch(()=>t.sort,c=>{c&&(i.value=[...c])},{deep:!0});const d=e.computed(()=>t.serverOptions?.sort??i.value??[]);return{sortedRows:e.computed(()=>{let c=t.rows;return l.value&&(c=L(c,l.value)),d.value.length&&(c=O(c,d.value)),t.rowsPerPage&&(c=M(c,o.value,a.value)),c}),activeSort:d,sortHelpers:{isColumnSorted:c=>d.value.some(n=>n.field===c),getSortPriority:c=>{const n=d.value.find(v=>v.field===c);return n?n.priority??null:null},getSortOrder:c=>d.value.find(n=>n.field===c)?.order??null,handleSort:(c,n)=>{let v=[];t.serverOptions?v=[...t.serverOptions.sort??[]]:t.sort&&(v=[...t.sort]);const h=v.findIndex(y=>y.field===c);n.shiftKey?h===-1?v.push({field:c,order:"asc"}):v[h]?.order==="asc"?v[h].order="desc":v.splice(h,1):h===-1?v=[{field:c,order:"asc"}]:v[h]?.order==="asc"?v=[{field:c,order:"desc"}]:v=[],v=v.map((y,w)=>({...y,priority:w+1})),t.serverOptions?s("update:serverOptions",{...t.serverOptions,sort:v}):s("update:sort",v),o.value=r.value,s("sort-changed",{sort:v})}}}}function se(t,s,o,a,l){const r=e.computed({get:()=>t.serverItemsLength!==void 0?t.serverItemsLength:l.value.length,set:m=>{t.serverItemsLength!==void 0&&s("update:serverItemsLength",m)}}),i=e.computed({get:()=>t.serverOptions?.page??o.value,set:m=>{t.serverOptions?s("update:serverOptions",{...t.serverOptions,page:m}):o.value=m}}),d=e.computed(()=>{const m=a.value;return H(o.value,m,r.value)}),f=m=>{t.serverOptions&&s("update:serverOptions",{...t.serverOptions,page:m}),s("page-updated",m)};return{currentPage:i,totalRecords:r,recordRange:d,handlePageChange:f,paginationHelpers:{page:o,totalRecords:r,recordRange:d,handlePageChange:f}}}function oe(t,s,o,a){const l=e.computed({get:()=>a.value,set:i=>a.value=i});return e.watch(a,i=>{const d=t.serverItemsLength??t.rows.length,f=_(d,i);o.value>f?o.value=f||1:o.value<1&&(o.value=1)}),{vsRowsPerPage:l,handleRowsPerPage:i=>{a.value=i,s("rows-per-page-changed",i)}}}function re(t,s){const o=i=>{s.value=i,t("input-typed",i)};return{searchQuery:s,onInputTyped:o,clearSearch:()=>{s.value="",t("input-typed","")},setSearchQuery:i=>{s.value=i,t("input-typed",i)},searchHelpers:{searchQuery:s,onInputTyped:o}}}function ne(t,s){const o=e.ref(1),a=e.ref(t.serverOptions?.rowsPerPage??t.rowsPerPage),l=e.ref(""),{sortedRows:r,sortHelpers:i}=ae(t,s,o,a,l),{totalRecords:d,recordRange:f,handlePageChange:x}=se(t,s,o,a,r),{handleRowsPerPage:m}=oe(t,s,o,a),{onInputTyped:E}=re(s,l);return{page:o,totalRecords:d,recordRange:f,handlePageChange:x,rowsPerPage:a,handleRowsPerPage:m,sortedRows:r,sortHelpers:i,searchQuery:l,onInputTyped:E}}function le(t,s){const o=e.ref(t.itemSelected||[]);e.watch(()=>t.itemSelected,n=>{n?o.value=[...n]:o.value=[]},{immediate:!0,deep:!0});const a=e.computed({get:()=>o.value,set:n=>{o.value=n,s("update:itemSelected",n)}}),l=e.computed(()=>t.itemSelected!==null),r=e.computed(()=>t.rows.length>0&&a.value.length===t.rows.length),i=e.computed(()=>!t.rows.length||!a.value.length?!1:!r.value&&t.rows.some((n,v)=>a.value.some((h,y)=>u(h,y,t.rowKey)===u(n,v,t.rowKey)))),d=(n,v)=>{const h=u(n,v,t.rowKey);a.value.some((w,z)=>u(w,z,t.rowKey)===h)?(a.value=a.value.filter((w,z)=>u(w,z,t.rowKey)!==h),s("row-deselected",n,v)):(a.value=[...a.value,n],s("row-selected",n,v))},f=n=>{const v=n.target;a.value=v.checked?[...t.rows]:[],s("all-rows-selected",a.value)};return{selectedItems:a,isItemSelectedControlled:l,isAllChecked:r,isSomeChecked:i,toggleRow:d,toggleAll:f,selectRow:(n,v)=>{T(n,a.value,t.rowKey)||(a.value=[...a.value,n],s("row-selected",n,v))},deselectRow:(n,v)=>{const h=u(n,v,t.rowKey);a.value=a.value.filter((y,w)=>u(y,w,t.rowKey)!==h),s("row-deselected",n,v)},selectAll:()=>{a.value=[...t.rows],s("all-rows-selected",a.value)},deselectAll:()=>{a.value=[],s("all-rows-selected",[])},clearSelection:()=>{a.value=[]},selectionHelpers:{selectedItems:a,isItemSelectedControlled:l,isAllChecked:r,isSomeChecked:i,toggleRow:d,toggleAll:f}}}const ie={class:"vs-datatable"},de={key:0,class:"vs-search-container"},ce={ref:"tableResponsiveRef",class:"vs-table-wrapper"},ve={key:0,class:"vs-checkbox-column",style:{width:"5%"}},be={class:"vs-checkbox"},fe=["id","checked","indeterminate"],pe=["for"],ge=["onClick"],me={class:"vs-header-content"},he={class:"vs-header-label"},ue={key:0,class:"vs-sort-icons"},xe={key:1,class:"vs-sort-priority"},ye={key:0},we=["colspan"],ke={key:1},Ve=["colspan"],Ce={class:"vs-no-data-message"},Ee={class:"vs-no-data-description"},Se=["onClick"],Be={class:"vs-checkbox"},ze=["id","value","checked","onChange"],Ne=["for"],Pe={key:1,class:"vs-table-footer"},Re={class:"vs-footer-left"},Te={class:"vs-table-info"},D=N(e.defineComponent({__name:"VsDataTable",props:{rows:{default:()=>[]},itemSelected:{default:null},tablename:{default:"default-table"},sort:{},serverItemsLength:{},serverOptions:{default:null},showHeader:{type:Boolean,default:!0},headerText:{default:""},loading:{type:Boolean,default:!1},columns:{},tableClass:{},rowClass:{},showFooter:{type:Boolean,default:!0},containerClass:{},headerClass:{},cellClass:{},showSearch:{type:Boolean,default:!0},searchClass:{},searchPlaceholder:{default:"Search..."},paginationClass:{},loadingText:{default:"Loading..."},noDataText:{default:"No data available"},noDataDescription:{default:"Try adjusting your search criteria"},entriesText:{default:"entries"},maxVisiblePages:{default:5},rowsPerPage:{default:10},rowKey:{type:[String,Function],default:"id"}},emits:["update:itemSelected","update:serverItemsLength","update:serverOptions","update:sort","input-typed","page-updated","sort-changed","row-click","row-selected","row-deselected","all-rows-selected","table:mounted","table:unmounted","table:before-mount","data-loaded","data-error"],setup(t,{emit:s}){const o=t,a=s,l=e.useAttrs(),r=e.computed(()=>!!l.onRowClick),{page:i,rowsPerPage:d,totalRecords:f,recordRange:x,handlePageChange:m,handleRowsPerPage:E,sortedRows:B,sortHelpers:p,searchQuery:c,onInputTyped:n}=ne(o,a),{selectedItems:v,isItemSelectedControlled:h,isAllChecked:y,isSomeChecked:w,toggleAll:z,toggleRow:De}=le(o,a),$=e.computed(()=>I(o.columns,h.value));return e.onMounted(()=>{a("table:mounted");try{a("data-loaded",o.rows)}catch(S){a("data-error",S)}}),e.onUnmounted(()=>{a("table:unmounted")}),e.onBeforeMount(()=>{a("table:before-mount")}),(S,g)=>(e.openBlock(),e.createElementBlock("div",ie,[t.showSearch?(e.openBlock(),e.createElementBlock("div",de,[e.createVNode(J,{modelValue:e.unref(c),"onUpdate:modelValue":g[0]||(g[0]=b=>e.isRef(c)?c.value=b:null),onInputTyped:e.unref(n),placeholder:t.searchPlaceholder,class:e.normalizeClass(t.searchClass)},null,8,["modelValue","onInputTyped","placeholder","class"]),e.renderSlot(S.$slots,"filterArea",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["vs-table-container",t.containerClass])},[e.createElementVNode("div",ce,[e.createElementVNode("table",{class:e.normalizeClass(["vs-table",t.tableClass])},[e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[e.unref(h)?(e.openBlock(),e.createElementBlock("th",ve,[e.createElementVNode("div",be,[e.createElementVNode("input",{type:"checkbox",id:t.tablename+"-main-checkbox",checked:e.unref(y),indeterminate:e.unref(w),onChange:g[1]||(g[1]=(...b)=>e.unref(z)&&e.unref(z)(...b))},null,40,fe),e.createElementVNode("label",{for:t.tablename+"-main-checkbox"},null,8,pe)])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,b=>(e.openBlock(),e.createElementBlock("th",{key:b.field,onClick:k=>b.sortable?e.unref(p).handleSort(b.field,k):null,style:e.normalizeStyle({width:b.width+"%"}),class:e.normalizeClass([b.sortable?"vs-sortable":"",t.headerClass])},[e.renderSlot(S.$slots,`header-${b.field}`,{column:b},()=>[e.createElementVNode("div",me,[e.createElementVNode("span",he,e.toDisplayString(b.label),1),b.sortable?(e.openBlock(),e.createElementBlock("div",ue,[e.createElementVNode("span",{class:e.normalizeClass(["vs-sort-icon vs-sort-asc",{"vs-active":e.unref(p).isColumnSorted(b.field)&&e.unref(p).getSortOrder(b.field)==="asc"}])},[...g[5]||(g[5]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24px",viewBox:"0 -960 960 960",width:"24px"},[e.createElementVNode("path",{d:"m280-400 200-200 200 200H280Z"})],-1)])],2),e.createElementVNode("span",{class:e.normalizeClass(["vs-sort-icon vs-sort-desc",{"vs-active":e.unref(p).isColumnSorted(b.field)&&e.unref(p).getSortOrder(b.field)==="desc"}])},[...g[6]||(g[6]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24px",viewBox:"0 -960 960 960",width:"24px"},[e.createElementVNode("path",{d:"M480-360 280-560h400L480-360Z"})],-1)])],2)])):e.createCommentVNode("",!0),e.unref(p).getSortPriority(b.field)!==null?(e.openBlock(),e.createElementBlock("span",xe,e.toDisplayString(e.unref(p).getSortPriority(b.field)),1)):e.createCommentVNode("",!0)])],!0)],14,ge))),128))])]),e.createElementVNode("tbody",null,[t.loading?(e.openBlock(),e.createElementBlock("tr",ye,[e.createElementVNode("td",{colspan:$.value,class:"vs-loading"},[g[7]||(g[7]=e.createElementVNode("div",{class:"vs-spinner"},null,-1)),e.createElementVNode("span",null,e.toDisplayString(t.loadingText),1)],8,we)])):e.unref(B).length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(e.unref(B),(b,k)=>(e.openBlock(),e.createElementBlock("tr",{key:e.unref(u)(b,k),class:e.normalizeClass([t.rowClass,{"vs-row-clickable":r.value},{"vs-row-selected":e.unref(T)(b,e.unref(v),t.rowKey)}]),onClick:V=>S.$emit("row-click",b,k)},[e.unref(h)?(e.openBlock(),e.createElementBlock("td",{key:0,onClick:g[2]||(g[2]=e.withModifiers(()=>{},["stop"])),class:"vs-checkbox-column"},[e.createElementVNode("div",Be,[e.createElementVNode("input",{type:"checkbox",id:t.tablename+"-checkbox-"+e.unref(u)(b,k),value:b,checked:e.unref(v).some((V,$e)=>e.unref(u)(V,$e)===e.unref(u)(b,k)),onChange:V=>e.unref(De)(b,k)},null,40,ze),e.createElementVNode("label",{for:t.tablename+"-checkbox-"+e.unref(u)(b,k)},null,8,Ne)])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,V=>(e.openBlock(),e.createElementBlock("td",{key:V.field,class:e.normalizeClass(t.cellClass)},[e.renderSlot(S.$slots,`cell-${V.field}`,{item:b,value:e.unref(R)(b,V.field),column:V,index:k},()=>[e.createTextVNode(e.toDisplayString(e.unref(R)(b,V.field)),1)],!0)],2))),128))],10,Se))),128)):(e.openBlock(),e.createElementBlock("tr",ke,[e.createElementVNode("td",{colspan:$.value,class:"vs-no-data"},[e.renderSlot(S.$slots,"no-data",{},()=>[g[8]||(g[8]=e.createElementVNode("div",{class:"vs-no-data-icon"},[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"currentColor"},[e.createElementVNode("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-5 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z"})])],-1)),e.createElementVNode("div",Ce,e.toDisplayString(t.noDataText),1),e.createElementVNode("div",Ee,e.toDisplayString(t.noDataDescription),1)],!0)],8,Ve)]))])],2)],512)],2),t.showFooter?(e.openBlock(),e.createElementBlock("div",Pe,[e.createElementVNode("div",Re,[e.createVNode(te,{modelValue:e.unref(d),"onUpdate:modelValue":g[3]||(g[3]=b=>e.isRef(d)?d.value=b:null),onRowsPerPageChanged:e.unref(E)},null,8,["modelValue","onRowsPerPageChanged"]),g[9]||(g[9]=e.createElementVNode("div",{class:"vs-divider"},null,-1)),e.createElementVNode("div",Te,e.toDisplayString(e.unref(x).start<1?0:e.unref(x).start)+" - "+e.toDisplayString(e.unref(x).end)+" of "+e.toDisplayString(e.unref(f))+" "+e.toDisplayString(t.entriesText),1)]),e.createVNode(Z,{modelValue:e.unref(i),"onUpdate:modelValue":g[4]||(g[4]=b=>e.isRef(i)?i.value=b:null),totalRecords:e.unref(f),rowsPerPage:e.unref(d),maxVisible:t.maxVisiblePages,tablename:t.tablename,class:e.normalizeClass(t.paginationClass),onPageChanged:e.unref(m)},null,8,["modelValue","totalRecords","rowsPerPage","maxVisible","tablename","class","onPageChanged"])])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-84a43921"]]),_e={install(t){t.component("VsDataTable",D)}};C.VsDataTable=D,C.default=_e,Object.defineProperties(C,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|
package/package.json
CHANGED
package/src/styles/base.scss
CHANGED
|
@@ -252,8 +252,8 @@
|
|
|
252
252
|
|
|
253
253
|
.vs-search-input {
|
|
254
254
|
width: 100%;
|
|
255
|
-
padding: var(--vs-spacing-
|
|
256
|
-
padding-left:
|
|
255
|
+
padding: var(--vs-spacing-md) var(--vs-spacing-md);
|
|
256
|
+
padding-left: 50px;
|
|
257
257
|
border: 1px solid var(--vs-table-border);
|
|
258
258
|
border-radius: var(--vs-border-radius);
|
|
259
259
|
font-size: var(--vs-font-size);
|