@@ -179,12 +179,14 @@ public function getColumnPositions(): array
179179 */
180180 public function getAvailableColumns (): array
181181 {
182- $ columns = $ this ->columnLoader ->getColumns ($ this ->getNamespace ());
182+ $ columns = $ this ->columnLoader ->getColumnsFromNamespace ($ this ->getNamespace ());
183183 if (!empty ($ columns )) {
184184 return $ columns ;
185185 }
186186
187- $ columns = $ this ->getRepository ()->getProviderHandler ()->getColumns ($ this ->getRepository ()->getProvider ());
187+ $ providerHandler = $ this ->getRepository ()->getProviderHandler ();
188+ $ provider = $ this ->getRepository ()->getProvider ();
189+ $ columns = $ providerHandler ->getColumns ($ provider );
188190 if (!empty ($ columns )) {
189191 return $ columns ;
190192 }
@@ -214,8 +216,8 @@ public function getAvailableColumns(): array
214216 public function getColumns (): array
215217 {
216218 $ columns = $ this ->getAvailableColumns ();
217-
218219 $ columnsFromBlock = $ this ->columnLoader ->getColumnsFromBlock ($ this ->block );
220+
219221 if (!empty ($ columnsFromBlock )) {
220222 foreach ($ columnsFromBlock as $ columnFromBlock ) {
221223 foreach ($ columns as $ column ) {
@@ -231,6 +233,13 @@ public function getColumns(): array
231233 return $ this ->columnLoader ->sortColumns ($ columns );
232234 }
233235
236+ public function getVisibleColumns (): array
237+ {
238+ return array_filter ($ this ->getColumns (), function (Column $ column ) {
239+ return $ column ->isVisible ();
240+ });
241+ }
242+
234243 public function getIndexUrl (): string
235244 {
236245 $ indexUrl = $ this ->getBlock ()->getData ('index_url ' );
0 commit comments