request = $request; $this->urlBuilder = $urlBuilder; $this->escaper = $escaper; $this->confirmationMessage = $confirmationMessage; $this->idFieldName = $idFieldName; $this->deleteRoutePath = $deleteRoutePath; $this->sortOrder = $sortOrder; } /** * {@inheritdoc} * @since 101.0.0 */ public function getButtonData() { $data = []; $fieldId = $this->escaper->escapeJs($this->escaper->escapeHtml($this->request->getParam($this->idFieldName))); if (null !== $fieldId) { $url = $this->urlBuilder->getUrl($this->deleteRoutePath); $escapedMessage = $this->escaper->escapeJs($this->escaper->escapeHtml($this->confirmationMessage)); $data = [ 'label' => __('Delete'), 'class' => 'delete', 'on_click' => "deleteConfirm('{$escapedMessage}', '{$url}', {data:{{$this->idFieldName}:{$fieldId}}})", 'sort_order' => $this->sortOrder, ]; } return $data; } }