pixelize-design-library 2.2.184 → 2.2.185

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 (41) hide show
  1. package/package.json +1 -1
  2. package/coverage/clover.xml +0 -638
  3. package/coverage/coverage-final.json +0 -20
  4. package/coverage/lcov-report/Table/CompactSelect.tsx.html +0 -379
  5. package/coverage/lcov-report/Table/Components/ActiveFilters.tsx.html +0 -514
  6. package/coverage/lcov-report/Table/Components/HeaderActions.tsx.html +0 -373
  7. package/coverage/lcov-report/Table/Components/Pagination.tsx.html +0 -574
  8. package/coverage/lcov-report/Table/Components/TableActions.tsx.html +0 -574
  9. package/coverage/lcov-report/Table/Components/TableBody.tsx.html +0 -1027
  10. package/coverage/lcov-report/Table/Components/TableFilters.tsx.html +0 -397
  11. package/coverage/lcov-report/Table/Components/TableHeader.tsx.html +0 -1060
  12. package/coverage/lcov-report/Table/Components/TableLoading.tsx.html +0 -361
  13. package/coverage/lcov-report/Table/Components/TableSearch.tsx.html +0 -337
  14. package/coverage/lcov-report/Table/Components/index.html +0 -266
  15. package/coverage/lcov-report/Table/Components/useDebounce.ts.html +0 -178
  16. package/coverage/lcov-report/Table/Components/useTable.ts.html +0 -778
  17. package/coverage/lcov-report/Table/LeftFilterPane.tsx.html +0 -1810
  18. package/coverage/lcov-report/Table/SelectOperationControls.tsx.html +0 -178
  19. package/coverage/lcov-report/Table/Table.tsx.html +0 -1567
  20. package/coverage/lcov-report/Table/TableProps.tsx.html +0 -658
  21. package/coverage/lcov-report/Table/TableSettings/ManageColumns.tsx.html +0 -619
  22. package/coverage/lcov-report/Table/TableSettings/TableFilters.tsx.html +0 -229
  23. package/coverage/lcov-report/Table/TableSettings/TableSettings.tsx.html +0 -532
  24. package/coverage/lcov-report/Table/TableSettings/index.html +0 -146
  25. package/coverage/lcov-report/Table/TableToDo.tsx.html +0 -973
  26. package/coverage/lcov-report/Table/TextOperationControls.tsx.html +0 -271
  27. package/coverage/lcov-report/Table/filterTypes.ts.html +0 -97
  28. package/coverage/lcov-report/Table/index.html +0 -176
  29. package/coverage/lcov-report/base.css +0 -224
  30. package/coverage/lcov-report/block-navigation.js +0 -87
  31. package/coverage/lcov-report/favicon.png +0 -0
  32. package/coverage/lcov-report/index.html +0 -146
  33. package/coverage/lcov-report/prettify.css +0 -1
  34. package/coverage/lcov-report/prettify.js +0 -2
  35. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  36. package/coverage/lcov-report/sorter.js +0 -210
  37. package/coverage/lcov.info +0 -1836
  38. package/debug-storybook.log +0 -72
  39. package/dist/Assets/defaultLogo.tsx +0 -31
  40. package/dist/Theme/Dark/palette.d.ts +0 -370
  41. package/dist/Theme/Dark/palette.js +0 -372
@@ -1,574 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for Table/Components/TableActions.tsx</title>
7
- <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../../prettify.css" />
9
- <link rel="stylesheet" href="../../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
- <meta name="viewport" content="width=device-width, initial-scale=1" />
12
- <style type='text/css'>
13
- .coverage-summary .sorter {
14
- background-image: url(../../sort-arrow-sprite.png);
15
- }
16
- </style>
17
- </head>
18
-
19
- <body>
20
- <div class='wrapper'>
21
- <div class='pad1'>
22
- <h1><a href="../../index.html">All files</a> / <a href="index.html">Table/Components</a> TableActions.tsx</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">96.66% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>29/30</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">72.72% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>16/22</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">92.3% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>12/13</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">100% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>26/26</span>
50
- </div>
51
-
52
-
53
- </div>
54
- <p class="quiet">
55
- Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
- </p>
57
- <template id="filterTemplate">
58
- <div class="quiet">
59
- Filter:
60
- <input type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line high'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a>
126
- <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a>
128
- <a name='L63'></a><a href='#L63'>63</a>
129
- <a name='L64'></a><a href='#L64'>64</a>
130
- <a name='L65'></a><a href='#L65'>65</a>
131
- <a name='L66'></a><a href='#L66'>66</a>
132
- <a name='L67'></a><a href='#L67'>67</a>
133
- <a name='L68'></a><a href='#L68'>68</a>
134
- <a name='L69'></a><a href='#L69'>69</a>
135
- <a name='L70'></a><a href='#L70'>70</a>
136
- <a name='L71'></a><a href='#L71'>71</a>
137
- <a name='L72'></a><a href='#L72'>72</a>
138
- <a name='L73'></a><a href='#L73'>73</a>
139
- <a name='L74'></a><a href='#L74'>74</a>
140
- <a name='L75'></a><a href='#L75'>75</a>
141
- <a name='L76'></a><a href='#L76'>76</a>
142
- <a name='L77'></a><a href='#L77'>77</a>
143
- <a name='L78'></a><a href='#L78'>78</a>
144
- <a name='L79'></a><a href='#L79'>79</a>
145
- <a name='L80'></a><a href='#L80'>80</a>
146
- <a name='L81'></a><a href='#L81'>81</a>
147
- <a name='L82'></a><a href='#L82'>82</a>
148
- <a name='L83'></a><a href='#L83'>83</a>
149
- <a name='L84'></a><a href='#L84'>84</a>
150
- <a name='L85'></a><a href='#L85'>85</a>
151
- <a name='L86'></a><a href='#L86'>86</a>
152
- <a name='L87'></a><a href='#L87'>87</a>
153
- <a name='L88'></a><a href='#L88'>88</a>
154
- <a name='L89'></a><a href='#L89'>89</a>
155
- <a name='L90'></a><a href='#L90'>90</a>
156
- <a name='L91'></a><a href='#L91'>91</a>
157
- <a name='L92'></a><a href='#L92'>92</a>
158
- <a name='L93'></a><a href='#L93'>93</a>
159
- <a name='L94'></a><a href='#L94'>94</a>
160
- <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a>
162
- <a name='L97'></a><a href='#L97'>97</a>
163
- <a name='L98'></a><a href='#L98'>98</a>
164
- <a name='L99'></a><a href='#L99'>99</a>
165
- <a name='L100'></a><a href='#L100'>100</a>
166
- <a name='L101'></a><a href='#L101'>101</a>
167
- <a name='L102'></a><a href='#L102'>102</a>
168
- <a name='L103'></a><a href='#L103'>103</a>
169
- <a name='L104'></a><a href='#L104'>104</a>
170
- <a name='L105'></a><a href='#L105'>105</a>
171
- <a name='L106'></a><a href='#L106'>106</a>
172
- <a name='L107'></a><a href='#L107'>107</a>
173
- <a name='L108'></a><a href='#L108'>108</a>
174
- <a name='L109'></a><a href='#L109'>109</a>
175
- <a name='L110'></a><a href='#L110'>110</a>
176
- <a name='L111'></a><a href='#L111'>111</a>
177
- <a name='L112'></a><a href='#L112'>112</a>
178
- <a name='L113'></a><a href='#L113'>113</a>
179
- <a name='L114'></a><a href='#L114'>114</a>
180
- <a name='L115'></a><a href='#L115'>115</a>
181
- <a name='L116'></a><a href='#L116'>116</a>
182
- <a name='L117'></a><a href='#L117'>117</a>
183
- <a name='L118'></a><a href='#L118'>118</a>
184
- <a name='L119'></a><a href='#L119'>119</a>
185
- <a name='L120'></a><a href='#L120'>120</a>
186
- <a name='L121'></a><a href='#L121'>121</a>
187
- <a name='L122'></a><a href='#L122'>122</a>
188
- <a name='L123'></a><a href='#L123'>123</a>
189
- <a name='L124'></a><a href='#L124'>124</a>
190
- <a name='L125'></a><a href='#L125'>125</a>
191
- <a name='L126'></a><a href='#L126'>126</a>
192
- <a name='L127'></a><a href='#L127'>127</a>
193
- <a name='L128'></a><a href='#L128'>128</a>
194
- <a name='L129'></a><a href='#L129'>129</a>
195
- <a name='L130'></a><a href='#L130'>130</a>
196
- <a name='L131'></a><a href='#L131'>131</a>
197
- <a name='L132'></a><a href='#L132'>132</a>
198
- <a name='L133'></a><a href='#L133'>133</a>
199
- <a name='L134'></a><a href='#L134'>134</a>
200
- <a name='L135'></a><a href='#L135'>135</a>
201
- <a name='L136'></a><a href='#L136'>136</a>
202
- <a name='L137'></a><a href='#L137'>137</a>
203
- <a name='L138'></a><a href='#L138'>138</a>
204
- <a name='L139'></a><a href='#L139'>139</a>
205
- <a name='L140'></a><a href='#L140'>140</a>
206
- <a name='L141'></a><a href='#L141'>141</a>
207
- <a name='L142'></a><a href='#L142'>142</a>
208
- <a name='L143'></a><a href='#L143'>143</a>
209
- <a name='L144'></a><a href='#L144'>144</a>
210
- <a name='L145'></a><a href='#L145'>145</a>
211
- <a name='L146'></a><a href='#L146'>146</a>
212
- <a name='L147'></a><a href='#L147'>147</a>
213
- <a name='L148'></a><a href='#L148'>148</a>
214
- <a name='L149'></a><a href='#L149'>149</a>
215
- <a name='L150'></a><a href='#L150'>150</a>
216
- <a name='L151'></a><a href='#L151'>151</a>
217
- <a name='L152'></a><a href='#L152'>152</a>
218
- <a name='L153'></a><a href='#L153'>153</a>
219
- <a name='L154'></a><a href='#L154'>154</a>
220
- <a name='L155'></a><a href='#L155'>155</a>
221
- <a name='L156'></a><a href='#L156'>156</a>
222
- <a name='L157'></a><a href='#L157'>157</a>
223
- <a name='L158'></a><a href='#L158'>158</a>
224
- <a name='L159'></a><a href='#L159'>159</a>
225
- <a name='L160'></a><a href='#L160'>160</a>
226
- <a name='L161'></a><a href='#L161'>161</a>
227
- <a name='L162'></a><a href='#L162'>162</a>
228
- <a name='L163'></a><a href='#L163'>163</a>
229
- <a name='L164'></a><a href='#L164'>164</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
230
- <span class="cline-any cline-neutral">&nbsp;</span>
231
- <span class="cline-any cline-neutral">&nbsp;</span>
232
- <span class="cline-any cline-neutral">&nbsp;</span>
233
- <span class="cline-any cline-neutral">&nbsp;</span>
234
- <span class="cline-any cline-neutral">&nbsp;</span>
235
- <span class="cline-any cline-neutral">&nbsp;</span>
236
- <span class="cline-any cline-neutral">&nbsp;</span>
237
- <span class="cline-any cline-neutral">&nbsp;</span>
238
- <span class="cline-any cline-neutral">&nbsp;</span>
239
- <span class="cline-any cline-neutral">&nbsp;</span>
240
- <span class="cline-any cline-neutral">&nbsp;</span>
241
- <span class="cline-any cline-neutral">&nbsp;</span>
242
- <span class="cline-any cline-neutral">&nbsp;</span>
243
- <span class="cline-any cline-neutral">&nbsp;</span>
244
- <span class="cline-any cline-neutral">&nbsp;</span>
245
- <span class="cline-any cline-neutral">&nbsp;</span>
246
- <span class="cline-any cline-neutral">&nbsp;</span>
247
- <span class="cline-any cline-neutral">&nbsp;</span>
248
- <span class="cline-any cline-neutral">&nbsp;</span>
249
- <span class="cline-any cline-neutral">&nbsp;</span>
250
- <span class="cline-any cline-neutral">&nbsp;</span>
251
- <span class="cline-any cline-yes">3x</span>
252
- <span class="cline-any cline-yes">6x</span>
253
- <span class="cline-any cline-yes">6x</span>
254
- <span class="cline-any cline-yes">6x</span>
255
- <span class="cline-any cline-neutral">&nbsp;</span>
256
- <span class="cline-any cline-neutral">&nbsp;</span>
257
- <span class="cline-any cline-yes">6x</span>
258
- <span class="cline-any cline-yes">3x</span>
259
- <span class="cline-any cline-yes">3x</span>
260
- <span class="cline-any cline-yes">3x</span>
261
- <span class="cline-any cline-neutral">&nbsp;</span>
262
- <span class="cline-any cline-neutral">&nbsp;</span>
263
- <span class="cline-any cline-neutral">&nbsp;</span>
264
- <span class="cline-any cline-yes">6x</span>
265
- <span class="cline-any cline-yes">6x</span>
266
- <span class="cline-any cline-yes">1x</span>
267
- <span class="cline-any cline-yes">1x</span>
268
- <span class="cline-any cline-neutral">&nbsp;</span>
269
- <span class="cline-any cline-neutral">&nbsp;</span>
270
- <span class="cline-any cline-neutral">&nbsp;</span>
271
- <span class="cline-any cline-yes">6x</span>
272
- <span class="cline-any cline-neutral">&nbsp;</span>
273
- <span class="cline-any cline-yes">2x</span>
274
- <span class="cline-any cline-neutral">&nbsp;</span>
275
- <span class="cline-any cline-neutral">&nbsp;</span>
276
- <span class="cline-any cline-yes">6x</span>
277
- <span class="cline-any cline-yes">6x</span>
278
- <span class="cline-any cline-neutral">&nbsp;</span>
279
- <span class="cline-any cline-neutral">&nbsp;</span>
280
- <span class="cline-any cline-neutral">&nbsp;</span>
281
- <span class="cline-any cline-yes">6x</span>
282
- <span class="cline-any cline-yes">2x</span>
283
- <span class="cline-any cline-yes">2x</span>
284
- <span class="cline-any cline-neutral">&nbsp;</span>
285
- <span class="cline-any cline-neutral">&nbsp;</span>
286
- <span class="cline-any cline-yes">6x</span>
287
- <span class="cline-any cline-neutral">&nbsp;</span>
288
- <span class="cline-any cline-neutral">&nbsp;</span>
289
- <span class="cline-any cline-yes">6x</span>
290
- <span class="cline-any cline-neutral">&nbsp;</span>
291
- <span class="cline-any cline-yes">5x</span>
292
- <span class="cline-any cline-neutral">&nbsp;</span>
293
- <span class="cline-any cline-neutral">&nbsp;</span>
294
- <span class="cline-any cline-neutral">&nbsp;</span>
295
- <span class="cline-any cline-neutral">&nbsp;</span>
296
- <span class="cline-any cline-neutral">&nbsp;</span>
297
- <span class="cline-any cline-neutral">&nbsp;</span>
298
- <span class="cline-any cline-neutral">&nbsp;</span>
299
- <span class="cline-any cline-neutral">&nbsp;</span>
300
- <span class="cline-any cline-neutral">&nbsp;</span>
301
- <span class="cline-any cline-neutral">&nbsp;</span>
302
- <span class="cline-any cline-neutral">&nbsp;</span>
303
- <span class="cline-any cline-neutral">&nbsp;</span>
304
- <span class="cline-any cline-neutral">&nbsp;</span>
305
- <span class="cline-any cline-neutral">&nbsp;</span>
306
- <span class="cline-any cline-neutral">&nbsp;</span>
307
- <span class="cline-any cline-neutral">&nbsp;</span>
308
- <span class="cline-any cline-yes">2x</span>
309
- <span class="cline-any cline-neutral">&nbsp;</span>
310
- <span class="cline-any cline-neutral">&nbsp;</span>
311
- <span class="cline-any cline-neutral">&nbsp;</span>
312
- <span class="cline-any cline-neutral">&nbsp;</span>
313
- <span class="cline-any cline-neutral">&nbsp;</span>
314
- <span class="cline-any cline-neutral">&nbsp;</span>
315
- <span class="cline-any cline-neutral">&nbsp;</span>
316
- <span class="cline-any cline-neutral">&nbsp;</span>
317
- <span class="cline-any cline-neutral">&nbsp;</span>
318
- <span class="cline-any cline-neutral">&nbsp;</span>
319
- <span class="cline-any cline-neutral">&nbsp;</span>
320
- <span class="cline-any cline-neutral">&nbsp;</span>
321
- <span class="cline-any cline-neutral">&nbsp;</span>
322
- <span class="cline-any cline-neutral">&nbsp;</span>
323
- <span class="cline-any cline-neutral">&nbsp;</span>
324
- <span class="cline-any cline-neutral">&nbsp;</span>
325
- <span class="cline-any cline-neutral">&nbsp;</span>
326
- <span class="cline-any cline-neutral">&nbsp;</span>
327
- <span class="cline-any cline-neutral">&nbsp;</span>
328
- <span class="cline-any cline-neutral">&nbsp;</span>
329
- <span class="cline-any cline-neutral">&nbsp;</span>
330
- <span class="cline-any cline-yes">1x</span>
331
- <span class="cline-any cline-neutral">&nbsp;</span>
332
- <span class="cline-any cline-neutral">&nbsp;</span>
333
- <span class="cline-any cline-neutral">&nbsp;</span>
334
- <span class="cline-any cline-neutral">&nbsp;</span>
335
- <span class="cline-any cline-neutral">&nbsp;</span>
336
- <span class="cline-any cline-neutral">&nbsp;</span>
337
- <span class="cline-any cline-neutral">&nbsp;</span>
338
- <span class="cline-any cline-neutral">&nbsp;</span>
339
- <span class="cline-any cline-neutral">&nbsp;</span>
340
- <span class="cline-any cline-neutral">&nbsp;</span>
341
- <span class="cline-any cline-neutral">&nbsp;</span>
342
- <span class="cline-any cline-neutral">&nbsp;</span>
343
- <span class="cline-any cline-neutral">&nbsp;</span>
344
- <span class="cline-any cline-neutral">&nbsp;</span>
345
- <span class="cline-any cline-neutral">&nbsp;</span>
346
- <span class="cline-any cline-neutral">&nbsp;</span>
347
- <span class="cline-any cline-yes">1x</span>
348
- <span class="cline-any cline-neutral">&nbsp;</span>
349
- <span class="cline-any cline-neutral">&nbsp;</span>
350
- <span class="cline-any cline-neutral">&nbsp;</span>
351
- <span class="cline-any cline-neutral">&nbsp;</span>
352
- <span class="cline-any cline-neutral">&nbsp;</span>
353
- <span class="cline-any cline-neutral">&nbsp;</span>
354
- <span class="cline-any cline-neutral">&nbsp;</span>
355
- <span class="cline-any cline-neutral">&nbsp;</span>
356
- <span class="cline-any cline-neutral">&nbsp;</span>
357
- <span class="cline-any cline-neutral">&nbsp;</span>
358
- <span class="cline-any cline-neutral">&nbsp;</span>
359
- <span class="cline-any cline-neutral">&nbsp;</span>
360
- <span class="cline-any cline-neutral">&nbsp;</span>
361
- <span class="cline-any cline-neutral">&nbsp;</span>
362
- <span class="cline-any cline-neutral">&nbsp;</span>
363
- <span class="cline-any cline-yes">1x</span>
364
- <span class="cline-any cline-neutral">&nbsp;</span>
365
- <span class="cline-any cline-neutral">&nbsp;</span>
366
- <span class="cline-any cline-neutral">&nbsp;</span>
367
- <span class="cline-any cline-neutral">&nbsp;</span>
368
- <span class="cline-any cline-neutral">&nbsp;</span>
369
- <span class="cline-any cline-neutral">&nbsp;</span>
370
- <span class="cline-any cline-neutral">&nbsp;</span>
371
- <span class="cline-any cline-neutral">&nbsp;</span>
372
- <span class="cline-any cline-neutral">&nbsp;</span>
373
- <span class="cline-any cline-neutral">&nbsp;</span>
374
- <span class="cline-any cline-neutral">&nbsp;</span>
375
- <span class="cline-any cline-neutral">&nbsp;</span>
376
- <span class="cline-any cline-neutral">&nbsp;</span>
377
- <span class="cline-any cline-neutral">&nbsp;</span>
378
- <span class="cline-any cline-neutral">&nbsp;</span>
379
- <span class="cline-any cline-neutral">&nbsp;</span>
380
- <span class="cline-any cline-neutral">&nbsp;</span>
381
- <span class="cline-any cline-neutral">&nbsp;</span>
382
- <span class="cline-any cline-neutral">&nbsp;</span>
383
- <span class="cline-any cline-neutral">&nbsp;</span>
384
- <span class="cline-any cline-neutral">&nbsp;</span>
385
- <span class="cline-any cline-neutral">&nbsp;</span>
386
- <span class="cline-any cline-neutral">&nbsp;</span>
387
- <span class="cline-any cline-neutral">&nbsp;</span>
388
- <span class="cline-any cline-neutral">&nbsp;</span>
389
- <span class="cline-any cline-neutral">&nbsp;</span>
390
- <span class="cline-any cline-neutral">&nbsp;</span>
391
- <span class="cline-any cline-neutral">&nbsp;</span>
392
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import React, { ReactNode, useEffect, useRef, useState } from "react";
393
- import {
394
- Button,
395
- IconButton,
396
- Popover,
397
- PopoverBody,
398
- PopoverContent,
399
- PopoverTrigger,
400
- Portal,
401
- VStack,
402
- } from "@chakra-ui/react";
403
- import { EllipsisVertical, ExternalLink, Pencil, Trash2 } from "lucide-react";
404
- import { useCustomTheme } from "../../../Theme/useCustomTheme";
405
- import type { DataObject } from "../TableProps";
406
- &nbsp;
407
- type TableRowActions = DataObject &amp; {
408
- onLink?: (row: DataObject) =&gt; void;
409
- onEdit?: (row: DataObject) =&gt; void;
410
- onDelete?: (row: DataObject) =&gt; void;
411
- actions?: () =&gt; ReactNode;
412
- };
413
- &nbsp;
414
- const TableActions = ({ row }: { row?: TableRowActions }) =&gt; {
415
- const [isOpen, setIsOpen] = useState(false);
416
- const ref = useRef&lt;HTMLDivElement&gt;(null);
417
- const theme = useCustomTheme();
418
- &nbsp;
419
- // Listen for "close-all-popovers"
420
- useEffect(() =&gt; {
421
- const handler = () =&gt; setIsOpen(false);
422
- window.addEventListener("close-all-popovers", handler);
423
- return () =&gt; window.removeEventListener("close-all-popovers", handler);
424
- }, []);
425
- &nbsp;
426
- // Detect outside click
427
- useEffect(() =&gt; {
428
- const handleClickOutside = (event: MouseEvent) =&gt; {
429
- <span class="missing-if-branch" title="else path not taken" >E</span>if (ref.current &amp;&amp; !ref.current.contains(event.target as Node)) {
430
- setIsOpen(false);
431
- }
432
- };
433
- &nbsp;
434
- if (isOpen) {
435
- // ✅ Use click instead of mousedown
436
- document.addEventListener("click", handleClickOutside);
437
- }
438
- &nbsp;
439
- return () =&gt; {
440
- document.removeEventListener("click", handleClickOutside);
441
- };
442
- }, [isOpen]);
443
- &nbsp;
444
- const handleOpen = () =&gt; {
445
- window.dispatchEvent(new Event("close-all-popovers")); // close others
446
- setIsOpen(true);
447
- };
448
- &nbsp;
449
- const handleClose = <span class="fstat-no" title="function not covered" >()</span> =&gt; <span class="cstat-no" title="statement not covered" >setIsOpen(false);</span>
450
- &nbsp;
451
- // ✅ if row itself is missing, render nothing
452
- if (!row) return null;
453
- &nbsp;
454
- return (
455
- &lt;Popover
456
- placement="bottom-start"
457
- isOpen={isOpen}
458
- onClose={handleClose}
459
- closeOnBlur={false} // we handle outside click manually
460
- &gt;
461
- &lt;div ref={ref}&gt;
462
- &lt;PopoverTrigger&gt;
463
- &lt;IconButton
464
- aria-label="Actions"
465
- color="black"
466
- icon={&lt;EllipsisVertical size={17} /&gt;}
467
- size="sm"
468
- p={0}
469
- variant="ghost"
470
- _hover={{ transform: "scale(1.2)" }}
471
- onClick={() =&gt; (isOpen ? <span class="branch-0 cbranch-no" title="branch not covered" >handleClose() </span>: handleOpen())}
472
- /&gt;
473
- &lt;/PopoverTrigger&gt;
474
- &lt;Portal&gt;
475
- &lt;PopoverContent
476
- w="auto"
477
- minW="100px"
478
- boxShadow="lg"
479
- p={0}
480
- zIndex={999}
481
- &gt;
482
- &lt;PopoverBody p={0} m={0}&gt;
483
- &lt;VStack align="stretch" spacing={1} p={0} m={0}&gt;
484
- {row.onLink &amp;&amp; (
485
- &lt;Button
486
- size="sm"
487
- variant="ghost"
488
- justifyContent="flex-start"
489
- borderBottom={`1px solid ${theme.colors?.border[500]}`}
490
- borderRadius={0}
491
- gap={2}
492
- onClick={() =&gt; {
493
- row.onLink?.(row);
494
- &nbsp;
495
- // handleClose();
496
- }}
497
- &gt;
498
- &lt;ExternalLink size={17} /&gt; View
499
- &lt;/Button&gt;
500
- )}
501
- {row.onEdit &amp;&amp; (
502
- &lt;Button
503
- size="sm"
504
- variant="ghost"
505
- justifyContent="flex-start"
506
- gap={2}
507
- borderBottom={`1px solid ${theme.colors?.border[500]}`}
508
- borderRadius={0}
509
- onClick={() =&gt; {
510
- row.onEdit?.(row);
511
- // handleClose();
512
- }}
513
- &gt;
514
- &lt;Pencil size={17} /&gt; Edit
515
- &lt;/Button&gt;
516
- )}
517
- {row.onDelete &amp;&amp; (
518
- &lt;Button
519
- size="sm"
520
- variant="ghost"
521
- justifyContent="flex-start"
522
- colorScheme="red"
523
- gap={2}
524
- borderRadius={0}
525
- onClick={() =&gt; {
526
- row.onDelete?.(row);
527
- // handleClose();
528
- }}
529
- &gt;
530
- &lt;Trash2 size={17} /&gt; Delete
531
- &lt;/Button&gt;
532
- )}
533
- {row.actions &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >row?.actions?.()} </span>
534
- {/* ✅ fallback if no actions at all */}
535
- {!row.onLink &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >!row.onEdit </span>&amp;&amp; <span class="branch-2 cbranch-no" title="branch not covered" >!row.onDelete </span>&amp;&amp; (
536
- <span class="branch-3 cbranch-no" title="branch not covered" > &lt;Button</span>
537
- size="sm"
538
- variant="ghost"
539
- isDisabled
540
- justifyContent="center"
541
- &gt;
542
- No actions
543
- &lt;/Button&gt;
544
- )}
545
- &lt;/VStack&gt;
546
- &lt;/PopoverBody&gt;
547
- &lt;/PopoverContent&gt;
548
- &lt;/Portal&gt;
549
- &lt;/div&gt;
550
- &lt;/Popover&gt;
551
- );
552
- };
553
- &nbsp;
554
- export default TableActions;
555
- &nbsp;</pre></td></tr></table></pre>
556
-
557
- <div class='push'></div><!-- for sticky footer -->
558
- </div><!-- /wrapper -->
559
- <div class='footer quiet pad2 space-top1 center small'>
560
- Code coverage generated by
561
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
562
- at 2026-04-25T11:11:29.488Z
563
- </div>
564
- <script src="../../prettify.js"></script>
565
- <script>
566
- window.onload = function () {
567
- prettyPrint();
568
- };
569
- </script>
570
- <script src="../../sorter.js"></script>
571
- <script src="../../block-navigation.js"></script>
572
- </body>
573
- </html>
574
-