Initial Drupal 11 with DDEV setup
This commit is contained in:
99
web/core/assets/schemas/v1/icon_pack.schema.json
Normal file
99
web/core/assets/schemas/v1/icon_pack.schema.json
Normal file
@ -0,0 +1,99 @@
|
||||
{
|
||||
"type": "object",
|
||||
"required": [
|
||||
"extractor",
|
||||
"template"
|
||||
],
|
||||
"properties": {
|
||||
"label": {
|
||||
"title": "Label",
|
||||
"description": "Translatable label",
|
||||
"type": "string"
|
||||
},
|
||||
"description": {
|
||||
"title": "Description",
|
||||
"description": "Translatable description",
|
||||
"type": "string"
|
||||
},
|
||||
"enabled": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"version": {
|
||||
"title": "Version",
|
||||
"type": "string"
|
||||
},
|
||||
"links": {
|
||||
"title": "External links",
|
||||
"description": "Both compact and full syntaxes are available",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string",
|
||||
"format": "iri-reference"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"title": {
|
||||
"type": "string"
|
||||
},
|
||||
"url": {
|
||||
"type": "string",
|
||||
"format": "iri-reference"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"license": {
|
||||
"title": "License",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"url": {
|
||||
"type": "string",
|
||||
"format": "iri-reference"
|
||||
},
|
||||
"gpl-compatible": {
|
||||
"type": "boolean"
|
||||
}
|
||||
}
|
||||
},
|
||||
"extractor": {
|
||||
"title": "Extractor ID",
|
||||
"description": "The plugin ID of the extractor",
|
||||
"type": "string",
|
||||
"pattern": "^[A-Za-z]+\\w*$"
|
||||
},
|
||||
"config": {
|
||||
"title": "Extractor configuration",
|
||||
"description": "The structure is specific to the extractor plugin",
|
||||
"type": "object"
|
||||
},
|
||||
"settings": {
|
||||
"title": "Settings",
|
||||
"description": "Used to build the settings form. Each setting is a JSON schema",
|
||||
"type": "object",
|
||||
"patternProperties": {
|
||||
"^\\w+$": {
|
||||
"$ref": "http://json-schema.org/draft-04/schema#"
|
||||
}
|
||||
},
|
||||
"additionalProperties": false
|
||||
},
|
||||
"template": {
|
||||
"title": "Twig template",
|
||||
"type": "string"
|
||||
},
|
||||
"library": {
|
||||
"title": "Asset library",
|
||||
"description": "The ID of an asset library",
|
||||
"type": "string",
|
||||
"pattern": "^\\w+/[A-Za-z]+[\\w-]*$"
|
||||
}
|
||||
}
|
||||
}
|
||||
201
web/core/assets/schemas/v1/metadata-full.schema.json
Normal file
201
web/core/assets/schemas/v1/metadata-full.schema.json
Normal file
@ -0,0 +1,201 @@
|
||||
{
|
||||
"$id": "https://git.drupalcode.org/project/drupal/-/raw/HEAD/core/assets/schemas/v1/metadata-full.schema.json",
|
||||
"$schema": "http://json-schema.org/draft-04/schema#",
|
||||
"$defs": {
|
||||
"propDefinition": {
|
||||
"$ref": "http://json-schema.org/draft-04/schema#",
|
||||
"meta:enum": {
|
||||
"type": "object",
|
||||
"minItems": 1,
|
||||
"uniqueItems": true,
|
||||
"patternProperties": {
|
||||
"additionalProperties": false,
|
||||
"^[a-zA-Z0-9_-]*$": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
},
|
||||
"x-translation-context": {
|
||||
"type": "string",
|
||||
"title": "Translation Context"
|
||||
}
|
||||
},
|
||||
"slotDefinition": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"patternProperties": {
|
||||
"^[a-zA-Z0-9_-]+$": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"title": {
|
||||
"type": "string",
|
||||
"title": "Title"
|
||||
},
|
||||
"description": {
|
||||
"type": "string",
|
||||
"title": "Description"
|
||||
},
|
||||
"examples": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"variantDefinition": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"patternProperties": {
|
||||
"^[a-zA-Z0-9_-]+$": {
|
||||
"type": "object",
|
||||
"required": ["title"],
|
||||
"properties": {
|
||||
"title": {
|
||||
"type": "string",
|
||||
"title": "Title"
|
||||
},
|
||||
"description": {
|
||||
"type": "string",
|
||||
"title": "Description"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"required": [
|
||||
"extension_type",
|
||||
"id",
|
||||
"library",
|
||||
"machineName",
|
||||
"path",
|
||||
"provider",
|
||||
"template"
|
||||
],
|
||||
"properties": {
|
||||
"$schema": {
|
||||
"type": "string",
|
||||
"format": "uri"
|
||||
},
|
||||
"documentation": {
|
||||
"type": "string",
|
||||
"title": "Documentation",
|
||||
"description": "The HTML contents of the parsed README.md file.",
|
||||
"examples": [
|
||||
"This component is used in a particular manner."
|
||||
]
|
||||
},
|
||||
"extension_type": {
|
||||
"type": "string",
|
||||
"title": "Extension Type",
|
||||
"description": "This component was defined either in a module or in a theme",
|
||||
"enum": [
|
||||
"module",
|
||||
"theme"
|
||||
]
|
||||
},
|
||||
"id": {
|
||||
"type": "string",
|
||||
"title": "ID",
|
||||
"description": "The plugin ID.",
|
||||
"pattern": "^[a-z]([a-zA-Z0-9_-]*[a-zA-Z0-9])*:[a-z]([a-zA-Z0-9_-]*[a-zA-Z0-9])*$"
|
||||
},
|
||||
"library": {
|
||||
"type": ["object", "array"],
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"css": {
|
||||
"$ref": "metadata.schema.json#/$defs/cssDefinition"
|
||||
},
|
||||
"js": {
|
||||
"$ref": "metadata.schema.json#/$defs/jsAttributes"
|
||||
},
|
||||
"dependencies": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"machineName": {
|
||||
"type": "string",
|
||||
"title": "Machine Name",
|
||||
"description": "Used in combination with 'provider' to create the component ID: {provider}:{machineName}. Component ID used for reference on other Twig templates and other parts of the system",
|
||||
"pattern": "^[a-z]([a-zA-Z0-9_-]*[a-zA-Z0-9])*$",
|
||||
"examples": [
|
||||
"button",
|
||||
"module_23F"
|
||||
]
|
||||
},
|
||||
"name": {
|
||||
"type": "string",
|
||||
"title": "Name",
|
||||
"description": "Human readable version of the machineName",
|
||||
"examples": [
|
||||
"Button",
|
||||
"Module 23F"
|
||||
]
|
||||
},
|
||||
"path": {
|
||||
"type": "string",
|
||||
"title": "Path",
|
||||
"description": "The path to the single directory component",
|
||||
"examples": [
|
||||
"/var/www/html/web/modules/contrib/sdc_examples/components/my-card"
|
||||
]
|
||||
},
|
||||
"provider": {
|
||||
"type": "string",
|
||||
"title": "Provider",
|
||||
"description": "The name of the module or theme that contains the component.",
|
||||
"examples": [
|
||||
"umami",
|
||||
"sdc_examples"
|
||||
]
|
||||
},
|
||||
"description": {
|
||||
"type": "string",
|
||||
"title": "Description",
|
||||
"description": "Human readable description for the component",
|
||||
"examples": [
|
||||
"Plain button. Only available for use in other components. Do not include directly."
|
||||
]
|
||||
},
|
||||
"status": {
|
||||
"type": "string",
|
||||
"title": "Development Status",
|
||||
"description": "Use this property to identify if the component can be safely used in production.",
|
||||
"enum": [
|
||||
"experimental",
|
||||
"stable",
|
||||
"deprecated",
|
||||
"obsolete"
|
||||
]
|
||||
},
|
||||
"props": {
|
||||
"$ref": "#/$defs/propDefinition"
|
||||
},
|
||||
"slots": {
|
||||
"$ref": "metadata.schema.json#/$defs/slotDefinition"
|
||||
},
|
||||
"variants": {
|
||||
"$ref": "metadata.schema.json#/$defs/variantDefinition"
|
||||
},
|
||||
"template": {
|
||||
"type": "string",
|
||||
"title": "Template",
|
||||
"description": "The file name of the Twig template.",
|
||||
"examples": [
|
||||
"my-card.twig"
|
||||
]
|
||||
},
|
||||
"libraryOverrides": {
|
||||
"$ref": "metadata.schema.json#/$defs/libraryDefinition"
|
||||
}
|
||||
}
|
||||
}
|
||||
254
web/core/assets/schemas/v1/metadata.schema.json
Normal file
254
web/core/assets/schemas/v1/metadata.schema.json
Normal file
@ -0,0 +1,254 @@
|
||||
{
|
||||
"$id": "https://git.drupalcode.org/project/drupal/-/raw/HEAD/core/assets/schemas/v1/metadata.schema.json",
|
||||
"$schema": "http://json-schema.org/draft-04/schema#",
|
||||
"$defs": {
|
||||
"propDefinition": {
|
||||
"$ref": "http://json-schema.org/draft-04/schema#",
|
||||
"meta:enum": {
|
||||
"type": "object",
|
||||
"minItems": 1,
|
||||
"uniqueItems": true,
|
||||
"patternProperties": {
|
||||
"additionalProperties": false,
|
||||
"^[a-zA-Z0-9_-]*$": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
},
|
||||
"x-translation-context": {
|
||||
"type": "string",
|
||||
"title": "Translation Context"
|
||||
}
|
||||
},
|
||||
"slotDefinition": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"patternProperties": {
|
||||
"^[a-zA-Z0-9_-]+$": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"title": {
|
||||
"type": "string",
|
||||
"title": "Title"
|
||||
},
|
||||
"description": {
|
||||
"type": "string",
|
||||
"title": "Description"
|
||||
},
|
||||
"examples": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"variantDefinition": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"patternProperties": {
|
||||
"^[a-zA-Z0-9_-]+$": {
|
||||
"type": "object",
|
||||
"required": ["title"],
|
||||
"properties": {
|
||||
"title": {
|
||||
"type": "string",
|
||||
"title": "Title"
|
||||
},
|
||||
"description": {
|
||||
"type": "string",
|
||||
"title": "Description"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssAttributes": {
|
||||
"type": [
|
||||
"object",
|
||||
"array"
|
||||
],
|
||||
"patternProperties": {
|
||||
".*": {
|
||||
"type": [
|
||||
"object",
|
||||
"array"
|
||||
],
|
||||
"properties": {
|
||||
"attributes": {
|
||||
"type": "object"
|
||||
},
|
||||
"group": {
|
||||
"type": "string"
|
||||
},
|
||||
"media": {
|
||||
"type": "string"
|
||||
},
|
||||
"minified": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"preprocess": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"type": {
|
||||
"type": "string"
|
||||
},
|
||||
"weight": {
|
||||
"type": "integer"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssDefinition": {
|
||||
"type": [
|
||||
"object",
|
||||
"array"
|
||||
],
|
||||
"properties": {
|
||||
"base": {
|
||||
"$ref": "#/$defs/cssAttributes"
|
||||
},
|
||||
"layout": {
|
||||
"$ref": "#/$defs/cssAttributes"
|
||||
},
|
||||
"component": {
|
||||
"$ref": "#/$defs/cssAttributes"
|
||||
},
|
||||
"state": {
|
||||
"$ref": "#/$defs/cssAttributes"
|
||||
},
|
||||
"theme": {
|
||||
"$ref": "#/$defs/cssAttributes"
|
||||
}
|
||||
}
|
||||
},
|
||||
"jsAttributes": {
|
||||
"type": [
|
||||
"object",
|
||||
"array"
|
||||
],
|
||||
"patternProperties": {
|
||||
".*": {
|
||||
"type": [
|
||||
"object",
|
||||
"array"
|
||||
],
|
||||
"properties": {
|
||||
"attributes": {
|
||||
"type": "object"
|
||||
},
|
||||
"preprocess": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"type": {
|
||||
"type": "string"
|
||||
},
|
||||
"weight": {
|
||||
"type": "number"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"libraryDefinition": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"dependencies": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"css": {
|
||||
"type": [
|
||||
"object",
|
||||
"array"
|
||||
],
|
||||
"properties": {
|
||||
"base": {
|
||||
"$ref": "#/$defs/cssAttributes"
|
||||
},
|
||||
"layout": {
|
||||
"$ref": "#/$defs/cssAttributes"
|
||||
},
|
||||
"component": {
|
||||
"$ref": "#/$defs/cssAttributes"
|
||||
},
|
||||
"state": {
|
||||
"$ref": "#/$defs/cssAttributes"
|
||||
},
|
||||
"theme": {
|
||||
"$ref": "#/$defs/cssAttributes"
|
||||
}
|
||||
}
|
||||
},
|
||||
"js": {
|
||||
"$ref": "#/$defs/jsAttributes"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"$schema": {
|
||||
"type": "string",
|
||||
"format": "uri"
|
||||
},
|
||||
"name": {
|
||||
"type": "string",
|
||||
"title": "Name",
|
||||
"description": "Human readable version of the component name",
|
||||
"examples": [
|
||||
"Button",
|
||||
"Module 23F"
|
||||
]
|
||||
},
|
||||
"description": {
|
||||
"type": "string",
|
||||
"title": "Description",
|
||||
"description": "Human readable description for the component",
|
||||
"examples": [
|
||||
"Plain button. Only available for use in other components. Do not include directly."
|
||||
]
|
||||
},
|
||||
"status": {
|
||||
"type": "string",
|
||||
"title": "Development Status",
|
||||
"description": "Use this property to identify if the component can be safely used in production.",
|
||||
"enum": [
|
||||
"experimental",
|
||||
"stable",
|
||||
"deprecated",
|
||||
"obsolete"
|
||||
]
|
||||
},
|
||||
"props": {
|
||||
"$ref": "#/$defs/propDefinition"
|
||||
},
|
||||
"slots": {
|
||||
"$ref": "#/$defs/slotDefinition"
|
||||
},
|
||||
"variants": {
|
||||
"$ref": "#/$defs/variantDefinition"
|
||||
},
|
||||
"libraryOverrides": {
|
||||
"$ref": "#/$defs/libraryDefinition"
|
||||
},
|
||||
"thirdPartySettings": {
|
||||
"type": [
|
||||
"object",
|
||||
"array"
|
||||
],
|
||||
"additionalProperties": true,
|
||||
"patternProperties": {
|
||||
".*": {
|
||||
"type": "object",
|
||||
"additionalProperties": true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user