Version 1
[yaffs-website] / web / core / modules / quickedit / src / Ajax / FieldFormSavedCommand.php
diff --git a/web/core/modules/quickedit/src/Ajax/FieldFormSavedCommand.php b/web/core/modules/quickedit/src/Ajax/FieldFormSavedCommand.php
new file mode 100644 (file)
index 0000000..1e84b0e
--- /dev/null
@@ -0,0 +1,47 @@
+<?php
+
+namespace Drupal\quickedit\Ajax;
+
+use Drupal\Core\Ajax\BaseCommand;
+
+/**
+ * AJAX command to indicate a field was saved into PrivateTempStore without
+ * validation errors and pass the rerendered field to Quick Edit's JavaScript
+ * app.
+ */
+class FieldFormSavedCommand extends BaseCommand {
+
+  /**
+   * The same re-rendered edited field, but in different view modes.
+   *
+   * @var array
+   */
+  protected $other_view_modes;
+
+  /**
+   * Constructs a FieldFormSavedCommand object.
+   *
+   * @param string $data
+   *   The re-rendered edited field to pass on to the client side.
+   * @param array $other_view_modes
+   *   The same re-rendered edited field, but in different view modes, for other
+   *   instances of the same field on the user's page. Keyed by view mode.
+   */
+  public function __construct($data, $other_view_modes = []) {
+    parent::__construct('quickeditFieldFormSaved', $data);
+
+    $this->other_view_modes = $other_view_modes;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function render() {
+    return [
+      'command' => $this->command,
+      'data' => $this->data,
+      'other_view_modes' => $this->other_view_modes,
+    ];
+  }
+
+}