Initial Drupal 11 with DDEV setup
This commit is contained in:
10
web/core/assets/scaffold/README.txt
Normal file
10
web/core/assets/scaffold/README.txt
Normal file
@ -0,0 +1,10 @@
|
||||
Drupal Scaffold Files are files that are contained inside drupal/core, but are
|
||||
installed outside of the core directory (e.g. at the Drupal root).
|
||||
|
||||
For now, the scaffold files are being maintained in their original
|
||||
locations. This is done so that Drupal sites based on the template project
|
||||
drupal-composer/drupal-project may continue to download these files from the
|
||||
same URLs they have historically been found at.
|
||||
|
||||
Those will be deleted from their original location in a future version.
|
||||
See https://www.drupal.org/project/drupal/issues/3075954 for follow-on work.
|
||||
16
web/core/assets/scaffold/TESTING.txt
Normal file
16
web/core/assets/scaffold/TESTING.txt
Normal file
@ -0,0 +1,16 @@
|
||||
HOW-TO: Test these Drupal scaffold files
|
||||
|
||||
In order to test these scaffold files, you'll need to get the entire Drupal repo and
|
||||
run the tests there.
|
||||
|
||||
You'll find the tests in core/tests/Drupal/Tests/ComposerIntegrationTest.php.
|
||||
|
||||
You can get the full Drupal repo here:
|
||||
https://www.drupal.org/project/drupal/git-instructions
|
||||
|
||||
You can find more information about running PHPUnit tests with Drupal here:
|
||||
https://www.drupal.org/node/2116263
|
||||
|
||||
You can run a single phpunit test file like so:
|
||||
|
||||
$ ./vendor/bin/phpunit -c core core/tests/Drupal/Tests/ComposerIntegrationTest.php
|
||||
40
web/core/assets/scaffold/files/csslintrc
Normal file
40
web/core/assets/scaffold/files/csslintrc
Normal file
@ -0,0 +1,40 @@
|
||||
--errors=box-model,
|
||||
display-property-grouping,
|
||||
duplicate-background-images,
|
||||
duplicate-properties,
|
||||
empty-rules,
|
||||
ids,
|
||||
import,
|
||||
important,
|
||||
known-properties,
|
||||
outline-none,
|
||||
overqualified-elements,
|
||||
qualified-headings,
|
||||
shorthand,
|
||||
star-property-hack,
|
||||
text-indent,
|
||||
underscore-property-hack,
|
||||
unique-headings,
|
||||
unqualified-attributes,
|
||||
vendor-prefix,
|
||||
zero-units
|
||||
--ignore=adjoining-classes,
|
||||
box-sizing,
|
||||
bulletproof-font-face,
|
||||
compatible-vendor-prefixes,
|
||||
errors,
|
||||
fallback-colors,
|
||||
floats,
|
||||
font-faces,
|
||||
font-sizes,
|
||||
gradients,
|
||||
import-ie-limit,
|
||||
order-alphabetical,
|
||||
regex-selectors,
|
||||
rules-count,
|
||||
selector-max,
|
||||
selector-max-approaching,
|
||||
selector-newline,
|
||||
universal-selector
|
||||
--exclude-list=core/assets,
|
||||
vendor
|
||||
250
web/core/assets/scaffold/files/default.services.yml
Normal file
250
web/core/assets/scaffold/files/default.services.yml
Normal file
@ -0,0 +1,250 @@
|
||||
parameters:
|
||||
# Toggles the super user access policy. If your website has at least one user
|
||||
# with the Administrator role, it is advised to set this to false. This allows
|
||||
# you to make user 1 a regular user, strengthening the security of your site.
|
||||
security.enable_super_user: true
|
||||
session.storage.options:
|
||||
# Default ini options for sessions.
|
||||
#
|
||||
# Some distributions of Linux (most notably Debian) ship their PHP
|
||||
# installations with garbage collection (gc) disabled. Since Drupal depends
|
||||
# on PHP's garbage collection for clearing sessions, ensure that garbage
|
||||
# collection occurs by using the most common settings.
|
||||
# @default 1
|
||||
gc_probability: 1
|
||||
# @default 100
|
||||
gc_divisor: 100
|
||||
#
|
||||
# Set session lifetime (in seconds), i.e. the grace period for session
|
||||
# data. Sessions are deleted by the session garbage collector after one
|
||||
# session lifetime has elapsed since the user's last visit. When a session
|
||||
# is deleted, authenticated users are logged out, and the contents of the
|
||||
# user's session is discarded.
|
||||
# @default 200000
|
||||
gc_maxlifetime: 200000
|
||||
#
|
||||
# Set session cookie lifetime (in seconds), i.e. the time from the session
|
||||
# is created to the cookie expires, i.e. when the browser is expected to
|
||||
# discard the cookie. The value 0 means "until the browser is closed".
|
||||
# @default 2000000
|
||||
cookie_lifetime: 2000000
|
||||
#
|
||||
# Drupal automatically generates a unique session cookie name based on the
|
||||
# full domain name used to access the site. This mechanism is sufficient
|
||||
# for most use-cases, including multi-site deployments. However, if it is
|
||||
# desired that a session can be reused across different subdomains, the
|
||||
# cookie domain needs to be set to the shared base domain. Doing so assures
|
||||
# that users remain logged in as they cross between various subdomains.
|
||||
# To maximize compatibility and normalize the behavior across user agents,
|
||||
# the cookie domain should start with a dot.
|
||||
#
|
||||
# Sessions themselves will only be synchronized across subdomains if they
|
||||
# are all served from the same Drupal installation or if some other session
|
||||
# sharing mechanism is implemented.
|
||||
#
|
||||
# @default none
|
||||
# cookie_domain: '.example.com'
|
||||
#
|
||||
# Set the SameSite cookie attribute: 'None', 'Lax', or 'Strict'. If set,
|
||||
# this value will override the server value. See
|
||||
# https://www.php.net/manual/en/session.security.ini.php for more
|
||||
# information.
|
||||
# @default no value
|
||||
cookie_samesite: Lax
|
||||
# By default, Drupal generates a session cookie name based on the full
|
||||
# domain name. Set the name_suffix to a short random string to ensure this
|
||||
# session cookie name is unique on different installations on the same
|
||||
# domain and path (for example, when migrating from Drupal 7).
|
||||
name_suffix: ''
|
||||
twig.config:
|
||||
# Twig debugging:
|
||||
#
|
||||
# When debugging is enabled:
|
||||
# - The markup of each Twig template is surrounded by HTML comments that
|
||||
# contain theming information, such as template file name suggestions.
|
||||
# - Note that this debugging markup will cause automated tests that directly
|
||||
# check rendered HTML to fail. When running automated tests, 'debug'
|
||||
# should be set to FALSE.
|
||||
# - The dump() function can be used in Twig templates to output information
|
||||
# about template variables.
|
||||
# - Twig templates are automatically recompiled whenever the source code
|
||||
# changes (see auto_reload below).
|
||||
#
|
||||
# For more information about debugging Twig templates, see
|
||||
# https://www.drupal.org/node/1906392.
|
||||
#
|
||||
# Enabling Twig debugging is not recommended in production environments.
|
||||
# @default false
|
||||
debug: false
|
||||
# Twig auto-reload:
|
||||
#
|
||||
# Automatically recompile Twig templates whenever the source code changes.
|
||||
# If you don't provide a value for auto_reload, it will be determined
|
||||
# based on the value of debug.
|
||||
#
|
||||
# Enabling auto-reload is not recommended in production environments.
|
||||
# @default null
|
||||
auto_reload: null
|
||||
# Twig cache:
|
||||
#
|
||||
# By default, Twig templates will be compiled and stored in the filesystem
|
||||
# to increase performance. Disabling the Twig cache will recompile the
|
||||
# templates from source each time they are used. In most cases the
|
||||
# auto_reload setting above should be enabled rather than disabling the
|
||||
# Twig cache.
|
||||
#
|
||||
# Disabling the Twig cache is not recommended in production environments.
|
||||
# @default true
|
||||
cache: true
|
||||
# File extensions:
|
||||
#
|
||||
# List of file extensions the Twig system is allowed to load via the
|
||||
# twig.loader.filesystem service. Files with other extensions will not be
|
||||
# loaded unless they are added here. For example, to allow a file named
|
||||
# 'example.partial' to be loaded, add 'partial' to this list. To load files
|
||||
# with no extension, add an empty string '' to the list.
|
||||
#
|
||||
# @default ['css', 'html', 'js', 'svg', 'twig']
|
||||
allowed_file_extensions:
|
||||
- css
|
||||
- html
|
||||
- js
|
||||
- svg
|
||||
- twig
|
||||
renderer.config:
|
||||
# Renderer required cache contexts:
|
||||
#
|
||||
# The Renderer will automatically associate these cache contexts with every
|
||||
# render array, hence varying every render array by these cache contexts.
|
||||
#
|
||||
# @default ['languages:language_interface', 'theme', 'user.permissions']
|
||||
required_cache_contexts: ['languages:language_interface', 'theme', 'user.permissions']
|
||||
# Renderer automatic placeholdering conditions:
|
||||
#
|
||||
# Drupal allows portions of the page to be automatically deferred when
|
||||
# rendering to improve cache performance. That is especially helpful for
|
||||
# cache contexts that vary widely, such as the active user. On some sites
|
||||
# those may be different, however, such as sites with only a handful of
|
||||
# users. If you know what the high-cardinality cache contexts are for your
|
||||
# site, specify those here. If you're not sure, the defaults are fairly safe
|
||||
# in general.
|
||||
#
|
||||
# For more information about rendering optimizations see
|
||||
# https://www.drupal.org/developing/api/8/render/arrays/cacheability#optimizing
|
||||
auto_placeholder_conditions:
|
||||
# Max-age at or below which caching is not considered worthwhile.
|
||||
#
|
||||
# Disable by setting to -1.
|
||||
#
|
||||
# @default 0
|
||||
max-age: 0
|
||||
# Cache contexts with a high cardinality.
|
||||
#
|
||||
# Disable by setting to [].
|
||||
#
|
||||
# @default ['session', 'user']
|
||||
contexts: ['session', 'user']
|
||||
# Tags with a high invalidation frequency.
|
||||
#
|
||||
# Disable by setting to [].
|
||||
#
|
||||
# @default []
|
||||
tags: []
|
||||
# Renderer cache debug:
|
||||
#
|
||||
# Allows cache debugging output for each rendered element.
|
||||
#
|
||||
# Enabling render cache debugging is not recommended in production
|
||||
# environments.
|
||||
# @default false
|
||||
debug: false
|
||||
# Cacheability debugging:
|
||||
#
|
||||
# Responses with cacheability metadata (CacheableResponseInterface instances)
|
||||
# get X-Drupal-Cache-Tags, X-Drupal-Cache-Contexts and X-Drupal-Cache-Max-Age
|
||||
# headers.
|
||||
#
|
||||
# For more information about debugging cacheable responses, see
|
||||
# https://www.drupal.org/developing/api/8/response/cacheable-response-interface
|
||||
#
|
||||
# Enabling cacheability debugging is not recommended in production
|
||||
# environments.
|
||||
# @default false
|
||||
http.response.debug_cacheability_headers: false
|
||||
factory.keyvalue: {}
|
||||
# Default key/value storage service to use.
|
||||
# @default keyvalue.database
|
||||
# default: keyvalue.database
|
||||
# Collection-specific overrides.
|
||||
# state: keyvalue.database
|
||||
factory.keyvalue.expirable: {}
|
||||
# Default key/value expirable storage service to use.
|
||||
# @default keyvalue.database.expirable
|
||||
# default: keyvalue.database.expirable
|
||||
# Allowed protocols for URL generation.
|
||||
filter_protocols:
|
||||
- http
|
||||
- https
|
||||
- ftp
|
||||
- news
|
||||
- nntp
|
||||
- tel
|
||||
- telnet
|
||||
- mailto
|
||||
- irc
|
||||
- ssh
|
||||
- sftp
|
||||
- webcal
|
||||
- rtsp
|
||||
|
||||
# Configure Cross-Site HTTP requests (CORS).
|
||||
# Read https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS
|
||||
# for more information about the topic in general.
|
||||
# Note: By default the configuration is disabled.
|
||||
cors.config:
|
||||
enabled: false
|
||||
# Specifies allowed headers and sets the Access-Control-Allow-Headers
|
||||
# header. For example, ['X-Custom-Header']. See
|
||||
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Headers
|
||||
allowedHeaders: []
|
||||
# Specifies allowed request methods and sets the
|
||||
# Access-Control-Allow-Methods header. For example, ['POST', 'GET',
|
||||
# 'OPTIONS'] or ['*'] to allow all. Note the wildcard is not yet implemented
|
||||
# in all browsers. See
|
||||
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Methods
|
||||
allowedMethods: []
|
||||
# Configure requests allowed from specific origins and sets the
|
||||
# Access-Control-Allow-Origin header. For example,
|
||||
# ['https://www.drupal.org'] or ['*'] to allow any origin to access your
|
||||
# resource. See
|
||||
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin
|
||||
allowedOrigins: ['*']
|
||||
# Configure requests allowed from origins, matching against regex patterns.
|
||||
allowedOriginsPatterns: []
|
||||
# Sets the Access-Control-Expose-Headers header. The default is false which
|
||||
# means the header will not be set. To set the header use a comma delimited
|
||||
# list within square brackets. For example, ['Content-Type', 'Expires'] or
|
||||
# ['*'] to expose all headers. Setting exposedHeaders: ['*'] will result in
|
||||
# a Access-Control-Expose-Headers: * response header. See
|
||||
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Expose-Headers
|
||||
exposedHeaders: false
|
||||
# Setting Access-Control-Max-Age header value to '0' or false will omit this
|
||||
# from the response. However, setting it to '-1' will explicitly disable
|
||||
# caching. For example, setting the value to 600 will cache results of a
|
||||
# preflight request for 10 minutes. See
|
||||
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Max-Age
|
||||
maxAge: false
|
||||
# Sets the Access-Control-Allow-Credentials header if set to true. See
|
||||
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Credentials
|
||||
supportsCredentials: false
|
||||
|
||||
# The maximum number of entities stored in memory. Lowering this number can
|
||||
# reduce the amount of memory used in long-running processes like migrations,
|
||||
# however will also increase requests to the database or entity cache backend.
|
||||
entity.memory_cache.slots: 1000
|
||||
|
||||
queue.config:
|
||||
# The maximum number of seconds to wait if a queue is temporarily suspended.
|
||||
# This is not applicable when a queue is suspended but does not specify
|
||||
# how long to wait before attempting to resume.
|
||||
suspendMaximumWait: 30
|
||||
849
web/core/assets/scaffold/files/default.settings.php
Normal file
849
web/core/assets/scaffold/files/default.settings.php
Normal file
@ -0,0 +1,849 @@
|
||||
<?php
|
||||
|
||||
// phpcs:ignoreFile
|
||||
|
||||
/**
|
||||
* @file
|
||||
* Drupal site-specific configuration file.
|
||||
*
|
||||
* IMPORTANT NOTE:
|
||||
* This file may have been set to read-only by the Drupal installation program.
|
||||
* If you make changes to this file, be sure to protect it again after making
|
||||
* your modifications. Failure to remove write permissions to this file is a
|
||||
* security risk.
|
||||
*
|
||||
* In order to use the selection rules below the multisite aliasing file named
|
||||
* sites/sites.php must be present. Its optional settings will be loaded, and
|
||||
* the aliases in the array $sites will override the default directory rules
|
||||
* below. See sites/example.sites.php for more information about aliases.
|
||||
*
|
||||
* The configuration directory will be discovered by stripping the website's
|
||||
* hostname from left to right and pathname from right to left. The first
|
||||
* configuration file found will be used and any others will be ignored. If no
|
||||
* other configuration file is found then the default configuration file at
|
||||
* 'sites/default' will be used.
|
||||
*
|
||||
* For example, for a fictitious site installed at
|
||||
* https://www.drupal.org:8080/my-site/test/, the 'settings.php' file is searched
|
||||
* for in the following directories:
|
||||
*
|
||||
* - sites/8080.www.drupal.org.my-site.test
|
||||
* - sites/www.drupal.org.my-site.test
|
||||
* - sites/drupal.org.my-site.test
|
||||
* - sites/org.my-site.test
|
||||
*
|
||||
* - sites/8080.www.drupal.org.my-site
|
||||
* - sites/www.drupal.org.my-site
|
||||
* - sites/drupal.org.my-site
|
||||
* - sites/org.my-site
|
||||
*
|
||||
* - sites/8080.www.drupal.org
|
||||
* - sites/www.drupal.org
|
||||
* - sites/drupal.org
|
||||
* - sites/org
|
||||
*
|
||||
* - sites/default
|
||||
*
|
||||
* Note that if you are installing on a non-standard port number, prefix the
|
||||
* hostname with that number. For example,
|
||||
* https://www.drupal.org:8080/my-site/test/ could be loaded from
|
||||
* sites/8080.www.drupal.org.my-site.test/.
|
||||
*
|
||||
* @see example.sites.php
|
||||
* @see \Drupal\Core\DrupalKernel::getSitePath()
|
||||
*
|
||||
* In addition to customizing application settings through variables in
|
||||
* settings.php, you can create a services.yml file in the same directory to
|
||||
* register custom, site-specific service definitions and/or swap out default
|
||||
* implementations with custom ones.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Database settings:
|
||||
*
|
||||
* The $databases array specifies the database connection or
|
||||
* connections that Drupal may use. Drupal is able to connect
|
||||
* to multiple databases, including multiple types of databases,
|
||||
* during the same request.
|
||||
*
|
||||
* One example of the simplest connection array is shown below. To use the
|
||||
* sample settings, copy and uncomment the code below and paste it after the
|
||||
* $databases declaration. You will need to replace the database username and
|
||||
* password and possibly the host and port with the appropriate credentials for
|
||||
* your database system.
|
||||
*
|
||||
* The next section describes how to customize the $databases array for more
|
||||
* specific needs.
|
||||
*
|
||||
* @code
|
||||
* $databases['default']['default'] = [
|
||||
* 'database' => 'database_name',
|
||||
* 'username' => 'sql_username',
|
||||
* 'password' => 'sql_password',
|
||||
* 'host' => 'localhost',
|
||||
* 'port' => '3306',
|
||||
* 'driver' => 'mysql',
|
||||
* 'prefix' => '',
|
||||
* 'collation' => 'utf8mb4_general_ci',
|
||||
* ];
|
||||
* @endcode
|
||||
*/
|
||||
$databases = [];
|
||||
|
||||
/**
|
||||
* Customizing database settings.
|
||||
*
|
||||
* Many of the values of the $databases array can be customized for your
|
||||
* particular database system. Refer to the sample in the section above as a
|
||||
* starting point.
|
||||
*
|
||||
* The "driver" property indicates what Drupal database driver the
|
||||
* connection should use. This is usually the same as the name of the
|
||||
* database type, such as mysql or sqlite, but not always. The other
|
||||
* properties will vary depending on the driver. For SQLite, you must
|
||||
* specify a database file name in a directory that is writable by the
|
||||
* webserver. For most other drivers, you must specify a
|
||||
* username, password, host, and database name.
|
||||
*
|
||||
* Drupal core implements drivers for mysql, pgsql, and sqlite. Other drivers
|
||||
* can be provided by contributed or custom modules. To use a contributed or
|
||||
* custom driver, the "namespace" property must be set to the namespace of the
|
||||
* driver. The code in this namespace must be autoloadable prior to connecting
|
||||
* to the database, and therefore, prior to when module root namespaces are
|
||||
* added to the autoloader. To add the driver's namespace to the autoloader,
|
||||
* set the "autoload" property to the PSR-4 base directory of the driver's
|
||||
* namespace. This is optional for projects managed with Composer if the
|
||||
* driver's namespace is in Composer's autoloader.
|
||||
*
|
||||
* For each database, you may optionally specify multiple "target" databases.
|
||||
* A target database allows Drupal to try to send certain queries to a
|
||||
* different database if it can but fall back to the default connection if not.
|
||||
* That is useful for primary/replica replication, as Drupal may try to connect
|
||||
* to a replica server when appropriate and if one is not available will simply
|
||||
* fall back to the single primary server (The terms primary/replica are
|
||||
* traditionally referred to as master/slave in database server documentation).
|
||||
*
|
||||
* The general format for the $databases array is as follows:
|
||||
* @code
|
||||
* $databases['default']['default'] = $info_array;
|
||||
* $databases['default']['replica'][] = $info_array;
|
||||
* $databases['default']['replica'][] = $info_array;
|
||||
* $databases['extra']['default'] = $info_array;
|
||||
* @endcode
|
||||
*
|
||||
* In the above example, $info_array is an array of settings described above.
|
||||
* The first line sets a "default" database that has one primary database
|
||||
* (the second level default). The second and third lines create an array
|
||||
* of potential replica databases. Drupal will select one at random for a given
|
||||
* request as needed. The fourth line creates a new database with a name of
|
||||
* "extra".
|
||||
*
|
||||
* For MySQL, MariaDB or equivalent databases the 'isolation_level' option can
|
||||
* be set. The recommended transaction isolation level for Drupal sites is
|
||||
* 'READ COMMITTED'. The 'REPEATABLE READ' option is supported but can result
|
||||
* in deadlocks, the other two options are 'READ UNCOMMITTED' and 'SERIALIZABLE'.
|
||||
* They are available but not supported; use them at your own risk. For more
|
||||
* info:
|
||||
* https://dev.mysql.com/doc/refman/8.0/en/innodb-transaction-isolation-levels.html
|
||||
*
|
||||
* On your settings.php, change the isolation level:
|
||||
* @code
|
||||
* $databases['default']['default']['init_commands'] = [
|
||||
* 'isolation_level' => 'SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED',
|
||||
* ];
|
||||
* @endcode
|
||||
*
|
||||
* You can optionally set a prefix for all database table names by using the
|
||||
* 'prefix' setting. If a prefix is specified, the table name will be prepended
|
||||
* with its value. Be sure to use valid database characters only, usually
|
||||
* alphanumeric and underscore. If no prefix is desired, do not set the 'prefix'
|
||||
* key or set its value to an empty string ''.
|
||||
*
|
||||
* For example, to have all database table prefixed with 'main_', set:
|
||||
* @code
|
||||
* 'prefix' => 'main_',
|
||||
* @endcode
|
||||
*
|
||||
* Advanced users can add or override initial commands to execute when
|
||||
* connecting to the database server, as well as PDO connection settings. For
|
||||
* example, to enable MySQL SELECT queries to exceed the max_join_size system
|
||||
* variable, and to reduce the database connection timeout to 5 seconds:
|
||||
* @code
|
||||
* $databases['default']['default'] = [
|
||||
* 'init_commands' => [
|
||||
* 'big_selects' => 'SET SQL_BIG_SELECTS=1',
|
||||
* ],
|
||||
* 'pdo' => [
|
||||
* PDO::ATTR_TIMEOUT => 5,
|
||||
* ],
|
||||
* ];
|
||||
* @endcode
|
||||
*
|
||||
* WARNING: The above defaults are designed for database portability. Changing
|
||||
* them may cause unexpected behavior, including potential data loss. See
|
||||
* https://www.drupal.org/docs/8/api/database-api/database-configuration for
|
||||
* more information on these defaults and the potential issues.
|
||||
*
|
||||
* More details can be found in the constructor methods for each driver:
|
||||
* - \Drupal\mysql\Driver\Database\mysql\Connection::__construct()
|
||||
* - \Drupal\pgsql\Driver\Database\pgsql\Connection::__construct()
|
||||
* - \Drupal\sqlite\Driver\Database\sqlite\Connection::__construct()
|
||||
*
|
||||
* Sample Database configuration format for PostgreSQL (pgsql):
|
||||
* @code
|
||||
* $databases['default']['default'] = [
|
||||
* 'driver' => 'pgsql',
|
||||
* 'database' => 'database_name',
|
||||
* 'username' => 'sql_username',
|
||||
* 'password' => 'sql_password',
|
||||
* 'host' => 'localhost',
|
||||
* 'prefix' => '',
|
||||
* ];
|
||||
* @endcode
|
||||
*
|
||||
* Sample Database configuration format for SQLite (sqlite):
|
||||
* @code
|
||||
* $databases['default']['default'] = [
|
||||
* 'driver' => 'sqlite',
|
||||
* 'database' => '/path/to/database_filename',
|
||||
* ];
|
||||
* @endcode
|
||||
*
|
||||
* Sample Database configuration format for a driver in a contributed module:
|
||||
* @code
|
||||
* $databases['default']['default'] = [
|
||||
* 'driver' => 'my_driver',
|
||||
* 'namespace' => 'Drupal\my_module\Driver\Database\my_driver',
|
||||
* 'autoload' => 'modules/my_module/src/Driver/Database/my_driver/',
|
||||
* 'database' => 'database_name',
|
||||
* 'username' => 'sql_username',
|
||||
* 'password' => 'sql_password',
|
||||
* 'host' => 'localhost',
|
||||
* 'prefix' => '',
|
||||
* ];
|
||||
* @endcode
|
||||
*
|
||||
* Sample Database configuration format for a driver that is extending another
|
||||
* database driver.
|
||||
* @code
|
||||
* $databases['default']['default'] = [
|
||||
* 'driver' => 'my_driver',
|
||||
* 'namespace' => 'Drupal\my_module\Driver\Database\my_driver',
|
||||
* 'autoload' => 'modules/my_module/src/Driver/Database/my_driver/',
|
||||
* 'database' => 'database_name',
|
||||
* 'username' => 'sql_username',
|
||||
* 'password' => 'sql_password',
|
||||
* 'host' => 'localhost',
|
||||
* 'prefix' => '',
|
||||
* 'dependencies' => [
|
||||
* 'parent_module' => [
|
||||
* 'namespace' => 'Drupal\parent_module',
|
||||
* 'autoload' => 'core/modules/parent_module/src/',
|
||||
* ],
|
||||
* ],
|
||||
* ];
|
||||
* @endcode
|
||||
*/
|
||||
|
||||
/**
|
||||
* Location of the site configuration files.
|
||||
*
|
||||
* The $settings['config_sync_directory'] specifies the location of file system
|
||||
* directory used for syncing configuration data. On install, the directory is
|
||||
* created. This is used for configuration imports.
|
||||
*
|
||||
* The default location for this directory is inside a randomly-named
|
||||
* directory in the public files path. The setting below allows you to set
|
||||
* its location.
|
||||
*/
|
||||
# $settings['config_sync_directory'] = '/directory/outside/webroot';
|
||||
|
||||
/**
|
||||
* Settings:
|
||||
*
|
||||
* $settings contains environment-specific configuration, such as the files
|
||||
* directory and reverse proxy address, and temporary configuration, such as
|
||||
* security overrides.
|
||||
*
|
||||
* @see \Drupal\Core\Site\Settings::get()
|
||||
*/
|
||||
|
||||
/**
|
||||
* Salt for one-time login links, cancel links, form tokens, etc.
|
||||
*
|
||||
* This variable will be set to a random value by the installer. All one-time
|
||||
* login links will be invalidated if the value is changed. Note that if your
|
||||
* site is deployed on a cluster of web servers, you must ensure that this
|
||||
* variable has the same value on each server.
|
||||
*
|
||||
* For enhanced security, you may set this variable to the contents of a file
|
||||
* outside your document root, and vary the value across environments (like
|
||||
* production and development); you should also ensure that this file is not
|
||||
* stored with backups of your database.
|
||||
*
|
||||
* Example:
|
||||
* @code
|
||||
* $settings['hash_salt'] = file_get_contents('/home/example/salt.txt');
|
||||
* @endcode
|
||||
*/
|
||||
$settings['hash_salt'] = '';
|
||||
|
||||
/**
|
||||
* Deployment identifier.
|
||||
*
|
||||
* Drupal's dependency injection container will be automatically invalidated and
|
||||
* rebuilt when the Drupal core version changes. When updating contributed or
|
||||
* custom code that changes the container, changing this identifier will also
|
||||
* allow the container to be invalidated as soon as code is deployed.
|
||||
*/
|
||||
# $settings['deployment_identifier'] = \Drupal::VERSION;
|
||||
|
||||
/**
|
||||
* Access control for update.php script.
|
||||
*
|
||||
* If you are updating your Drupal installation using the update.php script but
|
||||
* are not logged in using either an account with the "Administer software
|
||||
* updates" permission or the site maintenance account (the account that was
|
||||
* created during installation), you will need to modify the access check
|
||||
* statement below. Change the FALSE to a TRUE to disable the access check.
|
||||
* After finishing the upgrade, be sure to open this file again and change the
|
||||
* TRUE back to a FALSE!
|
||||
*/
|
||||
$settings['update_free_access'] = FALSE;
|
||||
|
||||
/**
|
||||
* Fallback to HTTP for Update Status and for fetching security advisories.
|
||||
*
|
||||
* If your site fails to connect to updates.drupal.org over HTTPS (either when
|
||||
* fetching data on available updates, or when fetching the feed of critical
|
||||
* security announcements), you may uncomment this setting and set it to TRUE to
|
||||
* allow an insecure fallback to HTTP. Note that doing so will open your site up
|
||||
* to a potential man-in-the-middle attack. You should instead attempt to
|
||||
* resolve the issues before enabling this option.
|
||||
* @see https://www.drupal.org/docs/system-requirements/php-requirements#openssl
|
||||
* @see https://en.wikipedia.org/wiki/Man-in-the-middle_attack
|
||||
* @see \Drupal\update\UpdateFetcher
|
||||
* @see \Drupal\system\SecurityAdvisories\SecurityAdvisoriesFetcher
|
||||
*/
|
||||
# $settings['update_fetch_with_http_fallback'] = TRUE;
|
||||
|
||||
/**
|
||||
* External access proxy settings:
|
||||
*
|
||||
* If your site must access the Internet via a web proxy then you can enter the
|
||||
* proxy settings here. Set the full URL of the proxy, including the port, in
|
||||
* variables:
|
||||
* - $settings['http_client_config']['proxy']['http']: The proxy URL for HTTP
|
||||
* requests.
|
||||
* - $settings['http_client_config']['proxy']['https']: The proxy URL for HTTPS
|
||||
* requests.
|
||||
* You can pass in the user name and password for basic authentication in the
|
||||
* URLs in these settings.
|
||||
*
|
||||
* You can also define an array of host names that can be accessed directly,
|
||||
* bypassing the proxy, in $settings['http_client_config']['proxy']['no'].
|
||||
*/
|
||||
# $settings['http_client_config']['proxy']['http'] = 'http://proxy_user:proxy_pass@example.com:8080';
|
||||
# $settings['http_client_config']['proxy']['https'] = 'http://proxy_user:proxy_pass@example.com:8080';
|
||||
# $settings['http_client_config']['proxy']['no'] = ['127.0.0.1', 'localhost'];
|
||||
|
||||
/**
|
||||
* Reverse Proxy Configuration:
|
||||
*
|
||||
* Reverse proxy servers are often used to enhance the performance
|
||||
* of heavily visited sites and may also provide other site caching,
|
||||
* security, or encryption benefits. In an environment where Drupal
|
||||
* is behind a reverse proxy, the real IP address of the client should
|
||||
* be determined such that the correct client IP address is available
|
||||
* to Drupal's logging and access management systems. In the most simple
|
||||
* scenario, the proxy server will add an X-Forwarded-For header to the request
|
||||
* that contains the client IP address. However, HTTP headers are vulnerable to
|
||||
* spoofing, where a malicious client could bypass restrictions by setting the
|
||||
* X-Forwarded-For header directly. Therefore, Drupal's proxy configuration
|
||||
* requires the IP addresses of all remote proxies to be specified in
|
||||
* $settings['reverse_proxy_addresses'] to work correctly.
|
||||
*
|
||||
* Enable this setting to get Drupal to determine the client IP from the
|
||||
* X-Forwarded-For header. If you are unsure about this setting, do not have a
|
||||
* reverse proxy, or Drupal operates in a shared hosting environment, this
|
||||
* setting should remain commented out.
|
||||
*
|
||||
* In order for this setting to be used you must specify every possible
|
||||
* reverse proxy IP address in $settings['reverse_proxy_addresses'].
|
||||
* If a complete list of reverse proxies is not available in your
|
||||
* environment (for example, if you use a CDN) you may set the
|
||||
* $_SERVER['REMOTE_ADDR'] variable directly in settings.php.
|
||||
* Be aware, however, that it is likely that this would allow IP
|
||||
* address spoofing unless more advanced precautions are taken.
|
||||
*/
|
||||
# $settings['reverse_proxy'] = TRUE;
|
||||
|
||||
/**
|
||||
* Reverse proxy addresses.
|
||||
*
|
||||
* Specify every reverse proxy IP address in your environment, as an array of
|
||||
* IPv4/IPv6 addresses or subnets in CIDR notation. This setting is required if
|
||||
* $settings['reverse_proxy'] is TRUE.
|
||||
*/
|
||||
# $settings['reverse_proxy_addresses'] = ['a.b.c.d', 'e.f.g.h/24', ...];
|
||||
|
||||
/**
|
||||
* Reverse proxy trusted headers.
|
||||
*
|
||||
* Sets which headers to trust from your reverse proxy.
|
||||
*
|
||||
* Common values are:
|
||||
* - \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_FOR
|
||||
* - \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_HOST
|
||||
* - \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_PORT
|
||||
* - \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_PROTO
|
||||
* - \Symfony\Component\HttpFoundation\Request::HEADER_FORWARDED
|
||||
*
|
||||
* Note the default value of
|
||||
* @code
|
||||
* \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_FOR | \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_HOST | \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_PORT | \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_PROTO | \Symfony\Component\HttpFoundation\Request::HEADER_FORWARDED
|
||||
* @endcode
|
||||
* is not secure by default. The value should be set to only the specific
|
||||
* headers the reverse proxy uses. For example:
|
||||
* @code
|
||||
* \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_FOR | \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_HOST | \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_PORT | \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_PROTO
|
||||
* @endcode
|
||||
* This would trust the following headers:
|
||||
* - X_FORWARDED_FOR
|
||||
* - X_FORWARDED_HOST
|
||||
* - X_FORWARDED_PROTO
|
||||
* - X_FORWARDED_PORT
|
||||
*
|
||||
* @see \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_FOR
|
||||
* @see \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_HOST
|
||||
* @see \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_PORT
|
||||
* @see \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_PROTO
|
||||
* @see \Symfony\Component\HttpFoundation\Request::HEADER_FORWARDED
|
||||
* @see \Symfony\Component\HttpFoundation\Request::setTrustedProxies
|
||||
*/
|
||||
# $settings['reverse_proxy_trusted_headers'] = \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_FOR | \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_HOST | \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_PORT | \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_PROTO | \Symfony\Component\HttpFoundation\Request::HEADER_FORWARDED;
|
||||
|
||||
|
||||
/**
|
||||
* Page caching:
|
||||
*
|
||||
* By default, Drupal sends a "Vary: Cookie" HTTP header for anonymous page
|
||||
* views. This tells a HTTP proxy that it may return a page from its local
|
||||
* cache without contacting the web server, if the user sends the same Cookie
|
||||
* header as the user who originally requested the cached page. Without "Vary:
|
||||
* Cookie", authenticated users would also be served the anonymous page from
|
||||
* the cache. If the site has mostly anonymous users except a few known
|
||||
* editors/administrators, the Vary header can be omitted. This allows for
|
||||
* better caching in HTTP proxies (including reverse proxies), i.e. even if
|
||||
* clients send different cookies, they still get content served from the cache.
|
||||
* However, authenticated users should access the site directly (i.e. not use an
|
||||
* HTTP proxy, and bypass the reverse proxy if one is used) in order to avoid
|
||||
* getting cached pages from the proxy.
|
||||
*/
|
||||
# $settings['omit_vary_cookie'] = TRUE;
|
||||
|
||||
|
||||
/**
|
||||
* Cache TTL for client error (4xx) responses.
|
||||
*
|
||||
* Items cached per-URL tend to result in a large number of cache items, and
|
||||
* this can be problematic on 404 pages which by their nature are unbounded. A
|
||||
* fixed TTL can be set for these items, defaulting to one hour, so that cache
|
||||
* backends which do not support LRU can purge older entries. To disable caching
|
||||
* of client error responses set the value to 0. Currently applies only to
|
||||
* page_cache module.
|
||||
*/
|
||||
# $settings['cache_ttl_4xx'] = 3600;
|
||||
|
||||
/**
|
||||
* Expiration of cached forms.
|
||||
*
|
||||
* Drupal's Form API stores details of forms in a cache and these entries are
|
||||
* kept for at least 6 hours by default. Expired entries are cleared by cron.
|
||||
*
|
||||
* @see \Drupal\Core\Form\FormCache::setCache()
|
||||
*/
|
||||
# $settings['form_cache_expiration'] = 21600;
|
||||
|
||||
/**
|
||||
* Class Loader.
|
||||
*
|
||||
* If the APCu extension is detected, the classloader will be optimized to use
|
||||
* it. Set to FALSE to disable this.
|
||||
*
|
||||
* @see https://getcomposer.org/doc/articles/autoloader-optimization.md
|
||||
*/
|
||||
# $settings['class_loader_auto_detect'] = FALSE;
|
||||
|
||||
/**
|
||||
* Default mode for directories and files written by Drupal.
|
||||
*
|
||||
* Value should be in PHP Octal Notation, with leading zero.
|
||||
*/
|
||||
# $settings['file_chmod_directory'] = 0775;
|
||||
# $settings['file_chmod_file'] = 0664;
|
||||
|
||||
/**
|
||||
* Optimized assets path:
|
||||
*
|
||||
* A local file system path where optimized assets will be stored. This directory
|
||||
* must exist and be writable by Drupal. This directory must be relative to
|
||||
* the Drupal installation directory and be accessible over the web.
|
||||
*/
|
||||
# $settings['file_assets_path'] = 'sites/default/files';
|
||||
|
||||
/**
|
||||
* Public file base URL:
|
||||
*
|
||||
* An alternative base URL to be used for serving public files. This must
|
||||
* include any leading directory path.
|
||||
*
|
||||
* A different value from the domain used by Drupal to be used for accessing
|
||||
* public files. This can be used for a simple CDN integration, or to improve
|
||||
* security by serving user-uploaded files from a different domain or subdomain
|
||||
* pointing to the same server. Do not include a trailing slash.
|
||||
*/
|
||||
# $settings['file_public_base_url'] = 'http://downloads.example.com/files';
|
||||
|
||||
/**
|
||||
* Public file path:
|
||||
*
|
||||
* A local file system path where public files will be stored. This directory
|
||||
* must exist and be writable by Drupal. This directory must be relative to
|
||||
* the Drupal installation directory and be accessible over the web.
|
||||
*/
|
||||
# $settings['file_public_path'] = 'sites/default/files';
|
||||
|
||||
/**
|
||||
* Additional public file schemes:
|
||||
*
|
||||
* Public schemes are URI schemes that allow download access to all users for
|
||||
* all files within that scheme.
|
||||
*
|
||||
* The "public" scheme is always public, and the "private" scheme is always
|
||||
* private, but other schemes, such as "https", "s3", "example", or others,
|
||||
* can be either public or private depending on the site. By default, they're
|
||||
* private, and access to individual files is controlled via
|
||||
* hook_file_download().
|
||||
*
|
||||
* Typically, if a scheme should be public, a module makes it public by
|
||||
* implementing hook_file_download(), and granting access to all users for all
|
||||
* files. This could be either the same module that provides the stream wrapper
|
||||
* for the scheme, or a different module that decides to make the scheme
|
||||
* public. However, in cases where a site needs to make a scheme public, but
|
||||
* is unable to add code in a module to do so, the scheme may be added to this
|
||||
* variable, the result of which is that system_file_download() grants public
|
||||
* access to all files within that scheme.
|
||||
*/
|
||||
# $settings['file_additional_public_schemes'] = ['example'];
|
||||
|
||||
/**
|
||||
* File schemes whose paths should not be normalized:
|
||||
*
|
||||
* Normally, Drupal normalizes '/./' and '/../' segments in file URIs in order
|
||||
* to prevent unintended file access. For example, 'private://css/../image.png'
|
||||
* is normalized to 'private://image.png' before checking access to the file.
|
||||
*
|
||||
* On Windows, Drupal also replaces '\' with '/' in URIs for the local
|
||||
* filesystem.
|
||||
*
|
||||
* If file URIs with one or more scheme should not be normalized like this, then
|
||||
* list the schemes here. For example, if 'porcelain://china/./plate.png' should
|
||||
* not be normalized to 'porcelain://china/plate.png', then add 'porcelain' to
|
||||
* this array. In this case, make sure that the module providing the 'porcelain'
|
||||
* scheme does not allow unintended file access when using '/../' to move up the
|
||||
* directory tree.
|
||||
*/
|
||||
# $settings['file_sa_core_2023_005_schemes'] = ['porcelain'];
|
||||
|
||||
/**
|
||||
* Configuration for phpinfo() admin status report.
|
||||
*
|
||||
* Drupal's admin UI includes a report at admin/reports/status/php which shows
|
||||
* the output of phpinfo(). The full output can contain sensitive information
|
||||
* so by default Drupal removes some sections.
|
||||
*
|
||||
* This behavior can be configured by setting this variable to a different
|
||||
* value corresponding to the flags parameter of phpinfo().
|
||||
*
|
||||
* If you need to expose more information in the report - for example to debug a
|
||||
* problem - consider doing so temporarily.
|
||||
*
|
||||
* @see https://www.php.net/manual/function.phpinfo.php
|
||||
*/
|
||||
# $settings['sa_core_2023_004_phpinfo_flags'] = ~ (INFO_VARIABLES | INFO_ENVIRONMENT);
|
||||
|
||||
/**
|
||||
* Private file path:
|
||||
*
|
||||
* A local file system path where private files will be stored. This directory
|
||||
* must be absolute, outside of the Drupal installation directory and not
|
||||
* accessible over the web.
|
||||
*
|
||||
* Note: Caches need to be cleared when this value is changed to make the
|
||||
* private:// stream wrapper available to the system.
|
||||
*
|
||||
* See https://www.drupal.org/documentation/modules/file for more information
|
||||
* about securing private files.
|
||||
*/
|
||||
# $settings['file_private_path'] = '';
|
||||
|
||||
/**
|
||||
* Temporary file path:
|
||||
*
|
||||
* A local file system path where temporary files will be stored. This directory
|
||||
* must be absolute, outside of the Drupal installation directory and not
|
||||
* accessible over the web.
|
||||
*
|
||||
* If this is not set, the default for the operating system will be used.
|
||||
*
|
||||
* @see \Drupal\Component\FileSystem\FileSystem::getOsTemporaryDirectory()
|
||||
*/
|
||||
# $settings['file_temp_path'] = '/tmp';
|
||||
|
||||
/**
|
||||
* Session write interval:
|
||||
*
|
||||
* Set the minimum interval between each session write to database.
|
||||
* For performance reasons it defaults to 180.
|
||||
*/
|
||||
# $settings['session_write_interval'] = 180;
|
||||
|
||||
/**
|
||||
* String overrides:
|
||||
*
|
||||
* To override specific strings on your site with or without enabling the Locale
|
||||
* module, add an entry to this list. This functionality allows you to change
|
||||
* a small number of your site's default English language interface strings.
|
||||
*
|
||||
* Remove the leading hash signs to enable.
|
||||
*
|
||||
* The "en" part of the variable name, is dynamic and can be any langcode of
|
||||
* any added language. (eg locale_custom_strings_de for german).
|
||||
*/
|
||||
# $settings['locale_custom_strings_en'][''] = [
|
||||
# 'Home' => 'Front page',
|
||||
# '@count min' => '@count minutes',
|
||||
# ];
|
||||
|
||||
/**
|
||||
* A custom theme for the offline page:
|
||||
*
|
||||
* This applies when the site is explicitly set to maintenance mode through the
|
||||
* administration page or when the database is inactive due to an error.
|
||||
* The template file should also be copied into the theme. It is located inside
|
||||
* 'core/modules/system/templates/maintenance-page.html.twig'.
|
||||
*
|
||||
* Note: This setting does not apply to installation and update pages.
|
||||
*/
|
||||
# $settings['maintenance_theme'] = 'claro';
|
||||
|
||||
/**
|
||||
* PHP settings:
|
||||
*
|
||||
* To see what PHP settings are possible, including whether they can be set at
|
||||
* runtime (by using ini_set()), read the PHP documentation:
|
||||
* http://php.net/manual/ini.list.php
|
||||
* See \Drupal\Core\DrupalKernel::bootEnvironment() for required runtime
|
||||
* settings and the .htaccess file for non-runtime settings.
|
||||
* Settings defined there should not be duplicated here so as to avoid conflict
|
||||
* issues.
|
||||
*/
|
||||
|
||||
/**
|
||||
* If you encounter a situation where users post a large amount of text, and
|
||||
* the result is stripped out upon viewing but can still be edited, Drupal's
|
||||
* output filter may not have sufficient memory to process it. If you
|
||||
* experience this issue, you may wish to uncomment the following two lines
|
||||
* and increase the limits of these variables. For more information, see
|
||||
* http://php.net/manual/pcre.configuration.php.
|
||||
*/
|
||||
# ini_set('pcre.backtrack_limit', 200000);
|
||||
# ini_set('pcre.recursion_limit', 200000);
|
||||
|
||||
/**
|
||||
* Configuration overrides.
|
||||
*
|
||||
* To globally override specific configuration values for this site,
|
||||
* set them here. You usually don't need to use this feature. This is
|
||||
* useful in a configuration file for a vhost or directory, rather than
|
||||
* the default settings.php.
|
||||
*
|
||||
* Note that any values you provide in these variable overrides will not be
|
||||
* viewable from the Drupal administration interface. The administration
|
||||
* interface displays the values stored in configuration so that you can stage
|
||||
* changes to other environments that don't have the overrides.
|
||||
*
|
||||
* There are particular configuration values that are risky to override. For
|
||||
* example, overriding the list of installed modules in 'core.extension' is not
|
||||
* supported as module install or uninstall has not occurred. Other examples
|
||||
* include field storage configuration, because it has effects on database
|
||||
* structure, and 'core.menu.static_menu_link_overrides' since this is cached in
|
||||
* a way that is not config override aware. Also, note that changing
|
||||
* configuration values in settings.php will not fire any of the configuration
|
||||
* change events.
|
||||
*/
|
||||
# $config['system.site']['name'] = 'My Drupal site';
|
||||
# $config['user.settings']['anonymous'] = 'Visitor';
|
||||
|
||||
/**
|
||||
* Load services definition file.
|
||||
*/
|
||||
$settings['container_yamls'][] = $app_root . '/' . $site_path . '/services.yml';
|
||||
|
||||
/**
|
||||
* Override the default service container class.
|
||||
*
|
||||
* This is useful for example to trace the service container for performance
|
||||
* tracking purposes, for testing a service container with an error condition or
|
||||
* to test a service container that throws an exception.
|
||||
*/
|
||||
# $settings['container_base_class'] = '\Drupal\Core\DependencyInjection\Container';
|
||||
|
||||
/**
|
||||
* Trusted host configuration.
|
||||
*
|
||||
* Drupal core can use the Symfony trusted host mechanism to prevent HTTP Host
|
||||
* header spoofing.
|
||||
*
|
||||
* To enable the trusted host mechanism, you enable your allowable hosts
|
||||
* in $settings['trusted_host_patterns']. This should be an array of regular
|
||||
* expression patterns, without delimiters, representing the hosts you would
|
||||
* like to allow.
|
||||
*
|
||||
* For example:
|
||||
* @code
|
||||
* $settings['trusted_host_patterns'] = [
|
||||
* '^www\.example\.com$',
|
||||
* ];
|
||||
* @endcode
|
||||
* will allow the site to only run from www.example.com.
|
||||
*
|
||||
* If you are running multisite, or if you are running your site from
|
||||
* different domain names (eg, you don't redirect http://www.example.com to
|
||||
* http://example.com), you should specify all of the host patterns that are
|
||||
* allowed by your site.
|
||||
*
|
||||
* For example:
|
||||
* @code
|
||||
* $settings['trusted_host_patterns'] = [
|
||||
* '^example\.com$',
|
||||
* '^.+\.example\.com$',
|
||||
* '^example\.org$',
|
||||
* '^.+\.example\.org$',
|
||||
* ];
|
||||
* @endcode
|
||||
* will allow the site to run off of all variants of example.com and
|
||||
* example.org, with all subdomains included.
|
||||
*
|
||||
* @see https://www.drupal.org/docs/installing-drupal/trusted-host-settings
|
||||
*/
|
||||
# $settings['trusted_host_patterns'] = [];
|
||||
|
||||
/**
|
||||
* The default list of directories that will be ignored by Drupal's file API.
|
||||
*
|
||||
* By default ignore node_modules and bower_components folders to avoid issues
|
||||
* with common frontend tools and recursive scanning of directories looking for
|
||||
* extensions.
|
||||
*
|
||||
* @see \Drupal\Core\File\FileSystemInterface::scanDirectory()
|
||||
* @see \Drupal\Core\Extension\ExtensionDiscovery::scanDirectory()
|
||||
*/
|
||||
$settings['file_scan_ignore_directories'] = [
|
||||
'node_modules',
|
||||
'bower_components',
|
||||
];
|
||||
|
||||
/**
|
||||
* The default number of entities to update in a batch process.
|
||||
*
|
||||
* This is used by update and post-update functions that need to go through and
|
||||
* change all the entities on a site, so it is useful to increase this number
|
||||
* if your hosting configuration (i.e. RAM allocation, CPU speed) allows for a
|
||||
* larger number of entities to be processed in a single batch run.
|
||||
*/
|
||||
$settings['entity_update_batch_size'] = 50;
|
||||
|
||||
/**
|
||||
* Entity update backup.
|
||||
*
|
||||
* This is used to inform the entity storage handler that the backup tables as
|
||||
* well as the original entity type and field storage definitions should be
|
||||
* retained after a successful entity update process.
|
||||
*/
|
||||
$settings['entity_update_backup'] = TRUE;
|
||||
|
||||
/**
|
||||
* Node migration type.
|
||||
*
|
||||
* This is used to force the migration system to use the classic node migrations
|
||||
* instead of the default complete node migrations. The migration system will
|
||||
* use the classic node migration only if there are existing migrate_map tables
|
||||
* for the classic node migrations and they contain data. These tables may not
|
||||
* exist if you are developing custom migrations and do not want to use the
|
||||
* complete node migrations. Set this to TRUE to force the use of the classic
|
||||
* node migrations.
|
||||
*/
|
||||
$settings['migrate_node_migrate_type_classic'] = FALSE;
|
||||
|
||||
/**
|
||||
* The default settings for migration sources.
|
||||
*
|
||||
* These settings are used as the default settings on the Credential form at
|
||||
* /upgrade/credentials.
|
||||
*
|
||||
* - migrate_source_version - The version of the source database. This can be
|
||||
* '6' or '7'. Defaults to '7'.
|
||||
* - migrate_source_connection - The key in the $databases array for the source
|
||||
* site.
|
||||
* - migrate_file_public_path - The location of the source Drupal 6 or Drupal 7
|
||||
* public files. This can be a local file directory containing the source
|
||||
* Drupal 6 or Drupal 7 site (e.g /var/www/docroot), or the site address
|
||||
* (e.g http://example.com).
|
||||
* - migrate_file_private_path - The location of the source Drupal 7 private
|
||||
* files. This can be a local file directory containing the source Drupal 7
|
||||
* site (e.g /var/www/docroot), or empty to use the same value as Public
|
||||
* files directory.
|
||||
*
|
||||
* Sample configuration for a drupal 6 source site with the source files in a
|
||||
* local directory.
|
||||
*
|
||||
* @code
|
||||
* $settings['migrate_source_version'] = '6';
|
||||
* $settings['migrate_source_connection'] = 'migrate';
|
||||
* $settings['migrate_file_public_path'] = '/var/www/drupal6';
|
||||
* @endcode
|
||||
*
|
||||
* Sample configuration for a drupal 7 source site with public source files on
|
||||
* the source site and the private files in a local directory.
|
||||
*
|
||||
* @code
|
||||
* $settings['migrate_source_version'] = '7';
|
||||
* $settings['migrate_source_connection'] = 'migrate';
|
||||
* $settings['migrate_file_public_path'] = 'https://drupal7.com';
|
||||
* $settings['migrate_file_private_path'] = '/var/www/drupal7';
|
||||
* @endcode
|
||||
*/
|
||||
# $settings['migrate_source_connection'] = '';
|
||||
# $settings['migrate_source_version'] = '';
|
||||
# $settings['migrate_file_public_path'] = '';
|
||||
# $settings['migrate_file_private_path'] = '';
|
||||
|
||||
/**
|
||||
* Load local development override configuration, if available.
|
||||
*
|
||||
* Create a settings.local.php file to override variables on secondary (staging,
|
||||
* development, etc.) installations of this site.
|
||||
*
|
||||
* Typical uses of settings.local.php include:
|
||||
* - Disabling caching.
|
||||
* - Disabling JavaScript/CSS compression.
|
||||
* - Rerouting outgoing emails.
|
||||
*
|
||||
* Keep this code block at the end of this file to take full effect.
|
||||
*/
|
||||
#
|
||||
# if (file_exists($app_root . '/' . $site_path . '/settings.local.php')) {
|
||||
# include $app_root . '/' . $site_path . '/settings.local.php';
|
||||
# }
|
||||
30
web/core/assets/scaffold/files/development.services.yml
Normal file
30
web/core/assets/scaffold/files/development.services.yml
Normal file
@ -0,0 +1,30 @@
|
||||
# Local development services.
|
||||
#
|
||||
# The development.services.yml file allows the developer to override
|
||||
# container parameters for debugging.
|
||||
#
|
||||
# To activate this feature, follow the instructions at the top of the
|
||||
# 'example.settings.local.php' file, which sits next to this file.
|
||||
#
|
||||
# Be aware that in Drupal's configuration system, all the files that
|
||||
# provide container definitions are merged using a shallow merge approach
|
||||
# within \Drupal\Core\DependencyInjection\YamlFileLoader.
|
||||
# This means that if you want to override any value of a parameter, the
|
||||
# whole parameter array needs to be copied from
|
||||
# sites/default/default.services.yml or from core/core.services.yml file.
|
||||
parameters:
|
||||
http.response.debug_cacheability_headers: true
|
||||
services:
|
||||
cache.backend.null:
|
||||
class: Drupal\Core\Cache\NullBackendFactory
|
||||
logger.channel.config_schema:
|
||||
parent: logger.channel_base
|
||||
arguments: [ 'config_schema' ]
|
||||
config.schema_checker:
|
||||
class: Drupal\Core\Config\Development\LenientConfigSchemaChecker
|
||||
arguments:
|
||||
- '@config.typed'
|
||||
- '@messenger'
|
||||
- '@logger.channel.config_schema'
|
||||
tags:
|
||||
- { name: event_subscriber }
|
||||
3
web/core/assets/scaffold/files/drupal.INSTALL.txt
Normal file
3
web/core/assets/scaffold/files/drupal.INSTALL.txt
Normal file
@ -0,0 +1,3 @@
|
||||
|
||||
Read core/INSTALL.txt for detailed installation instructions for your Drupal
|
||||
website.
|
||||
75
web/core/assets/scaffold/files/drupal.README.md
Normal file
75
web/core/assets/scaffold/files/drupal.README.md
Normal file
@ -0,0 +1,75 @@
|
||||
<img alt="Drupal Logo" src="https://www.drupal.org/files/Wordmark_blue_RGB.png" height="60px">
|
||||
|
||||
Drupal is an open source content management platform supporting a variety of
|
||||
websites ranging from personal weblogs to large community-driven websites. For
|
||||
more information, visit the Drupal website, [Drupal.org][Drupal.org], and join
|
||||
the [Drupal community][Drupal community].
|
||||
|
||||
## Contributing
|
||||
|
||||
Drupal is developed on [Drupal.org][Drupal.org], the home of the international
|
||||
Drupal community since 2001!
|
||||
|
||||
[Drupal.org][Drupal.org] hosts Drupal's [GitLab repository][GitLab repository],
|
||||
its [issue queue][issue queue], and its [documentation][documentation]. Before
|
||||
you start working on code, be sure to search the [issue queue][issue queue] and
|
||||
create an issue if your aren't able to find an existing issue.
|
||||
|
||||
Every issue on Drupal.org automatically creates a new community-accessible fork
|
||||
that you can contribute to. Learn more about the code contribution process on
|
||||
the [Issue forks & merge requests page][issue forks].
|
||||
|
||||
## Usage
|
||||
|
||||
For a brief introduction, see [USAGE.txt](/core/USAGE.txt). You can also find
|
||||
guides, API references, and more by visiting Drupal's [documentation
|
||||
page][documentation].
|
||||
|
||||
You can quickly extend Drupal's core feature set by installing any of its
|
||||
[thousands of free and open source modules][modules]. With Drupal and its
|
||||
module ecosystem, you can often build most or all of what your project needs
|
||||
before writing a single line of code.
|
||||
|
||||
## Changelog
|
||||
|
||||
Drupal keeps detailed [change records][changelog]. You can search Drupal's
|
||||
changes for a record of every notable breaking change and new feature since
|
||||
2011.
|
||||
|
||||
## Security
|
||||
|
||||
For a list of security announcements, see the [Security advisories
|
||||
page][Security advisories] (available as [an RSS feed][security RSS]). This
|
||||
page also describes how to subscribe to these announcements via email.
|
||||
|
||||
For information about the Drupal security process, or to find out how to report
|
||||
a potential security issue to the Drupal security team, see the [Security team
|
||||
page][security team].
|
||||
|
||||
## Need a helping hand?
|
||||
|
||||
Visit the [Support page][support] or browse [over a thousand Drupal
|
||||
providers][service providers] offering design, strategy, development, and
|
||||
hosting services.
|
||||
|
||||
## Legal matters
|
||||
|
||||
Know your rights when using Drupal by reading Drupal core's
|
||||
[license](/core/LICENSE.txt).
|
||||
|
||||
Learn about the [Drupal trademark and logo policy here][trademark].
|
||||
|
||||
[Drupal.org]: https://www.drupal.org
|
||||
[Drupal community]: https://www.drupal.org/community
|
||||
[GitLab repository]: https://git.drupalcode.org/project/drupal
|
||||
[issue queue]: https://www.drupal.org/project/issues/drupal
|
||||
[issue forks]: https://www.drupal.org/drupalorg/docs/gitlab-integration/issue-forks-merge-requests
|
||||
[documentation]: https://www.drupal.org/documentation
|
||||
[changelog]: https://www.drupal.org/list-changes/drupal
|
||||
[modules]: https://www.drupal.org/project/project_module
|
||||
[security advisories]: https://www.drupal.org/security
|
||||
[security RSS]: https://www.drupal.org/security/rss.xml
|
||||
[security team]: https://www.drupal.org/drupal-security-team
|
||||
[service providers]: https://www.drupal.org/drupal-services
|
||||
[support]: https://www.drupal.org/support
|
||||
[trademark]: https://www.drupal.com/trademark
|
||||
17
web/core/assets/scaffold/files/editorconfig
Normal file
17
web/core/assets/scaffold/files/editorconfig
Normal file
@ -0,0 +1,17 @@
|
||||
# Drupal editor configuration normalization
|
||||
# @see http://editorconfig.org/
|
||||
|
||||
# This is the top-most .editorconfig file; do not search in parent directories.
|
||||
root = true
|
||||
|
||||
# All files.
|
||||
[*]
|
||||
end_of_line = LF
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
|
||||
[composer.{json,lock}]
|
||||
indent_size = 4
|
||||
8
web/core/assets/scaffold/files/eslintignore
Normal file
8
web/core/assets/scaffold/files/eslintignore
Normal file
@ -0,0 +1,8 @@
|
||||
core/**/*
|
||||
vendor/**/*
|
||||
sites/**/files/**/*
|
||||
libraries/**/*
|
||||
sites/**/libraries/**/*
|
||||
profiles/**/libraries/**/*
|
||||
**/js_test_files/**/*
|
||||
**/node_modules/**/*
|
||||
3
web/core/assets/scaffold/files/eslintrc.json
Normal file
3
web/core/assets/scaffold/files/eslintrc.json
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"extends": "./core/.eslintrc.json"
|
||||
}
|
||||
42
web/core/assets/scaffold/files/example.gitignore
Normal file
42
web/core/assets/scaffold/files/example.gitignore
Normal file
@ -0,0 +1,42 @@
|
||||
# This file contains default .gitignore rules. To use it, copy it to .gitignore,
|
||||
# and it will cause files like your settings.php and user-uploaded files to be
|
||||
# excluded from Git version control. This is a common strategy to avoid
|
||||
# accidentally including private information in public repositories and patch
|
||||
# files.
|
||||
#
|
||||
# Because .gitignore can be specific to your site, this file has a different
|
||||
# name; updating Drupal core will not override your custom .gitignore file.
|
||||
|
||||
# Ignore core when managing all of a project's dependencies with Composer
|
||||
# including Drupal core.
|
||||
# core
|
||||
|
||||
# Ignore dependencies that are managed with Composer.
|
||||
# Generally you should only ignore the root vendor directory. It's important
|
||||
# that core/assets/vendor and any other vendor directories within contrib or
|
||||
# custom module, theme, etc., are not ignored unless you purposely do so.
|
||||
/vendor/
|
||||
|
||||
# Ignore configuration files that may contain sensitive information.
|
||||
sites/*/settings*.php
|
||||
sites/*/services*.yml
|
||||
|
||||
# Ignore paths that contain user-generated content.
|
||||
sites/*/files
|
||||
sites/*/private
|
||||
|
||||
# Ignore multi-site test environment.
|
||||
sites/simpletest
|
||||
|
||||
# If you prefer to store your .gitignore file in the sites/ folder, comment
|
||||
# or delete the previous settings and uncomment the following ones, instead.
|
||||
|
||||
# Ignore configuration files that may contain sensitive information.
|
||||
# */settings*.php
|
||||
|
||||
# Ignore paths that contain user-generated content.
|
||||
# */files
|
||||
# */private
|
||||
|
||||
# Ignore multi-site test environment.
|
||||
# simpletest
|
||||
151
web/core/assets/scaffold/files/example.settings.local.php
Normal file
151
web/core/assets/scaffold/files/example.settings.local.php
Normal file
@ -0,0 +1,151 @@
|
||||
<?php
|
||||
|
||||
// phpcs:ignoreFile
|
||||
|
||||
/**
|
||||
* @file
|
||||
* Local development override configuration feature.
|
||||
*
|
||||
* To activate this feature, copy and rename it such that its path plus
|
||||
* filename is 'sites/default/settings.local.php'. Then, go to the bottom of
|
||||
* 'sites/default/settings.php' and uncomment the commented lines that mention
|
||||
* 'settings.local.php'.
|
||||
*
|
||||
* If you are using a site name in the path, such as 'sites/example.com', copy
|
||||
* this file to 'sites/example.com/settings.local.php', and uncomment the lines
|
||||
* at the bottom of 'sites/example.com/settings.php'.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Assertions.
|
||||
*
|
||||
* The Drupal project primarily uses runtime assertions to enforce the
|
||||
* expectations of the API by failing when incorrect calls are made by code
|
||||
* under development.
|
||||
*
|
||||
* @see http://php.net/assert
|
||||
* @see https://www.drupal.org/node/2492225
|
||||
*
|
||||
* It is strongly recommended that you set zend.assertions=1 in the PHP.ini file
|
||||
* (It cannot be changed from .htaccess or runtime) on development machines and
|
||||
* to 0 or -1 in production.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Enable local development services.
|
||||
*/
|
||||
$settings['container_yamls'][] = DRUPAL_ROOT . '/sites/development.services.yml';
|
||||
|
||||
/**
|
||||
* Show all error messages, with backtrace information.
|
||||
*
|
||||
* In case the error level could not be fetched from the database, as for
|
||||
* example the database connection failed, we rely only on this value.
|
||||
*/
|
||||
$config['system.logging']['error_level'] = 'verbose';
|
||||
|
||||
/**
|
||||
* Disable CSS and JS aggregation.
|
||||
*/
|
||||
$config['system.performance']['css']['preprocess'] = FALSE;
|
||||
$config['system.performance']['js']['preprocess'] = FALSE;
|
||||
|
||||
/**
|
||||
* Disable the render cache.
|
||||
*
|
||||
* Note: you should test with the render cache enabled, to ensure the correct
|
||||
* cacheability metadata is present. However, in the early stages of
|
||||
* development, you may want to disable it.
|
||||
*
|
||||
* This setting disables the render cache by using the Null cache back-end
|
||||
* defined by the development.services.yml file above.
|
||||
*
|
||||
* Only use this setting once the site has been installed.
|
||||
*/
|
||||
# $settings['cache']['bins']['render'] = 'cache.backend.null';
|
||||
|
||||
/**
|
||||
* Disable caching for migrations.
|
||||
*
|
||||
* Uncomment the code below to only store migrations in memory and not in the
|
||||
* database. This makes it easier to develop custom migrations.
|
||||
*/
|
||||
# $settings['cache']['bins']['discovery_migration'] = 'cache.backend.memory';
|
||||
|
||||
/**
|
||||
* Disable Internal Page Cache.
|
||||
*
|
||||
* Note: you should test with Internal Page Cache enabled, to ensure the correct
|
||||
* cacheability metadata is present. However, in the early stages of
|
||||
* development, you may want to disable it.
|
||||
*
|
||||
* This setting disables the page cache by using the Null cache back-end
|
||||
* defined by the development.services.yml file above.
|
||||
*
|
||||
* Only use this setting once the site has been installed.
|
||||
*/
|
||||
# $settings['cache']['bins']['page'] = 'cache.backend.null';
|
||||
|
||||
/**
|
||||
* Disable Dynamic Page Cache.
|
||||
*
|
||||
* Note: you should test with Dynamic Page Cache enabled, to ensure the correct
|
||||
* cacheability metadata is present (and hence the expected behavior). However,
|
||||
* in the early stages of development, you may want to disable it.
|
||||
*/
|
||||
# $settings['cache']['bins']['dynamic_page_cache'] = 'cache.backend.null';
|
||||
|
||||
/**
|
||||
* Allow test modules and themes to be installed.
|
||||
*
|
||||
* Drupal ignores test modules and themes by default for performance reasons.
|
||||
* During development it can be useful to install test extensions for debugging
|
||||
* purposes.
|
||||
*/
|
||||
# $settings['extension_discovery_scan_tests'] = TRUE;
|
||||
|
||||
/**
|
||||
* Enable access to rebuild.php.
|
||||
*
|
||||
* This setting can be enabled to allow Drupal's php and database cached
|
||||
* storage to be cleared via the rebuild.php page. Access to this page can also
|
||||
* be gained by generating a query string from rebuild_token_calculator.sh and
|
||||
* using these parameters in a request to rebuild.php.
|
||||
*/
|
||||
$settings['rebuild_access'] = TRUE;
|
||||
|
||||
/**
|
||||
* Skip file system permissions hardening.
|
||||
*
|
||||
* The system module will periodically check the permissions of your site's
|
||||
* site directory to ensure that it is not writable by the website user. For
|
||||
* sites that are managed with a version control system, this can cause problems
|
||||
* when files in that directory such as settings.php are updated, because the
|
||||
* user pulling in the changes won't have permissions to modify files in the
|
||||
* directory.
|
||||
*/
|
||||
$settings['skip_permissions_hardening'] = TRUE;
|
||||
|
||||
/**
|
||||
* Exclude modules from configuration synchronization.
|
||||
*
|
||||
* On config export sync, no config or dependent config of any excluded module
|
||||
* is exported. On config import sync, any config of any installed excluded
|
||||
* module is ignored. In the exported configuration, it will be as if the
|
||||
* excluded module had never been installed. When syncing configuration, if an
|
||||
* excluded module is already installed, it will not be uninstalled by the
|
||||
* configuration synchronization, and dependent configuration will remain
|
||||
* intact. This affects only configuration synchronization; single import and
|
||||
* export of configuration are not affected.
|
||||
*
|
||||
* Drupal does not validate or sanity check the list of excluded modules. For
|
||||
* instance, it is your own responsibility to never exclude required modules,
|
||||
* because it would mean that the exported configuration can not be imported
|
||||
* anymore.
|
||||
*
|
||||
* This is an advanced feature and using it means opting out of some of the
|
||||
* guarantees the configuration synchronization provides. It is not recommended
|
||||
* to use this feature with modules that affect Drupal in a major way such as
|
||||
* the language or field module.
|
||||
*/
|
||||
# $settings['config_exclude_modules'] = ['devel', 'stage_file_proxy'];
|
||||
57
web/core/assets/scaffold/files/example.sites.php
Normal file
57
web/core/assets/scaffold/files/example.sites.php
Normal file
@ -0,0 +1,57 @@
|
||||
<?php
|
||||
|
||||
// phpcs:ignoreFile
|
||||
|
||||
/**
|
||||
* @file
|
||||
* Configuration file for multi-site support and directory aliasing feature.
|
||||
*
|
||||
* This file is required for multi-site support and also allows you to define a
|
||||
* set of aliases that map host names, ports, and path names to configuration
|
||||
* directories in the sites directory. These aliases are loaded prior to
|
||||
* scanning for directories, and they are exempt from the normal discovery
|
||||
* rules. See default.settings.php to view how Drupal discovers the
|
||||
* configuration directory when no alias is found.
|
||||
*
|
||||
* Aliases are useful on development servers, where the domain name may not be
|
||||
* the same as the domain of the live server. Since Drupal stores file paths in
|
||||
* the database (files, system table, etc.) this will ensure the paths are
|
||||
* correct when the site is deployed to a live server.
|
||||
*
|
||||
* To activate this feature, copy and rename it such that its path plus
|
||||
* filename is 'sites/sites.php'.
|
||||
*
|
||||
* Aliases are defined in an associative array named $sites. The array is
|
||||
* written in the format: '<port>.<domain>.<path>' => 'directory'. As an
|
||||
* example, to map https://www.drupal.org:8080/my-site/test to the configuration
|
||||
* directory sites/example.com, the array should be defined as:
|
||||
* @code
|
||||
* $sites = [
|
||||
* '8080.www.drupal.org.my-site.test' => 'example.com',
|
||||
* ];
|
||||
* @endcode
|
||||
* The URL, https://www.drupal.org:8080/my-site/test/, could be a symbolic link
|
||||
* or an Apache Alias directive that points to the Drupal root containing
|
||||
* index.php. An alias could also be created for a subdomain. See the
|
||||
* @link https://www.drupal.org/documentation/install online Drupal installation guide @endlink
|
||||
* for more information on setting up domains, subdomains, and subdirectories.
|
||||
*
|
||||
* The following examples look for a site configuration in sites/example.com:
|
||||
* @code
|
||||
* URL: http://dev.drupal.org
|
||||
* $sites['dev.drupal.org'] = 'example.com';
|
||||
*
|
||||
* URL: http://localhost/example
|
||||
* $sites['localhost.example'] = 'example.com';
|
||||
*
|
||||
* URL: http://localhost:8080/example
|
||||
* $sites['8080.localhost.example'] = 'example.com';
|
||||
*
|
||||
* URL: https://www.drupal.org:8080/my-site/test/
|
||||
* $sites['8080.www.drupal.org.my-site.test'] = 'example.com';
|
||||
* @endcode
|
||||
*
|
||||
* @see default.settings.php
|
||||
* @see \Drupal\Core\DrupalKernel::getSitePath()
|
||||
* @see https://www.drupal.org/docs/getting-started/multisite-drupal
|
||||
*/
|
||||
65
web/core/assets/scaffold/files/gitattributes
Normal file
65
web/core/assets/scaffold/files/gitattributes
Normal file
@ -0,0 +1,65 @@
|
||||
# Drupal git normalization
|
||||
# @see https://www.kernel.org/pub/software/scm/git/docs/gitattributes.html
|
||||
# @see https://www.drupal.org/node/1542048
|
||||
|
||||
# Normally these settings would be done with macro attributes for improved
|
||||
# readability and easier maintenance. However macros can only be defined at the
|
||||
# repository root directory. Drupal avoids making any assumptions about where it
|
||||
# is installed.
|
||||
|
||||
# Define text file attributes.
|
||||
# - Treat them as text.
|
||||
# - Ensure no CRLF line-endings, neither on checkout nor on checkin.
|
||||
# - Detect whitespace errors.
|
||||
# - Exposed by default in `git diff --color` on the CLI.
|
||||
# - Validate with `git diff --check`.
|
||||
# - Deny applying with `git apply --whitespace=error-all`.
|
||||
# - Fix automatically with `git apply --whitespace=fix`.
|
||||
|
||||
*.config text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.css text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.dist text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.engine text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 diff=php linguist-language=php
|
||||
*.html text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 diff=html
|
||||
*.inc text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 diff=php linguist-language=php
|
||||
*.install text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 diff=php linguist-language=php
|
||||
*.js text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.json text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.lock text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.map text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.md text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.module text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 diff=php linguist-language=php
|
||||
*.php text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 diff=php linguist-language=php
|
||||
*.po text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.profile text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 diff=php linguist-language=php
|
||||
*.script text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.sh text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 diff=php linguist-language=php
|
||||
*.sql text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.svg text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.theme text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 diff=php linguist-language=php
|
||||
*.twig text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.txt text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.xml text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
*.yml text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2
|
||||
|
||||
# PHPStan's baseline uses tabs instead of spaces.
|
||||
core/.phpstan-baseline.php text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tabwidth=2 diff=php linguist-language=php
|
||||
|
||||
# Define binary file attributes.
|
||||
# - Do not treat them as text.
|
||||
# - Include binary diff in patches instead of "binary files differ."
|
||||
*.avif -text diff
|
||||
*.eot -text diff
|
||||
*.exe -text diff
|
||||
*.gif -text diff
|
||||
*.gz -text diff
|
||||
*.ico -text diff
|
||||
*.jpeg -text diff
|
||||
*.jpg -text diff
|
||||
*.otf -text diff
|
||||
*.phar -text diff
|
||||
*.png -text diff
|
||||
*.svgz -text diff
|
||||
*.ttf -text diff
|
||||
*.woff -text diff
|
||||
*.woff2 -text diff
|
||||
71
web/core/assets/scaffold/files/ht.router.php
Normal file
71
web/core/assets/scaffold/files/ht.router.php
Normal file
@ -0,0 +1,71 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @file
|
||||
* Router script for the built-in PHP web server.
|
||||
*
|
||||
* The built-in web server should only be used for development and testing as it
|
||||
* has a number of limitations that makes running Drupal on it highly insecure
|
||||
* and somewhat limited.
|
||||
*
|
||||
* Note that:
|
||||
* - The server is single-threaded, any requests made during the execution of
|
||||
* the main request will hang until the main request has been completed.
|
||||
* - The web server does not enforce any of the settings in .htaccess in
|
||||
* particular a remote user will be able to download files that normally would
|
||||
* be protected from direct access such as .module files.
|
||||
*
|
||||
* The router script is needed to work around a bug in PHP, see
|
||||
* https://bugs.php.net/bug.php?id=61286.
|
||||
*
|
||||
* Usage:
|
||||
* php -S localhost:8888 .ht.router.php
|
||||
*
|
||||
* @see http://php.net/manual/en/features.commandline.webserver.php
|
||||
*/
|
||||
|
||||
if (PHP_SAPI !== 'cli-server') {
|
||||
// Bail out if this is not PHP's Development Server.
|
||||
header($_SERVER['SERVER_PROTOCOL'] . ' 403 Forbidden');
|
||||
exit;
|
||||
}
|
||||
|
||||
$url = parse_url($_SERVER['REQUEST_URI']);
|
||||
if (file_exists(__DIR__ . $url['path'])) {
|
||||
// Serve the requested resource as-is.
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Work around the PHP bug.
|
||||
$path = $url['path'];
|
||||
$script = 'index.php';
|
||||
if (str_contains($path, '.php')) {
|
||||
// Work backwards through the path to check if a script exists. Otherwise
|
||||
// fallback to index.php.
|
||||
do {
|
||||
$path = dirname($path);
|
||||
if (str_ends_with($path, '.php') && is_file(__DIR__ . $path)) {
|
||||
// Discovered that the path contains an existing PHP file. Use that as the
|
||||
// script to include.
|
||||
$script = ltrim($path, '/');
|
||||
break;
|
||||
}
|
||||
} while ($path !== '/' && $path !== '.');
|
||||
}
|
||||
|
||||
// Update $_SERVER variables to point to the correct index-file.
|
||||
$index_file_absolute = $_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . $script;
|
||||
$index_file_relative = DIRECTORY_SEPARATOR . $script;
|
||||
|
||||
// SCRIPT_FILENAME will point to the router script itself, it should point to
|
||||
// the full path of index.php.
|
||||
$_SERVER['SCRIPT_FILENAME'] = $index_file_absolute;
|
||||
|
||||
// SCRIPT_NAME and PHP_SELF will either point to index.php or contain the full
|
||||
// virtual path being requested depending on the URL being requested. They
|
||||
// should always point to index.php relative to document root.
|
||||
$_SERVER['SCRIPT_NAME'] = $index_file_relative;
|
||||
$_SERVER['PHP_SELF'] = $index_file_relative;
|
||||
|
||||
// Require the script and let core take over.
|
||||
require $_SERVER['SCRIPT_FILENAME'];
|
||||
185
web/core/assets/scaffold/files/htaccess
Normal file
185
web/core/assets/scaffold/files/htaccess
Normal file
@ -0,0 +1,185 @@
|
||||
#
|
||||
# Apache/PHP/Drupal settings:
|
||||
#
|
||||
|
||||
# Protect files and directories from prying eyes.
|
||||
<FilesMatch "\.(engine|inc|install|make|module|profile|po|sh|.*sql|theme|twig|tpl(\.php)?|xtmpl|yml)(~|\.sw[op]|\.bak|\.orig|\.save)?$|^(\.(?!well-known).*|Entries.*|Repository|Root|Tag|Template|composer\.(json|lock)|web\.config|yarn\.lock|package\.json)$|^#.*#$|\.php(~|\.sw[op]|\.bak|\.orig|\.save)$">
|
||||
<IfModule mod_authz_core.c>
|
||||
Require all denied
|
||||
</IfModule>
|
||||
<IfModule !mod_authz_core.c>
|
||||
Order allow,deny
|
||||
</IfModule>
|
||||
</FilesMatch>
|
||||
|
||||
# Don't show directory listings for URLs which map to a directory.
|
||||
Options -Indexes
|
||||
|
||||
# Set the default handler.
|
||||
DirectoryIndex index.php index.html index.htm
|
||||
|
||||
# Add correct encoding for SVGZ.
|
||||
AddType image/svg+xml svg svgz
|
||||
AddEncoding gzip svgz
|
||||
|
||||
# Add correct encoding for webp.
|
||||
AddType image/webp .webp
|
||||
|
||||
# Most of the following PHP settings cannot be changed at runtime. See
|
||||
# sites/default/default.settings.php and
|
||||
# Drupal\Core\DrupalKernel::bootEnvironment() for settings that can be
|
||||
# changed at runtime.
|
||||
<IfModule mod_php.c>
|
||||
php_value assert.active 0
|
||||
</IfModule>
|
||||
|
||||
# Requires mod_expires to be enabled.
|
||||
<IfModule mod_expires.c>
|
||||
# Enable expirations.
|
||||
ExpiresActive On
|
||||
|
||||
# Cache all files for 1 year after access.
|
||||
ExpiresDefault "access plus 1 year"
|
||||
|
||||
<FilesMatch \.php$>
|
||||
# Do not allow PHP scripts to be cached unless they explicitly send cache
|
||||
# headers themselves. Otherwise all scripts would have to overwrite the
|
||||
# headers set by mod_expires if they want another caching behavior. This may
|
||||
# fail if an error occurs early in the bootstrap process, and it may cause
|
||||
# problems if a non-Drupal PHP file is installed in a subdirectory.
|
||||
ExpiresActive Off
|
||||
</FilesMatch>
|
||||
</IfModule>
|
||||
|
||||
# Set a fallback resource if mod_rewrite is not enabled. This allows Drupal to
|
||||
# work without clean URLs. This requires Apache version >= 2.2.16. If Drupal is
|
||||
# not accessed by the top level URL (i.e.: http://example.com/drupal/ instead of
|
||||
# http://example.com/), the path to index.php will need to be adjusted.
|
||||
<IfModule !mod_rewrite.c>
|
||||
FallbackResource /index.php
|
||||
</IfModule>
|
||||
|
||||
# Various rewrite rules.
|
||||
<IfModule mod_rewrite.c>
|
||||
RewriteEngine on
|
||||
|
||||
# Set "protossl" to "s" if we were accessed via https://. This is used later
|
||||
# if you enable "www." stripping or enforcement, in order to ensure that
|
||||
# you don't bounce between http and https.
|
||||
RewriteRule ^ - [E=protossl]
|
||||
RewriteCond %{HTTPS} on
|
||||
RewriteRule ^ - [E=protossl:s]
|
||||
|
||||
# Make sure Authorization HTTP header is available to PHP
|
||||
# even when running as CGI or FastCGI.
|
||||
RewriteRule ^ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
|
||||
|
||||
# Block access to "hidden" directories whose names begin with a period. This
|
||||
# includes directories used by version control systems such as Subversion or
|
||||
# Git to store control files. Files whose names begin with a period, as well
|
||||
# as the control files used by CVS, are protected by the FilesMatch directive
|
||||
# above.
|
||||
#
|
||||
# NOTE: This only works when mod_rewrite is loaded. Without mod_rewrite, it is
|
||||
# not possible to block access to entire directories from .htaccess because
|
||||
# <DirectoryMatch> is not allowed here.
|
||||
#
|
||||
# If you do not have mod_rewrite installed, you should remove these
|
||||
# directories from your webroot or otherwise protect them from being
|
||||
# downloaded.
|
||||
RewriteRule "/\.|^\.(?!well-known/)" - [F]
|
||||
|
||||
# If your site can be accessed both with and without the 'www.' prefix, you
|
||||
# can use one of the following settings to redirect users to your preferred
|
||||
# URL, either WITH or WITHOUT the 'www.' prefix. Choose ONLY one option:
|
||||
#
|
||||
# To redirect all users to access the site WITH the 'www.' prefix,
|
||||
# (http://example.com/foo will be redirected to http://www.example.com/foo)
|
||||
# uncomment the following:
|
||||
# RewriteCond %{HTTP_HOST} .
|
||||
# RewriteCond %{HTTP_HOST} !^www\. [NC]
|
||||
# RewriteRule ^ http%{ENV:protossl}://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
|
||||
#
|
||||
# To redirect all users to access the site WITHOUT the 'www.' prefix,
|
||||
# (http://www.example.com/foo will be redirected to http://example.com/foo)
|
||||
# uncomment the following:
|
||||
# RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
|
||||
# RewriteRule ^ http%{ENV:protossl}://%1%{REQUEST_URI} [L,R=301]
|
||||
|
||||
# Modify the RewriteBase if you are using Drupal in a subdirectory or in a
|
||||
# VirtualDocumentRoot and the rewrite rules are not working properly.
|
||||
# For example if your site is at http://example.com/drupal uncomment and
|
||||
# modify the following line:
|
||||
# RewriteBase /drupal
|
||||
#
|
||||
# If your site is running in a VirtualDocumentRoot at http://example.com/,
|
||||
# uncomment the following line:
|
||||
# RewriteBase /
|
||||
|
||||
# Redirect common PHP files to their new locations.
|
||||
RewriteCond %{REQUEST_URI} ^(.*)?/(install\.php) [OR]
|
||||
RewriteCond %{REQUEST_URI} ^(.*)?/(rebuild\.php)
|
||||
RewriteCond %{REQUEST_URI} !core
|
||||
RewriteRule ^ %1/core/%2 [L,QSA,R=301]
|
||||
|
||||
# Rewrite install.php during installation to see if mod_rewrite is working
|
||||
RewriteRule ^core/install\.php core/install.php?rewrite=ok [QSA,L]
|
||||
|
||||
# Pass all requests not referring directly to files in the filesystem to
|
||||
# index.php.
|
||||
RewriteCond %{REQUEST_FILENAME} !-f
|
||||
RewriteCond %{REQUEST_FILENAME} !-d
|
||||
RewriteCond %{REQUEST_URI} !=/favicon.ico
|
||||
RewriteRule ^ index.php [L]
|
||||
|
||||
# For security reasons, deny access to other PHP files on public sites.
|
||||
# Note: The following URI conditions are not anchored at the start (^),
|
||||
# because Drupal may be located in a subdirectory. To further improve
|
||||
# security, you can replace '!/' with '!^/'.
|
||||
# Allow access to PHP files in /core (like authorize.php or install.php):
|
||||
RewriteCond %{REQUEST_URI} !/core/[^/]*\.php$
|
||||
# Allow access to test-specific PHP files:
|
||||
RewriteCond %{REQUEST_URI} !/core/modules/system/tests/https?\.php
|
||||
# Deny access to any other PHP files that do not match the rules above.
|
||||
# Specifically, disallow autoload.php from being served directly.
|
||||
RewriteRule "^(.+/.*|autoload)\.php($|/)" - [F]
|
||||
|
||||
# Rules to correctly serve gzip compressed CSS and JS files.
|
||||
# Requires both mod_rewrite and mod_headers to be enabled.
|
||||
<IfModule mod_headers.c>
|
||||
# Serve gzip compressed CSS files if they exist and the client accepts gzip.
|
||||
RewriteCond %{HTTP:Accept-encoding} gzip
|
||||
RewriteCond %{REQUEST_FILENAME}\.gz -s
|
||||
RewriteRule ^(.*css_[a-zA-Z0-9-_]+)\.css$ $1\.css\.gz [QSA]
|
||||
|
||||
# Serve gzip compressed JS files if they exist and the client accepts gzip.
|
||||
RewriteCond %{HTTP:Accept-encoding} gzip
|
||||
RewriteCond %{REQUEST_FILENAME}\.gz -s
|
||||
RewriteRule ^(.*js_[a-zA-Z0-9-_]+)\.js$ $1\.js\.gz [QSA]
|
||||
|
||||
# Serve correct content types, and prevent double compression.
|
||||
RewriteRule \.css\.gz$ - [T=text/css,E=no-gzip:1,E=no-brotli:1]
|
||||
RewriteRule \.js\.gz$ - [T=text/javascript,E=no-gzip:1,E=no-brotli:1]
|
||||
|
||||
<FilesMatch "(\.js\.gz|\.css\.gz)$">
|
||||
# Serve correct encoding type.
|
||||
Header set Content-Encoding gzip
|
||||
# Force proxies to cache gzipped & non-gzipped css/js files separately.
|
||||
Header append Vary Accept-Encoding
|
||||
</FilesMatch>
|
||||
</IfModule>
|
||||
</IfModule>
|
||||
|
||||
# Various header fixes.
|
||||
<IfModule mod_headers.c>
|
||||
# Disable content sniffing for all responses, since it's an attack vector.
|
||||
# This header is also set in FinishResponseSubscriber, which depending on
|
||||
# Apache configuration might get placed in the 'onsuccess' table. To prevent
|
||||
# header duplication, unset that one prior to setting in the 'always' table.
|
||||
# See "To circumvent this limitation..." in
|
||||
# https://httpd.apache.org/docs/current/mod/mod_headers.html.
|
||||
Header onsuccess unset X-Content-Type-Options
|
||||
Header always set X-Content-Type-Options nosniff
|
||||
# Disable Proxy header, since it's an attack vector.
|
||||
RequestHeader unset Proxy
|
||||
</IfModule>
|
||||
22
web/core/assets/scaffold/files/index.php
Normal file
22
web/core/assets/scaffold/files/index.php
Normal file
@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @file
|
||||
* The PHP page that serves all page requests on a Drupal installation.
|
||||
*
|
||||
* All Drupal code is released under the GNU General Public License.
|
||||
* See COPYRIGHT.txt and LICENSE.txt files in the "core" directory.
|
||||
*/
|
||||
|
||||
use Drupal\Core\DrupalKernel;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
|
||||
$autoloader = require_once 'autoload.php';
|
||||
|
||||
$kernel = new DrupalKernel('prod', $autoloader);
|
||||
|
||||
$request = Request::createFromGlobals();
|
||||
$response = $kernel->handle($request);
|
||||
$response->send();
|
||||
|
||||
$kernel->terminate($request, $response);
|
||||
42
web/core/assets/scaffold/files/modules.README.txt
Normal file
42
web/core/assets/scaffold/files/modules.README.txt
Normal file
@ -0,0 +1,42 @@
|
||||
Modules extend your site functionality beyond Drupal core.
|
||||
|
||||
WHAT TO PLACE IN THIS DIRECTORY?
|
||||
--------------------------------
|
||||
|
||||
Placing downloaded and custom modules in this directory separates downloaded and
|
||||
custom modules from Drupal core's modules. This allows Drupal core to be updated
|
||||
without overwriting these files.
|
||||
|
||||
DOWNLOAD ADDITIONAL MODULES
|
||||
---------------------------
|
||||
|
||||
Contributed modules from the Drupal community may be downloaded at
|
||||
https://www.drupal.org/project/project_module.
|
||||
|
||||
ORGANIZING MODULES IN THIS DIRECTORY
|
||||
------------------------------------
|
||||
|
||||
You may create subdirectories in this directory, to organize your added modules,
|
||||
without breaking the site. Some common subdirectories include "contrib" for
|
||||
contributed modules, and "custom" for custom modules. Note that if you move a
|
||||
module to a subdirectory after it has been enabled, you may need to clear the
|
||||
Drupal cache so it can be found.
|
||||
|
||||
There are number of directories that are ignored when looking for modules. These
|
||||
are 'src', 'lib', 'vendor', 'assets', 'css', 'files', 'images', 'js', 'misc',
|
||||
'templates', 'includes', 'fixtures' and 'Drupal'.
|
||||
|
||||
MULTISITE CONFIGURATION
|
||||
-----------------------
|
||||
|
||||
In multisite configurations, modules found in this directory are available to
|
||||
all sites. You may also put modules in the sites/all/modules directory, and the
|
||||
versions in sites/all/modules will take precedence over versions of the same
|
||||
module that are here. Alternatively, the sites/your_site_name/modules directory
|
||||
pattern may be used to restrict modules to a specific site instance.
|
||||
|
||||
MORE INFORMATION
|
||||
----------------
|
||||
|
||||
Refer to the “Developing for Drupal” section of the README.md in the Drupal
|
||||
root directory for further information on extending Drupal with custom modules.
|
||||
28
web/core/assets/scaffold/files/profiles.README.txt
Normal file
28
web/core/assets/scaffold/files/profiles.README.txt
Normal file
@ -0,0 +1,28 @@
|
||||
Installation profiles define additional steps that run after the base
|
||||
installation of Drupal is completed. They may also offer additional
|
||||
functionality and change the behavior of the site.
|
||||
|
||||
WHAT TO PLACE IN THIS DIRECTORY?
|
||||
--------------------------------
|
||||
|
||||
Place downloaded and custom installation profiles in this directory.
|
||||
Note that installation profiles are generally provided as part of a Drupal
|
||||
distribution.
|
||||
|
||||
DOWNLOAD ADDITIONAL DISTRIBUTIONS
|
||||
---------------------------------
|
||||
|
||||
Contributed distributions from the Drupal community may be downloaded at
|
||||
https://www.drupal.org/project/project_distribution.
|
||||
|
||||
MULTISITE CONFIGURATION
|
||||
-----------------------
|
||||
|
||||
In multisite configurations, installation profiles found in this directory are
|
||||
available to all sites during their initial site installation.
|
||||
|
||||
MORE INFORMATION
|
||||
----------------
|
||||
|
||||
Refer to the "Installation profiles" section of the README.md in the Drupal
|
||||
root directory for further information on extending Drupal with custom profiles.
|
||||
9
web/core/assets/scaffold/files/recipes.README.txt
Normal file
9
web/core/assets/scaffold/files/recipes.README.txt
Normal file
@ -0,0 +1,9 @@
|
||||
Recipes allow the automation of Drupal module and theme installation and
|
||||
configuration.
|
||||
|
||||
WHAT TO PLACE IN THIS DIRECTORY?
|
||||
--------------------------------
|
||||
|
||||
Placing downloaded and custom recipes in this directory separates downloaded and
|
||||
custom recipes from Drupal core's recipes. This allows Drupal core to be updated
|
||||
without overwriting these files.
|
||||
72
web/core/assets/scaffold/files/robots.txt
Normal file
72
web/core/assets/scaffold/files/robots.txt
Normal file
@ -0,0 +1,72 @@
|
||||
#
|
||||
# robots.txt
|
||||
#
|
||||
# This file is to prevent the crawling and indexing of certain parts
|
||||
# of your site by web crawlers and spiders run by sites like Yahoo!
|
||||
# and Google. By telling these "robots" where not to go on your site,
|
||||
# you save bandwidth and server resources.
|
||||
#
|
||||
# This file will be ignored unless it is at the root of your host:
|
||||
# Used: http://example.com/robots.txt
|
||||
# Ignored: http://example.com/site/robots.txt
|
||||
#
|
||||
# For more information about the robots.txt standard, see:
|
||||
# http://www.robotstxt.org/robotstxt.html
|
||||
|
||||
User-agent: *
|
||||
# CSS, JS, Images
|
||||
Allow: /core/*.css$
|
||||
Allow: /core/*.css?
|
||||
Allow: /core/*.js$
|
||||
Allow: /core/*.js?
|
||||
Allow: /core/*.gif
|
||||
Allow: /core/*.jpg
|
||||
Allow: /core/*.jpeg
|
||||
Allow: /core/*.png
|
||||
Allow: /core/*.svg
|
||||
Allow: /profiles/*.css$
|
||||
Allow: /profiles/*.css?
|
||||
Allow: /profiles/*.js$
|
||||
Allow: /profiles/*.js?
|
||||
Allow: /profiles/*.gif
|
||||
Allow: /profiles/*.jpg
|
||||
Allow: /profiles/*.jpeg
|
||||
Allow: /profiles/*.png
|
||||
Allow: /profiles/*.svg
|
||||
# Directories
|
||||
Disallow: /core/
|
||||
Disallow: /profiles/
|
||||
# Files
|
||||
Disallow: /README.md
|
||||
Disallow: /composer/Metapackage/README.txt
|
||||
Disallow: /composer/Plugin/ProjectMessage/README.md
|
||||
Disallow: /composer/Plugin/Scaffold/README.md
|
||||
Disallow: /composer/Plugin/VendorHardening/README.txt
|
||||
Disallow: /composer/Template/README.txt
|
||||
Disallow: /modules/README.txt
|
||||
Disallow: /sites/README.txt
|
||||
Disallow: /themes/README.txt
|
||||
# Paths (clean URLs)
|
||||
Disallow: /admin/
|
||||
Disallow: /comment/reply/
|
||||
Disallow: /filter/tips
|
||||
Disallow: /node/add/
|
||||
Disallow: /search/
|
||||
Disallow: /user/register
|
||||
Disallow: /user/password
|
||||
Disallow: /user/login
|
||||
Disallow: /user/logout
|
||||
Disallow: /media/oembed
|
||||
Disallow: /*/media/oembed
|
||||
# Paths (no clean URLs)
|
||||
Disallow: /index.php/admin/
|
||||
Disallow: /index.php/comment/reply/
|
||||
Disallow: /index.php/filter/tips
|
||||
Disallow: /index.php/node/add/
|
||||
Disallow: /index.php/search/
|
||||
Disallow: /index.php/user/password
|
||||
Disallow: /index.php/user/register
|
||||
Disallow: /index.php/user/login
|
||||
Disallow: /index.php/user/logout
|
||||
Disallow: /index.php/media/oembed
|
||||
Disallow: /index.php/*/media/oembed
|
||||
10
web/core/assets/scaffold/files/sites.README.txt
Normal file
10
web/core/assets/scaffold/files/sites.README.txt
Normal file
@ -0,0 +1,10 @@
|
||||
This directory structure contains the settings and configuration files specific
|
||||
to your site or sites and is an integral part of multisite configurations.
|
||||
|
||||
It is now recommended to place your custom and downloaded extensions in the
|
||||
/modules, /themes, and /profiles directories located in the Drupal root. The
|
||||
sites/all/ subdirectory structure, which was recommended in previous versions
|
||||
of Drupal, is still supported.
|
||||
|
||||
See core/INSTALL.txt for information about single-site installation or
|
||||
multisite configuration.
|
||||
31
web/core/assets/scaffold/files/themes.README.txt
Normal file
31
web/core/assets/scaffold/files/themes.README.txt
Normal file
@ -0,0 +1,31 @@
|
||||
Themes allow you to change the look and feel of your Drupal site. You can use
|
||||
themes contributed by others or create your own.
|
||||
|
||||
WHAT TO PLACE IN THIS DIRECTORY?
|
||||
--------------------------------
|
||||
|
||||
Placing downloaded and custom themes in this directory separates downloaded and
|
||||
custom themes from Drupal core's themes. This allows Drupal core to be updated
|
||||
without overwriting these files.
|
||||
|
||||
DOWNLOAD ADDITIONAL THEMES
|
||||
--------------------------
|
||||
|
||||
Contributed themes from the Drupal community may be downloaded at
|
||||
https://www.drupal.org/project/project_theme.
|
||||
|
||||
MULTISITE CONFIGURATION
|
||||
-----------------------
|
||||
|
||||
In multisite configurations, themes found in this directory are available to
|
||||
all sites. You may also put themes in the sites/all/themes directory, and the
|
||||
versions in sites/all/themes will take precedence over versions of the same
|
||||
themes that are here. Alternatively, the sites/your_site_name/themes directory
|
||||
pattern may be used to restrict themes to a specific site instance.
|
||||
|
||||
MORE INFORMATION
|
||||
-----------------
|
||||
|
||||
Refer to the "Appearance" section of the README.md in the Drupal root directory
|
||||
for further information on customizing the appearance of Drupal with custom
|
||||
themes.
|
||||
30
web/core/assets/scaffold/files/update.php
Normal file
30
web/core/assets/scaffold/files/update.php
Normal file
@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @file
|
||||
* The PHP page that handles updating the Drupal installation.
|
||||
*
|
||||
* All Drupal code is released under the GNU General Public License.
|
||||
* See COPYRIGHT.txt and LICENSE.txt files in the "core" directory.
|
||||
*/
|
||||
|
||||
use Drupal\Core\Update\UpdateKernel;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
|
||||
$autoloader = require_once 'autoload.php';
|
||||
|
||||
// Disable garbage collection during test runs. Under certain circumstances the
|
||||
// update path will create so many objects that garbage collection causes
|
||||
// segmentation faults.
|
||||
if (drupal_valid_test_ua()) {
|
||||
gc_collect_cycles();
|
||||
gc_disable();
|
||||
}
|
||||
|
||||
$kernel = new UpdateKernel('prod', $autoloader, FALSE);
|
||||
$request = Request::createFromGlobals();
|
||||
|
||||
$response = $kernel->handle($request);
|
||||
$response->send();
|
||||
|
||||
$kernel->terminate($request, $response);
|
||||
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
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
2
web/core/assets/vendor/backbone/backbone-min.js
vendored
Normal file
2
web/core/assets/vendor/backbone/backbone-min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/core/assets/vendor/backbone/backbone-min.js.map
vendored
Normal file
1
web/core/assets/vendor/backbone/backbone-min.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
2157
web/core/assets/vendor/backbone/backbone.js
vendored
Normal file
2157
web/core/assets/vendor/backbone/backbone.js
vendored
Normal file
File diff suppressed because it is too large
Load Diff
4
web/core/assets/vendor/ckeditor5/adapter-ckfinder/adapter-ckfinder.js
vendored
Normal file
4
web/core/assets/vendor/ckeditor5/adapter-ckfinder/adapter-ckfinder.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/*!
|
||||
* @license Copyright (c) 2003-2025, CKSource Holding sp. z o.o. All rights reserved.
|
||||
* For licensing, see LICENSE.md.
|
||||
*/(()=>{var e={237:e=>{"use strict";e.exports=CKEditor5.dll},260:(e,t,r)=>{e.exports=r(237)("./src/upload.js")},782:(e,t,r)=>{e.exports=r(237)("./src/core.js")}},t={};function r(o){var n=t[o];if(void 0!==n)return n.exports;var s=t[o]={exports:{}};return e[o](s,s.exports,r),s.exports}r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var o={};(()=>{"use strict";r.r(o),r.d(o,{CKFinderUploadAdapter:()=>a});var e=r(782),t=r(260);const n="ckCsrfToken",s="abcdefghijklmnopqrstuvwxyz0123456789";function i(){let e=function(e){e=e.toLowerCase();const t=document.cookie.split(";");for(const r of t){const t=r.split("=");if(decodeURIComponent(t[0].trim().toLowerCase())===e)return decodeURIComponent(t[1])}return null}(n);var t,r;return e&&40==e.length||(e=function(e){let t="";const r=new Uint8Array(e);window.crypto.getRandomValues(r);for(let e=0;e<r.length;e++){const o=s.charAt(r[e]%36);t+=Math.random()>.5?o.toUpperCase():o}return t}(40),t=n,r=e,document.cookie=encodeURIComponent(t)+"="+encodeURIComponent(r)+";path=/"),e}class a extends e.Plugin{static get requires(){return[t.FileRepository]}static get pluginName(){return"CKFinderUploadAdapter"}static get isOfficialPlugin(){return!0}init(){const e=this.editor.config.get("ckfinder.uploadUrl");e&&(this.editor.plugins.get(t.FileRepository).createUploadAdapter=t=>new d(t,e,this.editor.t))}}class d{loader;url;t;xhr;constructor(e,t,r){this.loader=e,this.url=t,this.t=r}upload(){return this.loader.file.then(e=>new Promise((t,r)=>{this._initRequest(),this._initListeners(t,r,e),this._sendRequest(e)}))}abort(){this.xhr&&this.xhr.abort()}_initRequest(){const e=this.xhr=new XMLHttpRequest;e.open("POST",this.url,!0),e.responseType="json"}_initListeners(e,t,r){const o=this.xhr,n=this.loader,s=(0,this.t)("Cannot upload file:")+` ${r.name}.`;o.addEventListener("error",()=>t(s)),o.addEventListener("abort",()=>t()),o.addEventListener("load",()=>{const r=o.response;if(!r||!r.uploaded)return t(r&&r.error&&r.error.message?r.error.message:s);e({default:r.url})}),o.upload&&o.upload.addEventListener("progress",e=>{e.lengthComputable&&(n.uploadTotal=e.total,n.uploaded=e.loaded)})}_sendRequest(e){const t=new FormData;t.append("upload",e),t.append("ckCsrfToken",i()),this.xhr.send(t)}}})(),(window.CKEditor5=window.CKEditor5||{}).adapterCkfinder=o})();
|
||||
5
web/core/assets/vendor/ckeditor5/alignment/alignment.js
vendored
Normal file
5
web/core/assets/vendor/ckeditor5/alignment/alignment.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/core/assets/vendor/ckeditor5/alignment/translations/af.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/af.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const e=n.af=n.af||{};e.dictionary=Object.assign(e.dictionary||{},{"Align center":"Belyn in die middel","Align left":"Belyn links","Align right":"Belyn regs",Justify:"Belyn beide kante","Text alignment":"Teksbelyning","Text alignment toolbar":"Teksbelyning nutsbank"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/ar.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/ar.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.ar=n.ar||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"محاذاة في المنتصف","Align left":"محاذاة لليسار","Align right":"محاذاة لليمين",Justify:"ضبط","Text alignment":"محاذاة النص","Text alignment toolbar":"شريط أدوات محاذاة النص"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/ast.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/ast.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const t=n.ast=n.ast||{};t.dictionary=Object.assign(t.dictionary||{},{"Align center":"","Align left":"","Align right":"",Justify:"","Text alignment":"","Text alignment toolbar":""})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/az.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/az.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.az=n.az||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Mərkəzə düzləndir","Align left":"Soldan düzləndir","Align right":"Sağdan düzləndir",Justify:"Eninə görə","Text alignment":"Mətn düzləndirməsi","Text alignment toolbar":"Mətnin düzləndirmə paneli"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/be.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/be.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.be=n.be||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Выраўнаваць па цэнтры","Align left":"Выраўнаваць па левым краі","Align right":"Выраўнаваць па правым краі",Justify:"Выраўнаваць па шырыні","Text alignment":"Выраўнаваць тэкст","Text alignment toolbar":"Выраўноўванне"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/bg.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/bg.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.bg=n.bg||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Централно подравняване","Align left":"Ляво подравняване","Align right":"Дясно подравняване",Justify:"Разпредели по равно","Text alignment":"Подравняване на текста","Text alignment toolbar":"Лента за подравняване на текст"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/bn.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/bn.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.bn=n.bn||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"কেন্দ্র সারিবদ্ধ করুন","Align left":"বামে সারিবদ্ধ করুন","Align right":"ডানদিকে সারিবদ্ধ করুন",Justify:"জাস্টিফাই","Text alignment":"টেক্সট সারিবদ্ধকরণ","Text alignment toolbar":"টেক্সট শ্রেণীবিন্যাস টুলবার"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/bs.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/bs.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const a=n.bs=n.bs||{};a.dictionary=Object.assign(a.dictionary||{},{"Align center":"Centrirati","Align left":"Lijevo poravnanje","Align right":"Desno poravnanje",Justify:"","Text alignment":"Poravnanje teksta","Text alignment toolbar":"Traka za poravnanje teksta"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/ca.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/ca.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(i){const e=i.ca=i.ca||{};e.dictionary=Object.assign(e.dictionary||{},{"Align center":"Alineació centre","Align left":"Alineació esquerra","Align right":"Alineació dreta",Justify:"Justificar","Text alignment":"Alineació text","Text alignment toolbar":"Barra d'eines d'alineació de text"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/cs.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/cs.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const t=n.cs=n.cs||{};t.dictionary=Object.assign(t.dictionary||{},{"Align center":"Zarovnat na střed","Align left":"Zarovnat vlevo","Align right":"Zarovnat vpravo",Justify:"Zarovnat do bloku","Text alignment":"Zarovnání textu","Text alignment toolbar":"Panel nástrojů zarovnání textu"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/da.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/da.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(t){const n=t.da=t.da||{};n.dictionary=Object.assign(n.dictionary||{},{"Align center":"Justér center","Align left":"Justér venstre","Align right":"Justér højre",Justify:"Justér","Text alignment":"Tekstjustering","Text alignment toolbar":"Tekstjustering værktøjslinje"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/de-ch.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/de-ch.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(t){const i=t["de-ch"]=t["de-ch"]||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Zentriert","Align left":"Linksbündig","Align right":"Rechtsbündig",Justify:"Blocksatz","Text alignment":"Textausrichtung","Text alignment toolbar":"Textausrichtung Werkzeugleiste"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/de.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/de.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const t=n.de=n.de||{};t.dictionary=Object.assign(t.dictionary||{},{"Align center":"Zentriert","Align left":"Linksbündig","Align right":"Rechtsbündig",Justify:"Blocksatz","Text alignment":"Textausrichtung","Text alignment toolbar":"Text-Ausrichtung Toolbar"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/el.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/el.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.el=n.el||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Στοίχιση στο κέντρο","Align left":"Στοίχιση αριστερά","Align right":"Στοίχιση δεξιά",Justify:"Πλήρης στοίχηση","Text alignment":"Στοίχιση κειμένου","Text alignment toolbar":"Γραμμή εργαλείων στοίχισης κειμένου"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/en-au.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/en-au.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const t=n["en-au"]=n["en-au"]||{};t.dictionary=Object.assign(t.dictionary||{},{"Align center":"Align centre","Align left":"Align left","Align right":"Align right",Justify:"Justify","Text alignment":"Text alignment","Text alignment toolbar":"Text alignment toolbar"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/en-gb.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/en-gb.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n["en-gb"]=n["en-gb"]||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Align center","Align left":"Align left","Align right":"Align right",Justify:"Justify","Text alignment":"Text alignment","Text alignment toolbar":""})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/eo.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/eo.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.eo=n.eo||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"","Align left":"","Align right":"",Justify:"","Text alignment":"","Text alignment toolbar":""})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/es-co.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/es-co.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(i){const e=i["es-co"]=i["es-co"]||{};e.dictionary=Object.assign(e.dictionary||{},{"Align center":"Centrar","Align left":"Alinear a la izquierda","Align right":"Alinear a la derecha",Justify:"Justificar","Text alignment":"Alineación de texto","Text alignment toolbar":"Herramientas de alineación de texto"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/es.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/es.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(e){const i=e.es=e.es||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Centrar","Align left":"Alinear a la izquierda","Align right":"Alinear a la derecha",Justify:"Justificar","Text alignment":"Alineación del texto","Text alignment toolbar":"Barra de herramientas de alineación del texto"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/et.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/et.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.et=n.et||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Keskjoondus","Align left":"Vasakjoondus","Align right":"Paremjoondus",Justify:"Rööpjoondus","Text alignment":"Teksti joondamine","Text alignment toolbar":"Teksti joonduse tööriistariba"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/eu.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/eu.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.eu=n.eu||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"","Align left":"","Align right":"",Justify:"","Text alignment":"","Text alignment toolbar":""})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/fa.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/fa.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.fa=n.fa||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"تراز وسط","Align left":"تراز چپ","Align right":"تراز راست",Justify:"هم تراز کردن","Text alignment":"تراز متن","Text alignment toolbar":"نوار ابزار ترازبندی متن"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/fi.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/fi.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(a){const i=a.fi=a.fi||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Tasaa keskelle","Align left":"Tasaa vasemmalle","Align right":"Tasaa oikealle",Justify:"Tasaa molemmat reunat","Text alignment":"Tekstin tasaus","Text alignment toolbar":"Tekstin suuntauksen työkalupalkki"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/fr.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/fr.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(e){const t=e.fr=e.fr||{};t.dictionary=Object.assign(t.dictionary||{},{"Align center":"Centrer","Align left":"Aligner à gauche","Align right":"Aligner à droite",Justify:"Justifier","Text alignment":"Alignement du texte","Text alignment toolbar":"Barre d'outils d'alignement du texte"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/gl.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/gl.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(t){const e=t.gl=t.gl||{};e.dictionary=Object.assign(e.dictionary||{},{"Align center":"Centrar horizontalmente","Align left":"Aliñar á esquerda","Align right":"Aliñar á dereita",Justify:"Xustificado","Text alignment":"Aliñamento do texto","Text alignment toolbar":"Barra de ferramentas de aliñamento de textos"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/gu.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/gu.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.gu=n.gu||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"","Align left":"","Align right":"",Justify:"","Text alignment":"","Text alignment toolbar":""})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/he.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/he.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.he=n.he||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"יישור באמצע","Align left":"יישור לשמאל","Align right":"יישור לימין",Justify:"מרכוז גבולות","Text alignment":"יישור טקסט","Text alignment toolbar":"סרגל כלים יישור טקסט"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/hi.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/hi.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(i){const n=i.hi=i.hi||{};n.dictionary=Object.assign(n.dictionary||{},{"Align center":"Align center","Align left":"Align left","Align right":"Align right",Justify:"Justify","Text alignment":"Text alignment","Text alignment toolbar":"Text alignment toolbar"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/hr.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/hr.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const a=n.hr=n.hr||{};a.dictionary=Object.assign(a.dictionary||{},{"Align center":"Poravnaj po sredini","Align left":"Poravnaj ulijevo","Align right":"Poravnaj udesno",Justify:"Razvuci","Text alignment":"Poravnanje teksta","Text alignment toolbar":"Traka za poravnanje"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/hu.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/hu.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(i){const t=i.hu=i.hu||{};t.dictionary=Object.assign(t.dictionary||{},{"Align center":"Középre igazítás","Align left":"Balra igazítás","Align right":"Jobbra igazítás",Justify:"Sorkizárt","Text alignment":"Szöveg igazítása","Text alignment toolbar":"Szöveg igazítás eszköztár"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/hy.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/hy.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.hy=n.hy||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"","Align left":"","Align right":"",Justify:"","Text alignment":"","Text alignment toolbar":""})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/id.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/id.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(a){const t=a.id=a.id||{};t.dictionary=Object.assign(t.dictionary||{},{"Align center":"Rata tengah","Align left":"Rata kiri","Align right":"Rata kanan",Justify:"Rata kanan-kiri","Text alignment":"Perataan teks","Text alignment toolbar":"Alat perataan teks"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/it.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/it.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(i){const n=i.it=i.it||{};n.dictionary=Object.assign(n.dictionary||{},{"Align center":"Allinea al centro","Align left":"Allinea a sinistra","Align right":"Allinea a destra",Justify:"Giustifica","Text alignment":"Allineamento del testo","Text alignment toolbar":"Barra degli strumenti dell'allineamento"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/ja.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/ja.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.ja=n.ja||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"中央揃え","Align left":"左揃え","Align right":"右揃え",Justify:"両端揃え","Text alignment":"文字揃え","Text alignment toolbar":"テキストの整列"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/jv.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/jv.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const t=n.jv=n.jv||{};t.dictionary=Object.assign(t.dictionary||{},{"Align center":"Rata tengah","Align left":"Rata kiwa","Align right":"Rata tengen",Justify:"Rata kiwa tengen","Text alignment":"Perataan seratan","Text alignment toolbar":""})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/kk.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/kk.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.kk=n.kk||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Ортадан туралау","Align left":"Солға туралау","Align right":"Оңға туралау",Justify:"","Text alignment":"Мәтінді туралау","Text alignment toolbar":"Мәтінді туралау құралдар тақтасы"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/km.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/km.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.km=n.km||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"តម្រឹមកណ្ដាល","Align left":"តម្រឹមឆ្វេង","Align right":"តម្រឹមស្ដាំ",Justify:"តម្រឹមសងខាង","Text alignment":"ការតម្រឹមអក្សរ","Text alignment toolbar":"របារឧបករណ៍តម្រឹមអក្សរ"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/kn.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/kn.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.kn=n.kn||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"","Align left":"","Align right":"",Justify:"","Text alignment":"","Text alignment toolbar":""})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/ko.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/ko.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.ko=n.ko||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"가운데 정렬","Align left":"왼쪽 정렬","Align right":"오른쪽 정렬",Justify:"양쪽 정렬","Text alignment":"텍스트 정렬","Text alignment toolbar":"텍스트 정렬 툴바"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/ku.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/ku.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.ku=n.ku||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"بەهێڵکردنی ناورەڕاست","Align left":"بەهێڵکردنی چەپ","Align right":"بەهێڵکردنی ڕاست",Justify:"هاوستوونی","Text alignment":"ڕیززکردنی تێکست","Text alignment toolbar":"تووڵامرازی ڕیززکردنی تێکست"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/lt.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/lt.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(i){const t=i.lt=i.lt||{};t.dictionary=Object.assign(t.dictionary||{},{"Align center":"Centruoti","Align left":"Lygiuoti į kairę","Align right":"Lygiuoti į dešinę",Justify:"Lygiuoti per visą plotį","Text alignment":"Teksto lygiavimas","Text alignment toolbar":"Teksto lygiavimo įrankių juosta"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/lv.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/lv.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(i){const n=i.lv=i.lv||{};n.dictionary=Object.assign(n.dictionary||{},{"Align center":"Centrēt","Align left":"Pa kreisi","Align right":"Pa labi",Justify:"Izlīdzināt abas malas","Text alignment":"Teksta izlīdzināšana","Text alignment toolbar":"Teksta līdzināšanas rīkjosla"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/ms.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/ms.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(a){const n=a.ms=a.ms||{};n.dictionary=Object.assign(n.dictionary||{},{"Align center":"Jajarkan tengah","Align left":"Jajarkan kiri","Align right":"Jajarkan kiri",Justify:"Imbang","Text alignment":"Jajaran teks","Text alignment toolbar":"Bar alat capaian jajaran teks"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/nb.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/nb.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(t){const n=t.nb=t.nb||{};n.dictionary=Object.assign(n.dictionary||{},{"Align center":"Midstill","Align left":"Venstrejuster","Align right":"Høyrejuster",Justify:"Blokkjuster","Text alignment":"Tekstjustering","Text alignment toolbar":""})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/ne.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/ne.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.ne=n.ne||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"केन्द्र पङ्क्तिबद्ध गर्नुहोस्","Align left":"बायाँ पङ्क्तिबद्ध गर्नुहोस्","Align right":"दायाँ पङ्क्तिबद्ध गर्नुहोस्",Justify:"जस्टिफाइ गर्नुहोस्","Text alignment":"पाठ संरेखण","Text alignment toolbar":""})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/nl.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/nl.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(i){const n=i.nl=i.nl||{};n.dictionary=Object.assign(n.dictionary||{},{"Align center":"Midden uitlijnen","Align left":"Links uitlijnen","Align right":"Rechts uitlijnen",Justify:"Volledig uitlijnen","Text alignment":"Tekst uitlijning","Text alignment toolbar":"Tekst uitlijning werkbalk"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/no.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/no.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(t){const n=t.no=t.no||{};n.dictionary=Object.assign(n.dictionary||{},{"Align center":"Midtstill","Align left":"Venstrejuster","Align right":"Høyrejuster",Justify:"Blokkjuster","Text alignment":"Tekstjustering","Text alignment toolbar":"Verktøylinje for tekstjustering"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/oc.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/oc.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.oc=n.oc||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"","Align left":"","Align right":"",Justify:"","Text alignment":"","Text alignment toolbar":""})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/pl.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/pl.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.pl=n.pl||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Wyrównaj do środka","Align left":"Wyrównaj do lewej","Align right":"Wyrównaj do prawej",Justify:"Wyrównaj obustronnie","Text alignment":"Wyrównanie tekstu","Text alignment toolbar":"Pasek narzędzi wyrównania tekstu"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/pt-br.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/pt-br.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(t){const i=t["pt-br"]=t["pt-br"]||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Centralizar","Align left":"Alinhar à esquerda","Align right":"Alinhar à direita",Justify:"Justificar","Text alignment":"Alinhamento do texto","Text alignment toolbar":"Ferramentas de alinhamento de texto"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/pt.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/pt.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(t){const i=t.pt=t.pt||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Alinhar ao centro","Align left":"Alinhar à esquerda","Align right":"Alinhar à direita",Justify:"Justificar","Text alignment":"Alinhamento de texto","Text alignment toolbar":"Barra de alinhamento de texto"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/ro.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/ro.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(i){const n=i.ro=i.ro||{};n.dictionary=Object.assign(n.dictionary||{},{"Align center":"Aliniază la centru","Align left":"Aliniază la stânga","Align right":"Aliniază la dreapta",Justify:"Aliniază stânga-dreapta","Text alignment":"Aliniere text","Text alignment toolbar":"Bara aliniere text"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/ru.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/ru.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.ru=n.ru||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Выравнивание по центру","Align left":"Выравнивание по левому краю","Align right":"Выравнивание по правому краю",Justify:"Выравнивание по ширине","Text alignment":"Выравнивание текста","Text alignment toolbar":"Выравнивание"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/si.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/si.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(i){const n=i.si=i.si||{};n.dictionary=Object.assign(n.dictionary||{},{"Align center":"","Align left":"","Align right":"",Justify:"","Text alignment":"","Text alignment toolbar":""})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/sk.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/sk.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const a=n.sk=n.sk||{};a.dictionary=Object.assign(a.dictionary||{},{"Align center":"Zarovnať na stred","Align left":"Zarovnať vľavo","Align right":"Zarovnať vpravo",Justify:"Do bloku","Text alignment":"Zarovnanie textu","Text alignment toolbar":"Panel nástrojov zarovnania textu"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/sl.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/sl.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(a){const n=a.sl=a.sl||{};n.dictionary=Object.assign(n.dictionary||{},{"Align center":"Sredinska poravnava","Align left":"Poravnava levo","Align right":"Poravnava desno",Justify:"Postavi na sredino","Text alignment":"Poravnava besedila","Text alignment toolbar":"Orodna vrstica besedila"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/sq.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/sq.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(t){const i=t.sq=t.sq||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Radhit në mes","Align left":"Radhit majtas","Align right":"Radhit djathtas",Justify:"Plotësim","Text alignment":"Radhitja e tekstit","Text alignment toolbar":"Shiriti i rradhitjes së tekstit"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/sr-latn.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/sr-latn.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const a=n["sr-latn"]=n["sr-latn"]||{};a.dictionary=Object.assign(a.dictionary||{},{"Align center":"Centralno ravnanje","Align left":"Levo ravnanje","Align right":"Desno ravnanje",Justify:"Obostrano ravnanje","Text alignment":"Ravnanje teksta","Text alignment toolbar":"Alatke za ravnanje teksta"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/sr.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/sr.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.sr=n.sr||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Централно равнанје","Align left":"Лево равнање","Align right":"Десно равнање",Justify:"Обострано равнање","Text alignment":"Равнање текста","Text alignment toolbar":"Алатке за равнање текста"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/sv.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/sv.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(t){const e=t.sv=t.sv||{};e.dictionary=Object.assign(e.dictionary||{},{"Align center":"Centrera","Align left":"Vänsterjustera","Align right":"Högerjustera",Justify:"Justera till marginaler","Text alignment":"Textjustering","Text alignment toolbar":"Verktygsfält för textjustering"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/th.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/th.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const t=n.th=n.th||{};t.dictionary=Object.assign(t.dictionary||{},{"Align center":"จัดกึ่งกลาง","Align left":"จัดชิดซ้าย","Align right":"จัดชิดขวา",Justify:"จัด(ขอบ)","Text alignment":"จัดตำแหน่งข้อความ","Text alignment toolbar":"แถบเครื่องมือจัดตำแหน่งข้อความ"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/ti.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/ti.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(i){const n=i.ti=i.ti||{};n.dictionary=Object.assign(n.dictionary||{},{"Align center":"ናብ ማእኸል ኣመዓራርይ","Align left":"ንጸጋም ኣመዓራርይ","Align right":"ንየማን ኣመዓራርይ",Justify:"ብማዕረ መጠን ናብ ኩሉ ኣንፈት ኣመዓራርይ","Text alignment":"ምዕረያ ጽሑፍ","Text alignment toolbar":"መካወኒ ምዕረያ ጽሑፍ"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/tk.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/tk.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(e){const i=e.tk=e.tk||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Merkeze deňleşdir","Align left":"Çepe deňleşdiriň","Align right":"Saga deňleşdiriň",Justify:"Akla","Text alignment":"Tekstiň deňleşdirilmegi","Text alignment toolbar":"Teksti deňleşdirmek gurallar paneli"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/tr.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/tr.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(a){const i=a.tr=a.tr||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"Ortala","Align left":"Sola hizala","Align right":"Sağa hizala",Justify:"İki yana yasla","Text alignment":"Yazı hizalama","Text alignment toolbar":"Yazı Hizlama Araç Çubuğu"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/tt.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/tt.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(t){const n=t.tt=t.tt||{};n.dictionary=Object.assign(n.dictionary||{},{"Align center":"Үзәккә тигезлә","Align left":"Сулга тигезлә","Align right":"Уңга тигезлә",Justify:"Tигезлә","Text alignment":"Текстны тигезләү","Text alignment toolbar":"Текстны тигезләү кораллары панеле"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/ug.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/ug.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.ug=n.ug||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"ئوتتۇرىغا توغرىلاش","Align left":"سولغا توغرىلاش","Align right":"ئوڭغا توغرىلاش",Justify:"ئوڭ سولدىن توغرىلا","Text alignment":"تېكىست توغرىلاش","Text alignment toolbar":"تېكىست توغرىلاش قورالبالدىقى"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
1
web/core/assets/vendor/ckeditor5/alignment/translations/uk.js
vendored
Normal file
1
web/core/assets/vendor/ckeditor5/alignment/translations/uk.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
!function(n){const i=n.uk=n.uk||{};i.dictionary=Object.assign(i.dictionary||{},{"Align center":"По центру","Align left":"По лівому краю","Align right":"По правому краю",Justify:"По ширині","Text alignment":"Вирівнювання тексту","Text alignment toolbar":"Панель інструментів вирівнювання тексту"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user