@indico-data/design-system 2.50.0 → 2.51.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/lib/components/tanstackTable/TankstackTable.types.d.ts +40 -0
  2. package/lib/components/tanstackTable/TanstackTable.stories.d.ts +15 -0
  3. package/lib/components/tanstackTable/TanstakTable.d.ts +4 -0
  4. package/lib/components/tanstackTable/__tests__/TanstackTable.test.d.ts +1 -0
  5. package/lib/components/tanstackTable/__tests__/__mocks__/test-mock-data.d.ts +8 -0
  6. package/lib/components/tanstackTable/components/ActionBar/ActionBar.d.ts +17 -0
  7. package/lib/components/tanstackTable/components/ActionBar/ActionBar.stories.d.ts +10 -0
  8. package/lib/components/tanstackTable/components/ActionBar/__tests__/ActionBar.test.d.ts +1 -0
  9. package/lib/components/tanstackTable/components/ActionBar/index.d.ts +1 -0
  10. package/lib/components/tanstackTable/components/NoResults/NoResults.d.ts +7 -0
  11. package/lib/components/tanstackTable/components/NoResults/__tests__/NoResult.test.d.ts +1 -0
  12. package/lib/components/tanstackTable/components/NoResults/index.d.ts +1 -0
  13. package/lib/components/tanstackTable/components/TableBody/TableBody.d.ts +12 -0
  14. package/lib/components/tanstackTable/components/TableBody/index.d.ts +1 -0
  15. package/lib/components/tanstackTable/components/TableHeader/TableHeader.d.ts +6 -0
  16. package/lib/components/tanstackTable/components/TableHeader/index.d.ts +1 -0
  17. package/lib/components/tanstackTable/components/TablePagination/TablePagination.d.ts +9 -0
  18. package/lib/components/tanstackTable/components/TablePagination/__tests__/TablePagination.test.d.ts +1 -0
  19. package/lib/components/tanstackTable/components/TablePagination/index.d.ts +1 -0
  20. package/lib/components/tanstackTable/docs/pinnedColumns/PinnedColumn.stories.d.ts +7 -0
  21. package/lib/components/tanstackTable/docs/withRowClick/WithRowClick.stories.d.ts +7 -0
  22. package/lib/components/tanstackTable/helpers.d.ts +830 -0
  23. package/lib/components/tanstackTable/index.d.ts +2 -0
  24. package/lib/components/tanstackTable/mock-data/mock-data.d.ts +14 -0
  25. package/lib/components/tanstackTable/mock-data/table-configuration.d.ts +3 -0
  26. package/lib/components/tanstackTable/useTanstackTable.d.ts +16 -0
  27. package/lib/index.css +247 -0
  28. package/lib/index.d.ts +62 -17
  29. package/lib/index.esm.css +247 -0
  30. package/lib/index.esm.js +20455 -56
  31. package/lib/index.esm.js.map +1 -1
  32. package/lib/index.js +20455 -55
  33. package/lib/index.js.map +1 -1
  34. package/package.json +2 -1
  35. package/src/components/tanstackTable/TankstackTable.types.ts +39 -0
  36. package/src/components/tanstackTable/TanstackTable.mdx +122 -0
  37. package/src/components/tanstackTable/TanstackTable.stories.tsx +260 -0
  38. package/src/components/tanstackTable/TanstakTable.tsx +157 -0
  39. package/src/components/tanstackTable/__tests__/TanstackTable.test.tsx +87 -0
  40. package/src/components/tanstackTable/__tests__/__mocks__/test-mock-data.tsx +83 -0
  41. package/src/components/tanstackTable/components/ActionBar/ActionBar.mdx +10 -0
  42. package/src/components/tanstackTable/components/ActionBar/ActionBar.scss +30 -0
  43. package/src/components/tanstackTable/components/ActionBar/ActionBar.stories.tsx +98 -0
  44. package/src/components/tanstackTable/components/ActionBar/ActionBar.tsx +51 -0
  45. package/src/components/tanstackTable/components/ActionBar/__tests__/ActionBar.test.tsx +87 -0
  46. package/src/components/tanstackTable/components/ActionBar/index.ts +1 -0
  47. package/src/components/tanstackTable/components/NoResults/NoResults.scss +24 -0
  48. package/src/components/tanstackTable/components/NoResults/NoResults.tsx +22 -0
  49. package/src/components/tanstackTable/components/NoResults/__tests__/NoResult.test.tsx +25 -0
  50. package/src/components/tanstackTable/components/NoResults/index.ts +1 -0
  51. package/src/components/tanstackTable/components/TableBody/TableBody.tsx +87 -0
  52. package/src/components/tanstackTable/components/TableBody/index.ts +1 -0
  53. package/src/components/tanstackTable/components/TableHeader/TableHeader.tsx +49 -0
  54. package/src/components/tanstackTable/components/TableHeader/index.ts +1 -0
  55. package/src/components/tanstackTable/components/TablePagination/TablePagination.tsx +45 -0
  56. package/src/components/tanstackTable/components/TablePagination/__tests__/TablePagination.test.tsx +18 -0
  57. package/src/components/tanstackTable/components/TablePagination/index.ts +1 -0
  58. package/src/components/tanstackTable/docs/pinnedColumns/PinnedColumn.mdx +34 -0
  59. package/src/components/tanstackTable/docs/pinnedColumns/PinnedColumn.stories.tsx +40 -0
  60. package/src/components/tanstackTable/docs/withRowClick/WithRowClick.mdx +48 -0
  61. package/src/components/tanstackTable/docs/withRowClick/WithRowClick.stories.tsx +32 -0
  62. package/src/components/tanstackTable/helpers.ts +45 -0
  63. package/src/components/tanstackTable/index.ts +2 -0
  64. package/src/components/tanstackTable/mock-data/mock-data.ts +256 -0
  65. package/src/components/tanstackTable/mock-data/table-configuration.tsx +219 -0
  66. package/src/components/tanstackTable/styles/_variables.scss +35 -0
  67. package/src/components/tanstackTable/styles/table.scss +204 -0
  68. package/src/components/tanstackTable/styles/test.scss +19 -0
  69. package/src/components/tanstackTable/tanstack-table.d.ts +18 -0
  70. package/src/components/tanstackTable/useTanstackTable.tsx +42 -0
  71. package/src/index.ts +1 -0
  72. package/src/legacy/components/loading-indicators/CirclePulse/CirclePulse.tsx +1 -0
  73. package/src/styles/index.scss +1 -0
package/lib/index.esm.css CHANGED
@@ -1962,6 +1962,253 @@ form {
1962
1962
  border-color: var(--pf-error-color);
1963
1963
  }
1964
1964
 
1965
+ :root [data-theme=light] {
1966
+ --pf-tanstack-table-background-color: var(--pf-white-color);
1967
+ --pf-tanstack-table-font-color: var(--pf-gray-color);
1968
+ --pf-tanstack-table-border-color: var(--pf-gray-color-200);
1969
+ --pf-tanstack-table-stripe-color: var(--pf-gray-color-100);
1970
+ --pf-tanstack-table-hover-color: var(--pf-gray-color-200);
1971
+ --pf-tanstack-table-disabled-color: var(--pf-gray-color-300);
1972
+ --pf-tanstack-table-checked-color: var(--pf-secondary-color-950);
1973
+ --pf-tanstack-table-clicked-color: var(--pf-secondary-color-100);
1974
+ --pf-tanstack-table-highlighted-color: var(--pf-gray-color-200);
1975
+ --pf-tanstack-table-highlighted-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2),
1976
+ 0 8px 16px rgba(0, 0, 0, 0.2);
1977
+ --pf-tanstack-table-font-size: var(--pf-font-size-body2);
1978
+ }
1979
+
1980
+ :root [data-theme=dark],
1981
+ :root {
1982
+ --pf-tanstack-table-background-color: var(--pf-primary-color-800);
1983
+ --pf-tanstack-table-font-color: var(--pf-white-color);
1984
+ --pf-tanstack-table-border-color: var(--pf-tertiary-color-800);
1985
+ --pf-tanstack-table-stripe-color: var(--pf-primary-color-700);
1986
+ --pf-tanstack-table-hover-color: var(--pf-primary-color-600);
1987
+ --pf-tanstack-table-disabled-color: var(--pf-gray-color-900);
1988
+ --pf-tanstack-table-disabled-button-color: var(--pf-primary-color-100);
1989
+ --pf-tanstack-table-checked-color: var(--pf-secondary-color-950);
1990
+ --pf-tanstack-table-clicked-color: var(--pf-primary-color);
1991
+ --pf-tanstack-table-highlighted-color: var(--pf-primary-color);
1992
+ --pf-tanstack-table-highlighted-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4),
1993
+ 0 8px 16px rgba(0, 0, 0, 0.3);
1994
+ --pf-tanstack-table-font-size: var(--pf-font-size-body2);
1995
+ --pf-tanstack-table-pagination-background-color: var(--pf-primary-color-700);
1996
+ }
1997
+
1998
+ .tanstack-table__action-bar-test {
1999
+ left: 20% !important;
2000
+ }
2001
+
2002
+ .tanstack-table__action-bar-docs {
2003
+ bottom: unset !important;
2004
+ top: 50% !important;
2005
+ transform: translate(-50%, -50%) !important;
2006
+ }
2007
+
2008
+ .tanstack-table__column.is-pinned {
2009
+ opacity: 1;
2010
+ }
2011
+ .tanstack-table__column.is-not-pinned {
2012
+ opacity: 0.3;
2013
+ }
2014
+
2015
+ .tanstack-table__action-bar {
2016
+ position: fixed;
2017
+ bottom: 170px;
2018
+ left: 50%;
2019
+ transform: translateX(-50%);
2020
+ z-index: 90;
2021
+ }
2022
+ .tanstack-table__action-bar__container {
2023
+ display: flex;
2024
+ align-items: center;
2025
+ gap: var(--pf-size-2);
2026
+ }
2027
+ .tanstack-table__action-bar__text-container {
2028
+ padding: var(--pf-padding-2);
2029
+ }
2030
+ .tanstack-table__action-bar__text-container span {
2031
+ font-size: var(--pf-font-size-base);
2032
+ font-weight: var(--pf-font-weight-medium);
2033
+ line-height: var(--pf-line-height-lg);
2034
+ color: var(--pf-white-color);
2035
+ }
2036
+ .tanstack-table__action-bar__button-container {
2037
+ display: flex;
2038
+ align-items: center;
2039
+ gap: var(--pf-size-4);
2040
+ }
2041
+
2042
+ .tanstack-table__no-results {
2043
+ display: flex;
2044
+ justify-content: center;
2045
+ flex-direction: column;
2046
+ align-items: center;
2047
+ position: sticky;
2048
+ left: 0;
2049
+ margin: var(--pf-margin-8) auto;
2050
+ }
2051
+ .tanstack-table__no-results__text {
2052
+ font-size: var(--pf-line-height-md);
2053
+ font-weight: var(--pf-font-weight-medium);
2054
+ color: var(--pf-primary-color-50);
2055
+ }
2056
+ .tanstack-table__no-results__text span {
2057
+ color: var(--pf-white-color);
2058
+ cursor: pointer;
2059
+ }
2060
+ .tanstack-table__no-results__text span:hover {
2061
+ text-decoration: underline;
2062
+ }
2063
+
2064
+ .tanstack-table__outer-container {
2065
+ display: flex;
2066
+ flex-direction: column;
2067
+ width: 100%;
2068
+ height: 100%;
2069
+ }
2070
+ .tanstack-table__outer-container .tanstack-table__container {
2071
+ position: relative;
2072
+ display: block;
2073
+ overflow: auto;
2074
+ height: 100%;
2075
+ scrollbar-width: thin;
2076
+ scrollbar-color: var(--pf-tanstack-table-border-color) var(--pf-tanstack-table-background-color);
2077
+ }
2078
+ .tanstack-table__outer-container .tanstack-table__container::-webkit-scrollbar {
2079
+ width: var(--pf-size-2);
2080
+ height: var(--pf-size-2);
2081
+ cursor: pointer;
2082
+ }
2083
+ .tanstack-table__outer-container .tanstack-table__container::-webkit-scrollbar-track {
2084
+ background: var(--pf-tanstack-table-background-color);
2085
+ border-radius: var(--pf-rounded);
2086
+ cursor: pointer;
2087
+ }
2088
+ .tanstack-table__outer-container .tanstack-table__container::-webkit-scrollbar-thumb {
2089
+ background: var(--pf-tanstack-table-border-color);
2090
+ border-radius: var(--pf-rounded);
2091
+ cursor: pointer;
2092
+ }
2093
+ .tanstack-table__outer-container .tanstack-table__container::-webkit-scrollbar-thumb:hover {
2094
+ background: var(--pf-primary-color);
2095
+ }
2096
+
2097
+ .tanstack-table {
2098
+ border-collapse: separate;
2099
+ margin: 0;
2100
+ table-layout: auto;
2101
+ border-spacing: 0;
2102
+ border-radius: var(--pf-rounded-lg);
2103
+ width: 100%;
2104
+ }
2105
+ .tanstack-table.is-loading {
2106
+ border: var(--pf-border-thin) solid var(--pf-border-color);
2107
+ height: 100%;
2108
+ width: 100%;
2109
+ }
2110
+ .tanstack-table__thead {
2111
+ position: sticky;
2112
+ top: 0;
2113
+ z-index: 100;
2114
+ box-sizing: border-box;
2115
+ background-color: var(--pf-tanstack-table-background-color);
2116
+ }
2117
+ .tanstack-table__thead tr:first-child th:first-child {
2118
+ border-top-left-radius: var(--pf-rounded-lg);
2119
+ }
2120
+ .tanstack-table__thead tr:first-child th:last-child {
2121
+ border-top-right-radius: var(--pf-rounded-lg);
2122
+ }
2123
+ .tanstack-table__thead__th {
2124
+ color: var(--pf-tanstack-table-font-color);
2125
+ background: var(--pf-tanstack-table-background-color);
2126
+ font-size: var(--pf-tanstack-table-font-size);
2127
+ font-weight: var(--pf-font-weight-medium);
2128
+ box-sizing: border-box;
2129
+ border-top: var(--pf-border-sm) solid var(--pf-tanstack-table-border-color);
2130
+ border-bottom: var(--pf-border-sm) solid var(--pf-tanstack-table-border-color);
2131
+ border-right: var(--pf-border-sm) solid var(--pf-tanstack-table-border-color);
2132
+ -webkit-user-select: none;
2133
+ -moz-user-select: none;
2134
+ user-select: none;
2135
+ overflow: hidden;
2136
+ text-overflow: ellipsis;
2137
+ white-space: nowrap;
2138
+ max-width: 300px;
2139
+ width: auto;
2140
+ padding: 0 var(--pf-padding-2);
2141
+ text-align: left;
2142
+ }
2143
+ .tanstack-table__thead__th:first-child {
2144
+ border-left: var(--pf-border-sm) solid var(--pf-tanstack-table-border-color);
2145
+ }
2146
+ .tanstack-table__tbody tr:last-child td:first-child {
2147
+ border-bottom-left-radius: var(--pf-rounded-lg);
2148
+ }
2149
+ .tanstack-table__tbody tr:last-child td:last-child {
2150
+ border-bottom-right-radius: var(--pf-rounded-lg);
2151
+ }
2152
+ .tanstack-table__tbody__tr {
2153
+ background: transparent;
2154
+ width: 100%;
2155
+ }
2156
+ .tanstack-table__tbody__tr.is-selected td {
2157
+ background: var(--pf-tanstack-table-checked-color);
2158
+ }
2159
+ .tanstack-table__tbody__tr.show-hover:hover td {
2160
+ background-color: var(--pf-tanstack-table-hover-color);
2161
+ cursor: pointer;
2162
+ }
2163
+ .tanstack-table__tbody__tr.is-clicked td {
2164
+ background-color: var(--pf-tanstack-table-clicked-color);
2165
+ }
2166
+ .tanstack-table__tbody__td {
2167
+ font-size: var(--pf-font-size-base);
2168
+ font-weight: var(--pf-font-weight-medium);
2169
+ color: var(--pf-tanstack-table-font-color);
2170
+ background: var(--pf-tanstack-table-background-color);
2171
+ border-right: var(--pf-border-sm) solid var(--pf-tanstack-table-border-color);
2172
+ border-bottom: var(--pf-border-sm) solid var(--pf-tanstack-table-border-color);
2173
+ box-sizing: border-box;
2174
+ overflow: hidden;
2175
+ text-overflow: ellipsis;
2176
+ white-space: nowrap;
2177
+ padding: 0 var(--pf-padding-2);
2178
+ max-width: 300px;
2179
+ width: auto;
2180
+ text-align: left;
2181
+ }
2182
+ .tanstack-table__tbody__td:first-child {
2183
+ border-left: var(--pf-border-sm) solid var(--pf-tanstack-table-border-color);
2184
+ }
2185
+ .tanstack-table__centered-row {
2186
+ padding: var(--pf-padding-1) var(--pf-padding-2);
2187
+ text-align: center;
2188
+ vertical-align: middle;
2189
+ height: 100%;
2190
+ border: var(--pf-border-sm) solid var(--pf-border-color);
2191
+ animation: none;
2192
+ }
2193
+ @keyframes shimmer {
2194
+ 0% {
2195
+ background-color: var(--pf-primary-color-700) 40;
2196
+ }
2197
+ 50% {
2198
+ background-color: var(--pf-primary-color-700);
2199
+ }
2200
+ 100% {
2201
+ background-color: var(--pf-primary-color-700) 40;
2202
+ }
2203
+ }
2204
+ .tanstack-table__centered-row.is-loading {
2205
+ animation: shimmer 3s ease-in-out infinite;
2206
+ }
2207
+ .tanstack-table__centered-row svg {
2208
+ margin: 0 auto;
2209
+ display: block;
2210
+ }
2211
+
1965
2212
  :root [data-theme=light] {
1966
2213
  --pf-pill-primary-background-color: var(--pf-primary-color);
1967
2214
  --pf-pill-primary-font-color: var(--pf-white-color);