@mbpockets/shared-ui 0.1.19 → 0.1.21

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 (141) hide show
  1. package/dist/EventPage/index.cjs +209 -121
  2. package/dist/EventPage/index.cjs.map +1 -1
  3. package/dist/EventPage/index.mjs +201 -119
  4. package/dist/EventPage/index.mjs.map +1 -1
  5. package/dist/EventPage.cjs +209 -121
  6. package/dist/EventPage.cjs.map +1 -1
  7. package/dist/EventPage.mjs +201 -119
  8. package/dist/EventPage.mjs.map +1 -1
  9. package/dist/PlayerPage/index.cjs +289 -92
  10. package/dist/PlayerPage/index.cjs.map +1 -1
  11. package/dist/PlayerPage/index.d.cts +1 -1
  12. package/dist/PlayerPage/index.d.ts +1 -1
  13. package/dist/PlayerPage/index.mjs +287 -90
  14. package/dist/PlayerPage/index.mjs.map +1 -1
  15. package/dist/PlayerPage.cjs +289 -92
  16. package/dist/PlayerPage.cjs.map +1 -1
  17. package/dist/PlayerPage.d.cts +24 -6
  18. package/dist/PlayerPage.d.ts +24 -6
  19. package/dist/PlayerPage.mjs +287 -90
  20. package/dist/PlayerPage.mjs.map +1 -1
  21. package/dist/ProfilePage/index.cjs +474 -44
  22. package/dist/ProfilePage/index.cjs.map +1 -1
  23. package/dist/ProfilePage/index.d.cts +2 -1
  24. package/dist/ProfilePage/index.d.ts +2 -1
  25. package/dist/ProfilePage/index.mjs +469 -39
  26. package/dist/ProfilePage/index.mjs.map +1 -1
  27. package/dist/ProfilePage.cjs +474 -44
  28. package/dist/ProfilePage.cjs.map +1 -1
  29. package/dist/ProfilePage.d.cts +4 -10
  30. package/dist/ProfilePage.d.ts +4 -10
  31. package/dist/ProfilePage.mjs +469 -39
  32. package/dist/ProfilePage.mjs.map +1 -1
  33. package/dist/SearchPage/Filters/index.cjs +149 -43
  34. package/dist/SearchPage/Filters/index.cjs.map +1 -1
  35. package/dist/SearchPage/Filters/index.d.cts +1 -2
  36. package/dist/SearchPage/Filters/index.d.ts +1 -2
  37. package/dist/SearchPage/Filters/index.mjs +146 -42
  38. package/dist/SearchPage/Filters/index.mjs.map +1 -1
  39. package/dist/SearchPage/Filters.cjs +149 -43
  40. package/dist/SearchPage/Filters.cjs.map +1 -1
  41. package/dist/SearchPage/Filters.d.cts +38 -3
  42. package/dist/SearchPage/Filters.d.ts +38 -3
  43. package/dist/SearchPage/Filters.mjs +146 -42
  44. package/dist/SearchPage/Filters.mjs.map +1 -1
  45. package/dist/SearchPage/Results/index.cjs +139 -67
  46. package/dist/SearchPage/Results/index.cjs.map +1 -1
  47. package/dist/SearchPage/Results/index.mjs +127 -63
  48. package/dist/SearchPage/Results/index.mjs.map +1 -1
  49. package/dist/SearchPage/Results.cjs +139 -67
  50. package/dist/SearchPage/Results.cjs.map +1 -1
  51. package/dist/SearchPage/Results.d.cts +21 -12
  52. package/dist/SearchPage/Results.d.ts +21 -12
  53. package/dist/SearchPage/Results.mjs +127 -63
  54. package/dist/SearchPage/Results.mjs.map +1 -1
  55. package/dist/SearchPage/index.cjs +496 -221
  56. package/dist/SearchPage/index.cjs.map +1 -1
  57. package/dist/SearchPage/index.d.cts +1 -1
  58. package/dist/SearchPage/index.d.ts +1 -1
  59. package/dist/SearchPage/index.mjs +483 -216
  60. package/dist/SearchPage/index.mjs.map +1 -1
  61. package/dist/SearchPage.cjs +496 -221
  62. package/dist/SearchPage.cjs.map +1 -1
  63. package/dist/SearchPage.d.cts +78 -7
  64. package/dist/SearchPage.d.ts +78 -7
  65. package/dist/SearchPage.mjs +483 -216
  66. package/dist/SearchPage.mjs.map +1 -1
  67. package/dist/TablePage/index.cjs +10 -1
  68. package/dist/TablePage/index.cjs.map +1 -1
  69. package/dist/TablePage/index.d.cts +2 -2
  70. package/dist/TablePage/index.d.ts +2 -2
  71. package/dist/TablePage/index.mjs +10 -2
  72. package/dist/TablePage/index.mjs.map +1 -1
  73. package/dist/TablePage.cjs +10 -1
  74. package/dist/TablePage.cjs.map +1 -1
  75. package/dist/TablePage.d.cts +7 -2
  76. package/dist/TablePage.d.ts +7 -2
  77. package/dist/TablePage.mjs +10 -2
  78. package/dist/TablePage.mjs.map +1 -1
  79. package/dist/index.cjs +789 -331
  80. package/dist/index.cjs.map +1 -1
  81. package/dist/index.d.cts +4 -5
  82. package/dist/index.d.ts +4 -5
  83. package/dist/index.mjs +772 -324
  84. package/dist/index.mjs.map +1 -1
  85. package/dist/mocks/SearchResults.cjs +22 -15
  86. package/dist/mocks/SearchResults.cjs.map +1 -1
  87. package/dist/mocks/SearchResults.d.cts +3 -15
  88. package/dist/mocks/SearchResults.d.ts +3 -15
  89. package/dist/mocks/SearchResults.mjs +22 -15
  90. package/dist/mocks/SearchResults.mjs.map +1 -1
  91. package/dist/mocks/index.cjs +22 -15
  92. package/dist/mocks/index.cjs.map +1 -1
  93. package/dist/mocks/index.d.cts +2 -1
  94. package/dist/mocks/index.d.ts +2 -1
  95. package/dist/mocks/index.mjs +22 -15
  96. package/dist/mocks/index.mjs.map +1 -1
  97. package/dist/mocks.cjs +22 -15
  98. package/dist/mocks.cjs.map +1 -1
  99. package/dist/mocks.d.cts +2 -1
  100. package/dist/mocks.d.ts +2 -1
  101. package/dist/mocks.mjs +22 -15
  102. package/dist/mocks.mjs.map +1 -1
  103. package/dist/{common → shared}/index.cjs.map +1 -1
  104. package/dist/{common → shared}/index.d.cts +1 -1
  105. package/dist/{common → shared}/index.d.ts +1 -1
  106. package/dist/{common → shared}/index.mjs.map +1 -1
  107. package/dist/{common.cjs → shared.cjs} +2 -2
  108. package/dist/{common.cjs.map → shared.cjs.map} +1 -1
  109. package/dist/{common.css → shared.css} +1 -1
  110. package/dist/{common.mjs → shared.mjs} +2 -2
  111. package/dist/{common.mjs.map → shared.mjs.map} +1 -1
  112. package/dist/types/index.d.cts +1 -1
  113. package/dist/types/index.d.ts +1 -1
  114. package/dist/types/search.d.cts +23 -1
  115. package/dist/types/search.d.ts +23 -1
  116. package/dist/types.d.cts +1 -1
  117. package/dist/types.d.ts +1 -1
  118. package/package.json +1 -1
  119. /package/dist/{common → shared}/Modal/index.cjs +0 -0
  120. /package/dist/{common → shared}/Modal/index.cjs.map +0 -0
  121. /package/dist/{common → shared}/Modal/index.css +0 -0
  122. /package/dist/{common → shared}/Modal/index.css.map +0 -0
  123. /package/dist/{common → shared}/Modal/index.d.cts +0 -0
  124. /package/dist/{common → shared}/Modal/index.d.ts +0 -0
  125. /package/dist/{common → shared}/Modal/index.mjs +0 -0
  126. /package/dist/{common → shared}/Modal/index.mjs.map +0 -0
  127. /package/dist/{common → shared}/Modal.cjs +0 -0
  128. /package/dist/{common → shared}/Modal.cjs.map +0 -0
  129. /package/dist/{common → shared}/Modal.css +0 -0
  130. /package/dist/{common → shared}/Modal.css.map +0 -0
  131. /package/dist/{common → shared}/Modal.d.cts +0 -0
  132. /package/dist/{common → shared}/Modal.d.ts +0 -0
  133. /package/dist/{common → shared}/Modal.mjs +0 -0
  134. /package/dist/{common → shared}/Modal.mjs.map +0 -0
  135. /package/dist/{common → shared}/index.cjs +0 -0
  136. /package/dist/{common → shared}/index.css +0 -0
  137. /package/dist/{common → shared}/index.css.map +0 -0
  138. /package/dist/{common → shared}/index.mjs +0 -0
  139. /package/dist/{common.css.map → shared.css.map} +0 -0
  140. /package/dist/{common.d.cts → shared.d.cts} +0 -0
  141. /package/dist/{common.d.ts → shared.d.ts} +0 -0
@@ -1,19 +1,39 @@
1
- export { SortOptions, TagsFilter, TypeFilter } from './SearchPage/Filters';
1
+ export { ExpiredTablesFilter, SortOptions, TagsFilter, TextSearchCard, TypeFilter } from './SearchPage/Filters';
2
2
  import React__default from 'react';
3
3
  import { Tag } from './types/tag';
4
- import { SearchResultItem } from './types/search';
4
+ import { SearchResultItem, PaginationData, SearchCriteria } from './types/search';
5
5
  export { BaseSearchResultCard, BaseSearchResultCardProps, EventResultCard, PlayerResultCard, SearchResultCard, TableResultCard } from './SearchPage/Results';
6
6
  import * as react_jsx_runtime from 'react/jsx-runtime';
7
7
 
8
8
  interface FiltersContainerProps {
9
+ initialSelectedTypes?: string[];
10
+ initialSelectedTags?: {
11
+ mustHave: number[];
12
+ mustNotHave: number[];
13
+ shouldHaveAtLeastOne: number[];
14
+ };
15
+ initialTextSearch?: {
16
+ query: string;
17
+ titleOnly: boolean;
18
+ };
19
+ includeExpiredTables?: boolean;
9
20
  onTypeChange?: (selectedTypes: string[]) => void;
10
21
  onTagChange?: (selectedTags: {
11
22
  mustHave: number[];
12
23
  mustNotHave: number[];
13
24
  shouldHaveAtLeastOne: number[];
14
25
  }) => void;
26
+ onTextSearchChange?: (textSearch: {
27
+ query: string;
28
+ titleOnly: boolean;
29
+ }) => void;
30
+ onIncludeExpiredTablesChange?: (include: boolean) => void;
15
31
  onSubmit?: () => void;
16
32
  tags: Tag[];
33
+ searchTypes: {
34
+ id: string;
35
+ label: string;
36
+ }[];
17
37
  }
18
38
  /**
19
39
  * Container component that combines all filter components
@@ -35,6 +55,8 @@ interface ResultsContainerProps {
35
55
  results: SearchResultItem[];
36
56
  onResultClick?: (id: number, type: "player" | "event" | "table") => void;
37
57
  tags: Tag[];
58
+ pagination?: PaginationData;
59
+ onPacketChange?: (packet: number) => void;
38
60
  }
39
61
  /**
40
62
  * Container component that displays a list of search results
@@ -58,10 +80,41 @@ interface SearchPageLayoutProps {
58
80
  * Search results to display
59
81
  */
60
82
  results: SearchResultItem[];
83
+ /**
84
+ * Pagination information
85
+ */
86
+ pagination?: PaginationData;
87
+ /**
88
+ * Optional callback for when the packet changes
89
+ */
90
+ onPacketChange?: (packet: number) => void;
61
91
  /**
62
92
  * Optional title for the search page
63
93
  */
64
94
  title?: string;
95
+ /**
96
+ * Initial selected types for the type filter
97
+ */
98
+ initialSelectedTypes?: string[];
99
+ /**
100
+ * Initial selected tags for the tag filter
101
+ */
102
+ initialSelectedTags?: {
103
+ mustHave: number[];
104
+ mustNotHave: number[];
105
+ shouldHaveAtLeastOne: number[];
106
+ };
107
+ /**
108
+ * Initial text search values
109
+ */
110
+ initialTextSearch?: {
111
+ query: string;
112
+ titleOnly: boolean;
113
+ };
114
+ /**
115
+ * Include expired tables option
116
+ */
117
+ includeExpiredTables?: boolean;
65
118
  /**
66
119
  * Optional callback for when a type filter changes
67
120
  */
@@ -74,16 +127,36 @@ interface SearchPageLayoutProps {
74
127
  mustNotHave: number[];
75
128
  shouldHaveAtLeastOne: number[];
76
129
  }) => void;
130
+ /**
131
+ * Optional callback for when text search changes
132
+ */
133
+ onTextSearchChange?: (textSearch: {
134
+ query: string;
135
+ titleOnly: boolean;
136
+ }) => void;
137
+ /**
138
+ * Optional callback for when include expired tables changes
139
+ */
140
+ onIncludeExpiredTablesChange?: (include: boolean) => void;
77
141
  allTags: Tag[];
78
142
  validTags: Tag[];
79
143
  /**
80
- * Optional callback for when the search button is clicked
144
+ * Optional callback for when the search button is clicked.
145
+ * If provided, SearchPageLayout will call this when it determines a backend search is needed.
81
146
  */
82
- onSubmit?: () => void;
147
+ onSubmit?: (criteria: SearchCriteria) => void;
148
+ /**
149
+ * Is the search loading?
150
+ */
151
+ isLoading?: boolean;
83
152
  /**
84
153
  * Optional callback for when a result is clicked
85
154
  */
86
155
  onResultClick?: (id: number, type: "player" | "event" | "table") => void;
156
+ searchTypes: {
157
+ id: string;
158
+ label: string;
159
+ }[];
87
160
  }
88
161
  /**
89
162
  * Layout component for the search page with responsive design
@@ -92,18 +165,16 @@ interface SearchPageLayoutProps {
92
165
  * - Right container takes 9 lanes on desktop, 12 on mobile
93
166
  * - Left container takes 3 lanes on desktop, appears above results on mobile
94
167
  */
95
- declare function SearchPageLayout({ results, title, onTypeChange, onTagChange, onSubmit, onResultClick, validTags, allTags }: SearchPageLayoutProps): react_jsx_runtime.JSX.Element;
168
+ declare function SearchPageLayout({ results, title, initialSelectedTypes, initialSelectedTags, initialTextSearch, includeExpiredTables: initialIncludeExpiredTables, onTypeChange, onTagChange, onTextSearchChange, onIncludeExpiredTablesChange, onSubmit, onResultClick, onPacketChange, pagination, validTags, allTags, searchTypes, isLoading }: SearchPageLayoutProps): react_jsx_runtime.JSX.Element;
96
169
 
97
170
  interface TablesScrollableListProps {
98
171
  results: SearchResultItem[];
99
172
  tags: Tag[];
100
173
  maxHeight?: number | string;
101
174
  onResultClick?: (id: number) => void;
102
- sortBy?: 'none' | 'availability';
103
175
  }
104
176
  /**
105
177
  * Thin wrapper to show only table results in a scrollable list.
106
- * Updated to sort by most available slots first.
107
178
  */
108
179
  declare const TablesScrollableList: React__default.FC<TablesScrollableListProps>;
109
180