First demo of image editor
This commit is contained in:
commit
7899310a58
18
.eslintrc.cjs
Normal file
18
.eslintrc.cjs
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
module.exports = {
|
||||||
|
root: true,
|
||||||
|
env: { browser: true, es2020: true },
|
||||||
|
extends: [
|
||||||
|
'eslint:recommended',
|
||||||
|
'plugin:@typescript-eslint/recommended',
|
||||||
|
'plugin:react-hooks/recommended',
|
||||||
|
],
|
||||||
|
ignorePatterns: ['dist', '.eslintrc.cjs', "src/components/@pqina/**"],
|
||||||
|
parser: '@typescript-eslint/parser',
|
||||||
|
plugins: ['react-refresh'],
|
||||||
|
rules: {
|
||||||
|
'react-refresh/only-export-components': [
|
||||||
|
'warn',
|
||||||
|
{ allowConstantExport: true },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
}
|
24
.gitignore
vendored
Normal file
24
.gitignore
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
# Logs
|
||||||
|
logs
|
||||||
|
*.log
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
pnpm-debug.log*
|
||||||
|
lerna-debug.log*
|
||||||
|
|
||||||
|
node_modules
|
||||||
|
dist
|
||||||
|
dist-ssr
|
||||||
|
*.local
|
||||||
|
|
||||||
|
# Editor directories and files
|
||||||
|
.vscode/*
|
||||||
|
!.vscode/extensions.json
|
||||||
|
.idea
|
||||||
|
.DS_Store
|
||||||
|
*.suo
|
||||||
|
*.ntvs*
|
||||||
|
*.njsproj
|
||||||
|
*.sln
|
||||||
|
*.sw?
|
41
Dockerfile
Normal file
41
Dockerfile
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
# ---------------------------------------------------------------------------- #
|
||||||
|
# Base image for building from
|
||||||
|
FROM node:18-alpine AS base
|
||||||
|
# ---------------------------------------------------------------------------- #
|
||||||
|
# Install dependencies of project
|
||||||
|
# Choosing the right package manager
|
||||||
|
FROM base AS deps
|
||||||
|
RUN apk add --no-cache libc6-compat git
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
ARG YARN_CACHE_FOLDER=/var/yarn/.cache
|
||||||
|
RUN yarn config set cache-folder $YARN_CACHE_FOLDER # just to be explicit
|
||||||
|
RUN --mount=type=cache,mode=0777,target=$YARN_CACHE_FOLDER yarn cache list
|
||||||
|
|
||||||
|
COPY package.json yarn.lock* package-lock.json* pnpm-lock.yaml* ./
|
||||||
|
RUN --mount=type=cache,mode=0777,target=$YARN_CACHE_FOLDER \
|
||||||
|
if [ -f yarn.lock ]; then YARN_CACHE_FOLDER=$YARN_CACHE_FOLDER yarn --frozen-lockfile; \
|
||||||
|
elif [ -f package-lock.json ]; then npm ci; \
|
||||||
|
elif [ -f pnpm-lock.yaml ]; then yarn global add pnpm && pnpm i --frozen-lockfile; \
|
||||||
|
else echo "Lockfile not found." && exit 1; \
|
||||||
|
fi
|
||||||
|
# ---------------------------------------------------------------------------- #
|
||||||
|
# Rebuild the source code only when needed
|
||||||
|
FROM base AS builder
|
||||||
|
WORKDIR /app
|
||||||
|
COPY --from=deps /app/node_modules ./node_modules
|
||||||
|
COPY . .
|
||||||
|
|
||||||
|
RUN yarn build
|
||||||
|
# ---------------------------------------------------------------------------- #
|
||||||
|
FROM nginx:1.23.1-alpine
|
||||||
|
|
||||||
|
COPY ./nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf
|
||||||
|
COPY --from=builder /app/dist /usr/share/nginx/html
|
||||||
|
|
||||||
|
RUN touch /var/run/nginx.pid
|
||||||
|
RUN chown -R nginx:nginx /var/run/nginx.pid /var/cache/nginx /var/log/nginx /etc/nginx/conf.d
|
||||||
|
|
||||||
|
EXPOSE 80
|
||||||
|
|
||||||
|
CMD ["nginx", "-g", "daemon off;"]
|
30
README.md
Normal file
30
README.md
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
# React + TypeScript + Vite
|
||||||
|
|
||||||
|
This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
|
||||||
|
|
||||||
|
Currently, two official plugins are available:
|
||||||
|
|
||||||
|
- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh
|
||||||
|
- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh
|
||||||
|
|
||||||
|
## Expanding the ESLint configuration
|
||||||
|
|
||||||
|
If you are developing a production application, we recommend updating the configuration to enable type aware lint rules:
|
||||||
|
|
||||||
|
- Configure the top-level `parserOptions` property like this:
|
||||||
|
|
||||||
|
```js
|
||||||
|
export default {
|
||||||
|
// other rules...
|
||||||
|
parserOptions: {
|
||||||
|
ecmaVersion: 'latest',
|
||||||
|
sourceType: 'module',
|
||||||
|
project: ['./tsconfig.json', './tsconfig.node.json'],
|
||||||
|
tsconfigRootDir: __dirname,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
- Replace `plugin:@typescript-eslint/recommended` to `plugin:@typescript-eslint/recommended-type-checked` or `plugin:@typescript-eslint/strict-type-checked`
|
||||||
|
- Optionally add `plugin:@typescript-eslint/stylistic-type-checked`
|
||||||
|
- Install [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) and add `plugin:react/recommended` & `plugin:react/jsx-runtime` to the `extends` list
|
6
docker-compose.yml
Normal file
6
docker-compose.yml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
version: "3.3"
|
||||||
|
services:
|
||||||
|
kaiser-demo-image-editor:
|
||||||
|
ports:
|
||||||
|
- 8000:80
|
||||||
|
build: .
|
13
index.html
Normal file
13
index.html
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
<title>Kaiser Demo Image editor</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="root"></div>
|
||||||
|
<script type="module" src="/src/main.tsx"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
10
nginx/conf.d/default.conf
Normal file
10
nginx/conf.d/default.conf
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
server_tokens off;
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
root /usr/share/nginx/html;
|
||||||
|
index index.html;
|
||||||
|
server_name localhost;
|
||||||
|
location / {
|
||||||
|
try_files $uri $uri/ /index.html;
|
||||||
|
}
|
||||||
|
}
|
3177
package-lock.json
generated
Normal file
3177
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
37
package.json
Normal file
37
package.json
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
{
|
||||||
|
"name": "react-test",
|
||||||
|
"private": true,
|
||||||
|
"version": "0.0.0",
|
||||||
|
"type": "module",
|
||||||
|
"scripts": {
|
||||||
|
"dev": "vite",
|
||||||
|
"build": "tsc && vite build",
|
||||||
|
"lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
|
||||||
|
"preview": "vite preview"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@pqina/pintura": "^8.71.2",
|
||||||
|
"@pqina/react-pintura": "^9.0.3",
|
||||||
|
"@pqina/filepond-plugin-image-editor": "^9.0.3",
|
||||||
|
"i": "^0.3.7",
|
||||||
|
"filepond": "^4.x",
|
||||||
|
"filepond-plugin-file-poster": "^2.x",
|
||||||
|
"filepond-plugin-file-validate-type": "^1.2.8",
|
||||||
|
"npm": "^10.3.0",
|
||||||
|
"react": "^18.2.0",
|
||||||
|
"react-dom": "^18.2.0",
|
||||||
|
"styled-components": "^6.1.1"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@types/react": "^18.2.37",
|
||||||
|
"@types/react-dom": "^18.2.15",
|
||||||
|
"@typescript-eslint/eslint-plugin": "^6.10.0",
|
||||||
|
"@typescript-eslint/parser": "^6.10.0",
|
||||||
|
"@vitejs/plugin-react-swc": "^3.5.0",
|
||||||
|
"eslint": "^8.53.0",
|
||||||
|
"eslint-plugin-react-hooks": "^4.6.0",
|
||||||
|
"eslint-plugin-react-refresh": "^0.4.4",
|
||||||
|
"typescript": "^5.2.2",
|
||||||
|
"vite": "^5.0.0"
|
||||||
|
}
|
||||||
|
}
|
BIN
public/image.jpeg
Normal file
BIN
public/image.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 83 KiB |
1
public/vite.svg
Normal file
1
public/vite.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
|
After Width: | Height: | Size: 1.5 KiB |
86
src/app-image.tsx
Normal file
86
src/app-image.tsx
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
|
||||||
|
import './components/@pqina/pintura/pintura.css';
|
||||||
|
import { useRef, useState } from 'react';
|
||||||
|
|
||||||
|
// react-pintura
|
||||||
|
import { PinturaEditor } from './components/@pqina/react-pintura';
|
||||||
|
|
||||||
|
// pintura
|
||||||
|
import './components/@pqina/pintura/pintura.css';
|
||||||
|
import {
|
||||||
|
// editor
|
||||||
|
locale_en_gb,
|
||||||
|
createDefaultImageReader,
|
||||||
|
createDefaultImageWriter,
|
||||||
|
createDefaultShapePreprocessor,
|
||||||
|
|
||||||
|
// plugins
|
||||||
|
setPlugins,
|
||||||
|
plugin_crop,
|
||||||
|
plugin_crop_locale_en_gb,
|
||||||
|
plugin_finetune,
|
||||||
|
plugin_finetune_locale_en_gb,
|
||||||
|
plugin_finetune_defaults,
|
||||||
|
plugin_filter,
|
||||||
|
plugin_filter_locale_en_gb,
|
||||||
|
plugin_filter_defaults,
|
||||||
|
plugin_annotate,
|
||||||
|
plugin_annotate_locale_en_gb,
|
||||||
|
markup_editor_defaults,
|
||||||
|
markup_editor_locale_en_gb,
|
||||||
|
} from './components/@pqina/pintura';
|
||||||
|
|
||||||
|
setPlugins(plugin_crop, plugin_finetune, plugin_filter, plugin_annotate);
|
||||||
|
|
||||||
|
const editorDefaults = {
|
||||||
|
imageReader: createDefaultImageReader(),
|
||||||
|
imageWriter: createDefaultImageWriter(),
|
||||||
|
shapePreprocessor: createDefaultShapePreprocessor(),
|
||||||
|
...plugin_finetune_defaults,
|
||||||
|
...plugin_filter_defaults,
|
||||||
|
...markup_editor_defaults,
|
||||||
|
locale: {
|
||||||
|
...locale_en_gb,
|
||||||
|
...plugin_crop_locale_en_gb,
|
||||||
|
...plugin_finetune_locale_en_gb,
|
||||||
|
...plugin_filter_locale_en_gb,
|
||||||
|
...plugin_annotate_locale_en_gb,
|
||||||
|
...markup_editor_locale_en_gb,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
export default function AppImage() {
|
||||||
|
const [inlineResult, setInlineResult] = useState("");
|
||||||
|
const editorRef = useRef<PinturaEditor>(null);
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div style={{
|
||||||
|
height: "80dvh",
|
||||||
|
width: "100dvw"
|
||||||
|
}}>
|
||||||
|
<PinturaEditor
|
||||||
|
{...editorDefaults}
|
||||||
|
|
||||||
|
src="./image.jpeg"
|
||||||
|
ref={editorRef}
|
||||||
|
onLoad={() => {
|
||||||
|
|
||||||
|
// not yet set
|
||||||
|
if (!editorRef.current) return;
|
||||||
|
|
||||||
|
// Example using editor ref
|
||||||
|
const { editor } = editorRef.current;
|
||||||
|
|
||||||
|
// Now we can access properties and methods
|
||||||
|
editor.imageCropAspectRatio = 1;
|
||||||
|
}}
|
||||||
|
onProcess={(res: {dest: File}) => {
|
||||||
|
setInlineResult(URL.createObjectURL(res.dest))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/>
|
||||||
|
|
||||||
|
{inlineResult && <img src={inlineResult} alt="" />}
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
20
src/components/@pqina/filepond-plugin-image-editor/README.md
Normal file
20
src/components/@pqina/filepond-plugin-image-editor/README.md
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
# FilePond Plugin Image Editor
|
||||||
|
|
||||||
|
This package makes it easy to connect [FilePond](https://pqina.nl/filepond) with [Pintura](https://pqina.nl/pintura).
|
||||||
|
|
||||||
|
Visit https://pqina.nl/pintura for more details.
|
||||||
|
|
||||||
|
Example projects:
|
||||||
|
|
||||||
|
- https://github.com/pqina/pintura-example-javascript
|
||||||
|
- https://github.com/pqina/pintura-example-jquery
|
||||||
|
- https://github.com/pqina/pintura-example-react
|
||||||
|
- https://github.com/pqina/pintura-example-react-typescript
|
||||||
|
- https://github.com/pqina/pintura-example-vue-2
|
||||||
|
- https://github.com/pqina/pintura-example-vue-3
|
||||||
|
- https://github.com/pqina/pintura-example-angular
|
||||||
|
- https://github.com/pqina/pintura-example-nextjs
|
||||||
|
- https://github.com/pqina/pintura-example-nuxt-2
|
||||||
|
- https://github.com/pqina/pintura-example-nuxt-3
|
||||||
|
- https://github.com/pqina/pintura-example-svelte
|
||||||
|
- https://github.com/pqina/pintura-example-sveltekit
|
@ -0,0 +1,28 @@
|
|||||||
|
{
|
||||||
|
"name": "@pqina/filepond-plugin-image-editor",
|
||||||
|
"version": "9.0.3",
|
||||||
|
"browser": "dist/FilePondPluginImageEditor.js",
|
||||||
|
"main": "dist/FilePondPluginImageEditor.js",
|
||||||
|
"types": "dist/FilePondPluginImageEditor.d.ts",
|
||||||
|
"author": "Rik Schennink at PQINA",
|
||||||
|
"homepage": "https://pqina.nl/pintura/",
|
||||||
|
"license": "https://pqina.nl/pintura/license/",
|
||||||
|
"description": "A FilePond plugin to connect with Pintura",
|
||||||
|
"type": "module",
|
||||||
|
"files": [
|
||||||
|
"dist"
|
||||||
|
],
|
||||||
|
"scripts": {
|
||||||
|
"dev": "vite",
|
||||||
|
"build": "vite build && cp -rf src/FilePondPluginImageEditor.d.ts dist/FilePondPluginImageEditor.d.ts",
|
||||||
|
"preview": "vite preview"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"filepond": "4.x"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"vite": "^4.3.5",
|
||||||
|
"tslib": "^2.5.0",
|
||||||
|
"typescript": "^5.0.4"
|
||||||
|
}
|
||||||
|
}
|
2804
src/components/@pqina/pintura/CHANGELOG.md
Normal file
2804
src/components/@pqina/pintura/CHANGELOG.md
Normal file
File diff suppressed because it is too large
Load Diff
113
src/components/@pqina/pintura/README.md
Normal file
113
src/components/@pqina/pintura/README.md
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
# Pintura Test Version
|
||||||
|
|
||||||
|
This package is for testing Pintura in your project. This version of Pintura will overlay a watermark on top of the editor and output image. You can purchase a license on the [Pintura product page](https://pqina.nl/pintura/).
|
||||||
|
|
||||||
|
Documentation: https://pqina.nl/pintura/docs/
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm install @pqina/pintura
|
||||||
|
```
|
||||||
|
|
||||||
|
If you're using Svelte, Vue, React, or Angular, you can install the matching adapter components like this.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm install @pqina/svelte-pintura
|
||||||
|
```
|
||||||
|
|
||||||
|
## Example implementations
|
||||||
|
|
||||||
|
Use one of the example projects below as a starting point or guideline.
|
||||||
|
|
||||||
|
JavaScript:
|
||||||
|
|
||||||
|
- [JavaScript](https://github.com/pqina/pintura-example-javascript)
|
||||||
|
- [PinturaInput](https://github.com/pqina/pintura-example-pintura-input)
|
||||||
|
- [CustomElement](https://github.com/pqina/pintura-example-custom-element)
|
||||||
|
|
||||||
|
Frameworks:
|
||||||
|
|
||||||
|
- [jQuery](https://github.com/pqina/pintura-example-jquery)
|
||||||
|
- [Angular](https://github.com/pqina/pintura-example-angular)
|
||||||
|
- [Vue 2](https://github.com/pqina/pintura-example-vue-2)
|
||||||
|
- [Vue 3](https://github.com/pqina/pintura-example-vue-3)
|
||||||
|
- [Nuxt 2](https://github.com/pqina/pintura-example-nuxt-2)
|
||||||
|
- [Nuxt 3](https://github.com/pqina/pintura-example-nuxt-3)
|
||||||
|
- [Svelte](https://github.com/pqina/pintura-example-svelte)
|
||||||
|
- [SvelteKit](https://github.com/pqina/pintura-example-sveltekit)
|
||||||
|
- [React](https://github.com/pqina/pintura-example-react)
|
||||||
|
- [React TypeScript](https://github.com/pqina/pintura-example-react-typescript)
|
||||||
|
- [NextJS](https://github.com/pqina/pintura-example-nextjs)
|
||||||
|
- [React Native](https://github.com/pqina/pintura-example-react-native)
|
||||||
|
- [React Native TypeScript](https://github.com/pqina/pintura-example-react-native-typescript)
|
||||||
|
- [Cordova](https://github.com/pqina/pintura-example-cordova)
|
||||||
|
- [Capacitor](https://github.com/pqina/pintura-example-capacitor)
|
||||||
|
- [Ionic 6](https://github.com/pqina/pintura-example-ionic-6)
|
||||||
|
|
||||||
|
File upload libraries:
|
||||||
|
|
||||||
|
- [FilePond](https://github.com/pqina/pintura-example-filepond)
|
||||||
|
- [jQuery File Upload](https://github.com/pqina/pintura-example-jquery-file-upload)
|
||||||
|
- [React Dropzone](https://github.com/pqina/pintura-example-react-dropzone)
|
||||||
|
- [Dropzone](https://github.com/pqina/pintura-example-dropzone)
|
||||||
|
- [Uppy](https://github.com/pqina/pintura-example-uppy)
|
||||||
|
|
||||||
|
## Components and Adapters
|
||||||
|
|
||||||
|
Individual components can be found below:
|
||||||
|
|
||||||
|
- [PinturaInput](https://github.com/pqina/pintura-component-pintura-input)
|
||||||
|
- [Vue](https://github.com/pqina/pintura-component-vue)
|
||||||
|
- [React](https://github.com/pqina/pintura-component-react)
|
||||||
|
- [Angular](https://github.com/pqina/pintura-component-angular)
|
||||||
|
- [Svelte](https://github.com/pqina/pintura-component-svelte)
|
||||||
|
- [React Native](https://github.com/pqina/pintura-component-react-native)
|
||||||
|
|
||||||
|
Adapters can be found here:
|
||||||
|
|
||||||
|
- [jQuery](https://github.com/pqina/pintura-adapter-jquery)
|
||||||
|
- [FilePond](https://github.com/pqina/filepond-plugin-image-editor)
|
||||||
|
- [Uppy](https://github.com/pqina/pintura-adapter-uppy)
|
||||||
|
- [Dropzone](https://github.com/pqina/pintura-adapter-dropzone)
|
||||||
|
|
||||||
|
## Compatibility
|
||||||
|
|
||||||
|
Pintura works on all modern browsers and devices.
|
||||||
|
|
||||||
|
- Chrome
|
||||||
|
- Firefox
|
||||||
|
- Edge 18+
|
||||||
|
- Safari 10+
|
||||||
|
- Opera
|
||||||
|
- Chrome for Android
|
||||||
|
- Firefox Android
|
||||||
|
- iOS Safari 10+
|
||||||
|
- Chrome for iOS
|
||||||
|
- Firefox iOS
|
||||||
|
|
||||||
|
### Safari 11 and 12
|
||||||
|
|
||||||
|
- Safari 11 (global usage 0.05%)
|
||||||
|
- Safari 12 (global usage 0.01%)
|
||||||
|
|
||||||
|
To add support for these browsers we need to polyfill Pointer Events.
|
||||||
|
Download polyfill here: https://github.com/Rich-Harris/Points
|
||||||
|
|
||||||
|
### Safari 10 and Edge 18
|
||||||
|
|
||||||
|
- Safari 10 (global usage 0.01%)
|
||||||
|
- Edge 18 (global usage 0.23%)
|
||||||
|
|
||||||
|
These browsers don't fully support JavaScript modules and will require polyfills to function correctly. To make Pintura Image Editor work on these browsers you'll need to load the IIFE version or transpile a compatible version yourself.
|
||||||
|
|
||||||
|
Required polyfills for Edge 18:
|
||||||
|
|
||||||
|
- Symbol.asyncIterator
|
||||||
|
- HTMLCanvasElement.prototype.toBlob
|
||||||
|
|
||||||
|
Include this URL in your page to polyfill both the APIs above: https://polyfill.io/v3/polyfill.min.js?features=Symbol.asyncIterator%2CHTMLCanvasElement.prototype.toBlob
|
||||||
|
|
||||||
|
### Internet Explorer 11
|
||||||
|
|
||||||
|
Internet Explorer 11 is not supported, global usage is at around 0.5%, it is end of life.
|
31062
src/components/@pqina/pintura/fixed-on.js
Normal file
31062
src/components/@pqina/pintura/fixed-on.js
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,5 @@
|
|||||||
|
export default {
|
||||||
|
annotateLabel: 'Anmerken',
|
||||||
|
annotateIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M17.086 2.914a2.828 2.828 0 1 1 4 4l-14.5 14.5-5.5 1.5 1.5-5.5 14.5-14.5z"/></g>',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './de_DE.js';
|
235
src/components/@pqina/pintura/locale/de_DE/core/de_DE.js
Normal file
235
src/components/@pqina/pintura/locale/de_DE/core/de_DE.js
Normal file
@ -0,0 +1,235 @@
|
|||||||
|
const IconCross =
|
||||||
|
'<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M18 6L6 18M6 6l12 12"></path></path></g>';
|
||||||
|
|
||||||
|
const CharacterA =
|
||||||
|
'<path fill="none" d="M9 15 L12 9 L15 15 M10 13.5 h3" stroke="currentColor" stroke-width=".125em"/>';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
// generic
|
||||||
|
labelReset: 'Zurücksetzen',
|
||||||
|
labelDefault: 'Standard',
|
||||||
|
labelAuto: 'Autom.',
|
||||||
|
labelNone: 'Keine',
|
||||||
|
labelEdit: 'Bearbeiten',
|
||||||
|
labelClose: 'Schließen',
|
||||||
|
labelSupportError: (features) =>
|
||||||
|
`${features.join(', ')} wird in diesem Browser nicht unterstützt`,
|
||||||
|
|
||||||
|
// defaults
|
||||||
|
labelColor: 'Farbe',
|
||||||
|
labelWidth: 'Breite',
|
||||||
|
labelSize: 'Größe',
|
||||||
|
labelOffset: 'Versatz',
|
||||||
|
labelAmount: 'Betragen',
|
||||||
|
labelInset: 'Vertiefung',
|
||||||
|
labelRadius: 'Radius',
|
||||||
|
|
||||||
|
// controls
|
||||||
|
labelColorPalette: 'Farbpalette',
|
||||||
|
|
||||||
|
// sizes
|
||||||
|
labelSizeExtraSmall: 'Extraklein',
|
||||||
|
labelSizeSmall: 'Klein',
|
||||||
|
labelSizeMediumSmall: 'Mittelklein',
|
||||||
|
labelSizeMedium: 'Mittel',
|
||||||
|
labelSizeMediumLarge: 'Mittelgroß',
|
||||||
|
labelSizeLarge: 'Groß',
|
||||||
|
labelSizeExtraLarge: 'Extragroß',
|
||||||
|
|
||||||
|
// unused?
|
||||||
|
labelButtonRevert: 'Rückgängig',
|
||||||
|
labelButtonCancel: 'Abbrechen',
|
||||||
|
labelButtonUndo: 'Zurücknehmen',
|
||||||
|
labelButtonRedo: 'Erneut durchführen',
|
||||||
|
labelButtonExport: 'Fertig',
|
||||||
|
|
||||||
|
// zoom
|
||||||
|
labelZoomIn: 'Hineinzoomen',
|
||||||
|
labelZoomOut: 'Rauszoomen',
|
||||||
|
labelZoomFit: 'Zoom passen',
|
||||||
|
labelZoomActual: 'Tatsächlichen Größe',
|
||||||
|
iconZoomIn: '<path stroke="currentColor" stroke-width=".125em" d="M8 12 h8 M12 8 v8" />',
|
||||||
|
iconZoomOut: '<path stroke="currentColor" stroke-width=".125em" d="M9 12 h6" />',
|
||||||
|
|
||||||
|
// icon
|
||||||
|
iconSupportError: `<g fill="none" stroke="currentColor" stroke-width="2"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><g><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></g>`,
|
||||||
|
iconButtonClose: IconCross,
|
||||||
|
iconButtonRevert: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M7.388 18.538a8 8 0 10-2.992-9.03"/><path fill="currentColor" d="M2.794 11.696L2.37 6.714l5.088 3.18z"/><path d="M12 8v4M12 12l4 2"/></g>`,
|
||||||
|
iconButtonUndo: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M10 8h4c2.485 0 5 2 5 5s-2.515 5-5 5h-4"/><path fill="currentColor" d="M5 8l4-3v6z"/></g>`,
|
||||||
|
iconButtonRedo: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M14 8h-4c-2.485 0-5 2-5 5s2.515 5 5 5h4"/><path fill="currentColor" d="M19 8l-4-3v6z"/></g>`,
|
||||||
|
iconButtonExport: `<polyline points="20 6 9 17 4 12" fill="none" stroke="currentColor" stroke-width=".125em"></polyline>`,
|
||||||
|
|
||||||
|
// status
|
||||||
|
statusLabelButtonClose: 'Schließen',
|
||||||
|
statusIconButtonClose: IconCross,
|
||||||
|
statusLabelLoadImage: (state) => {
|
||||||
|
if (!state || !state.task) return 'Warten auf Bild';
|
||||||
|
if (state.error)
|
||||||
|
return state.error.code === 'IMAGE_TOO_SMALL'
|
||||||
|
? 'Mindestgröße ist {minWidth} × {minHeight}'
|
||||||
|
: 'Fehler beim Laden des Bilds';
|
||||||
|
if (state.task === 'blob-to-bitmap') return 'Bild wird geladen…';
|
||||||
|
return 'Vorschau wird erstellt…';
|
||||||
|
},
|
||||||
|
|
||||||
|
// processing status message
|
||||||
|
statusLabelProcessImage: (state) => {
|
||||||
|
if (!state || !state.task) return undefined;
|
||||||
|
if (state.task === 'store') {
|
||||||
|
if (state.error) return 'Fehler beim Hochladen des Bilds';
|
||||||
|
return 'Bild wird hochgeladen…';
|
||||||
|
}
|
||||||
|
if (state.error) return 'Fehler bei Bildverarbeitung';
|
||||||
|
return 'Bild wird verarbeitet…';
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
export const MarkupEditor = {
|
||||||
|
shapeLabelButtonSelectSticker: 'Bild wählen',
|
||||||
|
shapeIconButtonSelectSticker: `<g fill="none" stroke="currentColor" stroke-width="0.0625em"><path d="M8 21 L15 11 L19 15"/><path d="M15 2 v5 h5"/><path d="M8 2 h8 l4 4 v12 q0 4 -4 4 h-8 q-4 0 -4 -4 v-12 q0 -4 4 -4z"/></g><circle fill="currentColor" cx="10" cy="8" r="1.5"/>`,
|
||||||
|
|
||||||
|
shapeIconButtonFlipHorizontal: `<g stroke="currentColor" stroke-width=".125em"><path fill="none" d="M6 6.5h5v11H6z"/><path fill="currentColor" d="M15 6.5h3v11h-3z"/><path d="M11 4v16" fill="currentColor"/></g>`,
|
||||||
|
shapeIconButtonFlipVertical: `<g stroke="currentColor" stroke-width=".125em"><rect x="7" y="8" width="11" height="5" fill="none"/><rect x="7" y="17" width="11" height="2" fill="currentColor"/><line x1="5" y1="13" x2="20" y2="13"/></g>`,
|
||||||
|
shapeIconButtonRemove: `<g fill="none" fill-rule="evenodd"><path stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M7.5 7h9z"/><path d="M7.916 9h8.168a1 1 0 01.99 1.14l-.972 6.862a2 2 0 01-1.473 1.653c-.877.23-1.753.345-2.629.345-.876 0-1.752-.115-2.628-.345a2 2 0 01-1.473-1.653l-.973-6.862A1 1 0 017.916 9z" fill="currentColor"/><rect fill="currentColor" x="10" y="5" width="4" height="3" rx="1"/></g>`,
|
||||||
|
shapeIconButtonDuplicate: `<g fill="none" fill-rule="evenodd"><path d="M15 13.994V16a2 2 0 01-2 2H8a2 2 0 01-2-2v-5a2 2 0 012-2h2.142" stroke="currentColor" stroke-width=".125em"/><path d="M15 9V8a1 1 0 00-2 0v1h-1a1 1 0 000 2h1v1a1 1 0 002 0v-1h1a1 1 0 000-2h-1zm-4-4h6a2 2 0 012 2v6a2 2 0 01-2 2h-6a2 2 0 01-2-2V7a2 2 0 012-2z" fill="currentColor"/></g>`,
|
||||||
|
shapeIconButtonMoveToFront: `<g fill="none" fill-rule="evenodd"><rect fill="currentColor" x="11" y="13" width="8" height="2" rx="1"/><rect fill="currentColor" x="9" y="17" width="10" height="2" rx="1"/><path d="M11.364 8H10a5 5 0 000 10M12 6.5L14.5 8 12 9.5z" stroke="currentColor" stroke-width=".125em" stroke-linecap="round"/></g>`,
|
||||||
|
|
||||||
|
shapeIconButtonTextLayoutAutoWidth: `${CharacterA}`,
|
||||||
|
shapeIconButtonTextLayoutAutoHeight: `<g fill="currentColor"><circle cx="4" cy="12" r="1.5"/><circle cx="20" cy="12" r="1.5"/></g>${CharacterA}`,
|
||||||
|
shapeIconButtonTextLayoutFixedSize: `<g fill="currentColor"><circle cx="5" cy="6" r="1.5"/><circle cx="19" cy="6" r="1.5"/><circle cx="19" cy="19" r="1.5"/><circle cx="5" cy="19" r="1.5"/></g>${CharacterA}`,
|
||||||
|
|
||||||
|
shapeTitleButtonTextLayoutAutoWidth: 'Autom. Breite',
|
||||||
|
shapeTitleButtonTextLayoutAutoHeight: 'Autom. Höhe',
|
||||||
|
shapeTitleButtonTextLayoutFixedSize: 'Fixierte Größe',
|
||||||
|
|
||||||
|
shapeTitleButtonFlipHorizontal: 'Horizontal spiegeln',
|
||||||
|
shapeTitleButtonFlipVertical: 'Vertikal spiegeln',
|
||||||
|
shapeTitleButtonRemove: 'Entfernen',
|
||||||
|
shapeTitleButtonDuplicate: 'Duplizieren',
|
||||||
|
shapeTitleButtonMoveToFront: 'Nach vorne bewegen',
|
||||||
|
|
||||||
|
shapeLabelInputText: 'Text bearbeiten',
|
||||||
|
|
||||||
|
shapeIconInputCancel: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M18 6L6 18M6 6l12 12"/></g>`,
|
||||||
|
shapeIconInputConfirm: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><polyline points="20 6 9 17 4 12"/></g>`,
|
||||||
|
shapeLabelInputCancel: 'Abbrechen',
|
||||||
|
shapeLabelInputConfirm: 'Bestätigen',
|
||||||
|
|
||||||
|
shapeLabelStrokeNone: 'Keine Kontur',
|
||||||
|
|
||||||
|
shapeLabelFontStyleNormal: 'Normal',
|
||||||
|
shapeLabelFontStyleBold: 'Fett',
|
||||||
|
shapeLabelFontStyleItalic: 'Kursiv',
|
||||||
|
shapeLabelFontStyleItalicBold: 'Fett kursiv',
|
||||||
|
|
||||||
|
shapeTitleBackgroundColor: 'Füllfarbe',
|
||||||
|
|
||||||
|
shapeTitleCornerRadius: 'Eckenradius',
|
||||||
|
|
||||||
|
shapeTitleFontFamily: 'Schriftart',
|
||||||
|
shapeTitleFontSize: 'Schriftgröße',
|
||||||
|
shapeTitleFontStyle: 'Schriftstil',
|
||||||
|
|
||||||
|
shapeTitleLineHeight: 'Zeilenhöhe',
|
||||||
|
|
||||||
|
shapeTitleLineStart: 'Start',
|
||||||
|
shapeTitleLineEnd: 'Ende',
|
||||||
|
shapeTitleStrokeWidth: 'Linienbreite',
|
||||||
|
shapeTitleStrokeColor: 'Linienfarbe',
|
||||||
|
|
||||||
|
shapeTitleLineDecorationBar: 'Balken',
|
||||||
|
shapeTitleLineDecorationCircle: 'Kreis',
|
||||||
|
shapeTitleLineDecorationSquare: 'Quadrat',
|
||||||
|
shapeTitleLineDecorationArrow: 'Pfeil',
|
||||||
|
shapeTitleLineDecorationCircleSolid: 'Vollfarbe-Kreis',
|
||||||
|
shapeTitleLineDecorationSquareSolid: 'Vollfarbe-Quadrat',
|
||||||
|
shapeTitleLineDecorationArrowSolid: 'Vollfarbe-Pfeil',
|
||||||
|
|
||||||
|
shapeIconLineDecorationBar: `<g stroke="currentColor" stroke-linecap="round" stroke-width=".125em"><path d="M5,12 H16"/><path d="M16,8 V16"/></g>`,
|
||||||
|
shapeIconLineDecorationCircle: `<g stroke="currentColor" stroke-linecap="round"><path stroke-width=".125em" d="M5,12 H12"/><circle fill="none" stroke-width=".125em" cx="16" cy="12" r="4"/></g>`,
|
||||||
|
shapeIconLineDecorationSquare: `<g stroke="currentColor" stroke-linecap="round"><path stroke-width=".125em" d="M5,12 H12"/><rect fill="none" stroke-width=".125em" x="12" y="8" width="8" height="8"/></g>`,
|
||||||
|
shapeIconLineDecorationArrow: `<g stroke="currentColor" stroke-linecap="round" stroke-width=".125em"><path d="M5,12 H16 M13,7 l6,5 l-6,5" fill="none"/></g>`,
|
||||||
|
shapeIconLineDecorationCircleSolid: `<g stroke="currentColor" stroke-linecap="round"><path stroke-width=".125em" d="M5,12 H12"/><circle fill="currentColor" cx="16" cy="12" r="4"/></g>`,
|
||||||
|
shapeIconLineDecorationSquareSolid: `<g stroke="currentColor" stroke-linecap="round"><path stroke-width=".125em" d="M5,12 H12"/><rect fill="currentColor" x="12" y="8" width="8" height="8"/></g>`,
|
||||||
|
shapeIconLineDecorationArrowSolid: `<g stroke="currentColor" stroke-linecap="round" stroke-width=".125em"><path d="M5,12 H16"/><path d="M13,7 l6,5 l-6,5z" fill="currentColor"/></g>`,
|
||||||
|
|
||||||
|
shapeTitleColorTransparent: 'Transparent',
|
||||||
|
shapeTitleColorWhite: 'Weiß',
|
||||||
|
shapeTitleColorSilver: 'Silber',
|
||||||
|
shapeTitleColorGray: 'Grau',
|
||||||
|
shapeTitleColorBlack: 'Schwarz',
|
||||||
|
shapeTitleColorNavy: 'Marineblau',
|
||||||
|
shapeTitleColorBlue: 'Blau',
|
||||||
|
shapeTitleColorAqua: 'Aquamarin',
|
||||||
|
shapeTitleColorTeal: 'Blaugrün',
|
||||||
|
shapeTitleColorOlive: 'Olive',
|
||||||
|
shapeTitleColorGreen: 'Grün',
|
||||||
|
shapeTitleColorYellow: 'Gelb',
|
||||||
|
shapeTitleColorOrange: 'Orange',
|
||||||
|
shapeTitleColorRed: 'Rot',
|
||||||
|
shapeTitleColorMaroon: 'Kastanienbraun',
|
||||||
|
shapeTitleColorFuchsia: 'Purpurrot',
|
||||||
|
shapeTitleColorPurple: 'Lila',
|
||||||
|
|
||||||
|
shapeTitleTextOutline: 'Textumriss',
|
||||||
|
shapeTitleTextOutlineWidth: 'Breite',
|
||||||
|
shapeTitleTextShadow: 'Textschatten',
|
||||||
|
shapeTitleTextShadowBlur: 'Unschärfe',
|
||||||
|
|
||||||
|
shapeTitleTextColor: 'Schriftfarbe',
|
||||||
|
shapeTitleTextAlign: 'Textausrichtung',
|
||||||
|
shapeTitleTextAlignLeft: 'Text links ausrichten',
|
||||||
|
shapeTitleTextAlignCenter: 'Text zentrieren',
|
||||||
|
shapeTitleTextAlignRight: 'Text rechts ausrichten',
|
||||||
|
|
||||||
|
shapeIconTextAlignLeft: `<g stroke-width=".125em" stroke="currentColor"><line x1="5" y1="8" x2="15" y2="8"/><line x1="5" y1="12" x2="19" y2="12"/><line x1="5" y1="16" x2="14" y2="16"/></g>`,
|
||||||
|
shapeIconTextAlignCenter: `<g stroke-width=".125em" stroke="currentColor"><line x1="7" y1="8" x2="17" y2="8"/><line x1="5" y1="12" x2="19" y2="12"/><line x1="8" y1="16" x2="16" y2="16"/></g>`,
|
||||||
|
shapeIconTextAlignRight: `<g stroke-width=".125em" stroke="currentColor"><line x1="9" y1="8" x2="19" y2="8"/><line x1="5" y1="12" x2="19" y2="12"/><line x1="11" y1="16" x2="19" y2="16"/></g>`,
|
||||||
|
|
||||||
|
shapeLabelToolMove: 'Verschieben',
|
||||||
|
shapeLabelToolView: 'Sehen',
|
||||||
|
shapeLabelToolSharpie: 'Marker',
|
||||||
|
shapeLabelToolEraser: 'Radierer',
|
||||||
|
shapeLabelToolPath: 'Pfad',
|
||||||
|
shapeLabelToolRectangle: 'Rechteck',
|
||||||
|
shapeLabelToolEllipse: 'Ellipse',
|
||||||
|
shapeLabelToolArrow: 'Pfeil',
|
||||||
|
shapeLabelToolLine: 'Linie',
|
||||||
|
shapeLabelToolText: 'Text',
|
||||||
|
shapeLabelToolPreset: 'Sticker',
|
||||||
|
|
||||||
|
shapeIconToolView: `<g stroke-width=".125em" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M10.98 9.703V2.567c0-1.19 1.19-1.785 1.784-1.785.595 0 1.784.595 1.784 1.785v3.568"/><path d="M14.548 9.703V4.35c0-1.19 1.19-1.784 1.784-1.784.595 0 1.784.594 1.784 1.784v2.973"/><path d="M18.116 10.244V7.271c0-1.19 1.19-1.784 1.784-1.784.595 0 1.785.595 1.785 1.784 0 1.19 0 8.92-1.19 12.488-1.19 3.569-10.704 4.758-13.678 0-2.973-4.757-2.973-4.757-4.163-6.541-1.189-1.784-1.153-2.974-.594-3.568.558-.595 1.784-1.19 2.973.594 1.277 1.916 2.07 2.907 2.379 2.974V5.487c0-1.19 1.19-1.784 1.784-1.784.595 0 1.784.595 1.784 1.784V8.46"/></g>`,
|
||||||
|
shapeIconToolMove: `<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M6 2 L6 19 L18 13 Z M13 18 L16 24" stroke="currentColor" stroke-width=".125em" fill="none" fill-rule="evenodd" stroke-linejoin="round"/></g>`,
|
||||||
|
shapeIconToolSharpie: `<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M2.025 5c5.616-2.732 8.833-3.857 9.65-3.374C12.903 2.351.518 12.666 2.026 14 3.534 15.334 16.536.566 17.73 2.566 18.924 4.566 3.98 17.187 4.831 18c.851.813 9.848-6 11.643-6 1.087 0-2.53 5.11-2.92 7-.086.41 3.323-1.498 4.773-1 .494.17.64 2.317 1.319 3 .439.443 1.332.776 2.679 1" stroke="currentColor" stroke-width=".125em" fill="none" fill-rule="evenodd" stroke-linejoin="round"/></g>`,
|
||||||
|
shapeIconToolEraser: `<g stroke-width=".125em" stroke="currentColor" stroke-linecap="round" fill="none"><g transform="translate(3, 15) rotate(-45)"><rect x="0" y="0" width="18" height="10" rx="3"/></g><line x1="11" y1="21" x2="18" y2="21"/><line x1="20" y1="21" x2="22" y2="21"/></g>`,
|
||||||
|
shapeIconToolPath: `<g stroke-width=".125em" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" fill="none"><circle cx="21" cy="3" r="2"/><circle cx="9" cy="9" r="2"/><circle cx="3" cy="21" r="2"/><path d="M19 4 11 8 M8 11 4 19"/></g>`,
|
||||||
|
shapeIconToolRectangle: `<g stroke-width=".125em" stroke="currentColor" fill="none"><rect x="1" y="1" width="22" height="22" rx="4"/></g>`,
|
||||||
|
shapeIconToolEllipse: `<g stroke-width=".125em" stroke="currentColor" fill="none"><circle cx="12" cy="12" r="11"/></g>`,
|
||||||
|
shapeIconToolArrow: `<g stroke-width=".125em" stroke="currentColor" fill="none"><line x1="20" y1="3" x2="6" y2="21"/><path d="m10 6 L21.5 1 L20 13.5" fill="currentColor" stroke="none"/></g>`,
|
||||||
|
shapeIconToolLine: `<g stroke-width=".125em" stroke="currentColor" fill="none"><line x1="20" y1="3" x2="6" y2="21"/></g>`,
|
||||||
|
shapeIconToolText: `<g stroke="none" fill="currentColor" transform="translate(6,0)"><path d="M8.14 20.085c.459 0 .901-.034 1.329-.102a8.597 8.597 0 001.015-.21v1.984c-.281.135-.695.247-1.242.336a9.328 9.328 0 01-1.477.133c-3.312 0-4.968-1.745-4.968-5.235V6.804H.344v-1.25l2.453-1.078L3.89.819h1.5v3.97h4.97v2.015H5.39v10.078c0 1.031.245 1.823.735 2.375s1.161.828 2.015.828z"/>`,
|
||||||
|
shapeIconToolPreset: `<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M12 22c2.773 0 1.189-5.177 3-7 1.796-1.808 7-.25 7-3 0-5.523-4.477-10-10-10S2 6.477 2 12s4.477 10 10 10z"></path><path d="M20 17c-3 3-5 5-8 5"></path></g>`,
|
||||||
|
|
||||||
|
shapeTitleSelectionMode: 'Auswahlmodus',
|
||||||
|
shapeTitleBrushSize: 'Pinselgröße',
|
||||||
|
|
||||||
|
shapeLabelSelectionModeNew: 'Neu',
|
||||||
|
shapeLabelSelectionModeAdd: 'Hinzufügen',
|
||||||
|
shapeLabelSelectionModeSubtract: 'Entfernen',
|
||||||
|
|
||||||
|
shapeLabelToolSelectionBrush: 'Pinsel',
|
||||||
|
shapeLabelToolSelectionLassoo: 'Lasso',
|
||||||
|
shapeLabelToolSelectionRectangle: 'Rechteckauswahl',
|
||||||
|
shapeLabelToolSelectionEllipse: 'Ellipsenauswahl',
|
||||||
|
|
||||||
|
shapeIconSelectionModeNew: `<g fill="none" fill-rule="evenodd" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"><path d="M6.5 17H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v1.5"/><rect width="12" height="12" x="9" y="9" fill="currentColor" fill-opacity=".25" rx="2"/></g>`,
|
||||||
|
shapeIconSelectionModeAdd: `<g fill="none" fill-rule="evenodd" stroke="currentColor"><path fill="currentColor" fill-opacity=".25" stroke-linecap="round" stroke-linejoin="round" d="M15 3a2 2 0 0 1 2 2v4h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-8a2 2 0 0 1-2-2v-2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h10Z"/><path d="M13 15h4M15 13v4"/></g>`,
|
||||||
|
shapeIconSelectionModeSubtract: `<g fill="none" fill-rule="evenodd" stroke="currentColor"><path fill="currentColor" fill-opacity=".25" stroke-linecap="round" stroke-linejoin="round" d="M15 3a2 2 0 0 1 2 2v4h-6a2 2 0 0 0-1.995 1.85L9 11v6H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h10Z"/><rect width="12" height="12" x="9" y="9" stroke-linecap="round" stroke-linejoin="round" rx="2"/><path d="M13 15h4"/></g>`,
|
||||||
|
shapeIconToolSelectionBrush: `<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M2.025 5c5.616-2.732 8.833-3.857 9.65-3.374C12.903 2.351.518 12.666 2.026 14 3.534 15.334 16.536.566 17.73 2.566 18.924 4.566 3.98 17.187 4.831 18c.851.813 9.848-6 11.643-6 1.087 0-2.53 5.11-2.92 7-.086.41 3.323-1.498 4.773-1 .494.17.64 2.317 1.319 3 .439.443 1.332.776 2.679 1" stroke="currentColor" fill-rule="evenodd" stroke-linejoin="round"/></g>`,
|
||||||
|
shapeIconToolSelectionLassoo: `<g fill="none" fill-rule="evenodd" stroke-width=".125em" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M11.428 17.702a18.46 18.46 0 0 0 4.085-1.595c5.851-3.112 9.019-8.599 7.074-12.256-1.945-3.657-8.265-4.1-14.116-.988C2.619 5.974-.55 11.46 1.396 15.118c.63 1.186 1.72 2.033 3.105 2.532"/><ellipse cx="8" cy="18.5" rx="3.5" ry="2.833" transform="rotate(-15 8 18.5)"/><path stroke-linecap="round" d="M5 18c3.347 1.048 5.514 1.881 6.5 2.5.859.54 1.517.994 1.5 2.364"/></g>`,
|
||||||
|
shapeIconToolSelectionRectangle: `<g stroke-width=".125em" stroke="currentColor"><path d="M9 1 h6 m4 0 h4v4 m0 4 v6 m0 4 v4h-4 m-4 0 h-6 m-4 0 h-4v-4 m0 -4 v-6 m0 -4 v-4h4" fill="none" /></g>`,
|
||||||
|
shapeIconToolSelectionEllipse: `<path stroke-width=".125em" stroke="currentColor" d="M1.21 9.853a11.054 11.054 0 0 0 0 4.294m1.643 3.965a11.054 11.054 0 0 0 3.035 3.035m3.965 1.644a11.054 11.054 0 0 0 4.294 0m3.965-1.644a11.054 11.054 0 0 0 3.035-3.035m1.644-3.965a11.054 11.054 0 0 0 0-4.294m-1.644-3.965a11.054 11.054 0 0 0-3.035-3.035m-3.965-1.644a11.054 11.054 0 0 0-4.294 0M5.888 2.853a11.054 11.054 0 0 0-3.035 3.035"/>`,
|
||||||
|
};
|
||||||
|
|
||||||
|
// deprecated
|
||||||
|
export const ShapeEditor = MarkupEditor;
|
1
src/components/@pqina/pintura/locale/de_DE/core/index.js
Normal file
1
src/components/@pqina/pintura/locale/de_DE/core/index.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
export { default, MarkupEditor } from './de_DE.js';
|
54
src/components/@pqina/pintura/locale/de_DE/crop/de_DE.js
Normal file
54
src/components/@pqina/pintura/locale/de_DE/crop/de_DE.js
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
export default {
|
||||||
|
cropLabel: 'Zuschneiden',
|
||||||
|
cropIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M23 17H9a2 2 0 0 1-2-2v-5m0-3V1 M1 7h14a2 2 0 0 1 2 2v7m0 4v3"/></g>',
|
||||||
|
cropIconButtonRecenter: `<path stroke="currentColor" fill="none" stroke-width="2" stroke-linejoin="bevel" d="M1.5 7.5v-6h6M1.5 16.5v6h6M22.5 16.5v6h-6M22.5 7.5v-6h-6"/><circle cx="12" cy="12" r="3.5" fill="currentColor" stroke="none"/>`,
|
||||||
|
cropIconButtonRotateLeft:
|
||||||
|
'<g stroke="none" fill="currentColor"><path fill="none" d="M-1-1h582v402H-1z"/><rect x="3" rx="1" height="12" width="12" y="9"/><path d="M15 5h-1a5 5 0 015 5 1 1 0 002 0 7 7 0 00-7-7h-1.374l.747-.747A1 1 0 0011.958.84L9.603 3.194a1 1 0 000 1.415l2.355 2.355a1 1 0 001.415-1.414l-.55-.55H15z"/></g>',
|
||||||
|
cropIconButtonRotateRight:
|
||||||
|
'<g stroke="none" fill="currentColor"><path fill="none" d="M-1-1h582v402H-1z"/><path d="M11.177 5H10a5 5 0 00-5 5 1 1 0 01-2 0 7 7 0 017-7h1.374l-.747-.747A1 1 0 0112.042.84l2.355 2.355a1 1 0 010 1.415l-2.355 2.354a1 1 0 01-1.415-1.414l.55-.55z"/><rect rx="1" height="12" width="12" y="9" x="9"/></g>',
|
||||||
|
cropIconButtonFlipVertical:
|
||||||
|
'<g stroke="none" fill="currentColor"><path d="M19.993 12.143H7a1 1 0 0 1-1-1V5.994a1 1 0 0 1 1.368-.93l12.993 5.15a1 1 0 0 1-.368 1.93z"/><path d="M19.993 14a1 1 0 0 1 .368 1.93L7.368 21.078A1 1 0 0 1 6 20.148V15a1 1 0 0 1 1-1h12.993z" opacity=".6"/></g>',
|
||||||
|
cropIconButtonFlipHorizontal:
|
||||||
|
'<g stroke="none" fill="currentColor"><path d="M11.93 7.007V20a1 1 0 0 1-1 1H5.78a1 1 0 0 1-.93-1.368l5.15-12.993a1 1 0 0 1 1.929.368z"/><path d="M14 7.007V20a1 1 0 0 0 1 1h5.149a1 1 0 0 0 .93-1.368l-5.15-12.993A1 1 0 0 0 14 7.007z" opacity=".6"/></g>',
|
||||||
|
|
||||||
|
cropIconSelectPreset: (locale, aspectRatio) => {
|
||||||
|
const [a, b, c] = !aspectRatio
|
||||||
|
? [0.2, 0.3, 0.4]
|
||||||
|
: [
|
||||||
|
aspectRatio < 1 ? 1 : 0.3,
|
||||||
|
aspectRatio === 1 ? 0.85 : 0.5,
|
||||||
|
aspectRatio > 1 ? 1 : 0.3,
|
||||||
|
];
|
||||||
|
return `<g fill="currentColor">
|
||||||
|
<rect opacity="${a}" x="2" y="4" width="10" height="18" rx="1"/>
|
||||||
|
<rect opacity="${b}" x="4" y="8" width="14" height="14" rx="1"/>
|
||||||
|
<rect opacity="${c}" x="6" y="12" width="17" height="10" rx="1"/>
|
||||||
|
</g>`;
|
||||||
|
},
|
||||||
|
|
||||||
|
cropIconCropBoundary: (locale, isBoundToImage) => {
|
||||||
|
const [a, b, c, d] = isBoundToImage ? [0.3, 1, 0, 0] : [0, 0, 0.3, 1];
|
||||||
|
return `<g fill="currentColor">
|
||||||
|
<rect opacity="${a}" x="2" y="3" width="20" height="20" rx="1"/>
|
||||||
|
<rect opacity="${b}" x="7" y="8" width="10" height="10" rx="1"/>
|
||||||
|
<rect opacity="${c}" x="4" y="8" width="14" height="14" rx="1"/>
|
||||||
|
<rect opacity="${d}" x="12" y="4" width="10" height="10" rx="1"/>
|
||||||
|
</g>`;
|
||||||
|
},
|
||||||
|
|
||||||
|
cropLabelButtonRecenter: 'Neu zentrieren',
|
||||||
|
cropLabelButtonRotateLeft: 'Nach links drehen',
|
||||||
|
cropLabelButtonRotateRight: 'Nach rechts drehen',
|
||||||
|
cropLabelButtonFlipHorizontal: 'Horizontal spiegeln',
|
||||||
|
cropLabelButtonFlipVertical: 'Vertikal spiegeln',
|
||||||
|
|
||||||
|
cropLabelSelectPreset: 'Form zuschneiden',
|
||||||
|
|
||||||
|
cropLabelCropBoundary: 'Rand zuschneiden',
|
||||||
|
cropLabelCropBoundaryEdge: 'Bildkante',
|
||||||
|
cropLabelCropBoundaryNone: 'Keine',
|
||||||
|
|
||||||
|
cropLabelTabRotation: 'Drehung',
|
||||||
|
cropLabelTabZoom: 'Skalieren',
|
||||||
|
};
|
1
src/components/@pqina/pintura/locale/de_DE/crop/index.js
Normal file
1
src/components/@pqina/pintura/locale/de_DE/crop/index.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
export { default } from './de_DE.js';
|
@ -0,0 +1,5 @@
|
|||||||
|
export default {
|
||||||
|
decorateLabel: 'Verzieren',
|
||||||
|
decorateIcon:
|
||||||
|
'<g fill="none" fill-rule="evenodd"><path stroke="currentColor" stroke-width=".125em" stroke-linecap="round" stroke-linejoin="round" d="M12 18.5l-6.466 3.4 1.235-7.2-5.23-5.1 7.228-1.05L12 2l3.233 6.55 7.229 1.05-5.231 5.1 1.235 7.2z"/></g>',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './de_DE.js';
|
12
src/components/@pqina/pintura/locale/de_DE/fill/de_DE.js
Normal file
12
src/components/@pqina/pintura/locale/de_DE/fill/de_DE.js
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
export default {
|
||||||
|
fillLabel: 'Füllen',
|
||||||
|
fillIcon: `
|
||||||
|
<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em">
|
||||||
|
<g transform="rotate(60, 12, 12)">
|
||||||
|
<rect x="4" y="4" width="14" height="16" rx="3"/>
|
||||||
|
</g>
|
||||||
|
<path d="M21 13 L21 21"></path>
|
||||||
|
<path d="M4.5 12.5 L19 12.5"></path>
|
||||||
|
</g>
|
||||||
|
`,
|
||||||
|
};
|
1
src/components/@pqina/pintura/locale/de_DE/fill/index.js
Normal file
1
src/components/@pqina/pintura/locale/de_DE/fill/index.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
export { default } from './de_DE.js';
|
19
src/components/@pqina/pintura/locale/de_DE/filter/de_DE.js
Normal file
19
src/components/@pqina/pintura/locale/de_DE/filter/de_DE.js
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
export default {
|
||||||
|
filterLabel: 'Filter',
|
||||||
|
filterIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M18.347 9.907a6.5 6.5 0 1 0-1.872 3.306M3.26 11.574a6.5 6.5 0 1 0 2.815-1.417 M10.15 17.897A6.503 6.503 0 0 0 16.5 23a6.5 6.5 0 1 0-6.183-8.51"/></g>',
|
||||||
|
|
||||||
|
filterLabelChrome: 'Chrom',
|
||||||
|
filterLabelFade: 'Verblassen',
|
||||||
|
filterLabelCold: 'Kalt',
|
||||||
|
filterLabelWarm: 'Warm',
|
||||||
|
filterLabelPastel: 'Pastell',
|
||||||
|
filterLabelMonoDefault: 'Mono',
|
||||||
|
filterLabelMonoNoir: 'Noir',
|
||||||
|
filterLabelMonoWash: 'Verwaschen',
|
||||||
|
filterLabelMonoStark: 'Hart',
|
||||||
|
filterLabelSepiaDefault: 'Sepia',
|
||||||
|
filterLabelSepiaBlues: 'Blues',
|
||||||
|
filterLabelSepiaRust: 'Rost',
|
||||||
|
filterLabelSepiaColor: 'Farbe',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './de_DE.js';
|
14
src/components/@pqina/pintura/locale/de_DE/finetune/de_DE.js
Normal file
14
src/components/@pqina/pintura/locale/de_DE/finetune/de_DE.js
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
export default {
|
||||||
|
finetuneLabel: 'Feinabstimmung',
|
||||||
|
finetuneIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M4 1v5.5m0 3.503V23M12 1v10.5m0 3.5v8M20 1v15.5m0 3.5v3M2 7h4M10 12h4M18 17h4"/></g>',
|
||||||
|
|
||||||
|
finetuneLabelBrightness: 'Helligkeit',
|
||||||
|
finetuneLabelContrast: 'Kontrast',
|
||||||
|
finetuneLabelSaturation: 'Sättigung',
|
||||||
|
finetuneLabelExposure: 'Belichtung',
|
||||||
|
finetuneLabelTemperature: 'Temperatur',
|
||||||
|
finetuneLabelGamma: 'Gamma',
|
||||||
|
finetuneLabelClarity: 'Schärfe',
|
||||||
|
finetuneLabelVignette: 'Vignette',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './de_DE.js';
|
17
src/components/@pqina/pintura/locale/de_DE/frame/de_DE.js
Normal file
17
src/components/@pqina/pintura/locale/de_DE/frame/de_DE.js
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
export default {
|
||||||
|
frameLabel: 'Rahmen',
|
||||||
|
frameIcon: `<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em">
|
||||||
|
<rect x="2" y="2" width="20" height="20" rx="4"/>
|
||||||
|
<rect x="6" y="6" width="12" height="12" rx="1"/>
|
||||||
|
</g>`,
|
||||||
|
|
||||||
|
frameLabelMatSharp: 'Matt',
|
||||||
|
frameLabelMatRound: 'Abgeschrägt',
|
||||||
|
frameLabelLineSingle: 'Linie',
|
||||||
|
frameLabelLineMultiple: 'Zebra',
|
||||||
|
frameLabelEdgeSeparate: 'Vertiefung',
|
||||||
|
frameLabelEdgeOverlap: 'Plus',
|
||||||
|
frameLabelEdgeCross: 'Holz',
|
||||||
|
frameLabelCornerHooks: 'Haken',
|
||||||
|
frameLabelPolaroid: 'Polaroid',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './de_DE.js';
|
15
src/components/@pqina/pintura/locale/de_DE/index.d.ts
vendored
Normal file
15
src/components/@pqina/pintura/locale/de_DE/index.d.ts
vendored
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
export const LocaleAnnotate: { [key: string]: any };
|
||||||
|
export const LocaleCore: { [key: string]: any };
|
||||||
|
export const LocaleCrop: { [key: string]: any };
|
||||||
|
export const LocaleDecorate: { [key: string]: any };
|
||||||
|
export const LocaleFilter: { [key: string]: any };
|
||||||
|
export const LocaleFinetune: { [key: string]: any };
|
||||||
|
export const LocaleFrame: { [key: string]: any };
|
||||||
|
export const LocaleResize: { [key: string]: any };
|
||||||
|
export const LocaleRedact: { [key: string]: any };
|
||||||
|
export const LocaleSticker: { [key: string]: any };
|
||||||
|
export const LocaleTrim: { [key: string]: any };
|
||||||
|
export const LocaleFill: { [key: string]: any };
|
||||||
|
export const LocaleMarkupEditor: { [key: string]: any };
|
||||||
|
|
||||||
|
export {};
|
42
src/components/@pqina/pintura/locale/de_DE/index.js
Normal file
42
src/components/@pqina/pintura/locale/de_DE/index.js
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
import Annotate from './annotate/index.js';
|
||||||
|
import Core, { MarkupEditor } from './core/index.js';
|
||||||
|
import Crop from './crop/index.js';
|
||||||
|
import Decorate from './decorate/index.js';
|
||||||
|
import Filter from './filter/index.js';
|
||||||
|
import Finetune from './finetune/index.js';
|
||||||
|
import Frame from './frame/index.js';
|
||||||
|
import Resize from './resize/index.js';
|
||||||
|
import Redact from './redact/index.js';
|
||||||
|
import Sticker from './sticker/index.js';
|
||||||
|
import Trim from './trim/index.js';
|
||||||
|
import Fill from './fill/index.js';
|
||||||
|
|
||||||
|
export const LocaleAnnotate = Annotate;
|
||||||
|
export const LocaleCore = Core;
|
||||||
|
export const LocaleCrop = Crop;
|
||||||
|
export const LocaleDecorate = Decorate;
|
||||||
|
export const LocaleFilter = Filter;
|
||||||
|
export const LocaleFinetune = Finetune;
|
||||||
|
export const LocaleFrame = Frame;
|
||||||
|
export const LocaleResize = Resize;
|
||||||
|
export const LocaleRedact = Redact;
|
||||||
|
export const LocaleSticker = Sticker;
|
||||||
|
export const LocaleTrim = Trim;
|
||||||
|
export const LocaleFill = Fill;
|
||||||
|
export const LocaleMarkupEditor = MarkupEditor;
|
||||||
|
|
||||||
|
export default {
|
||||||
|
...Core,
|
||||||
|
...MarkupEditor,
|
||||||
|
...Annotate,
|
||||||
|
...Crop,
|
||||||
|
...Decorate,
|
||||||
|
...Filter,
|
||||||
|
...Finetune,
|
||||||
|
...Frame,
|
||||||
|
...Resize,
|
||||||
|
...Redact,
|
||||||
|
...Sticker,
|
||||||
|
...Fill,
|
||||||
|
...Trim,
|
||||||
|
};
|
@ -0,0 +1,4 @@
|
|||||||
|
export default {
|
||||||
|
redactLabel: 'Redigieren',
|
||||||
|
redactIcon: `<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M 4 5 l 1 -1"/><path d="M 4 10 l 6 -6"/><path d="M 4 15 l 11 -11"/><path d="M 4 20 l 16 -16"/><path d="M 9 20 l 11 -11"/><path d="M 14 20 l 6 -6"/><path d="M 19 20 l 1 -1"/></g>`,
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './de_DE.js';
|
19
src/components/@pqina/pintura/locale/de_DE/resize/de_DE.js
Normal file
19
src/components/@pqina/pintura/locale/de_DE/resize/de_DE.js
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
export default {
|
||||||
|
resizeLabel: 'Skalieren',
|
||||||
|
resizeIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><rect x="2" y="12" width="10" height="10" rx="2"/><path d="M4 11.5V4a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-5.5"/><path d="M14 10l3.365-3.365M14 6h4v4"/></g>',
|
||||||
|
|
||||||
|
resizeLabelFormCaption: 'Bildausgabe-Größe',
|
||||||
|
|
||||||
|
resizeLabelInputWidth: 'b',
|
||||||
|
resizeTitleInputWidth: 'Breite',
|
||||||
|
resizeLabelInputHeight: 'h',
|
||||||
|
resizeTitleInputHeight: 'Höhe',
|
||||||
|
|
||||||
|
resizeTitleButtonMaintainAspectRatio: 'Seitenverhältnis bewahren',
|
||||||
|
|
||||||
|
resizeIconButtonMaintainAspectRatio: (active, activeFraction) =>
|
||||||
|
`<defs><mask id="mask1" x="0" y="0" width="24" height="24" ><rect x="0" y="0" width="24" height="10" fill="#fff" stroke="none"/></mask></defs><g fill="none" fill-rule="evenodd"><g mask="url(#mask1)"><path transform="translate(0 ${
|
||||||
|
(activeFraction - 1) * 3
|
||||||
|
})" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" d="M9.401 10.205v-.804a2.599 2.599 0 0 1 5.198 0V17"/></g><rect fill="currentColor" x="7" y="10" width="10" height="7" rx="1.5"/></g>`,
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './de_DE.js';
|
@ -0,0 +1,6 @@
|
|||||||
|
export default {
|
||||||
|
retouchLabel: 'Retuschieren',
|
||||||
|
retouchIcon: `
|
||||||
|
<g fill="none" fill-rule="evenodd"><path fill="currentColor" d="m17 6-2-1-2 1 1-2-1-2 2 1 2-1-1 2zM5.5 5.5 3 4 .5 5.5 2 3 .5.5 3 2 5.5.5 4 3zM9 21l-3-1.5L3 21l1.5-3L3 15l3 1.5L9 15l-1.5 3z"/><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m9.266 6.705 13.529 13.529c-.071.78-.34 1.371-.765 1.796-.425.425-1.015.694-1.796.765h0L6.705 9.266c.071-.78.34-1.371.765-1.796.425-.425 1.015-.694 1.796-.765h0Z"/><path stroke="currentColor" stroke-width="1.5" d="M12 9.5c-.657.323-1.157.657-1.5 1-.343.343-.677.843-1 1.5"/></g>
|
||||||
|
`,
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './en_GB.js';
|
@ -0,0 +1,5 @@
|
|||||||
|
export default {
|
||||||
|
stickerLabel: 'Sticker',
|
||||||
|
stickerIcon:
|
||||||
|
'<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M12 22c2.773 0 1.189-5.177 3-7 1.796-1.808 7-.25 7-3 0-5.523-4.477-10-10-10S2 6.477 2 12s4.477 10 10 10z"/><path d="M20 17c-3 3-5 5-8 5"/></g>',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './de_DE.js';
|
60
src/components/@pqina/pintura/locale/de_DE/trim/de_DE.js
Normal file
60
src/components/@pqina/pintura/locale/de_DE/trim/de_DE.js
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
export default {
|
||||||
|
trimLabel: 'Schneiden',
|
||||||
|
trimIcon: `<g stroke-width=".125em" stroke="currentColor" fill="none"><path d=" M1 3 v18 M5 3 v2 M9 3 v2 M5 18 v2 M9 18 v2 M1 3 h12 M1 6 h10 M1 18 h9 M1 21 h8 M14 0 l-4 24 M18 3 h5 M17.5 6 h6 M15.5 18 h7 M15 21 h8 M19 3 v2 M15 18 v2 M19 18 v2 M23 3 v18"/></g>`,
|
||||||
|
|
||||||
|
trimLabelPlay: 'Abspielen',
|
||||||
|
trimLabelPause: 'Pausieren',
|
||||||
|
|
||||||
|
trimLabelMute: 'Stummschalten',
|
||||||
|
trimLabelUnmute: 'Stummschaltung aufheben',
|
||||||
|
|
||||||
|
trimLabelSplit: 'Split',
|
||||||
|
trimLabelMerge: 'Zusammenführen',
|
||||||
|
|
||||||
|
trimIconButtonMute:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor"><polygon fill="currentColor" points="2 16 2 8 8 8 15 1 15 23 8 16"/><path d="M19.3781212,15.2166107 C20.3621122,14.4879168 21,13.3184517 21,12 C21,10.6815483 20.3621122,9.51208318 19.3781212,8.78338927"/></g>',
|
||||||
|
trimIconButtonUnmute:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor"><polygon fill="currentColor" points="2 16 2 8 3 8 15 20 15 23 8 16"/><polygon fill="currentColor" points="8 8 15 1 15 15"/><line x1="1" y1="1" x2="23" y2="23"/></g>',
|
||||||
|
|
||||||
|
trimIconButtonPlay: '<polygon fill="currentColor" points="7 3, 21 12, 7 21"/>',
|
||||||
|
trimIconButtonPause:
|
||||||
|
'<g fill="currentColor"><rect x="6" y="4" width="4" height="16"/><rect x="14" y="4" width="4" height="16"/></g>',
|
||||||
|
|
||||||
|
trimIconButtonSplit: `<g stroke="currentColor" stroke-width=".125em">
|
||||||
|
<path d="M12 4 V20"/>
|
||||||
|
<path fill="currentColor" d="M6 8 L6 16 L2 12 Z M18 8 L22 12 L18 16 Z"/>
|
||||||
|
</g>`,
|
||||||
|
trimIconButtonMerge: `<g stroke="currentColor" stroke-width=".125em">
|
||||||
|
<path d="M1 4 V20 M23 4 V20"/>
|
||||||
|
<path fill="currentColor" d="M6 8 L10 12 L6 16 Z M18 8 L14 12 L18 16 Z"/>
|
||||||
|
</g>`,
|
||||||
|
|
||||||
|
// overrides
|
||||||
|
statusLabelLoadImage: (state) => {
|
||||||
|
if (!state || !state.task) return 'Warten auf Medium';
|
||||||
|
if (state.error) {
|
||||||
|
if (state.error.code === 'IMAGE_TOO_SMALL') {
|
||||||
|
return 'Mindestgröße ist {minWidth} × {minHeight}';
|
||||||
|
} else if (state.error.code === 'VIDEO_TOO_SHORT') {
|
||||||
|
const unit = state.error.metadata.minDuration === 1 ? 'Sekunde' : 'Sekunden';
|
||||||
|
return `Die Mindestvideodauer beträgt {minDuration} ${unit}`;
|
||||||
|
} else {
|
||||||
|
return 'Fehler beim Laden des Medium';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (state.task === 'blob-to-bitmap') return 'Medium wird geladen…';
|
||||||
|
return 'Vorschau wird erstellt…';
|
||||||
|
},
|
||||||
|
|
||||||
|
statusLabelProcessImage: (state) => {
|
||||||
|
if (!state || !state.task) return undefined;
|
||||||
|
if (state.task === 'store') {
|
||||||
|
if (state.error) return 'Fehler beim Hochladen des Medium';
|
||||||
|
return 'Medium wird hochgeladen…';
|
||||||
|
}
|
||||||
|
if (state.error) return 'Fehler bei Medienverarbeitung';
|
||||||
|
return 'Medium wird verarbeitet…';
|
||||||
|
},
|
||||||
|
|
||||||
|
cropLabelCropBoundaryEdge: 'Rand der Medium',
|
||||||
|
};
|
1
src/components/@pqina/pintura/locale/de_DE/trim/index.js
Normal file
1
src/components/@pqina/pintura/locale/de_DE/trim/index.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
export { default } from './de_DE.js';
|
@ -0,0 +1,5 @@
|
|||||||
|
export default {
|
||||||
|
annotateLabel: 'Annotate',
|
||||||
|
annotateIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M17.086 2.914a2.828 2.828 0 1 1 4 4l-14.5 14.5-5.5 1.5 1.5-5.5 14.5-14.5z"/></g>',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './en_GB.js';
|
235
src/components/@pqina/pintura/locale/en_GB/core/en_GB.js
Normal file
235
src/components/@pqina/pintura/locale/en_GB/core/en_GB.js
Normal file
@ -0,0 +1,235 @@
|
|||||||
|
const IconCross =
|
||||||
|
'<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M18 6L6 18M6 6l12 12"></path></path></g>';
|
||||||
|
|
||||||
|
const CharacterA =
|
||||||
|
'<path fill="none" d="M9 15 L12 9 L15 15 M10 13.5 h3" stroke="currentColor" stroke-width=".125em"/>';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
// generic
|
||||||
|
labelReset: 'Reset',
|
||||||
|
labelDefault: 'Default',
|
||||||
|
labelAuto: 'Auto',
|
||||||
|
labelNone: 'None',
|
||||||
|
labelEdit: 'Edit',
|
||||||
|
labelClose: 'Close',
|
||||||
|
labelSupportError: (features) => `${features.join(', ')} not supported on this browser`,
|
||||||
|
|
||||||
|
// defaults
|
||||||
|
labelColor: 'Color',
|
||||||
|
labelWidth: 'Width',
|
||||||
|
labelSize: 'Size',
|
||||||
|
labelOffset: 'Offset',
|
||||||
|
labelAmount: 'Amount',
|
||||||
|
labelInset: 'Inset',
|
||||||
|
labelRadius: 'Radius',
|
||||||
|
|
||||||
|
// controls
|
||||||
|
labelColorPalette: 'Color palette',
|
||||||
|
|
||||||
|
// sizes
|
||||||
|
labelSizeExtraSmall: 'Extra small',
|
||||||
|
labelSizeSmall: 'Small',
|
||||||
|
labelSizeMediumSmall: 'Medium small',
|
||||||
|
labelSizeMedium: 'Medium',
|
||||||
|
labelSizeMediumLarge: 'Medium large',
|
||||||
|
labelSizeLarge: 'Large',
|
||||||
|
labelSizeExtraLarge: 'Extra large',
|
||||||
|
|
||||||
|
// default buttons
|
||||||
|
|
||||||
|
labelButtonCancel: 'Cancel',
|
||||||
|
labelButtonUndo: 'Undo',
|
||||||
|
labelButtonRedo: 'Redo',
|
||||||
|
labelButtonRevert: 'Revert',
|
||||||
|
labelButtonExport: 'Done',
|
||||||
|
|
||||||
|
// zoom
|
||||||
|
labelZoomIn: 'Zoom in',
|
||||||
|
labelZoomOut: 'Zoom out',
|
||||||
|
labelZoomFit: 'Fit to view',
|
||||||
|
labelZoomActual: 'Actual size',
|
||||||
|
iconZoomIn: '<path stroke="currentColor" stroke-width=".125em" d="M8 12 h8 M12 8 v8" />',
|
||||||
|
iconZoomOut: '<path stroke="currentColor" stroke-width=".125em" d="M9 12 h6" />',
|
||||||
|
|
||||||
|
// icons
|
||||||
|
iconSupportError: `<g fill="none" stroke="currentColor" stroke-width="2"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><g><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></g>`,
|
||||||
|
iconButtonClose: IconCross,
|
||||||
|
iconButtonRevert: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M7.388 18.538a8 8 0 10-2.992-9.03"/><path fill="currentColor" d="M2.794 11.696L2.37 6.714l5.088 3.18z"/><path d="M12 8v4M12 12l4 2"/></g>`,
|
||||||
|
iconButtonUndo: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M10 8h4c2.485 0 5 2 5 5s-2.515 5-5 5h-4"/><path fill="currentColor" d="M5 8l4-3v6z"/></g>`,
|
||||||
|
iconButtonRedo: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M14 8h-4c-2.485 0-5 2-5 5s2.515 5 5 5h4"/><path fill="currentColor" d="M19 8l-4-3v6z"/></g>`,
|
||||||
|
iconButtonExport: `<polyline points="20 6 9 17 4 12" fill="none" stroke="currentColor" stroke-width=".125em"></polyline>`,
|
||||||
|
|
||||||
|
// status
|
||||||
|
statusLabelButtonClose: 'Close',
|
||||||
|
statusIconButtonClose: IconCross,
|
||||||
|
statusLabelLoadImage: (state) => {
|
||||||
|
if (!state || !state.task) return 'Waiting for image';
|
||||||
|
if (state.error)
|
||||||
|
return state.error.code === 'IMAGE_TOO_SMALL'
|
||||||
|
? 'Minimum image size is {minWidth} × {minHeight}'
|
||||||
|
: 'Error loading image';
|
||||||
|
if (state.task === 'blob-to-bitmap') return 'Preparing image…';
|
||||||
|
return 'Loading image…';
|
||||||
|
},
|
||||||
|
|
||||||
|
// processing status message
|
||||||
|
statusLabelProcessImage: (state) => {
|
||||||
|
if (!state || !state.task) return undefined;
|
||||||
|
if (state.task === 'store') {
|
||||||
|
if (state.error) return 'Error uploading image';
|
||||||
|
return 'Uploading image…';
|
||||||
|
}
|
||||||
|
if (state.error) return 'Error processing image';
|
||||||
|
return 'Processing image…';
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
export const MarkupEditor = {
|
||||||
|
shapeLabelButtonSelectSticker: 'Select image',
|
||||||
|
shapeIconButtonSelectSticker: `<g fill="none" stroke="currentColor" stroke-width="0.0625em"><path d="M8 21 L15 11 L19 15"/><path d="M15 2 v5 h5"/><path d="M8 2 h8 l4 4 v12 q0 4 -4 4 h-8 q-4 0 -4 -4 v-12 q0 -4 4 -4z"/></g><circle fill="currentColor" cx="10" cy="8" r="1.5"/>`,
|
||||||
|
|
||||||
|
shapeIconButtonFlipHorizontal: `<g stroke="currentColor" stroke-width=".125em"><path fill="none" d="M6 6.5h5v11H6z"/><path fill="currentColor" d="M15 6.5h3v11h-3z"/><path d="M11 4v16" fill="currentColor"/></g>`,
|
||||||
|
shapeIconButtonFlipVertical: `<g stroke="currentColor" stroke-width=".125em"><rect x="7" y="8" width="11" height="5" fill="none"/><rect x="7" y="17" width="11" height="2" fill="currentColor"/><line x1="5" y1="13" x2="20" y2="13"/></g>`,
|
||||||
|
shapeIconButtonRemove: `<g fill="none" fill-rule="evenodd"><path stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M7.5 7h9z"/><path d="M7.916 9h8.168a1 1 0 01.99 1.14l-.972 6.862a2 2 0 01-1.473 1.653c-.877.23-1.753.345-2.629.345-.876 0-1.752-.115-2.628-.345a2 2 0 01-1.473-1.653l-.973-6.862A1 1 0 017.916 9z" fill="currentColor"/><rect fill="currentColor" x="10" y="5" width="4" height="3" rx="1"/></g>`,
|
||||||
|
shapeIconButtonDuplicate: `<g fill="none" fill-rule="evenodd"><path d="M15 13.994V16a2 2 0 01-2 2H8a2 2 0 01-2-2v-5a2 2 0 012-2h2.142" stroke="currentColor" stroke-width=".125em"/><path d="M15 9V8a1 1 0 00-2 0v1h-1a1 1 0 000 2h1v1a1 1 0 002 0v-1h1a1 1 0 000-2h-1zm-4-4h6a2 2 0 012 2v6a2 2 0 01-2 2h-6a2 2 0 01-2-2V7a2 2 0 012-2z" fill="currentColor"/></g>`,
|
||||||
|
shapeIconButtonMoveToFront: `<g fill="none" fill-rule="evenodd"><rect fill="currentColor" x="11" y="13" width="8" height="2" rx="1"/><rect fill="currentColor" x="9" y="17" width="10" height="2" rx="1"/><path d="M11.364 8H10a5 5 0 000 10M12 6.5L14.5 8 12 9.5z" stroke="currentColor" stroke-width=".125em" stroke-linecap="round"/></g>`,
|
||||||
|
|
||||||
|
shapeIconButtonTextLayoutAutoWidth: `${CharacterA}`,
|
||||||
|
shapeIconButtonTextLayoutAutoHeight: `<g fill="currentColor"><circle cx="4" cy="12" r="1.5"/><circle cx="20" cy="12" r="1.5"/></g>${CharacterA}`,
|
||||||
|
shapeIconButtonTextLayoutFixedSize: `<g fill="currentColor"><circle cx="5" cy="6" r="1.5"/><circle cx="19" cy="6" r="1.5"/><circle cx="19" cy="19" r="1.5"/><circle cx="5" cy="19" r="1.5"/></g>${CharacterA}`,
|
||||||
|
|
||||||
|
shapeTitleButtonTextLayoutAutoWidth: 'Auto width',
|
||||||
|
shapeTitleButtonTextLayoutAutoHeight: 'Auto height',
|
||||||
|
shapeTitleButtonTextLayoutFixedSize: 'Fixed size',
|
||||||
|
|
||||||
|
shapeTitleButtonFlipHorizontal: 'Flip Horizontal',
|
||||||
|
shapeTitleButtonFlipVertical: 'Flip Vertical',
|
||||||
|
shapeTitleButtonRemove: 'Remove',
|
||||||
|
shapeTitleButtonDuplicate: 'Duplicate',
|
||||||
|
shapeTitleButtonMoveToFront: 'Move to front',
|
||||||
|
|
||||||
|
shapeLabelInputText: 'Edit text',
|
||||||
|
|
||||||
|
shapeIconInputCancel: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M18 6L6 18M6 6l12 12"/></g>`,
|
||||||
|
shapeIconInputConfirm: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><polyline points="20 6 9 17 4 12"/></g>`,
|
||||||
|
shapeLabelInputCancel: 'Cancel',
|
||||||
|
shapeLabelInputConfirm: 'Confirm',
|
||||||
|
|
||||||
|
shapeLabelStrokeNone: 'No outline',
|
||||||
|
|
||||||
|
shapeLabelFontStyleNormal: 'Normal',
|
||||||
|
shapeLabelFontStyleBold: 'Bold',
|
||||||
|
shapeLabelFontStyleItalic: 'Italic',
|
||||||
|
shapeLabelFontStyleItalicBold: 'Bold Italic',
|
||||||
|
|
||||||
|
shapeTitleBackgroundColor: 'Fill color',
|
||||||
|
|
||||||
|
shapeTitleCornerRadius: 'Corner radius',
|
||||||
|
|
||||||
|
shapeTitleFontFamily: 'Font',
|
||||||
|
shapeTitleFontSize: 'Font size',
|
||||||
|
shapeTitleFontStyle: 'Font style',
|
||||||
|
shapeTitleLineHeight: 'Line height',
|
||||||
|
|
||||||
|
shapeTitleLineStart: 'Start',
|
||||||
|
shapeTitleLineEnd: 'End',
|
||||||
|
shapeTitleStrokeWidth: 'Line width',
|
||||||
|
shapeTitleStrokeColor: 'Line color',
|
||||||
|
|
||||||
|
shapeTitleLineDecorationBar: 'Bar',
|
||||||
|
shapeTitleLineDecorationCircle: 'Circle',
|
||||||
|
shapeTitleLineDecorationSquare: 'Square',
|
||||||
|
shapeTitleLineDecorationArrow: 'Arrow',
|
||||||
|
shapeTitleLineDecorationCircleSolid: 'Circle solid',
|
||||||
|
shapeTitleLineDecorationSquareSolid: 'Square solid',
|
||||||
|
shapeTitleLineDecorationArrowSolid: 'Arrow solid',
|
||||||
|
|
||||||
|
shapeIconLineDecorationBar: `<g stroke="currentColor" stroke-linecap="round" stroke-width=".125em"><path d="M5,12 H16"/><path d="M16,8 V16"/></g>`,
|
||||||
|
shapeIconLineDecorationCircle: `<g stroke="currentColor" stroke-linecap="round"><path stroke-width=".125em" d="M5,12 H12"/><circle fill="none" stroke-width=".125em" cx="16" cy="12" r="4"/></g>`,
|
||||||
|
shapeIconLineDecorationSquare: `<g stroke="currentColor" stroke-linecap="round"><path stroke-width=".125em" d="M5,12 H12"/><rect fill="none" stroke-width=".125em" x="12" y="8" width="8" height="8"/></g>`,
|
||||||
|
shapeIconLineDecorationArrow: `<g stroke="currentColor" stroke-linecap="round" stroke-width=".125em"><path d="M5,12 H16 M13,7 l6,5 l-6,5" fill="none"/></g>`,
|
||||||
|
shapeIconLineDecorationCircleSolid: `<g stroke="currentColor" stroke-linecap="round"><path stroke-width=".125em" d="M5,12 H12"/><circle fill="currentColor" cx="16" cy="12" r="4"/></g>`,
|
||||||
|
shapeIconLineDecorationSquareSolid: `<g stroke="currentColor" stroke-linecap="round"><path stroke-width=".125em" d="M5,12 H12"/><rect fill="currentColor" x="12" y="8" width="8" height="8"/></g>`,
|
||||||
|
shapeIconLineDecorationArrowSolid: `<g stroke="currentColor" stroke-linecap="round" stroke-width=".125em"><path d="M5,12 H16"/><path d="M13,7 l6,5 l-6,5z" fill="currentColor"/></g>`,
|
||||||
|
|
||||||
|
shapeTitleColorTransparent: 'Transparent',
|
||||||
|
shapeTitleColorWhite: 'White',
|
||||||
|
shapeTitleColorSilver: 'Silver',
|
||||||
|
shapeTitleColorGray: 'Gray',
|
||||||
|
shapeTitleColorBlack: 'Black',
|
||||||
|
shapeTitleColorNavy: 'Navy',
|
||||||
|
shapeTitleColorBlue: 'Blue',
|
||||||
|
shapeTitleColorAqua: 'Aqua',
|
||||||
|
shapeTitleColorTeal: 'Teal',
|
||||||
|
shapeTitleColorOlive: 'Olive',
|
||||||
|
shapeTitleColorGreen: 'Green',
|
||||||
|
shapeTitleColorYellow: 'Yellow',
|
||||||
|
shapeTitleColorOrange: 'Orange',
|
||||||
|
shapeTitleColorRed: 'Red',
|
||||||
|
shapeTitleColorMaroon: 'Maroon',
|
||||||
|
shapeTitleColorFuchsia: 'Fuchsia',
|
||||||
|
shapeTitleColorPurple: 'Purple',
|
||||||
|
|
||||||
|
shapeTitleTextOutline: 'Text outline',
|
||||||
|
shapeTitleTextOutlineWidth: 'Width',
|
||||||
|
|
||||||
|
shapeTitleTextShadow: 'Text shadow',
|
||||||
|
shapeTitleTextShadowBlur: 'Blur',
|
||||||
|
|
||||||
|
shapeTitleTextColor: 'Font color',
|
||||||
|
shapeTitleTextAlign: 'Text align',
|
||||||
|
shapeTitleTextAlignLeft: 'Left align text',
|
||||||
|
shapeTitleTextAlignCenter: 'Center align text',
|
||||||
|
shapeTitleTextAlignRight: 'Right align text',
|
||||||
|
|
||||||
|
shapeIconTextAlignLeft: `<g stroke-width=".125em" stroke="currentColor"><line x1="5" y1="8" x2="15" y2="8"/><line x1="5" y1="12" x2="19" y2="12"/><line x1="5" y1="16" x2="14" y2="16"/></g>`,
|
||||||
|
shapeIconTextAlignCenter: `<g stroke-width=".125em" stroke="currentColor"><line x1="7" y1="8" x2="17" y2="8"/><line x1="5" y1="12" x2="19" y2="12"/><line x1="8" y1="16" x2="16" y2="16"/></g>`,
|
||||||
|
shapeIconTextAlignRight: `<g stroke-width=".125em" stroke="currentColor"><line x1="9" y1="8" x2="19" y2="8"/><line x1="5" y1="12" x2="19" y2="12"/><line x1="11" y1="16" x2="19" y2="16"/></g>`,
|
||||||
|
|
||||||
|
shapeLabelToolMove: 'Move',
|
||||||
|
shapeLabelToolView: 'View',
|
||||||
|
shapeLabelToolSharpie: 'Sharpie',
|
||||||
|
shapeLabelToolEraser: 'Eraser',
|
||||||
|
shapeLabelToolPath: 'Path',
|
||||||
|
shapeLabelToolRectangle: 'Rectangle',
|
||||||
|
shapeLabelToolEllipse: 'Ellipse',
|
||||||
|
shapeLabelToolArrow: 'Arrow',
|
||||||
|
shapeLabelToolLine: 'Line',
|
||||||
|
shapeLabelToolText: 'Text',
|
||||||
|
shapeLabelToolPreset: 'Stickers',
|
||||||
|
|
||||||
|
shapeIconToolView: `<g stroke-width=".125em" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M10.98 9.703V2.567c0-1.19 1.19-1.785 1.784-1.785.595 0 1.784.595 1.784 1.785v3.568"/><path d="M14.548 9.703V4.35c0-1.19 1.19-1.784 1.784-1.784.595 0 1.784.594 1.784 1.784v2.973"/><path d="M18.116 10.244V7.271c0-1.19 1.19-1.784 1.784-1.784.595 0 1.785.595 1.785 1.784 0 1.19 0 8.92-1.19 12.488-1.19 3.569-10.704 4.758-13.678 0-2.973-4.757-2.973-4.757-4.163-6.541-1.189-1.784-1.153-2.974-.594-3.568.558-.595 1.784-1.19 2.973.594 1.277 1.916 2.07 2.907 2.379 2.974V5.487c0-1.19 1.19-1.784 1.784-1.784.595 0 1.784.595 1.784 1.784V8.46"/></g>`,
|
||||||
|
shapeIconToolMove: `<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M6 2 L6 19 L18 13 Z M13 18 L16 24" stroke="currentColor" stroke-width=".125em" fill="none" fill-rule="evenodd" stroke-linejoin="round"/></g>`,
|
||||||
|
shapeIconToolSharpie: `<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M2.025 5c5.616-2.732 8.833-3.857 9.65-3.374C12.903 2.351.518 12.666 2.026 14 3.534 15.334 16.536.566 17.73 2.566 18.924 4.566 3.98 17.187 4.831 18c.851.813 9.848-6 11.643-6 1.087 0-2.53 5.11-2.92 7-.086.41 3.323-1.498 4.773-1 .494.17.64 2.317 1.319 3 .439.443 1.332.776 2.679 1" stroke="currentColor" stroke-width=".125em" fill="none" fill-rule="evenodd" stroke-linejoin="round"/></g>`,
|
||||||
|
shapeIconToolEraser: `<g stroke-width=".125em" stroke="currentColor" stroke-linecap="round" fill="none"><g transform="translate(3, 15) rotate(-45)"><rect x="0" y="0" width="18" height="10" rx="3"/></g><line x1="11" y1="21" x2="18" y2="21"/><line x1="20" y1="21" x2="22" y2="21"/></g>`,
|
||||||
|
shapeIconToolPath: `<g stroke-width=".125em" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" fill="none"><circle cx="21" cy="3" r="2"/><circle cx="9" cy="9" r="2"/><circle cx="3" cy="21" r="2"/><path d="M19 4 11 8 M8 11 4 19"/></g>`,
|
||||||
|
shapeIconToolRectangle: `<g stroke-width=".125em" stroke="currentColor" fill="none"><rect x="1" y="1" width="22" height="22" rx="4"/></g>`,
|
||||||
|
shapeIconToolEllipse: `<g stroke-width=".125em" stroke="currentColor" fill="none"><circle cx="12" cy="12" r="11"/></g>`,
|
||||||
|
shapeIconToolArrow: `<g stroke-width=".125em" stroke="currentColor" fill="none"><line x1="20" y1="3" x2="6" y2="21"/><path d="m10 6 L21.5 1 L20 13.5" fill="currentColor" stroke="none"/></g>`,
|
||||||
|
shapeIconToolLine: `<g stroke-width=".125em" stroke="currentColor" fill="none"><line x1="20" y1="3" x2="6" y2="21"/></g>`,
|
||||||
|
shapeIconToolText: `<g stroke="none" fill="currentColor" transform="translate(6,0)"><path d="M8.14 20.085c.459 0 .901-.034 1.329-.102a8.597 8.597 0 001.015-.21v1.984c-.281.135-.695.247-1.242.336a9.328 9.328 0 01-1.477.133c-3.312 0-4.968-1.745-4.968-5.235V6.804H.344v-1.25l2.453-1.078L3.89.819h1.5v3.97h4.97v2.015H5.39v10.078c0 1.031.245 1.823.735 2.375s1.161.828 2.015.828z"/>`,
|
||||||
|
shapeIconToolPreset: `<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M12 22c2.773 0 1.189-5.177 3-7 1.796-1.808 7-.25 7-3 0-5.523-4.477-10-10-10S2 6.477 2 12s4.477 10 10 10z"></path><path d="M20 17c-3 3-5 5-8 5"></path></g>`,
|
||||||
|
|
||||||
|
shapeTitleSelectionMode: 'Selection mode',
|
||||||
|
shapeTitleBrushSize: 'Brush size',
|
||||||
|
|
||||||
|
shapeLabelSelectionModeNew: 'New',
|
||||||
|
shapeLabelSelectionModeAdd: 'Add',
|
||||||
|
shapeLabelSelectionModeSubtract: 'Remove',
|
||||||
|
|
||||||
|
shapeLabelToolSelectionBrush: 'Brush',
|
||||||
|
shapeLabelToolSelectionLassoo: 'Lassoo',
|
||||||
|
shapeLabelToolSelectionRectangle: 'Rectangle marquee',
|
||||||
|
shapeLabelToolSelectionEllipse: 'Ellipse marquee',
|
||||||
|
|
||||||
|
shapeIconSelectionModeNew: `<g fill="none" fill-rule="evenodd" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"><path d="M6.5 17H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v1.5"/><rect width="12" height="12" x="9" y="9" fill="currentColor" fill-opacity=".25" rx="2"/></g>`,
|
||||||
|
shapeIconSelectionModeAdd: `<g fill="none" fill-rule="evenodd" stroke="currentColor"><path fill="currentColor" fill-opacity=".25" stroke-linecap="round" stroke-linejoin="round" d="M15 3a2 2 0 0 1 2 2v4h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-8a2 2 0 0 1-2-2v-2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h10Z"/><path d="M13 15h4M15 13v4"/></g>`,
|
||||||
|
shapeIconSelectionModeSubtract: `<g fill="none" fill-rule="evenodd" stroke="currentColor"><path fill="currentColor" fill-opacity=".25" stroke-linecap="round" stroke-linejoin="round" d="M15 3a2 2 0 0 1 2 2v4h-6a2 2 0 0 0-1.995 1.85L9 11v6H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h10Z"/><rect width="12" height="12" x="9" y="9" stroke-linecap="round" stroke-linejoin="round" rx="2"/><path d="M13 15h4"/></g>`,
|
||||||
|
shapeIconToolSelectionBrush: `<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M2.025 5c5.616-2.732 8.833-3.857 9.65-3.374C12.903 2.351.518 12.666 2.026 14 3.534 15.334 16.536.566 17.73 2.566 18.924 4.566 3.98 17.187 4.831 18c.851.813 9.848-6 11.643-6 1.087 0-2.53 5.11-2.92 7-.086.41 3.323-1.498 4.773-1 .494.17.64 2.317 1.319 3 .439.443 1.332.776 2.679 1" stroke="currentColor" fill-rule="evenodd" stroke-linejoin="round"/></g>`,
|
||||||
|
shapeIconToolSelectionLassoo: `<g fill="none" fill-rule="evenodd" stroke-width=".125em" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M11.428 17.702a18.46 18.46 0 0 0 4.085-1.595c5.851-3.112 9.019-8.599 7.074-12.256-1.945-3.657-8.265-4.1-14.116-.988C2.619 5.974-.55 11.46 1.396 15.118c.63 1.186 1.72 2.033 3.105 2.532"/><ellipse cx="8" cy="18.5" rx="3.5" ry="2.833" transform="rotate(-15 8 18.5)"/><path stroke-linecap="round" d="M5 18c3.347 1.048 5.514 1.881 6.5 2.5.859.54 1.517.994 1.5 2.364"/></g>`,
|
||||||
|
shapeIconToolSelectionRectangle: `<g stroke-width=".125em" stroke="currentColor"><path d="M9 1 h6 m4 0 h4v4 m0 4 v6 m0 4 v4h-4 m-4 0 h-6 m-4 0 h-4v-4 m0 -4 v-6 m0 -4 v-4h4" fill="none" /></g>`,
|
||||||
|
shapeIconToolSelectionEllipse: `<path stroke-width=".125em" stroke="currentColor" d="M1.21 9.853a11.054 11.054 0 0 0 0 4.294m1.643 3.965a11.054 11.054 0 0 0 3.035 3.035m3.965 1.644a11.054 11.054 0 0 0 4.294 0m3.965-1.644a11.054 11.054 0 0 0 3.035-3.035m1.644-3.965a11.054 11.054 0 0 0 0-4.294m-1.644-3.965a11.054 11.054 0 0 0-3.035-3.035m-3.965-1.644a11.054 11.054 0 0 0-4.294 0M5.888 2.853a11.054 11.054 0 0 0-3.035 3.035"/>`,
|
||||||
|
};
|
||||||
|
|
||||||
|
// deprecated
|
||||||
|
export const ShapeEditor = MarkupEditor;
|
1
src/components/@pqina/pintura/locale/en_GB/core/index.js
Normal file
1
src/components/@pqina/pintura/locale/en_GB/core/index.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
export { default, MarkupEditor } from './en_GB.js';
|
54
src/components/@pqina/pintura/locale/en_GB/crop/en_GB.js
Normal file
54
src/components/@pqina/pintura/locale/en_GB/crop/en_GB.js
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
export default {
|
||||||
|
cropLabel: 'Crop',
|
||||||
|
cropIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M23 17H9a2 2 0 0 1-2-2v-5m0-3V1 M1 7h14a2 2 0 0 1 2 2v7m0 4v3"/></g>',
|
||||||
|
cropIconButtonRecenter: `<path stroke="currentColor" fill="none" stroke-width="2" stroke-linejoin="bevel" d="M1.5 7.5v-6h6M1.5 16.5v6h6M22.5 16.5v6h-6M22.5 7.5v-6h-6"/><circle cx="12" cy="12" r="3.5" fill="currentColor" stroke="none"/>`,
|
||||||
|
cropIconButtonRotateLeft:
|
||||||
|
'<g stroke="none" fill="currentColor"><path fill="none" d="M-1-1h582v402H-1z"/><rect x="3" rx="1" height="12" width="12" y="9"/><path d="M15 5h-1a5 5 0 015 5 1 1 0 002 0 7 7 0 00-7-7h-1.374l.747-.747A1 1 0 0011.958.84L9.603 3.194a1 1 0 000 1.415l2.355 2.355a1 1 0 001.415-1.414l-.55-.55H15z"/></g>',
|
||||||
|
cropIconButtonRotateRight:
|
||||||
|
'<g stroke="none" fill="currentColor"><path fill="none" d="M-1-1h582v402H-1z"/><path d="M11.177 5H10a5 5 0 00-5 5 1 1 0 01-2 0 7 7 0 017-7h1.374l-.747-.747A1 1 0 0112.042.84l2.355 2.355a1 1 0 010 1.415l-2.355 2.354a1 1 0 01-1.415-1.414l.55-.55z"/><rect rx="1" height="12" width="12" y="9" x="9"/></g>',
|
||||||
|
cropIconButtonFlipVertical:
|
||||||
|
'<g stroke="none" fill="currentColor"><path d="M19.993 12.143H7a1 1 0 0 1-1-1V5.994a1 1 0 0 1 1.368-.93l12.993 5.15a1 1 0 0 1-.368 1.93z"/><path d="M19.993 14a1 1 0 0 1 .368 1.93L7.368 21.078A1 1 0 0 1 6 20.148V15a1 1 0 0 1 1-1h12.993z" opacity=".6"/></g>',
|
||||||
|
cropIconButtonFlipHorizontal:
|
||||||
|
'<g stroke="none" fill="currentColor"><path d="M11.93 7.007V20a1 1 0 0 1-1 1H5.78a1 1 0 0 1-.93-1.368l5.15-12.993a1 1 0 0 1 1.929.368z"/><path d="M14 7.007V20a1 1 0 0 0 1 1h5.149a1 1 0 0 0 .93-1.368l-5.15-12.993A1 1 0 0 0 14 7.007z" opacity=".6"/></g>',
|
||||||
|
|
||||||
|
cropIconSelectPreset: (locale, aspectRatio) => {
|
||||||
|
const [a, b, c] = !aspectRatio
|
||||||
|
? [0.2, 0.3, 0.4]
|
||||||
|
: [
|
||||||
|
aspectRatio < 1 ? 1 : 0.3,
|
||||||
|
aspectRatio === 1 ? 0.85 : 0.5,
|
||||||
|
aspectRatio > 1 ? 1 : 0.3,
|
||||||
|
];
|
||||||
|
return `<g fill="currentColor">
|
||||||
|
<rect opacity="${a}" x="2" y="4" width="10" height="18" rx="1"/>
|
||||||
|
<rect opacity="${b}" x="4" y="8" width="14" height="14" rx="1"/>
|
||||||
|
<rect opacity="${c}" x="6" y="12" width="17" height="10" rx="1"/>
|
||||||
|
</g>`;
|
||||||
|
},
|
||||||
|
|
||||||
|
cropIconCropBoundary: (locale, isBoundToImage) => {
|
||||||
|
const [a, b, c, d] = isBoundToImage ? [0.3, 1, 0, 0] : [0, 0, 0.3, 1];
|
||||||
|
return `<g fill="currentColor">
|
||||||
|
<rect opacity="${a}" x="2" y="3" width="20" height="20" rx="1"/>
|
||||||
|
<rect opacity="${b}" x="7" y="8" width="10" height="10" rx="1"/>
|
||||||
|
<rect opacity="${c}" x="4" y="8" width="14" height="14" rx="1"/>
|
||||||
|
<rect opacity="${d}" x="12" y="4" width="10" height="10" rx="1"/>
|
||||||
|
</g>`;
|
||||||
|
},
|
||||||
|
|
||||||
|
cropLabelButtonRecenter: 'Recenter',
|
||||||
|
cropLabelButtonRotateLeft: 'Rotate left',
|
||||||
|
cropLabelButtonRotateRight: 'Rotate right',
|
||||||
|
cropLabelButtonFlipHorizontal: 'Flip horizontal',
|
||||||
|
cropLabelButtonFlipVertical: 'Flip vertical',
|
||||||
|
|
||||||
|
cropLabelSelectPreset: 'Crop shape',
|
||||||
|
|
||||||
|
cropLabelCropBoundary: 'Crop boundary',
|
||||||
|
cropLabelCropBoundaryEdge: 'Edge of image',
|
||||||
|
cropLabelCropBoundaryNone: 'None',
|
||||||
|
|
||||||
|
cropLabelTabRotation: 'Rotation',
|
||||||
|
cropLabelTabZoom: 'Scale',
|
||||||
|
};
|
1
src/components/@pqina/pintura/locale/en_GB/crop/index.js
Normal file
1
src/components/@pqina/pintura/locale/en_GB/crop/index.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
export { default } from './en_GB.js';
|
@ -0,0 +1,5 @@
|
|||||||
|
export default {
|
||||||
|
decorateLabel: 'Decorate',
|
||||||
|
decorateIcon:
|
||||||
|
'<g fill="none" fill-rule="evenodd"><path stroke="currentColor" stroke-width=".125em" stroke-linecap="round" stroke-linejoin="round" d="M12 18.5l-6.466 3.4 1.235-7.2-5.23-5.1 7.228-1.05L12 2l3.233 6.55 7.229 1.05-5.231 5.1 1.235 7.2z"/></g>',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './en_GB.js';
|
12
src/components/@pqina/pintura/locale/en_GB/fill/en_GB.js
Normal file
12
src/components/@pqina/pintura/locale/en_GB/fill/en_GB.js
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
export default {
|
||||||
|
fillLabel: 'Fill',
|
||||||
|
fillIcon: `
|
||||||
|
<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em">
|
||||||
|
<g transform="rotate(60, 12, 12)">
|
||||||
|
<rect x="4" y="4" width="14" height="16" rx="3"/>
|
||||||
|
</g>
|
||||||
|
<path d="M21 13 L21 21"></path>
|
||||||
|
<path d="M4.5 12.5 L19 12.5"></path>
|
||||||
|
</g>
|
||||||
|
`,
|
||||||
|
};
|
1
src/components/@pqina/pintura/locale/en_GB/fill/index.js
Normal file
1
src/components/@pqina/pintura/locale/en_GB/fill/index.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
export { default } from './en_GB.js';
|
18
src/components/@pqina/pintura/locale/en_GB/filter/en_GB.js
Normal file
18
src/components/@pqina/pintura/locale/en_GB/filter/en_GB.js
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
export default {
|
||||||
|
filterLabel: 'Filter',
|
||||||
|
filterIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M18.347 9.907a6.5 6.5 0 1 0-1.872 3.306M3.26 11.574a6.5 6.5 0 1 0 2.815-1.417 M10.15 17.897A6.503 6.503 0 0 0 16.5 23a6.5 6.5 0 1 0-6.183-8.51"/></g>',
|
||||||
|
filterLabelChrome: 'Chrome',
|
||||||
|
filterLabelFade: 'Fade',
|
||||||
|
filterLabelCold: 'Cold',
|
||||||
|
filterLabelWarm: 'Warm',
|
||||||
|
filterLabelPastel: 'Pastel',
|
||||||
|
filterLabelMonoDefault: 'Mono',
|
||||||
|
filterLabelMonoNoir: 'Noir',
|
||||||
|
filterLabelMonoWash: 'Wash',
|
||||||
|
filterLabelMonoStark: 'Stark',
|
||||||
|
filterLabelSepiaDefault: 'Sepia',
|
||||||
|
filterLabelSepiaBlues: 'Blues',
|
||||||
|
filterLabelSepiaRust: 'Rust',
|
||||||
|
filterLabelSepiaColor: 'Color',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './en_GB.js';
|
14
src/components/@pqina/pintura/locale/en_GB/finetune/en_GB.js
Normal file
14
src/components/@pqina/pintura/locale/en_GB/finetune/en_GB.js
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
export default {
|
||||||
|
finetuneLabel: 'Finetune',
|
||||||
|
finetuneIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M4 1v5.5m0 3.503V23M12 1v10.5m0 3.5v8M20 1v15.5m0 3.5v3M2 7h4M10 12h4M18 17h4"/></g>',
|
||||||
|
|
||||||
|
finetuneLabelBrightness: 'Brightness',
|
||||||
|
finetuneLabelContrast: 'Contrast',
|
||||||
|
finetuneLabelSaturation: 'Saturation',
|
||||||
|
finetuneLabelExposure: 'Exposure',
|
||||||
|
finetuneLabelTemperature: 'Temperature',
|
||||||
|
finetuneLabelGamma: 'Gamma',
|
||||||
|
finetuneLabelClarity: 'Clarity',
|
||||||
|
finetuneLabelVignette: 'Vignette',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './en_GB.js';
|
17
src/components/@pqina/pintura/locale/en_GB/frame/en_GB.js
Normal file
17
src/components/@pqina/pintura/locale/en_GB/frame/en_GB.js
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
export default {
|
||||||
|
frameLabel: 'Frame',
|
||||||
|
frameIcon: `<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em">
|
||||||
|
<rect x="2" y="2" width="20" height="20" rx="4"/>
|
||||||
|
<rect x="6" y="6" width="12" height="12" rx="1"/>
|
||||||
|
</g>`,
|
||||||
|
|
||||||
|
frameLabelMatSharp: 'Mat',
|
||||||
|
frameLabelMatRound: 'Bevel',
|
||||||
|
frameLabelLineSingle: 'Line',
|
||||||
|
frameLabelLineMultiple: 'Zebra',
|
||||||
|
frameLabelEdgeSeparate: 'Inset',
|
||||||
|
frameLabelEdgeOverlap: 'Plus',
|
||||||
|
frameLabelEdgeCross: 'Lumber',
|
||||||
|
frameLabelCornerHooks: 'Hook',
|
||||||
|
frameLabelPolaroid: 'Polaroid',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './en_GB.js';
|
15
src/components/@pqina/pintura/locale/en_GB/index.d.ts
vendored
Normal file
15
src/components/@pqina/pintura/locale/en_GB/index.d.ts
vendored
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
export const LocaleAnnotate: { [key: string]: any };
|
||||||
|
export const LocaleCore: { [key: string]: any };
|
||||||
|
export const LocaleCrop: { [key: string]: any };
|
||||||
|
export const LocaleDecorate: { [key: string]: any };
|
||||||
|
export const LocaleFilter: { [key: string]: any };
|
||||||
|
export const LocaleFinetune: { [key: string]: any };
|
||||||
|
export const LocaleFrame: { [key: string]: any };
|
||||||
|
export const LocaleResize: { [key: string]: any };
|
||||||
|
export const LocaleRedact: { [key: string]: any };
|
||||||
|
export const LocaleSticker: { [key: string]: any };
|
||||||
|
export const LocaleTrim: { [key: string]: any };
|
||||||
|
export const LocaleFill: { [key: string]: any };
|
||||||
|
export const LocaleMarkupEditor: { [key: string]: any };
|
||||||
|
|
||||||
|
export {};
|
42
src/components/@pqina/pintura/locale/en_GB/index.js
Normal file
42
src/components/@pqina/pintura/locale/en_GB/index.js
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
import Annotate from './annotate/index.js';
|
||||||
|
import Core, { MarkupEditor } from './core/index.js';
|
||||||
|
import Crop from './crop/index.js';
|
||||||
|
import Decorate from './decorate/index.js';
|
||||||
|
import Filter from './filter/index.js';
|
||||||
|
import Finetune from './finetune/index.js';
|
||||||
|
import Frame from './frame/index.js';
|
||||||
|
import Resize from './resize/index.js';
|
||||||
|
import Redact from './redact/index.js';
|
||||||
|
import Sticker from './sticker/index.js';
|
||||||
|
import Trim from './trim/index.js';
|
||||||
|
import Fill from './fill/index.js';
|
||||||
|
|
||||||
|
export const LocaleAnnotate = Annotate;
|
||||||
|
export const LocaleCore = Core;
|
||||||
|
export const LocaleCrop = Crop;
|
||||||
|
export const LocaleDecorate = Decorate;
|
||||||
|
export const LocaleFilter = Filter;
|
||||||
|
export const LocaleFinetune = Finetune;
|
||||||
|
export const LocaleFrame = Frame;
|
||||||
|
export const LocaleResize = Resize;
|
||||||
|
export const LocaleRedact = Redact;
|
||||||
|
export const LocaleSticker = Sticker;
|
||||||
|
export const LocaleTrim = Trim;
|
||||||
|
export const LocaleFill = Fill;
|
||||||
|
export const LocaleMarkupEditor = MarkupEditor;
|
||||||
|
|
||||||
|
export default {
|
||||||
|
...Core,
|
||||||
|
...MarkupEditor,
|
||||||
|
...Annotate,
|
||||||
|
...Crop,
|
||||||
|
...Decorate,
|
||||||
|
...Filter,
|
||||||
|
...Finetune,
|
||||||
|
...Frame,
|
||||||
|
...Resize,
|
||||||
|
...Redact,
|
||||||
|
...Sticker,
|
||||||
|
...Fill,
|
||||||
|
...Trim,
|
||||||
|
};
|
@ -0,0 +1,4 @@
|
|||||||
|
export default {
|
||||||
|
redactLabel: 'Redact',
|
||||||
|
redactIcon: `<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M 4 5 l 1 -1"/><path d="M 4 10 l 6 -6"/><path d="M 4 15 l 11 -11"/><path d="M 4 20 l 16 -16"/><path d="M 9 20 l 11 -11"/><path d="M 14 20 l 6 -6"/><path d="M 19 20 l 1 -1"/></g>`,
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './en_GB.js';
|
19
src/components/@pqina/pintura/locale/en_GB/resize/en_GB.js
Normal file
19
src/components/@pqina/pintura/locale/en_GB/resize/en_GB.js
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
export default {
|
||||||
|
resizeLabel: 'Resize',
|
||||||
|
resizeIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><rect x="2" y="12" width="10" height="10" rx="2"/><path d="M4 11.5V4a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-5.5"/><path d="M14 10l3.365-3.365M14 6h4v4"/></g>',
|
||||||
|
|
||||||
|
resizeLabelFormCaption: 'Image output size',
|
||||||
|
|
||||||
|
resizeLabelInputWidth: 'w',
|
||||||
|
resizeTitleInputWidth: 'Width',
|
||||||
|
resizeLabelInputHeight: 'h',
|
||||||
|
resizeTitleInputHeight: 'Height',
|
||||||
|
|
||||||
|
resizeTitleButtonMaintainAspectRatio: 'Maintain aspectratio',
|
||||||
|
|
||||||
|
resizeIconButtonMaintainAspectRatio: (active, activeFraction) =>
|
||||||
|
`<defs><mask id="mask1" x="0" y="0" width="24" height="24" ><rect x="0" y="0" width="24" height="10" fill="#fff" stroke="none"/></mask></defs><g fill="none" fill-rule="evenodd"><g mask="url(#mask1)"><path transform="translate(0 ${
|
||||||
|
(activeFraction - 1) * 3
|
||||||
|
})" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" d="M9.401 10.205v-.804a2.599 2.599 0 0 1 5.198 0V17"/></g><rect fill="currentColor" x="7" y="10" width="10" height="7" rx="1.5"/></g>`,
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './en_GB.js';
|
@ -0,0 +1,6 @@
|
|||||||
|
export default {
|
||||||
|
retouchLabel: 'Retouch',
|
||||||
|
retouchIcon: `
|
||||||
|
<g fill="none" fill-rule="evenodd"><path fill="currentColor" d="m17 6-2-1-2 1 1-2-1-2 2 1 2-1-1 2zM5.5 5.5 3 4 .5 5.5 2 3 .5.5 3 2 5.5.5 4 3zM9 21l-3-1.5L3 21l1.5-3L3 15l3 1.5L9 15l-1.5 3z"/><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m9.266 6.705 13.529 13.529c-.071.78-.34 1.371-.765 1.796-.425.425-1.015.694-1.796.765h0L6.705 9.266c.071-.78.34-1.371.765-1.796.425-.425 1.015-.694 1.796-.765h0Z"/><path stroke="currentColor" stroke-width="1.5" d="M12 9.5c-.657.323-1.157.657-1.5 1-.343.343-.677.843-1 1.5"/></g>
|
||||||
|
`,
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './en_GB.js';
|
@ -0,0 +1,5 @@
|
|||||||
|
export default {
|
||||||
|
stickerLabel: 'Sticker',
|
||||||
|
stickerIcon:
|
||||||
|
'<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M12 22c2.773 0 1.189-5.177 3-7 1.796-1.808 7-.25 7-3 0-5.523-4.477-10-10-10S2 6.477 2 12s4.477 10 10 10z"/><path d="M20 17c-3 3-5 5-8 5"/></g>',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './en_GB.js';
|
60
src/components/@pqina/pintura/locale/en_GB/trim/en_GB.js
Normal file
60
src/components/@pqina/pintura/locale/en_GB/trim/en_GB.js
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
export default {
|
||||||
|
trimLabel: 'Trim',
|
||||||
|
trimIcon: `<g stroke-width=".125em" stroke="currentColor" fill="none"><path d=" M1 3 v18 M5 3 v2 M9 3 v2 M5 18 v2 M9 18 v2 M1 3 h12 M1 6 h10 M1 18 h9 M1 21 h8 M14 0 l-4 24 M18 3 h5 M17.5 6 h6 M15.5 18 h7 M15 21 h8 M19 3 v2 M15 18 v2 M19 18 v2 M23 3 v18"/></g>`,
|
||||||
|
|
||||||
|
trimLabelPlay: 'Play',
|
||||||
|
trimLabelPause: 'Pause',
|
||||||
|
|
||||||
|
trimLabelMute: 'Mute',
|
||||||
|
trimLabelUnmute: 'Unmute',
|
||||||
|
|
||||||
|
trimLabelSplit: 'Split',
|
||||||
|
trimLabelMerge: 'Merge',
|
||||||
|
|
||||||
|
trimIconButtonMute:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor"><polygon fill="currentColor" points="2 16 2 8 8 8 15 1 15 23 8 16"/><path d="M19.3781212,15.2166107 C20.3621122,14.4879168 21,13.3184517 21,12 C21,10.6815483 20.3621122,9.51208318 19.3781212,8.78338927"/></g>',
|
||||||
|
trimIconButtonUnmute:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor"><polygon fill="currentColor" points="2 16 2 8 3 8 15 20 15 23 8 16"/><polygon fill="currentColor" points="8 8 15 1 15 15"/><line x1="1" y1="1" x2="23" y2="23"/></g>',
|
||||||
|
|
||||||
|
trimIconButtonPlay: '<polygon fill="currentColor" points="7 3, 21 12, 7 21"/>',
|
||||||
|
trimIconButtonPause:
|
||||||
|
'<g fill="currentColor"><rect x="6" y="4" width="4" height="16"/><rect x="14" y="4" width="4" height="16"/></g>',
|
||||||
|
|
||||||
|
trimIconButtonSplit: `<g stroke="currentColor" stroke-width=".125em">
|
||||||
|
<path d="M12 4 V20"/>
|
||||||
|
<path fill="currentColor" d="M6 8 L6 16 L2 12 Z M18 8 L22 12 L18 16 Z"/>
|
||||||
|
</g>`,
|
||||||
|
trimIconButtonMerge: `<g stroke="currentColor" stroke-width=".125em">
|
||||||
|
<path d="M1 4 V20 M23 4 V20"/>
|
||||||
|
<path fill="currentColor" d="M6 8 L10 12 L6 16 Z M18 8 L14 12 L18 16 Z"/>
|
||||||
|
</g>`,
|
||||||
|
|
||||||
|
// overrides, replace image with media
|
||||||
|
statusLabelLoadImage: (state) => {
|
||||||
|
if (!state || !state.task) return 'Waiting for media';
|
||||||
|
if (state.error) {
|
||||||
|
if (state.error.code === 'IMAGE_TOO_SMALL') {
|
||||||
|
return 'Minimum media size is {minWidth} × {minHeight}';
|
||||||
|
} else if (state.error.code === 'VIDEO_TOO_SHORT') {
|
||||||
|
const unit = state.error.metadata.minDuration === 1 ? 'second' : 'seconds';
|
||||||
|
return `Minimum video duration is {minDuration} ${unit}`;
|
||||||
|
} else {
|
||||||
|
return 'Error loading media';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (state.task === 'blob-to-bitmap') return 'Preparing media…';
|
||||||
|
return 'Loading media…';
|
||||||
|
},
|
||||||
|
|
||||||
|
statusLabelProcessImage: (state) => {
|
||||||
|
if (!state || !state.task) return undefined;
|
||||||
|
if (state.task === 'store') {
|
||||||
|
if (state.error) return 'Error uploading media';
|
||||||
|
return 'Uploading media…';
|
||||||
|
}
|
||||||
|
if (state.error) return 'Error processing media';
|
||||||
|
return 'Processing media…';
|
||||||
|
},
|
||||||
|
|
||||||
|
cropLabelCropBoundaryEdge: 'Edge of media',
|
||||||
|
};
|
1
src/components/@pqina/pintura/locale/en_GB/trim/index.js
Normal file
1
src/components/@pqina/pintura/locale/en_GB/trim/index.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
export { default } from './en_GB.js';
|
@ -0,0 +1,5 @@
|
|||||||
|
export default {
|
||||||
|
annotateLabel: 'Añadir nota',
|
||||||
|
annotateIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M17.086 2.914a2.828 2.828 0 1 1 4 4l-14.5 14.5-5.5 1.5 1.5-5.5 14.5-14.5z"/></g>',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './es_ES.js';
|
231
src/components/@pqina/pintura/locale/es_ES/core/es_ES.js
Normal file
231
src/components/@pqina/pintura/locale/es_ES/core/es_ES.js
Normal file
@ -0,0 +1,231 @@
|
|||||||
|
const IconCross =
|
||||||
|
'<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M18 6L6 18M6 6l12 12"></path></path></g>';
|
||||||
|
|
||||||
|
const CharacterA =
|
||||||
|
'<path fill="none" d="M9 15 L12 9 L15 15 M10 13.5 h3" stroke="currentColor" stroke-width=".125em"/>';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
// generic
|
||||||
|
labelReset: 'Restaurar',
|
||||||
|
labelDefault: 'Predeterminado',
|
||||||
|
labelAuto: 'Automático',
|
||||||
|
labelNone: 'Ninguno',
|
||||||
|
labelEdit: 'Editar',
|
||||||
|
labelClose: 'Cerrar',
|
||||||
|
labelSupportError: (features) => `Este navegador no soporta ${features.join(', ')}`,
|
||||||
|
|
||||||
|
// defaults
|
||||||
|
labelColor: 'Color',
|
||||||
|
labelWidth: 'Ancho',
|
||||||
|
labelSize: 'Tamaño',
|
||||||
|
labelOffset: 'Desplazamiento',
|
||||||
|
labelAmount: 'Monto',
|
||||||
|
labelInset: 'Insertar',
|
||||||
|
labelRadius: 'Radio',
|
||||||
|
|
||||||
|
// controls
|
||||||
|
labelColorPalette: 'Paleta de color',
|
||||||
|
|
||||||
|
// sizes
|
||||||
|
labelSizeExtraSmall: 'Extra pequeña',
|
||||||
|
labelSizeSmall: 'Pequeña',
|
||||||
|
labelSizeMediumSmall: 'Mediana pequeña',
|
||||||
|
labelSizeMedium: 'Mediano',
|
||||||
|
labelSizeMediumLarge: 'Mediano grande',
|
||||||
|
labelSizeLarge: 'Grande',
|
||||||
|
labelSizeExtraLarge: 'Extra grande',
|
||||||
|
|
||||||
|
// unused?
|
||||||
|
labelButtonRevert: 'Revertir',
|
||||||
|
labelButtonCancel: 'Cancelar',
|
||||||
|
labelButtonUndo: 'Deshacer',
|
||||||
|
labelButtonRedo: 'Rehacer',
|
||||||
|
labelButtonExport: 'Finalizado',
|
||||||
|
|
||||||
|
// zoom
|
||||||
|
labelZoomIn: 'Dar un golpe de zoom',
|
||||||
|
labelZoomOut: 'Disminuir el zoom',
|
||||||
|
labelZoomFit: 'Zoom para ajustar',
|
||||||
|
labelZoomActual: 'Tamaño real',
|
||||||
|
iconZoomIn: '<path stroke="currentColor" stroke-width=".125em" d="M8 12 h8 M12 8 v8" />',
|
||||||
|
iconZoomOut: '<path stroke="currentColor" stroke-width=".125em" d="M9 12 h6" />',
|
||||||
|
|
||||||
|
iconSupportError: `<g fill="none" stroke="currentColor" stroke-width="2"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><g><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></g>`,
|
||||||
|
iconButtonClose: IconCross,
|
||||||
|
iconButtonRevert: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M7.388 18.538a8 8 0 10-2.992-9.03"/><path fill="currentColor" d="M2.794 11.696L2.37 6.714l5.088 3.18z"/><path d="M12 8v4M12 12l4 2"/></g>`,
|
||||||
|
iconButtonUndo: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M10 8h4c2.485 0 5 2 5 5s-2.515 5-5 5h-4"/><path fill="currentColor" d="M5 8l4-3v6z"/></g>`,
|
||||||
|
iconButtonRedo: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M14 8h-4c-2.485 0-5 2-5 5s2.515 5 5 5h4"/><path fill="currentColor" d="M19 8l-4-3v6z"/></g>`,
|
||||||
|
iconButtonExport: `<polyline points="20 6 9 17 4 12" fill="none" stroke="currentColor" stroke-width=".125em"></polyline>`,
|
||||||
|
|
||||||
|
// status
|
||||||
|
statusLabelButtonClose: 'Cerrar',
|
||||||
|
statusIconButtonClose: IconCross,
|
||||||
|
statusLabelLoadImage: (state) => {
|
||||||
|
if (!state || !state.task) return 'Esperando imagen';
|
||||||
|
if (state.error)
|
||||||
|
return state.error.code === 'IMAGE_TOO_SMALL'
|
||||||
|
? 'Tamaño mínmo de {minWidth} × {minHeight}'
|
||||||
|
: 'Error de carga de la imagen';
|
||||||
|
if (state.task === 'blob-to-bitmap') return 'Preparando imagen…';
|
||||||
|
return 'Cargando imagen…';
|
||||||
|
},
|
||||||
|
|
||||||
|
// processing status message
|
||||||
|
statusLabelProcessImage: (state) => {
|
||||||
|
if (!state || !state.task) return undefined;
|
||||||
|
if (state.task === 'store') {
|
||||||
|
if (state.error) return 'Error de subida de imagen';
|
||||||
|
return 'Subiendo imagen…';
|
||||||
|
}
|
||||||
|
if (state.error) return 'Error de proceso de imagen';
|
||||||
|
return 'Procesando imagen…';
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
export const MarkupEditor = {
|
||||||
|
shapeLabelButtonSelectSticker: 'Seleccionar imagen',
|
||||||
|
shapeIconButtonSelectSticker: `<g fill="none" stroke="currentColor" stroke-width="0.0625em"><path d="M8 21 L15 11 L19 15"/><path d="M15 2 v5 h5"/><path d="M8 2 h8 l4 4 v12 q0 4 -4 4 h-8 q-4 0 -4 -4 v-12 q0 -4 4 -4z"/></g><circle fill="currentColor" cx="10" cy="8" r="1.5"/>`,
|
||||||
|
|
||||||
|
shapeIconButtonFlipHorizontal: `<g stroke="currentColor" stroke-width=".125em"><path fill="none" d="M6 6.5h5v11H6z"/><path fill="currentColor" d="M15 6.5h3v11h-3z"/><path d="M11 4v16" fill="currentColor"/></g>`,
|
||||||
|
shapeIconButtonFlipVertical: `<g stroke="currentColor" stroke-width=".125em"><rect x="7" y="8" width="11" height="5" fill="none"/><rect x="7" y="17" width="11" height="2" fill="currentColor"/><line x1="5" y1="13" x2="20" y2="13"/></g>`,
|
||||||
|
shapeIconButtonRemove: `<g fill="none" fill-rule="evenodd"><path stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M7.5 7h9z"/><path d="M7.916 9h8.168a1 1 0 01.99 1.14l-.972 6.862a2 2 0 01-1.473 1.653c-.877.23-1.753.345-2.629.345-.876 0-1.752-.115-2.628-.345a2 2 0 01-1.473-1.653l-.973-6.862A1 1 0 017.916 9z" fill="currentColor"/><rect fill="currentColor" x="10" y="5" width="4" height="3" rx="1"/></g>`,
|
||||||
|
shapeIconButtonDuplicate: `<g fill="none" fill-rule="evenodd"><path d="M15 13.994V16a2 2 0 01-2 2H8a2 2 0 01-2-2v-5a2 2 0 012-2h2.142" stroke="currentColor" stroke-width=".125em"/><path d="M15 9V8a1 1 0 00-2 0v1h-1a1 1 0 000 2h1v1a1 1 0 002 0v-1h1a1 1 0 000-2h-1zm-4-4h6a2 2 0 012 2v6a2 2 0 01-2 2h-6a2 2 0 01-2-2V7a2 2 0 012-2z" fill="currentColor"/></g>`,
|
||||||
|
shapeIconButtonMoveToFront: `<g fill="none" fill-rule="evenodd"><rect fill="currentColor" x="11" y="13" width="8" height="2" rx="1"/><rect fill="currentColor" x="9" y="17" width="10" height="2" rx="1"/><path d="M11.364 8H10a5 5 0 000 10M12 6.5L14.5 8 12 9.5z" stroke="currentColor" stroke-width=".125em" stroke-linecap="round"/></g>`,
|
||||||
|
|
||||||
|
shapeIconButtonTextLayoutAutoWidth: `${CharacterA}`,
|
||||||
|
shapeIconButtonTextLayoutAutoHeight: `<g fill="currentColor"><circle cx="4" cy="12" r="1.5"/><circle cx="20" cy="12" r="1.5"/></g>${CharacterA}`,
|
||||||
|
shapeIconButtonTextLayoutFixedSize: `<g fill="currentColor"><circle cx="5" cy="6" r="1.5"/><circle cx="19" cy="6" r="1.5"/><circle cx="19" cy="19" r="1.5"/><circle cx="5" cy="19" r="1.5"/></g>${CharacterA}`,
|
||||||
|
|
||||||
|
shapeTitleButtonTextLayoutAutoWidth: 'Ancho automático',
|
||||||
|
shapeTitleButtonTextLayoutAutoHeight: 'Alto automático',
|
||||||
|
shapeTitleButtonTextLayoutFixedSize: 'Tamaño fijo',
|
||||||
|
|
||||||
|
shapeTitleButtonFlipHorizontal: 'Posición horizontal',
|
||||||
|
shapeTitleButtonFlipVertical: 'Posición vertical',
|
||||||
|
shapeTitleButtonRemove: 'Eliminar',
|
||||||
|
shapeTitleButtonDuplicate: 'Duplicar',
|
||||||
|
shapeTitleButtonMoveToFront: 'Enviar al fondo',
|
||||||
|
|
||||||
|
shapeLabelInputText: 'Editar texto',
|
||||||
|
|
||||||
|
shapeIconInputCancel: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M18 6L6 18M6 6l12 12"/></g>`,
|
||||||
|
shapeIconInputConfirm: `<g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><polyline points="20 6 9 17 4 12"/></g>`,
|
||||||
|
shapeLabelInputCancel: 'Cancelar',
|
||||||
|
shapeLabelInputConfirm: 'Confirmar',
|
||||||
|
|
||||||
|
shapeLabelStrokeNone: 'Sin contorno',
|
||||||
|
|
||||||
|
shapeLabelFontStyleNormal: 'Normal',
|
||||||
|
shapeLabelFontStyleBold: 'Negrita',
|
||||||
|
shapeLabelFontStyleItalic: 'Itálica',
|
||||||
|
shapeLabelFontStyleItalicBold: 'Negrita itálica',
|
||||||
|
|
||||||
|
shapeTitleBackgroundColor: 'Color de relleno',
|
||||||
|
shapeTitleCornerRadius: 'Radio de esquina',
|
||||||
|
|
||||||
|
shapeTitleFontFamily: 'Fuente',
|
||||||
|
shapeTitleFontSize: 'Tamaño de fuente',
|
||||||
|
shapeTitleFontStyle: 'Estilo de fuente',
|
||||||
|
shapeTitleLineHeight: 'Linipaŝo',
|
||||||
|
|
||||||
|
shapeTitleLineStart: 'Comienzo',
|
||||||
|
shapeTitleLineEnd: 'Fin',
|
||||||
|
shapeTitleStrokeWidth: 'Ancho de línea',
|
||||||
|
shapeTitleStrokeColor: 'Color de línea',
|
||||||
|
|
||||||
|
shapeTitleLineDecorationBar: 'Barra',
|
||||||
|
shapeTitleLineDecorationCircle: 'Círculo',
|
||||||
|
shapeTitleLineDecorationSquare: 'Cuadrado',
|
||||||
|
shapeTitleLineDecorationArrow: 'Flecha',
|
||||||
|
shapeTitleLineDecorationCircleSolid: 'Círculo sólido',
|
||||||
|
shapeTitleLineDecorationSquareSolid: 'Cuadrado sólido',
|
||||||
|
shapeTitleLineDecorationArrowSolid: 'Flecha sólida',
|
||||||
|
|
||||||
|
shapeIconLineDecorationBar: `<g stroke="currentColor" stroke-linecap="round" stroke-width=".125em"><path d="M5,12 H16"/><path d="M16,8 V16"/></g>`,
|
||||||
|
shapeIconLineDecorationCircle: `<g stroke="currentColor" stroke-linecap="round"><path stroke-width=".125em" d="M5,12 H12"/><circle fill="none" stroke-width=".125em" cx="16" cy="12" r="4"/></g>`,
|
||||||
|
shapeIconLineDecorationSquare: `<g stroke="currentColor" stroke-linecap="round"><path stroke-width=".125em" d="M5,12 H12"/><rect fill="none" stroke-width=".125em" x="12" y="8" width="8" height="8"/></g>`,
|
||||||
|
shapeIconLineDecorationArrow: `<g stroke="currentColor" stroke-linecap="round" stroke-width=".125em"><path d="M5,12 H16 M13,7 l6,5 l-6,5" fill="none"/></g>`,
|
||||||
|
shapeIconLineDecorationCircleSolid: `<g stroke="currentColor" stroke-linecap="round"><path stroke-width=".125em" d="M5,12 H12"/><circle fill="currentColor" cx="16" cy="12" r="4"/></g>`,
|
||||||
|
shapeIconLineDecorationSquareSolid: `<g stroke="currentColor" stroke-linecap="round"><path stroke-width=".125em" d="M5,12 H12"/><rect fill="currentColor" x="12" y="8" width="8" height="8"/></g>`,
|
||||||
|
shapeIconLineDecorationArrowSolid: `<g stroke="currentColor" stroke-linecap="round" stroke-width=".125em"><path d="M5,12 H16"/><path d="M13,7 l6,5 l-6,5z" fill="currentColor"/></g>`,
|
||||||
|
|
||||||
|
shapeTitleColorTransparent: 'Transparente',
|
||||||
|
shapeTitleColorWhite: 'Blanco',
|
||||||
|
shapeTitleColorSilver: 'Plateado',
|
||||||
|
shapeTitleColorGray: 'Gris',
|
||||||
|
shapeTitleColorBlack: 'Negro',
|
||||||
|
shapeTitleColorNavy: 'Azul marino',
|
||||||
|
shapeTitleColorBlue: 'Azul',
|
||||||
|
shapeTitleColorAqua: 'Cian vívido',
|
||||||
|
shapeTitleColorTeal: 'Verde petróleo',
|
||||||
|
shapeTitleColorOlive: 'Oliva',
|
||||||
|
shapeTitleColorGreen: 'Verde',
|
||||||
|
shapeTitleColorYellow: 'Amarillo',
|
||||||
|
shapeTitleColorOrange: 'Naranja',
|
||||||
|
shapeTitleColorRed: 'Rojo',
|
||||||
|
shapeTitleColorMaroon: 'Marrón',
|
||||||
|
shapeTitleColorFuchsia: 'Fucsia',
|
||||||
|
shapeTitleColorPurple: 'Violeta',
|
||||||
|
|
||||||
|
shapeTitleTextOutline: 'Contorno del texto',
|
||||||
|
shapeTitleTextOutlineWidth: 'Anchura',
|
||||||
|
shapeTitleTextShadow: 'Sombra del texto',
|
||||||
|
shapeTitleTextShadowBlur: 'Desenfoque',
|
||||||
|
|
||||||
|
shapeTitleTextColor: 'Color de fuente',
|
||||||
|
shapeTitleTextAlign: 'Alinear texto',
|
||||||
|
shapeTitleTextAlignLeft: 'Alinear texto a la izquierda',
|
||||||
|
shapeTitleTextAlignCenter: 'Alinear texto al centro',
|
||||||
|
shapeTitleTextAlignRight: 'Alinear texto a la derecha',
|
||||||
|
|
||||||
|
shapeIconTextAlignLeft: `<g stroke-width=".125em" stroke="currentColor"><line x1="5" y1="8" x2="15" y2="8"/><line x1="5" y1="12" x2="19" y2="12"/><line x1="5" y1="16" x2="14" y2="16"/></g>`,
|
||||||
|
shapeIconTextAlignCenter: `<g stroke-width=".125em" stroke="currentColor"><line x1="7" y1="8" x2="17" y2="8"/><line x1="5" y1="12" x2="19" y2="12"/><line x1="8" y1="16" x2="16" y2="16"/></g>`,
|
||||||
|
shapeIconTextAlignRight: `<g stroke-width=".125em" stroke="currentColor"><line x1="9" y1="8" x2="19" y2="8"/><line x1="5" y1="12" x2="19" y2="12"/><line x1="11" y1="16" x2="19" y2="16"/></g>`,
|
||||||
|
|
||||||
|
shapeLabelToolMove: 'Mover',
|
||||||
|
shapeLabelToolView: 'Mirar',
|
||||||
|
shapeLabelToolSharpie: 'Puntero',
|
||||||
|
shapeLabelToolEraser: 'Borrador',
|
||||||
|
shapeLabelToolPath: 'Camino',
|
||||||
|
shapeLabelToolRectangle: 'Rectángulo',
|
||||||
|
shapeLabelToolEllipse: 'Elipse',
|
||||||
|
shapeLabelToolArrow: 'Flecha',
|
||||||
|
shapeLabelToolLine: 'Línea',
|
||||||
|
shapeLabelToolText: 'Texto',
|
||||||
|
shapeLabelToolPreset: 'Sticker',
|
||||||
|
|
||||||
|
shapeIconToolView: `<g stroke-width=".125em" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M10.98 9.703V2.567c0-1.19 1.19-1.785 1.784-1.785.595 0 1.784.595 1.784 1.785v3.568"/><path d="M14.548 9.703V4.35c0-1.19 1.19-1.784 1.784-1.784.595 0 1.784.594 1.784 1.784v2.973"/><path d="M18.116 10.244V7.271c0-1.19 1.19-1.784 1.784-1.784.595 0 1.785.595 1.785 1.784 0 1.19 0 8.92-1.19 12.488-1.19 3.569-10.704 4.758-13.678 0-2.973-4.757-2.973-4.757-4.163-6.541-1.189-1.784-1.153-2.974-.594-3.568.558-.595 1.784-1.19 2.973.594 1.277 1.916 2.07 2.907 2.379 2.974V5.487c0-1.19 1.19-1.784 1.784-1.784.595 0 1.784.595 1.784 1.784V8.46"/></g>`,
|
||||||
|
shapeIconToolMove: `<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M6 2 L6 19 L18 13 Z M13 18 L16 24" stroke="currentColor" stroke-width=".125em" fill="none" fill-rule="evenodd" stroke-linejoin="round"/></g>`,
|
||||||
|
shapeIconToolSharpie: `<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M2.025 5c5.616-2.732 8.833-3.857 9.65-3.374C12.903 2.351.518 12.666 2.026 14 3.534 15.334 16.536.566 17.73 2.566 18.924 4.566 3.98 17.187 4.831 18c.851.813 9.848-6 11.643-6 1.087 0-2.53 5.11-2.92 7-.086.41 3.323-1.498 4.773-1 .494.17.64 2.317 1.319 3 .439.443 1.332.776 2.679 1" stroke="currentColor" stroke-width=".125em" fill="none" fill-rule="evenodd" stroke-linejoin="round"/></g>`,
|
||||||
|
shapeIconToolEraser: `<g stroke-width=".125em" stroke="currentColor" stroke-linecap="round" fill="none"><g transform="translate(3, 15) rotate(-45)"><rect x="0" y="0" width="18" height="10" rx="3"/></g><line x1="11" y1="21" x2="18" y2="21"/><line x1="20" y1="21" x2="22" y2="21"/></g>`,
|
||||||
|
shapeIconToolPath: `<g stroke-width=".125em" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" fill="none"><circle cx="21" cy="3" r="2"/><circle cx="9" cy="9" r="2"/><circle cx="3" cy="21" r="2"/><path d="M19 4 11 8 M8 11 4 19"/></g>`,
|
||||||
|
shapeIconToolRectangle: `<g stroke-width=".125em" stroke="currentColor" fill="none"><rect x="1" y="1" width="22" height="22" rx="4"/></g>`,
|
||||||
|
shapeIconToolEllipse: `<g stroke-width=".125em" stroke="currentColor" fill="none"><circle cx="12" cy="12" r="11"/></g>`,
|
||||||
|
shapeIconToolArrow: `<g stroke-width=".125em" stroke="currentColor" fill="none"><line x1="20" y1="3" x2="6" y2="21"/><path d="m10 6 L21.5 1 L20 13.5" fill="currentColor" stroke="none"/></g>`,
|
||||||
|
shapeIconToolLine: `<g stroke-width=".125em" stroke="currentColor" fill="none"><line x1="20" y1="3" x2="6" y2="21"/></g>`,
|
||||||
|
shapeIconToolText: `<g stroke="none" fill="currentColor" transform="translate(6,0)"><path d="M8.14 20.085c.459 0 .901-.034 1.329-.102a8.597 8.597 0 001.015-.21v1.984c-.281.135-.695.247-1.242.336a9.328 9.328 0 01-1.477.133c-3.312 0-4.968-1.745-4.968-5.235V6.804H.344v-1.25l2.453-1.078L3.89.819h1.5v3.97h4.97v2.015H5.39v10.078c0 1.031.245 1.823.735 2.375s1.161.828 2.015.828z"/>`,
|
||||||
|
shapeIconToolPreset: `<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M12 22c2.773 0 1.189-5.177 3-7 1.796-1.808 7-.25 7-3 0-5.523-4.477-10-10-10S2 6.477 2 12s4.477 10 10 10z"></path><path d="M20 17c-3 3-5 5-8 5"></path></g>`,
|
||||||
|
|
||||||
|
shapeTitleSelectionMode: 'Modo de selección',
|
||||||
|
shapeTitleBrushSize: 'Tamaño del pincel',
|
||||||
|
|
||||||
|
shapeLabelSelectionModeNew: 'Nuevo',
|
||||||
|
shapeLabelSelectionModeAdd: 'Añadir',
|
||||||
|
shapeLabelSelectionModeSubtract: 'Eliminar',
|
||||||
|
|
||||||
|
shapeLabelToolSelectionBrush: 'Pincel',
|
||||||
|
shapeLabelToolSelectionLassoo: 'Lazo',
|
||||||
|
shapeLabelToolSelectionRectangle: 'Selección rectangular',
|
||||||
|
shapeLabelToolSelectionEllipse: 'Selección elíptica',
|
||||||
|
|
||||||
|
shapeIconSelectionModeNew: `<g fill="none" fill-rule="evenodd" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"><path d="M6.5 17H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v1.5"/><rect width="12" height="12" x="9" y="9" fill="currentColor" fill-opacity=".25" rx="2"/></g>`,
|
||||||
|
shapeIconSelectionModeAdd: `<g fill="none" fill-rule="evenodd" stroke="currentColor"><path fill="currentColor" fill-opacity=".25" stroke-linecap="round" stroke-linejoin="round" d="M15 3a2 2 0 0 1 2 2v4h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-8a2 2 0 0 1-2-2v-2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h10Z"/><path d="M13 15h4M15 13v4"/></g>`,
|
||||||
|
shapeIconSelectionModeSubtract: `<g fill="none" fill-rule="evenodd" stroke="currentColor"><path fill="currentColor" fill-opacity=".25" stroke-linecap="round" stroke-linejoin="round" d="M15 3a2 2 0 0 1 2 2v4h-6a2 2 0 0 0-1.995 1.85L9 11v6H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h10Z"/><rect width="12" height="12" x="9" y="9" stroke-linecap="round" stroke-linejoin="round" rx="2"/><path d="M13 15h4"/></g>`,
|
||||||
|
shapeIconToolSelectionBrush: `<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M2.025 5c5.616-2.732 8.833-3.857 9.65-3.374C12.903 2.351.518 12.666 2.026 14 3.534 15.334 16.536.566 17.73 2.566 18.924 4.566 3.98 17.187 4.831 18c.851.813 9.848-6 11.643-6 1.087 0-2.53 5.11-2.92 7-.086.41 3.323-1.498 4.773-1 .494.17.64 2.317 1.319 3 .439.443 1.332.776 2.679 1" stroke="currentColor" fill-rule="evenodd" stroke-linejoin="round"/></g>`,
|
||||||
|
shapeIconToolSelectionLassoo: `<g fill="none" fill-rule="evenodd" stroke-width=".125em" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M11.428 17.702a18.46 18.46 0 0 0 4.085-1.595c5.851-3.112 9.019-8.599 7.074-12.256-1.945-3.657-8.265-4.1-14.116-.988C2.619 5.974-.55 11.46 1.396 15.118c.63 1.186 1.72 2.033 3.105 2.532"/><ellipse cx="8" cy="18.5" rx="3.5" ry="2.833" transform="rotate(-15 8 18.5)"/><path stroke-linecap="round" d="M5 18c3.347 1.048 5.514 1.881 6.5 2.5.859.54 1.517.994 1.5 2.364"/></g>`,
|
||||||
|
shapeIconToolSelectionRectangle: `<g stroke-width=".125em" stroke="currentColor"><path d="M9 1 h6 m4 0 h4v4 m0 4 v6 m0 4 v4h-4 m-4 0 h-6 m-4 0 h-4v-4 m0 -4 v-6 m0 -4 v-4h4" fill="none" /></g>`,
|
||||||
|
shapeIconToolSelectionEllipse: `<path stroke-width=".125em" stroke="currentColor" d="M1.21 9.853a11.054 11.054 0 0 0 0 4.294m1.643 3.965a11.054 11.054 0 0 0 3.035 3.035m3.965 1.644a11.054 11.054 0 0 0 4.294 0m3.965-1.644a11.054 11.054 0 0 0 3.035-3.035m1.644-3.965a11.054 11.054 0 0 0 0-4.294m-1.644-3.965a11.054 11.054 0 0 0-3.035-3.035m-3.965-1.644a11.054 11.054 0 0 0-4.294 0M5.888 2.853a11.054 11.054 0 0 0-3.035 3.035"/>`,
|
||||||
|
};
|
||||||
|
|
||||||
|
// deprecated
|
||||||
|
export const ShapeEditor = MarkupEditor;
|
1
src/components/@pqina/pintura/locale/es_ES/core/index.js
Normal file
1
src/components/@pqina/pintura/locale/es_ES/core/index.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
export { default, MarkupEditor } from './es_ES.js';
|
54
src/components/@pqina/pintura/locale/es_ES/crop/es_ES.js
Normal file
54
src/components/@pqina/pintura/locale/es_ES/crop/es_ES.js
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
export default {
|
||||||
|
cropLabel: 'Recortar',
|
||||||
|
cropIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M23 17H9a2 2 0 0 1-2-2v-5m0-3V1 M1 7h14a2 2 0 0 1 2 2v7m0 4v3"/></g>',
|
||||||
|
cropIconButtonRecenter: `<path stroke="currentColor" fill="none" stroke-width="2" stroke-linejoin="bevel" d="M1.5 7.5v-6h6M1.5 16.5v6h6M22.5 16.5v6h-6M22.5 7.5v-6h-6"/><circle cx="12" cy="12" r="3.5" fill="currentColor" stroke="none"/>`,
|
||||||
|
cropIconButtonRotateLeft:
|
||||||
|
'<g stroke="none" fill="currentColor"><path fill="none" d="M-1-1h582v402H-1z"/><rect x="3" rx="1" height="12" width="12" y="9"/><path d="M15 5h-1a5 5 0 015 5 1 1 0 002 0 7 7 0 00-7-7h-1.374l.747-.747A1 1 0 0011.958.84L9.603 3.194a1 1 0 000 1.415l2.355 2.355a1 1 0 001.415-1.414l-.55-.55H15z"/></g>',
|
||||||
|
cropIconButtonRotateRight:
|
||||||
|
'<g stroke="none" fill="currentColor"><path fill="none" d="M-1-1h582v402H-1z"/><path d="M11.177 5H10a5 5 0 00-5 5 1 1 0 01-2 0 7 7 0 017-7h1.374l-.747-.747A1 1 0 0112.042.84l2.355 2.355a1 1 0 010 1.415l-2.355 2.354a1 1 0 01-1.415-1.414l.55-.55z"/><rect rx="1" height="12" width="12" y="9" x="9"/></g>',
|
||||||
|
cropIconButtonFlipVertical:
|
||||||
|
'<g stroke="none" fill="currentColor"><path d="M19.993 12.143H7a1 1 0 0 1-1-1V5.994a1 1 0 0 1 1.368-.93l12.993 5.15a1 1 0 0 1-.368 1.93z"/><path d="M19.993 14a1 1 0 0 1 .368 1.93L7.368 21.078A1 1 0 0 1 6 20.148V15a1 1 0 0 1 1-1h12.993z" opacity=".6"/></g>',
|
||||||
|
cropIconButtonFlipHorizontal:
|
||||||
|
'<g stroke="none" fill="currentColor"><path d="M11.93 7.007V20a1 1 0 0 1-1 1H5.78a1 1 0 0 1-.93-1.368l5.15-12.993a1 1 0 0 1 1.929.368z"/><path d="M14 7.007V20a1 1 0 0 0 1 1h5.149a1 1 0 0 0 .93-1.368l-5.15-12.993A1 1 0 0 0 14 7.007z" opacity=".6"/></g>',
|
||||||
|
|
||||||
|
cropIconSelectPreset: (locale, aspectRatio) => {
|
||||||
|
const [a, b, c] = !aspectRatio
|
||||||
|
? [0.2, 0.3, 0.4]
|
||||||
|
: [
|
||||||
|
aspectRatio < 1 ? 1 : 0.3,
|
||||||
|
aspectRatio === 1 ? 0.85 : 0.5,
|
||||||
|
aspectRatio > 1 ? 1 : 0.3,
|
||||||
|
];
|
||||||
|
return `<g fill="currentColor">
|
||||||
|
<rect opacity="${a}" x="2" y="4" width="10" height="18" rx="1"/>
|
||||||
|
<rect opacity="${b}" x="4" y="8" width="14" height="14" rx="1"/>
|
||||||
|
<rect opacity="${c}" x="6" y="12" width="17" height="10" rx="1"/>
|
||||||
|
</g>`;
|
||||||
|
},
|
||||||
|
|
||||||
|
cropIconCropBoundary: (locale, isBoundToImage) => {
|
||||||
|
const [a, b, c, d] = isBoundToImage ? [0.3, 1, 0, 0] : [0, 0, 0.3, 1];
|
||||||
|
return `<g fill="currentColor">
|
||||||
|
<rect opacity="${a}" x="2" y="3" width="20" height="20" rx="1"/>
|
||||||
|
<rect opacity="${b}" x="7" y="8" width="10" height="10" rx="1"/>
|
||||||
|
<rect opacity="${c}" x="4" y="8" width="14" height="14" rx="1"/>
|
||||||
|
<rect opacity="${d}" x="12" y="4" width="10" height="10" rx="1"/>
|
||||||
|
</g>`;
|
||||||
|
},
|
||||||
|
|
||||||
|
cropLabelButtonRecenter: 'Recentrar',
|
||||||
|
cropLabelButtonRotateLeft: 'Rotar a la izquierda',
|
||||||
|
cropLabelButtonRotateRight: 'Rotar a la derecha',
|
||||||
|
cropLabelButtonFlipHorizontal: 'Posición horizontal',
|
||||||
|
cropLabelButtonFlipVertical: 'Posición vertical',
|
||||||
|
|
||||||
|
cropLabelSelectPreset: 'Recortar forma',
|
||||||
|
|
||||||
|
cropLabelCropBoundary: 'Límite de recorte',
|
||||||
|
cropLabelCropBoundaryEdge: 'Borde de imagen',
|
||||||
|
cropLabelCropBoundaryNone: 'Ninguno',
|
||||||
|
|
||||||
|
cropLabelTabRotation: 'Rotación',
|
||||||
|
cropLabelTabZoom: 'Escalar',
|
||||||
|
};
|
1
src/components/@pqina/pintura/locale/es_ES/crop/index.js
Normal file
1
src/components/@pqina/pintura/locale/es_ES/crop/index.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
export { default } from './es_ES.js';
|
@ -0,0 +1,5 @@
|
|||||||
|
export default {
|
||||||
|
decorateLabel: 'Decorar',
|
||||||
|
decorateIcon:
|
||||||
|
'<g fill="none" fill-rule="evenodd"><path stroke="currentColor" stroke-width=".125em" stroke-linecap="round" stroke-linejoin="round" d="M12 18.5l-6.466 3.4 1.235-7.2-5.23-5.1 7.228-1.05L12 2l3.233 6.55 7.229 1.05-5.231 5.1 1.235 7.2z"/></g>',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './es_ES.js';
|
12
src/components/@pqina/pintura/locale/es_ES/fill/es_ES.js
Normal file
12
src/components/@pqina/pintura/locale/es_ES/fill/es_ES.js
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
export default {
|
||||||
|
fillLabel: 'Rellenar',
|
||||||
|
fillIcon: `
|
||||||
|
<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em">
|
||||||
|
<g transform="rotate(60, 12, 12)">
|
||||||
|
<rect x="4" y="4" width="14" height="16" rx="3"/>
|
||||||
|
</g>
|
||||||
|
<path d="M21 13 L21 21"></path>
|
||||||
|
<path d="M4.5 12.5 L19 12.5"></path>
|
||||||
|
</g>
|
||||||
|
`,
|
||||||
|
};
|
1
src/components/@pqina/pintura/locale/es_ES/fill/index.js
Normal file
1
src/components/@pqina/pintura/locale/es_ES/fill/index.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
export { default } from './es_ES.js';
|
18
src/components/@pqina/pintura/locale/es_ES/filter/es_ES.js
Normal file
18
src/components/@pqina/pintura/locale/es_ES/filter/es_ES.js
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
export default {
|
||||||
|
filterLabel: 'Filtro',
|
||||||
|
filterIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M18.347 9.907a6.5 6.5 0 1 0-1.872 3.306M3.26 11.574a6.5 6.5 0 1 0 2.815-1.417 M10.15 17.897A6.503 6.503 0 0 0 16.5 23a6.5 6.5 0 1 0-6.183-8.51"/></g>',
|
||||||
|
filterLabelChrome: 'Cromado',
|
||||||
|
filterLabelFade: 'Atenuar',
|
||||||
|
filterLabelCold: 'Frío',
|
||||||
|
filterLabelWarm: 'Cálido',
|
||||||
|
filterLabelPastel: 'Pastel',
|
||||||
|
filterLabelMonoDefault: 'Mono',
|
||||||
|
filterLabelMonoNoir: 'Negro',
|
||||||
|
filterLabelMonoWash: 'Lavado',
|
||||||
|
filterLabelMonoStark: 'Dorado',
|
||||||
|
filterLabelSepiaDefault: 'Sepia',
|
||||||
|
filterLabelSepiaBlues: 'Azules',
|
||||||
|
filterLabelSepiaRust: 'Óxido',
|
||||||
|
filterLabelSepiaColor: 'Color',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './es_ES.js';
|
14
src/components/@pqina/pintura/locale/es_ES/finetune/es_ES.js
Normal file
14
src/components/@pqina/pintura/locale/es_ES/finetune/es_ES.js
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
export default {
|
||||||
|
finetuneLabel: 'Ajuste fino',
|
||||||
|
finetuneIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><path d="M4 1v5.5m0 3.503V23M12 1v10.5m0 3.5v8M20 1v15.5m0 3.5v3M2 7h4M10 12h4M18 17h4"/></g>',
|
||||||
|
|
||||||
|
finetuneLabelBrightness: 'Brillo',
|
||||||
|
finetuneLabelContrast: 'Contraste',
|
||||||
|
finetuneLabelSaturation: 'Saturación',
|
||||||
|
finetuneLabelExposure: 'Exposición',
|
||||||
|
finetuneLabelTemperature: 'Temperatura',
|
||||||
|
finetuneLabelGamma: 'Gama',
|
||||||
|
finetuneLabelClarity: 'Nitidez',
|
||||||
|
finetuneLabelVignette: 'Viñeta',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './es_ES.js';
|
17
src/components/@pqina/pintura/locale/es_ES/frame/es_ES.js
Normal file
17
src/components/@pqina/pintura/locale/es_ES/frame/es_ES.js
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
export default {
|
||||||
|
frameLabel: 'Marco',
|
||||||
|
frameIcon: `<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em">
|
||||||
|
<rect x="2" y="2" width="20" height="20" rx="4"/>
|
||||||
|
<rect x="6" y="6" width="12" height="12" rx="1"/>
|
||||||
|
</g>`,
|
||||||
|
|
||||||
|
frameLabelMatSharp: 'Mate',
|
||||||
|
frameLabelMatRound: 'Biselado',
|
||||||
|
frameLabelLineSingle: 'Línea',
|
||||||
|
frameLabelLineMultiple: 'Cebra',
|
||||||
|
frameLabelEdgeSeparate: 'Insertar',
|
||||||
|
frameLabelEdgeOverlap: 'Más',
|
||||||
|
frameLabelEdgeCross: 'Madera',
|
||||||
|
frameLabelCornerHooks: 'Gancho',
|
||||||
|
frameLabelPolaroid: 'Polaroid',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './es_ES.js';
|
15
src/components/@pqina/pintura/locale/es_ES/index.d.ts
vendored
Normal file
15
src/components/@pqina/pintura/locale/es_ES/index.d.ts
vendored
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
export const LocaleAnnotate: { [key: string]: any };
|
||||||
|
export const LocaleCore: { [key: string]: any };
|
||||||
|
export const LocaleCrop: { [key: string]: any };
|
||||||
|
export const LocaleDecorate: { [key: string]: any };
|
||||||
|
export const LocaleFilter: { [key: string]: any };
|
||||||
|
export const LocaleFinetune: { [key: string]: any };
|
||||||
|
export const LocaleFrame: { [key: string]: any };
|
||||||
|
export const LocaleResize: { [key: string]: any };
|
||||||
|
export const LocaleRedact: { [key: string]: any };
|
||||||
|
export const LocaleSticker: { [key: string]: any };
|
||||||
|
export const LocaleTrim: { [key: string]: any };
|
||||||
|
export const LocaleFill: { [key: string]: any };
|
||||||
|
export const LocaleMarkupEditor: { [key: string]: any };
|
||||||
|
|
||||||
|
export {};
|
42
src/components/@pqina/pintura/locale/es_ES/index.js
Normal file
42
src/components/@pqina/pintura/locale/es_ES/index.js
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
import Annotate from './annotate/index.js';
|
||||||
|
import Core, { MarkupEditor } from './core/index.js';
|
||||||
|
import Crop from './crop/index.js';
|
||||||
|
import Decorate from './decorate/index.js';
|
||||||
|
import Filter from './filter/index.js';
|
||||||
|
import Finetune from './finetune/index.js';
|
||||||
|
import Frame from './frame/index.js';
|
||||||
|
import Resize from './resize/index.js';
|
||||||
|
import Redact from './redact/index.js';
|
||||||
|
import Sticker from './sticker/index.js';
|
||||||
|
import Trim from './trim/index.js';
|
||||||
|
import Fill from './fill/index.js';
|
||||||
|
|
||||||
|
export const LocaleAnnotate = Annotate;
|
||||||
|
export const LocaleCore = Core;
|
||||||
|
export const LocaleCrop = Crop;
|
||||||
|
export const LocaleDecorate = Decorate;
|
||||||
|
export const LocaleFilter = Filter;
|
||||||
|
export const LocaleFinetune = Finetune;
|
||||||
|
export const LocaleFrame = Frame;
|
||||||
|
export const LocaleResize = Resize;
|
||||||
|
export const LocaleRedact = Redact;
|
||||||
|
export const LocaleSticker = Sticker;
|
||||||
|
export const LocaleTrim = Trim;
|
||||||
|
export const LocaleFill = Fill;
|
||||||
|
export const LocaleMarkupEditor = MarkupEditor;
|
||||||
|
|
||||||
|
export default {
|
||||||
|
...Core,
|
||||||
|
...MarkupEditor,
|
||||||
|
...Annotate,
|
||||||
|
...Crop,
|
||||||
|
...Decorate,
|
||||||
|
...Filter,
|
||||||
|
...Finetune,
|
||||||
|
...Frame,
|
||||||
|
...Resize,
|
||||||
|
...Redact,
|
||||||
|
...Sticker,
|
||||||
|
...Fill,
|
||||||
|
...Trim,
|
||||||
|
};
|
@ -0,0 +1,4 @@
|
|||||||
|
export default {
|
||||||
|
redactLabel: 'Redactar',
|
||||||
|
redactIcon: `<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M 4 5 l 1 -1"/><path d="M 4 10 l 6 -6"/><path d="M 4 15 l 11 -11"/><path d="M 4 20 l 16 -16"/><path d="M 9 20 l 11 -11"/><path d="M 14 20 l 6 -6"/><path d="M 19 20 l 1 -1"/></g>`,
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './es_ES.js';
|
19
src/components/@pqina/pintura/locale/es_ES/resize/es_ES.js
Normal file
19
src/components/@pqina/pintura/locale/es_ES/resize/es_ES.js
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
export default {
|
||||||
|
resizeLabel: 'Redimensionar',
|
||||||
|
resizeIcon:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor" fill="none"><rect x="2" y="12" width="10" height="10" rx="2"/><path d="M4 11.5V4a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-5.5"/><path d="M14 10l3.365-3.365M14 6h4v4"/></g>',
|
||||||
|
|
||||||
|
resizeLabelFormCaption: 'Tamaño de imagen de salida',
|
||||||
|
|
||||||
|
resizeLabelInputWidth: 'a',
|
||||||
|
resizeTitleInputWidth: 'Ancho',
|
||||||
|
resizeLabelInputHeight: 'h',
|
||||||
|
resizeTitleInputHeight: 'Alto',
|
||||||
|
|
||||||
|
resizeTitleButtonMaintainAspectRatio: 'Mantener relacion de aspecto',
|
||||||
|
|
||||||
|
resizeIconButtonMaintainAspectRatio: (active, activeFraction) =>
|
||||||
|
`<defs><mask id="mask1" x="0" y="0" width="24" height="24" ><rect x="0" y="0" width="24" height="10" fill="#fff" stroke="none"/></mask></defs><g fill="none" fill-rule="evenodd"><g mask="url(#mask1)"><path transform="translate(0 ${
|
||||||
|
(activeFraction - 1) * 3
|
||||||
|
})" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" d="M9.401 10.205v-.804a2.599 2.599 0 0 1 5.198 0V17"/></g><rect fill="currentColor" x="7" y="10" width="10" height="7" rx="1.5"/></g>`,
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './es_ES.js';
|
@ -0,0 +1,6 @@
|
|||||||
|
export default {
|
||||||
|
retouchLabel: 'Retocar',
|
||||||
|
retouchIcon: `
|
||||||
|
<g fill="none" fill-rule="evenodd"><path fill="currentColor" d="m17 6-2-1-2 1 1-2-1-2 2 1 2-1-1 2zM5.5 5.5 3 4 .5 5.5 2 3 .5.5 3 2 5.5.5 4 3zM9 21l-3-1.5L3 21l1.5-3L3 15l3 1.5L9 15l-1.5 3z"/><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m9.266 6.705 13.529 13.529c-.071.78-.34 1.371-.765 1.796-.425.425-1.015.694-1.796.765h0L6.705 9.266c.071-.78.34-1.371.765-1.796.425-.425 1.015-.694 1.796-.765h0Z"/><path stroke="currentColor" stroke-width="1.5" d="M12 9.5c-.657.323-1.157.657-1.5 1-.343.343-.677.843-1 1.5"/></g>
|
||||||
|
`,
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './en_GB.js';
|
@ -0,0 +1,5 @@
|
|||||||
|
export default {
|
||||||
|
stickerLabel: 'Sticker',
|
||||||
|
stickerIcon:
|
||||||
|
'<g fill="none" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width=".125em"><path d="M12 22c2.773 0 1.189-5.177 3-7 1.796-1.808 7-.25 7-3 0-5.523-4.477-10-10-10S2 6.477 2 12s4.477 10 10 10z"/><path d="M20 17c-3 3-5 5-8 5"/></g>',
|
||||||
|
};
|
@ -0,0 +1 @@
|
|||||||
|
export { default } from './es_ES.js';
|
65
src/components/@pqina/pintura/locale/es_ES/trim/es_ES.js
Normal file
65
src/components/@pqina/pintura/locale/es_ES/trim/es_ES.js
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
export default {
|
||||||
|
trimLabel: 'Recortar',
|
||||||
|
trimIcon: `<g stroke-width=".125em" stroke="currentColor" fill="none"><path d=" M1 3 v18 M5 3 v2 M9 3 v2 M5 18 v2 M9 18 v2 M1 3 h12 M1 6 h10 M1 18 h9 M1 21 h8 M14 0 l-4 24 M18 3 h5 M17.5 6 h6 M15.5 18 h7 M15 21 h8 M19 3 v2 M15 18 v2 M19 18 v2 M23 3 v18"/></g>`,
|
||||||
|
|
||||||
|
trimLabelPlay: 'Reproduce',
|
||||||
|
trimLabelPause: 'Pausar',
|
||||||
|
|
||||||
|
trimLabelMute: 'Silenciar',
|
||||||
|
trimLabelUnmute: 'Activar',
|
||||||
|
|
||||||
|
trimLabelSplit: 'Dividir',
|
||||||
|
trimLabelMerge: 'Fusionar',
|
||||||
|
|
||||||
|
trimIconButtonMute:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor"><polygon fill="currentColor" points="2 16 2 8 8 8 15 1 15 23 8 16"/><path d="M19.3781212,15.2166107 C20.3621122,14.4879168 21,13.3184517 21,12 C21,10.6815483 20.3621122,9.51208318 19.3781212,8.78338927"/></g>',
|
||||||
|
trimIconButtonUnmute:
|
||||||
|
'<g stroke-width=".125em" stroke="currentColor"><polygon fill="currentColor" points="2 16 2 8 3 8 15 20 15 23 8 16"/><polygon fill="currentColor" points="8 8 15 1 15 15"/><line x1="1" y1="1" x2="23" y2="23"/></g>',
|
||||||
|
|
||||||
|
trimIconButtonPlay: '<polygon fill="currentColor" points="7 3, 21 12, 7 21"/>',
|
||||||
|
trimIconButtonPause:
|
||||||
|
'<g fill="currentColor"><rect x="6" y="4" width="4" height="16"/><rect x="14" y="4" width="4" height="16"/></g>',
|
||||||
|
|
||||||
|
trimIconButtonSplit: `<g stroke="currentColor" stroke-width=".125em">
|
||||||
|
<path d="M12 4 V20"/>
|
||||||
|
<path fill="currentColor" d="M6 8 L6 16 L2 12 Z M18 8 L22 12 L18 16 Z"/>
|
||||||
|
</g>`,
|
||||||
|
trimIconButtonMerge: `<g stroke="currentColor" stroke-width=".125em">
|
||||||
|
<path d="M1 4 V20 M23 4 V20"/>
|
||||||
|
<path fill="currentColor" d="M6 8 L10 12 L6 16 Z M18 8 L14 12 L18 16 Z"/>
|
||||||
|
</g>`,
|
||||||
|
|
||||||
|
// overrides, replace image with media
|
||||||
|
statusLabelLoadImage: (state) => {
|
||||||
|
if (!state || !state.task) return 'Esperando media';
|
||||||
|
if (state.error) {
|
||||||
|
if (state.error.code === 'IMAGE_TOO_SMALL') {
|
||||||
|
return 'Tamaño mínmo de {minWidth} × {minHeight}';
|
||||||
|
} else if (state.error.code === 'VIDEO_TOO_SHORT') {
|
||||||
|
const unit = state.error.metadata.minDuration === 1 ? 'segundo' : 'segundos';
|
||||||
|
return `La duración mínima del video es de {minDuration} ${unit}`;
|
||||||
|
} else {
|
||||||
|
return 'Error al cargar media';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (state.error)
|
||||||
|
return state.error.code === 'IMAGE_TOO_SMALL'
|
||||||
|
? 'Tamaño mínmo de {minWidth} × {minHeight}'
|
||||||
|
: 'Error al cargar media';
|
||||||
|
if (state.task === 'blob-to-bitmap') return 'Preparando media…';
|
||||||
|
return 'Cargando media…';
|
||||||
|
},
|
||||||
|
|
||||||
|
// processing status message
|
||||||
|
statusLabelProcessImage: (state) => {
|
||||||
|
if (!state || !state.task) return undefined;
|
||||||
|
if (state.task === 'store') {
|
||||||
|
if (state.error) return 'Error de subida media';
|
||||||
|
return 'Subiendo media…';
|
||||||
|
}
|
||||||
|
if (state.error) return 'Error de proceso media';
|
||||||
|
return 'Procesando media…';
|
||||||
|
},
|
||||||
|
|
||||||
|
cropLabelCropBoundaryEdge: 'Borde de media',
|
||||||
|
};
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user