diff --git a/Classes/CodeGenerator/HtmlCodeGenerator.php b/Classes/CodeGenerator/HtmlCodeGenerator.php
index 1009d916..d56757b6 100644
--- a/Classes/CodeGenerator/HtmlCodeGenerator.php
+++ b/Classes/CodeGenerator/HtmlCodeGenerator.php
@@ -74,7 +74,7 @@ protected function generateFieldHtml(TcaFieldDefinition $field, ElementTcaDefini
if (!$field->hasFieldType($element->elementDefinition->key) || !$field->getFieldType($element->elementDefinition->key)->isRenderable()) {
return '';
}
- switch ((string)$field->getFieldType($element->elementDefinition->key)) {
+ switch ($field->getFieldType($element->elementDefinition->key)) {
case FieldType::SELECT:
if (($field->realTca['config']['foreign_table'] ?? '') !== '') {
$html[] = $this->drawWhitespace(0 + $depth) . '';
diff --git a/Classes/CodeGenerator/SqlCodeGenerator.php b/Classes/CodeGenerator/SqlCodeGenerator.php
index 95c719aa..699b4e96 100644
--- a/Classes/CodeGenerator/SqlCodeGenerator.php
+++ b/Classes/CodeGenerator/SqlCodeGenerator.php
@@ -100,7 +100,7 @@ protected function getSqlByConfiguration(): array
} catch (\InvalidArgumentException $e) {
continue;
}
- if ($fieldType->equals(FieldType::INLINE) && !$tableDefinitionCollection->hasTable($column->column)) {
+ if ($fieldType == FieldType::INLINE && !$tableDefinitionCollection->hasTable($column->column)) {
continue;
}
if (!$tableDefinition->tca->hasField($column->column)) {
@@ -115,7 +115,7 @@ protected function getSqlByConfiguration(): array
$sql[] = 'CREATE TABLE ' . $tableDefinition->table . " (\n\t" . $column->column . ' ' . $column->sqlDefinition . "\n);\n";
// if this field is a content field, also add parent columns
- if ($fieldType->equals(FieldType::CONTENT)) {
+ if ($fieldType == FieldType::CONTENT) {
$sql[] = 'CREATE TABLE tt_content ( tx_mask_content_parent_uid int(11) unsigned DEFAULT \'0\' NOT NULL );' . "\n";
$sql[] = 'CREATE TABLE tt_content ( tx_mask_content_role varchar(255) DEFAULT \'\' NOT NULL );' . "\n";
$sql[] = 'CREATE TABLE tt_content ( tx_mask_content_tablenames varchar(255) DEFAULT \'\' NOT NULL );' . "\n";
diff --git a/Classes/CodeGenerator/TcaCodeGenerator.php b/Classes/CodeGenerator/TcaCodeGenerator.php
index 591cd8f8..57b14ef0 100644
--- a/Classes/CodeGenerator/TcaCodeGenerator.php
+++ b/Classes/CodeGenerator/TcaCodeGenerator.php
@@ -197,7 +197,7 @@ public function setElementsTca(): void
$bodytext = $elementTca->tcaDefinition->getField('bodytext');
if (
!$bodytext->hasFieldType($element->key)
- || $bodytext->getFieldType($element->key)->equals(FieldType::RICHTEXT)
+ || $bodytext->getFieldType($element->key) == FieldType::RICHTEXT
) {
$GLOBALS['TCA']['tt_content']['types'][$cTypeKey]['columnsOverrides']['bodytext']['config']['enableRichtext'] = 1;
}
@@ -215,7 +215,7 @@ public function getPagePalettes(string $elementKey): array
$pages = $this->tableDefinitionCollection->getTable('pages');
$element = $pages->elements->getElement($elementKey);
foreach ($element->columns as $column) {
- if ($this->tableDefinitionCollection->getFieldType($column, 'pages')->equals(FieldType::PALETTE)) {
+ if ($this->tableDefinitionCollection->getFieldType($column, 'pages') == FieldType::PALETTE) {
$palettes[$column] = $this->generatePalettesTca($pages->palettes->getPalette($column), 'pages');
}
}
@@ -246,10 +246,10 @@ protected function generateShowItem(string $prependTabs, string $elementKey, str
try {
$fieldType = $this->tableDefinitionCollection->getFieldType($fieldKey, $table);
} catch (\InvalidArgumentException $e) {
- $fieldType = new FieldType(FieldType::STRING);
+ $fieldType = FieldType::STRING;
}
// Check if this field is of type tab
- if ($fieldType->equals(FieldType::TAB)) {
+ if ($fieldType == FieldType::TAB) {
$label = $this->tableDefinitionCollection->getLabel($elementKey, $fieldKey, $table);
// If a tab is in the first position then change the name of the general tab
if ($index === 0) {
@@ -258,9 +258,9 @@ protected function generateShowItem(string $prependTabs, string $elementKey, str
// Otherwise just add new tab
$fieldArray[] = '--div--;' . $label;
}
- } elseif ($fieldType->equals(FieldType::PALETTE)) {
+ } elseif ($fieldType == FieldType::PALETTE) {
$fieldArray[] = '--palette--;;' . $fieldKey;
- } elseif ($fieldType->equals(FieldType::INLINE)) {
+ } elseif ($fieldType == FieldType::INLINE) {
// Make sure only inline fields with at least 1 field are added.
$inlineFields = $this->tableDefinitionCollection->loadInlineFields($fieldKey, $element->key, $element);
if ($inlineFields->toArray() !== []) {
@@ -282,7 +282,7 @@ protected function generatePalettesTca(PaletteDefinition $palette, string $table
{
$showitem = [];
foreach ($palette->showitem as $item) {
- if ($this->tableDefinitionCollection->getFieldType($item, $table)->equals(FieldType::LINEBREAK)) {
+ if ($this->tableDefinitionCollection->getFieldType($item, $table) == FieldType::LINEBREAK) {
$showitem[] = '--linebreak--';
} else {
$showitem[] = $item;
@@ -340,7 +340,7 @@ public function generateFieldsTca(string $table): array
$additionalTca[$field->fullKey] = [];
// File: Add file config.
- if ($fieldType->equals(FieldType::FILE) || $fieldType->equals(FieldType::MEDIA)) {
+ if ($fieldType == FieldType::FILE || $fieldType == FieldType::MEDIA) {
$additionalTca[$field->fullKey]['config'] = $this->getFileTCAConfig($fieldType, $field);
}
@@ -352,12 +352,12 @@ public function generateFieldsTca(string $table): array
$field->realTca['config'] = self::reconfigureTCAConfig($field, $field->realTca['config']);
// InputLink: Add softref
- if ($fieldType->equals(FieldType::LINK)) {
+ if ($fieldType == FieldType::LINK) {
$field->realTca['config']['softref'] = 'typolink';
}
// Content: Set foreign_field and default CType in select if restricted.
- if ($fieldType->equals(FieldType::CONTENT)) {
+ if ($fieldType == FieldType::CONTENT) {
$field->realTca['config']['foreign_field'] = 'tx_mask_content_parent_uid';
$field->realTca['config']['foreign_table_field'] = 'tx_mask_content_tablenames';
$field->realTca['config']['foreign_match_fields'] = [
@@ -386,7 +386,7 @@ public function generateFieldsTca(string $table): array
private function getFileTCAConfig(FieldType $fieldType, TcaFieldDefinition $field, ?TcaFieldDefinition $columnsOverride = null): array
{
- if ($field->imageoverlayPalette || $fieldType->equals(FieldType::MEDIA)) {
+ if ($field->imageoverlayPalette || $fieldType == FieldType::MEDIA) {
$customSettingOverride = [
'overrideChildTca' => [
'types' => [
@@ -440,16 +440,16 @@ private function getFileTCAConfig(FieldType $fieldType, TcaFieldDefinition $fiel
? $columnsOverride->onlineMedia
: $field->onlineMedia;
- if ($fieldType->equals(FieldType::FILE) && $field->allowedFileExtensions === '') {
+ if ($fieldType == FieldType::FILE && $field->allowedFileExtensions === '') {
$field->allowedFileExtensions = 'common-image-types';
}
- if ($fieldType->equals(FieldType::MEDIA) && $field->allowedFileExtensions === '') {
+ if ($fieldType == FieldType::MEDIA && $field->allowedFileExtensions === '') {
$field->allowedFileExtensions = 'common-media-types';
}
// Only allow media types the user has selected, but always include the rest.
- if ($fieldType->equals(FieldType::MEDIA)) {
+ if ($fieldType == FieldType::MEDIA) {
$onlineMediaHelpers = $this->onlineMediaHelperRegistry->getSupportedFileExtensions();
$allowedFileExtensionList = GeneralUtility::trimExplode(',', $field->allowedFileExtensions, true);
$alwaysIncluded = array_diff($allowedFileExtensionList, $onlineMediaHelpers);
@@ -485,12 +485,12 @@ private static function reconfigureTCAConfig(TcaFieldDefinition $field, array $t
}
// Text: Set correct rendertype if format (code highlighting) is set.
- if ($fieldType->equals(FieldType::TEXT) && ($tcaConfig['format'] ?? false)) {
+ if ($fieldType == FieldType::TEXT && ($tcaConfig['format'] ?? false)) {
$tcaConfig['renderType'] = 't3editor';
}
// RTE: Add softref
- if ($fieldType->equals(FieldType::RICHTEXT)) {
+ if ($fieldType == FieldType::RICHTEXT) {
$tcaConfig['softref'] = 'typolink_tag,email[subst],url';
}
@@ -521,19 +521,19 @@ public function generateTCAColumnsOverrides(string $table): array
// Do not generate any overrides for empty inline fields.
if (
$fieldDefinition->hasFieldType()
- && $fieldDefinition->getFieldType()->equals(FieldType::INLINE)
+ && $fieldDefinition->getFieldType() == FieldType::INLINE
&& $this->tableDefinitionCollection->loadInlineFields($fieldDefinition->fullKey, $element->key, $element)->toArray() === []
) {
continue;
}
// Do not generate any overrides for tabs.
- if ($fieldDefinition->hasFieldType() && $fieldDefinition->getFieldType()->equals(FieldType::TAB)) {
+ if ($fieldDefinition->hasFieldType() && $fieldDefinition->getFieldType() == FieldType::TAB) {
continue;
}
// Build TCA columns overrides.
- if ($fieldDefinition->hasFieldType() && $fieldDefinition->getFieldType()->equals(FieldType::PALETTE)) {
+ if ($fieldDefinition->hasFieldType() && $fieldDefinition->getFieldType() == FieldType::PALETTE) {
foreach ($this->tableDefinitionCollection->loadInlineFields($fieldName, $element->key, $element) as $paletteField) {
$label = $paletteField->getLabel($element->key);
if ($label !== '') {
@@ -597,7 +597,7 @@ public function processTableTca(TableDefinition $tableDefinition): array
foreach ($tableDefinition->tca as $field) {
// check if this field is of type tab
$fieldType = $this->tableDefinitionCollection->getFieldType($field->fullKey, $tableDefinition->table);
- if ($fieldType->equals(FieldType::TAB)) {
+ if ($fieldType == FieldType::TAB) {
// if a tab is in the first position then change the name of the general tab
if ($firstField) {
$generalTab = '--div--;' . $field->label;
@@ -605,7 +605,7 @@ public function processTableTca(TableDefinition $tableDefinition): array
// otherwise just add new tab
$fields[] = '--div--;' . $field->label;
}
- } elseif ($fieldType->equals(FieldType::PALETTE)) {
+ } elseif ($fieldType == FieldType::PALETTE) {
if ($firstField && empty($tableDefinition->palettes->getPalette($field->fullKey)->showitem)) {
$firstField = false;
continue;
@@ -654,7 +654,7 @@ public function addSearchFields(string $table): string
try {
$fieldType = $this->tableDefinitionCollection->getFieldType($field->fullKey, $table);
} catch (\InvalidArgumentException $e) {
- $fieldType = new FieldType(FieldType::STRING);
+ $fieldType = FieldType::STRING;
}
if ($fieldType->isSearchable() && !in_array($field->fullKey, $searchFields, true)) {
$searchFields[] = $field->fullKey;
diff --git a/Classes/CodeGenerator/TyposcriptCodeGenerator.php b/Classes/CodeGenerator/TyposcriptCodeGenerator.php
index 40598862..9053bba4 100644
--- a/Classes/CodeGenerator/TyposcriptCodeGenerator.php
+++ b/Classes/CodeGenerator/TyposcriptCodeGenerator.php
@@ -169,7 +169,7 @@ protected function generateTCEFORM(string $fieldKey, int $index, ElementDefiniti
return $TSConfig;
}
// As this is called very early, TCA for core fields might not be loaded yet. So ignore them.
- if (!$fieldDefinition->isCoreField && $this->tableDefinitionCollection->getFieldType($fieldKey, $table)->equals(FieldType::PALETTE)) {
+ if (!$fieldDefinition->isCoreField && $this->tableDefinitionCollection->getFieldType($fieldKey, $table) == FieldType::PALETTE) {
foreach ($this->tableDefinitionCollection->loadInlineFields($fieldKey, $element->key, $element) as $field) {
// Add label from field config.
$label = $field->getLabel($element->key);
diff --git a/Classes/Controller/AjaxController.php b/Classes/Controller/AjaxController.php
index 34851170..7d1ed51e 100644
--- a/Classes/Controller/AjaxController.php
+++ b/Classes/Controller/AjaxController.php
@@ -415,36 +415,36 @@ public function fieldTypes(ServerRequestInterface $request): Response
{
$json = [];
// $availability = [
- // FieldType::EMAIL => 12,
- // FieldType::FOLDER => 12,
+ // FieldType::EMAIL->value => 12,
+ // FieldType::FOLDER->value => 12,
// ];
// $typo3Version = new Typo3Version();
$defaults = $this->configurationLoader->loadDefaults();
$grouping = $this->configurationLoader->loadFieldGroups();
- foreach (FieldType::getConstants() as $type) {
+ foreach (FieldType::cases() as $type) {
// if (isset($availability[$type]) && $typo3Version->getMajorVersion() < $availability[$type]) {
// continue;
// }
$config = [
- 'name' => $type,
- 'icon' => $this->iconFactory->getIcon('mask-fieldtype-' . $type)->getMarkup(),
+ 'name' => $type->value,
+ 'icon' => $this->iconFactory->getIcon('mask-fieldtype-' . $type->value)->getMarkup(),
'fields' => [],
'key' => '',
'label' => '',
'description' => '',
'translatedLabel' => '',
- 'itemLabel' => $this->translateLabel('tx_mask.field.' . $type),
+ 'itemLabel' => $this->translateLabel('tx_mask.field.' . $type->value),
'parent' => [],
- 'group' => $grouping[$type],
+ 'group' => $grouping[$type->value],
'newField' => true,
'tca' => [
'l10n_mode' => '',
],
];
- if (isset($defaults[$type]['tca_in'])) {
- foreach ($defaults[$type]['tca_in'] as $tcaKey => $value) {
+ if (isset($defaults[$type->value]['tca_in'])) {
+ foreach ($defaults[$type->value]['tca_in'] as $tcaKey => $value) {
$config['tca'][$tcaKey] = $value;
}
}
@@ -527,7 +527,7 @@ public function loadAllMultiUse(ServerRequestInterface $request): Response
}
// Get fields in palette
- if ($field->getFieldType()->equals(FieldType::PALETTE)) {
+ if ($field->getFieldType() == FieldType::PALETTE) {
foreach ($this->tableDefinitionCollection->loadInlineFields($field->fullKey, $elementKey, $element->elementDefinition) as $paletteField) {
if ($paletteField->isCoreField || !$paletteField->getFieldType()->canBeShared()) {
continue;
@@ -656,7 +656,7 @@ public function existingTca(ServerRequestInterface $request): Response
$table = $request->getQueryParams()['table'];
$type = $request->getQueryParams()['type'];
$fields = ['mask' => [], 'core' => []];
- $searchFieldType = FieldType::cast($type);
+ $searchFieldType = FieldType::from($type);
// Return empty result for non-shareable fields.
if (!$searchFieldType->canBeShared()) {
@@ -684,7 +684,7 @@ public function existingTca(ServerRequestInterface $request): Response
// OR the field is the bodytext field, and we search for a text or textarea field.
$fieldType = $this->tableDefinitionCollection->getFieldType($tcaField, $table);
if (
- $fieldType->equals($type)
+ $fieldType->value == $type
|| (
$tcaField === 'bodytext' && $searchFieldType->isTextareaField()
)
@@ -793,27 +793,27 @@ public function cTypes(ServerRequestInterface $request): Response
public function tabs(ServerRequestInterface $request): Response
{
// $availability = [
- // FieldType::CATEGORY => 11,
+ // FieldType::CATEGORY->value => 11,
// ];
// $typo3Version = new Typo3Version();
$tabs = [];
$availableTcaFields = $this->configurationLoader->loadTcaFields();
- foreach (FieldType::getConstants() as $type) {
+ foreach (FieldType::cases() as $type) {
// if (isset($availability[$type]) && $typo3Version->getMajorVersion() < $availability[$type]) {
// continue;
// }
- $tabs[$type] = $this->configurationLoader->loadTab($type);
+ $tabs[$type->value] = $this->configurationLoader->loadTab($type->value);
// Remove unavailable TCA options
- foreach ($tabs[$type] as $tabType => $rows) {
+ foreach ($tabs[$type->value] as $tabType => $rows) {
foreach ($rows as $rowIndex => $fields) {
foreach ($fields as $tcaField => $ize) {
if (!array_key_exists($tcaField, $availableTcaFields)) {
- unset($tabs[$type][$tabType][$rowIndex][$tcaField]);
+ unset($tabs[$type->value][$tabType][$rowIndex][$tcaField]);
}
}
// Remove empty rows
- if (empty($tabs[$type][$tabType][$rowIndex])) {
- unset($tabs[$type][$tabType][$rowIndex]);
+ if (empty($tabs[$type->value][$tabType][$rowIndex])) {
+ unset($tabs[$type->value][$tabType][$rowIndex]);
}
}
}
@@ -825,19 +825,19 @@ public function language(ServerRequestInterface $request): Response
{
$language = [];
$tabs = [
- Tab::GENERAL => 'tx_mask.tabs.default',
- Tab::APPEARANCE => 'tx_mask.tabs.appearance',
- Tab::DATABASE => 'tx_mask.tabs.database',
- Tab::EXTENDED => 'tx_mask.tabs.extended',
- Tab::FIELD_CONTROL => 'tx_mask.tabs.fieldControl',
- Tab::FILES => 'tx_mask.tabs.files',
- Tab::LOCALIZATION => 'tx_mask.tabs.localization',
- Tab::VALIDATION => 'tx_mask.tabs.validation',
- Tab::WIZARDS => 'tx_mask.tabs.wizards',
- Tab::GENERATOR => 'tx_mask.tabs.generator',
- Tab::ITEM_GROUP_SORTING => 'tx_mask.tabs.itemGroupSorting',
- Tab::VALUE_PICKER => 'tx_mask.tabs.valuePicker',
- Tab::ENABLED_CONTROLS => 'tx_mask.tabs.enabledControls',
+ Tab::GENERAL->value => 'tx_mask.tabs.default',
+ Tab::APPEARANCE->value => 'tx_mask.tabs.appearance',
+ Tab::DATABASE->value => 'tx_mask.tabs.database',
+ Tab::EXTENDED->value => 'tx_mask.tabs.extended',
+ Tab::FIELD_CONTROL->value => 'tx_mask.tabs.fieldControl',
+ Tab::FILES->value => 'tx_mask.tabs.files',
+ Tab::LOCALIZATION->value => 'tx_mask.tabs.localization',
+ Tab::VALIDATION->value => 'tx_mask.tabs.validation',
+ Tab::WIZARDS->value => 'tx_mask.tabs.wizards',
+ Tab::GENERATOR->value => 'tx_mask.tabs.generator',
+ Tab::ITEM_GROUP_SORTING->value => 'tx_mask.tabs.itemGroupSorting',
+ Tab::VALUE_PICKER->value => 'tx_mask.tabs.valuePicker',
+ Tab::ENABLED_CONTROLS->value => 'tx_mask.tabs.enabledControls',
];
foreach ($tabs as $key => $tab) {
@@ -1050,7 +1050,7 @@ public function checkFieldKey(ServerRequest $request): Response
$elementKey = $queryParams['elementKey'];
// Check if an inline table with the same key already exists.
- if ($type === FieldType::INLINE) {
+ if ($type === FieldType::INLINE->value) {
return new JsonResponse(['isAvailable' => !$this->tableDefinitionCollection->hasTable($fieldKey)]);
}
@@ -1058,7 +1058,7 @@ public function checkFieldKey(ServerRequest $request): Response
// with the same field type exists, it may be shared.
$field = $this->tableDefinitionCollection->loadField($table, $fieldKey);
- return new JsonResponse(['isAvailable' => (!$field instanceof TcaFieldDefinition || !$field->hasFieldType($elementKey) || $field->getFieldType($elementKey)->equals($type))]);
+ return new JsonResponse(['isAvailable' => (!$field instanceof TcaFieldDefinition || !$field->hasFieldType($elementKey) || $field->getFieldType($elementKey)->value == $type)]);
}
protected function addFlashMessage(string $messageBody, string $messageTitle = '', ContextualFeedbackSeverity $severity = ContextualFeedbackSeverity::OK, bool $storeInSession = true): void
diff --git a/Classes/Controller/FieldsController.php b/Classes/Controller/FieldsController.php
index 999edd7f..8f53527a 100644
--- a/Classes/Controller/FieldsController.php
+++ b/Classes/Controller/FieldsController.php
@@ -129,7 +129,7 @@ protected function addFields(array $fields, string $table, string $elementKey =
}
}
- $newField['name'] = (string)$fieldType;
+ $newField['name'] = $fieldType->value;
$newField['icon'] = $this->iconFactory->getIcon('mask-fieldtype-' . $newField['name'])->getMarkup();
$newField['tca'] = [];
@@ -142,7 +142,7 @@ protected function addFields(array $fields, string $table, string $elementKey =
$newField['tca']['l10n_mode'] = $field['l10n_mode'] ?? '';
}
- if ($fieldType->equals(FieldType::TIMESTAMP)) {
+ if ($fieldType == FieldType::TIMESTAMP) {
$default = $newField['tca']['config.default'] ?? false;
$evalDate = $newField['tca']['config.format'];
if ($default) {
@@ -158,7 +158,7 @@ protected function addFields(array $fields, string $table, string $elementKey =
}
}
- if ($fieldType->equals(FieldType::FILE)) {
+ if ($fieldType == FieldType::FILE) {
$newField['tca']['imageoverlayPalette'] = $field['imageoverlayPalette'] ?? 1;
}
@@ -166,20 +166,20 @@ protected function addFields(array $fields, string $table, string $elementKey =
$newField['tca']['allowedFileExtensions'] = $field['allowedFileExtensions'] ?? '';
}
- if ($fieldType->equals(FieldType::CONTENT)) {
+ if ($fieldType == FieldType::CONTENT) {
$newField['tca']['cTypes'] = $field['cTypes'] ?? [];
}
- if ($fieldType->equals(FieldType::MEDIA)) {
+ if ($fieldType == FieldType::MEDIA) {
$newField['tca']['onlineMedia'] = $field['onlineMedia'] ?? [];
}
// Set defaults for mask fields
- foreach ($defaults[(string)$fieldType]['tca_in'] ?? [] as $tcaKey => $defaultValue) {
+ foreach ($defaults[$fieldType->value]['tca_in'] ?? [] as $tcaKey => $defaultValue) {
$newField['tca'][$tcaKey] = $newField['tca'][$tcaKey] ?? $defaultValue;
}
- if ($fieldType->equals(FieldType::INLINE)) {
+ if ($fieldType == FieldType::INLINE) {
$newField['tca']['ctrl.iconfile'] = $field['ctrl']['iconfile'] ?? '';
$newField['tca']['ctrl.label'] = $field['ctrl']['label'] ?? '';
}
@@ -192,7 +192,7 @@ protected function addFields(array $fields, string $table, string $elementKey =
? $elementTcaDefinition->elementDefinition
: null;
$inlineFields = $this->tableDefinitionCollection->loadInlineFields($newField['key'], $elementKey, $element);
- $inlineTable = $fieldType->equals(FieldType::INLINE) ? $newField['key'] : $table;
+ $inlineTable = $fieldType == FieldType::INLINE ? $newField['key'] : $table;
$newField['fields'] = $this->addFields(
$inlineFields->toArray(),
$inlineTable,
@@ -211,7 +211,7 @@ protected function addFields(array $fields, string $table, string $elementKey =
*/
protected function cleanUpConfig(array $config, FieldType $fieldType): array
{
- $tabConfig = $this->configurationLoader->loadTab((string)$fieldType);
+ $tabConfig = $this->configurationLoader->loadTab($fieldType->value);
$tcaOptions = [];
foreach ($tabConfig as $options) {
foreach ($options as $row) {
diff --git a/Classes/Definition/TableDefinitionCollection.php b/Classes/Definition/TableDefinitionCollection.php
index dcd57367..0da0506d 100644
--- a/Classes/Definition/TableDefinitionCollection.php
+++ b/Classes/Definition/TableDefinitionCollection.php
@@ -227,7 +227,7 @@ public function loadElement(string $table, string $key): ?ElementTcaDefinition
$availableTcaField = $availableTcaField->mergeTca($element->getColumnsOverride($fieldKey));
}
$tcaDefinition->addField($availableTcaField);
- if ($availableTcaField->hasFieldType() && $availableTcaField->getFieldType()->equals(FieldType::PALETTE)) {
+ if ($availableTcaField->hasFieldType() && $availableTcaField->getFieldType() == FieldType::PALETTE) {
$paletteFields = $this->loadInlineFields($availableTcaField->fullKey, $element->key, $element);
foreach ($paletteFields as $paletteField) {
$tcaDefinition->addField($paletteField);
@@ -276,7 +276,7 @@ public function loadInlineFields(string $parentKey, string $elementKey, ?Element
public function getFieldType(string $fieldKey, string $table = 'tt_content', string $elementKey = ''): FieldType
{
- return FieldType::cast($this->getFieldTypeString($fieldKey, $table, $elementKey));
+ return FieldType::from($this->getFieldTypeString($fieldKey, $table, $elementKey));
}
/**
@@ -289,10 +289,10 @@ public function getFieldTypeString(string $fieldKey, string $table = 'tt_content
if ($fieldDefinition instanceof TcaFieldDefinition) {
// If type is already known, return it.
if ($fieldDefinition->hasFieldType($elementKey)) {
- return (string)$fieldDefinition->getFieldType($elementKey);
+ return $fieldDefinition->getFieldType($elementKey)->value;
}
try {
- return FieldTypeUtility::getFieldType($fieldDefinition->toArray(), $fieldDefinition->fullKey);
+ return FieldTypeUtility::getFieldType($fieldDefinition->toArray(), $fieldDefinition->fullKey)->value;
} catch (\InvalidArgumentException $e) {
// For core fields this exception might pop up, because in older
// Mask versions no type was defined directly in the definition.
@@ -300,7 +300,7 @@ public function getFieldTypeString(string $fieldKey, string $table = 'tt_content
}
// If field could not be found in field definition, check for global TCA.
$tca = $GLOBALS['TCA'][$table]['columns'][$fieldKey] ?? [];
- return FieldTypeUtility::getFieldType($tca, $fieldKey);
+ return FieldTypeUtility::getFieldType($tca, $fieldKey)->value;
}
/**
@@ -345,7 +345,7 @@ public function getElementsWhichUseField(string $key, string $table = 'tt_conten
break;
}
$fieldDefinition = $this->loadField($table, $column);
- if ($fieldDefinition instanceof TcaFieldDefinition && $fieldDefinition->hasFieldType() && $fieldDefinition->getFieldType()->equals(FieldType::PALETTE)) {
+ if ($fieldDefinition instanceof TcaFieldDefinition && $fieldDefinition->hasFieldType() && $fieldDefinition->getFieldType() == FieldType::PALETTE) {
foreach ($definition->palettes->getPalette($column)->showitem as $item) {
if ($item === $key) {
$elementsInUse->addElement($element);
diff --git a/Classes/Definition/TcaFieldDefinition.php b/Classes/Definition/TcaFieldDefinition.php
index eec985d7..6f5e6610 100644
--- a/Classes/Definition/TcaFieldDefinition.php
+++ b/Classes/Definition/TcaFieldDefinition.php
@@ -27,10 +27,10 @@
final class TcaFieldDefinition
{
private const ALLOWED_EMPTY_VALUES_BY_TYPE = [
- FieldType::SELECT => [
+ FieldType::SELECT->value => [
'config.items',
],
- FieldType::CHECK => [
+ FieldType::CHECK->value => [
'config.items',
],
// This is important for upgrades, to keep something in the "config" array.
@@ -38,19 +38,19 @@ final class TcaFieldDefinition
// Because of this, Mask does not have any standard TCA for this field anymore.
// The removeBlankOptions method would thus remove everything and the next save in the backend builder would
// result in the file field to be treated as a "coreField".
- FieldType::FILE => [
+ FieldType::FILE->value => [
'config.minitems',
],
- FieldType::MEDIA => [
+ FieldType::MEDIA->value => [
'config.minitems',
],
];
private const STOP_RECURSIVE_VALUES_BY_TYPE = [
- FieldType::SELECT => [
+ FieldType::SELECT->value => [
'config.itemGroups',
],
- FieldType::SLUG => [
+ FieldType::SLUG->value => [
'config.generatorOptions.replacements',
],
];
@@ -167,7 +167,7 @@ public static function createFromFieldArray(array $definition): TcaFieldDefiniti
// "name" was renamed to "type" in mask 7.1.
$fieldType = $definition['type'] ?? $definition['name'] ?? $definition['options'] ?? null;
if ($fieldType !== null) {
- $tcaFieldDefinition->type = FieldType::cast($fieldType);
+ $tcaFieldDefinition->type = FieldType::from($fieldType);
}
// Always set minitems / maxitems so the config array is not completely empty.
@@ -182,23 +182,23 @@ public static function createFromFieldArray(array $definition): TcaFieldDefiniti
// "rte" was used to identify RTE fields prior to v6.
if (!$tcaFieldDefinition->hasFieldType() && !empty($definition['rte'])) {
- $tcaFieldDefinition->type = FieldType::cast(FieldType::RICHTEXT);
+ $tcaFieldDefinition->type = FieldType::RICHTEXT;
}
// The core field bodytext used to be hard coded as richtext in Mask versions < v7.2
if (!$tcaFieldDefinition->hasFieldType() && $definition['key'] === 'bodytext') {
- $tcaFieldDefinition->type = FieldType::cast(FieldType::RICHTEXT);
+ $tcaFieldDefinition->type = FieldType::RICHTEXT;
}
// If the field is not a core field and the field type couldn't be resolved by now, resolve type by tca config.
if (!$tcaFieldDefinition->hasFieldType() && !$tcaFieldDefinition->isCoreField) {
- $tcaFieldDefinition->type = FieldType::cast(FieldTypeUtility::getFieldType($tcaFieldDefinition->toArray(), $tcaFieldDefinition->fullKey));
+ $tcaFieldDefinition->type = FieldTypeUtility::getFieldType($tcaFieldDefinition->toArray(), $tcaFieldDefinition->fullKey);
}
// If imageoverlayPalette is not set (because of updates to newer version), fallback to default behaviour.
if (isset($definition['imageoverlayPalette'])) {
$tcaFieldDefinition->imageoverlayPalette = (bool)$definition['imageoverlayPalette'];
- } elseif ($tcaFieldDefinition->hasFieldType() && $tcaFieldDefinition->type->equals(FieldType::FILE)) {
+ } elseif ($tcaFieldDefinition->hasFieldType() && $tcaFieldDefinition->type == FieldType::FILE) {
$tcaFieldDefinition->imageoverlayPalette = true;
}
@@ -212,7 +212,7 @@ public static function createFromFieldArray(array $definition): TcaFieldDefiniti
if (!empty($definition['bodytextTypeByElement'])) {
foreach ($definition['bodytextTypeByElement'] as $elementKey => $bodytextType) {
- $tcaFieldDefinition->bodytextTypeByElement[$elementKey] = FieldType::cast($bodytextType);
+ $tcaFieldDefinition->bodytextTypeByElement[$elementKey] = FieldType::from($bodytextType);
}
// Unset the normal type
$tcaFieldDefinition->type = null;
@@ -415,7 +415,7 @@ public function toArray(bool $withBackwardsCompatibility = false): array
$field += [
'key' => $this->key,
'fullKey' => $this->fullKey,
- 'type' => $this->type ? (string)$this->type : null,
+ 'type' => $this->type?->value,
'coreField' => $this->isCoreField ? 1 : null,
'inPalette' => $this->inPalette ? 1 : null,
'cTypes' => !empty($this->cTypes) ? $this->cTypes : null,
@@ -428,7 +428,7 @@ public function toArray(bool $withBackwardsCompatibility = false): array
$field['maskKey'] = $this->fullKey;
}
- if ($this->hasFieldType() && $this->type->equals(FieldType::FILE)) {
+ if ($this->hasFieldType() && $this->type == FieldType::FILE) {
$field['imageoverlayPalette'] = $this->imageoverlayPalette ? 1 : 0;
}
@@ -492,8 +492,8 @@ protected static function removeBlankOptions(array $haystack, TcaFieldDefinition
$fullPath = implode('.', $path);
if (
$fieldDefinition->hasFieldType()
- && array_key_exists((string)$fieldDefinition->type, self::ALLOWED_EMPTY_VALUES_BY_TYPE)
- && in_array($fullPath, self::ALLOWED_EMPTY_VALUES_BY_TYPE[(string)$fieldDefinition->type], true)
+ && array_key_exists($fieldDefinition->type->value, self::ALLOWED_EMPTY_VALUES_BY_TYPE)
+ && in_array($fullPath, self::ALLOWED_EMPTY_VALUES_BY_TYPE[$fieldDefinition->type->value], true)
) {
array_pop($path);
continue;
@@ -502,8 +502,8 @@ protected static function removeBlankOptions(array $haystack, TcaFieldDefinition
is_array($value)
&& !(
$fieldDefinition->hasFieldType()
- && array_key_exists((string)$fieldDefinition->type, self::STOP_RECURSIVE_VALUES_BY_TYPE)
- && in_array($fullPath, self::STOP_RECURSIVE_VALUES_BY_TYPE[(string)$fieldDefinition->type], true)
+ && array_key_exists($fieldDefinition->type->value, self::STOP_RECURSIVE_VALUES_BY_TYPE)
+ && in_array($fullPath, self::STOP_RECURSIVE_VALUES_BY_TYPE[$fieldDefinition->type->value], true)
)
) {
$haystack[$key] = self::removeBlankOptions($value, $fieldDefinition, $path);
@@ -534,7 +534,7 @@ protected static function migrateTCA(array $definition, TcaFieldDefinition $tcaF
if (($definition['config']['wizards']['link']['module']['name'] ?? '') === 'wizard_link') {
$definition['config']['fieldControl']['linkPopup']['options']['allowedExtensions'] = $definition['config']['wizards']['link']['params']['allowedExtensions'] ?? '';
$definition['config']['fieldControl']['linkPopup']['options']['blindLinkOptions'] = $definition['config']['wizards']['link']['params']['blindLinkOptions'] ?? '';
- $tcaFieldDefinition->type = new FieldType(FieldType::LINK);
+ $tcaFieldDefinition->type = FieldType::LINK;
unset($definition['config']['wizards']);
}
@@ -547,7 +547,7 @@ protected static function migrateTCA(array $definition, TcaFieldDefinition $tcaF
// #94765: Migrate levelLinksPosition "none" to showNewRecordLink=false (TYPO3 v11).
if (
$tcaFieldDefinition->hasFieldType()
- && ($tcaFieldDefinition->type->equals(FieldType::INLINE) || $tcaFieldDefinition->type->equals(FieldType::CONTENT))
+ && ($tcaFieldDefinition->type == FieldType::INLINE || $tcaFieldDefinition->type == FieldType::CONTENT)
&& ($definition['config']['appearance']['levelLinksPosition'] ?? '') === 'none'
) {
$definition['config']['appearance']['levelLinksPosition'] = 'top';
@@ -557,7 +557,7 @@ protected static function migrateTCA(array $definition, TcaFieldDefinition $tcaF
// #94406: Migrate folder config to fileFolderConfig (TYPO3 v11).
if (
$tcaFieldDefinition->hasFieldType()
- && $tcaFieldDefinition->type->equals(FieldType::SELECT)
+ && $tcaFieldDefinition->type == FieldType::SELECT
) {
if (isset($definition['config']['fileFolder'])) {
$definition['config']['fileFolderConfig']['folder'] = $definition['config']['fileFolder'];
@@ -576,7 +576,7 @@ protected static function migrateTCA(array $definition, TcaFieldDefinition $tcaF
// Fill item values with empty strings.
if (
$tcaFieldDefinition->hasFieldType()
- && $tcaFieldDefinition->type->equals(FieldType::SELECT)
+ && $tcaFieldDefinition->type == FieldType::SELECT
) {
foreach ($definition['config']['items'] ?? [] as $index => $item) {
for ($i = 0; $i < 5; $i++) {
@@ -596,7 +596,7 @@ protected static function migrateTCA(array $definition, TcaFieldDefinition $tcaF
// TCA type="datetime" moved "eval=date, datetime, ..." to "format".
if (
$tcaFieldDefinition->hasFieldType()
- && $tcaFieldDefinition->type->equals(FieldType::TIMESTAMP)
+ && $tcaFieldDefinition->type == FieldType::TIMESTAMP
&& ($definition['config']['eval'] ?? '') !== ''
) {
$evalList = explode(',', $definition['config']['eval']);
@@ -615,7 +615,7 @@ protected static function migrateTCA(array $definition, TcaFieldDefinition $tcaF
// TCA type=link "fieldControl" moved to "appearance"
if (
$tcaFieldDefinition->hasFieldType()
- && $tcaFieldDefinition->type->equals(FieldType::LINK)
+ && $tcaFieldDefinition->type == FieldType::LINK
) {
if ($definition['config']['fieldControl']['linkPopup']['options']['allowedExtensions'] ?? false) {
$definition['config']['appearance']['allowedFileExtensions'] = $definition['config']['fieldControl']['linkPopup']['options']['allowedExtensions'];
@@ -640,26 +640,26 @@ protected static function migrateTCA(array $definition, TcaFieldDefinition $tcaF
// New TCA type email since TYPO3 v12
if (
$tcaFieldDefinition->hasFieldType()
- && $tcaFieldDefinition->type->equals(FieldType::STRING)
+ && $tcaFieldDefinition->type == FieldType::STRING
) {
$evalList = GeneralUtility::trimExplode(',', $definition['config']['eval'] ?? '');
if (in_array('email', $evalList, true)) {
$evalList = array_intersect($evalList, ['unique', 'uniqueInPid']);
$definition['config']['eval'] = implode(',', $evalList);
$definition['config']['type'] = 'email';
- $tcaFieldDefinition->setFieldType(new FieldType(FieldType::EMAIL));
+ $tcaFieldDefinition->setFieldType(FieldType::EMAIL);
}
}
// New TCA type folder since TYPO3 v12
if (
$tcaFieldDefinition->hasFieldType()
- && $tcaFieldDefinition->type->equals(FieldType::GROUP)
+ && $tcaFieldDefinition->type == FieldType::GROUP
) {
if (($definition['config']['internal_type'] ?? '') === 'folder') {
unset($definition['config']['internal_type']);
$definition['config']['type'] = 'folder';
- $tcaFieldDefinition->setFieldType(new FieldType(FieldType::FOLDER));
+ $tcaFieldDefinition->setFieldType(FieldType::FOLDER);
}
}
@@ -679,14 +679,14 @@ protected static function migrateTCA(array $definition, TcaFieldDefinition $tcaF
if (
$tcaFieldDefinition->hasFieldType()
&& (
- $tcaFieldDefinition->getFieldType()->equals(FieldType::SELECT)
- || $tcaFieldDefinition->getFieldType()->equals(FieldType::RADIO)
- || $tcaFieldDefinition->getFieldType()->equals(FieldType::CHECK)
+ $tcaFieldDefinition->getFieldType() == FieldType::SELECT
+ || $tcaFieldDefinition->getFieldType() == FieldType::RADIO
+ || $tcaFieldDefinition->getFieldType() == FieldType::CHECK
)
&& !empty($definition['config']['items'])
) {
$processedItems = array_map(
- fn(array $item) => SelectItem::fromTcaItemArray($item, (string)$tcaFieldDefinition->getFieldType())->toArray(),
+ fn(array $item) => SelectItem::fromTcaItemArray($item, $tcaFieldDefinition->getFieldType()->value)->toArray(),
$definition['config']['items']
);
// Remove null and false (=invertStateDisplay) values.
@@ -697,8 +697,8 @@ protected static function migrateTCA(array $definition, TcaFieldDefinition $tcaF
if (
$tcaFieldDefinition->hasFieldType()
&& (
- $tcaFieldDefinition->getFieldType()->equals(FieldType::INTEGER)
- || $tcaFieldDefinition->getFieldType()->equals(FieldType::FLOAT)
+ $tcaFieldDefinition->getFieldType() == FieldType::INTEGER
+ || $tcaFieldDefinition->getFieldType() == FieldType::FLOAT
)
&& !empty($definition['config']['eval'])
) {
@@ -727,7 +727,7 @@ public function getFieldType(string $elementKey = ''): FieldType
return $this->type;
}
- return $this->bodytextTypeByElement[$elementKey] ?? new FieldType(FieldType::RICHTEXT);
+ return $this->bodytextTypeByElement[$elementKey] ?? FieldType::RICHTEXT;
}
public function setFieldType(FieldType $fieldType): void
diff --git a/Classes/Domain/Repository/StorageRepository.php b/Classes/Domain/Repository/StorageRepository.php
index 5b1437c6..e7f19d3a 100644
--- a/Classes/Domain/Repository/StorageRepository.php
+++ b/Classes/Domain/Repository/StorageRepository.php
@@ -183,7 +183,7 @@ protected function setSql(array $json, array $fields, string $table): array
{
$defaults = $this->configurationLoader->loadDefaults();
foreach ($fields as $field) {
- $fieldType = FieldType::cast($field['name']);
+ $fieldType = FieldType::from($field['name']);
$fieldName = $field['key'];
// If mask field which needs table column
if (isset($defaults[$field['name']]['sql']) && AffixUtility::hasMaskPrefix($field['key'])) {
@@ -191,7 +191,7 @@ protected function setSql(array $json, array $fields, string $table): array
$json[$table]['sql'][$fieldName][$table][$fieldName] = $field['sql'] ?? $defaults[$field['name']]['sql'];
}
if (isset($field['fields'])) {
- $inlineTable = $fieldType->equals(FieldType::INLINE) ? $field['key'] : $table;
+ $inlineTable = $fieldType == FieldType::INLINE ? $field['key'] : $table;
$json = $this->setSql($json, $field['fields'], $inlineTable);
}
}
@@ -241,7 +241,7 @@ protected function addFieldsToJson(array $jsonAdd, array $fields, string $elemen
$fieldAdd['type'] = $field['name'];
// Convert range values of timestamp to integers
- if (FieldType::cast($fieldAdd['type'])->equals(FieldType::TIMESTAMP)) {
+ if (FieldType::from($fieldAdd['type']) == FieldType::TIMESTAMP) {
$default = $tcaConfig['config']['default'] ?? false;
if ($default) {
$date = new \DateTime($default);
@@ -260,7 +260,7 @@ protected function addFieldsToJson(array $jsonAdd, array $fields, string $elemen
}
// Create palette
- if (FieldType::cast($fieldAdd['type'])->equals(FieldType::PALETTE)) {
+ if (FieldType::from($fieldAdd['type']) == FieldType::PALETTE) {
$jsonAdd[$table]['palettes'][$fieldAdd['fullKey']]['showitem'] = [];
$jsonAdd[$table]['palettes'][$fieldAdd['fullKey']]['label'] = $field['label'];
$jsonAdd[$table]['palettes'][$fieldAdd['fullKey']]['description'] = $field['description'] ?? '';
@@ -268,7 +268,7 @@ protected function addFieldsToJson(array $jsonAdd, array $fields, string $elemen
// Add label, order and flags to child fields
if (isset($parent)) {
- if ($parent['name'] === FieldType::PALETTE) {
+ if ($parent['name'] === FieldType::PALETTE->value) {
$fieldAdd['inPalette'] = 1;
if ($onRootLevel) {
$fieldAdd['inlineParent'][$elementKey] = $parent['key'];
@@ -284,7 +284,7 @@ protected function addFieldsToJson(array $jsonAdd, array $fields, string $elemen
// Add field to showitem array
$jsonAdd[$table]['palettes'][$parent['key']]['showitem'][] = $field['key'];
}
- if ($parent['name'] === FieldType::INLINE) {
+ if ($parent['name'] === FieldType::INLINE->value) {
$fieldAdd['inlineParent'] = $parent['key'];
$fieldAdd['label'] = $field['label'];
$fieldAdd['description'] = $field['description'] ?? '';
@@ -329,7 +329,7 @@ protected function addFieldsToJson(array $jsonAdd, array $fields, string $elemen
// Resolve nested fields
if (isset($field['fields'])) {
- $inlineTable = $field['name'] === FieldType::INLINE ? $field['key'] : $table;
+ $inlineTable = $field['name'] === FieldType::INLINE->value ? $field['key'] : $table;
$jsonAdd = $this->addFieldsToJson($jsonAdd, $field['fields'], $elementKey, $inlineTable, $defaultTable, $field);
}
}
@@ -384,11 +384,11 @@ protected function removeField(string $table, TcaFieldDefinition $field, array $
$fieldType = $this->tableDefinitionCollection->getFieldType($field->fullKey, $table);
// If field is of type inline, also delete table entry
- if ($fieldType->equals(FieldType::INLINE)) {
+ if ($fieldType == FieldType::INLINE) {
unset($json[$field->fullKey]);
}
- if ($fieldType->equals(FieldType::PALETTE)) {
+ if ($fieldType == FieldType::PALETTE) {
unset($json[$table]['palettes'][$field->fullKey]);
}
}
@@ -402,7 +402,7 @@ protected function fieldExistsInNestedFields(array $fields, string $searchKey):
return true;
}
- if (FieldType::cast($field['name'])->equals(FieldType::PALETTE)) {
+ if (FieldType::from($field['name']) == FieldType::PALETTE) {
foreach ($field['fields'] ?? [] as $paletteField) {
if ($paletteField['key'] === $searchKey) {
return true;
diff --git a/Classes/Enumeration/FieldType.php b/Classes/Enumeration/FieldType.php
index fa2caeb0..f125f277 100644
--- a/Classes/Enumeration/FieldType.php
+++ b/Classes/Enumeration/FieldType.php
@@ -17,78 +17,76 @@
namespace MASK\Mask\Enumeration;
-use TYPO3\CMS\Core\Type\Enumeration;
-
-final class FieldType extends Enumeration
+enum FieldType: string
{
- public const STRING = 'string';
- public const INTEGER = 'integer';
- public const FLOAT = 'float';
- public const LINK = 'link';
- public const DATE = 'date';
- public const DATETIME = 'datetime';
- public const TIMESTAMP = 'timestamp';
- public const TEXT = 'text';
- public const RICHTEXT = 'richtext';
- public const CHECK = 'check';
- public const RADIO = 'radio';
- public const SELECT = 'select';
- public const CATEGORY = 'category';
- public const GROUP = 'group';
- public const FILE = 'file';
- public const MEDIA = 'media';
- public const INLINE = 'inline';
- public const CONTENT = 'content';
- public const TAB = 'tab';
- public const PALETTE = 'palette';
- public const LINEBREAK = 'linebreak';
- public const COLORPICKER = 'colorpicker';
- public const SLUG = 'slug';
- public const EMAIL = 'email';
- public const FOLDER = 'folder';
+ case STRING = 'string';
+ case INTEGER = 'integer';
+ case FLOAT = 'float';
+ case LINK = 'link';
+ case DATE = 'date';
+ case DATETIME = 'datetime';
+ case TIMESTAMP = 'timestamp';
+ case TEXT = 'text';
+ case RICHTEXT = 'richtext';
+ case CHECK = 'check';
+ case RADIO = 'radio';
+ case SELECT = 'select';
+ case CATEGORY = 'category';
+ case GROUP = 'group';
+ case FILE = 'file';
+ case MEDIA = 'media';
+ case INLINE = 'inline';
+ case CONTENT = 'content';
+ case TAB = 'tab';
+ case PALETTE = 'palette';
+ case LINEBREAK = 'linebreak';
+ case COLORPICKER = 'colorpicker';
+ case SLUG = 'slug';
+ case EMAIL = 'email';
+ case FOLDER = 'folder';
public function isGroupingField(): bool
{
- return in_array($this->value, [self::TAB, self::PALETTE, self::LINEBREAK], true);
+ return in_array($this, [self::TAB, self::PALETTE, self::LINEBREAK], true);
}
public function isParentField(): bool
{
- return in_array($this->value, [self::INLINE, self::PALETTE], true);
+ return in_array($this, [self::INLINE, self::PALETTE], true);
}
public function isSearchable(): bool
{
- return in_array($this->value, [self::STRING, self::TEXT, self::RICHTEXT, self::EMAIL], true);
+ return in_array($this, [self::STRING, self::TEXT, self::RICHTEXT, self::EMAIL], true);
}
public function isRenderable(): bool
{
- return !in_array($this->value, [self::TAB, self::LINEBREAK], true);
+ return !in_array($this, [self::TAB, self::LINEBREAK], true);
}
public function canBeShared(): bool
{
- return !in_array($this->value, [self::INLINE, self::PALETTE, self::TAB, self::LINEBREAK], true);
+ return !in_array($this, [self::INLINE, self::PALETTE, self::TAB, self::LINEBREAK], true);
}
public function hasDescription(): bool
{
- return $this->value === self::PALETTE || $this->canBeShared();
+ return $this === self::PALETTE || $this->canBeShared();
}
public function isFileReference(): bool
{
- return in_array($this->value, [self::FILE, self::MEDIA], true);
+ return in_array($this, [self::FILE, self::MEDIA], true);
}
public function isTextareaField(): bool
{
- return in_array($this->value, [self::TEXT, self::RICHTEXT], true);
+ return in_array($this, [self::TEXT, self::RICHTEXT], true);
}
public function isRelationField(): bool
{
- return in_array($this->value, [self::INLINE, self::SELECT, self::GROUP, self::CATEGORY, self::CONTENT], true);
+ return in_array($this, [self::INLINE, self::SELECT, self::GROUP, self::CATEGORY, self::CONTENT], true);
}
}
diff --git a/Classes/Enumeration/Tab.php b/Classes/Enumeration/Tab.php
index f3c2fb52..8330d32a 100644
--- a/Classes/Enumeration/Tab.php
+++ b/Classes/Enumeration/Tab.php
@@ -17,21 +17,19 @@
namespace MASK\Mask\Enumeration;
-use TYPO3\CMS\Core\Type\Enumeration;
-
-final class Tab extends Enumeration
+enum Tab: string
{
- public const GENERAL = 'general';
- public const APPEARANCE = 'appearance';
- public const DATABASE = 'database';
- public const EXTENDED = 'extended';
- public const FIELD_CONTROL = 'fieldControl';
- public const FILES = 'files';
- public const LOCALIZATION = 'localization';
- public const VALIDATION = 'validation';
- public const WIZARDS = 'wizards';
- public const GENERATOR = 'generator';
- public const ITEM_GROUP_SORTING = 'itemGroupSorting';
- public const VALUE_PICKER = 'valuePicker';
- public const ENABLED_CONTROLS = 'enabledControls';
+ case GENERAL = 'general';
+ case APPEARANCE = 'appearance';
+ case DATABASE = 'database';
+ case EXTENDED = 'extended';
+ case FIELD_CONTROL = 'fieldControl';
+ case FILES = 'files';
+ case LOCALIZATION = 'localization';
+ case VALIDATION = 'validation';
+ case WIZARDS = 'wizards';
+ case GENERATOR = 'generator';
+ case ITEM_GROUP_SORTING = 'itemGroupSorting';
+ case VALUE_PICKER = 'valuePicker';
+ case ENABLED_CONTROLS = 'enabledControls';
}
diff --git a/Classes/EventListeners/RegisterIcons.php b/Classes/EventListeners/RegisterIcons.php
index ef3b2fdd..a69fdc3d 100644
--- a/Classes/EventListeners/RegisterIcons.php
+++ b/Classes/EventListeners/RegisterIcons.php
@@ -32,11 +32,11 @@ public function __construct(
public function __invoke(BootCompletedEvent $event): void
{
// Register Icons needed in the backend module
- foreach (FieldType::getConstants() as $maskIcon) {
+ foreach (FieldType::cases() as $maskIcon) {
$this->iconRegistry->registerIcon(
- 'mask-fieldtype-' . $maskIcon,
+ 'mask-fieldtype-' . $maskIcon->value,
SvgIconProvider::class,
- ['source' => 'EXT:mask/Resources/Public/Icons/Fieldtypes/' . GeneralUtility::underscoredToUpperCamelCase($maskIcon) . '.svg']
+ ['source' => 'EXT:mask/Resources/Public/Icons/Fieldtypes/' . GeneralUtility::underscoredToUpperCamelCase($maskIcon->value) . '.svg']
);
}
}
diff --git a/Classes/Helper/InlineHelper.php b/Classes/Helper/InlineHelper.php
index f3c61b11..b7272ec6 100644
--- a/Classes/Helper/InlineHelper.php
+++ b/Classes/Helper/InlineHelper.php
@@ -144,7 +144,7 @@ public function addIrreToData(array &$data, string $table = 'tt_content', string
$elementKey = $element->elementDefinition->key;
$fieldType = $this->tableDefinitionCollection->getFieldType($field, $table);
- if ($fieldType->equals(FieldType::PALETTE)) {
+ if ($fieldType == FieldType::PALETTE) {
foreach ($this->tableDefinitionCollection->loadInlineFields($field, $elementKey, $element->elementDefinition) as $paletteField) {
$fieldType = $this->tableDefinitionCollection->getFieldType($paletteField->fullKey, $table);
$this->fillInlineField($data, $fieldType, $paletteField->fullKey, $cType, $table, $originalTable);
@@ -162,11 +162,11 @@ protected function fillInlineField(array &$data, FieldType $fieldType, string $f
}
$tcaFieldConfig = $GLOBALS['TCA'][$table]['columns'][$field] ?? [];
// if it is of type inline and has to be filled (IRRE, FAL)
- if ($fieldType->equals(FieldType::INLINE) && $this->tableDefinitionCollection->hasTable($field)) {
+ if ($fieldType == FieldType::INLINE && $this->tableDefinitionCollection->hasTable($field)) {
$elements = $this->getInlineElements($data, $field, $cType, 'parentid', $table, null, $originalTable);
$data[$field] = $elements;
// or if it is of type Content (Nested Content) and has to be filled
- } elseif ($fieldType->equals(FieldType::CONTENT)) {
+ } elseif ($fieldType == FieldType::CONTENT) {
$content = $this->getRelations((string)($data[$field] ?? ''), $tcaFieldConfig['config']['foreign_table'], '', (int)$data['uid'], $table, $tcaFieldConfig['config'] ?? []);
foreach ($content as $key => $element) {
if ($element) {
@@ -176,17 +176,17 @@ protected function fillInlineField(array &$data, FieldType $fieldType, string $f
}
}
$data[$field] = $content;
- } elseif ($fieldType->equals(FieldType::CATEGORY)) {
+ } elseif ($fieldType == FieldType::CATEGORY) {
if ($tcaFieldConfig['config']['relationship'] === 'manyToMany') {
$data[$field . '_items'] = $this->getRelations('', ($tcaFieldConfig['config']['foreign_table'] ?? ''), $tcaFieldConfig['config']['MM'] ?? '', (int)$data['uid'], $table, $tcaFieldConfig['config'] ?? []);
} else {
$data[$field . '_items'] = $this->getRelations((string)($data[$field] ?? ''), ($tcaFieldConfig['config']['foreign_table'] ?? ''), $tcaFieldConfig['config']['MM'] ?? '', (int)$data['uid'], $table, $tcaFieldConfig['config'] ?? []);
}
- } elseif (($tcaFieldConfig['config']['foreign_table'] ?? '') !== '' && $fieldType->equals(FieldType::SELECT)) {
+ } elseif (($tcaFieldConfig['config']['foreign_table'] ?? '') !== '' && $fieldType == FieldType::SELECT) {
$data[$field . '_items'] = $this->getRelations((string)($data[$field] ?? ''), $tcaFieldConfig['config']['foreign_table'], $tcaFieldConfig['config']['MM'] ?? '', (int)$data['uid'], $table, $tcaFieldConfig['config'] ?? []);
- } elseif ($fieldType->equals(FieldType::GROUP)) {
+ } elseif ($fieldType == FieldType::GROUP) {
$data[$field . '_items'] = $this->getRelations((string)($data[$field] ?? ''), $tcaFieldConfig['config']['allowed'], $tcaFieldConfig['config']['MM'] ?? '', (int)$data['uid'], $table, $tcaFieldConfig['config'] ?? []);
- } elseif (in_array(($tcaFieldConfig['config']['renderType'] ?? ''), ['selectCheckBox', 'selectSingleBox', 'selectMultipleSideBySide'], true) && $fieldType->equals(FieldType::SELECT)) {
+ } elseif (in_array(($tcaFieldConfig['config']['renderType'] ?? ''), ['selectCheckBox', 'selectSingleBox', 'selectMultipleSideBySide'], true) && $fieldType == FieldType::SELECT) {
$data[$field . '_items'] = ($data[$field] ?? '') !== '' ? explode(',', $data[$field]) : [];
}
}
diff --git a/Classes/Loader/JsonSplitLoader.php b/Classes/Loader/JsonSplitLoader.php
index f0b9f547..7de78f2d 100644
--- a/Classes/Loader/JsonSplitLoader.php
+++ b/Classes/Loader/JsonSplitLoader.php
@@ -192,10 +192,10 @@ protected function writeElementsForTable(TableDefinitionCollection $tableDefinit
$newSqlDefinition->addColumn($tableDefinition->sql->getColumn($field->fullKey));
}
$fieldType = $tableDefinitionCollection->getFieldType($field->fullKey, $table);
- if ($fieldType->equals(FieldType::INLINE)) {
+ if ($fieldType == FieldType::INLINE) {
$this->addInlineRecursive($field, $elementTableDefinitionCollection, $tableDefinitionCollection);
}
- if ($fieldType->equals(FieldType::PALETTE)) {
+ if ($fieldType == FieldType::PALETTE) {
$paletteDefinition = $tableDefinition->palettes->getPalette($field->fullKey);
$newPaletteDefinitionCollection->addPalette($paletteDefinition);
foreach ($paletteDefinition->showitem as $item) {
@@ -205,7 +205,7 @@ protected function writeElementsForTable(TableDefinitionCollection $tableDefinit
if ($tableDefinition->sql->hasColumn($paletteField->fullKey)) {
$newSqlDefinition->addColumn($tableDefinition->sql->getColumn($paletteField->fullKey));
}
- if ($tableDefinitionCollection->getFieldType($paletteField->fullKey, $table)->equals(FieldType::INLINE)) {
+ if ($tableDefinitionCollection->getFieldType($paletteField->fullKey, $table) == FieldType::INLINE) {
$elementTableDefinitionCollection->addTable($tableDefinitionCollection->getTable($paletteField->fullKey));
}
}
@@ -236,7 +236,7 @@ protected function addInlineRecursive(TcaFieldDefinition $field, TableDefinition
$elementTableDefinitionCollection->addTable($tableDefinitionCollection->getTable($field->fullKey));
foreach ($tableDefinitionCollection->getTable($field->fullKey)->tca as $inlineChild) {
$fieldType = $tableDefinitionCollection->getFieldType($inlineChild->fullKey, $field->fullKey);
- if ($fieldType->equals(FieldType::INLINE)) {
+ if ($fieldType == FieldType::INLINE) {
$this->addInlineRecursive($inlineChild, $elementTableDefinitionCollection, $tableDefinitionCollection);
}
}
diff --git a/Classes/Migrations/ConfigCleanerMigration.php b/Classes/Migrations/ConfigCleanerMigration.php
index df2e5d1d..96af792b 100644
--- a/Classes/Migrations/ConfigCleanerMigration.php
+++ b/Classes/Migrations/ConfigCleanerMigration.php
@@ -40,8 +40,8 @@ public function migrate(TableDefinitionCollection $tableDefinitionCollection): T
if (!$tcaFieldDefinition->hasFieldType() || $tcaFieldDefinition->isCoreField) {
continue;
}
- $tabConfig = $this->configurationLoader->loadTab((string)$tcaFieldDefinition->getFieldType());
- $defaultsOut = array_keys($this->configurationLoader->loadDefaults()[(string)$tcaFieldDefinition->getFieldType()]['tca_out'] ?? []);
+ $tabConfig = $this->configurationLoader->loadTab($tcaFieldDefinition->getFieldType()->value);
+ $defaultsOut = array_keys($this->configurationLoader->loadDefaults()[$tcaFieldDefinition->getFieldType()->value]['tca_out'] ?? []);
$tcaOptions = [];
foreach ($tabConfig as $options) {
foreach ($options as $row) {
diff --git a/Classes/Migrations/DefaultTcaMigration.php b/Classes/Migrations/DefaultTcaMigration.php
index a0b307a3..61a6d7d2 100644
--- a/Classes/Migrations/DefaultTcaMigration.php
+++ b/Classes/Migrations/DefaultTcaMigration.php
@@ -39,7 +39,7 @@ public function migrate(TableDefinitionCollection $tableDefinitionCollection): T
if (!$tcaFieldDefinition->hasFieldType() || $tcaFieldDefinition->isCoreField) {
continue;
}
- $tcaDefaults = $this->configurationLoader->loadDefaults()[(string)$tcaFieldDefinition->getFieldType()];
+ $tcaDefaults = $this->configurationLoader->loadDefaults()[$tcaFieldDefinition->getFieldType()->value];
$tcaDefaults = $tcaDefaults['tca_out'] ?? [];
$flatTcaFieldDefinition = TcaConverter::convertTcaArrayToFlat($tcaFieldDefinition->realTca);
diff --git a/Classes/Migrations/DescriptionByElementMigration.php b/Classes/Migrations/DescriptionByElementMigration.php
index 33a8e6ab..e0fdb912 100644
--- a/Classes/Migrations/DescriptionByElementMigration.php
+++ b/Classes/Migrations/DescriptionByElementMigration.php
@@ -44,7 +44,7 @@ public function migrate(TableDefinitionCollection $tableDefinitionCollection): T
}
// Go through all palette fields on the root level.
- if ($tcaFieldDefinition->hasFieldType() && $tcaFieldDefinition->getFieldType()->equals(FieldType::PALETTE)) {
+ if ($tcaFieldDefinition->hasFieldType() && $tcaFieldDefinition->getFieldType() == FieldType::PALETTE) {
$paletteField = $tableDefinition->palettes->getPalette($tcaFieldDefinition->fullKey);
foreach ($paletteField->showitem as $item) {
$itemField = $tableDefinitionCollection->loadField($tableDefinition->table, $item);
@@ -90,7 +90,7 @@ private function fillDescriptions(TableDefinitionCollection $tableDefinitionColl
}
// If palette, add it to the palette definition as well.
- if ($tcaFieldDefinition->hasFieldType() && $tcaFieldDefinition->getFieldType()->equals(FieldType::PALETTE)) {
+ if ($tcaFieldDefinition->hasFieldType() && $tcaFieldDefinition->getFieldType() == FieldType::PALETTE) {
$paletteDefinition = $tableDefinitionCollection->getTable($table)->palettes->getPalette($tcaFieldDefinition->fullKey);
if ($paletteDefinition->description === '') {
$paletteDefinition->description = $descriptionToUse;
diff --git a/Classes/Migrations/RteMigration.php b/Classes/Migrations/RteMigration.php
index c9dfc5f8..2b9cbc4b 100644
--- a/Classes/Migrations/RteMigration.php
+++ b/Classes/Migrations/RteMigration.php
@@ -42,7 +42,7 @@ public function migrate(TableDefinitionCollection $tableDefinitionCollection): T
$field = $tableDefinitionCollection->loadField($tableDefinition->table, $fieldKey);
if ($field instanceof TcaFieldDefinition) {
- $field->setFieldType(new FieldType(FieldType::RICHTEXT));
+ $field->setFieldType(FieldType::RICHTEXT);
}
}
}
diff --git a/Classes/Updates/MigrateContentFields.php b/Classes/Updates/MigrateContentFields.php
index 0cde4112..02069cea 100644
--- a/Classes/Updates/MigrateContentFields.php
+++ b/Classes/Updates/MigrateContentFields.php
@@ -59,7 +59,7 @@ public function executeUpdate(): bool
if (!$tcaDefinition->hasFieldType()) {
continue;
}
- if ($tcaDefinition->getFieldType()->equals(FieldType::CONTENT)) {
+ if ($tcaDefinition->getFieldType() == FieldType::CONTENT) {
$this->migrateField($tcaDefinition, $tableDefinition);
}
}
@@ -90,7 +90,7 @@ public function updateNecessary(): bool
if (!$tcaFieldDefinition->hasFieldType()) {
continue;
}
- if ($tcaFieldDefinition->getFieldType()->equals(FieldType::CONTENT)) {
+ if ($tcaFieldDefinition->getFieldType() == FieldType::CONTENT) {
$legacyParentColumnName = AffixUtility::addMaskParentSuffix($tcaFieldDefinition->fullKey);
$queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)
->getQueryBuilderForTable('tt_content');
diff --git a/Classes/Utility/FieldTypeUtility.php b/Classes/Utility/FieldTypeUtility.php
index 4ec7f124..d8aaf088 100644
--- a/Classes/Utility/FieldTypeUtility.php
+++ b/Classes/Utility/FieldTypeUtility.php
@@ -19,12 +19,11 @@
use MASK\Mask\Enumeration\FieldType;
use TYPO3\CMS\Core\Resource\OnlineMedia\Helpers\OnlineMediaHelperRegistry;
-use TYPO3\CMS\Core\Type\Exception\InvalidEnumerationValueException;
use TYPO3\CMS\Core\Utility\GeneralUtility as CoreGeneralUtility;
class FieldTypeUtility
{
- public static function getFieldType(array $tca, string $fieldKey): string
+ public static function getFieldType(array $tca, string $fieldKey): FieldType
{
// If TCA is still empty, error out.
if (empty($tca)) {
@@ -117,8 +116,8 @@ public static function getFieldType(array $tca, string $fieldKey): string
default:
// Check if fake tca type is valid.
try {
- return (string)FieldType::cast($tcaType);
- } catch (InvalidEnumerationValueException $e) {
+ return FieldType::from($tcaType);
+ } catch (\ValueError) {
throw new \InvalidArgumentException(sprintf('Could not resolve the field type of "%s". Please check, if your TCA is correct.', $fieldKey), 1629484452);
}
}
diff --git a/Classes/Utility/OverrideFieldsUtility.php b/Classes/Utility/OverrideFieldsUtility.php
index 619624ec..4d2533c4 100644
--- a/Classes/Utility/OverrideFieldsUtility.php
+++ b/Classes/Utility/OverrideFieldsUtility.php
@@ -49,7 +49,7 @@ public static function restructureTcaDefinitions(TableDefinitionCollection $tabl
$fieldTypeTca = $tcaDefinition->getField($fieldKey);
$fieldType = $fieldTypeTca->getFieldType($element->key);
- if ($fieldType->equals(FieldType::PALETTE)) {
+ if ($fieldType == FieldType::PALETTE) {
$paletteDefinition = $ttContentDefinition->palettes->getPalette($fieldKey);
foreach ($paletteDefinition->showitem as $paletteFieldKey) {
$paletteTcaDefinition = $tcaDefinition->getField($paletteFieldKey);
diff --git a/Configuration/Mask/FieldGroups.php b/Configuration/Mask/FieldGroups.php
index 68051db2..352d654d 100644
--- a/Configuration/Mask/FieldGroups.php
+++ b/Configuration/Mask/FieldGroups.php
@@ -6,35 +6,35 @@
// FieldType enumeration.
return [
- FieldType::STRING => 'input',
- FieldType::INTEGER => 'input',
- FieldType::FLOAT => 'input',
- FieldType::LINK => 'input',
- FieldType::EMAIL => 'input',
-
- FieldType::TEXT => 'text',
- FieldType::RICHTEXT => 'text',
-
- FieldType::DATE => 'date',
- FieldType::DATETIME => 'date',
- FieldType::TIMESTAMP => 'date',
-
- FieldType::CHECK => 'choice',
- FieldType::RADIO => 'choice',
- FieldType::SELECT => 'choice',
- FieldType::CATEGORY => 'choice',
- FieldType::GROUP => 'choice',
-
- FieldType::COLORPICKER => 'special',
- FieldType::SLUG => 'special',
- FieldType::FOLDER => 'special',
-
- FieldType::FILE => 'repeating',
- FieldType::MEDIA => 'repeating',
- FieldType::INLINE => 'repeating',
- FieldType::CONTENT => 'repeating',
-
- FieldType::TAB => 'structure',
- FieldType::PALETTE => 'structure',
- FieldType::LINEBREAK => 'structure',
+ FieldType::STRING->value => 'input',
+ FieldType::INTEGER->value => 'input',
+ FieldType::FLOAT->value => 'input',
+ FieldType::LINK->value => 'input',
+ FieldType::EMAIL->value => 'input',
+
+ FieldType::TEXT->value => 'text',
+ FieldType::RICHTEXT->value => 'text',
+
+ FieldType::DATE->value => 'date',
+ FieldType::DATETIME->value => 'date',
+ FieldType::TIMESTAMP->value => 'date',
+
+ FieldType::CHECK->value => 'choice',
+ FieldType::RADIO->value => 'choice',
+ FieldType::SELECT->value => 'choice',
+ FieldType::CATEGORY->value => 'choice',
+ FieldType::GROUP->value => 'choice',
+
+ FieldType::COLORPICKER->value => 'special',
+ FieldType::SLUG->value => 'special',
+ FieldType::FOLDER->value => 'special',
+
+ FieldType::FILE->value => 'repeating',
+ FieldType::MEDIA->value => 'repeating',
+ FieldType::INLINE->value => 'repeating',
+ FieldType::CONTENT->value => 'repeating',
+
+ FieldType::TAB->value => 'structure',
+ FieldType::PALETTE->value => 'structure',
+ FieldType::LINEBREAK->value => 'structure',
];
diff --git a/Configuration/Mask/TYPO3v12/Defaults.php b/Configuration/Mask/TYPO3v12/Defaults.php
index acb53ab6..7ec423d5 100644
--- a/Configuration/Mask/TYPO3v12/Defaults.php
+++ b/Configuration/Mask/TYPO3v12/Defaults.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\FieldType;
return [
- FieldType::STRING => [
+ FieldType::STRING->value => [
'tca_in' => [
'l10n_mode' => '',
'config.valuePicker.mode' => '',
@@ -15,7 +15,7 @@
],
'sql' => 'varchar(255) DEFAULT \'\' NOT NULL',
],
- FieldType::FLOAT => [
+ FieldType::FLOAT->value => [
'tca_in' => [
'l10n_mode' => '',
'config.valuePicker.mode' => '',
@@ -28,7 +28,7 @@
],
'sql' => 'float DEFAULT \'0\' NOT NULL',
],
- FieldType::INTEGER => [
+ FieldType::INTEGER->value => [
'tca_in' => [
'l10n_mode' => '',
'config.valuePicker.mode' => '',
@@ -40,7 +40,7 @@
],
'sql' => 'int(11) DEFAULT \'0\' NOT NULL',
],
- FieldType::LINK => [
+ FieldType::LINK->value => [
'tca_in' => [
'l10n_mode' => '',
'config.nullable' => 0,
@@ -51,7 +51,7 @@
],
'sql' => 'varchar(255) DEFAULT \'\' NOT NULL',
],
- FieldType::COLORPICKER => [
+ FieldType::COLORPICKER->value => [
'tca_in' => [
'l10n_mode' => '',
'config.valuePicker.mode' => '',
@@ -64,7 +64,7 @@
],
'sql' => 'varchar(255) DEFAULT \'\' NOT NULL',
],
- FieldType::SLUG => [
+ FieldType::SLUG->value => [
'tca_in' => [
'config.size' => 10,
'config.eval.slug' => 'uniqueInPid',
@@ -77,7 +77,7 @@
],
'sql' => 'varchar(255) DEFAULT \'\' NOT NULL',
],
- FieldType::DATE => [
+ FieldType::DATE->value => [
'tca_in' => [
'l10n_mode' => '',
'config.nullable' => 0,
@@ -89,7 +89,7 @@
],
'sql' => 'date',
],
- FieldType::DATETIME => [
+ FieldType::DATETIME->value => [
'tca_in' => [
'l10n_mode' => '',
'config.nullable' => 0,
@@ -101,7 +101,7 @@
],
'sql' => 'datetime',
],
- FieldType::TIMESTAMP => [
+ FieldType::TIMESTAMP->value => [
'tca_in' => [
'l10n_mode' => '',
'config.format' => 'date',
@@ -112,7 +112,7 @@
],
'sql' => 'int(10) unsigned DEFAULT \'0\' NOT NULL',
],
- FieldType::TEXT => [
+ FieldType::TEXT->value => [
'tca_in' => [
'l10n_mode' => '',
'config.wrap' => 'virtual',
@@ -126,7 +126,7 @@
],
'sql' => 'mediumtext',
],
- FieldType::RICHTEXT => [
+ FieldType::RICHTEXT->value => [
'tca_in' => [
'l10n_mode' => '',
'config.richtextConfiguration' => '',
@@ -137,7 +137,7 @@
],
'sql' => 'mediumtext',
],
- FieldType::CHECK => [
+ FieldType::CHECK->value => [
'tca_in' => [
'l10n_mode' => '',
'config.renderType' => '',
@@ -148,7 +148,7 @@
],
'sql' => 'int(11) DEFAULT \'0\' NOT NULL',
],
- FieldType::SELECT => [
+ FieldType::SELECT->value => [
'tca_in' => [
'l10n_mode' => '',
'config.renderType' => 'selectSingle',
@@ -162,7 +162,7 @@
],
'sql' => 'varchar(255) DEFAULT \'\' NOT NULL',
],
- FieldType::CATEGORY => [
+ FieldType::CATEGORY->value => [
'tca_in' => [
'config.relationship' => 'manyToMany',
'config.treeConfig.appearance.showHeader' => 1,
@@ -173,7 +173,7 @@
'config.type' => 'category',
],
],
- FieldType::RADIO => [
+ FieldType::RADIO->value => [
'tca_in' => [
'l10n_mode' => '',
'config.items' => [],
@@ -183,7 +183,7 @@
],
'sql' => 'int(11) DEFAULT \'0\' NOT NULL',
],
- FieldType::GROUP => [
+ FieldType::GROUP->value => [
'tca_in' => [
'l10n_mode' => '',
'config.allowed' => '',
@@ -196,7 +196,7 @@
],
'sql' => 'text',
],
- FieldType::FOLDER => [
+ FieldType::FOLDER->value => [
'tca_in' => [
'l10n_mode' => '',
],
@@ -205,7 +205,7 @@
],
'sql' => 'text',
],
- FieldType::FILE => [
+ FieldType::FILE->value => [
'tca_in' => [
'l10n_mode' => '',
'imageoverlayPalette' => 1,
@@ -222,7 +222,7 @@
],
'sql' => 'int(11) unsigned DEFAULT \'0\' NOT NULL',
],
- FieldType::MEDIA => [
+ FieldType::MEDIA->value => [
'tca_in' => [
'l10n_mode' => '',
'onlineMedia' => ['youtube', 'vimeo'],
@@ -240,7 +240,7 @@
],
'sql' => 'int(11) unsigned DEFAULT \'0\' NOT NULL',
],
- FieldType::INLINE => [
+ FieldType::INLINE->value => [
'tca_in' => [
'l10n_mode' => '',
'config.appearance.collapseAll' => '',
@@ -266,7 +266,7 @@
],
'sql' => 'int(11) unsigned DEFAULT \'0\' NOT NULL',
],
- FieldType::CONTENT => [
+ FieldType::CONTENT->value => [
'tca_in' => [
'l10n_mode' => '',
'cTypes' => [],
@@ -292,22 +292,22 @@
],
'sql' => 'int(11) unsigned DEFAULT \'0\' NOT NULL',
],
- FieldType::TAB => [
+ FieldType::TAB->value => [
'tca_out' => [
'config.type' => 'tab',
],
],
- FieldType::PALETTE => [
+ FieldType::PALETTE->value => [
'tca_out' => [
'config.type' => 'palette',
],
],
- FieldType::LINEBREAK => [
+ FieldType::LINEBREAK->value => [
'tca_out' => [
'config.type' => 'linebreak',
],
],
- FieldType::EMAIL => [
+ FieldType::EMAIL->value => [
'tca_in' => [
'l10n_mode' => '',
'config.nullable' => 0,
diff --git a/Configuration/Mask/TYPO3v13/Defaults.php b/Configuration/Mask/TYPO3v13/Defaults.php
index acb53ab6..7ec423d5 100644
--- a/Configuration/Mask/TYPO3v13/Defaults.php
+++ b/Configuration/Mask/TYPO3v13/Defaults.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\FieldType;
return [
- FieldType::STRING => [
+ FieldType::STRING->value => [
'tca_in' => [
'l10n_mode' => '',
'config.valuePicker.mode' => '',
@@ -15,7 +15,7 @@
],
'sql' => 'varchar(255) DEFAULT \'\' NOT NULL',
],
- FieldType::FLOAT => [
+ FieldType::FLOAT->value => [
'tca_in' => [
'l10n_mode' => '',
'config.valuePicker.mode' => '',
@@ -28,7 +28,7 @@
],
'sql' => 'float DEFAULT \'0\' NOT NULL',
],
- FieldType::INTEGER => [
+ FieldType::INTEGER->value => [
'tca_in' => [
'l10n_mode' => '',
'config.valuePicker.mode' => '',
@@ -40,7 +40,7 @@
],
'sql' => 'int(11) DEFAULT \'0\' NOT NULL',
],
- FieldType::LINK => [
+ FieldType::LINK->value => [
'tca_in' => [
'l10n_mode' => '',
'config.nullable' => 0,
@@ -51,7 +51,7 @@
],
'sql' => 'varchar(255) DEFAULT \'\' NOT NULL',
],
- FieldType::COLORPICKER => [
+ FieldType::COLORPICKER->value => [
'tca_in' => [
'l10n_mode' => '',
'config.valuePicker.mode' => '',
@@ -64,7 +64,7 @@
],
'sql' => 'varchar(255) DEFAULT \'\' NOT NULL',
],
- FieldType::SLUG => [
+ FieldType::SLUG->value => [
'tca_in' => [
'config.size' => 10,
'config.eval.slug' => 'uniqueInPid',
@@ -77,7 +77,7 @@
],
'sql' => 'varchar(255) DEFAULT \'\' NOT NULL',
],
- FieldType::DATE => [
+ FieldType::DATE->value => [
'tca_in' => [
'l10n_mode' => '',
'config.nullable' => 0,
@@ -89,7 +89,7 @@
],
'sql' => 'date',
],
- FieldType::DATETIME => [
+ FieldType::DATETIME->value => [
'tca_in' => [
'l10n_mode' => '',
'config.nullable' => 0,
@@ -101,7 +101,7 @@
],
'sql' => 'datetime',
],
- FieldType::TIMESTAMP => [
+ FieldType::TIMESTAMP->value => [
'tca_in' => [
'l10n_mode' => '',
'config.format' => 'date',
@@ -112,7 +112,7 @@
],
'sql' => 'int(10) unsigned DEFAULT \'0\' NOT NULL',
],
- FieldType::TEXT => [
+ FieldType::TEXT->value => [
'tca_in' => [
'l10n_mode' => '',
'config.wrap' => 'virtual',
@@ -126,7 +126,7 @@
],
'sql' => 'mediumtext',
],
- FieldType::RICHTEXT => [
+ FieldType::RICHTEXT->value => [
'tca_in' => [
'l10n_mode' => '',
'config.richtextConfiguration' => '',
@@ -137,7 +137,7 @@
],
'sql' => 'mediumtext',
],
- FieldType::CHECK => [
+ FieldType::CHECK->value => [
'tca_in' => [
'l10n_mode' => '',
'config.renderType' => '',
@@ -148,7 +148,7 @@
],
'sql' => 'int(11) DEFAULT \'0\' NOT NULL',
],
- FieldType::SELECT => [
+ FieldType::SELECT->value => [
'tca_in' => [
'l10n_mode' => '',
'config.renderType' => 'selectSingle',
@@ -162,7 +162,7 @@
],
'sql' => 'varchar(255) DEFAULT \'\' NOT NULL',
],
- FieldType::CATEGORY => [
+ FieldType::CATEGORY->value => [
'tca_in' => [
'config.relationship' => 'manyToMany',
'config.treeConfig.appearance.showHeader' => 1,
@@ -173,7 +173,7 @@
'config.type' => 'category',
],
],
- FieldType::RADIO => [
+ FieldType::RADIO->value => [
'tca_in' => [
'l10n_mode' => '',
'config.items' => [],
@@ -183,7 +183,7 @@
],
'sql' => 'int(11) DEFAULT \'0\' NOT NULL',
],
- FieldType::GROUP => [
+ FieldType::GROUP->value => [
'tca_in' => [
'l10n_mode' => '',
'config.allowed' => '',
@@ -196,7 +196,7 @@
],
'sql' => 'text',
],
- FieldType::FOLDER => [
+ FieldType::FOLDER->value => [
'tca_in' => [
'l10n_mode' => '',
],
@@ -205,7 +205,7 @@
],
'sql' => 'text',
],
- FieldType::FILE => [
+ FieldType::FILE->value => [
'tca_in' => [
'l10n_mode' => '',
'imageoverlayPalette' => 1,
@@ -222,7 +222,7 @@
],
'sql' => 'int(11) unsigned DEFAULT \'0\' NOT NULL',
],
- FieldType::MEDIA => [
+ FieldType::MEDIA->value => [
'tca_in' => [
'l10n_mode' => '',
'onlineMedia' => ['youtube', 'vimeo'],
@@ -240,7 +240,7 @@
],
'sql' => 'int(11) unsigned DEFAULT \'0\' NOT NULL',
],
- FieldType::INLINE => [
+ FieldType::INLINE->value => [
'tca_in' => [
'l10n_mode' => '',
'config.appearance.collapseAll' => '',
@@ -266,7 +266,7 @@
],
'sql' => 'int(11) unsigned DEFAULT \'0\' NOT NULL',
],
- FieldType::CONTENT => [
+ FieldType::CONTENT->value => [
'tca_in' => [
'l10n_mode' => '',
'cTypes' => [],
@@ -292,22 +292,22 @@
],
'sql' => 'int(11) unsigned DEFAULT \'0\' NOT NULL',
],
- FieldType::TAB => [
+ FieldType::TAB->value => [
'tca_out' => [
'config.type' => 'tab',
],
],
- FieldType::PALETTE => [
+ FieldType::PALETTE->value => [
'tca_out' => [
'config.type' => 'palette',
],
],
- FieldType::LINEBREAK => [
+ FieldType::LINEBREAK->value => [
'tca_out' => [
'config.type' => 'linebreak',
],
],
- FieldType::EMAIL => [
+ FieldType::EMAIL->value => [
'tca_in' => [
'l10n_mode' => '',
'config.nullable' => 0,
diff --git a/Configuration/Mask/Tabs/category.php b/Configuration/Mask/Tabs/category.php
index 5922fb04..3f1ebe04 100644
--- a/Configuration/Mask/Tabs/category.php
+++ b/Configuration/Mask/Tabs/category.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
],
@@ -14,14 +14,14 @@
'config.treeConfig.startingPoints' => 12,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.minitems' => 6,
'config.maxitems' => 6,
'config.exclusiveKeys' => 6,
],
],
- Tab::APPEARANCE => [
+ Tab::APPEARANCE->value => [
[
'config.treeConfig.appearance.showHeader' => 6,
'config.treeConfig.appearance.expandAll' => 6,
@@ -30,12 +30,12 @@
'config.treeConfig.appearance.nonSelectableLevels' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.size' => 6,
],
diff --git a/Configuration/Mask/Tabs/check.php b/Configuration/Mask/Tabs/check.php
index f5a2edab..ee8e6636 100644
--- a/Configuration/Mask/Tabs/check.php
+++ b/Configuration/Mask/Tabs/check.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.renderType' => 6,
'config.default' => 6,
@@ -12,7 +12,7 @@
'config.items' => 12,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -20,7 +20,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.cols' => 6,
],
diff --git a/Configuration/Mask/Tabs/colorpicker.php b/Configuration/Mask/Tabs/colorpicker.php
index a5fd6510..2c5ec6f5 100644
--- a/Configuration/Mask/Tabs/colorpicker.php
+++ b/Configuration/Mask/Tabs/colorpicker.php
@@ -4,7 +4,7 @@
use TYPO3\CMS\Core\Information\Typo3Version;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
'config.placeholder' => 6,
@@ -13,13 +13,13 @@
'config.size' => 6,
],
],
- Tab::VALUE_PICKER => [
+ Tab::VALUE_PICKER->value => [
[
'config.valuePicker.mode' => 6,
'config.valuePicker.items' => 12,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -27,7 +27,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
(new Typo3Version())->getMajorVersion() > 11 ? 'config.nullable' : 'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Configuration/Mask/Tabs/content.php b/Configuration/Mask/Tabs/content.php
index b2715b39..1efdfc3c 100644
--- a/Configuration/Mask/Tabs/content.php
+++ b/Configuration/Mask/Tabs/content.php
@@ -3,18 +3,18 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'cTypes' => 12,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.minitems' => 6,
'config.maxitems' => 6,
],
],
- TAB::APPEARANCE => [
+ Tab::APPEARANCE->value => [
[
'config.appearance.newRecordLinkTitle' => 6,
'config.appearance.levelLinksPosition' => 6,
@@ -26,7 +26,7 @@
'config.appearance.useSortable' => 6,
],
],
- Tab::ENABLED_CONTROLS => [
+ Tab::ENABLED_CONTROLS->value => [
[
'config.appearance.enabledControls' => 12,
'config.appearance.enabledControls.info' => 4,
@@ -38,7 +38,7 @@
'config.appearance.enabledControls.localize' => 4,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
diff --git a/Configuration/Mask/Tabs/date.php b/Configuration/Mask/Tabs/date.php
index adaca15c..8855ee26 100644
--- a/Configuration/Mask/Tabs/date.php
+++ b/Configuration/Mask/Tabs/date.php
@@ -4,20 +4,20 @@
use TYPO3\CMS\Core\Information\Typo3Version;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
'config.placeholder' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.range.lower' => 6,
'config.range.upper' => 6,
(new Typo3Version())->getMajorVersion() > 11 ? 'config.required' : 'config.eval.required' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -25,7 +25,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
(new Typo3Version())->getMajorVersion() > 11 ? 'config.nullable' : 'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Configuration/Mask/Tabs/datetime.php b/Configuration/Mask/Tabs/datetime.php
index adaca15c..8855ee26 100644
--- a/Configuration/Mask/Tabs/datetime.php
+++ b/Configuration/Mask/Tabs/datetime.php
@@ -4,20 +4,20 @@
use TYPO3\CMS\Core\Information\Typo3Version;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
'config.placeholder' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.range.lower' => 6,
'config.range.upper' => 6,
(new Typo3Version())->getMajorVersion() > 11 ? 'config.required' : 'config.eval.required' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -25,7 +25,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
(new Typo3Version())->getMajorVersion() > 11 ? 'config.nullable' : 'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Configuration/Mask/Tabs/email.php b/Configuration/Mask/Tabs/email.php
index b04fd753..25fd6e22 100644
--- a/Configuration/Mask/Tabs/email.php
+++ b/Configuration/Mask/Tabs/email.php
@@ -4,7 +4,7 @@
use TYPO3\CMS\Core\Information\Typo3Version;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
'config.placeholder' => 6,
@@ -13,14 +13,14 @@
'config.size' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
(new Typo3Version())->getMajorVersion() > 11 ? 'config.required' : 'config.eval.required' => 6,
'config.eval.unique' => 6,
'config.eval.uniqueInPid' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -28,7 +28,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
(new Typo3Version())->getMajorVersion() > 11 ? 'config.nullable' : 'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Configuration/Mask/Tabs/file.php b/Configuration/Mask/Tabs/file.php
index bf40ac22..b6b56ca1 100644
--- a/Configuration/Mask/Tabs/file.php
+++ b/Configuration/Mask/Tabs/file.php
@@ -3,18 +3,18 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'imageoverlayPalette' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.minitems' => 6,
'config.maxitems' => 6,
],
],
- TAB::APPEARANCE => [
+ Tab::APPEARANCE->value => [
[
'allowedFileExtensions' => 6,
],
@@ -31,7 +31,7 @@
'config.appearance.fileUploadAllowed' => 6,
],
],
- Tab::ENABLED_CONTROLS => [
+ Tab::ENABLED_CONTROLS->value => [
[
'config.appearance.enabledControls' => 12,
'config.appearance.enabledControls.info' => 4,
@@ -42,7 +42,7 @@
'config.appearance.enabledControls.localize' => 4,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
diff --git a/Configuration/Mask/Tabs/float.php b/Configuration/Mask/Tabs/float.php
index 4f336ddc..caafe856 100644
--- a/Configuration/Mask/Tabs/float.php
+++ b/Configuration/Mask/Tabs/float.php
@@ -12,7 +12,7 @@
}
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
'config.placeholder' => 6,
@@ -21,26 +21,26 @@
'config.size' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
$validation,
[
'config.range.lower' => 6,
'config.range.upper' => 6,
],
],
- Tab::FIELD_CONTROL => [
+ Tab::FIELD_CONTROL->value => [
[
'config.slider.step' => 6,
'config.slider.width' => 6,
],
],
- Tab::VALUE_PICKER => [
+ Tab::VALUE_PICKER->value => [
[
'config.valuePicker.mode' => 6,
'config.valuePicker.items' => 12,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -48,7 +48,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
(new Typo3Version())->getMajorVersion() > 11 ? 'config.nullable' : 'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Configuration/Mask/Tabs/folder.php b/Configuration/Mask/Tabs/folder.php
index 4ce00be1..b444e60d 100644
--- a/Configuration/Mask/Tabs/folder.php
+++ b/Configuration/Mask/Tabs/folder.php
@@ -3,18 +3,18 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.elementBrowserEntryPoints._default' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.minitems' => 6,
'config.maxitems' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -22,7 +22,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.size' => 6,
'config.autoSizeMax' => 6,
diff --git a/Configuration/Mask/Tabs/group.php b/Configuration/Mask/Tabs/group.php
index 5ecb109b..c209ea7d 100644
--- a/Configuration/Mask/Tabs/group.php
+++ b/Configuration/Mask/Tabs/group.php
@@ -3,19 +3,19 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.allowed' => 6,
'config.elementBrowserEntryPoints._default' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.minitems' => 6,
'config.maxitems' => 6,
],
],
- Tab::FIELD_CONTROL => [
+ Tab::FIELD_CONTROL->value => [
[
'config.fieldControl' => 12,
'config.fieldControl.editPopup.disabled' => 4,
@@ -30,7 +30,7 @@
'config.fieldWizard.tableList.disabled' => 4,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -38,7 +38,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.size' => 6,
'config.autoSizeMax' => 6,
diff --git a/Configuration/Mask/Tabs/inline.php b/Configuration/Mask/Tabs/inline.php
index a264ab6b..51cee538 100644
--- a/Configuration/Mask/Tabs/inline.php
+++ b/Configuration/Mask/Tabs/inline.php
@@ -3,19 +3,19 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'ctrl.label' => 6,
'ctrl.iconfile' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.minitems' => 6,
'config.maxitems' => 6,
],
],
- TAB::APPEARANCE => [
+ Tab::APPEARANCE->value => [
[
'config.appearance.newRecordLinkTitle' => 6,
'config.appearance.levelLinksPosition' => 6,
@@ -27,7 +27,7 @@
'config.appearance.useSortable' => 6,
],
],
- Tab::ENABLED_CONTROLS => [
+ Tab::ENABLED_CONTROLS->value => [
[
'config.appearance.enabledControls' => 12,
'config.appearance.enabledControls.info' => 4,
@@ -39,7 +39,7 @@
'config.appearance.enabledControls.localize' => 4,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
diff --git a/Configuration/Mask/Tabs/integer.php b/Configuration/Mask/Tabs/integer.php
index 4f336ddc..caafe856 100644
--- a/Configuration/Mask/Tabs/integer.php
+++ b/Configuration/Mask/Tabs/integer.php
@@ -12,7 +12,7 @@
}
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
'config.placeholder' => 6,
@@ -21,26 +21,26 @@
'config.size' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
$validation,
[
'config.range.lower' => 6,
'config.range.upper' => 6,
],
],
- Tab::FIELD_CONTROL => [
+ Tab::FIELD_CONTROL->value => [
[
'config.slider.step' => 6,
'config.slider.width' => 6,
],
],
- Tab::VALUE_PICKER => [
+ Tab::VALUE_PICKER->value => [
[
'config.valuePicker.mode' => 6,
'config.valuePicker.items' => 12,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -48,7 +48,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
(new Typo3Version())->getMajorVersion() > 11 ? 'config.nullable' : 'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Configuration/Mask/Tabs/link.php b/Configuration/Mask/Tabs/link.php
index 4cbf4693..f039a626 100644
--- a/Configuration/Mask/Tabs/link.php
+++ b/Configuration/Mask/Tabs/link.php
@@ -22,7 +22,7 @@
}
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.placeholder' => 6,
],
@@ -30,13 +30,13 @@
'config.size' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
$validation,
],
- Tab::FIELD_CONTROL => [
+ Tab::FIELD_CONTROL->value => [
$linkHandler,
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -44,7 +44,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
(new Typo3Version())->getMajorVersion() > 11 ? 'config.nullable' : 'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Configuration/Mask/Tabs/media.php b/Configuration/Mask/Tabs/media.php
index 6e3a6155..4914267a 100644
--- a/Configuration/Mask/Tabs/media.php
+++ b/Configuration/Mask/Tabs/media.php
@@ -3,18 +3,18 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'onlineMedia' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.minitems' => 6,
'config.maxitems' => 6,
],
],
- TAB::APPEARANCE => [
+ Tab::APPEARANCE->value => [
[
'allowedFileExtensions' => 6,
],
@@ -32,7 +32,7 @@
'config.appearance.fileByUrlAllowed' => 6,
],
],
- Tab::ENABLED_CONTROLS => [
+ Tab::ENABLED_CONTROLS->value => [
[
'config.appearance.enabledControls' => 12,
'config.appearance.enabledControls.info' => 4,
@@ -43,7 +43,7 @@
'config.appearance.enabledControls.localize' => 4,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
diff --git a/Configuration/Mask/Tabs/palette.php b/Configuration/Mask/Tabs/palette.php
index 00035def..064ffabe 100644
--- a/Configuration/Mask/Tabs/palette.php
+++ b/Configuration/Mask/Tabs/palette.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
],
];
diff --git a/Configuration/Mask/Tabs/radio.php b/Configuration/Mask/Tabs/radio.php
index 0aaef3b3..c2bc10c9 100644
--- a/Configuration/Mask/Tabs/radio.php
+++ b/Configuration/Mask/Tabs/radio.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
],
@@ -11,7 +11,7 @@
'config.items' => 12,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
diff --git a/Configuration/Mask/Tabs/richtext.php b/Configuration/Mask/Tabs/richtext.php
index a88d6b6f..3966f877 100644
--- a/Configuration/Mask/Tabs/richtext.php
+++ b/Configuration/Mask/Tabs/richtext.php
@@ -8,7 +8,7 @@
];
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.richtextConfiguration' => 6,
],
@@ -16,10 +16,10 @@
'config.default' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
$validation,
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
diff --git a/Configuration/Mask/Tabs/select.php b/Configuration/Mask/Tabs/select.php
index 6f5195e8..61062510 100644
--- a/Configuration/Mask/Tabs/select.php
+++ b/Configuration/Mask/Tabs/select.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.renderType' => 6,
'config.default' => 6,
@@ -12,19 +12,19 @@
'config.items' => 12,
],
],
- Tab::ITEM_GROUP_SORTING => [
+ Tab::ITEM_GROUP_SORTING->value => [
[
'config.itemGroups' => 12,
'config.sortItems' => 12,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.minitems' => 6,
'config.maxitems' => 6,
],
],
- Tab::DATABASE => [
+ Tab::DATABASE->value => [
[
'config.foreign_table' => 12,
],
@@ -32,7 +32,7 @@
'config.foreign_table_where' => 12,
],
],
- Tab::FILES => [
+ Tab::FILES->value => [
[
'config.fileFolder' => 6,
'config.fileFolder_extList' => 6,
@@ -43,7 +43,7 @@
'config.fieldWizard.selectIcons.disabled' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -51,7 +51,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.size' => 6,
'config.autoSizeMax' => 6,
diff --git a/Configuration/Mask/Tabs/slug.php b/Configuration/Mask/Tabs/slug.php
index 97bcc9ae..11ab0848 100644
--- a/Configuration/Mask/Tabs/slug.php
+++ b/Configuration/Mask/Tabs/slug.php
@@ -3,12 +3,12 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.eval.slug' => 12,
],
],
- Tab::GENERATOR => [
+ Tab::GENERATOR->value => [
[
'config.generatorOptions.fields' => 12,
'config.generatorOptions.replacements' => 12,
diff --git a/Configuration/Mask/Tabs/string.php b/Configuration/Mask/Tabs/string.php
index f8bd3b35..9feaab26 100644
--- a/Configuration/Mask/Tabs/string.php
+++ b/Configuration/Mask/Tabs/string.php
@@ -35,7 +35,7 @@
}
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
'config.placeholder' => 6,
@@ -44,17 +44,17 @@
'config.size' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
$validation1,
$validation2,
],
- Tab::VALUE_PICKER => [
+ Tab::VALUE_PICKER->value => [
[
'config.valuePicker.mode' => 6,
'config.valuePicker.items' => 12,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -62,7 +62,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
(new Typo3Version())->getMajorVersion() > 11 ? 'config.nullable' : 'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Configuration/Mask/Tabs/tab.php b/Configuration/Mask/Tabs/tab.php
index 00035def..064ffabe 100644
--- a/Configuration/Mask/Tabs/tab.php
+++ b/Configuration/Mask/Tabs/tab.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
],
];
diff --git a/Configuration/Mask/Tabs/text.php b/Configuration/Mask/Tabs/text.php
index fa25761a..9d85d88a 100644
--- a/Configuration/Mask/Tabs/text.php
+++ b/Configuration/Mask/Tabs/text.php
@@ -15,7 +15,7 @@
}
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
'config.placeholder' => 6,
@@ -25,20 +25,20 @@
'config.rows' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
$validation,
[
(new Typo3Version())->getMajorVersion() > 11 ? 'config.required' : 'config.eval.required' => 6,
'config.eval.trim' => 6,
],
],
- Tab::VALUE_PICKER => [
+ Tab::VALUE_PICKER->value => [
[
'config.valuePicker.mode' => 6,
'config.valuePicker.items' => 12,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -46,12 +46,12 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::WIZARDS => [
+ Tab::WIZARDS->value => [
[
'config.format' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
(new Typo3Version())->getMajorVersion() > 11 ? 'config.nullable' : 'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Configuration/Mask/Tabs/timestamp.php b/Configuration/Mask/Tabs/timestamp.php
index 64398cc8..0b0e2e8a 100644
--- a/Configuration/Mask/Tabs/timestamp.php
+++ b/Configuration/Mask/Tabs/timestamp.php
@@ -4,7 +4,7 @@
use TYPO3\CMS\Core\Information\Typo3Version;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
(new Typo3Version())->getMajorVersion() === 11 ? 'config.eval' : 'config.format' => 6,
],
@@ -13,14 +13,14 @@
'config.placeholder' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.range.lower' => 6,
'config.range.upper' => 6,
(new Typo3Version())->getMajorVersion() > 11 ? 'config.required' : 'config.eval.required' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -28,7 +28,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
(new Typo3Version())->getMajorVersion() > 11 ? 'config.nullable' : 'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Configuration/Mask/TcaFields.php b/Configuration/Mask/TcaFields.php
index 8b3e9be4..1c8ab277 100644
--- a/Configuration/Mask/TcaFields.php
+++ b/Configuration/Mask/TcaFields.php
@@ -16,7 +16,7 @@
12 => 'ColumnsConfig/CommonProperties/Default.html#tca-property-default',
],
],
- FieldType::CHECK => [
+ FieldType::CHECK->value => [
'type' => 'number',
'min' => 0,
'max' => 31,
@@ -31,8 +31,8 @@
'config.placeholder' => [
'type' => 'variable',
'types' => [
- FieldType::TEXT => 'textarea',
- FieldType::RICHTEXT => 'textarea',
+ FieldType::TEXT->value => 'textarea',
+ FieldType::RICHTEXT->value => 'textarea',
],
'rows' => 5,
'label' => 'tx_mask.field.string.placeholder',
@@ -56,7 +56,7 @@
'max' => 50,
'step' => 5,
],
- FieldType::CATEGORY => [
+ FieldType::CATEGORY->value => [
'type' => 'number',
'min' => 1,
'label' => 'tx_mask.field.category.size',
@@ -66,7 +66,7 @@
12 => 'ColumnsConfig/CommonProperties/Size.html#tca-property-size',
],
],
- FieldType::SELECT => [
+ FieldType::SELECT->value => [
'type' => 'number',
'min' => 1,
'label' => 'tx_mask.field.select.size',
@@ -76,7 +76,7 @@
12 => 'ColumnsConfig/CommonProperties/Size.html#tca-property-size',
],
],
- FieldType::GROUP => [
+ FieldType::GROUP->value => [
'type' => 'number',
'min' => 1,
'label' => 'tx_mask.field.select.size',
@@ -495,7 +495,7 @@
],
'config.cols' => [
'collision' => true,
- FieldType::CHECK => [
+ FieldType::CHECK->value => [
'type' => 'text',
'label' => 'tx_mask.content.check.columns',
'description' => 'tx_mask.content.check.columns.description',
@@ -531,7 +531,7 @@
],
'config.format' => [
'collision' => true,
- FieldType::TEXT => [
+ FieldType::TEXT->value => [
'type' => 'radio',
'label' => 'tx_mask.field.text.format',
'code' => 'format',
@@ -548,7 +548,7 @@
12 => 'ColumnsConfig/Type/Text/Properties/Format.html',
],
],
- FieldType::TIMESTAMP => [
+ FieldType::TIMESTAMP->value => [
'type' => 'radio',
'label' => 'tx_mask.field.timestamp_format',
'description' => 'tx_mask.field.timestamp.eval',
@@ -602,7 +602,7 @@
],
'config.items' => [
'collision' => true,
- FieldType::CHECK => [
+ FieldType::CHECK->value => [
'type' => 'itemList',
'label' => 'tx_mask.content.check.items',
'description' => 'tx_mask.content.check.items.description',
@@ -643,7 +643,7 @@
12 => 'ColumnsConfig/Type/Check/Properties/Items.html',
],
],
- FieldType::RADIO => [
+ FieldType::RADIO->value => [
'type' => 'itemList',
'code' => 'items',
'label' => 'tx_mask.content.check.items',
@@ -663,7 +663,7 @@
12 => 'ColumnsConfig/Type/Radio/Properties/Items.html',
],
],
- FieldType::SELECT => [
+ FieldType::SELECT->value => [
'type' => 'itemList',
'code' => 'items',
'properties' => [
@@ -748,7 +748,7 @@
],
'config.renderType' => [
'collision' => true,
- FieldType::SELECT => [
+ FieldType::SELECT->value => [
'type' => 'select',
'label' => 'tx_mask.field.check.renderType',
'description' => 'tx_mask.field.check.renderType.description',
@@ -763,7 +763,7 @@
12 => 'ColumnsConfig/Type/Select/Index.html',
],
],
- FieldType::CHECK => [
+ FieldType::CHECK->value => [
'type' => 'select',
'label' => 'tx_mask.field.check.renderType',
'description' => 'tx_mask.field.check.renderType.description',
@@ -866,7 +866,7 @@
],
'config.elementBrowserEntryPoints._default' => [
'collision' => true,
- FieldType::GROUP => [
+ FieldType::GROUP->value => [
'type' => 'text',
'label' => 'tx_mask.field.elementBrowserEntryPoints.label',
'description' => 'tx_mask.field.group.elementBrowserEntryPoints.description',
@@ -875,7 +875,7 @@
12 => 'ColumnsConfig/Type/Group/Properties/ElementBrowserEntryPoints.html',
],
],
- FieldType::FOLDER => [
+ FieldType::FOLDER->value => [
'type' => 'text',
'label' => 'tx_mask.field.elementBrowserEntryPoints.label',
'description' => 'tx_mask.field.folder.elementBrowserEntryPoints.description',
diff --git a/Tests/Unit/Definition/TableDefinitionCollectionTest.php b/Tests/Unit/Definition/TableDefinitionCollectionTest.php
index 4263fd5e..44009a89 100644
--- a/Tests/Unit/Definition/TableDefinitionCollectionTest.php
+++ b/Tests/Unit/Definition/TableDefinitionCollectionTest.php
@@ -1572,13 +1572,13 @@ public static function getFormTypeDataProvider(): iterable
* @test
* @dataProvider getFormTypeDataProvider
*/
- public function getFormType(array $tca, array $json, string $fieldKey, string $table, string $expected): void
+ public function getFormType(array $tca, array $json, string $fieldKey, string $table, FieldType $expected): void
{
$GLOBALS['TCA'] = $tca;
$tableDefinitionCollection = TableDefinitionCollection::createFromArray($json);
- self::assertEquals($expected, (string)$tableDefinitionCollection->getFieldType($fieldKey, $table));
+ self::assertEquals($expected, $tableDefinitionCollection->getFieldType($fieldKey, $table));
}
public static function findFirstNonEmptyLabelDataProvider(): array
diff --git a/Tests/Unit/Definition/TcaFieldDefinitionTest.php b/Tests/Unit/Definition/TcaFieldDefinitionTest.php
index 8d5ef85e..bec74936 100644
--- a/Tests/Unit/Definition/TcaFieldDefinitionTest.php
+++ b/Tests/Unit/Definition/TcaFieldDefinitionTest.php
@@ -842,7 +842,7 @@ public static function getTypeReturnsTypeIfTypeCanBeFoundDataProvider(): iterabl
public function getTypeReturnsTypeIfTypeCanBeFound(array $json, string $expected, string $elementKey): void
{
$tcaFieldDefinition = TcaFieldDefinition::createFromFieldArray($json);
- self::assertSame($expected, (string)$tcaFieldDefinition->getFieldType($elementKey));
+ self::assertSame($expected, $tcaFieldDefinition->getFieldType($elementKey)->value);
}
/**
diff --git a/Tests/Unit/Fixtures/Defaults.php b/Tests/Unit/Fixtures/Defaults.php
index 23b616c6..213d6bb3 100644
--- a/Tests/Unit/Fixtures/Defaults.php
+++ b/Tests/Unit/Fixtures/Defaults.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\FieldType;
return [
- FieldType::STRING => [
+ FieldType::STRING->value => [
'tca_in' => [
'l10n_mode' => '',
'config.eval.null' => 0,
@@ -13,7 +13,7 @@
],
'sql' => 'varchar(255) DEFAULT \'\' NOT NULL',
],
- FieldType::FLOAT => [
+ FieldType::FLOAT->value => [
'tca_in' => [
'l10n_mode' => '',
'config.eval.null' => 0,
@@ -24,7 +24,7 @@
],
'sql' => 'float DEFAULT \'0\' NOT NULL',
],
- FieldType::INTEGER => [
+ FieldType::INTEGER->value => [
'tca_in' => [
'l10n_mode' => '',
'config.eval.null' => 0,
@@ -35,7 +35,7 @@
],
'sql' => 'int(11) DEFAULT \'0\' NOT NULL',
],
- FieldType::LINK => [
+ FieldType::LINK->value => [
'tca_in' => [
'l10n_mode' => '',
'config.eval.null' => 0,
@@ -47,7 +47,7 @@
],
'sql' => 'varchar(1024) DEFAULT \'\' NOT NULL',
],
- FieldType::DATE => [
+ FieldType::DATE->value => [
'tca_in' => [
'l10n_mode' => '',
'config.eval.null' => 0,
@@ -60,7 +60,7 @@
],
'sql' => 'date',
],
- FieldType::DATETIME => [
+ FieldType::DATETIME->value => [
'tca_in' => [
'l10n_mode' => '',
'config.eval.null' => 0,
@@ -73,7 +73,7 @@
],
'sql' => 'datetime',
],
- FieldType::TIMESTAMP => [
+ FieldType::TIMESTAMP->value => [
'tca_in' => [
'l10n_mode' => '',
'config.eval' => 'date',
@@ -86,7 +86,7 @@
],
'sql' => 'int(10) unsigned DEFAULT \'0\' NOT NULL',
],
- FieldType::TEXT => [
+ FieldType::TEXT->value => [
'tca_in' => [
'l10n_mode' => '',
'config.wrap' => 'virtual',
@@ -98,7 +98,7 @@
],
'sql' => 'mediumtext',
],
- FieldType::RICHTEXT => [
+ FieldType::RICHTEXT->value => [
'tca_in' => [
'l10n_mode' => '',
'config.richtextConfiguration' => '',
@@ -109,7 +109,7 @@
],
'sql' => 'mediumtext',
],
- FieldType::CHECK => [
+ FieldType::CHECK->value => [
'tca_in' => [
'l10n_mode' => '',
'config.renderType' => '',
@@ -119,7 +119,7 @@
],
'sql' => 'int(11) DEFAULT \'0\' NOT NULL',
],
- FieldType::SELECT => [
+ FieldType::SELECT->value => [
'tca_in' => [
'l10n_mode' => '',
'config.renderType' => 'selectSingle',
@@ -129,7 +129,7 @@
],
'sql' => 'varchar(255) DEFAULT \'\' NOT NULL',
],
- FieldType::RADIO => [
+ FieldType::RADIO->value => [
'tca_in' => [
'l10n_mode' => '',
'config.items' => '',
@@ -139,7 +139,7 @@
],
'sql' => 'int(11) DEFAULT \'0\' NOT NULL',
],
- FieldType::GROUP => [
+ FieldType::GROUP->value => [
'tca_in' => [
'l10n_mode' => '',
'config.internal_type' => 'db',
@@ -153,7 +153,7 @@
],
'sql' => 'text',
],
- FieldType::FILE => [
+ FieldType::FILE->value => [
'tca_in' => [
'l10n_mode' => '',
'imageoverlayPalette' => 1,
@@ -165,7 +165,7 @@
],
'sql' => 'int(11) unsigned DEFAULT \'0\' NOT NULL',
],
- FieldType::INLINE => [
+ FieldType::INLINE->value => [
'tca_in' => [
'l10n_mode' => '',
'config.appearance.collapseAll' => 1,
@@ -184,7 +184,7 @@
],
'sql' => 'int(11) unsigned DEFAULT \'0\' NOT NULL',
],
- FieldType::CONTENT => [
+ FieldType::CONTENT->value => [
'tca_in' => [
'l10n_mode' => '',
'config.appearance.levelLinksPosition' => 'top',
@@ -204,17 +204,17 @@
],
'sql' => 'int(11) unsigned DEFAULT \'0\' NOT NULL',
],
- FieldType::TAB => [
+ FieldType::TAB->value => [
'tca_out' => [
'config.type' => 'tab',
],
],
- FieldType::PALETTE => [
+ FieldType::PALETTE->value => [
'tca_out' => [
'config.type' => 'palette',
],
],
- FieldType::LINEBREAK => [
+ FieldType::LINEBREAK->value => [
'tca_out' => [
'config.type' => 'linebreak',
],
diff --git a/Tests/Unit/Fixtures/FieldGroups.php b/Tests/Unit/Fixtures/FieldGroups.php
index ccb12bca..407036d7 100644
--- a/Tests/Unit/Fixtures/FieldGroups.php
+++ b/Tests/Unit/Fixtures/FieldGroups.php
@@ -3,28 +3,28 @@
use MASK\Mask\Enumeration\FieldType;
return [
- FieldType::STRING => 'input',
- FieldType::INTEGER => 'input',
- FieldType::FLOAT => 'input',
- FieldType::LINK => 'input',
+ FieldType::STRING->value => 'input',
+ FieldType::INTEGER->value => 'input',
+ FieldType::FLOAT->value => 'input',
+ FieldType::LINK->value => 'input',
- FieldType::TEXT => 'text',
- FieldType::RICHTEXT => 'text',
+ FieldType::TEXT->value => 'text',
+ FieldType::RICHTEXT->value => 'text',
- FieldType::DATE => 'date',
- FieldType::DATETIME => 'date',
- FieldType::TIMESTAMP => 'date',
+ FieldType::DATE->value => 'date',
+ FieldType::DATETIME->value => 'date',
+ FieldType::TIMESTAMP->value => 'date',
- FieldType::CHECK => 'choice',
- FieldType::RADIO => 'choice',
- FieldType::SELECT => 'choice',
- FieldType::GROUP => 'choice',
+ FieldType::CHECK->value => 'choice',
+ FieldType::RADIO->value => 'choice',
+ FieldType::SELECT->value => 'choice',
+ FieldType::GROUP->value => 'choice',
- FieldType::FILE => 'repeating',
- FieldType::INLINE => 'repeating',
- FieldType::CONTENT => 'repeating',
+ FieldType::FILE->value => 'repeating',
+ FieldType::INLINE->value => 'repeating',
+ FieldType::CONTENT->value => 'repeating',
- FieldType::TAB => 'structure',
- FieldType::PALETTE => 'structure',
- FieldType::LINEBREAK => 'structure',
+ FieldType::TAB->value => 'structure',
+ FieldType::PALETTE->value => 'structure',
+ FieldType::LINEBREAK->value => 'structure',
];
diff --git a/Tests/Unit/Fixtures/Tabs/check.php b/Tests/Unit/Fixtures/Tabs/check.php
index 8c3cea41..a90b87e4 100644
--- a/Tests/Unit/Fixtures/Tabs/check.php
+++ b/Tests/Unit/Fixtures/Tabs/check.php
@@ -3,12 +3,12 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.renderType' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -16,7 +16,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.items' => 12,
],
diff --git a/Tests/Unit/Fixtures/Tabs/content.php b/Tests/Unit/Fixtures/Tabs/content.php
index 51b27efb..92a6cf2d 100644
--- a/Tests/Unit/Fixtures/Tabs/content.php
+++ b/Tests/Unit/Fixtures/Tabs/content.php
@@ -3,18 +3,18 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'cTypes' => 12,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.minitems' => 6,
'config.maxitems' => 6,
],
],
- TAB::APPEARANCE => [
+ Tab::APPEARANCE->value => [
[
'config.appearance.newRecordLinkTitle' => 6,
'config.appearance.levelLinksPosition' => 6,
@@ -23,7 +23,7 @@
'config.appearance.expandSingle' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
diff --git a/Tests/Unit/Fixtures/Tabs/date.php b/Tests/Unit/Fixtures/Tabs/date.php
index a85d25c3..1c7e594d 100644
--- a/Tests/Unit/Fixtures/Tabs/date.php
+++ b/Tests/Unit/Fixtures/Tabs/date.php
@@ -3,20 +3,20 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
'config.placeholder' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.range.lower' => 6,
'config.range.upper' => 6,
'config.eval.required' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -24,7 +24,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Tests/Unit/Fixtures/Tabs/datetime.php b/Tests/Unit/Fixtures/Tabs/datetime.php
index a85d25c3..1c7e594d 100644
--- a/Tests/Unit/Fixtures/Tabs/datetime.php
+++ b/Tests/Unit/Fixtures/Tabs/datetime.php
@@ -3,20 +3,20 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
'config.placeholder' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.range.lower' => 6,
'config.range.upper' => 6,
'config.eval.required' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -24,7 +24,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Tests/Unit/Fixtures/Tabs/file.php b/Tests/Unit/Fixtures/Tabs/file.php
index d670e027..43aa4b12 100644
--- a/Tests/Unit/Fixtures/Tabs/file.php
+++ b/Tests/Unit/Fixtures/Tabs/file.php
@@ -3,18 +3,18 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'imageoverlayPalette' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.minitems' => 6,
'config.maxitems' => 6,
],
],
- TAB::APPEARANCE => [
+ Tab::APPEARANCE->value => [
[
'allowedFileExtensions' => 6,
],
@@ -25,7 +25,7 @@
'config.appearance.fileUploadAllowed' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
diff --git a/Tests/Unit/Fixtures/Tabs/float.php b/Tests/Unit/Fixtures/Tabs/float.php
index dad7fd2d..33f21d46 100644
--- a/Tests/Unit/Fixtures/Tabs/float.php
+++ b/Tests/Unit/Fixtures/Tabs/float.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
'config.placeholder' => 6,
@@ -12,7 +12,7 @@
'config.size' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.eval.required' => 6,
'config.max' => 6,
@@ -20,13 +20,13 @@
'config.range.upper' => 6,
],
],
- Tab::FIELD_CONTROL => [
+ Tab::FIELD_CONTROL->value => [
[
'config.slider.step' => 6,
'config.slider.width' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -34,7 +34,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Tests/Unit/Fixtures/Tabs/group.php b/Tests/Unit/Fixtures/Tabs/group.php
index eb138bc3..5f27e458 100644
--- a/Tests/Unit/Fixtures/Tabs/group.php
+++ b/Tests/Unit/Fixtures/Tabs/group.php
@@ -3,19 +3,19 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.internal_type' => 6,
'config.allowed' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.minitems' => 6,
'config.maxitems' => 6,
],
],
- Tab::FIELD_CONTROL => [
+ Tab::FIELD_CONTROL->value => [
[
'config.fieldControl' => 12,
'config.fieldControl.editPopup.disabled' => 4,
@@ -30,7 +30,7 @@
'config.fieldWizard.tableList.disabled' => 4,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -38,7 +38,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.size' => 6,
'config.autoSizeMax' => 6,
diff --git a/Tests/Unit/Fixtures/Tabs/inline.php b/Tests/Unit/Fixtures/Tabs/inline.php
index bbc47d04..132b982a 100644
--- a/Tests/Unit/Fixtures/Tabs/inline.php
+++ b/Tests/Unit/Fixtures/Tabs/inline.php
@@ -3,19 +3,19 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'ctrl.label' => 6,
'ctrl.iconfile' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.minitems' => 6,
'config.maxitems' => 6,
],
],
- TAB::APPEARANCE => [
+ Tab::APPEARANCE->value => [
[
'config.appearance.newRecordLinkTitle' => 6,
'config.appearance.levelLinksPosition' => 6,
@@ -26,7 +26,7 @@
'config.appearance.useSortable' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
diff --git a/Tests/Unit/Fixtures/Tabs/integer.php b/Tests/Unit/Fixtures/Tabs/integer.php
index fcb2be4c..4fecd199 100644
--- a/Tests/Unit/Fixtures/Tabs/integer.php
+++ b/Tests/Unit/Fixtures/Tabs/integer.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
'config.placeholder' => 6,
@@ -12,7 +12,7 @@
'config.size' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.eval.required' => 6,
'config.max' => 6,
@@ -22,13 +22,13 @@
'config.range.upper' => 6,
],
],
- Tab::FIELD_CONTROL => [
+ Tab::FIELD_CONTROL->value => [
[
'config.slider.step' => 6,
'config.slider.width' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -36,7 +36,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Tests/Unit/Fixtures/Tabs/link.php b/Tests/Unit/Fixtures/Tabs/link.php
index 236f858a..2ef167da 100644
--- a/Tests/Unit/Fixtures/Tabs/link.php
+++ b/Tests/Unit/Fixtures/Tabs/link.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.placeholder' => 6,
],
@@ -11,13 +11,13 @@
'config.size' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.eval.required' => 6,
'config.fieldControl.linkPopup.options.allowedExtensions' => 6,
],
],
- Tab::FIELD_CONTROL => [
+ Tab::FIELD_CONTROL->value => [
[
'config.fieldControl.linkPopup.options.blindLinkOptions' => 12,
'config.fieldControl.linkPopup.options.blindLinkOptions.file' => 4,
@@ -28,7 +28,7 @@
'config.fieldControl.linkPopup.options.blindLinkOptions.telephone' => 4,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -36,7 +36,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Tests/Unit/Fixtures/Tabs/palette.php b/Tests/Unit/Fixtures/Tabs/palette.php
index 00035def..064ffabe 100644
--- a/Tests/Unit/Fixtures/Tabs/palette.php
+++ b/Tests/Unit/Fixtures/Tabs/palette.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
],
];
diff --git a/Tests/Unit/Fixtures/Tabs/radio.php b/Tests/Unit/Fixtures/Tabs/radio.php
index dd886ef8..df4ab672 100644
--- a/Tests/Unit/Fixtures/Tabs/radio.php
+++ b/Tests/Unit/Fixtures/Tabs/radio.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.items' => 12,
],
@@ -11,7 +11,7 @@
'config.default' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
diff --git a/Tests/Unit/Fixtures/Tabs/richtext.php b/Tests/Unit/Fixtures/Tabs/richtext.php
index 73536285..e113295e 100644
--- a/Tests/Unit/Fixtures/Tabs/richtext.php
+++ b/Tests/Unit/Fixtures/Tabs/richtext.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.richtextConfiguration' => 6,
],
@@ -11,7 +11,7 @@
'config.default' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
diff --git a/Tests/Unit/Fixtures/Tabs/select.php b/Tests/Unit/Fixtures/Tabs/select.php
index 7091305f..6528db27 100644
--- a/Tests/Unit/Fixtures/Tabs/select.php
+++ b/Tests/Unit/Fixtures/Tabs/select.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.renderType' => 6,
],
@@ -11,13 +11,13 @@
'config.items' => 12,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.minitems' => 6,
'config.maxitems' => 6,
],
],
- Tab::DATABASE => [
+ Tab::DATABASE->value => [
[
'config.foreign_table' => 6,
],
@@ -25,14 +25,14 @@
'config.foreign_table_where' => 12,
],
],
- Tab::FILES => [
+ Tab::FILES->value => [
[
'config.fileFolder' => 6,
'config.fileFolder_extList' => 6,
'config.fileFolder_recursions' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -40,7 +40,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.size' => 6,
'config.autoSizeMax' => 6,
diff --git a/Tests/Unit/Fixtures/Tabs/string.php b/Tests/Unit/Fixtures/Tabs/string.php
index 8154d32c..aba30950 100644
--- a/Tests/Unit/Fixtures/Tabs/string.php
+++ b/Tests/Unit/Fixtures/Tabs/string.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
'config.placeholder' => 6,
@@ -12,7 +12,7 @@
'config.size' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.max' => 6,
'config.is_in' => 6,
@@ -33,7 +33,7 @@
'config.eval.nospace' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -41,7 +41,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Tests/Unit/Fixtures/Tabs/tab.php b/Tests/Unit/Fixtures/Tabs/tab.php
index 00035def..064ffabe 100644
--- a/Tests/Unit/Fixtures/Tabs/tab.php
+++ b/Tests/Unit/Fixtures/Tabs/tab.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
],
];
diff --git a/Tests/Unit/Fixtures/Tabs/text.php b/Tests/Unit/Fixtures/Tabs/text.php
index 6fb68c80..71621d75 100644
--- a/Tests/Unit/Fixtures/Tabs/text.php
+++ b/Tests/Unit/Fixtures/Tabs/text.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.default' => 6,
'config.placeholder' => 6,
@@ -13,7 +13,7 @@
'config.rows' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.max' => 6,
],
@@ -22,7 +22,7 @@
'config.eval.trim' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -30,12 +30,12 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::WIZARDS => [
+ Tab::WIZARDS->value => [
[
'config.format' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Tests/Unit/Fixtures/Tabs/timestamp.php b/Tests/Unit/Fixtures/Tabs/timestamp.php
index c01e237f..894eebe0 100644
--- a/Tests/Unit/Fixtures/Tabs/timestamp.php
+++ b/Tests/Unit/Fixtures/Tabs/timestamp.php
@@ -3,7 +3,7 @@
use MASK\Mask\Enumeration\Tab;
return [
- Tab::GENERAL => [
+ Tab::GENERAL->value => [
[
'config.eval' => 6,
],
@@ -12,14 +12,14 @@
'config.placeholder' => 6,
],
],
- Tab::VALIDATION => [
+ Tab::VALIDATION->value => [
[
'config.range.lower' => 6,
'config.range.upper' => 6,
'config.eval.required' => 6,
],
],
- Tab::LOCALIZATION => [
+ Tab::LOCALIZATION->value => [
[
'l10n_mode' => 12,
],
@@ -27,7 +27,7 @@
'config.behaviour.allowLanguageSynchronization' => 6,
],
],
- Tab::EXTENDED => [
+ Tab::EXTENDED->value => [
[
'config.eval.null' => 6,
'config.mode' => 6,
diff --git a/Tests/Unit/Fixtures/TcaFields.php b/Tests/Unit/Fixtures/TcaFields.php
index 9c0de014..a35f8944 100644
--- a/Tests/Unit/Fixtures/TcaFields.php
+++ b/Tests/Unit/Fixtures/TcaFields.php
@@ -26,8 +26,8 @@
'config.placeholder' => [
'type' => 'variable',
'types' => [
- FieldType::TEXT => 'textarea',
- FieldType::RICHTEXT => 'textarea',
+ FieldType::TEXT->value => 'textarea',
+ FieldType::RICHTEXT->value => 'textarea',
],
'rows' => 5,
'label' => 'tx_mask.field.string.placeholder',
diff --git a/Tests/Unit/Migrations/RteMigrationTest.php b/Tests/Unit/Migrations/RteMigrationTest.php
index 018487c6..39dd537d 100644
--- a/Tests/Unit/Migrations/RteMigrationTest.php
+++ b/Tests/Unit/Migrations/RteMigrationTest.php
@@ -51,6 +51,6 @@ public function legacyRteFormatCompatibilityLayerWorks(): void
);
$tableDefinitionCollection = $jsonLoader->load();
- self::assertTrue($tableDefinitionCollection->loadField('tt_content', 'tx_mask_rte')->getFieldType()->equals(FieldType::RICHTEXT), 'Field tx_mask_rte is not a richtext.');
+ self::assertTrue($tableDefinitionCollection->loadField('tt_content', 'tx_mask_rte')->getFieldType() == FieldType::RICHTEXT, 'Field tx_mask_rte is not a richtext.');
}
}