@nuralyui/table 0.0.3 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/bundle.js +1497 -0
  2. package/package.json +16 -2
  3. package/react.js +1 -1
  4. package/react.js.map +1 -1
  5. package/table.component.d.ts +85 -12
  6. package/table.component.js +229 -136
  7. package/table.component.js.map +1 -1
  8. package/table.style.js +253 -2
  9. package/table.style.js.map +1 -1
  10. package/table.types.d.ts +22 -4
  11. package/table.types.js +0 -23
  12. package/table.types.js.map +1 -1
  13. package/components/hy-table-actions.d.ts +0 -10
  14. package/components/hy-table-actions.d.ts.map +0 -1
  15. package/components/hy-table-actions.js +0 -39
  16. package/components/hy-table-actions.js.map +0 -1
  17. package/components/hy-table-content.d.ts +0 -25
  18. package/components/hy-table-content.d.ts.map +0 -1
  19. package/components/hy-table-content.js +0 -168
  20. package/components/hy-table-content.js.map +0 -1
  21. package/components/hy-table-filter.d.ts +0 -11
  22. package/components/hy-table-filter.d.ts.map +0 -1
  23. package/components/hy-table-filter.js +0 -59
  24. package/components/hy-table-filter.js.map +0 -1
  25. package/components/hy-table-pagination.d.ts +0 -21
  26. package/components/hy-table-pagination.d.ts.map +0 -1
  27. package/components/hy-table-pagination.js +0 -111
  28. package/components/hy-table-pagination.js.map +0 -1
  29. package/components/table-actions.style.d.ts +0 -2
  30. package/components/table-actions.style.d.ts.map +0 -1
  31. package/components/table-actions.style.js +0 -31
  32. package/components/table-actions.style.js.map +0 -1
  33. package/components/table-actions.variables.d.ts +0 -2
  34. package/components/table-actions.variables.d.ts.map +0 -1
  35. package/components/table-actions.variables.js +0 -13
  36. package/components/table-actions.variables.js.map +0 -1
  37. package/components/table-content.style.d.ts +0 -2
  38. package/components/table-content.style.d.ts.map +0 -1
  39. package/components/table-content.style.js +0 -77
  40. package/components/table-content.style.js.map +0 -1
  41. package/components/table-content.variables.d.ts +0 -2
  42. package/components/table-content.variables.d.ts.map +0 -1
  43. package/components/table-content.variables.js +0 -29
  44. package/components/table-content.variables.js.map +0 -1
  45. package/components/table-filter.style.d.ts +0 -2
  46. package/components/table-filter.style.d.ts.map +0 -1
  47. package/components/table-filter.style.js +0 -39
  48. package/components/table-filter.style.js.map +0 -1
  49. package/components/table-filter.variables.d.ts +0 -2
  50. package/components/table-filter.variables.d.ts.map +0 -1
  51. package/components/table-filter.variables.js +0 -17
  52. package/components/table-filter.variables.js.map +0 -1
  53. package/components/table-pagination.style.d.ts +0 -2
  54. package/components/table-pagination.style.d.ts.map +0 -1
  55. package/components/table-pagination.style.js +0 -102
  56. package/components/table-pagination.style.js.map +0 -1
  57. package/components/table-pagination.variables.d.ts +0 -2
  58. package/components/table-pagination.variables.d.ts.map +0 -1
  59. package/components/table-pagination.variables.js +0 -17
  60. package/components/table-pagination.variables.js.map +0 -1
  61. package/demo/table-demo.d.ts +0 -17
  62. package/demo/table-demo.d.ts.map +0 -1
  63. package/demo/table-demo.js +0 -166
  64. package/demo/table-demo.js.map +0 -1
  65. package/index.d.ts.map +0 -1
  66. package/react.d.ts.map +0 -1
  67. package/table.component.d.ts.map +0 -1
  68. package/table.style.d.ts.map +0 -1
  69. package/table.types.d.ts.map +0 -1
  70. package/test/hy-table-actions_test.d.ts +0 -2
  71. package/test/hy-table-actions_test.d.ts.map +0 -1
  72. package/test/hy-table-actions_test.js +0 -32
  73. package/test/hy-table-actions_test.js.map +0 -1
  74. package/test/hy-table-content_test.d.ts +0 -2
  75. package/test/hy-table-content_test.d.ts.map +0 -1
  76. package/test/hy-table-content_test.js +0 -168
  77. package/test/hy-table-content_test.js.map +0 -1
  78. package/test/hy-table-filter_test.d.ts +0 -2
  79. package/test/hy-table-filter_test.d.ts.map +0 -1
  80. package/test/hy-table-filter_test.js +0 -80
  81. package/test/hy-table-filter_test.js.map +0 -1
  82. package/test/hy-table-pagination_test.d.ts +0 -2
  83. package/test/hy-table-pagination_test.d.ts.map +0 -1
  84. package/test/hy-table-pagination_test.js +0 -114
  85. package/test/hy-table-pagination_test.js.map +0 -1
  86. package/test/hy-table_test.d.ts +0 -2
  87. package/test/hy-table_test.d.ts.map +0 -1
  88. package/test/hy-table_test.js +0 -145
  89. package/test/hy-table_test.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"table.component.js","sourceRoot":"","sources":["../../../src/components/table/table.component.ts"],"names":[],"mappings":"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","sourcesContent":["import styles from './table.style.js';\nimport {LitElement, PropertyValueMap, html, nothing} from 'lit';\nimport {customElement, property, state} from 'lit/decorators.js';\nimport './components/hy-table-actions.js';\nimport './components/hy-table-filter.js';\nimport './components/hy-table-pagination.js';\nimport './components/hy-table-content.js';\nimport {IHeader, SelectionMode, Sizes, SortAttribute, SortOrder, SortValue} from './table.types.js';\n\n@customElement('hy-table')\nexport class HyTable extends LitElement {\n static override styles = styles;\n\n @property({type: Array}) headers!: IHeader[];\n @property({type: Array}) rows: [] = [];\n @property() size = Sizes.Normal;\n @property({type: Boolean}) withFilter = false;\n @property({type: String}) expandable: string | undefined;\n @property() selectionMode: SelectionMode | undefined;\n\n @state() itemPerPage = [5, 10, 15, 20];\n @state() selectedItemPerPage = this.itemPerPage[0];\n @state() displayedRows = [];\n @state() selectedItems: boolean[] = [];\n @state() currentPage!: number;\n @state() rowsCopy: [] = [];\n @state() activeSearch = false;\n @state() sortAttribute: SortAttribute = {index: -1, order: SortOrder.Default};\n\n override connectedCallback(): void {\n super.connectedCallback();\n this._initSelection();\n }\n\n override willUpdate(_changedProperties: PropertyValueMap<this>) {\n if (_changedProperties.has('sortAttribute') && this.sortAttribute.index > -1) {\n this._initPagination();\n this._initSelection();\n }\n if (_changedProperties.has('rowsCopy')) {\n if (this.activeSearch) {\n this._initPagination();\n }\n }\n if (_changedProperties.has('activeSearch') || _changedProperties.has('rows')) {\n if (!this.activeSearch) {\n this.rowsCopy = [...this.rows];\n this._initPagination();\n }\n }\n }\n\n _initSelection() {\n if (this.selectionMode) this.selectedItems = Array(this.rows.length).fill(false);\n }\n _initPagination() {\n if (this.sortAttribute.index > -1) {\n if (this.sortAttribute.order != SortOrder.Default) this._sort();\n else this._resetSort();\n }\n this.displayedRows = this.rowsCopy.slice(0, this.selectedItemPerPage);\n this.currentPage = this.rowsCopy.length > 0 ? 1 : 0;\n }\n\n _handleItemPerPage(itemPerPageEvent: CustomEvent) {\n this.selectedItemPerPage = itemPerPageEvent.detail.selectedItemPerPage;\n this._initPagination();\n }\n\n _handleUpdatePage(updatePageEvent: CustomEvent) {\n this.currentPage = updatePageEvent.detail.page;\n this.displayedRows = this.rowsCopy.slice(\n (updatePageEvent.detail.page - 1) * this.selectedItemPerPage,\n (updatePageEvent.detail.page - 1) * this.selectedItemPerPage + this.selectedItemPerPage\n );\n this.dispatchEvent(new CustomEvent('onPaginate',{bubbles:true,composed:true,detail:{value:this.currentPage}}))\n\n }\n\n _handleCheckAll(checkAllEvent: CustomEvent) {\n const everyItemChecked = checkAllEvent.detail.isEveryItemChecked;\n this.selectedItems = everyItemChecked ? this.selectedItems.map(() => false) : this.selectedItems.map(() => true);\n this.dispatchEvent(new CustomEvent('onSelect',{bubbles:true,composed:true,detail:{value:this.rowsCopy.filter((_,i)=>this.selectedItems[i])}}))\n\n }\n _handleCheckOne(checkOneEvent: CustomEvent) {\n const indexSelected = checkOneEvent.detail.index;\n this.selectedItems[indexSelected + (this.currentPage - 1) * this.selectedItemPerPage] = checkOneEvent.detail.value;\n this.selectedItems = [...this.selectedItems];\n this.dispatchEvent(new CustomEvent('onSelect',{bubbles:true,composed:true,detail:{value:this.rowsCopy.filter((_,i)=>this.selectedItems[i])}}))\n }\n _handleSelectOne(selectOneEvent: CustomEvent) {\n const previousSelected = this.selectedItems.findIndex((isSelected) => isSelected);\n if (previousSelected > -1) {\n this.selectedItems[previousSelected] = false;\n }\n const indexSelected = selectOneEvent.detail.index;\n this.selectedItems[indexSelected + (this.currentPage - 1) * this.selectedItemPerPage] = true;\n this.selectedItems = [...this.selectedItems];\n this.dispatchEvent(new CustomEvent('onSelect',{bubbles:true,composed:true,detail:{value:this.rowsCopy.filter((_,i)=>this.selectedItems[i])}}))\n\n }\n\n _handleCancelSelection() {\n this.selectedItems = this.selectedItems.map(() => false);\n this.dispatchEvent(new CustomEvent('onSelect',{bubbles:true,composed:true,detail:{value:this.selectedItems}}))\n }\n\n _handleSearch(searchEvent: CustomEvent) {\n const searchValue = searchEvent.detail.value;\n if ((searchValue as string).trim().length > 0) {\n this.activeSearch = true;\n this.rowsCopy = this.rows.filter((rowValue) => {\n return Object.values(rowValue).some((attributeValue) => {\n const stringValue = JSON.stringify(attributeValue);\n return stringValue.includes(searchValue);\n });\n }) as [];\n this.dispatchEvent(new CustomEvent('onSearch',{bubbles:true,composed:true,detail:{value:this.rowsCopy}}))\n } else {\n this.activeSearch = false;\n }\n }\n\n _handleSortOrder(sortOrderEvent: CustomEvent) {\n const index = sortOrderEvent.detail.index;\n if (index != this.sortAttribute.index) {\n this.sortAttribute.index = index;\n this.sortAttribute.order = SortOrder.Ascending;\n } else {\n if (this.sortAttribute.order == SortOrder.Default) this.sortAttribute.order = SortOrder.Ascending;\n else if (this.sortAttribute.order == SortOrder.Ascending) this.sortAttribute.order = SortOrder.Descending;\n else this.sortAttribute.order = SortOrder.Default;\n }\n this.sortAttribute = {...this.sortAttribute};\n }\n\n _sort() {\n if (this.rowsCopy.length) {\n const sortOrder =\n this.sortAttribute.order == SortOrder.Default\n ? SortValue.Default\n : this.sortAttribute.order == SortOrder.Ascending\n ? SortValue.Ascending\n : SortValue.Descending;\n this.rowsCopy.sort((a, b) => {\n const stringifyA = JSON.stringify(a[this.headers[this.sortAttribute.index].key]);\n const stringifyB = JSON.stringify(b[this.headers[this.sortAttribute.index].key]);\n const result = stringifyA < stringifyB ? -1 : stringifyA > stringifyB ? 1 : 0;\n return result * sortOrder;\n });\n this.dispatchEvent(new CustomEvent('onSort',{bubbles:true,composed:true,detail:{value:this.rowsCopy}}))\n }\n }\n\n _resetSort() {\n this.rowsCopy.sort((copyA, copyB) => {\n const positionInOriginalArrayA = this.rows.findIndex(\n (originalA) => JSON.stringify(originalA) === JSON.stringify(copyA)\n );\n const positionInOriginalArrayB = this.rows.findIndex(\n (originalB) => JSON.stringify(originalB) === JSON.stringify(copyB)\n );\n return positionInOriginalArrayA > positionInOriginalArrayB\n ? SortValue.Ascending\n : positionInOriginalArrayA < positionInOriginalArrayB\n ? SortValue.Descending\n : SortValue.Default;\n });\n }\n override render() {\n return html`${this.selectionMode && !this.withFilter && this.selectedItems.some((isSelected) => isSelected)\n ? html`<hy-table-actions\n .selectedItems=${this.selectedItems.filter((isSelected) => isSelected).length}\n .size=${this.size}\n @cancel-selection=${this._handleCancelSelection}\n ></hy-table-actions>`\n : this.withFilter\n ? html`\n <div class=\"filter-container\">\n <hy-table-filter @value-change=${this._handleSearch}></hy-table-filter>\n </div>\n `\n : nothing}\n <hy-table-content\n .headers=${this.headers}\n .rows=${this.displayedRows}\n .expandable=${this.expandable && !this.selectionMode ? this.expandable : nothing}\n .selectionMode=${this.selectionMode && !this.withFilter ? this.selectionMode : nothing}\n .selectedItems=${this.selectedItems}\n .currentPage=${this.currentPage}\n .itemPerPage=${this.selectedItemPerPage}\n .sortAttribute=${this.sortAttribute}\n .size=${this.size}\n @check-all=${this._handleCheckAll}\n @check-one=${this._handleCheckOne}\n @select-one=${this._handleSelectOne}\n @update-sort=${this._handleSortOrder}\n ></hy-table-content>\n\n <hy-table-pagination\n .numberOfItems=${this.rowsCopy.length}\n .currentPage=${this.currentPage}\n .itemPerPage=${this.itemPerPage}\n .selectedItemPerPage=${this.selectedItemPerPage}\n .size=${this.size}\n @item-per-page=${this._handleItemPerPage}\n @update-page=${this._handleUpdatePage}\n ></hy-table-pagination> `;\n }\n}\n"]}
1
+ {"version":3,"file":"table.component.js","sourceRoot":"","sources":["../../../src/components/table/table.component.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;;;;;;AAEH,OAAO,EAAE,UAAU,EAAoB,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,MAAM,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAA2D,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEzG,6BAA6B;AAC7B,OAAO,+BAA+B,CAAC;AACvC,OAAO,2BAA2B,CAAC;AAEnC,qBAAqB;AACrB,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,wBAAwB,CAAC;AAKhC,mBAAmB;AACnB,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;;;;;;;;GAiBG;AAEH,IAAa,OAAO,GAApB,MAAa,OAAQ,SAAQ,iBAAiB,CAAC,UAAU,CAAC;IAA1D;;QAI6B,SAAI,GAAU,EAAE,CAAC;QAChB,SAAI,+BAAuB;QAC1B,eAAU,GAAG,KAAK,CAAC;QAIvC,gBAAW,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC9B,wBAAmB,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC1C,kBAAa,GAAU,EAAE,CAAC;QAC1B,kBAAa,GAAc,EAAE,CAAC;QAE9B,aAAQ,GAAU,EAAE,CAAC;QACrB,iBAAY,GAAG,KAAK,CAAC;QACrB,kBAAa,GAAkB,EAAC,KAAK,EAAE,CAAC,CAAC,EAAE,KAAK,mCAAmB,EAAC,CAAC;QACrE,WAAM,GAAc,EAAE,CAAC;QACvB,oBAAe,GAAG,KAAK,CAAC;QACxB,gBAAW,GAAG,YAAY,CAAC;QAK3B,uBAAkB,GAAG,CAAC,WAAW,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QAEtE,cAAc;QACN,wBAAmB,GAAG,IAAI,wBAAwB,CAAC,IAAI,CAAC,CAAC;QACzD,yBAAoB,GAAG,IAAI,yBAAyB,CAAC,IAAI,CAAC,CAAC;QAC3D,mBAAc,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC/C,qBAAgB,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAqO7D,CAAC;IAnOU,iBAAiB;QACxB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,mBAAmB,CAAC,aAAa,EAAE,CAAC;IAC3C,CAAC;IAEQ,OAAO,CAAC,kBAAsE;;QACrF,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,kBAAkB,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,kBAAkB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,EAAE;YACrJ,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAkB,CAAC;YAEzC,oDAAoD;YACpD,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC;YACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC7F,MAAM,qBAAqB,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAE7E,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,IAAI,qBAAqB,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE;gBAC/F,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;gBACxB,QAAQ,CAAC,aAAa,GAAG,KAAK,CAAC;aAChC;iBAAM,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE;gBACjE,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;gBACzB,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC;aAC/B;iBAAM;gBACL,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;gBACzB,QAAQ,CAAC,aAAa,GAAG,KAAK,CAAC;aAChC;SACF;QACD,IAAI,IAAI,CAAC,eAAe,IAAI,kBAAkB,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE;YACrE,MAAA,MAAA,IAAI,CAAC,UAAU,0CAAE,aAAa,CAAC,OAAO,CAAC,0CAAE,KAAK,EAAE,CAAC;SAClD;IACH,CAAC;IAEQ,UAAU,CAAC,kBAA0C;QAC5D,IAAI,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YAClC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACnD;QACD,IAAI,kBAAkB,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,EAAE;YACjF,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,mBAAmB,CAAC,aAAa,EAAE,CAAC;SAC1C;QACD,IAAI,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;YACtC,IAAI,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,EAAE;gBAC1C,IAAI,CAAC,eAAe,EAAE,CAAC;aACxB;SACF;QACD,IAAI,kBAAkB,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YAC5E,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,EAAE;gBAC3C,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/B,IAAI,CAAC,eAAe,EAAE,CAAC;aACxB;SACF;IACH,CAAC;IAED;;OAEG;IACK,eAAe;QACrB,IAAI,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,EAAE;YACtC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,EAAE;gBACxC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;aAC5B;iBAAM;gBACL,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;aACjC;SACF;QACD,IAAI,CAAC,oBAAoB,CAAC,cAAc,EAAE,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,kBAAkB,CAAC,gBAA6B;QAC9C,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,IAAI,gBAAgB,CAAC,MAAM,CAAC,mBAAmB,CAAC;QAC3F,IAAI,CAAC,oBAAoB,CAAC,uBAAuB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,eAA4B;QAC5C,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,aAA0B;QACxC,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,aAAa,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IACnF,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,aAA0B;QACxC,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClG,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,cAA2B;QAC1C,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACxE,CAAC;IAED;;OAEG;IACH,sBAAsB;QACpB,IAAI,CAAC,mBAAmB,CAAC,eAAe,EAAE,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,WAAwB;QACpC,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,cAA2B;QAC1C,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,KAAa;QACxC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACK,kBAAkB;QACxB,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC;IAC/C,CAAC;IAED;;OAEG;IACK,wBAAwB,CAAC,KAAY;QAC3C,IAAI,CAAC,WAAW,GAAI,KAAK,CAAC,MAA2B,CAAC,KAAK,CAAC;QAC5D,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACM,MAAM;QACb,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACjF,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,GAAG,CAAC;YACnC,CAAC,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,GAAG,CAAC;YAC5E,CAAC,CAAC,CAAC,CAAC;QACN,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM;YAChF,CAAC,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB;YAC7C,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QACzB,MAAM,UAAU,GAAG,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QACjD,MAAM,cAAc,GAAG,QAAQ,GAAG,CAAC,CAAC;QAEpC,OAAO,IAAI,CAAA;QACP,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE;YACjF,CAAC,CAAC,qBAAqB,CAAC;gBACpB,aAAa,EAAE,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,EAAE;gBAC1D,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE;aACvD,CAAC;YACJ,CAAC,CAAC,IAAI,CAAC,UAAU;gBACjB,CAAC,CAAC,IAAI,CAAA;;gBAEE,oBAAoB,CAAC;oBACrB,SAAS,EAAE,IAAI,CAAC,eAAe;oBAC/B,KAAK,EAAE,IAAI,CAAC,WAAW;oBACvB,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE;oBAC9C,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC;iBAClD,CAAC;;WAEL;gBACH,CAAC,CAAC,OAAO;;;UAGP,qBAAqB,CAAC;YACtB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,aAAa;YACxB,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;YAChF,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;YACtF,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,WAAW,EAAE,IAAI,CAAC,mBAAmB;YACrC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,UAAU,EAAE,GAAG,EAAE;gBACf,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC;gBACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC5F,MAAM,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;gBACxE,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;gBACzF,IAAI,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,kBAAkB,EAAE,EAAiB,CAAC,CAAC;YAC1E,CAAC;YACD,UAAU,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,CAAiB,CAAC,MAAM,CAAC,OAAO,EAAE,EAAiB,CAAC;YAC9H,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAiB,CAAC;YACnF,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAiB,CAAC;YACpF,qBAAqB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;SACnE,CAAC;;;QAGF,wBAAwB,CAAC;YACzB,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YACnC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;YAC7C,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,aAAa;YACb,QAAQ;YACR,MAAM;YACN,UAAU;YACV,cAAc;YACd,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;YACtD,UAAU,EAAE,GAAG,EAAE;gBACf,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnB,IAAI,CAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,EAAiB,CAAC,CAAC;YAChF,CAAC;YACD,cAAc,EAAE,GAAG,EAAE;gBACnB,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnB,IAAI,CAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,EAAiB,CAAC,CAAC;YAChF,CAAC;SACF,CAAC;KACH,CAAC;IACJ,CAAC;CACF,CAAA;AAnQiB,cAAM,GAAG,MAAO,CAAA;AAEL;IAA1B,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;wCAAqB;AACpB;IAA1B,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;qCAAkB;AAChB;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;qCAA4B;AAC1B;IAA5B,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;2CAAoB;AACpB;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;2CAAgC;AAC/B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;8CAA0C;AAE5D;IAAR,KAAK,EAAE;4CAA+B;AAC9B;IAAR,KAAK,EAAE;oDAA2C;AAC1C;IAAR,KAAK,EAAE;8CAA2B;AAC1B;IAAR,KAAK,EAAE;8CAA+B;AAC9B;IAAR,KAAK,EAAE;4CAAsB;AACrB;IAAR,KAAK,EAAE;yCAAsB;AACrB;IAAR,KAAK,EAAE;6CAAsB;AACrB;IAAR,KAAK,EAAE;8CAAsE;AACrE;IAAR,KAAK,EAAE;uCAAwB;AACvB;IAAR,KAAK,EAAE;gDAAyB;AACxB;IAAR,KAAK,EAAE;4CAA4B;AAGpC;IADC,KAAK,CAAC,eAAe,CAAC;4CACG;AAvBf,OAAO;IADnB,aAAa,CAAC,UAAU,CAAC;GACb,OAAO,CAoQnB;SApQY,OAAO","sourcesContent":["/**\n * @license\n * Copyright 2023 Nuraly, Laabidi Aymen\n * SPDX-License-Identifier: MIT\n */\n\nimport { LitElement, PropertyValueMap, html, nothing } from 'lit';\nimport { customElement, property, state, query } from 'lit/decorators.js';\nimport { NuralyUIBaseMixin } from '../../shared/base-mixin.js';\nimport styles from './table.style.js';\nimport { IHeader, SelectionMode, Sizes, SortAttribute, SortOrder, EMPTY_STRING } from './table.types.js';\n\n// Import required components\nimport '../select/select.component.js';\nimport '../icon/icon.component.js';\n\n// Import controllers\nimport {\n TableSelectionController,\n TablePaginationController,\n TableSortController,\n TableFilterController\n} from './controllers/index.js';\n\n// Import interfaces\nimport { TableHost } from './interfaces/index.js';\n\n// Import templates\nimport {\n renderPaginationTemplate,\n renderContentTemplate,\n renderActionsTemplate,\n renderFilterTemplate\n} from './templates/index.js';\n\n/**\n * Advanced table component with sorting, filtering, pagination, and selection capabilities.\n * \n * @example\n * ```html\n * <nr-table\n * .headers=${headers}\n * .rows=${data}\n * size=\"normal\"\n * selectionMode=\"multiple\">\n * </nr-table>\n * ```\n * \n * @fires onPaginate - Fired when pagination changes\n * @fires onSelect - Fired when row selection changes\n * @fires onSearch - Fired when search/filter is applied\n * @fires onSort - Fired when sorting is applied\n */\n@customElement('nr-table')\nexport class HyTable extends NuralyUIBaseMixin(LitElement) implements TableHost {\n static override styles = styles;\n\n @property({ type: Array }) headers!: IHeader[];\n @property({ type: Array }) rows: any[] = [];\n @property({ type: String }) size: Sizes = Sizes.Normal;\n @property({ type: Boolean }) withFilter = false;\n @property({ type: String }) expandable: string | undefined;\n @property({ type: String }) selectionMode: SelectionMode | undefined;\n\n @state() itemPerPage = [5, 10, 15, 20];\n @state() selectedItemPerPage = this.itemPerPage[0];\n @state() displayedRows: any[] = [];\n @state() selectedItems: boolean[] = [];\n @state() currentPage!: number;\n @state() rowsCopy: any[] = [];\n @state() activeSearch = false;\n @state() sortAttribute: SortAttribute = {index: -1, order: SortOrder.Default};\n @state() expand: boolean[] = [];\n @state() showFilterInput = false;\n @state() filterValue = EMPTY_STRING;\n\n @query('#global-check')\n globalCheck?: HTMLElement;\n\n override requiredComponents = ['hy-select', 'nr-icon', 'nr-checkbox'];\n\n // Controllers\n private selectionController = new TableSelectionController(this);\n private paginationController = new TablePaginationController(this);\n private sortController = new TableSortController(this);\n private filterController = new TableFilterController(this);\n\n override connectedCallback(): void {\n super.connectedCallback();\n this.selectionController.initSelection();\n }\n\n override updated(_changedProperties: PropertyValueMap<this> | Map<PropertyKey, unknown>): void {\n if (this.globalCheck && (_changedProperties.has('selectedItems') || _changedProperties.has('currentPage') || _changedProperties.has('displayedRows'))) {\n const checkbox = this.globalCheck as any;\n \n // Get the selection state for the current page only\n const startIndex = (this.currentPage - 1) * this.selectedItemPerPage;\n const endIndex = Math.min(startIndex + this.displayedRows.length, this.selectedItems.length);\n const currentPageSelections = this.selectedItems.slice(startIndex, endIndex);\n \n if (currentPageSelections.length > 0 && currentPageSelections.every((isSelected) => isSelected)) {\n checkbox.checked = true;\n checkbox.indeterminate = false;\n } else if (currentPageSelections.some((isSelected) => isSelected)) {\n checkbox.checked = false;\n checkbox.indeterminate = true;\n } else {\n checkbox.checked = false;\n checkbox.indeterminate = false;\n }\n }\n if (this.showFilterInput && _changedProperties.has('showFilterInput')) {\n this.shadowRoot?.querySelector('input')?.focus();\n }\n }\n\n override willUpdate(_changedProperties: PropertyValueMap<this>) {\n if (_changedProperties.has('rows')) {\n this.expand = Array(this.rows.length).fill(false);\n }\n if (_changedProperties.has('sortAttribute') && this.sortController.isSortActive()) {\n this._initPagination();\n this.selectionController.initSelection();\n }\n if (_changedProperties.has('rowsCopy')) {\n if (this.filterController.isSearchActive()) {\n this._initPagination();\n }\n }\n if (_changedProperties.has('activeSearch') || _changedProperties.has('rows')) {\n if (!this.filterController.isSearchActive()) {\n this.rowsCopy = [...this.rows];\n this._initPagination();\n }\n }\n }\n\n /**\n * Initialize or reset pagination state\n */\n private _initPagination() {\n if (this.sortController.isSortActive()) {\n if (!this.sortController.isSortDefault()) {\n this.sortController.sort();\n } else {\n this.sortController.resetSort();\n }\n }\n this.paginationController.initPagination();\n }\n\n /**\n * Handle items per page change event\n */\n _handleItemPerPage(itemPerPageEvent: CustomEvent) {\n const value = itemPerPageEvent.detail.value || itemPerPageEvent.detail.selectedItemPerPage;\n this.paginationController.handleItemPerPageChange(Number(value));\n }\n\n /**\n * Handle page navigation event\n */\n _handleUpdatePage(updatePageEvent: CustomEvent) {\n this.paginationController.handlePageChange(updatePageEvent.detail.page);\n }\n\n /**\n * Handle check all rows event\n */\n _handleCheckAll(checkAllEvent: CustomEvent) {\n this.selectionController.handleCheckAll(checkAllEvent.detail.isEveryItemChecked);\n }\n\n /**\n * Handle check single row event\n */\n _handleCheckOne(checkOneEvent: CustomEvent) {\n this.selectionController.handleCheckOne(checkOneEvent.detail.index, checkOneEvent.detail.value);\n }\n\n /**\n * Handle select single row event (radio button mode)\n */\n _handleSelectOne(selectOneEvent: CustomEvent) {\n this.selectionController.handleSelectOne(selectOneEvent.detail.index);\n }\n\n /**\n * Handle cancel selection action\n */\n _handleCancelSelection() {\n this.selectionController.cancelSelection();\n }\n\n /**\n * Handle search/filter input\n */\n _handleSearch(searchEvent: CustomEvent) {\n this.filterController.handleSearch(searchEvent.detail.value);\n }\n\n /**\n * Handle column sort order change\n */\n _handleSortOrder(sortOrderEvent: CustomEvent) {\n this.sortController.handleSortOrderChange(sortOrderEvent.detail.index);\n }\n\n /**\n * Toggle expanded content for a row\n */\n private _showExpandedContent(index: number) {\n this.expand[index] = !this.expand[index];\n this.requestUpdate();\n }\n\n /**\n * Toggle filter input visibility\n */\n private _toggleFilterInput() {\n this.showFilterInput = !this.showFilterInput;\n }\n\n /**\n * Handle filter input change\n */\n private _handleFilterInputChange(event: Event) {\n this.filterValue = (event.target as HTMLInputElement).value;\n this.filterController.handleSearch(this.filterValue);\n }\n\n /**\n * Render the table component with all templates\n */\n override render() {\n const numberOfPages = Math.ceil(this.rowsCopy.length / this.selectedItemPerPage);\n const fromItem = this.currentPage > 0 \n ? this.currentPage * this.selectedItemPerPage - this.selectedItemPerPage + 1 \n : 0;\n const toItem = this.currentPage * this.selectedItemPerPage <= this.rowsCopy.length\n ? this.currentPage * this.selectedItemPerPage\n : this.rowsCopy.length;\n const enableNext = toItem < this.rowsCopy.length;\n const enablePrevious = fromItem > 1;\n\n return html`\n ${this.selectionMode && !this.withFilter && this.selectionController.hasSelection()\n ? renderActionsTemplate({\n selectedItems: this.selectionController.getSelectedCount(),\n size: this.size,\n onCancelSelection: () => this._handleCancelSelection()\n })\n : this.withFilter\n ? html`\n <div class=\"filter-container\">\n ${renderFilterTemplate({\n showInput: this.showFilterInput,\n value: this.filterValue,\n onToggleInput: () => this._toggleFilterInput(),\n onChange: (e) => this._handleFilterInputChange(e)\n })}\n </div>\n `\n : nothing}\n\n <div class=\"table-content-wrapper\">\n ${renderContentTemplate({\n headers: this.headers,\n rows: this.displayedRows,\n expandable: this.expandable && !this.selectionMode ? this.expandable : undefined,\n selectionMode: this.selectionMode && !this.withFilter ? this.selectionMode : undefined,\n selectedItems: this.selectedItems,\n currentPage: this.currentPage,\n itemPerPage: this.selectedItemPerPage,\n sortAttribute: this.sortAttribute,\n expand: this.expand,\n onCheckAll: () => {\n const startIndex = (this.currentPage - 1) * this.selectedItemPerPage;\n const endIndex = Math.min(startIndex + this.selectedItemPerPage, this.selectedItems.length);\n const currentPageItems = this.selectedItems.slice(startIndex, endIndex);\n const isEveryItemChecked = currentPageItems.every(i => i) && currentPageItems.length > 0;\n this._handleCheckAll({ detail: { isEveryItemChecked } } as CustomEvent);\n },\n onCheckOne: (e, index) => this._handleCheckOne({ detail: { index, value: (e as CustomEvent).detail.checked } } as CustomEvent),\n onSelectOne: (index) => this._handleSelectOne({ detail: { index } } as CustomEvent),\n onUpdateSort: (index) => this._handleSortOrder({ detail: { index } } as CustomEvent),\n onShowExpandedContent: (index) => this._showExpandedContent(index)\n })}\n </div>\n\n ${renderPaginationTemplate({\n numberOfItems: this.rowsCopy.length,\n itemPerPage: this.itemPerPage,\n selectedItemPerPage: this.selectedItemPerPage,\n currentPage: this.currentPage,\n size: this.size,\n numberOfPages,\n fromItem,\n toItem,\n enableNext,\n enablePrevious,\n onItemPerPageChange: (e) => this._handleItemPerPage(e),\n onNextPage: () => {\n this.currentPage++;\n this._handleUpdatePage({ detail: { page: this.currentPage } } as CustomEvent);\n },\n onPreviousPage: () => {\n this.currentPage--;\n this._handleUpdatePage({ detail: { page: this.currentPage } } as CustomEvent);\n }\n })}\n `;\n }\n}\n"]}
package/table.style.js CHANGED
@@ -3,12 +3,263 @@ export default css `
3
3
  :host {
4
4
  display: block;
5
5
  width: 100%;
6
- font-family: Arial, sans-serif;
6
+ font-family: var(--nuraly-font-family, Arial, sans-serif);
7
+ color: var(--nuraly-color-text);
8
+ background-color: var(--nuraly-color-background);
7
9
  }
10
+
11
+ /* Filter Container Styles */
8
12
  .filter-container {
9
13
  display: flex;
10
- justify-content: end;
14
+ justify-content: flex-end;
11
15
  width: 100%;
16
+ padding: var(--nuraly-spacing-2, 0.5rem) 0;
17
+ position: relative;
18
+ margin-bottom: 5px;
19
+ }
20
+
21
+ .filter-container input {
22
+ padding: 5px;
23
+ padding-left: 30px;
24
+ width: 100%;
25
+ box-sizing: border-box;
26
+ background-color: var(--nuraly-table-filter-background, #ffffff);
27
+ color: var(--nuraly-table-filter-text, #000000);
28
+ }
29
+
30
+ .filter-container input:focus {
31
+ outline-style: none;
32
+ border: 1px solid var(--nuraly-table-filter-border, #1890ff);
33
+ }
34
+
35
+ .filter-container .icon-container {
36
+ height: 25px;
37
+ width: 35px;
38
+ cursor: pointer;
39
+ display: flex;
40
+ justify-content: center;
41
+ align-items: center;
42
+ }
43
+
44
+ .filter-container .search-icon {
45
+ position: absolute;
46
+ left: 10px;
47
+ top: 25%;
48
+ }
49
+
50
+ /* Actions Bar Styles */
51
+ .actions-container {
52
+ background-color: var(--nuraly-table-action-color, #0f62fe);
53
+ padding: 10px;
54
+ box-sizing: border-box;
55
+ display: flex;
56
+ justify-content: space-between;
57
+ color: var(--nuraly-table-background, #ffffff);
58
+ }
59
+
60
+ .actions-container button {
61
+ cursor: pointer;
62
+ border: none;
63
+ color: var(--nuraly-table-background, #ffffff);
64
+ background-color: var(--nuraly-table-action-color, #0f62fe);
65
+ }
66
+
67
+ .actions-container[data-size='small'] {
68
+ padding: 5px;
69
+ }
70
+
71
+ .actions-container[data-size='large'] {
72
+ padding: 15px;
73
+ }
74
+
75
+ /* Table Content Wrapper Styles */
76
+ .table-content-wrapper {
77
+ display: block;
78
+ overflow: auto;
79
+ }
80
+
81
+ input[type='checkbox'][data-indeterminate='true']::after {
82
+ width: 13px;
83
+ height: 13px;
84
+ background-color: var(--nuraly-table-checkbox-checked, #161616);
85
+ color: var(--nuraly-table-background, #ffffff);
86
+ display: flex;
87
+ justify-content: center;
88
+ align-items: center;
89
+ content: '-';
90
+ }
91
+
92
+ /* Table Styles */
93
+ table {
94
+ width: 100%;
95
+ border-spacing: 0px;
96
+ color: var(--nuraly-table-text-color);
97
+ }
98
+
99
+ td {
100
+ text-align: center;
101
+ border-bottom: var(--nuraly-table-border-width, 1px) solid var(--nuraly-table-row-border-color, #f0f0f0);
102
+ padding: 10px;
103
+ }
104
+
105
+ th {
106
+ cursor: pointer;
107
+ padding: 10px;
108
+ }
109
+
110
+ th span {
111
+ display: flex;
112
+ justify-content: center;
113
+ gap: 10px;
114
+ }
115
+
116
+ nr-icon {
117
+ display: flex;
118
+ justify-content: center;
119
+ align-items: center;
120
+ --nuraly-icon-color: var(--nuraly-table-text-color);
121
+ }
122
+
123
+ tr {
124
+ background-color: var(--nuraly-table-row-background, #ffffff);
125
+ }
126
+
127
+ tr:hover {
128
+ background-color: var(--nuraly-table-row-hover-background, #f5f5f5);
129
+ }
130
+
131
+ tr:first-child {
132
+ background-color: var(--nuraly-table-header-background, #fafafa);
133
+ }
134
+
135
+ tr:has(:not(th) > input:checked) {
136
+ background-color: var(--nuraly-table-row-selected-background, #e6f7ff);
137
+ }
138
+
139
+ input,
140
+ .expand-icon {
141
+ cursor: pointer;
142
+ accent-color: var(--nuraly-table-checkbox-checked, #1890ff);
143
+ }
144
+
145
+ /* Size Variants for Table Content */
146
+ :host([size='small']) td,
147
+ :host([size='small']) th {
148
+ padding: 5px;
149
+ }
150
+
151
+ :host([size='large']) td,
152
+ :host([size='large']) th {
153
+ padding: 15px;
154
+ }
155
+
156
+ /* Pagination Styles */
157
+ .pagination-container {
158
+ display: flex;
159
+ justify-content: space-between;
160
+ background-color: var(--nuraly-pagination-background-color);
161
+ color: var(--nuraly-pagination-text-color);
162
+ }
163
+
164
+ .pagination-container .left-content {
165
+ display: flex;
166
+ justify-content: space-between;
167
+ }
168
+
169
+ .pagination-container .left-content .items-details {
170
+ border-left: var(--nuraly-pagination-borders);
171
+ padding: 10px;
172
+ }
173
+
174
+ .pagination-container .left-content .select-details {
175
+ display: flex;
176
+ align-items: center;
177
+ gap: 8px;
178
+ padding: 10px;
179
+ }
180
+
181
+ .pagination-container .left-content .select-details label {
182
+ font-size: var(--nuraly-font-size-input, 14px);
183
+ color: var(--nuraly-table-pagination-text, #000000);
184
+ white-space: nowrap;
185
+ }
186
+
187
+ .pagination-container .left-content .select-details hy-select {
188
+ min-width: 80px;
189
+ --select-border-color: var(--nuraly-table-border-color, #d9d9d9);
190
+ --select-background: var(--nuraly-table-pagination-background, #fafafa);
191
+ --select-text-color: var(--nuraly-table-pagination-text, #000000);
192
+ }
193
+
194
+ .pagination-container .right-content {
195
+ display: flex;
196
+ justify-content: space-between;
197
+ border-left: var(--nuraly-pagination-borders);
198
+ }
199
+
200
+ .pagination-container .right-content .icon-container {
201
+ display: flex;
202
+ justify-content: space-between;
203
+ border-left: var(--nuraly-pagination-borders);
204
+ }
205
+
206
+ .pagination-container .right-content .page-details {
207
+ padding: 10px;
208
+ }
209
+
210
+ .pagination-container .icon-container .left-arrow,
211
+ .pagination-container .icon-container .right-arrow {
212
+ padding: 10px;
213
+ --nuraly-icon-color: var(--nuraly-pagination-text-color);
214
+ }
215
+
216
+ .pagination-container .icon-container .left-arrow {
217
+ border-right: var(--nuraly-pagination-borders);
218
+ }
219
+
220
+ .pagination-container nr-icon[data-enabled='false'] {
221
+ cursor: not-allowed;
222
+ }
223
+
224
+ .pagination-container nr-icon[data-enabled='true'] {
225
+ cursor: pointer;
226
+ }
227
+
228
+ /* Size Variants for Pagination */
229
+ .pagination-container[data-size='small'] .left-content .items-details {
230
+ padding: 5px;
231
+ }
232
+
233
+ .pagination-container[data-size='large'] .left-content .items-details {
234
+ padding: 15px;
235
+ }
236
+
237
+ .pagination-container[data-size='small'] .left-content .select-details {
238
+ padding: 5px;
239
+ gap: 6px;
240
+ }
241
+
242
+ .pagination-container[data-size='large'] .left-content .select-details {
243
+ padding: 15px;
244
+ gap: 10px;
245
+ }
246
+
247
+ .pagination-container[data-size='small'] .right-content .page-details {
248
+ padding: 5px;
249
+ }
250
+
251
+ .pagination-container[data-size='large'] .right-content .page-details {
252
+ padding: 15px;
253
+ }
254
+
255
+ .pagination-container[data-size='small'] .icon-container .left-arrow,
256
+ .pagination-container[data-size='small'] .icon-container .right-arrow {
257
+ padding: 5px;
258
+ }
259
+
260
+ .pagination-container[data-size='large'] .icon-container .left-arrow,
261
+ .pagination-container[data-size='large'] .icon-container .right-arrow {
262
+ padding: 15px;
12
263
  }
13
264
  `;
14
265
  //# sourceMappingURL=table.style.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"table.style.js","sourceRoot":"","sources":["../../../src/components/table/table.style.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AAExB,eAAe,GAAG,CAAA;;;;;;;;;;;CAWjB,CAAC","sourcesContent":["import {css} from 'lit';\n\nexport default css`\n :host {\n display: block;\n width: 100%;\n font-family: Arial, sans-serif;\n }\n .filter-container {\n display: flex;\n justify-content: end;\n width: 100%;\n }\n`;\n"]}
1
+ {"version":3,"file":"table.style.js","sourceRoot":"","sources":["../../../src/components/table/table.style.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,eAAe,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsQjB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport default css`\n :host {\n display: block;\n width: 100%;\n font-family: var(--nuraly-font-family, Arial, sans-serif);\n color: var(--nuraly-color-text);\n background-color: var(--nuraly-color-background);\n }\n\n /* Filter Container Styles */\n .filter-container {\n display: flex;\n justify-content: flex-end;\n width: 100%;\n padding: var(--nuraly-spacing-2, 0.5rem) 0;\n position: relative;\n margin-bottom: 5px;\n }\n\n .filter-container input {\n padding: 5px;\n padding-left: 30px;\n width: 100%;\n box-sizing: border-box;\n background-color: var(--nuraly-table-filter-background, #ffffff);\n color: var(--nuraly-table-filter-text, #000000);\n }\n\n .filter-container input:focus {\n outline-style: none;\n border: 1px solid var(--nuraly-table-filter-border, #1890ff);\n }\n\n .filter-container .icon-container {\n height: 25px;\n width: 35px;\n cursor: pointer;\n display: flex;\n justify-content: center;\n align-items: center;\n }\n\n .filter-container .search-icon {\n position: absolute;\n left: 10px;\n top: 25%;\n }\n\n /* Actions Bar Styles */\n .actions-container {\n background-color: var(--nuraly-table-action-color, #0f62fe);\n padding: 10px;\n box-sizing: border-box;\n display: flex;\n justify-content: space-between;\n color: var(--nuraly-table-background, #ffffff);\n }\n\n .actions-container button {\n cursor: pointer;\n border: none;\n color: var(--nuraly-table-background, #ffffff);\n background-color: var(--nuraly-table-action-color, #0f62fe);\n }\n\n .actions-container[data-size='small'] {\n padding: 5px;\n }\n\n .actions-container[data-size='large'] {\n padding: 15px;\n }\n\n /* Table Content Wrapper Styles */\n .table-content-wrapper {\n display: block;\n overflow: auto;\n }\n\n input[type='checkbox'][data-indeterminate='true']::after {\n width: 13px;\n height: 13px;\n background-color: var(--nuraly-table-checkbox-checked, #161616);\n color: var(--nuraly-table-background, #ffffff);\n display: flex;\n justify-content: center;\n align-items: center;\n content: '-';\n }\n\n /* Table Styles */\n table {\n width: 100%;\n border-spacing: 0px;\n color: var(--nuraly-table-text-color);\n }\n\n td {\n text-align: center;\n border-bottom: var(--nuraly-table-border-width, 1px) solid var(--nuraly-table-row-border-color, #f0f0f0);\n padding: 10px;\n }\n\n th {\n cursor: pointer;\n padding: 10px;\n }\n\n th span {\n display: flex;\n justify-content: center;\n gap: 10px;\n }\n\n nr-icon {\n display: flex;\n justify-content: center;\n align-items: center;\n --nuraly-icon-color: var(--nuraly-table-text-color);\n }\n\n tr {\n background-color: var(--nuraly-table-row-background, #ffffff);\n }\n\n tr:hover {\n background-color: var(--nuraly-table-row-hover-background, #f5f5f5);\n }\n\n tr:first-child {\n background-color: var(--nuraly-table-header-background, #fafafa);\n }\n\n tr:has(:not(th) > input:checked) {\n background-color: var(--nuraly-table-row-selected-background, #e6f7ff);\n }\n\n input,\n .expand-icon {\n cursor: pointer;\n accent-color: var(--nuraly-table-checkbox-checked, #1890ff);\n }\n\n /* Size Variants for Table Content */\n :host([size='small']) td,\n :host([size='small']) th {\n padding: 5px;\n }\n\n :host([size='large']) td,\n :host([size='large']) th {\n padding: 15px;\n }\n\n /* Pagination Styles */\n .pagination-container {\n display: flex;\n justify-content: space-between;\n background-color: var(--nuraly-pagination-background-color);\n color: var(--nuraly-pagination-text-color);\n }\n\n .pagination-container .left-content {\n display: flex;\n justify-content: space-between;\n }\n\n .pagination-container .left-content .items-details {\n border-left: var(--nuraly-pagination-borders);\n padding: 10px;\n }\n\n .pagination-container .left-content .select-details {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px;\n }\n\n .pagination-container .left-content .select-details label {\n font-size: var(--nuraly-font-size-input, 14px);\n color: var(--nuraly-table-pagination-text, #000000);\n white-space: nowrap;\n }\n\n .pagination-container .left-content .select-details hy-select {\n min-width: 80px;\n --select-border-color: var(--nuraly-table-border-color, #d9d9d9);\n --select-background: var(--nuraly-table-pagination-background, #fafafa);\n --select-text-color: var(--nuraly-table-pagination-text, #000000);\n }\n\n .pagination-container .right-content {\n display: flex;\n justify-content: space-between;\n border-left: var(--nuraly-pagination-borders);\n }\n\n .pagination-container .right-content .icon-container {\n display: flex;\n justify-content: space-between;\n border-left: var(--nuraly-pagination-borders);\n }\n\n .pagination-container .right-content .page-details {\n padding: 10px;\n }\n\n .pagination-container .icon-container .left-arrow,\n .pagination-container .icon-container .right-arrow {\n padding: 10px;\n --nuraly-icon-color: var(--nuraly-pagination-text-color);\n }\n\n .pagination-container .icon-container .left-arrow {\n border-right: var(--nuraly-pagination-borders);\n }\n\n .pagination-container nr-icon[data-enabled='false'] {\n cursor: not-allowed;\n }\n\n .pagination-container nr-icon[data-enabled='true'] {\n cursor: pointer;\n }\n\n /* Size Variants for Pagination */\n .pagination-container[data-size='small'] .left-content .items-details {\n padding: 5px;\n }\n\n .pagination-container[data-size='large'] .left-content .items-details {\n padding: 15px;\n }\n\n .pagination-container[data-size='small'] .left-content .select-details {\n padding: 5px;\n gap: 6px;\n }\n\n .pagination-container[data-size='large'] .left-content .select-details {\n padding: 15px;\n gap: 10px;\n }\n\n .pagination-container[data-size='small'] .right-content .page-details {\n padding: 5px;\n }\n\n .pagination-container[data-size='large'] .right-content .page-details {\n padding: 15px;\n }\n\n .pagination-container[data-size='small'] .icon-container .left-arrow,\n .pagination-container[data-size='small'] .icon-container .right-arrow {\n padding: 5px;\n }\n\n .pagination-container[data-size='large'] .icon-container .left-arrow,\n .pagination-container[data-size='large'] .icon-container .right-arrow {\n padding: 15px;\n }\n`;\n"]}
package/table.types.d.ts CHANGED
@@ -1,26 +1,44 @@
1
+ /**
2
+ * Table header configuration
3
+ */
1
4
  export interface IHeader {
2
5
  name: string;
3
6
  key: string;
4
7
  }
5
- export declare enum SelectionMode {
8
+ /**
9
+ * Selection mode for table rows
10
+ */
11
+ export declare const enum SelectionMode {
6
12
  Single = "single",
7
13
  Multiple = "multiple"
8
14
  }
9
- export declare enum Sizes {
15
+ /**
16
+ * Table size variants
17
+ */
18
+ export declare const enum Sizes {
10
19
  Small = "small",
11
20
  Normal = "normal",
12
21
  Large = "large"
13
22
  }
14
- export declare enum SortOrder {
23
+ /**
24
+ * Sort order states
25
+ */
26
+ export declare const enum SortOrder {
15
27
  Default = "default",
16
28
  Ascending = "ascending",
17
29
  Descending = "descending"
18
30
  }
19
- export declare enum SortValue {
31
+ /**
32
+ * Sort direction values
33
+ */
34
+ export declare const enum SortValue {
20
35
  Default = 0,
21
36
  Ascending = 1,
22
37
  Descending = -1
23
38
  }
39
+ /**
40
+ * Sort attribute configuration
41
+ */
24
42
  export interface SortAttribute {
25
43
  index: number;
26
44
  order: SortOrder;
package/table.types.js CHANGED
@@ -1,25 +1,2 @@
1
- export var SelectionMode;
2
- (function (SelectionMode) {
3
- SelectionMode["Single"] = "single";
4
- SelectionMode["Multiple"] = "multiple";
5
- })(SelectionMode || (SelectionMode = {}));
6
- export var Sizes;
7
- (function (Sizes) {
8
- Sizes["Small"] = "small";
9
- Sizes["Normal"] = "normal";
10
- Sizes["Large"] = "large";
11
- })(Sizes || (Sizes = {}));
12
- export var SortOrder;
13
- (function (SortOrder) {
14
- SortOrder["Default"] = "default";
15
- SortOrder["Ascending"] = "ascending";
16
- SortOrder["Descending"] = "descending";
17
- })(SortOrder || (SortOrder = {}));
18
- export var SortValue;
19
- (function (SortValue) {
20
- SortValue[SortValue["Default"] = 0] = "Default";
21
- SortValue[SortValue["Ascending"] = 1] = "Ascending";
22
- SortValue[SortValue["Descending"] = -1] = "Descending";
23
- })(SortValue || (SortValue = {}));
24
1
  export const EMPTY_STRING = '';
25
2
  //# sourceMappingURL=table.types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"table.types.js","sourceRoot":"","sources":["../../../src/components/table/table.types.ts"],"names":[],"mappings":"AAKA,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,kCAAiB,CAAA;IACjB,sCAAqB,CAAA;AACvB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED,MAAM,CAAN,IAAY,KAIX;AAJD,WAAY,KAAK;IACf,wBAAe,CAAA;IACf,0BAAiB,CAAA;IACjB,wBAAe,CAAA;AACjB,CAAC,EAJW,KAAK,KAAL,KAAK,QAIhB;AAED,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,gCAAmB,CAAA;IACnB,oCAAuB,CAAA;IACvB,sCAAyB,CAAA;AAC3B,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB;AACD,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,+CAAW,CAAA;IACX,mDAAa,CAAA;IACb,sDAAe,CAAA;AACjB,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB;AAMD,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAC","sourcesContent":["export interface IHeader {\n name: string;\n key: string;\n}\n\nexport enum SelectionMode {\n Single = 'single',\n Multiple = 'multiple',\n}\n\nexport enum Sizes {\n Small = 'small',\n Normal = 'normal',\n Large = 'large',\n}\n\nexport enum SortOrder {\n Default = 'default',\n Ascending = 'ascending',\n Descending = 'descending',\n}\nexport enum SortValue {\n Default = 0,\n Ascending = 1,\n Descending = -1,\n}\n\nexport interface SortAttribute {\n index: number;\n order: SortOrder;\n}\nexport const EMPTY_STRING = '';\n"]}
1
+ {"version":3,"file":"table.types.js","sourceRoot":"","sources":["../../../src/components/table/table.types.ts"],"names":[],"mappings":"AAmDA,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAC","sourcesContent":["/**\n * Table header configuration\n */\nexport interface IHeader {\n name: string;\n key: string;\n}\n\n/**\n * Selection mode for table rows\n */\nexport const enum SelectionMode {\n Single = 'single',\n Multiple = 'multiple',\n}\n\n/**\n * Table size variants\n */\nexport const enum Sizes {\n Small = 'small',\n Normal = 'normal',\n Large = 'large',\n}\n\n/**\n * Sort order states\n */\nexport const enum SortOrder {\n Default = 'default',\n Ascending = 'ascending',\n Descending = 'descending',\n}\n\n/**\n * Sort direction values\n */\nexport const enum SortValue {\n Default = 0,\n Ascending = 1,\n Descending = -1,\n}\n\n/**\n * Sort attribute configuration\n */\nexport interface SortAttribute {\n index: number;\n order: SortOrder;\n}\n\nexport const EMPTY_STRING = '';\n"]}
@@ -1,10 +0,0 @@
1
- import { LitElement } from 'lit';
2
- import { Sizes } from '../table.types.js';
3
- export declare class HyTableActions extends LitElement {
4
- selectedItems: number;
5
- size: Sizes;
6
- _onCancelSelection(): void;
7
- render(): import("lit").TemplateResult<1>;
8
- static styles: import("lit").CSSResult[];
9
- }
10
- //# sourceMappingURL=hy-table-actions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hy-table-actions.d.ts","sourceRoot":"","sources":["../../../../src/components/table/components/hy-table-actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAO,MAAM,KAAK,CAAC;AAGrC,OAAO,EAAC,KAAK,EAAC,MAAM,mBAAmB,CAAC;AAExC,qBACa,cAAe,SAAQ,UAAU;IAChC,aAAa,EAAG,MAAM,CAAC;IACK,IAAI,EAAE,KAAK,CAAgB;IAEnE,kBAAkB;IAGT,MAAM;IAQf,OAAgB,MAAM,4BAAU;CACjC"}
@@ -1,39 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { LitElement, html } from 'lit';
8
- import { customElement, property } from 'lit/decorators.js';
9
- import { styles } from './table-actions.style.js';
10
- import { Sizes } from '../table.types.js';
11
- let HyTableActions = class HyTableActions extends LitElement {
12
- constructor() {
13
- super(...arguments);
14
- this.size = Sizes.Normal;
15
- }
16
- _onCancelSelection() {
17
- this.dispatchEvent(new CustomEvent('cancel-selection'));
18
- }
19
- render() {
20
- return html `
21
- <div class="actions-container">
22
- <span>${this.selectedItems} selected</span>
23
- <button @click=${this._onCancelSelection}>Cancel</button>
24
- </div>
25
- `;
26
- }
27
- };
28
- HyTableActions.styles = styles;
29
- __decorate([
30
- property()
31
- ], HyTableActions.prototype, "selectedItems", void 0);
32
- __decorate([
33
- property({ type: Sizes, reflect: true })
34
- ], HyTableActions.prototype, "size", void 0);
35
- HyTableActions = __decorate([
36
- customElement('hy-table-actions')
37
- ], HyTableActions);
38
- export { HyTableActions };
39
- //# sourceMappingURL=hy-table-actions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hy-table-actions.js","sourceRoot":"","sources":["../../../../src/components/table/components/hy-table-actions.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAC,UAAU,EAAE,IAAI,EAAC,MAAM,KAAK,CAAC;AACrC,OAAO,EAAC,aAAa,EAAE,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAC,MAAM,EAAC,MAAM,0BAA0B,CAAC;AAChD,OAAO,EAAC,KAAK,EAAC,MAAM,mBAAmB,CAAC;AAGxC,IAAa,cAAc,GAA3B,MAAa,cAAe,SAAQ,UAAU;IAA9C;;QAE0C,SAAI,GAAU,KAAK,CAAC,MAAM,CAAC;IAcrE,CAAC;IAZC,kBAAkB;QAChB,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC1D,CAAC;IACQ,MAAM;QACb,OAAO,IAAI,CAAA;;gBAEC,IAAI,CAAC,aAAa;yBACT,IAAI,CAAC,kBAAkB;;KAE3C,CAAC;IACJ,CAAC;CAEF,CAAA;AADiB,qBAAM,GAAG,MAAO,CAAA;AAdpB;IAAX,QAAQ,EAAE;qDAAwB;AACK;IAAvC,QAAQ,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;4CAA4B;AAFxD,cAAc;IAD1B,aAAa,CAAC,kBAAkB,CAAC;GACrB,cAAc,CAgB1B;SAhBY,cAAc","sourcesContent":["import {LitElement, html} from 'lit';\nimport {customElement, property} from 'lit/decorators.js';\nimport {styles} from './table-actions.style.js';\nimport {Sizes} from '../table.types.js';\n\n@customElement('hy-table-actions')\nexport class HyTableActions extends LitElement {\n @property() selectedItems!: number;\n @property({type: Sizes, reflect: true}) size: Sizes = Sizes.Normal;\n\n _onCancelSelection() {\n this.dispatchEvent(new CustomEvent('cancel-selection'));\n }\n override render() {\n return html`\n <div class=\"actions-container\">\n <span>${this.selectedItems} selected</span>\n <button @click=${this._onCancelSelection}>Cancel</button>\n </div>\n `;\n }\n static override styles = styles;\n}\n"]}
@@ -1,25 +0,0 @@
1
- import { LitElement, PropertyValueMap } from 'lit';
2
- import { SelectionMode, Sizes, SortAttribute } from '../table.types.js';
3
- export declare class HyTableContent extends LitElement {
4
- headers: [];
5
- rows: [];
6
- size: Sizes;
7
- expandable: string | undefined;
8
- selectionMode: SelectionMode | undefined;
9
- selectedItems: boolean[];
10
- currentPage: number;
11
- itemPerPage: number;
12
- sortAttribute: SortAttribute;
13
- expand: boolean[];
14
- globalCheck: HTMLInputElement;
15
- willUpdate(changedProperties: Map<string, this>): void;
16
- updated(_changedProperties: PropertyValueMap<this> | Map<PropertyKey, unknown>): void;
17
- _showExpandedContent(index: number): void;
18
- _onCheckAll(): void;
19
- _onCheckOne(checkOneEvent: Event, index: number): void;
20
- _onSelectOne(index: number): void;
21
- _onUpdateSortOrder(index: number): void;
22
- render(): import("lit").TemplateResult<1>;
23
- static styles: import("lit").CSSResult[];
24
- }
25
- //# sourceMappingURL=hy-table-content.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hy-table-content.d.ts","sourceRoot":"","sources":["../../../../src/components/table/components/hy-table-content.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,gBAAgB,EAAgB,MAAM,KAAK,CAAC;AAMhE,OAAO,EAAU,aAAa,EAAE,KAAK,EAAE,aAAa,EAAY,MAAM,mBAAmB,CAAC;AAE1F,qBACa,cAAe,SAAQ,UAAU;IACnB,OAAO,EAAG,EAAE,CAAC;IACb,IAAI,EAAG,EAAE,CAAC;IACK,IAAI,EAAG,KAAK,CAAC;IAC3B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,aAAa,EAAE,aAAa,GAAG,SAAS,CAAC;IACzC,aAAa,EAAE,OAAO,EAAE,CAAM;IAC9B,WAAW,EAAG,MAAM,CAAC;IACrB,WAAW,EAAG,MAAM,CAAC;IACrB,aAAa,EAAG,aAAa,CAAC;IACjC,MAAM,EAAE,OAAO,EAAE,CAAM;IAEhC,WAAW,EAAG,gBAAgB,CAAC;IAEtB,UAAU,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC;IAK/C,OAAO,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,GAAG,IAAI;IAe9F,oBAAoB,CAAC,KAAK,EAAE,MAAM;IAKlC,WAAW;IAUX,WAAW,CAAC,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM;IAK/C,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,kBAAkB,CAAC,KAAK,EAAE,MAAM;IAIvB,MAAM;IAmFf,OAAgB,MAAM,4BAAU;CACjC"}