From 145ce804d5b8ab22bfbb125bd963c99cae15d870 Mon Sep 17 00:00:00 2001
From: Marty Friedel <1491079+martyf@users.noreply.github.com>
Date: Tue, 11 Jul 2023 13:47:58 +1000
Subject: [PATCH 1/2] Change from dot syntax to named-key access
---
src/Forms/JsDrivers/Alpine.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/Forms/JsDrivers/Alpine.php b/src/Forms/JsDrivers/Alpine.php
index ddec16e4f09..57e52343896 100644
--- a/src/Forms/JsDrivers/Alpine.php
+++ b/src/Forms/JsDrivers/Alpine.php
@@ -85,7 +85,7 @@ protected function renderAlpineXData($xData, $alpineScope)
protected function getAlpineXDataKey($fieldHandle, $alpineScope)
{
return is_string($alpineScope)
- ? "{$alpineScope}.{$fieldHandle}"
+ ? "{$alpineScope}['{$fieldHandle}']"
: $fieldHandle;
}
From 2cdad140450fb9867392bdc7311f015b49e7e5f1 Mon Sep 17 00:00:00 2001
From: Marty Friedel <1491079+martyf@users.noreply.github.com>
Date: Tue, 11 Jul 2023 14:34:27 +1000
Subject: [PATCH 2/2] Update tests for named-access for scoped data
---
tests/Tags/Form/FormCreateAlpineTest.php | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/tests/Tags/Form/FormCreateAlpineTest.php b/tests/Tags/Form/FormCreateAlpineTest.php
index e8e568059d4..2a0d6db5248 100644
--- a/tests/Tags/Form/FormCreateAlpineTest.php
+++ b/tests/Tags/Form/FormCreateAlpineTest.php
@@ -293,7 +293,7 @@ public function it_dynamically_renders_text_field_x_model()
];
$this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine']);
- $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
+ $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
}
/** @test */
@@ -307,7 +307,7 @@ public function it_dynamically_renders_textarea_field_x_model()
];
$this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine']);
- $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
+ $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
}
/** @test */
@@ -329,9 +329,9 @@ public function it_dynamically_renders_checkboxes_field_x_model()
$this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine']);
$this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine']);
- $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
- $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
- $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
+ $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
+ $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
+ $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
}
/** @test */
@@ -353,9 +353,9 @@ public function it_dynamically_renders_radio_field_x_model()
$this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine']);
$this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine']);
- $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
- $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
- $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
+ $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
+ $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
+ $this->assertFieldRendersHtml([''], $config, [], ['js' => 'alpine:my_form']);
}
/** @test */
@@ -385,7 +385,7 @@ public function it_dynamically_renders_select_field_x_model()
$this->assertFieldRendersHtml($expected, $config, [], ['js' => 'alpine']);
$expectedScoped = [
- '