24 public function id() {
32 $state->
set(
'field_map', []);
33 $state->
set(
'field_map_stack', []);
44 'uuid' => $paragraph->uuid(),
64 'name' => $field_definition->getName(),
67 $context_id = $data->
getContextId($items->getEntity()->uuid(), $field_definition->id());
69 $path[
'context'] = $context_id;
73 if ($is_editor_field) {
90 $paragraph = $state->
getItem()->getEntity();
93 'contextId' => $context->getContextString(),
95 'type' => $paragraph->bundle(),
96 'fields' => $state->
get(
'field_map'),
98 if ($context->getAdditionalContext(
'command') ==
'insert') {
99 $item_model[
'insert'] =
'true';
102 $data->
addModel(
'editBufferItem', $paragraph->uuid(), $item_model);
114 $stack = $state->
get(
'field_map_stack');
116 $state->
set(
'field_map_stack', $stack);
129 $stack = $state->
get(
'field_map_stack');
130 return $stack ? end($stack) : NULL;
143 $stack = $state->
get(
'field_map_stack');
144 $data = array_pop($stack);
145 $state->
set(
'field_map_stack', $stack);
156 $node_path = $state->
get(
'field_map_stack');
157 $field_map = $state->
get(
'field_map');
160 foreach ($node_path as $node) {
162 if ($node[
'type'] ==
'field') {
163 $node_id = $node[
'name'];
166 $node_id = $node[
'uuid'];
169 if (!isset($map[$node_id])) {
170 $map[$node_id] = $node;
173 $map[$node_id] += $node;
176 if (!isset($map[$node_id][
'children'])) {
177 $map[$node_id][
'children'] = [];
180 $map = &$map[$node_id][
'children'];
183 $state->
set(
'field_map', $field_map);
static ensureFieldConfig(FieldDefinitionInterface $field_definition=NULL)