Skip to content

Commit c6a5acc

Browse files
committed
chore: updated element classes
1 parent 17711e1 commit c6a5acc

138 files changed

Lines changed: 10150 additions & 185 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

docs/phpmd.md

Lines changed: 282 additions & 46 deletions
Large diffs are not rendered by default.

picocss-html5-specification.yaml

Lines changed: 1324 additions & 4 deletions
Large diffs are not rendered by default.

src/Element/Block/Article.php

Lines changed: 75 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
*
66
* Article - The article element represents a self-contained composition in a document, page, application, or site, which is intended to be independently distributable or reusable.
77
*
8-
* @generated 2025-10-19 20:20:48
8+
* @generated 2025-10-19 21:39:12
99
* @subpackage Html\Element\Block
1010
* @link https://vardumper.github.io/extended-htmldocument/
1111
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/article
@@ -43,6 +43,8 @@
4343
use Html\Element\Void\Area;
4444
use Html\Element\Void\BreakElement;
4545
use Html\Element\Void\WordBreakOpportunity;
46+
use Html\Enum\DataPlacementEnum;
47+
use Html\Enum\DataThemeEnum;
4648
use Html\Mapping\Element;
4749

4850
#[Element('article')]
@@ -139,4 +141,76 @@ class Article extends BlockElement
139141
Video::class,
140142
WordBreakOpportunity::class,
141143
];
144+
145+
/**
146+
* Give extra context and information by adding tooltips.
147+
*/
148+
public ?string $dataTooltip = null;
149+
150+
/** Choose between light and dark mode. Overrides the OS default if set. */
151+
protected null|string|DataThemeEnum $dataTheme = null;
152+
153+
/**
154+
* Choose the position of a tooltip. Depends on data-tooltip attribute.
155+
* @example top
156+
*/
157+
protected null|string|DataPlacementEnum $dataPlacement = null;
158+
159+
public function setDataTheme(string|DataThemeEnum $dataTheme): static
160+
{
161+
$value = $dataTheme;
162+
if (is_string($dataTheme)) {
163+
$resolved = DataThemeEnum::tryFrom($dataTheme);
164+
if ($resolved !== null) {
165+
$dataTheme = $resolved;
166+
}
167+
}
168+
if ($dataTheme instanceof DataThemeEnum) {
169+
$value = $dataTheme->value;
170+
}
171+
$this->dataTheme = $dataTheme;
172+
$this->delegated->setAttribute('dataTheme', (string) $value);
173+
174+
return $this;
175+
}
176+
177+
public function getDataTheme(): string|DataThemeEnum
178+
{
179+
return $this->dataTheme;
180+
}
181+
182+
public function setDataTooltip(string $dataTooltip): static
183+
{
184+
$this->dataTooltip = $dataTooltip;
185+
$this->delegated->setAttribute('dataTooltip', (string) $dataTooltip);
186+
return $this;
187+
}
188+
189+
public function getDataTooltip(): ?string
190+
{
191+
return $this->dataTooltip;
192+
}
193+
194+
public function setDataPlacement(string|DataPlacementEnum $dataPlacement): static
195+
{
196+
$value = $dataPlacement;
197+
if (is_string($dataPlacement)) {
198+
$resolved = DataPlacementEnum::tryFrom($dataPlacement);
199+
if ($resolved !== null) {
200+
$dataPlacement = $resolved;
201+
}
202+
}
203+
if ($dataPlacement instanceof DataPlacementEnum) {
204+
$value = $dataPlacement->value;
205+
}
206+
$this->dataPlacement = $dataPlacement;
207+
$this->delegated->setAttribute('dataPlacement', (string) $value);
208+
209+
return $this;
210+
}
211+
212+
public function getDataPlacement(): string|DataPlacementEnum
213+
{
214+
return $this->dataPlacement;
215+
}
142216
}

src/Element/Block/Aside.php

Lines changed: 75 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
*
66
* Aside - The aside element represents a section of a page that consists of content that is tangentially related to the content around the aside element, and which could be considered separate from that content.
77
*
8-
* @generated 2025-10-19 20:20:48
8+
* @generated 2025-10-19 21:39:12
99
* @subpackage Html\Element\Block
1010
* @link https://vardumper.github.io/extended-htmldocument/
1111
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/aside
@@ -52,6 +52,8 @@
5252
use Html\Element\Void\Source;
5353
use Html\Element\Void\Track;
5454
use Html\Element\Void\WordBreakOpportunity;
55+
use Html\Enum\DataPlacementEnum;
56+
use Html\Enum\DataThemeEnum;
5557
use Html\Mapping\Element;
5658

5759
#[Element('aside')]
@@ -152,4 +154,76 @@ class Aside extends BlockElement
152154
Video::class,
153155
WordBreakOpportunity::class,
154156
];
157+
158+
/**
159+
* Give extra context and information by adding tooltips.
160+
*/
161+
public ?string $dataTooltip = null;
162+
163+
/** Choose between light and dark mode. Overrides the OS default if set. */
164+
protected null|string|DataThemeEnum $dataTheme = null;
165+
166+
/**
167+
* Choose the position of a tooltip. Depends on data-tooltip attribute.
168+
* @example top
169+
*/
170+
protected null|string|DataPlacementEnum $dataPlacement = null;
171+
172+
public function setDataTheme(string|DataThemeEnum $dataTheme): static
173+
{
174+
$value = $dataTheme;
175+
if (is_string($dataTheme)) {
176+
$resolved = DataThemeEnum::tryFrom($dataTheme);
177+
if ($resolved !== null) {
178+
$dataTheme = $resolved;
179+
}
180+
}
181+
if ($dataTheme instanceof DataThemeEnum) {
182+
$value = $dataTheme->value;
183+
}
184+
$this->dataTheme = $dataTheme;
185+
$this->delegated->setAttribute('dataTheme', (string) $value);
186+
187+
return $this;
188+
}
189+
190+
public function getDataTheme(): string|DataThemeEnum
191+
{
192+
return $this->dataTheme;
193+
}
194+
195+
public function setDataTooltip(string $dataTooltip): static
196+
{
197+
$this->dataTooltip = $dataTooltip;
198+
$this->delegated->setAttribute('dataTooltip', (string) $dataTooltip);
199+
return $this;
200+
}
201+
202+
public function getDataTooltip(): ?string
203+
{
204+
return $this->dataTooltip;
205+
}
206+
207+
public function setDataPlacement(string|DataPlacementEnum $dataPlacement): static
208+
{
209+
$value = $dataPlacement;
210+
if (is_string($dataPlacement)) {
211+
$resolved = DataPlacementEnum::tryFrom($dataPlacement);
212+
if ($resolved !== null) {
213+
$dataPlacement = $resolved;
214+
}
215+
}
216+
if ($dataPlacement instanceof DataPlacementEnum) {
217+
$value = $dataPlacement->value;
218+
}
219+
$this->dataPlacement = $dataPlacement;
220+
$this->delegated->setAttribute('dataPlacement', (string) $value);
221+
222+
return $this;
223+
}
224+
225+
public function getDataPlacement(): string|DataPlacementEnum
226+
{
227+
return $this->dataPlacement;
228+
}
155229
}

src/Element/Block/Audio.php

Lines changed: 75 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
*
66
* Audio - The audio element is used to embed sound content in documents. It may contain one or more audio sources, represented using the src attribute or the source element.
77
*
8-
* @generated 2025-10-19 20:20:48
8+
* @generated 2025-10-19 21:39:12
99
* @subpackage Html\Element\Block
1010
* @link https://vardumper.github.io/extended-htmldocument/
1111
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio
@@ -16,6 +16,8 @@
1616
use Html\Element\BlockElement;
1717
use Html\Element\Inline\MarkedText;
1818
use Html\Enum\CrossoriginEnum;
19+
use Html\Enum\DataPlacementEnum;
20+
use Html\Enum\DataThemeEnum;
1921
use Html\Enum\PreloadEnum;
2022
use Html\Mapping\Element;
2123
use InvalidArgumentException;
@@ -88,13 +90,27 @@ class Audio extends BlockElement
8890
*/
8991
public ?string $src = null;
9092

93+
/**
94+
* Give extra context and information by adding tooltips.
95+
*/
96+
public ?string $dataTooltip = null;
97+
9198
/**
9299
* Specifies how the element handles cross-origin requests.
93100
*/
94101
protected ?CrossoriginEnum $crossorigin = null;
95102

96103
protected ?PreloadEnum $preload = null;
97104

105+
/** Choose between light and dark mode. Overrides the OS default if set. */
106+
protected null|string|DataThemeEnum $dataTheme = null;
107+
108+
/**
109+
* Choose the position of a tooltip. Depends on data-tooltip attribute.
110+
* @example top
111+
*/
112+
protected null|string|DataPlacementEnum $dataPlacement = null;
113+
98114
public function setAutoplay(bool $autoplay): static
99115
{
100116
$this->autoplay = $autoplay;
@@ -190,4 +206,62 @@ public function getSrc(): ?string
190206
{
191207
return $this->src;
192208
}
209+
210+
public function setDataTheme(string|DataThemeEnum $dataTheme): static
211+
{
212+
$value = $dataTheme;
213+
if (is_string($dataTheme)) {
214+
$resolved = DataThemeEnum::tryFrom($dataTheme);
215+
if ($resolved !== null) {
216+
$dataTheme = $resolved;
217+
}
218+
}
219+
if ($dataTheme instanceof DataThemeEnum) {
220+
$value = $dataTheme->value;
221+
}
222+
$this->dataTheme = $dataTheme;
223+
$this->delegated->setAttribute('dataTheme', (string) $value);
224+
225+
return $this;
226+
}
227+
228+
public function getDataTheme(): string|DataThemeEnum
229+
{
230+
return $this->dataTheme;
231+
}
232+
233+
public function setDataTooltip(string $dataTooltip): static
234+
{
235+
$this->dataTooltip = $dataTooltip;
236+
$this->delegated->setAttribute('dataTooltip', (string) $dataTooltip);
237+
return $this;
238+
}
239+
240+
public function getDataTooltip(): ?string
241+
{
242+
return $this->dataTooltip;
243+
}
244+
245+
public function setDataPlacement(string|DataPlacementEnum $dataPlacement): static
246+
{
247+
$value = $dataPlacement;
248+
if (is_string($dataPlacement)) {
249+
$resolved = DataPlacementEnum::tryFrom($dataPlacement);
250+
if ($resolved !== null) {
251+
$dataPlacement = $resolved;
252+
}
253+
}
254+
if ($dataPlacement instanceof DataPlacementEnum) {
255+
$value = $dataPlacement->value;
256+
}
257+
$this->dataPlacement = $dataPlacement;
258+
$this->delegated->setAttribute('dataPlacement', (string) $value);
259+
260+
return $this;
261+
}
262+
263+
public function getDataPlacement(): string|DataPlacementEnum
264+
{
265+
return $this->dataPlacement;
266+
}
193267
}

0 commit comments

Comments
 (0)