migrate therinaldos.com data
Build & Deploy to DigitalOcean Space / build (push) Failing after 2m38s

This commit is contained in:
2024-05-05 15:50:45 -04:00
commit ef1ff240d4
23182 changed files with 3801898 additions and 0 deletions
+756
View File
@@ -0,0 +1,756 @@
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="info">
<xs:complexType>
<xs:sequence>
<xs:element name="id" type="id" minOccurs="1" maxOccurs="1"/>
<xs:element name="name" type="l10n-string" minOccurs="1"
maxOccurs="unbounded"/>
<xs:element name="summary" type="l10n-string" minOccurs="1"
maxOccurs="unbounded"/>
<xs:element name="description" type="l10n-text" minOccurs="1"
maxOccurs="unbounded"/>
<xs:element name="version" type="semver"
minOccurs="1" maxOccurs="1"/>
<xs:element name="licence" type="licence" minOccurs="1"
maxOccurs="unbounded"/>
<xs:element name="author" type="author" minOccurs="1"
maxOccurs="unbounded"/>
<xs:element name="namespace" type="limited-string"
minOccurs="0" maxOccurs="1"/>
<xs:element name="default_enable" minOccurs="0"
maxOccurs="1"/>
<xs:element name="types" type="types" minOccurs="0"
maxOccurs="1"/>
<xs:element name="documentation" type="documentation"
minOccurs="0" maxOccurs="1"/>
<xs:element name="category" type="category" minOccurs="1"
maxOccurs="unbounded"/>
<xs:element name="website" type="url" minOccurs="0"
maxOccurs="1"/>
<xs:element name="discussion" type="url" minOccurs="0"
maxOccurs="1"/>
<xs:element name="bugs" type="url" minOccurs="1"
maxOccurs="1"/>
<xs:element name="repository" type="repository" minOccurs="0"
maxOccurs="1"/>
<xs:element name="screenshot" type="screenshot" minOccurs="0"
maxOccurs="10"/>
<xs:element name="dependencies" type="dependencies"
minOccurs="1" maxOccurs="1"/>
<xs:element name="background-jobs" type="jobs"
minOccurs="0" maxOccurs="1"/>
<xs:element name="repair-steps" type="repair-steps"
minOccurs="0" maxOccurs="1"/>
<xs:element name="two-factor-providers"
type="two-factor-providers"
minOccurs="0" maxOccurs="1"/>
<xs:element name="commands" type="commands"
minOccurs="0" maxOccurs="1"/>
<xs:element name="settings" type="settings" minOccurs="0"
maxOccurs="1"/>
<xs:element name="activity" type="activity" minOccurs="0"
maxOccurs="1"/>
<xs:element name="dashboard" type="dashboard"
minOccurs="0" maxOccurs="1"/>
<xs:element name="fulltextsearch" type="fulltextsearch"
minOccurs="0" maxOccurs="1"/>
<xs:element name="navigations" type="navigations" minOccurs="0"
maxOccurs="1"/>
<xs:element name="contactsmenu" type="contactsmenu" minOccurs="0"
maxOccurs="1"/>
<xs:element name="collaboration" type="collaboration" minOccurs="0"
maxOccurs="1" />
<xs:element name="sabre" type="sabre" minOccurs="0"
maxOccurs="1" />
<xs:element name="public" type="public" minOccurs="0"
maxOccurs="1" />
<xs:element name="trash" type="trash" minOccurs="0"
maxOccurs="1" />
<xs:element name="versions" type="versions" minOccurs="0"
maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:unique name="uniqueNameL10n">
<xs:selector xpath="name"/>
<xs:field xpath="@lang"/>
</xs:unique>
<xs:unique name="uniqueSummaryL10n">
<xs:selector xpath="summary"/>
<xs:field xpath="@lang"/>
</xs:unique>
<xs:unique name="uniqueDescriptionL10n">
<xs:selector xpath="description"/>
<xs:field xpath="@lang"/>
</xs:unique>
<xs:unique name="uniqueLicense">
<xs:selector xpath="licence"/>
<xs:field xpath="."/>
</xs:unique>
<xs:unique name="uniqueTypes">
<xs:selector xpath="types/type"/>
<xs:field xpath="."/>
</xs:unique>
<xs:unique name="uniqueCategory">
<xs:selector xpath="category"/>
<xs:field xpath="."/>
</xs:unique>
<xs:unique name="uniqueDatabase">
<xs:selector xpath="dependencies/database"/>
<xs:field xpath="."/>
</xs:unique>
<xs:unique name="uniqueArchitecture">
<xs:selector xpath="dependencies/architecture"/>
<xs:field xpath="."/>
</xs:unique>
<xs:unique name="uniqueLib">
<xs:selector xpath="dependencies/lib"/>
<xs:field xpath="."/>
</xs:unique>
<xs:unique name="uniqueCommand">
<xs:selector xpath="dependencies/command"/>
<xs:field xpath="."/>
</xs:unique>
</xs:element>
<!-- basic types -->
<xs:simpleType name="empty-string">
<xs:restriction base="xs:string">
<xs:maxLength value="0"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="non-empty-string">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="limited-string">
<xs:restriction base="non-empty-string">
<xs:maxLength value="256"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="l10n-text">
<xs:simpleContent>
<xs:extension base="non-empty-string">
<xs:attribute name="lang" type="l10n-code" default="en"
use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="l10n-string">
<xs:simpleContent>
<xs:restriction base="l10n-text">
<xs:maxLength value="128"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="l10n-code">
<xs:restriction base="xs:string">
<xs:enumeration value="af"/>
<xs:enumeration value="ar"/>
<xs:enumeration value="ast"/>
<xs:enumeration value="az"/>
<xs:enumeration value="bg"/>
<xs:enumeration value="be"/>
<xs:enumeration value="bn"/>
<xs:enumeration value="br"/>
<xs:enumeration value="bs"/>
<xs:enumeration value="ca"/>
<xs:enumeration value="cs"/>
<xs:enumeration value="cy"/>
<xs:enumeration value="da"/>
<xs:enumeration value="de"/>
<xs:enumeration value="el"/>
<xs:enumeration value="en"/>
<xs:enumeration value="eo"/>
<xs:enumeration value="es"/>
<xs:enumeration value="es-ar"/>
<xs:enumeration value="es-co"/>
<xs:enumeration value="es-mx"/>
<xs:enumeration value="es-ni"/>
<xs:enumeration value="es-ve"/>
<xs:enumeration value="et"/>
<xs:enumeration value="eu"/>
<xs:enumeration value="fa"/>
<xs:enumeration value="fi"/>
<xs:enumeration value="fr"/>
<xs:enumeration value="fy"/>
<xs:enumeration value="ga"/>
<xs:enumeration value="gd"/>
<xs:enumeration value="gl"/>
<xs:enumeration value="he"/>
<xs:enumeration value="hi"/>
<xs:enumeration value="hr"/>
<xs:enumeration value="hu"/>
<xs:enumeration value="ia"/>
<xs:enumeration value="id"/>
<xs:enumeration value="io"/>
<xs:enumeration value="is"/>
<xs:enumeration value="it"/>
<xs:enumeration value="ja"/>
<xs:enumeration value="ka"/>
<xs:enumeration value="kk"/>
<xs:enumeration value="km"/>
<xs:enumeration value="kn"/>
<xs:enumeration value="ko"/>
<xs:enumeration value="lb"/>
<xs:enumeration value="lt"/>
<xs:enumeration value="lv"/>
<xs:enumeration value="mk"/>
<xs:enumeration value="ml"/>
<xs:enumeration value="mn"/>
<xs:enumeration value="mr"/>
<xs:enumeration value="my"/>
<xs:enumeration value="nb"/>
<xs:enumeration value="ne"/>
<xs:enumeration value="nl"/>
<xs:enumeration value="nn"/>
<xs:enumeration value="os"/>
<xs:enumeration value="pa"/>
<xs:enumeration value="pl"/>
<xs:enumeration value="pt"/>
<xs:enumeration value="pt-br"/>
<xs:enumeration value="ro"/>
<xs:enumeration value="ru"/>
<xs:enumeration value="sk"/>
<xs:enumeration value="sl"/>
<xs:enumeration value="sq"/>
<xs:enumeration value="sr"/>
<xs:enumeration value="sr-latn"/>
<xs:enumeration value="sv"/>
<xs:enumeration value="sw"/>
<xs:enumeration value="ta"/>
<xs:enumeration value="te"/>
<xs:enumeration value="th"/>
<xs:enumeration value="tr"/>
<xs:enumeration value="tt"/>
<xs:enumeration value="udm"/>
<xs:enumeration value="uk"/>
<xs:enumeration value="ur"/>
<xs:enumeration value="vi"/>
<xs:enumeration value="zh-hans"/>
<xs:enumeration value="zh-hant"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="semver">
<xs:restriction base="limited-string">
<xs:pattern
value="(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)(\-([0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*))?"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="version">
<xs:restriction base="limited-string">
<xs:pattern value="[0-9]+(\.[0-9]+){0,2}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="url">
<xs:restriction base="xs:anyURI">
<xs:pattern value="https?://.+"/>
<xs:maxLength value="256"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="doc-user-url">
<xs:restriction base="non-empty-string">
<xs:pattern value="https://.+|user-[a-z]+[\-a-z]*[a-z]+"/>
<xs:maxLength value="256"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="doc-admin-url">
<xs:restriction base="non-empty-string">
<xs:pattern value="https://.+|admin-[a-z]+[\-a-z]*[a-z]+"/>
<xs:maxLength value="256"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="doc-developer-url">
<xs:restriction base="non-empty-string">
<xs:pattern value="https://.+|developer-[a-z]+[\-a-z]*[a-z]+"/>
<xs:maxLength value="256"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="secure-url">
<xs:restriction base="xs:anyURI">
<xs:pattern value="https://.+"/>
<xs:maxLength value="256"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="email">
<xs:restriction base="limited-string">
<xs:pattern value="[^@]+@[^\.]+\..+"/>
</xs:restriction>
</xs:simpleType>
<!-- first level elements -->
<xs:complexType name="screenshot">
<xs:simpleContent>
<xs:extension base="secure-url">
<xs:attribute name="small-thumbnail" use="optional"
type="secure-url"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="id">
<xs:restriction base="limited-string">
<xs:pattern value="[a-z]+[a-z0-9_]*[a-z0-9]+"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="author">
<xs:simpleContent>
<xs:extension base="limited-string">
<xs:attribute name="mail" type="email" use="optional"/>
<xs:attribute name="homepage" type="url" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="repository">
<xs:simpleContent>
<xs:extension base="url">
<xs:attribute name="type" type="vcs" use="optional"
default="git"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="vcs">
<xs:restriction base="xs:string">
<xs:enumeration value="git"/>
<xs:enumeration value="mercurial"/>
<xs:enumeration value="subversion"/>
<xs:enumeration value="bzr"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="types">
<xs:sequence>
<xs:element name="prelogin" minOccurs="0" maxOccurs="1"/>
<xs:element name="filesystem" minOccurs="0" maxOccurs="1"/>
<xs:element name="authentication" minOccurs="0" maxOccurs="1"/>
<xs:element name="extended_authentication" minOccurs="0" maxOccurs="1"/>
<xs:element name="logging" minOccurs="0" maxOccurs="1"/>
<xs:element name="dav" minOccurs="0" maxOccurs="1"/>
<xs:element name="prevent_group_restriction" minOccurs="0"
maxOccurs="1"/>
<xs:element name="session" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="category">
<xs:restriction base="xs:string">
<xs:enumeration value="dashboard"/>
<xs:enumeration value="security"/>
<xs:enumeration value="customization"/>
<xs:enumeration value="files"/>
<xs:enumeration value="integration"/>
<xs:enumeration value="monitoring"/>
<xs:enumeration value="multimedia"/>
<xs:enumeration value="office"/>
<xs:enumeration value="organization"/>
<xs:enumeration value="social"/>
<xs:enumeration value="tools"/>
<xs:enumeration value="games"/>
<xs:enumeration value="search"/>
<xs:enumeration value="workflow"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="licence">
<xs:restriction base="xs:string">
<xs:enumeration value="agpl"/>
<xs:enumeration value="mpl"/>
<xs:enumeration value="apache"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="databases">
<xs:restriction base="xs:string">
<xs:enumeration value="sqlite"/>
<xs:enumeration value="mysql"/>
<xs:enumeration value="pgsql"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="documentation">
<xs:sequence>
<xs:element name="user" type="doc-user-url" minOccurs="0" maxOccurs="1"/>
<xs:element name="admin" type="doc-admin-url" minOccurs="0" maxOccurs="1"/>
<xs:element name="developer" type="doc-developer-url" minOccurs="0"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="settings">
<xs:sequence>
<xs:element name="admin" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="admin-section" type="php-class" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="personal" type="php-class" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="personal-section" type="php-class" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="activity">
<xs:sequence>
<xs:element name="settings" type="activity-settings" minOccurs="0"
maxOccurs="1"/>
<xs:element name="filters" type="activity-filters" minOccurs="0" maxOccurs="1"/>
<xs:element name="providers" type="activity-providers" minOccurs="0"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="activity-settings">
<xs:sequence>
<xs:element name="setting" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="activity-filters">
<xs:sequence>
<xs:element name="filter" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="activity-providers">
<xs:sequence>
<xs:element name="provider" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="navigations">
<xs:sequence>
<xs:element name="navigation" type="navigation" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="navigation">
<xs:sequence>
<xs:element name="id" type="id" minOccurs="0" maxOccurs="1"/>
<xs:element name="name" type="non-empty-string" minOccurs="1" maxOccurs="1"/>
<xs:element name="route" type="route" minOccurs="0" maxOccurs="1"/>
<xs:element name="icon" type="xs:anyURI" minOccurs="0" maxOccurs="1"/>
<xs:element name="order" type="xs:int" minOccurs="0" maxOccurs="1"/>
<xs:element name="type" type="navigation-type" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="role" type="navigation-role" default="all" use="optional"/>
</xs:complexType>
<xs:simpleType name="navigation-role">
<xs:restriction base="xs:string">
<xs:enumeration value="all"/>
<xs:enumeration value="admin"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="navigation-type">
<xs:restriction base="xs:string">
<xs:enumeration value="link"/>
<xs:enumeration value="settings"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="route">
<xs:restriction base="non-empty-string">
<xs:pattern value="[0-9a-zA-Z_]+(\.[0-9a-zA-Z_]+){2}"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="contactsmenu">
<xs:sequence>
<xs:element name="provider" type="php-class" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="collaboration">
<xs:sequence>
<xs:element name="plugins" type="collaboration-plugins" minOccurs="0" maxOccurs="1">
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="collaboration-plugins">
<xs:sequence>
<xs:element name="plugin" type="collaboration-plugins-plugin" minOccurs="1" maxOccurs="unbounded">
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="collaboration-plugins-plugin">
<xs:simpleContent>
<xs:extension base="php-class">
<xs:attribute name="type" type="collaboration-plugin-type" use="required"/>
<xs:attribute name="share-type" type="share-type" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="collaboration-plugin-type">
<xs:restriction base="xs:string">
<xs:enumeration value="collaborator-search"/>
<xs:enumeration value="autocomplete-sort"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="sabre">
<xs:sequence>
<xs:element name="collections" type="sabre-collections" minOccurs="0" maxOccurs="1"/>
<xs:element name="plugins" type="sabre-plugins" minOccurs="0" maxOccurs="1"/>
<xs:element name="address-book-plugins" type="sabre-plugins" minOccurs="0" maxOccurs="1"/>
<xs:element name="calendar-plugins" type="sabre-plugins" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="sabre-collections">
<xs:sequence>
<xs:element name="collection" type="php-class" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="sabre-plugins">
<xs:sequence>
<xs:element name="plugin" type="php-class" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="share-type">
<xs:restriction base="xs:string">
<xs:enumeration value="SHARE_TYPE_USER"/>
<xs:enumeration value="SHARE_TYPE_GROUP"/>
<xs:enumeration value="SHARE_TYPE_LINK"/>
<xs:enumeration value="SHARE_TYPE_EMAIL"/>
<xs:enumeration value="SHARE_TYPE_CONTACT"/>
<xs:enumeration value="SHARE_TYPE_REMOTE"/>
<xs:enumeration value="SHARE_TYPE_CIRCLE"/>
<xs:enumeration value="SHARE_TYPE_GUEST"/>
<xs:enumeration value="SHARE_TYPE_ROOM"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="public">
<xs:sequence>
<xs:element name="webdav" type="path" minOccurs="0" maxOccurs="1"/>
<xs:element name="files" type="path" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<!-- dependencies -->
<xs:complexType name="dependencies">
<xs:sequence>
<xs:element name="php" type="php" minOccurs="0" maxOccurs="1"/>
<xs:element name="database" type="database" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="command" type="shell-command" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="lib" type="min-max-version" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="owncloud" type="owncloud" minOccurs="0"
maxOccurs="1"/>
<xs:element name="nextcloud" type="nextcloud" minOccurs="1"
maxOccurs="1"/>
<xs:element name="architecture" type="architecture" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="owncloud">
<xs:attribute name="min-version" type="version" use="required"/>
<xs:attribute name="max-version" type="version" use="optional"/>
</xs:complexType>
<xs:complexType name="nextcloud">
<xs:attribute name="min-version" type="version" use="required"/>
<xs:attribute name="max-version" type="version" use="required"/>
</xs:complexType>
<xs:simpleType name="shell-command">
<xs:restriction base="limited-string">
<xs:pattern value="[a-zA-Z\-_]+"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="min-max-version">
<xs:simpleContent>
<xs:extension base="limited-string">
<xs:attribute name="min-version" type="version"
use="optional"/>
<xs:attribute name="max-version" type="version"
use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="database">
<xs:simpleContent>
<xs:extension base="databases">
<xs:attribute name="min-version" type="version"
use="optional"/>
<xs:attribute name="max-version" type="version"
use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="php">
<xs:simpleContent>
<xs:extension base="empty-string">
<xs:attribute name="min-int-size" type="bits" use="optional"
default="32"/>
<xs:attribute name="min-version" type="version"
use="optional"/>
<xs:attribute name="max-version" type="version"
use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="bits">
<xs:restriction base="xs:int">
<xs:enumeration value="32"/>
<xs:enumeration value="64"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="architecture">
<xs:restriction base="xs:string">
<xs:enumeration value="x86"/>
<xs:enumeration value="x86_64"/>
<xs:enumeration value="aarch"/>
<xs:enumeration value="aarch64"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="repair-steps">
<xs:sequence>
<xs:element name="pre-migration" type="steps" minOccurs="0"
maxOccurs="1"/>
<xs:element name="post-migration" type="steps" minOccurs="0"
maxOccurs="1"/>
<xs:element name="live-migration" type="steps" minOccurs="0"
maxOccurs="1"/>
<xs:element name="install" type="steps" minOccurs="0"
maxOccurs="1"/>
<xs:element name="uninstall" type="steps" minOccurs="0"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="jobs">
<xs:sequence>
<xs:element name="job" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="steps">
<xs:sequence>
<xs:element name="step" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="two-factor-providers">
<xs:sequence>
<xs:element name="provider" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="commands">
<xs:sequence>
<xs:element name="command" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="dashboard">
<xs:sequence>
<xs:element name="widget" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="fulltextsearch-provider">
<xs:simpleContent>
<xs:extension base="php-class">
<xs:attribute name="min-version" type="version" use="optional"/>
<xs:attribute name="max-version" type="version" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="fulltextsearch">
<xs:sequence>
<xs:element name="platform" type="php-class" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="provider" type="fulltextsearch-provider" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="trash">
<xs:sequence>
<xs:element name="backend" type="trash-backend" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="trash-backend">
<xs:simpleContent>
<xs:extension base="php-class">
<xs:attribute name="for" type="php-class" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="versions">
<xs:sequence>
<xs:element name="backend" type="versions-backend" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="versions-backend">
<xs:simpleContent>
<xs:extension base="php-class">
<xs:attribute name="for" type="php-class" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="php-class">
<xs:restriction base="xs:string">
<xs:pattern
value="[a-zA-Z_][0-9a-zA-Z_]*(\\[a-zA-Z_][0-9a-zA-Z_]*)*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="path">
<xs:restriction base="xs:string">
<xs:pattern
value="[a-zA-Z_][0-9a-zA-Z_]*(/[a-zA-Z_][0-9a-zA-Z_]*)*\.php"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
+736
View File
@@ -0,0 +1,736 @@
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="info">
<xs:complexType>
<xs:sequence>
<xs:element name="id" type="id" minOccurs="1" maxOccurs="1"/>
<xs:element name="name" type="l10n-string" minOccurs="1"
maxOccurs="unbounded"/>
<xs:element name="summary" type="l10n-string" minOccurs="1"
maxOccurs="unbounded"/>
<xs:element name="description" type="l10n-text" minOccurs="1"
maxOccurs="unbounded"/>
<xs:element name="version" type="semver"
minOccurs="1" maxOccurs="1"/>
<xs:element name="licence" type="licence" minOccurs="1"
maxOccurs="unbounded"/>
<xs:element name="author" type="author" minOccurs="1"
maxOccurs="unbounded"/>
<xs:element name="namespace" type="limited-string"
minOccurs="0" maxOccurs="1"/>
<xs:element name="types" type="types" minOccurs="0"
maxOccurs="1"/>
<xs:element name="documentation" type="documentation"
minOccurs="0" maxOccurs="1"/>
<xs:element name="category" type="category" minOccurs="1"
maxOccurs="unbounded"/>
<xs:element name="website" type="url" minOccurs="0"
maxOccurs="1"/>
<xs:element name="discussion" type="url" minOccurs="0"
maxOccurs="1"/>
<xs:element name="bugs" type="url" minOccurs="1"
maxOccurs="1"/>
<xs:element name="repository" type="repository" minOccurs="0"
maxOccurs="1"/>
<xs:element name="screenshot" type="screenshot" minOccurs="0"
maxOccurs="10"/>
<xs:element name="dependencies" type="dependencies"
minOccurs="1" maxOccurs="1"/>
<xs:element name="background-jobs" type="jobs"
minOccurs="0" maxOccurs="1"/>
<xs:element name="repair-steps" type="repair-steps"
minOccurs="0" maxOccurs="1"/>
<xs:element name="two-factor-providers"
type="two-factor-providers"
minOccurs="0" maxOccurs="1"/>
<xs:element name="commands" type="commands"
minOccurs="0" maxOccurs="1"/>
<xs:element name="settings" type="settings" minOccurs="0"
maxOccurs="1"/>
<xs:element name="activity" type="activity" minOccurs="0"
maxOccurs="1"/>
<xs:element name="dashboard" type="dashboard"
minOccurs="0" maxOccurs="1"/>
<xs:element name="fulltextsearch" type="fulltextsearch"
minOccurs="0" maxOccurs="1"/>
<xs:element name="navigations" type="navigations" minOccurs="0"
maxOccurs="1"/>
<xs:element name="contactsmenu" type="contactsmenu" minOccurs="0"
maxOccurs="1"/>
<xs:element name="collaboration" type="collaboration" minOccurs="0"
maxOccurs="1" />
<xs:element name="sabre" type="sabre" minOccurs="0"
maxOccurs="1" />
<xs:element name="trash" type="trash" minOccurs="0"
maxOccurs="1" />
<xs:element name="versions" type="versions" minOccurs="0"
maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:unique name="uniqueNameL10n">
<xs:selector xpath="name"/>
<xs:field xpath="@lang"/>
</xs:unique>
<xs:unique name="uniqueSummaryL10n">
<xs:selector xpath="summary"/>
<xs:field xpath="@lang"/>
</xs:unique>
<xs:unique name="uniqueDescriptionL10n">
<xs:selector xpath="description"/>
<xs:field xpath="@lang"/>
</xs:unique>
<xs:unique name="uniqueLicense">
<xs:selector xpath="licence"/>
<xs:field xpath="."/>
</xs:unique>
<xs:unique name="uniqueTypes">
<xs:selector xpath="types/type"/>
<xs:field xpath="."/>
</xs:unique>
<xs:unique name="uniqueCategory">
<xs:selector xpath="category"/>
<xs:field xpath="."/>
</xs:unique>
<xs:unique name="uniqueDatabase">
<xs:selector xpath="dependencies/database"/>
<xs:field xpath="."/>
</xs:unique>
<xs:unique name="uniqueArchitecture">
<xs:selector xpath="dependencies/architecture"/>
<xs:field xpath="."/>
</xs:unique>
<xs:unique name="uniqueLib">
<xs:selector xpath="dependencies/lib"/>
<xs:field xpath="."/>
</xs:unique>
<xs:unique name="uniqueCommand">
<xs:selector xpath="dependencies/command"/>
<xs:field xpath="."/>
</xs:unique>
</xs:element>
<!-- basic types -->
<xs:simpleType name="empty-string">
<xs:restriction base="xs:string">
<xs:maxLength value="0"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="non-empty-string">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="limited-string">
<xs:restriction base="non-empty-string">
<xs:maxLength value="256"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="l10n-text">
<xs:simpleContent>
<xs:extension base="non-empty-string">
<xs:attribute name="lang" type="l10n-code" default="en"
use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="l10n-string">
<xs:simpleContent>
<xs:restriction base="l10n-text">
<xs:maxLength value="128"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="l10n-code">
<xs:restriction base="xs:string">
<xs:enumeration value="af"/>
<xs:enumeration value="ar"/>
<xs:enumeration value="ast"/>
<xs:enumeration value="az"/>
<xs:enumeration value="bg"/>
<xs:enumeration value="be"/>
<xs:enumeration value="bn"/>
<xs:enumeration value="br"/>
<xs:enumeration value="bs"/>
<xs:enumeration value="ca"/>
<xs:enumeration value="cs"/>
<xs:enumeration value="cy"/>
<xs:enumeration value="da"/>
<xs:enumeration value="de"/>
<xs:enumeration value="el"/>
<xs:enumeration value="en"/>
<xs:enumeration value="eo"/>
<xs:enumeration value="es"/>
<xs:enumeration value="es-ar"/>
<xs:enumeration value="es-co"/>
<xs:enumeration value="es-mx"/>
<xs:enumeration value="es-ni"/>
<xs:enumeration value="es-ve"/>
<xs:enumeration value="et"/>
<xs:enumeration value="eu"/>
<xs:enumeration value="fa"/>
<xs:enumeration value="fi"/>
<xs:enumeration value="fr"/>
<xs:enumeration value="fy"/>
<xs:enumeration value="ga"/>
<xs:enumeration value="gd"/>
<xs:enumeration value="gl"/>
<xs:enumeration value="he"/>
<xs:enumeration value="hi"/>
<xs:enumeration value="hr"/>
<xs:enumeration value="hu"/>
<xs:enumeration value="ia"/>
<xs:enumeration value="id"/>
<xs:enumeration value="io"/>
<xs:enumeration value="is"/>
<xs:enumeration value="it"/>
<xs:enumeration value="ja"/>
<xs:enumeration value="ka"/>
<xs:enumeration value="kk"/>
<xs:enumeration value="km"/>
<xs:enumeration value="kn"/>
<xs:enumeration value="ko"/>
<xs:enumeration value="lb"/>
<xs:enumeration value="lt"/>
<xs:enumeration value="lv"/>
<xs:enumeration value="mk"/>
<xs:enumeration value="ml"/>
<xs:enumeration value="mn"/>
<xs:enumeration value="mr"/>
<xs:enumeration value="my"/>
<xs:enumeration value="nb"/>
<xs:enumeration value="ne"/>
<xs:enumeration value="nl"/>
<xs:enumeration value="nn"/>
<xs:enumeration value="os"/>
<xs:enumeration value="pa"/>
<xs:enumeration value="pl"/>
<xs:enumeration value="pt"/>
<xs:enumeration value="pt-br"/>
<xs:enumeration value="ro"/>
<xs:enumeration value="ru"/>
<xs:enumeration value="sk"/>
<xs:enumeration value="sl"/>
<xs:enumeration value="sq"/>
<xs:enumeration value="sr"/>
<xs:enumeration value="sr-latn"/>
<xs:enumeration value="sv"/>
<xs:enumeration value="sw"/>
<xs:enumeration value="ta"/>
<xs:enumeration value="te"/>
<xs:enumeration value="th"/>
<xs:enumeration value="tr"/>
<xs:enumeration value="tt"/>
<xs:enumeration value="udm"/>
<xs:enumeration value="uk"/>
<xs:enumeration value="ur"/>
<xs:enumeration value="vi"/>
<xs:enumeration value="zh-hans"/>
<xs:enumeration value="zh-hant"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="semver">
<xs:restriction base="limited-string">
<xs:pattern
value="(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)(\-([0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*))?"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="version">
<xs:restriction base="limited-string">
<xs:pattern value="[0-9]+(\.[0-9]+){0,2}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="url">
<xs:restriction base="xs:anyURI">
<xs:pattern value="https?://.+"/>
<xs:maxLength value="256"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="doc-user-url">
<xs:restriction base="non-empty-string">
<xs:pattern value="https://.+|user-[a-z]+[\-a-z]*[a-z]+"/>
<xs:maxLength value="256"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="doc-admin-url">
<xs:restriction base="non-empty-string">
<xs:pattern value="https://.+|admin-[a-z]+[\-a-z]*[a-z]+"/>
<xs:maxLength value="256"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="doc-developer-url">
<xs:restriction base="non-empty-string">
<xs:pattern value="https://.+|developer-[a-z]+[\-a-z]*[a-z]+"/>
<xs:maxLength value="256"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="secure-url">
<xs:restriction base="xs:anyURI">
<xs:pattern value="https://.+"/>
<xs:maxLength value="256"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="email">
<xs:restriction base="limited-string">
<xs:pattern value="[^@]+@[^\.]+\..+"/>
</xs:restriction>
</xs:simpleType>
<!-- first level elements -->
<xs:complexType name="screenshot">
<xs:simpleContent>
<xs:extension base="secure-url">
<xs:attribute name="small-thumbnail" use="optional"
type="secure-url"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="id">
<xs:restriction base="limited-string">
<xs:pattern value="[a-z]+[a-z0-9_]*[a-z0-9]+"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="author">
<xs:simpleContent>
<xs:extension base="limited-string">
<xs:attribute name="mail" type="email" use="optional"/>
<xs:attribute name="homepage" type="url" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="repository">
<xs:simpleContent>
<xs:extension base="url">
<xs:attribute name="type" type="vcs" use="optional"
default="git"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="vcs">
<xs:restriction base="xs:string">
<xs:enumeration value="git"/>
<xs:enumeration value="mercurial"/>
<xs:enumeration value="subversion"/>
<xs:enumeration value="bzr"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="types">
<xs:sequence>
<xs:element name="prelogin" minOccurs="0" maxOccurs="1"/>
<xs:element name="filesystem" minOccurs="0" maxOccurs="1"/>
<xs:element name="authentication" minOccurs="0" maxOccurs="1"/>
<xs:element name="extended_authentication" minOccurs="0" maxOccurs="1"/>
<xs:element name="logging" minOccurs="0" maxOccurs="1"/>
<xs:element name="dav" minOccurs="0" maxOccurs="1"/>
<xs:element name="prevent_group_restriction" minOccurs="0"
maxOccurs="1"/>
<xs:element name="session" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="category">
<xs:restriction base="xs:string">
<xs:enumeration value="dashboard"/>
<xs:enumeration value="security"/>
<xs:enumeration value="customization"/>
<xs:enumeration value="files"/>
<xs:enumeration value="integration"/>
<xs:enumeration value="monitoring"/>
<xs:enumeration value="multimedia"/>
<xs:enumeration value="office"/>
<xs:enumeration value="organization"/>
<xs:enumeration value="social"/>
<xs:enumeration value="tools"/>
<xs:enumeration value="games"/>
<xs:enumeration value="search"/>
<xs:enumeration value="workflow"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="licence">
<xs:restriction base="xs:string">
<xs:enumeration value="agpl"/>
<xs:enumeration value="mpl"/>
<xs:enumeration value="apache"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="databases">
<xs:restriction base="xs:string">
<xs:enumeration value="sqlite"/>
<xs:enumeration value="mysql"/>
<xs:enumeration value="pgsql"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="documentation">
<xs:sequence>
<xs:element name="user" type="doc-user-url" minOccurs="0" maxOccurs="1"/>
<xs:element name="admin" type="doc-admin-url" minOccurs="0" maxOccurs="1"/>
<xs:element name="developer" type="doc-developer-url" minOccurs="0"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="settings">
<xs:sequence>
<xs:element name="admin" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="admin-section" type="php-class" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="personal" type="php-class" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="personal-section" type="php-class" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="activity">
<xs:sequence>
<xs:element name="settings" type="activity-settings" minOccurs="0"
maxOccurs="1"/>
<xs:element name="filters" type="activity-filters" minOccurs="0" maxOccurs="1"/>
<xs:element name="providers" type="activity-providers" minOccurs="0"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="activity-settings">
<xs:sequence>
<xs:element name="setting" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="activity-filters">
<xs:sequence>
<xs:element name="filter" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="activity-providers">
<xs:sequence>
<xs:element name="provider" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="navigations">
<xs:sequence>
<xs:element name="navigation" type="navigation" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="navigation">
<xs:sequence>
<xs:element name="id" type="id" minOccurs="0" maxOccurs="1"/>
<xs:element name="name" type="non-empty-string" minOccurs="1" maxOccurs="1"/>
<xs:element name="route" type="route" minOccurs="0" maxOccurs="1"/>
<xs:element name="icon" type="xs:anyURI" minOccurs="0" maxOccurs="1"/>
<xs:element name="order" type="xs:int" minOccurs="0" maxOccurs="1"/>
<xs:element name="type" type="navigation-type" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="role" type="navigation-role" default="all" use="optional"/>
</xs:complexType>
<xs:simpleType name="navigation-role">
<xs:restriction base="xs:string">
<xs:enumeration value="all"/>
<xs:enumeration value="admin"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="navigation-type">
<xs:restriction base="xs:string">
<xs:enumeration value="link"/>
<xs:enumeration value="settings"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="route">
<xs:restriction base="non-empty-string">
<xs:pattern value="[0-9a-zA-Z_]+(\.[0-9a-zA-Z_]+){2}"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="contactsmenu">
<xs:sequence>
<xs:element name="provider" type="php-class" minOccurs="1"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="collaboration">
<xs:sequence>
<xs:element name="plugins" type="collaboration-plugins" minOccurs="0" maxOccurs="1">
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="collaboration-plugins">
<xs:sequence>
<xs:element name="plugin" type="collaboration-plugins-plugin" minOccurs="1" maxOccurs="unbounded">
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="collaboration-plugins-plugin">
<xs:simpleContent>
<xs:extension base="php-class">
<xs:attribute name="type" type="collaboration-plugin-type" use="required"/>
<xs:attribute name="share-type" type="share-type" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="collaboration-plugin-type">
<xs:restriction base="xs:string">
<xs:enumeration value="collaborator-search"/>
<xs:enumeration value="autocomplete-sort"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="sabre">
<xs:sequence>
<xs:element name="collections" type="sabre-collections" minOccurs="0" maxOccurs="1"/>
<xs:element name="plugins" type="sabre-plugins" minOccurs="0" maxOccurs="1"/>
<xs:element name="address-book-plugins" type="sabre-plugins" minOccurs="0" maxOccurs="1"/>
<xs:element name="calendar-plugins" type="sabre-plugins" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="sabre-collections">
<xs:sequence>
<xs:element name="collection" type="php-class" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="sabre-plugins">
<xs:sequence>
<xs:element name="plugin" type="php-class" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="share-type">
<xs:restriction base="xs:string">
<xs:enumeration value="SHARE_TYPE_USER"/>
<xs:enumeration value="SHARE_TYPE_GROUP"/>
<xs:enumeration value="SHARE_TYPE_LINK"/>
<xs:enumeration value="SHARE_TYPE_EMAIL"/>
<xs:enumeration value="SHARE_TYPE_CONTACT"/>
<xs:enumeration value="SHARE_TYPE_REMOTE"/>
<xs:enumeration value="SHARE_TYPE_CIRCLE"/>
<xs:enumeration value="SHARE_TYPE_GUEST"/>
<xs:enumeration value="SHARE_TYPE_ROOM"/>
</xs:restriction>
</xs:simpleType>
<!-- dependencies -->
<xs:complexType name="dependencies">
<xs:sequence>
<xs:element name="php" type="php" minOccurs="0" maxOccurs="1"/>
<xs:element name="database" type="database" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="command" type="shell-command" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="lib" type="min-max-version" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="owncloud" type="owncloud" minOccurs="0"
maxOccurs="1"/>
<xs:element name="nextcloud" type="nextcloud" minOccurs="1"
maxOccurs="1"/>
<xs:element name="architecture" type="architecture" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="owncloud">
<xs:attribute name="min-version" type="version" use="required"/>
<xs:attribute name="max-version" type="version" use="optional"/>
</xs:complexType>
<xs:complexType name="nextcloud">
<xs:attribute name="min-version" type="version" use="required"/>
<xs:attribute name="max-version" type="version" use="required"/>
</xs:complexType>
<xs:simpleType name="shell-command">
<xs:restriction base="limited-string">
<xs:pattern value="[a-zA-Z\-_]+"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="min-max-version">
<xs:simpleContent>
<xs:extension base="limited-string">
<xs:attribute name="min-version" type="version"
use="optional"/>
<xs:attribute name="max-version" type="version"
use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="database">
<xs:simpleContent>
<xs:extension base="databases">
<xs:attribute name="min-version" type="version"
use="optional"/>
<xs:attribute name="max-version" type="version"
use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="php">
<xs:simpleContent>
<xs:extension base="empty-string">
<xs:attribute name="min-int-size" type="bits" use="optional"
default="32"/>
<xs:attribute name="min-version" type="version"
use="optional"/>
<xs:attribute name="max-version" type="version"
use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="bits">
<xs:restriction base="xs:int">
<xs:enumeration value="32"/>
<xs:enumeration value="64"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="architecture">
<xs:restriction base="xs:string">
<xs:enumeration value="x86"/>
<xs:enumeration value="x86_64"/>
<xs:enumeration value="aarch"/>
<xs:enumeration value="aarch64"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="repair-steps">
<xs:sequence>
<xs:element name="pre-migration" type="steps" minOccurs="0"
maxOccurs="1"/>
<xs:element name="post-migration" type="steps" minOccurs="0"
maxOccurs="1"/>
<xs:element name="live-migration" type="steps" minOccurs="0"
maxOccurs="1"/>
<xs:element name="install" type="steps" minOccurs="0"
maxOccurs="1"/>
<xs:element name="uninstall" type="steps" minOccurs="0"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="jobs">
<xs:sequence>
<xs:element name="job" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="steps">
<xs:sequence>
<xs:element name="step" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="two-factor-providers">
<xs:sequence>
<xs:element name="provider" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="commands">
<xs:sequence>
<xs:element name="command" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="dashboard">
<xs:sequence>
<xs:element name="widget" type="php-class" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="fulltextsearch-provider">
<xs:simpleContent>
<xs:extension base="php-class">
<xs:attribute name="min-version" type="version" use="optional"/>
<xs:attribute name="max-version" type="version" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="fulltextsearch">
<xs:sequence>
<xs:element name="platform" type="php-class" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="provider" type="fulltextsearch-provider" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="trash">
<xs:sequence>
<xs:element name="backend" type="trash-backend" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="trash-backend">
<xs:simpleContent>
<xs:extension base="php-class">
<xs:attribute name="for" type="php-class" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="versions">
<xs:sequence>
<xs:element name="backend" type="versions-backend" minOccurs="1"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="versions-backend">
<xs:simpleContent>
<xs:extension base="php-class">
<xs:attribute name="for" type="php-class" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="php-class">
<xs:restriction base="xs:string">
<xs:pattern
value="[a-zA-Z_][0-9a-zA-Z_]*(\\[a-zA-Z_][0-9a-zA-Z_]*)*"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
@@ -0,0 +1,27 @@
-----BEGIN CERTIFICATE-----
MIIEojCCA4qgAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwezELMAkGA1UEBhMCREUx
GzAZBgNVBAgMEkJhZGVuLVd1ZXJ0dGVtYmVyZzEXMBUGA1UECgwOTmV4dGNsb3Vk
IEdtYkgxNjA0BgNVBAMMLU5leHRjbG91ZCBDb2RlIFNpZ25pbmcgSW50ZXJtZWRp
YXRlIEF1dGhvcml0eTAeFw0xNjA2MTIyMTA1MDZaFw00MTA2MDYyMTA1MDZaMGYx
CzAJBgNVBAYTAkRFMRswGQYDVQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxEjAQBgNV
BAcMCVN0dXR0Z2FydDEXMBUGA1UECgwOTmV4dGNsb3VkIEdtYkgxDTALBgNVBAMM
BGNvcmUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDUxcrn2DC892IX
8+dJjZVh9YeHF65n2ha886oeAizOuHBdWBfzqt+GoUYTOjqZF93HZMcwy0P+xyCf
Qqak5Ke9dybN06RXUuGP45k9UYBp03qzlUzCDalrkj+Jd30LqcSC1sjRTsfuhc+u
vH1IBuBnf7SMUJUcoEffbmmpAPlEcLHxlUGlGnz0q1e8UFzjbEFj3JucMO4ys35F
qZS4dhvCngQhRW3DaMlQLXEUL9k3kFV+BzlkPzVZEtSmk4HJujFCnZj1vMcjQBg/
Bqq1HCmUB6tulnGcxUzt/Z/oSIgnuGyENeke077W3EyryINL7EIyD4Xp7sxLizTM
FCFCjjH1AgMBAAGjggFDMIIBPzAJBgNVHRMEAjAAMBEGCWCGSAGG+EIBAQQEAwIG
QDAzBglghkgBhvhCAQ0EJhYkT3BlblNTTCBHZW5lcmF0ZWQgU2VydmVyIENlcnRp
ZmljYXRlMB0GA1UdDgQWBBQwc1H9AL8pRlW2e5SLCfPPqtqc0DCBpQYDVR0jBIGd
MIGagBRt6m6qqTcsPIktFz79Ru7DnnjtdKF+pHwwejELMAkGA1UEBhMCREUxGzAZ
BgNVBAgMEkJhZGVuLVd1ZXJ0dGVtYmVyZzESMBAGA1UEBwwJU3R1dHRnYXJ0MRcw
FQYDVQQKDA5OZXh0Y2xvdWQgR21iSDEhMB8GA1UEAwwYTmV4dGNsb3VkIFJvb3Qg
QXV0aG9yaXR5ggIQADAOBgNVHQ8BAf8EBAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUH
AwEwDQYJKoZIhvcNAQELBQADggEBADZ6+HV/+0NEH3nahTBFxO6nKyR/VWigACH0
naV0ecTcoQwDjKDNNFr+4S1WlHdwITlnNabC7v9rZ/6QvbkrOTuO9fOR6azp1EwW
2pixWqj0Sb9/dSIVRpSq+jpBE6JAiX44dSR7zoBxRB8DgVO2Afy0s80xEpr5JAzb
NYuPS7M5UHdAv2dr16fDcDIvn+vk92KpNh1NTeZFjBbRVQ9DXrgkRGW34TK8uSLI
YG6jnfJ6eJgTaO431ywWPXNg1mUMaT/+QBOgB299QVCKQU+lcZWptQt+RdsJUm46
NY/nARy4Oi4uOe88SuWITj9KhrFmEvrUlgM8FvoXA1ldrR7KiEg=
-----END CERTIFICATE-----
@@ -0,0 +1,49 @@
-----BEGIN X509 CRL-----
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
-----END X509 CRL-----
@@ -0,0 +1,46 @@
-----BEGIN CERTIFICATE-----
MIID1zCCAr+gAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwejELMAkGA1UEBhMCREUx
GzAZBgNVBAgMEkJhZGVuLVd1ZXJ0dGVtYmVyZzESMBAGA1UEBwwJU3R1dHRnYXJ0
MRcwFQYDVQQKDA5OZXh0Y2xvdWQgR21iSDEhMB8GA1UEAwwYTmV4dGNsb3VkIFJv
b3QgQXV0aG9yaXR5MB4XDTE2MDYxMjIxMDEwMloXDTQxMDYwNjIxMDEwMlowezEL
MAkGA1UEBhMCREUxGzAZBgNVBAgMEkJhZGVuLVd1ZXJ0dGVtYmVyZzEXMBUGA1UE
CgwOTmV4dGNsb3VkIEdtYkgxNjA0BgNVBAMMLU5leHRjbG91ZCBDb2RlIFNpZ25p
bmcgSW50ZXJtZWRpYXRlIEF1dGhvcml0eTCCASIwDQYJKoZIhvcNAQEBBQADggEP
ADCCAQoCggEBAJzBOypRqAhXeTB3XawW7UzwCxoovpMa0bP8fPzjeMMdCdPlZIYX
MshGHoQ4/VJyODOaq3H1AYRh20Kn/BKNAuVfRzcmY/7M5R09b0ts06l9tIVSbBeK
5krETjZtpt4crgukzQ6+8QhHE2DBdvPE7rds6EyBaiMRPNuGP1YrtGPQ+hYvajJL
yH3mq609ZZYFVOK9FuSxw5e5YBFp9Z6dNeFjnmEsYytWOhaJ+zPfQaL9JjLwxEM+
BJ1kpf/zblzL6FwUOeXP2+UJ5TAU4xh+9WsvFBR0b6iq77eYTl3eFM1QtaweCA23
OmZZZahCNLmcPA2iMyPZDGZ1mSW+h7+pMJkCAwEAAaNmMGQwHQYDVR0OBBYEFG3q
bqqpNyw8iS0XPv1G7sOeeO10MB8GA1UdIwQYMBaAFAQYAjwHzNjhemMwKilLlT4T
vZHIMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3
DQEBCwUAA4IBAQCWnDNA14Q+bw7X0S+riMjyTabtgF443eAQIvby9sU2cHtd7qua
p/311+H7gB4F/CE+/CUxdtC5AgaW4vWRL8ge9+6jhYUjvmqdyV5wbBFrLmnqYS4h
PnNWo5cjA7apA6SrIxnJAF8vNCeyEQgHD57VeIlK35S0GpqcouuCSQvCeSjKcojx
6t/NGHcetWucHAUymzOk11NMyYyEMJ/tfUwn3drqkb4jp4Tqu4ftZt/uioDX8Gc9
Aw+IaEHKfNnh9R//Vqc06Bad04ycI6jK4cVUpC/6I6tzoY6GXwZRbESkKUyLitlX
3EnBONP0UzEZmCilIwYYfevWGT+NWnpkmey7
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIID2jCCAsKgAwIBAgIJAKCc9xL4epmrMA0GCSqGSIb3DQEBCwUAMHoxCzAJBgNV
BAYTAkRFMRswGQYDVQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxEjAQBgNVBAcMCVN0
dXR0Z2FydDEXMBUGA1UECgwOTmV4dGNsb3VkIEdtYkgxITAfBgNVBAMMGE5leHRj
bG91ZCBSb290IEF1dGhvcml0eTAeFw0xNjA2MTIyMDU4MzVaFw00MTA2MDYyMDU4
MzVaMHoxCzAJBgNVBAYTAkRFMRswGQYDVQQIDBJCYWRlbi1XdWVydHRlbWJlcmcx
EjAQBgNVBAcMCVN0dXR0Z2FydDEXMBUGA1UECgwOTmV4dGNsb3VkIEdtYkgxITAf
BgNVBAMMGE5leHRjbG91ZCBSb290IEF1dGhvcml0eTCCASIwDQYJKoZIhvcNAQEB
BQADggEPADCCAQoCggEBAJuTxu0LpRExcpYJwMxc5N+YbEe7WVPIsLtKUNCXMfkc
aPlTpVydNi5zKQDpLQuHm5RE9u+L3sTck8yVj8DkgX9QfuRTbvg01paV+5ILY7Qn
47E8eHq6tf6MF0W20OxNRjcUCEoRA59AZV9FxkVGHniBx17Upk0BQXlZHViHZ9Ey
2Zhsw9ZetT0VCv9UGuN0Rr6T6fzgW84HoDWsesG7UwEpnct/hQf20w/iIhZspew7
RAHJZTOYnNSaBUnyiCf58SaOyxvmdfseItjMuE1FBR6bTWkLQ/a/1xH2FCk0izm5
1foZF0Ya0fAzVHwBkOVZeIuswjvuqgp/TkB6W0i73aUCAwEAAaNjMGEwHQYDVR0O
BBYEFAQYAjwHzNjhemMwKilLlT4TvZHIMB8GA1UdIwQYMBaAFAQYAjwHzNjhemMw
KilLlT4TvZHIMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMA0GCSqG
SIb3DQEBCwUAA4IBAQCBv40RAXMtMah61q6wYATw4q4cvIKLjKoyApHPHZhQnWwe
VLv/D2a26A8VwDNQ1LGv4NzzIDcpWz+pk+rXMNnyjXwr0AtKM2Vg07yKqkZB9J1c
duYm0j8FLdCHXIjRucgMA/wiwR4mB9PVGtQfCvUQl2Hfkiagkw31llGCXugQPsnh
vhfMWxkdVFAnzDoATWe2SDuuyyd5Sl4/LKn8HEysusaYCMpPDP+seZGjA0ukZ3F+
pO0PlAEb3OypRavz8iR8s+VbE0wdAX1mPByx8SU8Wkq76p4G261PvTrfYKnreU8z
b47G5k8BAiPCtNze/Ihul6lpLK6yk+FRXcZCl1sg
-----END CERTIFICATE-----
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,119 @@
{
"_comment" : "Array of mimetype aliases.",
"_comment2": "Any changes you make here will be overwritten on an update of Nextcloud.",
"_comment3": "Put any custom mappings in a new file mimetypealiases.json in the config/ folder of Nextcloud",
"_comment4": "After any change to mimetypealiases.json run:",
"_comment5": "./occ maintenance:mimetype:update-js",
"_comment6": "Otherwise your update won't propagate through the system.",
"application/coreldraw": "image",
"application/epub+zip": "text",
"application/font-sfnt": "font",
"application/font-woff": "font",
"application/gpx+xml": "location",
"application/gzip": "package/x-generic",
"application/illustrator": "image",
"application/javascript": "text/code",
"application/json": "text/code",
"application/msaccess": "file",
"application/msexcel": "x-office/spreadsheet",
"application/msonenote": "x-office/document",
"application/mspowerpoint": "x-office/presentation",
"application/msword": "x-office/document",
"application/octet-stream": "file",
"application/postscript": "image",
"application/rss+xml": "application/xml",
"application/vnd.android.package-archive": "package/x-generic",
"application/vnd.lotus-wordpro": "x-office/document",
"application/vnd.garmin.tcx+xml": "location",
"application/vnd.google-earth.kml+xml": "location",
"application/vnd.google-earth.kmz": "location",
"application/vnd.ms-excel": "x-office/spreadsheet",
"application/vnd.ms-excel.addin.macroEnabled.12": "x-office/spreadsheet",
"application/vnd.ms-excel.sheet.binary.macroEnabled.12": "x-office/spreadsheet",
"application/vnd.ms-excel.sheet.macroEnabled.12": "x-office/spreadsheet",
"application/vnd.ms-excel.template.macroEnabled.12": "x-office/spreadsheet",
"application/vnd.ms-fontobject": "font",
"application/vnd.ms-powerpoint": "x-office/presentation",
"application/vnd.ms-powerpoint.addin.macroEnabled.12": "x-office/presentation",
"application/vnd.ms-powerpoint.presentation.macroEnabled.12": "x-office/presentation",
"application/vnd.ms-powerpoint.slideshow.macroEnabled.12": "x-office/presentation",
"application/vnd.ms-powerpoint.template.macroEnabled.12": "x-office/presentation",
"application/vnd.ms-visio.drawing.macroEnabled.12": "application/vnd.visio",
"application/vnd.ms-visio.drawing": "application/vnd.visio",
"application/vnd.ms-visio.stencil.macroEnabled.12": "application/vnd.visio",
"application/vnd.ms-visio.stencil": "application/vnd.visio",
"application/vnd.ms-visio.template.macroEnabled.12": "application/vnd.visio",
"application/vnd.ms-visio.template": "application/vnd.visio",
"application/vnd.ms-word.document.macroEnabled.12": "x-office/document",
"application/vnd.ms-word.template.macroEnabled.12": "x-office/document",
"application/vnd.oasis.opendocument.presentation": "x-office/presentation",
"application/vnd.oasis.opendocument.presentation-template": "x-office/presentation",
"application/vnd.oasis.opendocument.spreadsheet": "x-office/spreadsheet",
"application/vnd.oasis.opendocument.spreadsheet-template": "x-office/spreadsheet",
"application/vnd.oasis.opendocument.text": "x-office/document",
"application/vnd.oasis.opendocument.text-master": "x-office/document",
"application/vnd.oasis.opendocument.text-template": "x-office/document",
"application/vnd.oasis.opendocument.graphics": "x-office/drawing",
"application/vnd.oasis.opendocument.graphics-template": "x-office/drawing",
"application/vnd.oasis.opendocument.text-web": "x-office/document",
"application/vnd.oasis.opendocument.text-flat-xml": "x-office/document",
"application/vnd.oasis.opendocument.spreadsheet-flat-xml": "x-office/spreadsheet",
"application/vnd.oasis.opendocument.graphics-flat-xml": "x-office/drawing",
"application/vnd.oasis.opendocument.presentation-flat-xml": "x-office/presentation",
"application/vnd.openxmlformats-officedocument.presentationml.presentation": "x-office/presentation",
"application/vnd.openxmlformats-officedocument.presentationml.slideshow": "x-office/presentation",
"application/vnd.openxmlformats-officedocument.presentationml.template": "x-office/presentation",
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": "x-office/spreadsheet",
"application/vnd.openxmlformats-officedocument.spreadsheetml.template": "x-office/spreadsheet",
"application/vnd.openxmlformats-officedocument.wordprocessingml.document": "x-office/document",
"application/vnd.openxmlformats-officedocument.wordprocessingml.template": "x-office/document",
"application/vnd.visio": "x-office/document",
"application/vnd.wordperfect": "x-office/document",
"application/x-7z-compressed": "package/x-generic",
"application/x-bzip2": "package/x-generic",
"application/x-cbr": "text",
"application/x-compressed": "package/x-generic",
"application/x-dcraw": "image",
"application/x-deb": "package/x-generic",
"application/x-fictionbook+xml": "text",
"application/x-font": "font",
"application/x-gimp": "image",
"application/x-gzip": "application/gzip",
"application/x-iwork-keynote-sffkey": "x-office/presentation",
"application/x-iwork-numbers-sffnumbers": "x-office/spreadsheet",
"application/x-iwork-pages-sffpages": "x-office/document",
"application/x-mobipocket-ebook": "text",
"application/x-perl": "text/code",
"application/x-photoshop": "image",
"application/x-php": "text/code",
"application/x-rar-compressed": "package/x-generic",
"application/x-tar": "package/x-generic",
"application/x-tex": "text",
"application/xml": "text/html",
"application/yaml": "text/code",
"application/zip": "package/x-generic",
"database": "file",
"httpd/unix-directory": "dir",
"text/css": "text/code",
"text/csv": "x-office/spreadsheet",
"text/html": "text/code",
"text/x-c": "text/code",
"text/x-c++src": "text/code",
"text/x-h": "text/code",
"text/x-java-source": "text/code",
"text/x-ldif": "text/code",
"text/x-python": "text/code",
"text/x-shellscript": "text/code",
"web": "text/code",
"application/internet-shortcut": "link",
"application/km": "mindmap",
"application/x-freemind": "mindmap",
"application/vnd.xmind.workbook": "mindmap",
"image/targa": "image/tga",
"application/vnd.openxmlformats-officedocument.wordprocessingml.document.oform": "x-office/form",
"application/vnd.openxmlformats-officedocument.wordprocessingml.document.docxf": "x-office/form-template",
"image/x-emf": "image/emf"
}
@@ -0,0 +1,234 @@
{
"_comment" : "Array mapping file extensions to mimetypes (in alphabetical order)",
"_comment2": "The first index in the mime type array is the assumed correct mimetype",
"_comment3": "and the second (if present) is a secure alternative",
"_comment4": "Any changes you make here will be overwritten on an update of Nextcloud",
"_comment5": "Put any custom mappings in a new file mimetypemapping.json in the config/ folder of Nextcloud",
"3gp": ["video/3gpp"],
"7z": ["application/x-7z-compressed"],
"accdb": ["application/msaccess"],
"adoc": ["text/asciidoc", "text/plain"],
"ai": ["application/illustrator"],
"apk": ["application/vnd.android.package-archive"],
"arw": ["image/x-dcraw"],
"asciidoc": ["text/asciidoc", "text/plain"],
"avi": ["video/x-msvideo"],
"bash": ["text/x-shellscript"],
"bat": ["application/x-msdos-program"],
"bin": ["application/x-bin"],
"blend": ["application/x-blender"],
"bmp": ["image/bmp"],
"bpg": ["image/bpg"],
"bz2": ["application/x-bzip2"],
"c": ["text/x-c"],
"c++": ["text/x-c++src"],
"cb7": ["application/comicbook+7z"],
"cba": ["application/comicbook+ace"],
"cbr": ["application/comicbook+rar"],
"cbt": ["application/comicbook+tar"],
"cbtc": ["application/comicbook+truecrypt"],
"cbz": ["application/comicbook+zip"],
"cc": ["text/x-c"],
"cdr": ["application/coreldraw"],
"class": ["application/java"],
"cmd": ["application/cmd"],
"cnf": ["text/plain"],
"conf": ["text/plain"],
"cpp": ["text/x-c++src"],
"cr2": ["image/x-dcraw"],
"css": ["text/css"],
"csv": ["text/csv"],
"cvbdl": ["application/x-cbr"],
"dcr": ["image/x-dcraw"],
"deb": ["application/x-deb"],
"dng": ["image/x-dcraw"],
"doc": ["application/msword"],
"docm": ["application/vnd.ms-word.document.macroEnabled.12"],
"docx": ["application/vnd.openxmlformats-officedocument.wordprocessingml.document"],
"docxf": ["application/vnd.openxmlformats-officedocument.wordprocessingml.document.docxf"],
"dot": ["application/msword"],
"dotx": ["application/vnd.openxmlformats-officedocument.wordprocessingml.template"],
"dv": ["video/dv"],
"emf": ["image/emf"],
"eml": ["message/rfc822", "text/plain"],
"eot": ["application/vnd.ms-fontobject"],
"eps": ["application/postscript"],
"epub": ["application/epub+zip"],
"erf": ["image/x-dcraw"],
"exe": ["application/x-ms-dos-executable"],
"fb2": ["application/x-fictionbook+xml", "text/plain"],
"flac": ["audio/flac"],
"flv": ["video/x-flv"],
"fodg": ["application/vnd.oasis.opendocument.graphics-flat-xml"],
"fodp": ["application/vnd.oasis.opendocument.presentation-flat-xml"],
"fods": ["application/vnd.oasis.opendocument.spreadsheet-flat-xml"],
"fodt": ["application/vnd.oasis.opendocument.text-flat-xml"],
"gif": ["image/gif"],
"gpx": ["application/gpx+xml"],
"gz": ["application/gzip"],
"gzip": ["application/gzip"],
"h": ["text/x-h"],
"heic": ["image/heic"],
"heif": ["image/heif"],
"hh": ["text/x-h"],
"hpp": ["text/x-h"],
"htaccess": ["text/plain"],
"htm": ["text/html", "text/plain"],
"html": ["text/html", "text/plain"],
"ical": ["text/calendar"],
"ico": ["image/x-icon"],
"ics": ["text/calendar"],
"iiq": ["image/x-dcraw"],
"impress": ["text/impress"],
"java": ["text/x-java-source"],
"jp2": ["image/jp2"],
"jpeg": ["image/jpeg"],
"jpg": ["image/jpeg"],
"jps": ["image/jpeg"],
"js": ["application/javascript", "text/plain"],
"json": ["application/json", "text/plain"],
"k25": ["image/x-dcraw"],
"kdbx": ["application/x-kdbx"],
"kdc": ["image/x-dcraw"],
"key": ["application/x-iwork-keynote-sffkey"],
"keynote": ["application/x-iwork-keynote-sffkey"],
"km": ["application/km"],
"kml": ["application/vnd.google-earth.kml+xml"],
"kmz": ["application/vnd.google-earth.kmz"],
"kra": ["application/x-krita"],
"ldif": ["text/x-ldif"],
"lwp": ["application/vnd.lotus-wordpro"],
"m2t": ["video/mp2t"],
"m3u": ["audio/mpegurl"],
"m3u8": ["audio/mpegurl"],
"m4a": ["audio/mp4"],
"m4b": ["audio/m4b"],
"m4v": ["video/mp4"],
"markdown": ["text/markdown"],
"md": ["text/markdown"],
"mdb": ["application/msaccess"],
"mdown": ["text/markdown"],
"mdwn": ["text/markdown"],
"mef": ["image/x-dcraw"],
"mkd": ["text/markdown"],
"mkv": ["video/x-matroska"],
"mm": ["application/x-freemind"],
"mobi": ["application/x-mobipocket-ebook"],
"mov": ["video/quicktime"],
"mp3": ["audio/mpeg"],
"mp4": ["video/mp4"],
"mpeg": ["video/mpeg"],
"mpg": ["video/mpeg"],
"mpo": ["image/jpeg"],
"msg": ["application/vnd.ms-outlook"],
"msi": ["application/x-msi"],
"mt2s": ["video/MP2T"],
"mts": ["video/MP2T"],
"nef": ["image/x-dcraw"],
"numbers": ["application/x-iwork-numbers-sffnumbers"],
"odf": ["application/vnd.oasis.opendocument.formula"],
"odg": ["application/vnd.oasis.opendocument.graphics"],
"odp": ["application/vnd.oasis.opendocument.presentation"],
"ods": ["application/vnd.oasis.opendocument.spreadsheet"],
"odt": ["application/vnd.oasis.opendocument.text"],
"oform": ["application/vnd.openxmlformats-officedocument.wordprocessingml.document.oform"],
"oga": ["audio/ogg"],
"ogg": ["audio/ogg"],
"ogv": ["video/ogg"],
"one": ["application/msonenote"],
"opus": ["audio/ogg"],
"orf": ["image/x-dcraw"],
"org": ["text/org", "text/plain"],
"otf": ["application/font-sfnt"],
"otg": ["application/vnd.oasis.opendocument.graphics-template"],
"otp": ["application/vnd.oasis.opendocument.presentation-template"],
"ots": ["application/vnd.oasis.opendocument.spreadsheet-template"],
"ott": ["application/vnd.oasis.opendocument.text-template"],
"pages": ["application/x-iwork-pages-sffpages"],
"pdf": ["application/pdf"],
"pef": ["image/x-dcraw"],
"pfb": ["application/x-font"],
"php": ["application/x-php", "text/x-php"],
"pl": ["application/x-perl"],
"pls": ["audio/x-scpls"],
"png": ["image/png"],
"pot": ["application/vnd.ms-powerpoint"],
"potm": ["application/vnd.ms-powerpoint.template.macroEnabled.12"],
"potx": ["application/vnd.openxmlformats-officedocument.presentationml.template"],
"ppa": ["application/vnd.ms-powerpoint"],
"ppam": ["application/vnd.ms-powerpoint.addin.macroEnabled.12"],
"pps": ["application/vnd.ms-powerpoint"],
"ppsm": ["application/vnd.ms-powerpoint.slideshow.macroEnabled.12"],
"ppsx": ["application/vnd.openxmlformats-officedocument.presentationml.slideshow"],
"ppt": ["application/vnd.ms-powerpoint"],
"pptm": ["application/vnd.ms-powerpoint.presentation.macroEnabled.12"],
"pptx": ["application/vnd.openxmlformats-officedocument.presentationml.presentation"],
"ps": ["application/postscript"],
"psd": ["application/x-photoshop"],
"py": ["text/x-python"],
"raf": ["image/x-dcraw"],
"rar": ["application/x-rar-compressed"],
"reveal": ["text/reveal"],
"rss": ["application/rss+xml"],
"rtf": ["text/rtf"],
"rw2": ["image/x-dcraw"],
"schema": ["text/plain"],
"sgf": ["application/sgf"],
"sgi": ["image/sgi"],
"sh-lib": ["text/x-shellscript"],
"sh": ["text/x-shellscript"],
"sr2": ["image/x-dcraw"],
"srf": ["image/x-dcraw"],
"svg": ["image/svg+xml", "text/plain"],
"swf": ["application/x-shockwave-flash", "application/octet-stream"],
"tar.bz2": ["application/x-bzip2"],
"tar.gz": ["application/x-compressed"],
"tar": ["application/x-tar"],
"tbz2": ["application/x-bzip2"],
"tcx": ["application/vnd.garmin.tcx+xml"],
"tex": ["application/x-tex"],
"tga": ["image/tga"],
"tgz": ["application/x-compressed"],
"tif": ["image/tiff"],
"tiff": ["image/tiff"],
"ttf": ["application/font-sfnt"],
"txt": ["text/plain"],
"url": ["application/internet-shortcut"],
"vcard": ["text/vcard"],
"vcf": ["text/vcard"],
"vob": ["video/dvd"],
"vsd": ["application/vnd.visio"],
"vsdm": ["application/vnd.ms-visio.drawing.macroEnabled.12"],
"vsdx": ["application/vnd.ms-visio.drawing"],
"vssm": ["application/vnd.ms-visio.stencil.macroEnabled.12"],
"vssx": ["application/vnd.ms-visio.stencil"],
"vstm": ["application/vnd.ms-visio.template.macroEnabled.12"],
"vstx": ["application/vnd.ms-visio.template"],
"wav": ["audio/wav"],
"weba": ["audio/webm"],
"webloc": ["application/internet-shortcut"],
"webm": ["video/webm"],
"webp": ["image/webp"],
"wmv": ["video/x-ms-wmv"],
"woff": ["application/font-woff"],
"wpd": ["application/vnd.wordperfect"],
"xcf": ["application/x-gimp"],
"xla": ["application/vnd.ms-excel"],
"xlam": ["application/vnd.ms-excel.addin.macroEnabled.12"],
"xls": ["application/vnd.ms-excel"],
"xlsb": ["application/vnd.ms-excel.sheet.binary.macroEnabled.12"],
"xlsm": ["application/vnd.ms-excel.sheet.macroEnabled.12"],
"xlsx": ["application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"],
"xlt": ["application/vnd.ms-excel"],
"xltm": ["application/vnd.ms-excel.template.macroEnabled.12"],
"xltx": ["application/vnd.openxmlformats-officedocument.spreadsheetml.template"],
"xmind": ["application/vnd.xmind.workbook"],
"xml": ["application/xml", "text/plain"],
"xrf": ["image/x-dcraw"],
"yaml": ["application/yaml", "text/plain"],
"yml": ["application/yaml", "text/plain"],
"zip": ["application/zip"]
}
File diff suppressed because it is too large Load Diff
+53
View File
@@ -0,0 +1,53 @@
<?php
declare(strict_types=1);
/**
* @copyright Copyright (c) 2019 Daniel Kesselberg <mail@danielkesselberg.de>
*
* @author Daniel Kesselberg <mail@danielkesselberg.de>
*
* @license GNU AGPL version 3 or any later version
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
if (!extension_loaded('intl')) {
echo 'Intl extension is required to run this script.';
exit(1);
}
require '../3rdparty/autoload.php';
$locales = array_map(static function (string $localeCode) {
return [
'code' => $localeCode,
'name' => Locale::getDisplayName($localeCode, 'en')
];
}, ResourceBundle::getLocales(''));
$locales = array_filter($locales, static function (array $locale) {
return is_array(Punic\Data::explodeLocale($locale['code']));
});
$locales = array_values($locales);
if (file_put_contents(__DIR__ . '/locales.json', json_encode($locales, JSON_PRETTY_PRINT)) === false) {
echo 'Failed to update locales.json';
exit(1);
}
echo 'Updated locales.json. Don\'t forget to commit the result.';
exit(0);