37 public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) {
39 $container->get(
'paragraphs_editor.field_value.manager')
46 public function process(SemanticDataInterface $data, DomProcessorResultInterface $result) {
47 if ($data->is($this->getSelector(
'widget'))) {
50 elseif ($data->is($this->getSelector(
'field')) || $data->isRoot()) {
69 protected function processWidget(SemanticDataInterface $data, DomProcessorResultInterface $result) {
70 $entity = $data->get(
'paragraph.entity');
71 $wrapper = $data->get(
'field.wrapper');
74 $wrapper->addReferencedEntity($entity);
77 $result = $result->merge([
79 $entity->uuid() => $entity,
84 foreach ($data->node()->childNodes as $child_node) {
85 $data->node()->removeChild($child_node);
104 protected function processField(SemanticDataInterface $data, DomProcessorResultInterface $result) {
105 $wrapper = $data->get(
'field.wrapper');
108 $wrapper->setMarkup($data->getInnerHTML());
109 $wrapper->setFormat($data->get(
'filter_format'));
110 $entities = $wrapper->getEntities();
113 $entities = $result->get(
'entities');
119 $items = $data->get(
'field.items');
120 $new_revision = $data->get(
'owner.new_revision');
121 $langcode = $data->get(
'langcode');
122 $this->fieldValueManager->setItems($items, $entities, $new_revision, $langcode);
124 return $result->clear(
'entities');
removeAttribute(\DOMNode $node, $element_name, $attribute_name)
trait ParagraphsEditorElementTrait
initializeParagraphsEditorElementTrait(FieldValueManagerInterface $field_value_manager)