@ -0,0 +1,19 @@ |
|||||
|
root = true |
||||
|
|
||||
|
[*] |
||||
|
charset=utf-8 |
||||
|
end_of_line=lf |
||||
|
insert_final_newline=true |
||||
|
indent_style=space |
||||
|
indent_size=2 |
||||
|
max_line_length = 100 |
||||
|
|
||||
|
[*.{yml,yaml,json}] |
||||
|
indent_style = space |
||||
|
indent_size = 2 |
||||
|
|
||||
|
[*.md] |
||||
|
trim_trailing_whitespace = false |
||||
|
|
||||
|
[Makefile] |
||||
|
indent_style = tab |
||||
@ -0,0 +1,8 @@ |
|||||
|
# port |
||||
|
VITE_PORT = 3100 |
||||
|
|
||||
|
# spa-title |
||||
|
VITE_GLOB_APP_TITLE = Vben Admin |
||||
|
|
||||
|
# spa shortname |
||||
|
VITE_GLOB_APP_SHORT_NAME = vue_vben_admin |
||||
@ -0,0 +1,30 @@ |
|||||
|
# Whether to open mock |
||||
|
VITE_USE_MOCK = false |
||||
|
|
||||
|
# public path |
||||
|
VITE_PUBLIC_PATH = / |
||||
|
|
||||
|
# Cross-domain proxy, you can configure multiple |
||||
|
# Please note that no line breaks |
||||
|
VITE_PROXY = [["/connect","http://127.0.0.1:44385"],["/api","http://127.0.0.1:30000"],["/signalr-hubs","ws://127.0.0.1:30000"]] |
||||
|
# VITE_PROXY=[["/api","https://vvbin.cn/test"]] |
||||
|
|
||||
|
# Delete console |
||||
|
VITE_DROP_CONSOLE = false |
||||
|
|
||||
|
# Basic interface address SPA |
||||
|
VITE_GLOB_API_URL=/api |
||||
|
|
||||
|
# File upload address, optional |
||||
|
VITE_GLOB_UPLOAD_URL=/upload |
||||
|
|
||||
|
# Interface prefix |
||||
|
VITE_GLOB_API_URL_PREFIX= |
||||
|
|
||||
|
# Multi-tenancy key |
||||
|
VITE_GLOB_MULTITENANCY_KEY='__tenant' |
||||
|
|
||||
|
# STS Connect |
||||
|
VITE_GLOB_AUTHORITY='http://127.0.0.1:44385' |
||||
|
VITE_GLOB_CLIENT_ID='vue-admin-element' |
||||
|
VITE_GLOB_CLIENT_SECRET='1q2w3e*' |
||||
@ -0,0 +1,36 @@ |
|||||
|
NODE_ENV=production |
||||
|
# Whether to open mock |
||||
|
VITE_USE_MOCK = true |
||||
|
|
||||
|
# public path |
||||
|
VITE_PUBLIC_PATH = / |
||||
|
|
||||
|
# Delete console |
||||
|
VITE_DROP_CONSOLE = true |
||||
|
|
||||
|
# Whether to enable gzip or brotli compression |
||||
|
# Optional: gzip | brotli | none |
||||
|
# If you need multiple forms, you can use `,` to separate |
||||
|
VITE_BUILD_COMPRESS = 'none' |
||||
|
|
||||
|
# Whether to delete origin files when using compress, default false |
||||
|
VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE = false |
||||
|
|
||||
|
# Basic interface address SPA |
||||
|
VITE_GLOB_API_URL=/basic-api |
||||
|
|
||||
|
# File upload address, optional |
||||
|
# It can be forwarded by nginx or write the actual address directly |
||||
|
VITE_GLOB_UPLOAD_URL=/upload |
||||
|
|
||||
|
# Interface prefix |
||||
|
VITE_GLOB_API_URL_PREFIX= |
||||
|
|
||||
|
# Whether to enable image compression |
||||
|
VITE_USE_IMAGEMIN= true |
||||
|
|
||||
|
# use pwa |
||||
|
VITE_USE_PWA = false |
||||
|
|
||||
|
# Is it compatible with older browsers |
||||
|
VITE_LEGACY = false |
||||
@ -0,0 +1,16 @@ |
|||||
|
|
||||
|
*.sh |
||||
|
node_modules |
||||
|
*.md |
||||
|
*.woff |
||||
|
*.ttf |
||||
|
.vscode |
||||
|
.idea |
||||
|
dist |
||||
|
/public |
||||
|
/docs |
||||
|
.husky |
||||
|
.local |
||||
|
/bin |
||||
|
Dockerfile |
||||
|
src/ |
||||
@ -0,0 +1,82 @@ |
|||||
|
// @ts-check
|
||||
|
const { defineConfig } = require('eslint-define-config'); |
||||
|
module.exports = defineConfig({ |
||||
|
root: true, |
||||
|
env: { |
||||
|
browser: true, |
||||
|
node: true, |
||||
|
es6: true, |
||||
|
}, |
||||
|
parser: 'vue-eslint-parser', |
||||
|
parserOptions: { |
||||
|
parser: '@typescript-eslint/parser', |
||||
|
ecmaVersion: 2020, |
||||
|
sourceType: 'module', |
||||
|
jsxPragma: 'React', |
||||
|
ecmaFeatures: { |
||||
|
jsx: true, |
||||
|
}, |
||||
|
}, |
||||
|
extends: [ |
||||
|
'plugin:vue/vue3-recommended', |
||||
|
'plugin:@typescript-eslint/recommended', |
||||
|
'prettier', |
||||
|
'plugin:prettier/recommended', |
||||
|
'plugin:jest/recommended', |
||||
|
], |
||||
|
rules: { |
||||
|
'vue/script-setup-uses-vars': 'error', |
||||
|
'@typescript-eslint/ban-ts-ignore': 'off', |
||||
|
'@typescript-eslint/explicit-function-return-type': 'off', |
||||
|
'@typescript-eslint/no-explicit-any': 'off', |
||||
|
'@typescript-eslint/no-var-requires': 'off', |
||||
|
'@typescript-eslint/no-empty-function': 'off', |
||||
|
'vue/custom-event-name-casing': 'off', |
||||
|
'no-use-before-define': 'off', |
||||
|
'@typescript-eslint/no-use-before-define': 'off', |
||||
|
'@typescript-eslint/ban-ts-comment': 'off', |
||||
|
'@typescript-eslint/ban-types': 'off', |
||||
|
'@typescript-eslint/no-non-null-assertion': 'off', |
||||
|
'@typescript-eslint/explicit-module-boundary-types': 'off', |
||||
|
'@typescript-eslint/no-unused-vars': [ |
||||
|
'error', |
||||
|
{ |
||||
|
argsIgnorePattern: '^_', |
||||
|
varsIgnorePattern: '^_', |
||||
|
}, |
||||
|
], |
||||
|
'no-unused-vars': [ |
||||
|
'error', |
||||
|
{ |
||||
|
argsIgnorePattern: '^_', |
||||
|
varsIgnorePattern: '^_', |
||||
|
}, |
||||
|
], |
||||
|
'space-before-function-paren': 'off', |
||||
|
|
||||
|
'vue/attributes-order': 'off', |
||||
|
'vue/v-on-event-hyphenation': 'off', |
||||
|
'vue/multi-word-component-names': 'off', |
||||
|
'vue/one-component-per-file': 'off', |
||||
|
'vue/html-closing-bracket-newline': 'off', |
||||
|
'vue/max-attributes-per-line': 'off', |
||||
|
'vue/multiline-html-element-content-newline': 'off', |
||||
|
'vue/singleline-html-element-content-newline': 'off', |
||||
|
'vue/attribute-hyphenation': 'off', |
||||
|
'vue/require-default-prop': 'off', |
||||
|
'jest/no-commented-out-tests': 'warn', |
||||
|
'function-url-quotes': 'off', |
||||
|
'vue/html-self-closing': [ |
||||
|
'error', |
||||
|
{ |
||||
|
html: { |
||||
|
void: 'always', |
||||
|
normal: 'never', |
||||
|
component: 'always', |
||||
|
}, |
||||
|
svg: 'always', |
||||
|
math: 'always', |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
}); |
||||
@ -0,0 +1,39 @@ |
|||||
|
--- |
||||
|
name: 🐛 Bug report |
||||
|
about: Create a report to help us improve |
||||
|
title: '' |
||||
|
labels: 'bug: pending triage' |
||||
|
assignees: '' |
||||
|
--- |
||||
|
|
||||
|
<!-- |
||||
|
抱歉,您遇到了一个错误。感谢您抽出宝贵的时间进行举报! |
||||
|
|
||||
|
请尽可能填写以下模板。 |
||||
|
|
||||
|
Ouch, sorry you’ve run into a bug. Thank for taking the time to report it! |
||||
|
|
||||
|
Please fill in as much of the template below as you’re able. |
||||
|
|
||||
|
P.S. have you seen our support and contributing docs? |
||||
|
--> |
||||
|
|
||||
|
**⚠️ IMPORTANT ⚠️ Please check the following list before proceeding. If you ignore this issue template, your issue will be directly closed.** |
||||
|
|
||||
|
- [ ] Read [the docs](https://anncwb.github.io/vue-vben-admin-doc/). |
||||
|
- [ ] Make sure the code is up to date. (Some bugs have been fixed in the latest code) |
||||
|
- [ ] This is a concrete bug. For Q&A open a [GitHub Discussion](https://github.com/anncwb/vue-vben-admin/discussions) or join our [Discord](https://discord.gg/8GuAdwDhj6) Chat Server. |
||||
|
|
||||
|
### Describe the bug |
||||
|
|
||||
|
A clear and concise description of what the bug is.. |
||||
|
|
||||
|
### Reproduction |
||||
|
|
||||
|
Please describe the steps of the problem in detail to ensure that we can restore the correct problem |
||||
|
|
||||
|
## System Info |
||||
|
|
||||
|
- Operating System: |
||||
|
- Node version: |
||||
|
- Package manager (npm/yarn/pnpm) and version: |
||||
@ -0,0 +1,32 @@ |
|||||
|
--- |
||||
|
name: 🚀 Feature request |
||||
|
about: Suggest an idea for this project |
||||
|
title: '' |
||||
|
labels: '' |
||||
|
assignees: '' |
||||
|
--- |
||||
|
|
||||
|
<!-- |
||||
|
感谢您提出使这个项目更好的想法! |
||||
|
请尽可能填写以下模板。 |
||||
|
|
||||
|
Thank you for suggesting an idea to make this project better! |
||||
|
Please fill in as much of the template below as you’re able. |
||||
|
|
||||
|
--> |
||||
|
|
||||
|
### Subject of the feature |
||||
|
|
||||
|
Describe your issue here. |
||||
|
|
||||
|
### Problem |
||||
|
|
||||
|
If the feature requests relates to a problem, please describe the problem you are trying to solve here. |
||||
|
|
||||
|
### Expected behaviour |
||||
|
|
||||
|
What should happen? Please describe the desired behaviour. |
||||
|
|
||||
|
### Alternatives |
||||
|
|
||||
|
What are the alternative solutions? Please describe what else you have considered? |
||||
@ -0,0 +1,28 @@ |
|||||
|
--- |
||||
|
name: 🐛 Bug 报告 |
||||
|
about: 向我们报告一个Bug以帮助我们改进 |
||||
|
title: '' |
||||
|
labels: 'bug: pending triage' |
||||
|
assignees: '' |
||||
|
--- |
||||
|
|
||||
|
**⚠️ 重要 ⚠️ 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭** |
||||
|
|
||||
|
- [ ] 已阅读 [文档](https://anncwb.github.io/vue-vben-admin-doc/). |
||||
|
- [ ] 确保您的代码已是最新或者所报告的 Bug 在最新版本中可以重现. (部分 Bug 可能已经在最近的代码中修复) |
||||
|
- [ ] 已在 Issues 中搜索了相关的关键词 |
||||
|
- [ ] 不是 ant design vue 组件库的 Bug |
||||
|
|
||||
|
### 描述 Bug |
||||
|
|
||||
|
请清晰地描述此 Bug 的具体表现。 |
||||
|
|
||||
|
### 复现 Bug |
||||
|
|
||||
|
请描述在演示页面中复现 Bug 的详细步骤,以确保我们可以理解并定位问题。部分 Bug 如果未在 Demo 中涉及,请务必提供关键代码 |
||||
|
|
||||
|
## 系统信息 |
||||
|
|
||||
|
- 操作系统: |
||||
|
- Node 版本: |
||||
|
- 包管理器 (npm/yarn/pnpm) 及其版本: |
||||
@ -0,0 +1,8 @@ |
|||||
|
blank_issues_enabled: false |
||||
|
contact_links: |
||||
|
- name: Discord Chat |
||||
|
url: https://discord.gg/8GuAdwDhj6 |
||||
|
about: Ask questions and discuss with other Vben users in real time. |
||||
|
- name: Questions & Discussions |
||||
|
url: https://github.com/anncwb/vue-vben-admin/discussions |
||||
|
about: Use GitHub discussions for message-board style questions and discussions. |
||||
@ -0,0 +1,89 @@ |
|||||
|
## Git Commit Message Convention |
||||
|
|
||||
|
> This is adapted from [Angular's commit convention](https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-angular). |
||||
|
|
||||
|
#### TL;DR: |
||||
|
|
||||
|
Messages must be matched by the following regex: |
||||
|
|
||||
|
```js |
||||
|
/^(revert: )?(feat|fix|docs|style|refactor|perf|test|workflow|build|ci|chore|types|wip): .{1,50}/; |
||||
|
``` |
||||
|
|
||||
|
#### Examples |
||||
|
|
||||
|
Appears under "Features" header, `dev` subheader: |
||||
|
|
||||
|
``` |
||||
|
feat(dev): add 'comments' option |
||||
|
``` |
||||
|
|
||||
|
Appears under "Bug Fixes" header, `dev` subheader, with a link to issue #28: |
||||
|
|
||||
|
``` |
||||
|
fix(dev): fix dev error |
||||
|
|
||||
|
close #28 |
||||
|
``` |
||||
|
|
||||
|
Appears under "Performance Improvements" header, and under "Breaking Changes" with the breaking change explanation: |
||||
|
|
||||
|
``` |
||||
|
perf(build): remove 'foo' option |
||||
|
|
||||
|
BREAKING CHANGE: The 'foo' option has been removed. |
||||
|
``` |
||||
|
|
||||
|
The following commit and commit `667ecc1` do not appear in the changelog if they are under the same release. If not, the revert commit appears under the "Reverts" header. |
||||
|
|
||||
|
``` |
||||
|
revert: feat(compiler): add 'comments' option |
||||
|
|
||||
|
This reverts commit 667ecc1654a317a13331b17617d973392f415f02. |
||||
|
``` |
||||
|
|
||||
|
### Full Message Format |
||||
|
|
||||
|
A commit message consists of a **header**, **body** and **footer**. The header has a **type**, **scope** and **subject**: |
||||
|
|
||||
|
``` |
||||
|
<type>(<scope>): <subject> |
||||
|
<BLANK LINE> |
||||
|
<body> |
||||
|
<BLANK LINE> |
||||
|
<footer> |
||||
|
``` |
||||
|
|
||||
|
The **header** is mandatory and the **scope** of the header is optional. |
||||
|
|
||||
|
### Revert |
||||
|
|
||||
|
If the commit reverts a previous commit, it should begin with `revert: `, followed by the header of the reverted commit. In the body, it should say: `This reverts commit <hash>.`, where the hash is the SHA of the commit being reverted. |
||||
|
|
||||
|
### Type |
||||
|
|
||||
|
If the prefix is `feat`, `fix` or `perf`, it will appear in the changelog. However, if there is any [BREAKING CHANGE](#footer), the commit will always appear in the changelog. |
||||
|
|
||||
|
Other prefixes are up to your discretion. Suggested prefixes are `docs`, `chore`, `style`, `refactor`, and `test` for non-changelog related tasks. |
||||
|
|
||||
|
### Scope |
||||
|
|
||||
|
The scope could be anything specifying the place of the commit change. For example `dev`, `build`, `workflow`, `cli` etc... |
||||
|
|
||||
|
### Subject |
||||
|
|
||||
|
The subject contains a succinct description of the change: |
||||
|
|
||||
|
- use the imperative, present tense: "change" not "changed" nor "changes" |
||||
|
- don't capitalize the first letter |
||||
|
- no dot (.) at the end |
||||
|
|
||||
|
### Body |
||||
|
|
||||
|
Just as in the **subject**, use the imperative, present tense: "change" not "changed" nor "changes". The body should include the motivation for the change and contrast this with previous behavior. |
||||
|
|
||||
|
### Footer |
||||
|
|
||||
|
The footer should contain any information about **Breaking Changes** and is also the place to reference GitHub issues that this commit **Closes**. |
||||
|
|
||||
|
**Breaking Changes** should start with the word `BREAKING CHANGE:` with a space or two newlines. The rest of the commit message is then used for this. |
||||
@ -0,0 +1,5 @@ |
|||||
|
# Contributing Guide |
||||
|
|
||||
|
1. Make sure you put things in the right category! |
||||
|
2. Always add your items to the end of a list. To be fair, the order is first-come-first-serve. |
||||
|
3. If you think something belongs in the wrong category, or think there needs to be a new category, feel free to edit things too. |
||||
@ -0,0 +1,34 @@ |
|||||
|
### `General` |
||||
|
|
||||
|
> ✏️ Mark the necessary items without changing the structure of the PR template. |
||||
|
|
||||
|
- [ ] Pull request template structure not broken |
||||
|
|
||||
|
### `Type` |
||||
|
|
||||
|
> ℹ️ What types of changes does your code introduce? |
||||
|
|
||||
|
> 👉 _Put an `x` in the boxes that apply_ |
||||
|
|
||||
|
- [ ] Bug fix (non-breaking change which fixes an issue) |
||||
|
- [ ] New feature (non-breaking change which adds functionality) |
||||
|
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) |
||||
|
- [ ] This change requires a documentation update |
||||
|
|
||||
|
### `Checklist` |
||||
|
|
||||
|
> ℹ️ Check all checkboxes - this will indicate that you have done everything in accordance with the rules in [CONTRIBUTING](contributing.md). |
||||
|
|
||||
|
> 👉 _Put an `x` in the boxes that apply._ |
||||
|
|
||||
|
- [ ] My code follows the style guidelines of this project |
||||
|
- [ ] Is the code format correct |
||||
|
- [ ] Is the git submission information standard? |
||||
|
- [ ] My code follows the style guidelines of this project |
||||
|
- [ ] I have performed a self-review of my own code |
||||
|
- [ ] I have commented my code, particularly in hard-to-understand areas |
||||
|
- [ ] I have made corresponding changes to the documentation |
||||
|
- [ ] My changes generate no new warnings |
||||
|
- [ ] I have added tests that prove my fix is effective or that my feature works |
||||
|
- [ ] New and existing unit tests pass locally with my changes |
||||
|
- [ ] Any dependent changes have been merged and published in downstream modules |
||||
@ -0,0 +1,29 @@ |
|||||
|
node_modules |
||||
|
.DS_Store |
||||
|
dist |
||||
|
.npmrc |
||||
|
.cache |
||||
|
|
||||
|
tests/server/static |
||||
|
tests/server/static/upload |
||||
|
|
||||
|
.local |
||||
|
# local env files |
||||
|
.env.local |
||||
|
.env.*.local |
||||
|
.eslintcache |
||||
|
|
||||
|
# Log files |
||||
|
npm-debug.log* |
||||
|
yarn-debug.log* |
||||
|
yarn-error.log* |
||||
|
pnpm-debug.log* |
||||
|
|
||||
|
# Editor directories and files |
||||
|
.idea |
||||
|
# .vscode |
||||
|
*.suo |
||||
|
*.ntvs* |
||||
|
*.njsproj |
||||
|
*.sln |
||||
|
*.sw? |
||||
@ -0,0 +1,6 @@ |
|||||
|
ports: |
||||
|
- port: 3344 |
||||
|
onOpen: open-preview |
||||
|
tasks: |
||||
|
- init: yarn |
||||
|
command: yarn dev |
||||
@ -0,0 +1,6 @@ |
|||||
|
#!/bin/sh |
||||
|
|
||||
|
# shellcheck source=./_/husky.sh |
||||
|
. "$(dirname "$0")/_/husky.sh" |
||||
|
|
||||
|
npx --no-install commitlint --edit "$1" |
||||
@ -0,0 +1,9 @@ |
|||||
|
#!/bin/sh |
||||
|
command_exists () { |
||||
|
command -v "$1" >/dev/null 2>&1 |
||||
|
} |
||||
|
|
||||
|
# Workaround for Windows 10, Git Bash and Yarn |
||||
|
if command_exists winpty && test -t 1; then |
||||
|
exec < /dev/tty |
||||
|
fi |
||||
@ -0,0 +1,8 @@ |
|||||
|
module.exports = { |
||||
|
'*.{js,jsx,ts,tsx}': ['eslint --fix', 'prettier --write'], |
||||
|
'{!(package)*.json,*.code-snippets,.!(browserslist)*rc}': ['prettier --write--parser json'], |
||||
|
'package.json': ['prettier --write'], |
||||
|
'*.vue': ['eslint --fix', 'prettier --write', 'stylelint --fix'], |
||||
|
'*.{scss,less,styl,html}': ['stylelint --fix', 'prettier --write'], |
||||
|
'*.md': ['prettier --write'], |
||||
|
}; |
||||
@ -0,0 +1,8 @@ |
|||||
|
#!/bin/sh |
||||
|
. "$(dirname "$0")/_/husky.sh" |
||||
|
. "$(dirname "$0")/common.sh" |
||||
|
|
||||
|
[ -n "$CI" ] && exit 0 |
||||
|
|
||||
|
# Format and submit code according to lintstagedrc.js configuration |
||||
|
npm run lint:lint-staged |
||||
@ -0,0 +1,9 @@ |
|||||
|
/dist/* |
||||
|
.local |
||||
|
.output.js |
||||
|
/node_modules/** |
||||
|
|
||||
|
**/*.svg |
||||
|
**/*.sh |
||||
|
|
||||
|
/public/* |
||||
@ -0,0 +1,3 @@ |
|||||
|
/dist/* |
||||
|
/public/* |
||||
|
public/* |
||||
@ -0,0 +1,48 @@ |
|||||
|
# test directories |
||||
|
__tests__ |
||||
|
test |
||||
|
tests |
||||
|
powered-test |
||||
|
|
||||
|
# asset directories |
||||
|
docs |
||||
|
doc |
||||
|
website |
||||
|
images |
||||
|
assets |
||||
|
|
||||
|
# examples |
||||
|
example |
||||
|
examples |
||||
|
|
||||
|
# code coverage directories |
||||
|
coverage |
||||
|
.nyc_output |
||||
|
|
||||
|
# build scripts |
||||
|
Makefile |
||||
|
Gulpfile.js |
||||
|
Gruntfile.js |
||||
|
|
||||
|
# configs |
||||
|
appveyor.yml |
||||
|
circle.yml |
||||
|
codeship-services.yml |
||||
|
codeship-steps.yml |
||||
|
wercker.yml |
||||
|
.tern-project |
||||
|
.gitattributes |
||||
|
.editorconfig |
||||
|
.*ignore |
||||
|
.eslintrc |
||||
|
.jshintrc |
||||
|
.flowconfig |
||||
|
.documentup.json |
||||
|
.yarn-metadata.json |
||||
|
.travis.yml |
||||
|
|
||||
|
# misc |
||||
|
*.md |
||||
|
|
||||
|
!istanbul-reports/lib/html/assets |
||||
|
!istanbul-api/node_modules/istanbul-reports/lib/html/assets |
||||
@ -0,0 +1,12 @@ |
|||||
|
FROM nginx:latest |
||||
|
LABEL maintainer="colin.in@foxmail.com" |
||||
|
|
||||
|
# 将vue构建后的dist目录中的内容复制到docker容器中nginx默认配置的部署目录 |
||||
|
COPY ./dist /usr/share/nginx/html |
||||
|
|
||||
|
# 将docker容器中默认的配置替换为本地配置 |
||||
|
COPY ./docker/nginx/nginx.conf /etc/nginx/nginx.conf |
||||
|
COPY ./docker/nginx/default.conf /etc/nginx/conf.d/default.conf |
||||
|
|
||||
|
# 端口映射 |
||||
|
EXPOSE 80 |
||||
@ -0,0 +1,21 @@ |
|||||
|
MIT License |
||||
|
|
||||
|
Copyright (c) 2020-present, Vben |
||||
|
|
||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy |
||||
|
of this software and associated documentation files (the "Software"), to deal |
||||
|
in the Software without restriction, including without limitation the rights |
||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
||||
|
copies of the Software, and to permit persons to whom the Software is |
||||
|
furnished to do so, subject to the following conditions: |
||||
|
|
||||
|
The above copyright notice and this permission notice shall be included in all |
||||
|
copies or substantial portions of the Software. |
||||
|
|
||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
||||
|
SOFTWARE. |
||||
@ -0,0 +1,183 @@ |
|||||
|
<div align="center"> <a href="https://github.com/anncwb/vue-vben-admin"> <img alt="VbenAdmin Logo" width="200" height="200" src="https://anncwb.github.io/anncwb/images/logo.png"> </a> <br> <br> |
||||
|
|
||||
|
[](LICENSE) |
||||
|
|
||||
|
<h1>Vue vben admin</h1> |
||||
|
</div> |
||||
|
|
||||
|
## 简介 |
||||
|
|
||||
|
Vue Vben Admin 是一个免费开源的中后台模版。使用了最新的`vue3`,`vite2`,`TypeScript`等主流技术开发,开箱即用的中后台前端解决方案,也可用于学习参考。 |
||||
|
|
||||
|
## 特性 |
||||
|
|
||||
|
- **最新技术栈**:使用 Vue3/vite2 等前端前沿技术开发 |
||||
|
- **TypeScript**: 应用程序级 JavaScript 的语言 |
||||
|
- **主题**:可配置的主题 |
||||
|
- **国际化**:内置完善的国际化方案 |
||||
|
- **Mock 数据** 内置 Mock 数据方案 |
||||
|
- **权限** 内置完善的动态路由权限生成方案 |
||||
|
- **组件** 二次封装了多个常用的组件 |
||||
|
|
||||
|
## 预览 |
||||
|
|
||||
|
 |
||||
|
|
||||
|
 |
||||
|
|
||||
|
 |
||||
|
|
||||
|
 |
||||
|
|
||||
|
 |
||||
|
|
||||
|
 |
||||
|
|
||||
|
 |
||||
|
|
||||
|
 |
||||
|
|
||||
|
 |
||||
|
|
||||
|
 |
||||
|
|
||||
|
 |
||||
|
|
||||
|
### 使用 Gitpod |
||||
|
|
||||
|
在 Gitpod(适用于 GitHub 的免费在线开发环境)中打开项目,并立即开始编码. |
||||
|
|
||||
|
[](https://gitpod.io/#https://github.com/anncwb/vue-vben-admin) |
||||
|
|
||||
|
## 文档 |
||||
|
|
||||
|
[文档地址](https://vvbin.cn/doc-next/) |
||||
|
|
||||
|
## 准备 |
||||
|
|
||||
|
- [node](http://nodejs.org/) 和 [git](https://git-scm.com/) -项目开发环境 |
||||
|
- [Vite](https://vitejs.dev/) - 熟悉 vite 特性 |
||||
|
- [Vue3](https://v3.vuejs.org/) - 熟悉 Vue 基础语法 |
||||
|
- [TypeScript](https://www.typescriptlang.org/) - 熟悉`TypeScript`基本语法 |
||||
|
- [Es6+](http://es6.ruanyifeng.com/) - 熟悉 es6 基本语法 |
||||
|
- [Vue-Router-Next](https://next.router.vuejs.org/) - 熟悉 vue-router 基本使用 |
||||
|
- [Ant-Design-Vue](https://2x.antdv.com/docs/vue/introduce-cn/) - ui 基本使用 |
||||
|
- [Mock.js](https://github.com/nuysoft/Mock) - mockjs 基本语法 |
||||
|
|
||||
|
- [abp-vNext-admin](https://github.com/colinin/abp-vue-admin-element-typescript) - 后台服务 |
||||
|
|
||||
|
## 安装使用 |
||||
|
|
||||
|
- 获取项目代码 |
||||
|
|
||||
|
```bash |
||||
|
git clone https://github.com/anncwb/vue-vben-admin.git |
||||
|
``` |
||||
|
|
||||
|
- 安装依赖 |
||||
|
|
||||
|
```bash |
||||
|
cd vue-vben-admin |
||||
|
|
||||
|
yarn install |
||||
|
|
||||
|
``` |
||||
|
|
||||
|
- 运行 |
||||
|
|
||||
|
```bash |
||||
|
yarn serve |
||||
|
``` |
||||
|
|
||||
|
- 打包 |
||||
|
|
||||
|
```bash |
||||
|
yarn build |
||||
|
``` |
||||
|
|
||||
|
## 更新日志 |
||||
|
|
||||
|
[CHANGELOG](./CHANGELOG.zh_CN.md) |
||||
|
|
||||
|
## 项目地址 |
||||
|
|
||||
|
- [vue-vben-admin](https://github.com/anncwb/vue-vben-admin) - 完整版 |
||||
|
- [vue-vben-admin-thin-next](https://github.com/anncwb/vben-admin-thin-next) - 简化版 |
||||
|
|
||||
|
## 如何贡献 |
||||
|
|
||||
|
非常欢迎你的加入 或者提交一个 Pull Request。 |
||||
|
|
||||
|
**Pull Request:** |
||||
|
|
||||
|
1. Fork 代码! |
||||
|
2. 创建自己的分支: `git checkout -b feat/xxxx` |
||||
|
3. 提交你的修改: `git commit -am 'feat(function): add xxxxx'` |
||||
|
4. 推送您的分支: `git push origin feat/xxxx` |
||||
|
5. 提交`pull request` |
||||
|
|
||||
|
## Git 贡献提交规范 |
||||
|
|
||||
|
- 参考 [vue](https://github.com/vuejs/vue/blob/dev/.github/COMMIT_CONVENTION.md) 规范 ([Angular](https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-angular)) |
||||
|
|
||||
|
- `feat` 增加新功能 |
||||
|
- `fix` 修复问题/BUG |
||||
|
- `style` 代码风格相关无影响运行结果的 |
||||
|
- `perf` 优化/性能提升 |
||||
|
- `refactor` 重构 |
||||
|
- `revert` 撤销修改 |
||||
|
- `test` 测试相关 |
||||
|
- `docs` 文档/注释 |
||||
|
- `chore` 依赖更新/脚手架配置修改等 |
||||
|
- `workflow` 工作流改进 |
||||
|
- `ci` 持续集成 |
||||
|
- `types` 类型定义文件更改 |
||||
|
- `wip` 开发中 |
||||
|
|
||||
|
## 浏览器支持 |
||||
|
|
||||
|
本地开发推荐使用`Chrome 80+` 浏览器 |
||||
|
|
||||
|
支持现代浏览器, 不支持 IE |
||||
|
|
||||
|
| [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png" alt=" Edge" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>IE | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png" alt=" Edge" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Edge | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png" alt="Firefox" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Firefox | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png" alt="Chrome" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Chrome | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/safari/safari_48x48.png" alt="Safari" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Safari | |
||||
|
| :-: | :-: | :-: | :-: | :-: | |
||||
|
| not support | last 2 versions | last 2 versions | last 2 versions | last 2 versions | |
||||
|
|
||||
|
## 相关仓库 |
||||
|
|
||||
|
如果这些插件对你有帮助,可以给一个 star 支持下 |
||||
|
|
||||
|
- [vite-plugin-mock](https://github.com/anncwb/vite-plugin-mock) - 用于本地及开发环境数据 mock |
||||
|
- [vite-plugin-html](https://github.com/anncwb/vite-plugin-html) - 用于 html 模版转换及压缩 |
||||
|
- [vite-plugin-style-import](https://github.com/anncwb/vite-plugin-style-import) - 用于组件库样式按需引入 |
||||
|
- [vite-plugin-theme](https://github.com/anncwb/vite-plugin-theme) - 用于在线切换主题色等颜色相关配置 |
||||
|
- [vite-plugin-imagemin](https://github.com/anncwb/vite-plugin-imagemin) - 用于打包压缩图片资源 |
||||
|
- [vite-plugin-compression](https://github.com/anncwb/vite-plugin-compression) - 用于打包输出.gz|.brotil 文件 |
||||
|
- [vite-plugin-svg-icons](https://github.com/anncwb/vite-plugin-svg-icons) - 用于快速生成 svg 雪碧图 |
||||
|
|
||||
|
## 后台整合示例 |
||||
|
|
||||
|
- [lamp-cloud](https://github.com/zuihou/lamp-cloud) - 基于 SpringCloud Alibaba 的微服务中后台快速开发平台 |
||||
|
|
||||
|
## 维护者 |
||||
|
|
||||
|
[@Vben](https://github.com/anncwb) |
||||
|
|
||||
|
## 捐赠 |
||||
|
|
||||
|
如果你觉得这个项目对你有帮助,你可以帮作者买一杯咖啡表示支持! |
||||
|
|
||||
|
 |
||||
|
|
||||
|
<a style="display: block;width: 100px;height: 50px;line-height: 50px; color: #fff;text-align: center; background: #408aed;border-radius: 4px;" href="https://www.paypal.com/paypalme/cvvben">Paypal Me</a> |
||||
|
|
||||
|
## 交流 |
||||
|
|
||||
|
`Vue-vben-Admin` 是完全开源免费的项目,在帮助开发者更方便地进行中大型管理系统开发,同时也提供 QQ 交流群使用问题欢迎在群内提问。 |
||||
|
|
||||
|
- QQ 群 `569291866` |
||||
|
|
||||
|
## License |
||||
|
|
||||
|
[MIT © Vben-2020](./LICENSE) |
||||
@ -0,0 +1,79 @@ |
|||||
|
import { generate } from '@ant-design/colors'; |
||||
|
|
||||
|
export const primaryColor = '#0960bd'; |
||||
|
|
||||
|
export const darkMode = 'light'; |
||||
|
|
||||
|
type Fn = (...arg: any) => any; |
||||
|
|
||||
|
type GenerateTheme = 'default' | 'dark'; |
||||
|
|
||||
|
export interface GenerateColorsParams { |
||||
|
mixLighten: Fn; |
||||
|
mixDarken: Fn; |
||||
|
tinycolor: any; |
||||
|
color?: string; |
||||
|
} |
||||
|
|
||||
|
export function generateAntColors(color: string, theme: GenerateTheme = 'default') { |
||||
|
return generate(color, { |
||||
|
theme, |
||||
|
}); |
||||
|
} |
||||
|
|
||||
|
export function getThemeColors(color?: string) { |
||||
|
const tc = color || primaryColor; |
||||
|
const lightColors = generateAntColors(tc); |
||||
|
const primary = lightColors[5]; |
||||
|
const modeColors = generateAntColors(primary, 'dark'); |
||||
|
|
||||
|
return [...lightColors, ...modeColors]; |
||||
|
} |
||||
|
|
||||
|
export function generateColors({ |
||||
|
color = primaryColor, |
||||
|
mixLighten, |
||||
|
mixDarken, |
||||
|
tinycolor, |
||||
|
}: GenerateColorsParams) { |
||||
|
const arr = new Array(19).fill(0); |
||||
|
const lightens = arr.map((_t, i) => { |
||||
|
return mixLighten(color, i / 5); |
||||
|
}); |
||||
|
|
||||
|
const darkens = arr.map((_t, i) => { |
||||
|
return mixDarken(color, i / 5); |
||||
|
}); |
||||
|
|
||||
|
const alphaColors = arr.map((_t, i) => { |
||||
|
return tinycolor(color) |
||||
|
.setAlpha(i / 20) |
||||
|
.toRgbString(); |
||||
|
}); |
||||
|
|
||||
|
const shortAlphaColors = alphaColors.map((item) => item.replace(/\s/g, '').replace(/0\./g, '.')); |
||||
|
|
||||
|
const tinycolorLightens = arr |
||||
|
.map((_t, i) => { |
||||
|
return tinycolor(color) |
||||
|
.lighten(i * 5) |
||||
|
.toHexString(); |
||||
|
}) |
||||
|
.filter((item) => item !== '#ffffff'); |
||||
|
|
||||
|
const tinycolorDarkens = arr |
||||
|
.map((_t, i) => { |
||||
|
return tinycolor(color) |
||||
|
.darken(i * 5) |
||||
|
.toHexString(); |
||||
|
}) |
||||
|
.filter((item) => item !== '#000000'); |
||||
|
return [ |
||||
|
...lightens, |
||||
|
...darkens, |
||||
|
...alphaColors, |
||||
|
...shortAlphaColors, |
||||
|
...tinycolorDarkens, |
||||
|
...tinycolorLightens, |
||||
|
].filter((item) => !item.includes('-')); |
||||
|
} |
||||
@ -0,0 +1,6 @@ |
|||||
|
/** |
||||
|
* The name of the configuration file entered in the production environment |
||||
|
*/ |
||||
|
export const GLOB_CONFIG_FILE_NAME = '_app.config.js'; |
||||
|
|
||||
|
export const OUTPUT_DIR = 'dist'; |
||||
@ -0,0 +1,37 @@ |
|||||
|
import { generateAntColors, primaryColor } from '../config/themeConfig'; |
||||
|
import { getThemeVariables } from 'ant-design-vue/dist/theme'; |
||||
|
import { resolve } from 'path'; |
||||
|
|
||||
|
/** |
||||
|
* less global variable |
||||
|
*/ |
||||
|
export function generateModifyVars(dark = false) { |
||||
|
const palettes = generateAntColors(primaryColor); |
||||
|
const primary = palettes[5]; |
||||
|
|
||||
|
const primaryColorObj: Record<string, string> = {}; |
||||
|
|
||||
|
for (let index = 0; index < 10; index++) { |
||||
|
primaryColorObj[`primary-${index + 1}`] = palettes[index]; |
||||
|
} |
||||
|
|
||||
|
const modifyVars = getThemeVariables({ dark }); |
||||
|
return { |
||||
|
...modifyVars, |
||||
|
// Used for global import to avoid the need to import each style file separately
|
||||
|
// reference: Avoid repeated references
|
||||
|
hack: `${modifyVars.hack} @import (reference) "${resolve('src/design/config.less')}";`, |
||||
|
'primary-color': primary, |
||||
|
...primaryColorObj, |
||||
|
'info-color': primary, |
||||
|
'processing-color': primary, |
||||
|
'success-color': '#55D187', // Success color
|
||||
|
'error-color': '#ED6F6F', // False color
|
||||
|
'warning-color': '#EFBD47', // Warning color
|
||||
|
//'border-color-base': '#EEEEEE',
|
||||
|
'font-size-base': '14px', // Main font size
|
||||
|
'border-radius-base': '2px', // Component/float fillet
|
||||
|
'link-color': primary, // Link color
|
||||
|
'app-content-background': '#fafafa', // Link color
|
||||
|
}; |
||||
|
} |
||||
@ -0,0 +1,72 @@ |
|||||
|
import path from 'path'; |
||||
|
import fs from 'fs-extra'; |
||||
|
import inquirer from 'inquirer'; |
||||
|
import chalk from 'chalk'; |
||||
|
import pkg from '../../../package.json'; |
||||
|
|
||||
|
async function generateIcon() { |
||||
|
const dir = path.resolve(process.cwd(), 'node_modules/@iconify/json'); |
||||
|
|
||||
|
const raw = await fs.readJSON(path.join(dir, 'collections.json')); |
||||
|
|
||||
|
const collections = Object.entries(raw).map(([id, v]) => ({ |
||||
|
...(v as any), |
||||
|
id, |
||||
|
})); |
||||
|
|
||||
|
const choices = collections.map((item) => ({ key: item.id, value: item.id, name: item.name })); |
||||
|
|
||||
|
inquirer |
||||
|
.prompt([ |
||||
|
{ |
||||
|
type: 'list', |
||||
|
name: 'useType', |
||||
|
choices: [ |
||||
|
{ key: 'local', value: 'local', name: 'Local' }, |
||||
|
{ key: 'onLine', value: 'onLine', name: 'OnLine' }, |
||||
|
], |
||||
|
message: 'How to use icons?', |
||||
|
}, |
||||
|
{ |
||||
|
type: 'list', |
||||
|
name: 'iconSet', |
||||
|
choices: choices, |
||||
|
message: 'Select the icon set that needs to be generated?', |
||||
|
}, |
||||
|
{ |
||||
|
type: 'input', |
||||
|
name: 'output', |
||||
|
message: 'Select the icon set that needs to be generated?', |
||||
|
default: 'src/components/Icon/data', |
||||
|
}, |
||||
|
]) |
||||
|
.then(async (answers) => { |
||||
|
const { iconSet, output, useType } = answers; |
||||
|
const outputDir = path.resolve(process.cwd(), output); |
||||
|
fs.ensureDir(outputDir); |
||||
|
const genCollections = collections.filter((item) => [iconSet].includes(item.id)); |
||||
|
const prefixSet: string[] = []; |
||||
|
for (const info of genCollections) { |
||||
|
const data = await fs.readJSON(path.join(dir, 'json', `${info.id}.json`)); |
||||
|
if (data) { |
||||
|
const { prefix } = data; |
||||
|
const isLocal = useType === 'local'; |
||||
|
const icons = Object.keys(data.icons).map( |
||||
|
(item) => `${isLocal ? prefix + ':' : ''}${item}`, |
||||
|
); |
||||
|
|
||||
|
await fs.writeFileSync( |
||||
|
path.join(output, `icons.data.ts`), |
||||
|
`export default ${isLocal ? JSON.stringify(icons) : JSON.stringify({ prefix, icons })}`, |
||||
|
); |
||||
|
prefixSet.push(prefix); |
||||
|
} |
||||
|
} |
||||
|
fs.emptyDir(path.join(process.cwd(), 'node_modules/.vite')); |
||||
|
console.log( |
||||
|
`✨ ${chalk.cyan(`[${pkg.name}]`)}` + ' - Icon generated successfully:' + `[${prefixSet}]`, |
||||
|
); |
||||
|
}); |
||||
|
} |
||||
|
|
||||
|
generateIcon(); |
||||
@ -0,0 +1,9 @@ |
|||||
|
/** |
||||
|
* Get the configuration file variable name |
||||
|
* @param env |
||||
|
*/ |
||||
|
export const getConfigFileName = (env: Record<string, any>) => { |
||||
|
return `__PRODUCTION__${env.VITE_GLOB_APP_SHORT_NAME || '__APP'}__CONF__` |
||||
|
.toUpperCase() |
||||
|
.replace(/\s/g, ''); |
||||
|
}; |
||||
@ -0,0 +1,45 @@ |
|||||
|
/** |
||||
|
* Generate additional configuration files when used for packaging. The file can be configured with some global variables, so that it can be changed directly externally without repackaging |
||||
|
*/ |
||||
|
import { GLOB_CONFIG_FILE_NAME, OUTPUT_DIR } from '../constant'; |
||||
|
import fs, { writeFileSync } from 'fs-extra'; |
||||
|
import chalk from 'chalk'; |
||||
|
|
||||
|
import { getEnvConfig, getRootPath } from '../utils'; |
||||
|
import { getConfigFileName } from '../getConfigFileName'; |
||||
|
|
||||
|
import pkg from '../../package.json'; |
||||
|
|
||||
|
interface CreateConfigParams { |
||||
|
configName: string; |
||||
|
config: any; |
||||
|
configFileName?: string; |
||||
|
} |
||||
|
|
||||
|
function createConfig(params: CreateConfigParams) { |
||||
|
const { configName, config, configFileName } = params; |
||||
|
try { |
||||
|
const windowConf = `window.${configName}`; |
||||
|
// Ensure that the variable will not be modified
|
||||
|
const configStr = `${windowConf}=${JSON.stringify(config)};
|
||||
|
Object.freeze(${windowConf}); |
||||
|
Object.defineProperty(window, "${configName}", { |
||||
|
configurable: false, |
||||
|
writable: false, |
||||
|
}); |
||||
|
`.replace(/\s/g, '');
|
||||
|
fs.mkdirp(getRootPath(OUTPUT_DIR)); |
||||
|
writeFileSync(getRootPath(`${OUTPUT_DIR}/${configFileName}`), configStr); |
||||
|
|
||||
|
console.log(chalk.cyan(`✨ [${pkg.name}]`) + ` - configuration file is build successfully:`); |
||||
|
console.log(chalk.gray(OUTPUT_DIR + '/' + chalk.green(configFileName)) + '\n'); |
||||
|
} catch (error) { |
||||
|
console.log(chalk.red('configuration file configuration file failed to package:\n' + error)); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
export function runBuildConfig() { |
||||
|
const config = getEnvConfig(); |
||||
|
const configFileName = getConfigFileName(config); |
||||
|
createConfig({ config, configName: configFileName, configFileName: GLOB_CONFIG_FILE_NAME }); |
||||
|
} |
||||
@ -0,0 +1,23 @@ |
|||||
|
// #!/usr/bin/env node
|
||||
|
|
||||
|
import { runBuildConfig } from './buildConf'; |
||||
|
import chalk from 'chalk'; |
||||
|
|
||||
|
import pkg from '../../package.json'; |
||||
|
|
||||
|
export const runBuild = async () => { |
||||
|
try { |
||||
|
const argvList = process.argv.splice(2); |
||||
|
|
||||
|
// Generate configuration file
|
||||
|
if (!argvList.includes('disabled-config')) { |
||||
|
runBuildConfig(); |
||||
|
} |
||||
|
|
||||
|
console.log(`✨ ${chalk.cyan(`[${pkg.name}]`)}` + ' - build successfully!'); |
||||
|
} catch (error) { |
||||
|
console.log(chalk.red('vite build error:\n' + error)); |
||||
|
process.exit(1); |
||||
|
} |
||||
|
}; |
||||
|
runBuild(); |
||||
@ -0,0 +1,92 @@ |
|||||
|
import fs from 'fs'; |
||||
|
import path from 'path'; |
||||
|
import dotenv from 'dotenv'; |
||||
|
|
||||
|
export function isDevFn(mode: string): boolean { |
||||
|
return mode === 'development'; |
||||
|
} |
||||
|
|
||||
|
export function isProdFn(mode: string): boolean { |
||||
|
return mode === 'production'; |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* Whether to generate package preview |
||||
|
*/ |
||||
|
export function isReportMode(): boolean { |
||||
|
return process.env.REPORT === 'true'; |
||||
|
} |
||||
|
|
||||
|
// Read all environment variable configuration files to process.env
|
||||
|
export function wrapperEnv(envConf: Recordable): ViteEnv { |
||||
|
const ret: any = {}; |
||||
|
|
||||
|
for (const envName of Object.keys(envConf)) { |
||||
|
let realName = envConf[envName].replace(/\\n/g, '\n'); |
||||
|
realName = realName === 'true' ? true : realName === 'false' ? false : realName; |
||||
|
|
||||
|
if (envName === 'VITE_PORT') { |
||||
|
realName = Number(realName); |
||||
|
} |
||||
|
if (envName === 'VITE_PROXY' && realName) { |
||||
|
try { |
||||
|
realName = JSON.parse(realName.replace(/'/g, '"')); |
||||
|
} catch (error) { |
||||
|
realName = ''; |
||||
|
} |
||||
|
} |
||||
|
ret[envName] = realName; |
||||
|
if (typeof realName === 'string') { |
||||
|
process.env[envName] = realName; |
||||
|
} else if (typeof realName === 'object') { |
||||
|
process.env[envName] = JSON.stringify(realName); |
||||
|
} |
||||
|
} |
||||
|
return ret; |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 获取当前环境下生效的配置文件名 |
||||
|
*/ |
||||
|
function getConfFiles() { |
||||
|
const script = process.env.npm_lifecycle_script; |
||||
|
const reg = new RegExp('--mode ([a-z_\\d]+)'); |
||||
|
const result = reg.exec(script as string) as any; |
||||
|
if (result) { |
||||
|
const mode = result[1] as string; |
||||
|
return ['.env', `.env.${mode}`]; |
||||
|
} |
||||
|
return ['.env', '.env.production']; |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* Get the environment variables starting with the specified prefix |
||||
|
* @param match prefix |
||||
|
* @param confFiles ext |
||||
|
*/ |
||||
|
export function getEnvConfig(match = 'VITE_GLOB_', confFiles = getConfFiles()) { |
||||
|
let envConfig = {}; |
||||
|
confFiles.forEach((item) => { |
||||
|
try { |
||||
|
const env = dotenv.parse(fs.readFileSync(path.resolve(process.cwd(), item))); |
||||
|
envConfig = { ...envConfig, ...env }; |
||||
|
} catch (e) { |
||||
|
console.error(`Error in parsing ${item}`, e); |
||||
|
} |
||||
|
}); |
||||
|
const reg = new RegExp(`^(${match})`); |
||||
|
Object.keys(envConfig).forEach((key) => { |
||||
|
if (!reg.test(key)) { |
||||
|
Reflect.deleteProperty(envConfig, key); |
||||
|
} |
||||
|
}); |
||||
|
return envConfig; |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* Get user root directory |
||||
|
* @param dir file path |
||||
|
*/ |
||||
|
export function getRootPath(...dir: string[]) { |
||||
|
return path.resolve(process.cwd(), ...dir); |
||||
|
} |
||||
@ -0,0 +1,21 @@ |
|||||
|
// TODO
|
||||
|
import type { GetManualChunk } from 'rollup'; |
||||
|
|
||||
|
//
|
||||
|
const vendorLibs: { match: string[]; output: string }[] = [ |
||||
|
// {
|
||||
|
// match: ['xlsx'],
|
||||
|
// output: 'xlsx',
|
||||
|
// },
|
||||
|
]; |
||||
|
|
||||
|
// @ts-ignore
|
||||
|
export const configManualChunk: GetManualChunk = (id: string) => { |
||||
|
if (/[\\/]node_modules[\\/]/.test(id)) { |
||||
|
const matchItem = vendorLibs.find((item) => { |
||||
|
const reg = new RegExp(`[\\/]node_modules[\\/]_?(${item.match.join('|')})(.*)`, 'ig'); |
||||
|
return reg.test(id); |
||||
|
}); |
||||
|
return matchItem ? matchItem.output : null; |
||||
|
} |
||||
|
}; |
||||
@ -0,0 +1,35 @@ |
|||||
|
/** |
||||
|
* Used to package and output gzip. Note that this does not work properly in Vite, the specific reason is still being investigated |
||||
|
* https://github.com/anncwb/vite-plugin-compression
|
||||
|
*/ |
||||
|
import type { Plugin } from 'vite'; |
||||
|
import compressPlugin from 'vite-plugin-compression'; |
||||
|
|
||||
|
export function configCompressPlugin( |
||||
|
compress: 'gzip' | 'brotli' | 'none', |
||||
|
deleteOriginFile = false, |
||||
|
): Plugin | Plugin[] { |
||||
|
const compressList = compress.split(','); |
||||
|
|
||||
|
const plugins: Plugin[] = []; |
||||
|
|
||||
|
if (compressList.includes('gzip')) { |
||||
|
plugins.push( |
||||
|
compressPlugin({ |
||||
|
ext: '.gz', |
||||
|
deleteOriginFile, |
||||
|
}), |
||||
|
); |
||||
|
} |
||||
|
|
||||
|
if (compressList.includes('brotli')) { |
||||
|
plugins.push( |
||||
|
compressPlugin({ |
||||
|
ext: '.br', |
||||
|
algorithm: 'brotliCompress', |
||||
|
deleteOriginFile, |
||||
|
}), |
||||
|
); |
||||
|
} |
||||
|
return plugins; |
||||
|
} |
||||
@ -0,0 +1,25 @@ |
|||||
|
import type { Plugin } from 'vite'; |
||||
|
|
||||
|
/** |
||||
|
* TODO |
||||
|
* Temporarily solve the Vite circular dependency problem, and wait for a better solution to fix it later. I don't know what problems this writing will bring. |
||||
|
* @returns |
||||
|
*/ |
||||
|
|
||||
|
export function configHmrPlugin(): Plugin { |
||||
|
return { |
||||
|
name: 'singleHMR', |
||||
|
handleHotUpdate({ modules, file }) { |
||||
|
if (file.match(/xml$/)) return []; |
||||
|
|
||||
|
modules.forEach((m) => { |
||||
|
if (!m.url.match(/\.(css|less)/)) { |
||||
|
m.importedModules = new Set(); |
||||
|
m.importers = new Set(); |
||||
|
} |
||||
|
}); |
||||
|
|
||||
|
return modules; |
||||
|
}, |
||||
|
}; |
||||
|
} |
||||
@ -0,0 +1,40 @@ |
|||||
|
/** |
||||
|
* Plugin to minimize and use ejs template syntax in index.html. |
||||
|
* https://github.com/anncwb/vite-plugin-html
|
||||
|
*/ |
||||
|
import type { Plugin } from 'vite'; |
||||
|
import html from 'vite-plugin-html'; |
||||
|
import pkg from '../../../package.json'; |
||||
|
import { GLOB_CONFIG_FILE_NAME } from '../../constant'; |
||||
|
|
||||
|
export function configHtmlPlugin(env: ViteEnv, isBuild: boolean) { |
||||
|
const { VITE_GLOB_APP_TITLE, VITE_PUBLIC_PATH } = env; |
||||
|
|
||||
|
const path = VITE_PUBLIC_PATH.endsWith('/') ? VITE_PUBLIC_PATH : `${VITE_PUBLIC_PATH}/`; |
||||
|
|
||||
|
const getAppConfigSrc = () => { |
||||
|
return `${path || '/'}${GLOB_CONFIG_FILE_NAME}?v=${pkg.version}-${new Date().getTime()}`; |
||||
|
}; |
||||
|
|
||||
|
const htmlPlugin: Plugin[] = html({ |
||||
|
minify: isBuild, |
||||
|
inject: { |
||||
|
// Inject data into ejs template
|
||||
|
data: { |
||||
|
title: VITE_GLOB_APP_TITLE, |
||||
|
}, |
||||
|
// Embed the generated app.config.js file
|
||||
|
tags: isBuild |
||||
|
? [ |
||||
|
{ |
||||
|
tag: 'script', |
||||
|
attrs: { |
||||
|
src: getAppConfigSrc(), |
||||
|
}, |
||||
|
}, |
||||
|
] |
||||
|
: [], |
||||
|
}, |
||||
|
}); |
||||
|
return htmlPlugin; |
||||
|
} |
||||
@ -0,0 +1,34 @@ |
|||||
|
// Image resource files used to compress the output of the production environment
|
||||
|
// https://github.com/anncwb/vite-plugin-imagemin
|
||||
|
import viteImagemin from 'vite-plugin-imagemin'; |
||||
|
|
||||
|
export function configImageminPlugin() { |
||||
|
const plugin = viteImagemin({ |
||||
|
gifsicle: { |
||||
|
optimizationLevel: 7, |
||||
|
interlaced: false, |
||||
|
}, |
||||
|
optipng: { |
||||
|
optimizationLevel: 7, |
||||
|
}, |
||||
|
mozjpeg: { |
||||
|
quality: 20, |
||||
|
}, |
||||
|
pngquant: { |
||||
|
quality: [0.8, 0.9], |
||||
|
speed: 4, |
||||
|
}, |
||||
|
svgo: { |
||||
|
plugins: [ |
||||
|
{ |
||||
|
name: 'removeViewBox', |
||||
|
}, |
||||
|
{ |
||||
|
name: 'removeEmptyAttrs', |
||||
|
active: false, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
}); |
||||
|
return plugin; |
||||
|
} |
||||
@ -0,0 +1,82 @@ |
|||||
|
import type { Plugin } from 'vite'; |
||||
|
import vue from '@vitejs/plugin-vue'; |
||||
|
import vueJsx from '@vitejs/plugin-vue-jsx'; |
||||
|
import legacy from '@vitejs/plugin-legacy'; |
||||
|
import purgeIcons from 'vite-plugin-purge-icons'; |
||||
|
import windiCSS from 'vite-plugin-windicss'; |
||||
|
import vueSetupExtend from 'vite-plugin-vue-setup-extend'; |
||||
|
import { configHtmlPlugin } from './html'; |
||||
|
import { configPwaConfig } from './pwa'; |
||||
|
import { configMockPlugin } from './mock'; |
||||
|
import { configCompressPlugin } from './compress'; |
||||
|
import { configStyleImportPlugin } from './styleImport'; |
||||
|
import { configVisualizerConfig } from './visualizer'; |
||||
|
import { configThemePlugin } from './theme'; |
||||
|
import { configImageminPlugin } from './imagemin'; |
||||
|
import { configSvgIconsPlugin } from './svgSprite'; |
||||
|
import { configHmrPlugin } from './hmr'; |
||||
|
|
||||
|
export function createVitePlugins(viteEnv: ViteEnv, isBuild: boolean) { |
||||
|
const { |
||||
|
VITE_USE_IMAGEMIN, |
||||
|
VITE_USE_MOCK, |
||||
|
VITE_LEGACY, |
||||
|
VITE_BUILD_COMPRESS, |
||||
|
VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE, |
||||
|
} = viteEnv; |
||||
|
|
||||
|
const vitePlugins: (Plugin | Plugin[])[] = [ |
||||
|
// have to
|
||||
|
vue(), |
||||
|
// have to
|
||||
|
vueJsx(), |
||||
|
// support name
|
||||
|
vueSetupExtend(), |
||||
|
]; |
||||
|
|
||||
|
// vite-plugin-windicss
|
||||
|
vitePlugins.push(windiCSS()); |
||||
|
|
||||
|
// TODO
|
||||
|
!isBuild && vitePlugins.push(configHmrPlugin()); |
||||
|
|
||||
|
// @vitejs/plugin-legacy
|
||||
|
VITE_LEGACY && isBuild && vitePlugins.push(legacy()); |
||||
|
|
||||
|
// vite-plugin-html
|
||||
|
vitePlugins.push(configHtmlPlugin(viteEnv, isBuild)); |
||||
|
|
||||
|
// vite-plugin-svg-icons
|
||||
|
vitePlugins.push(configSvgIconsPlugin(isBuild)); |
||||
|
|
||||
|
// vite-plugin-mock
|
||||
|
VITE_USE_MOCK && vitePlugins.push(configMockPlugin(isBuild)); |
||||
|
|
||||
|
// vite-plugin-purge-icons
|
||||
|
vitePlugins.push(purgeIcons()); |
||||
|
|
||||
|
// vite-plugin-style-import
|
||||
|
vitePlugins.push(configStyleImportPlugin(isBuild)); |
||||
|
|
||||
|
// rollup-plugin-visualizer
|
||||
|
vitePlugins.push(configVisualizerConfig()); |
||||
|
|
||||
|
//vite-plugin-theme
|
||||
|
vitePlugins.push(configThemePlugin(isBuild)); |
||||
|
|
||||
|
// The following plugins only work in the production environment
|
||||
|
if (isBuild) { |
||||
|
//vite-plugin-imagemin
|
||||
|
VITE_USE_IMAGEMIN && vitePlugins.push(configImageminPlugin()); |
||||
|
|
||||
|
// rollup-plugin-gzip
|
||||
|
vitePlugins.push( |
||||
|
configCompressPlugin(VITE_BUILD_COMPRESS, VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE), |
||||
|
); |
||||
|
|
||||
|
// vite-plugin-pwa
|
||||
|
vitePlugins.push(configPwaConfig(viteEnv)); |
||||
|
} |
||||
|
|
||||
|
return vitePlugins; |
||||
|
} |
||||
@ -0,0 +1,19 @@ |
|||||
|
/** |
||||
|
* Mock plugin for development and production. |
||||
|
* https://github.com/anncwb/vite-plugin-mock
|
||||
|
*/ |
||||
|
import { viteMockServe } from 'vite-plugin-mock'; |
||||
|
|
||||
|
export function configMockPlugin(isBuild: boolean) { |
||||
|
return viteMockServe({ |
||||
|
ignore: /^\_/, |
||||
|
mockPath: 'mock', |
||||
|
localEnabled: !isBuild, |
||||
|
prodEnabled: isBuild, |
||||
|
injectCode: ` |
||||
|
import { setupProdMockServer } from '../mock/_createProductionServer'; |
||||
|
|
||||
|
setupProdMockServer(); |
||||
|
`,
|
||||
|
}); |
||||
|
} |
||||
@ -0,0 +1,33 @@ |
|||||
|
/** |
||||
|
* Zero-config PWA for Vite |
||||
|
* https://github.com/antfu/vite-plugin-pwa
|
||||
|
*/ |
||||
|
import { VitePWA } from 'vite-plugin-pwa'; |
||||
|
|
||||
|
export function configPwaConfig(env: ViteEnv) { |
||||
|
const { VITE_USE_PWA, VITE_GLOB_APP_TITLE, VITE_GLOB_APP_SHORT_NAME } = env; |
||||
|
|
||||
|
if (VITE_USE_PWA) { |
||||
|
// vite-plugin-pwa
|
||||
|
const pwaPlugin = VitePWA({ |
||||
|
manifest: { |
||||
|
name: VITE_GLOB_APP_TITLE, |
||||
|
short_name: VITE_GLOB_APP_SHORT_NAME, |
||||
|
icons: [ |
||||
|
{ |
||||
|
src: './resource/img/pwa-192x192.png', |
||||
|
sizes: '192x192', |
||||
|
type: 'image/png', |
||||
|
}, |
||||
|
{ |
||||
|
src: './resource/img/pwa-512x512.png', |
||||
|
sizes: '512x512', |
||||
|
type: 'image/png', |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
}); |
||||
|
return pwaPlugin; |
||||
|
} |
||||
|
return []; |
||||
|
} |
||||
@ -0,0 +1,78 @@ |
|||||
|
/** |
||||
|
* Introduces component library styles on demand. |
||||
|
* https://github.com/anncwb/vite-plugin-style-import
|
||||
|
*/ |
||||
|
import styleImport from 'vite-plugin-style-import'; |
||||
|
|
||||
|
export function configStyleImportPlugin(isBuild: boolean) { |
||||
|
if (!isBuild) { |
||||
|
return []; |
||||
|
} |
||||
|
const styleImportPlugin = styleImport({ |
||||
|
libs: [ |
||||
|
{ |
||||
|
libraryName: 'ant-design-vue', |
||||
|
esModule: true, |
||||
|
resolveStyle: (name) => { |
||||
|
// 这里是无需额外引入样式文件的“子组件”列表
|
||||
|
const ignoreList = [ |
||||
|
'anchor-link', |
||||
|
'sub-menu', |
||||
|
'menu-item', |
||||
|
'menu-item-group', |
||||
|
'breadcrumb-item', |
||||
|
'breadcrumb-separator', |
||||
|
'form-item', |
||||
|
'step', |
||||
|
'select-option', |
||||
|
'select-opt-group', |
||||
|
'card-grid', |
||||
|
'card-meta', |
||||
|
'collapse-panel', |
||||
|
'descriptions-item', |
||||
|
'list-item', |
||||
|
'list-item-meta', |
||||
|
'table-column', |
||||
|
'table-column-group', |
||||
|
'tab-pane', |
||||
|
'tab-content', |
||||
|
'timeline-item', |
||||
|
'tree-node', |
||||
|
'skeleton-input', |
||||
|
'skeleton-avatar', |
||||
|
'skeleton-title', |
||||
|
'skeleton-paragraph', |
||||
|
'skeleton-image', |
||||
|
'skeleton-button', |
||||
|
]; |
||||
|
// 这里是需要额外引入样式的子组件列表
|
||||
|
// 单独引入子组件时需引入组件样式,否则会在打包后导致子组件样式丢失
|
||||
|
const replaceList = { |
||||
|
'typography-text': 'typography', |
||||
|
'typography-title': 'typography', |
||||
|
'typography-paragraph': 'typography', |
||||
|
'typography-link': 'typography', |
||||
|
'dropdown-button': 'dropdown', |
||||
|
'input-password': 'input', |
||||
|
'input-search': 'input', |
||||
|
'input-group': 'input', |
||||
|
'radio-group': 'radio', |
||||
|
'checkbox-group': 'checkbox', |
||||
|
'layout-sider': 'layout', |
||||
|
'layout-content': 'layout', |
||||
|
'layout-footer': 'layout', |
||||
|
'layout-header': 'layout', |
||||
|
'month-picker': 'date-picker', |
||||
|
}; |
||||
|
|
||||
|
return ignoreList.includes(name) |
||||
|
? '' |
||||
|
: replaceList.hasOwnProperty(name) |
||||
|
? `ant-design-vue/es/${replaceList[name]}/style/index` |
||||
|
: `ant-design-vue/es/${name}/style/index`; |
||||
|
}, |
||||
|
}, |
||||
|
], |
||||
|
}); |
||||
|
return styleImportPlugin; |
||||
|
} |
||||
@ -0,0 +1,17 @@ |
|||||
|
/** |
||||
|
* Vite Plugin for fast creating SVG sprites. |
||||
|
* https://github.com/anncwb/vite-plugin-svg-icons
|
||||
|
*/ |
||||
|
|
||||
|
import SvgIconsPlugin from 'vite-plugin-svg-icons'; |
||||
|
import path from 'path'; |
||||
|
|
||||
|
export function configSvgIconsPlugin(isBuild: boolean) { |
||||
|
const svgIconsPlugin = SvgIconsPlugin({ |
||||
|
iconDirs: [path.resolve(process.cwd(), 'src/assets/icons')], |
||||
|
svgoOptions: isBuild, |
||||
|
// default
|
||||
|
symbolId: 'icon-[dir]-[name]', |
||||
|
}); |
||||
|
return svgIconsPlugin; |
||||
|
} |
||||
@ -0,0 +1,89 @@ |
|||||
|
/** |
||||
|
* Vite plugin for website theme color switching |
||||
|
* https://github.com/anncwb/vite-plugin-theme
|
||||
|
*/ |
||||
|
import type { Plugin } from 'vite'; |
||||
|
import path from 'path'; |
||||
|
import { |
||||
|
viteThemePlugin, |
||||
|
antdDarkThemePlugin, |
||||
|
mixLighten, |
||||
|
mixDarken, |
||||
|
tinycolor, |
||||
|
} from 'vite-plugin-theme'; |
||||
|
import { getThemeColors, generateColors } from '../../config/themeConfig'; |
||||
|
import { generateModifyVars } from '../../generate/generateModifyVars'; |
||||
|
|
||||
|
export function configThemePlugin(isBuild: boolean): Plugin[] { |
||||
|
const colors = generateColors({ |
||||
|
mixDarken, |
||||
|
mixLighten, |
||||
|
tinycolor, |
||||
|
}); |
||||
|
const plugin = [ |
||||
|
viteThemePlugin({ |
||||
|
resolveSelector: (s) => { |
||||
|
s = s.trim(); |
||||
|
switch (s) { |
||||
|
case '.ant-steps-item-process .ant-steps-item-icon > .ant-steps-icon': |
||||
|
return '.ant-steps-item-icon > .ant-steps-icon'; |
||||
|
case '.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled)': |
||||
|
case '.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover': |
||||
|
case '.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active': |
||||
|
return s; |
||||
|
case '.ant-steps-item-icon > .ant-steps-icon': |
||||
|
return s; |
||||
|
case '.ant-select-item-option-selected:not(.ant-select-item-option-disabled)': |
||||
|
return s; |
||||
|
default: |
||||
|
if (s.indexOf('.ant-btn') >= -1) { |
||||
|
// 按钮被重新定制过,需要过滤掉class防止覆盖
|
||||
|
return s; |
||||
|
} |
||||
|
} |
||||
|
return s.startsWith('[data-theme') ? s : `[data-theme] ${s}`; |
||||
|
}, |
||||
|
colorVariables: [...getThemeColors(), ...colors], |
||||
|
}), |
||||
|
antdDarkThemePlugin({ |
||||
|
preloadFiles: [ |
||||
|
path.resolve(process.cwd(), 'node_modules/ant-design-vue/dist/antd.less'), |
||||
|
//path.resolve(process.cwd(), 'node_modules/ant-design-vue/dist/antd.dark.less'),
|
||||
|
path.resolve(process.cwd(), 'src/design/index.less'), |
||||
|
], |
||||
|
filter: (id) => (isBuild ? !id.endsWith('antd.less') : true), |
||||
|
// extractCss: false,
|
||||
|
darkModifyVars: { |
||||
|
...generateModifyVars(true), |
||||
|
'text-color': '#c9d1d9', |
||||
|
'primary-1': 'rgb(255 255 255 / 8%)', |
||||
|
'text-color-base': '#c9d1d9', |
||||
|
'component-background': '#151515', |
||||
|
'heading-color': 'rgb(255 255 255 / 65%)', |
||||
|
// black: '#0e1117',
|
||||
|
// #8b949e
|
||||
|
'text-color-secondary': '#8b949e', |
||||
|
'border-color-base': '#303030', |
||||
|
// 'border-color-split': '#30363d',
|
||||
|
'item-active-bg': '#111b26', |
||||
|
'app-content-background': '#1e1e1e', |
||||
|
'tree-node-selected-bg': '#11263c', |
||||
|
|
||||
|
'alert-success-border-color': '#274916', |
||||
|
'alert-success-bg-color': '#162312', |
||||
|
'alert-success-icon-color': '#49aa19', |
||||
|
'alert-info-border-color': '#153450', |
||||
|
'alert-info-bg-color': '#111b26', |
||||
|
'alert-info-icon-color': '#177ddc', |
||||
|
'alert-warning-border-color': '#594214', |
||||
|
'alert-warning-bg-color': '#2b2111', |
||||
|
'alert-warning-icon-color': '#d89614', |
||||
|
'alert-error-border-color': '#58181c', |
||||
|
'alert-error-bg-color': '#2a1215', |
||||
|
'alert-error-icon-color': '#a61d24', |
||||
|
}, |
||||
|
}), |
||||
|
]; |
||||
|
|
||||
|
return plugin as unknown as Plugin[]; |
||||
|
} |
||||
@ -0,0 +1,17 @@ |
|||||
|
/** |
||||
|
* Package file volume analysis |
||||
|
*/ |
||||
|
import visualizer from 'rollup-plugin-visualizer'; |
||||
|
import { isReportMode } from '../../utils'; |
||||
|
|
||||
|
export function configVisualizerConfig() { |
||||
|
if (isReportMode()) { |
||||
|
return visualizer({ |
||||
|
filename: './node_modules/.cache/visualizer/stats.html', |
||||
|
open: true, |
||||
|
gzipSize: true, |
||||
|
brotliSize: true, |
||||
|
}) as Plugin; |
||||
|
} |
||||
|
return []; |
||||
|
} |
||||
@ -0,0 +1,34 @@ |
|||||
|
/** |
||||
|
* Used to parse the .env.development proxy configuration |
||||
|
*/ |
||||
|
import type { ProxyOptions } from 'vite'; |
||||
|
|
||||
|
type ProxyItem = [string, string]; |
||||
|
|
||||
|
type ProxyList = ProxyItem[]; |
||||
|
|
||||
|
type ProxyTargetList = Record<string, ProxyOptions>; |
||||
|
|
||||
|
const httpsRE = /^https:\/\//; |
||||
|
|
||||
|
/** |
||||
|
* Generate proxy |
||||
|
* @param list |
||||
|
*/ |
||||
|
export function createProxy(list: ProxyList = []) { |
||||
|
const ret: ProxyTargetList = {}; |
||||
|
for (const [prefix, target] of list) { |
||||
|
const isHttps = httpsRE.test(target); |
||||
|
|
||||
|
// https://github.com/http-party/node-http-proxy#options
|
||||
|
ret[prefix] = { |
||||
|
target: target, |
||||
|
changeOrigin: true, |
||||
|
ws: true, |
||||
|
rewrite: (path) => path.replace(new RegExp(`^${prefix}`), ''), |
||||
|
// https is require secure=false
|
||||
|
...(isHttps ? { secure: false } : {}), |
||||
|
}; |
||||
|
} |
||||
|
return ret; |
||||
|
} |
||||
@ -0,0 +1,33 @@ |
|||||
|
module.exports = { |
||||
|
ignores: [(commit) => commit.includes('init')], |
||||
|
extends: ['@commitlint/config-conventional'], |
||||
|
rules: { |
||||
|
'body-leading-blank': [2, 'always'], |
||||
|
'footer-leading-blank': [1, 'always'], |
||||
|
'header-max-length': [2, 'always', 108], |
||||
|
'subject-empty': [2, 'never'], |
||||
|
'type-empty': [2, 'never'], |
||||
|
'subject-case': [0], |
||||
|
'type-enum': [ |
||||
|
2, |
||||
|
'always', |
||||
|
[ |
||||
|
'feat', |
||||
|
'fix', |
||||
|
'perf', |
||||
|
'style', |
||||
|
'docs', |
||||
|
'test', |
||||
|
'refactor', |
||||
|
'build', |
||||
|
'ci', |
||||
|
'chore', |
||||
|
'revert', |
||||
|
'wip', |
||||
|
'workflow', |
||||
|
'types', |
||||
|
'release', |
||||
|
], |
||||
|
], |
||||
|
}, |
||||
|
}; |
||||
@ -0,0 +1,15 @@ |
|||||
|
version: '3.4' |
||||
|
|
||||
|
services: |
||||
|
vue-vben-client: |
||||
|
build: |
||||
|
context: . |
||||
|
restart: always |
||||
|
ports: |
||||
|
- "40080:80" |
||||
|
|
||||
|
volumes: |
||||
|
dbdata: |
||||
|
|
||||
|
networks: |
||||
|
linyun-abp: |
||||
@ -0,0 +1,87 @@ |
|||||
|
server { |
||||
|
listen 80; |
||||
|
server_name localhost; |
||||
|
|
||||
|
proxy_set_header Host $host; |
||||
|
proxy_set_header X-Forwarded-For $remote_addr; |
||||
|
proxy_set_header X-Forwarded-Host $server_name; |
||||
|
proxy_set_header X-Real-IP $remote_addr; |
||||
|
|
||||
|
#charset koi8-r; |
||||
|
#access_log /var/log/nginx/host.access.log main; |
||||
|
|
||||
|
#location / { |
||||
|
# root /usr/share/nginx/html; |
||||
|
# index index.html index.htm; |
||||
|
#} |
||||
|
|
||||
|
location / { |
||||
|
root /usr/share/nginx/html; |
||||
|
index index.html index.htm; |
||||
|
# 此处主要增加该配置,解决界面刷新报 404 的问题 |
||||
|
# 参考博客: https://blog.csdn.net/qq_27985607/article/details/86608392 |
||||
|
try_files $uri $uri/ /index.html =404; |
||||
|
} |
||||
|
|
||||
|
location /connect/ { |
||||
|
proxy_pass http://127.0.0.1:44385/; |
||||
|
proxy_set_header Host 127.0.0.1:44385; |
||||
|
} |
||||
|
|
||||
|
location ~ /api/files/static/ { |
||||
|
# 当path参数存在子路径时 不能让nginx解码 / 符号 |
||||
|
proxy_pass http://127.0.0.1:30000; |
||||
|
} |
||||
|
|
||||
|
location /api/ { |
||||
|
proxy_pass http://127.0.0.1:30000/; |
||||
|
proxy_set_header Host $host; |
||||
|
proxy_set_header X-Real-IP $remote_addr; |
||||
|
proxy_set_header REMOTE-HOST $remote_addr; |
||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; |
||||
|
} |
||||
|
|
||||
|
location /signalr-hubs/ { |
||||
|
proxy_pass http://127.0.0.1:30000/; |
||||
|
proxy_http_version 1.1; |
||||
|
proxy_set_header Upgrade $http_upgrade; |
||||
|
proxy_set_header Connection "upgrade"; |
||||
|
proxy_set_header Host $host; |
||||
|
proxy_set_header X-Real-IP $remote_addr; |
||||
|
proxy_set_header REMOTE-HOST $remote_addr; |
||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
#error_page 404 /404.html; |
||||
|
|
||||
|
# redirect server error pages to the static page /50x.html |
||||
|
# |
||||
|
error_page 500 502 503 504 /50x.html; |
||||
|
location = /50x.html { |
||||
|
root /usr/share/nginx/html; |
||||
|
} |
||||
|
|
||||
|
# proxy the PHP scripts to Apache listening on 127.0.0.1:80 |
||||
|
# |
||||
|
#location ~ \.php$ { |
||||
|
# proxy_pass http://127.0.0.1; |
||||
|
#} |
||||
|
|
||||
|
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 |
||||
|
# |
||||
|
#location ~ \.php$ { |
||||
|
# root html; |
||||
|
# fastcgi_pass 127.0.0.1:9000; |
||||
|
# fastcgi_index index.php; |
||||
|
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; |
||||
|
# include fastcgi_params; |
||||
|
#} |
||||
|
|
||||
|
# deny access to .htaccess files, if Apache's document root |
||||
|
# concurs with nginx's one |
||||
|
# |
||||
|
#location ~ /\.ht { |
||||
|
# deny all; |
||||
|
#} |
||||
|
} |
||||
@ -0,0 +1,40 @@ |
|||||
|
|
||||
|
user root; |
||||
|
worker_processes 1; |
||||
|
|
||||
|
error_log /var/log/nginx/error.log warn; |
||||
|
pid /var/run/nginx.pid; |
||||
|
|
||||
|
|
||||
|
events { |
||||
|
worker_connections 1024; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
http { |
||||
|
include /etc/nginx/mime.types; |
||||
|
server_names_hash_bucket_size 512; |
||||
|
default_type application/octet-stream; |
||||
|
#abp租户头需要携带下划线 |
||||
|
underscores_in_headers on; |
||||
|
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' |
||||
|
'$status $body_bytes_sent "$http_referer" ' |
||||
|
'"$http_user_agent" "$http_x_forwarded_for"'; |
||||
|
|
||||
|
access_log /var/log/nginx/access.log main; |
||||
|
|
||||
|
sendfile on; |
||||
|
tcp_nopush on; # 激活 TCP_CORK socket 选择 |
||||
|
tcp_nodelay on; #数据在传输的过程中不进缓存 |
||||
|
|
||||
|
client_max_body_size 50m; # 上传文件需要调整请求体大小 |
||||
|
client_header_timeout 1m; |
||||
|
client_body_timeout 1m; |
||||
|
proxy_connect_timeout 60s; |
||||
|
proxy_read_timeout 1m; |
||||
|
proxy_send_timeout 1m; |
||||
|
|
||||
|
#gzip on; |
||||
|
|
||||
|
include /etc/nginx/conf.d/*.conf; |
||||
|
} |
||||
|
Before Width: | Height: | Size: 134 KiB After Width: | Height: | Size: 134 KiB |
|
Before Width: | Height: | Size: 130 KiB After Width: | Height: | Size: 130 KiB |
|
Before Width: | Height: | Size: 131 KiB After Width: | Height: | Size: 131 KiB |
|
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 77 KiB |
|
Before Width: | Height: | Size: 91 KiB After Width: | Height: | Size: 91 KiB |
|
Before Width: | Height: | Size: 132 KiB After Width: | Height: | Size: 132 KiB |
|
Before Width: | Height: | Size: 102 KiB After Width: | Height: | Size: 102 KiB |
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 44 KiB |
|
Before Width: | Height: | Size: 76 KiB After Width: | Height: | Size: 76 KiB |
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
@ -0,0 +1,166 @@ |
|||||
|
<!DOCTYPE html> |
||||
|
<html lang="en" id="htmlRoot"> |
||||
|
<head> |
||||
|
<meta charset="UTF-8" /> |
||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> |
||||
|
<meta name="renderer" content="webkit" /> |
||||
|
<meta |
||||
|
name="viewport" |
||||
|
content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=0" |
||||
|
/> |
||||
|
|
||||
|
<title><%= title %></title> |
||||
|
<link rel="icon" href="/favicon.ico" /> |
||||
|
</head> |
||||
|
<body> |
||||
|
<script> |
||||
|
(() => { |
||||
|
var htmlRoot = document.getElementById('htmlRoot'); |
||||
|
var theme = window.localStorage.getItem('__APP__DARK__MODE__'); |
||||
|
if (htmlRoot && theme) { |
||||
|
htmlRoot.setAttribute('data-theme', theme); |
||||
|
theme = htmlRoot = null; |
||||
|
} |
||||
|
})(); |
||||
|
</script> |
||||
|
<div id="app"> |
||||
|
<style> |
||||
|
html[data-theme='dark'] .app-loading { |
||||
|
background-color: #2c344a; |
||||
|
} |
||||
|
|
||||
|
html[data-theme='dark'] .app-loading .app-loading-title { |
||||
|
color: rgba(255, 255, 255, 0.85); |
||||
|
} |
||||
|
|
||||
|
.app-loading { |
||||
|
display: flex; |
||||
|
width: 100%; |
||||
|
height: 100%; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
flex-direction: column; |
||||
|
background-color: #f4f7f9; |
||||
|
} |
||||
|
|
||||
|
.app-loading .app-loading-wrap { |
||||
|
position: absolute; |
||||
|
top: 50%; |
||||
|
left: 50%; |
||||
|
display: flex; |
||||
|
-webkit-transform: translate3d(-50%, -50%, 0); |
||||
|
transform: translate3d(-50%, -50%, 0); |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
flex-direction: column; |
||||
|
} |
||||
|
|
||||
|
.app-loading .dots { |
||||
|
display: flex; |
||||
|
padding: 98px; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
} |
||||
|
|
||||
|
.app-loading .app-loading-title { |
||||
|
display: flex; |
||||
|
margin-top: 30px; |
||||
|
font-size: 30px; |
||||
|
color: rgba(0, 0, 0, 0.85); |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
} |
||||
|
|
||||
|
.app-loading .app-loading-logo { |
||||
|
display: block; |
||||
|
width: 90px; |
||||
|
margin: 0 auto; |
||||
|
margin-bottom: 20px; |
||||
|
} |
||||
|
|
||||
|
.dot { |
||||
|
position: relative; |
||||
|
display: inline-block; |
||||
|
width: 48px; |
||||
|
height: 48px; |
||||
|
margin-top: 30px; |
||||
|
font-size: 32px; |
||||
|
transform: rotate(45deg); |
||||
|
box-sizing: border-box; |
||||
|
animation: antRotate 1.2s infinite linear; |
||||
|
} |
||||
|
|
||||
|
.dot i { |
||||
|
position: absolute; |
||||
|
display: block; |
||||
|
width: 20px; |
||||
|
height: 20px; |
||||
|
background-color: #0065cc; |
||||
|
border-radius: 100%; |
||||
|
opacity: 0.3; |
||||
|
transform: scale(0.75); |
||||
|
animation: antSpinMove 1s infinite linear alternate; |
||||
|
transform-origin: 50% 50%; |
||||
|
} |
||||
|
|
||||
|
.dot i:nth-child(1) { |
||||
|
top: 0; |
||||
|
left: 0; |
||||
|
} |
||||
|
|
||||
|
.dot i:nth-child(2) { |
||||
|
top: 0; |
||||
|
right: 0; |
||||
|
-webkit-animation-delay: 0.4s; |
||||
|
animation-delay: 0.4s; |
||||
|
} |
||||
|
|
||||
|
.dot i:nth-child(3) { |
||||
|
right: 0; |
||||
|
bottom: 0; |
||||
|
-webkit-animation-delay: 0.8s; |
||||
|
animation-delay: 0.8s; |
||||
|
} |
||||
|
|
||||
|
.dot i:nth-child(4) { |
||||
|
bottom: 0; |
||||
|
left: 0; |
||||
|
-webkit-animation-delay: 1.2s; |
||||
|
animation-delay: 1.2s; |
||||
|
} |
||||
|
@keyframes antRotate { |
||||
|
to { |
||||
|
-webkit-transform: rotate(405deg); |
||||
|
transform: rotate(405deg); |
||||
|
} |
||||
|
} |
||||
|
@-webkit-keyframes antRotate { |
||||
|
to { |
||||
|
-webkit-transform: rotate(405deg); |
||||
|
transform: rotate(405deg); |
||||
|
} |
||||
|
} |
||||
|
@keyframes antSpinMove { |
||||
|
to { |
||||
|
opacity: 1; |
||||
|
} |
||||
|
} |
||||
|
@-webkit-keyframes antSpinMove { |
||||
|
to { |
||||
|
opacity: 1; |
||||
|
} |
||||
|
} |
||||
|
</style> |
||||
|
<div class="app-loading"> |
||||
|
<div class="app-loading-wrap"> |
||||
|
<img src="/resource/img/logo.png" class="app-loading-logo" alt="Logo" /> |
||||
|
<div class="app-loading-dots"> |
||||
|
<span class="dot dot-spin"><i></i><i></i><i></i><i></i></span> |
||||
|
</div> |
||||
|
<div class="app-loading-title"><%= title %></div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<script type="module" src="/src/main.ts"></script> |
||||
|
</body> |
||||
|
</html> |
||||
@ -0,0 +1,36 @@ |
|||||
|
export default { |
||||
|
preset: 'ts-jest', |
||||
|
roots: ['<rootDir>/tests/'], |
||||
|
clearMocks: true, |
||||
|
moduleDirectories: ['node_modules', 'src'], |
||||
|
moduleFileExtensions: ['js', 'ts', 'vue', 'tsx', 'jsx', 'json', 'node'], |
||||
|
modulePaths: ['<rootDir>/src', '<rootDir>/node_modules'], |
||||
|
testMatch: [ |
||||
|
'**/tests/**/*.[jt]s?(x)', |
||||
|
'**/?(*.)+(spec|test).[tj]s?(x)', |
||||
|
'(/__tests__/.*|(\\.|/)(test|spec))\\.(js|ts)$', |
||||
|
], |
||||
|
testPathIgnorePatterns: [ |
||||
|
'<rootDir>/tests/server/', |
||||
|
'<rootDir>/tests/__mocks__/', |
||||
|
'/node_modules/', |
||||
|
], |
||||
|
transform: { |
||||
|
'^.+\\.tsx?$': 'ts-jest', |
||||
|
}, |
||||
|
transformIgnorePatterns: ['<rootDir>/tests/__mocks__/', '/node_modules/'], |
||||
|
// A map from regular expressions to module names that allow to stub out resources with a single module
|
||||
|
moduleNameMapper: { |
||||
|
'\\.(vs|fs|vert|frag|glsl|jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$': |
||||
|
'<rootDir>/tests/__mocks__/fileMock.ts', |
||||
|
'\\.(sass|s?css|less)$': '<rootDir>/tests/__mocks__/styleMock.ts', |
||||
|
'\\?worker$': '<rootDir>/tests/__mocks__/workerMock.ts', |
||||
|
'^/@/(.*)$': '<rootDir>/src/$1', |
||||
|
}, |
||||
|
testEnvironment: 'jsdom', |
||||
|
verbose: true, |
||||
|
collectCoverage: false, |
||||
|
coverageDirectory: 'coverage', |
||||
|
collectCoverageFrom: ['src/**/*.{js,ts,vue}'], |
||||
|
coveragePathIgnorePatterns: ['^.+\\.d\\.ts$'], |
||||
|
}; |
||||
@ -0,0 +1,18 @@ |
|||||
|
import { createProdMockServer } from 'vite-plugin-mock/es/createProdMockServer'; |
||||
|
|
||||
|
const modules = import.meta.globEager('./**/*.ts'); |
||||
|
|
||||
|
const mockModules: any[] = []; |
||||
|
Object.keys(modules).forEach((key) => { |
||||
|
if (key.includes('/_')) { |
||||
|
return; |
||||
|
} |
||||
|
mockModules.push(...modules[key].default); |
||||
|
}); |
||||
|
|
||||
|
/** |
||||
|
* Used in a production environment. Need to manually import all modules |
||||
|
*/ |
||||
|
export function setupProdMockServer() { |
||||
|
createProdMockServer(mockModules); |
||||
|
} |
||||
@ -0,0 +1,60 @@ |
|||||
|
// Interface data format used to return a unified format
|
||||
|
|
||||
|
export function resultSuccess<T = Recordable>(result: T, { message = 'ok' } = {}) { |
||||
|
return { |
||||
|
code: 0, |
||||
|
result, |
||||
|
message, |
||||
|
type: 'success', |
||||
|
}; |
||||
|
} |
||||
|
|
||||
|
export function resultPageSuccess<T = any>( |
||||
|
page: number, |
||||
|
pageSize: number, |
||||
|
list: T[], |
||||
|
{ message = 'ok' } = {}, |
||||
|
) { |
||||
|
const pageData = pagination(page, pageSize, list); |
||||
|
|
||||
|
return { |
||||
|
...resultSuccess({ |
||||
|
items: pageData, |
||||
|
total: list.length, |
||||
|
}), |
||||
|
message, |
||||
|
}; |
||||
|
} |
||||
|
|
||||
|
export function resultError(message = 'Request failed', { code = -1, result = null } = {}) { |
||||
|
return { |
||||
|
code, |
||||
|
result, |
||||
|
message, |
||||
|
type: 'error', |
||||
|
}; |
||||
|
} |
||||
|
|
||||
|
export function pagination<T = any>(pageNo: number, pageSize: number, array: T[]): T[] { |
||||
|
const offset = (pageNo - 1) * Number(pageSize); |
||||
|
const ret = |
||||
|
offset + Number(pageSize) >= array.length |
||||
|
? array.slice(offset, array.length) |
||||
|
: array.slice(offset, offset + Number(pageSize)); |
||||
|
return ret; |
||||
|
} |
||||
|
|
||||
|
export interface requestParams { |
||||
|
method: string; |
||||
|
body: any; |
||||
|
headers?: { authorization?: string }; |
||||
|
query: any; |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @description 本函数用于从request数据中获取token,请根据项目的实际情况修改 |
||||
|
* |
||||
|
*/ |
||||
|
export function getRequestToken({ headers }: requestParams): string | undefined { |
||||
|
return headers?.authorization; |
||||
|
} |
||||
@ -0,0 +1,71 @@ |
|||||
|
import { MockMethod } from 'vite-plugin-mock'; |
||||
|
import { resultSuccess, resultError } from '../_util'; |
||||
|
import { ResultEnum } from '../../src/enums/httpEnum'; |
||||
|
|
||||
|
const userInfo = { |
||||
|
name: 'Vben', |
||||
|
userid: '00000001', |
||||
|
email: 'test@gmail.com', |
||||
|
signature: '海纳百川,有容乃大', |
||||
|
introduction: '微笑着,努力着,欣赏着', |
||||
|
title: '交互专家', |
||||
|
group: '某某某事业群-某某平台部-某某技术部-UED', |
||||
|
tags: [ |
||||
|
{ |
||||
|
key: '0', |
||||
|
label: '很有想法的', |
||||
|
}, |
||||
|
{ |
||||
|
key: '1', |
||||
|
label: '专注设计', |
||||
|
}, |
||||
|
{ |
||||
|
key: '2', |
||||
|
label: '辣~', |
||||
|
}, |
||||
|
{ |
||||
|
key: '3', |
||||
|
label: '大长腿', |
||||
|
}, |
||||
|
{ |
||||
|
key: '4', |
||||
|
label: '川妹子', |
||||
|
}, |
||||
|
{ |
||||
|
key: '5', |
||||
|
label: '海纳百川', |
||||
|
}, |
||||
|
], |
||||
|
notifyCount: 12, |
||||
|
unreadCount: 11, |
||||
|
country: 'China', |
||||
|
address: 'Xiamen City 77', |
||||
|
phone: '0592-268888888', |
||||
|
}; |
||||
|
|
||||
|
export default [ |
||||
|
{ |
||||
|
url: '/basic-api/account/getAccountInfo', |
||||
|
timeout: 1000, |
||||
|
method: 'get', |
||||
|
response: () => { |
||||
|
return resultSuccess(userInfo); |
||||
|
}, |
||||
|
}, |
||||
|
{ |
||||
|
url: '/basic-api/user/sessionTimeout', |
||||
|
method: 'post', |
||||
|
statusCode: 401, |
||||
|
response: () => { |
||||
|
return resultError(); |
||||
|
}, |
||||
|
}, |
||||
|
{ |
||||
|
url: '/basic-api/user/tokenExpired', |
||||
|
method: 'post', |
||||
|
statusCode: 200, |
||||
|
response: () => { |
||||
|
return resultError('Token Expired!', { code: ResultEnum.TIMEOUT as number }); |
||||
|
}, |
||||
|
}, |
||||
|
] as MockMethod[]; |
||||
@ -0,0 +1,270 @@ |
|||||
|
import { resultSuccess, resultError, getRequestToken, requestParams } from '../_util'; |
||||
|
import { MockMethod } from 'vite-plugin-mock'; |
||||
|
import { createFakeUserList } from './user'; |
||||
|
|
||||
|
// single
|
||||
|
const dashboardRoute = { |
||||
|
path: '/dashboard', |
||||
|
name: 'Dashboard', |
||||
|
component: 'LAYOUT', |
||||
|
redirect: '/dashboard/analysis', |
||||
|
meta: { |
||||
|
title: 'routes.dashboard.dashboard', |
||||
|
hideChildrenInMenu: true, |
||||
|
icon: 'bx:bx-home', |
||||
|
}, |
||||
|
children: [ |
||||
|
{ |
||||
|
path: 'analysis', |
||||
|
name: 'Analysis', |
||||
|
component: '/dashboard/analysis/index', |
||||
|
meta: { |
||||
|
hideMenu: true, |
||||
|
hideBreadcrumb: true, |
||||
|
title: 'routes.dashboard.analysis', |
||||
|
currentActiveMenu: '/dashboard', |
||||
|
icon: 'bx:bx-home', |
||||
|
}, |
||||
|
}, |
||||
|
{ |
||||
|
path: 'workbench', |
||||
|
name: 'Workbench', |
||||
|
component: '/dashboard/workbench/index', |
||||
|
meta: { |
||||
|
hideMenu: true, |
||||
|
hideBreadcrumb: true, |
||||
|
title: 'routes.dashboard.workbench', |
||||
|
currentActiveMenu: '/dashboard', |
||||
|
icon: 'bx:bx-home', |
||||
|
}, |
||||
|
}, |
||||
|
], |
||||
|
}; |
||||
|
|
||||
|
const backRoute = { |
||||
|
path: 'back', |
||||
|
name: 'PermissionBackDemo', |
||||
|
meta: { |
||||
|
title: 'routes.demo.permission.back', |
||||
|
}, |
||||
|
|
||||
|
children: [ |
||||
|
{ |
||||
|
path: 'page', |
||||
|
name: 'BackAuthPage', |
||||
|
component: '/demo/permission/back/index', |
||||
|
meta: { |
||||
|
title: 'routes.demo.permission.backPage', |
||||
|
}, |
||||
|
}, |
||||
|
{ |
||||
|
path: 'btn', |
||||
|
name: 'BackAuthBtn', |
||||
|
component: '/demo/permission/back/Btn', |
||||
|
meta: { |
||||
|
title: 'routes.demo.permission.backBtn', |
||||
|
}, |
||||
|
}, |
||||
|
], |
||||
|
}; |
||||
|
|
||||
|
const authRoute = { |
||||
|
path: '/permission', |
||||
|
name: 'Permission', |
||||
|
component: 'LAYOUT', |
||||
|
redirect: '/permission/front/page', |
||||
|
meta: { |
||||
|
icon: 'carbon:user-role', |
||||
|
title: 'routes.demo.permission.permission', |
||||
|
}, |
||||
|
children: [backRoute], |
||||
|
}; |
||||
|
|
||||
|
const levelRoute = { |
||||
|
path: '/level', |
||||
|
name: 'Level', |
||||
|
component: 'LAYOUT', |
||||
|
redirect: '/level/menu1/menu1-1', |
||||
|
meta: { |
||||
|
icon: 'carbon:user-role', |
||||
|
title: 'routes.demo.level.level', |
||||
|
}, |
||||
|
|
||||
|
children: [ |
||||
|
{ |
||||
|
path: 'menu1', |
||||
|
name: 'Menu1Demo', |
||||
|
meta: { |
||||
|
title: 'Menu1', |
||||
|
}, |
||||
|
children: [ |
||||
|
{ |
||||
|
path: 'menu1-1', |
||||
|
name: 'Menu11Demo', |
||||
|
meta: { |
||||
|
title: 'Menu1-1', |
||||
|
}, |
||||
|
children: [ |
||||
|
{ |
||||
|
path: 'menu1-1-1', |
||||
|
name: 'Menu111Demo', |
||||
|
component: '/demo/level/Menu111', |
||||
|
meta: { |
||||
|
title: 'Menu111', |
||||
|
}, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
{ |
||||
|
path: 'menu1-2', |
||||
|
name: 'Menu12Demo', |
||||
|
component: '/demo/level/Menu12', |
||||
|
meta: { |
||||
|
title: 'Menu1-2', |
||||
|
}, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
{ |
||||
|
path: 'menu2', |
||||
|
name: 'Menu2Demo', |
||||
|
component: '/demo/level/Menu2', |
||||
|
meta: { |
||||
|
title: 'Menu2', |
||||
|
}, |
||||
|
}, |
||||
|
], |
||||
|
}; |
||||
|
|
||||
|
const sysRoute = { |
||||
|
path: '/system', |
||||
|
name: 'System', |
||||
|
component: 'LAYOUT', |
||||
|
redirect: '/system/account', |
||||
|
meta: { |
||||
|
icon: 'ion:settings-outline', |
||||
|
title: 'routes.demo.system.moduleName', |
||||
|
}, |
||||
|
children: [ |
||||
|
{ |
||||
|
path: 'account', |
||||
|
name: 'AccountManagement', |
||||
|
meta: { |
||||
|
title: 'routes.demo.system.account', |
||||
|
ignoreKeepAlive: true, |
||||
|
}, |
||||
|
component: '/demo/system/account/index', |
||||
|
}, |
||||
|
{ |
||||
|
path: 'account_detail/:id', |
||||
|
name: 'AccountDetail', |
||||
|
meta: { |
||||
|
hideMenu: true, |
||||
|
title: 'routes.demo.system.account_detail', |
||||
|
ignoreKeepAlive: true, |
||||
|
showMenu: false, |
||||
|
currentActiveMenu: '/system/account', |
||||
|
}, |
||||
|
component: '/demo/system/account/AccountDetail', |
||||
|
}, |
||||
|
{ |
||||
|
path: 'role', |
||||
|
name: 'RoleManagement', |
||||
|
meta: { |
||||
|
title: 'routes.demo.system.role', |
||||
|
ignoreKeepAlive: true, |
||||
|
}, |
||||
|
component: '/demo/system/role/index', |
||||
|
}, |
||||
|
|
||||
|
{ |
||||
|
path: 'menu', |
||||
|
name: 'MenuManagement', |
||||
|
meta: { |
||||
|
title: 'routes.demo.system.menu', |
||||
|
ignoreKeepAlive: true, |
||||
|
}, |
||||
|
component: '/demo/system/menu/index', |
||||
|
}, |
||||
|
{ |
||||
|
path: 'dept', |
||||
|
name: 'DeptManagement', |
||||
|
meta: { |
||||
|
title: 'routes.demo.system.dept', |
||||
|
ignoreKeepAlive: true, |
||||
|
}, |
||||
|
component: '/demo/system/dept/index', |
||||
|
}, |
||||
|
{ |
||||
|
path: 'changePassword', |
||||
|
name: 'ChangePassword', |
||||
|
meta: { |
||||
|
title: 'routes.demo.system.password', |
||||
|
ignoreKeepAlive: true, |
||||
|
}, |
||||
|
component: '/demo/system/password/index', |
||||
|
}, |
||||
|
], |
||||
|
}; |
||||
|
|
||||
|
const linkRoute = { |
||||
|
path: '/link', |
||||
|
name: 'Link', |
||||
|
component: 'LAYOUT', |
||||
|
meta: { |
||||
|
icon: 'ion:tv-outline', |
||||
|
title: 'routes.demo.iframe.frame', |
||||
|
}, |
||||
|
children: [ |
||||
|
{ |
||||
|
path: 'doc', |
||||
|
name: 'Doc', |
||||
|
meta: { |
||||
|
title: 'routes.demo.iframe.doc', |
||||
|
frameSrc: 'https://vvbin.cn/doc-next/', |
||||
|
}, |
||||
|
}, |
||||
|
{ |
||||
|
path: 'https://vvbin.cn/doc-next/', |
||||
|
name: 'DocExternal', |
||||
|
component: 'LAYOUT', |
||||
|
meta: { |
||||
|
title: 'routes.demo.iframe.docExternal', |
||||
|
}, |
||||
|
}, |
||||
|
], |
||||
|
}; |
||||
|
|
||||
|
export default [ |
||||
|
{ |
||||
|
url: '/basic-api/getMenuList', |
||||
|
timeout: 1000, |
||||
|
method: 'get', |
||||
|
response: (request: requestParams) => { |
||||
|
const token = getRequestToken(request); |
||||
|
if (!token) { |
||||
|
return resultError('Invalid token!'); |
||||
|
} |
||||
|
const checkUser = createFakeUserList().find((item) => item.token === token); |
||||
|
if (!checkUser) { |
||||
|
return resultError('Invalid user token!'); |
||||
|
} |
||||
|
const id = checkUser.userId; |
||||
|
let menu: Object[]; |
||||
|
switch (id) { |
||||
|
case '1': |
||||
|
dashboardRoute.redirect = dashboardRoute.path + '/' + dashboardRoute.children[0].path; |
||||
|
menu = [dashboardRoute, authRoute, levelRoute, sysRoute, linkRoute]; |
||||
|
break; |
||||
|
case '2': |
||||
|
dashboardRoute.redirect = dashboardRoute.path + '/' + dashboardRoute.children[1].path; |
||||
|
menu = [dashboardRoute, authRoute, levelRoute, linkRoute]; |
||||
|
break; |
||||
|
default: |
||||
|
menu = []; |
||||
|
} |
||||
|
|
||||
|
return resultSuccess(menu); |
||||
|
}, |
||||
|
}, |
||||
|
] as MockMethod[]; |
||||
@ -0,0 +1,114 @@ |
|||||
|
import { MockMethod } from 'vite-plugin-mock'; |
||||
|
import { resultError, resultSuccess, getRequestToken, requestParams } from '../_util'; |
||||
|
|
||||
|
export function createFakeUserList() { |
||||
|
return [ |
||||
|
{ |
||||
|
userId: '1', |
||||
|
username: 'vben', |
||||
|
realName: 'Vben Admin', |
||||
|
avatar: 'https://q1.qlogo.cn/g?b=qq&nk=190848757&s=640', |
||||
|
desc: 'manager', |
||||
|
password: '123456', |
||||
|
token: 'fakeToken1', |
||||
|
homePath: '/dashboard/analysis', |
||||
|
roles: [ |
||||
|
{ |
||||
|
roleName: 'Super Admin', |
||||
|
value: 'super', |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
{ |
||||
|
userId: '2', |
||||
|
username: 'test', |
||||
|
password: '123456', |
||||
|
realName: 'test user', |
||||
|
avatar: 'https://q1.qlogo.cn/g?b=qq&nk=339449197&s=640', |
||||
|
desc: 'tester', |
||||
|
token: 'fakeToken2', |
||||
|
homePath: '/dashboard/workbench', |
||||
|
roles: [ |
||||
|
{ |
||||
|
roleName: 'Tester', |
||||
|
value: 'test', |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
]; |
||||
|
} |
||||
|
|
||||
|
const fakeCodeList: any = { |
||||
|
'1': ['1000', '3000', '5000'], |
||||
|
|
||||
|
'2': ['2000', '4000', '6000'], |
||||
|
}; |
||||
|
export default [ |
||||
|
// mock user login
|
||||
|
{ |
||||
|
url: '/basic-api/login', |
||||
|
timeout: 200, |
||||
|
method: 'post', |
||||
|
response: ({ body }) => { |
||||
|
const { username, password } = body; |
||||
|
const checkUser = createFakeUserList().find( |
||||
|
(item) => item.username === username && password === item.password, |
||||
|
); |
||||
|
if (!checkUser) { |
||||
|
return resultError('Incorrect account or password!'); |
||||
|
} |
||||
|
const { userId, username: _username, token, realName, desc, roles } = checkUser; |
||||
|
return resultSuccess({ |
||||
|
roles, |
||||
|
userId, |
||||
|
username: _username, |
||||
|
token, |
||||
|
realName, |
||||
|
desc, |
||||
|
}); |
||||
|
}, |
||||
|
}, |
||||
|
{ |
||||
|
url: '/basic-api/getUserInfo', |
||||
|
method: 'get', |
||||
|
response: (request: requestParams) => { |
||||
|
const token = getRequestToken(request); |
||||
|
if (!token) return resultError('Invalid token'); |
||||
|
const checkUser = createFakeUserList().find((item) => item.token === token); |
||||
|
if (!checkUser) { |
||||
|
return resultError('The corresponding user information was not obtained!'); |
||||
|
} |
||||
|
return resultSuccess(checkUser); |
||||
|
}, |
||||
|
}, |
||||
|
{ |
||||
|
url: '/basic-api/getPermCode', |
||||
|
timeout: 200, |
||||
|
method: 'get', |
||||
|
response: (request: requestParams) => { |
||||
|
const token = getRequestToken(request); |
||||
|
if (!token) return resultError('Invalid token'); |
||||
|
const checkUser = createFakeUserList().find((item) => item.token === token); |
||||
|
if (!checkUser) { |
||||
|
return resultError('Invalid token!'); |
||||
|
} |
||||
|
const codeList = fakeCodeList[checkUser.userId]; |
||||
|
|
||||
|
return resultSuccess(codeList); |
||||
|
}, |
||||
|
}, |
||||
|
{ |
||||
|
url: '/basic-api/logout', |
||||
|
timeout: 200, |
||||
|
method: 'get', |
||||
|
response: (request: requestParams) => { |
||||
|
const token = getRequestToken(request); |
||||
|
if (!token) return resultError('Invalid token'); |
||||
|
const checkUser = createFakeUserList().find((item) => item.token === token); |
||||
|
if (!checkUser) { |
||||
|
return resultError('Invalid token!'); |
||||
|
} |
||||
|
return resultSuccess(undefined, { message: 'Token has been destroyed' }); |
||||
|
}, |
||||
|
}, |
||||
|
] as MockMethod[]; |
||||
@ -0,0 +1,159 @@ |
|||||
|
{ |
||||
|
"name": "vben-admin", |
||||
|
"version": "2.8.0", |
||||
|
"author": { |
||||
|
"name": "vben", |
||||
|
"email": "anncwb@126.com", |
||||
|
"url": "https://github.com/anncwb" |
||||
|
}, |
||||
|
"scripts": { |
||||
|
"bootstrap": "yarn install", |
||||
|
"serve": "npm run dev", |
||||
|
"dev": "vite", |
||||
|
"build": "cross-env NODE_ENV=production vite build && esno ./build/script/postBuild.ts", |
||||
|
"build:test": "cross-env vite build --mode test && esno ./build/script/postBuild.ts", |
||||
|
"build:no-cache": "yarn clean:cache && npm run build", |
||||
|
"report": "cross-env REPORT=true npm run build", |
||||
|
"type:check": "vue-tsc --noEmit --skipLibCheck", |
||||
|
"preview": "npm run build && vite preview", |
||||
|
"preview:dist": "vite preview", |
||||
|
"log": "conventional-changelog -p angular -i CHANGELOG.md -s", |
||||
|
"clean:cache": "rimraf node_modules/.cache/ && rimraf node_modules/.vite", |
||||
|
"clean:lib": "rimraf node_modules", |
||||
|
"lint:eslint": "eslint --cache --max-warnings 0 \"{src,mock}/**/*.{vue,ts,tsx}\" --fix", |
||||
|
"lint:prettier": "prettier --write \"src/**/*.{js,json,tsx,css,less,scss,vue,html,md}\"", |
||||
|
"lint:stylelint": "stylelint --cache --fix \"**/*.{vue,less,postcss,css,scss}\" --cache --cache-location node_modules/.cache/stylelint/", |
||||
|
"lint:lint-staged": "lint-staged -c ./.husky/lintstagedrc.js", |
||||
|
"test:unit": "jest", |
||||
|
"test:unit-coverage": "jest --coverage", |
||||
|
"test:gzip": "npx http-server dist --cors --gzip -c-1", |
||||
|
"test:br": "npx http-server dist --cors --brotli -c-1", |
||||
|
"reinstall": "rimraf yarn.lock && rimraf package.lock.json && rimraf node_modules && npm run bootstrap", |
||||
|
"prepare": "husky install", |
||||
|
"gen:icon": "esno ./build/generate/icon/index.ts" |
||||
|
}, |
||||
|
"dependencies": { |
||||
|
"@ant-design/colors": "^6.0.0", |
||||
|
"@ant-design/icons-vue": "^6.0.1", |
||||
|
"@iconify/iconify": "^2.0.4", |
||||
|
"@microsoft/signalr": "^5.0.11", |
||||
|
"@vueuse/core": "^6.7.4", |
||||
|
"@vueuse/shared": "^6.7.4", |
||||
|
"@zxcvbn-ts/core": "^1.0.0-beta.0", |
||||
|
"ant-design-vue": "2.2.8", |
||||
|
"axios": "^0.24.0", |
||||
|
"codemirror": "^5.62.2", |
||||
|
"cropperjs": "^1.5.12", |
||||
|
"crypto-js": "^4.1.1", |
||||
|
"echarts": "^5.2.2", |
||||
|
"lodash-es": "^4.17.21", |
||||
|
"mockjs": "^1.1.0", |
||||
|
"moment": "^2.29.1", |
||||
|
"nprogress": "^0.2.0", |
||||
|
"oidc-client": "^1.11.5", |
||||
|
"path-to-regexp": "^6.2.0", |
||||
|
"pinia": "2.0.0", |
||||
|
"qrcode": "^1.4.4", |
||||
|
"qs": "^6.10.1", |
||||
|
"resize-observer-polyfill": "^1.5.1", |
||||
|
"simple-uploader.js": "^0.5.6", |
||||
|
"sortablejs": "^1.14.0", |
||||
|
"vue": "^3.2.21", |
||||
|
"vue-i18n": "^9.1.9", |
||||
|
"vue-json-pretty": "^1.8.1", |
||||
|
"vue-router": "^4.0.12", |
||||
|
"vue-types": "^4.1.1", |
||||
|
"xlsx": "^0.17.3" |
||||
|
}, |
||||
|
"devDependencies": { |
||||
|
"@commitlint/cli": "^14.1.0", |
||||
|
"@commitlint/config-conventional": "^14.1.0", |
||||
|
"@iconify/json": "^1.1.422", |
||||
|
"@purge-icons/generated": "^0.7.0", |
||||
|
"@types/codemirror": "^5.60.5", |
||||
|
"@types/crypto-js": "^4.0.2", |
||||
|
"@types/fs-extra": "^9.0.13", |
||||
|
"@types/inquirer": "^8.1.3", |
||||
|
"@types/intro.js": "^3.0.2", |
||||
|
"@types/jest": "^27.0.2", |
||||
|
"@types/lodash-es": "^4.17.5", |
||||
|
"@types/mockjs": "^1.0.4", |
||||
|
"@types/node": "^16.11.6", |
||||
|
"@types/nprogress": "^0.2.0", |
||||
|
"@types/qrcode": "^1.4.1", |
||||
|
"@types/qs": "^6.9.7", |
||||
|
"@types/showdown": "^1.9.4", |
||||
|
"@types/sortablejs": "^1.10.7", |
||||
|
"@typescript-eslint/eslint-plugin": "^5.3.0", |
||||
|
"@typescript-eslint/parser": "^5.3.0", |
||||
|
"@vitejs/plugin-legacy": "^1.6.2", |
||||
|
"@vitejs/plugin-vue": "^1.9.4", |
||||
|
"@vitejs/plugin-vue-jsx": "^1.2.0", |
||||
|
"@vue/compiler-sfc": "3.2.21", |
||||
|
"@vue/test-utils": "^2.0.0-rc.16", |
||||
|
"autoprefixer": "^10.4.0", |
||||
|
"commitizen": "^4.2.4", |
||||
|
"conventional-changelog-cli": "^2.1.1", |
||||
|
"cross-env": "^7.0.3", |
||||
|
"dotenv": "^10.0.0", |
||||
|
"eslint": "^8.1.0", |
||||
|
"eslint-config-prettier": "^8.3.0", |
||||
|
"eslint-define-config": "^1.1.2", |
||||
|
"eslint-plugin-jest": "^25.2.2", |
||||
|
"eslint-plugin-prettier": "^4.0.0", |
||||
|
"eslint-plugin-vue": "^8.0.3", |
||||
|
"esno": "^0.10.1", |
||||
|
"fs-extra": "^10.0.0", |
||||
|
"husky": "^7.0.4", |
||||
|
"inquirer": "^8.2.0", |
||||
|
"jest": "^27.3.1", |
||||
|
"less": "^4.1.2", |
||||
|
"lint-staged": "11.2.6", |
||||
|
"npm-run-all": "^4.1.5", |
||||
|
"postcss": "^8.3.11", |
||||
|
"postcss-html": "^1.2.0", |
||||
|
"postcss-less": "^5.0.0", |
||||
|
"prettier": "^2.4.1", |
||||
|
"rimraf": "^3.0.2", |
||||
|
"rollup-plugin-visualizer": "^5.5.2", |
||||
|
"stylelint": "^14.0.1", |
||||
|
"stylelint-config-html": "^1.0.0", |
||||
|
"stylelint-config-prettier": "^9.0.3", |
||||
|
"stylelint-config-standard": "^23.0.0", |
||||
|
"stylelint-order": "^5.0.0", |
||||
|
"ts-jest": "^27.0.7", |
||||
|
"ts-node": "^10.4.0", |
||||
|
"typescript": "^4.4.4", |
||||
|
"vite": "^2.6.13", |
||||
|
"vite-plugin-compression": "^0.3.5", |
||||
|
"vite-plugin-html": "^2.1.1", |
||||
|
"vite-plugin-imagemin": "^0.4.6", |
||||
|
"vite-plugin-mock": "^2.9.6", |
||||
|
"vite-plugin-purge-icons": "^0.7.0", |
||||
|
"vite-plugin-pwa": "^0.11.3", |
||||
|
"vite-plugin-style-import": "^1.3.0", |
||||
|
"vite-plugin-svg-icons": "^1.0.5", |
||||
|
"vite-plugin-theme": "^0.8.1", |
||||
|
"vite-plugin-vue-setup-extend": "^0.1.0", |
||||
|
"vite-plugin-windicss": "^1.4.12", |
||||
|
"vue-eslint-parser": "^8.0.1", |
||||
|
"vue-tsc": "^0.28.10" |
||||
|
}, |
||||
|
"resolutions": { |
||||
|
"//": "Used to install imagemin dependencies, because imagemin may not be installed in China. If it is abroad, you can delete it", |
||||
|
"bin-wrapper": "npm:bin-wrapper-china", |
||||
|
"rollup": "^2.56.3" |
||||
|
}, |
||||
|
"repository": { |
||||
|
"type": "git", |
||||
|
"url": "git+https://github.com/anncwb/vue-vben-admin.git" |
||||
|
}, |
||||
|
"license": "MIT", |
||||
|
"bugs": { |
||||
|
"url": "https://github.com/anncwb/vue-vben-admin/issues" |
||||
|
}, |
||||
|
"homepage": "https://github.com/anncwb/vue-vben-admin", |
||||
|
"engines": { |
||||
|
"node": "^12 || >=14" |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,5 @@ |
|||||
|
module.exports = { |
||||
|
plugins: { |
||||
|
autoprefixer: {}, |
||||
|
}, |
||||
|
}; |
||||
@ -0,0 +1,10 @@ |
|||||
|
module.exports = { |
||||
|
printWidth: 100, |
||||
|
semi: true, |
||||
|
vueIndentScriptAndStyle: true, |
||||
|
singleQuote: true, |
||||
|
trailingComma: 'all', |
||||
|
proseWrap: 'never', |
||||
|
htmlWhitespaceSensitivity: 'strict', |
||||
|
endOfLine: 'auto', |
||||
|
}; |
||||
|
After Width: | Height: | Size: 894 B |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 51 KiB |
@ -0,0 +1,419 @@ |
|||||
|
tinymce.addI18n('es', { |
||||
|
Redo: 'Rehacer', |
||||
|
Undo: 'Deshacer', |
||||
|
Cut: 'Cortar', |
||||
|
Copy: 'Copiar', |
||||
|
Paste: 'Pegar', |
||||
|
'Select all': 'Seleccionar todo', |
||||
|
'New document': 'Nuevo documento', |
||||
|
Ok: 'Ok', |
||||
|
Cancel: 'Cancelar', |
||||
|
'Visual aids': 'Ayudas visuales', |
||||
|
Bold: 'Negrita', |
||||
|
Italic: 'Cursiva', |
||||
|
Underline: 'Subrayado', |
||||
|
Strikethrough: 'Tachado', |
||||
|
Superscript: 'Super\u00edndice', |
||||
|
Subscript: 'Sub\u00edndice', |
||||
|
'Clear formatting': 'Limpiar formato', |
||||
|
'Align left': 'Alinear a la izquierda', |
||||
|
'Align center': 'Alinear al centro', |
||||
|
'Align right': 'Alinear a la derecha', |
||||
|
Justify: 'Justificar', |
||||
|
'Bullet list': 'Lista de vi\u00f1etas', |
||||
|
'Numbered list': 'Lista numerada', |
||||
|
'Decrease indent': 'Disminuir sangr\u00eda', |
||||
|
'Increase indent': 'Incrementar sangr\u00eda', |
||||
|
Close: 'Cerrar', |
||||
|
Formats: 'Formatos', |
||||
|
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": 'Su navegador no es compatible con el acceso directo al portapapeles. Use las teclas Crtl+X\/C\/V de su teclado.', |
||||
|
Headers: 'Encabezados', |
||||
|
'Header 1': 'Encabezado 1', |
||||
|
'Header 2': 'Encabezado 2', |
||||
|
'Header 3': 'Encabezado 3', |
||||
|
'Header 4': 'Encabezado 4', |
||||
|
'Header 5': 'Encabezado 5', |
||||
|
'Header 6': 'Encabezado 6', |
||||
|
Headings: 'Encabezados', |
||||
|
'Heading 1': 'Encabezado 1', |
||||
|
'Heading 2': 'Encabezado 2', |
||||
|
'Heading 3': 'Encabezado 3', |
||||
|
'Heading 4': 'Encabezado 4', |
||||
|
'Heading 5': 'Encabezado 5', |
||||
|
'Heading 6': 'Encabezado 6', |
||||
|
Preformatted: 'Con formato previo', |
||||
|
Div: 'Div', |
||||
|
Pre: 'Pre', |
||||
|
Code: 'C\u00f3digo', |
||||
|
Paragraph: 'P\u00e1rrafo', |
||||
|
Blockquote: 'Blockquote', |
||||
|
Inline: 'Alineado', |
||||
|
Blocks: 'Bloques', |
||||
|
'Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.': 'Pegar est\u00e1 ahora en modo de texto plano. El contenido se pegar\u00e1 como texto plano hasta que desactive esta opci\u00f3n.', |
||||
|
Fonts: 'Fuentes', |
||||
|
'Font Sizes': 'Tama\u00f1os de fuente', |
||||
|
Class: 'Clase', |
||||
|
'Browse for an image': 'Buscar una imagen', |
||||
|
OR: 'OR', |
||||
|
'Drop an image here': 'Arrastre una imagen aqu\u00ed', |
||||
|
Upload: 'Cargar', |
||||
|
Block: 'Bloque', |
||||
|
Align: 'Alinear', |
||||
|
Default: 'Por defecto', |
||||
|
Circle: 'C\u00edrculo', |
||||
|
Disc: 'Disco', |
||||
|
Square: 'Cuadrado', |
||||
|
'Lower Alpha': 'Inferior Alfa', |
||||
|
'Lower Greek': 'Inferior Griega', |
||||
|
'Lower Roman': 'Inferior Romana', |
||||
|
'Upper Alpha': 'Superior Alfa', |
||||
|
'Upper Roman': 'Superior Romana', |
||||
|
'Anchor...': 'Anclaje...', |
||||
|
Name: 'Nombre', |
||||
|
Id: 'Id', |
||||
|
'Id should start with a letter, followed only by letters, numbers, dashes, dots, colons or underscores.': 'Deber\u00eda comenzar por una letra, seguida solo de letras, n\u00fameros, guiones, puntos, dos puntos o guiones bajos.', |
||||
|
'You have unsaved changes are you sure you want to navigate away?': 'Tiene cambios sin guardar. \u00bfEst\u00e1 seguro de que quiere salir?', |
||||
|
'Restore last draft': 'Restaurar el \u00faltimo borrador', |
||||
|
'Special character...': 'Car\u00e1cter especial...', |
||||
|
'Source code': 'C\u00f3digo fuente', |
||||
|
'Insert\/Edit code sample': 'Insertar\/editar c\u00f3digo de prueba', |
||||
|
Language: 'Idioma', |
||||
|
'Code sample...': 'Ejemplo de c\u00f3digo...', |
||||
|
'Color Picker': 'Selector de colores', |
||||
|
R: 'R', |
||||
|
G: 'V', |
||||
|
B: 'A', |
||||
|
'Left to right': 'De izquierda a derecha', |
||||
|
'Right to left': 'De derecha a izquierda', |
||||
|
'Emoticons...': 'Emoticones...', |
||||
|
'Metadata and Document Properties': 'Metadatos y propiedades del documento', |
||||
|
Title: 'T\u00edtulo', |
||||
|
Keywords: 'Palabras clave', |
||||
|
Description: 'Descripci\u00f3n', |
||||
|
Robots: 'Robots', |
||||
|
Author: 'Autor', |
||||
|
Encoding: 'Codificaci\u00f3n', |
||||
|
Fullscreen: 'Pantalla completa', |
||||
|
Action: 'Acci\u00f3n', |
||||
|
Shortcut: 'Atajo', |
||||
|
Help: 'Ayuda', |
||||
|
Address: 'Direcci\u00f3n', |
||||
|
'Focus to menubar': 'Enfocar la barra del men\u00fa', |
||||
|
'Focus to toolbar': 'Enfocar la barra de herramientas', |
||||
|
'Focus to element path': 'Enfocar la ruta del elemento', |
||||
|
'Focus to contextual toolbar': 'Enfocar la barra de herramientas contextual', |
||||
|
'Insert link (if link plugin activated)': 'Insertar enlace (si el complemento de enlace est\u00e1 activado)', |
||||
|
'Save (if save plugin activated)': 'Guardar (si el componente de salvar est\u00e1 activado)', |
||||
|
'Find (if searchreplace plugin activated)': 'Buscar (si el complemento buscar-remplazar est\u00e1 activado)', |
||||
|
'Plugins installed ({0}):': 'Plugins instalados ({0}):', |
||||
|
'Premium plugins:': 'Complementos premium:', |
||||
|
'Learn more...': 'Aprende m\u00e1s...', |
||||
|
'You are using {0}': 'Estas usando {0}', |
||||
|
Plugins: 'Complementos', |
||||
|
'Handy Shortcuts': 'Accesos directos', |
||||
|
'Horizontal line': 'L\u00ednea horizontal', |
||||
|
'Insert\/edit image': 'Insertar\/editar imagen', |
||||
|
'Image description': 'Descripci\u00f3n de la imagen', |
||||
|
Source: 'Enlace', |
||||
|
Dimensions: 'Dimensiones', |
||||
|
'Constrain proportions': 'Restringir proporciones', |
||||
|
General: 'General', |
||||
|
Advanced: 'Avanzado', |
||||
|
Style: 'Estilo', |
||||
|
'Vertical space': 'Espacio vertical', |
||||
|
'Horizontal space': 'Espacio horizontal', |
||||
|
Border: 'Borde', |
||||
|
'Insert image': 'Insertar imagen', |
||||
|
'Image...': 'Imagen...', |
||||
|
'Image list': 'Lista de im\u00e1genes', |
||||
|
'Rotate counterclockwise': 'Girar a la izquierda', |
||||
|
'Rotate clockwise': 'Girar a la derecha', |
||||
|
'Flip vertically': 'Invertir verticalmente', |
||||
|
'Flip horizontally': 'Invertir horizontalmente', |
||||
|
'Edit image': 'Editar imagen', |
||||
|
'Image options': 'Opciones de imagen', |
||||
|
'Zoom in': 'Acercar', |
||||
|
'Zoom out': 'Alejar', |
||||
|
Crop: 'Recortar', |
||||
|
Resize: 'Redimensionar', |
||||
|
Orientation: 'Orientaci\u00f3n', |
||||
|
Brightness: 'Brillo', |
||||
|
Sharpen: 'Forma', |
||||
|
Contrast: 'Contraste', |
||||
|
'Color levels': 'Niveles de color', |
||||
|
Gamma: 'Gamma', |
||||
|
Invert: 'Invertir', |
||||
|
Apply: 'Aplicar', |
||||
|
Back: 'Atr\u00e1s', |
||||
|
'Insert date\/time': 'Insertar fecha\/hora', |
||||
|
'Date\/time': 'Fecha\/hora', |
||||
|
'Insert\/Edit Link': 'Insertar\/editar enlace', |
||||
|
'Insert\/edit link': 'Insertar\/editar enlace', |
||||
|
'Text to display': 'Texto para mostrar', |
||||
|
Url: 'URL', |
||||
|
'Open link in...': 'Abrir enlace en...', |
||||
|
'Current window': 'Ventana actual', |
||||
|
None: 'Ninguno', |
||||
|
'New window': 'Nueva ventana', |
||||
|
'Remove link': 'Quitar enlace', |
||||
|
Anchors: 'Anclas', |
||||
|
'Link...': 'Enlace...', |
||||
|
'Paste or type a link': 'Pega o introduce un enlace', |
||||
|
'The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?': 'El enlace que has introducido no parece ser una direcci\u00f3n de correo electr\u00f3nico. Quieres a\u00f1adir el prefijo necesario mailto: ?', |
||||
|
'The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?': 'El enlace que has introducido no parece ser una enlace externo. Quieres a\u00f1adir el prefijo necesario http:\/\/ ?', |
||||
|
'Link list': 'Lista de enlaces', |
||||
|
'Insert video': 'Insertar video', |
||||
|
'Insert\/edit video': 'Insertar\/editar video', |
||||
|
'Insert\/edit media': 'Insertar\/editar medio', |
||||
|
'Alternative source': 'Enlace alternativo', |
||||
|
'Alternative source URL': 'Origen de URL alternativo', |
||||
|
'Media poster (Image URL)': 'P\u00f3ster de medio (URL de imagen)', |
||||
|
'Paste your embed code below:': 'Pega tu c\u00f3digo embebido debajo', |
||||
|
Embed: 'Incrustado', |
||||
|
'Media...': 'Medios...', |
||||
|
'Nonbreaking space': 'Espacio fijo', |
||||
|
'Page break': 'Salto de p\u00e1gina', |
||||
|
'Paste as text': 'Pegar como texto', |
||||
|
Preview: 'Previsualizar', |
||||
|
'Print...': 'Imprimir...', |
||||
|
Save: 'Guardar', |
||||
|
Find: 'Buscar', |
||||
|
'Replace with': 'Reemplazar con', |
||||
|
Replace: 'Reemplazar', |
||||
|
'Replace all': 'Reemplazar todo', |
||||
|
Previous: 'Anterior', |
||||
|
Next: 'Siguiente', |
||||
|
'Find and replace...': 'Buscar y reemplazar...', |
||||
|
'Could not find the specified string.': 'No se encuentra la cadena de texto especificada', |
||||
|
'Match case': 'Coincidencia exacta', |
||||
|
'Find whole words only': 'Solo palabras completas', |
||||
|
'Spell check': 'Revisar ortograf\u00eda', |
||||
|
Ignore: 'Ignorar', |
||||
|
'Ignore all': 'Ignorar todos', |
||||
|
Finish: 'Finalizar', |
||||
|
'Add to Dictionary': 'A\u00f1adir al Diccionario', |
||||
|
'Insert table': 'Insertar tabla', |
||||
|
'Table properties': 'Propiedades de la tabla', |
||||
|
'Delete table': 'Eliminar tabla', |
||||
|
Cell: 'Celda', |
||||
|
Row: 'Fila', |
||||
|
Column: 'Columna', |
||||
|
'Cell properties': 'Propiedades de la celda', |
||||
|
'Merge cells': 'Combinar celdas', |
||||
|
'Split cell': 'Dividir celdas', |
||||
|
'Insert row before': 'Insertar fila antes', |
||||
|
'Insert row after': 'Insertar fila despu\u00e9s ', |
||||
|
'Delete row': 'Eliminar fila', |
||||
|
'Row properties': 'Propiedades de la fila', |
||||
|
'Cut row': 'Cortar fila', |
||||
|
'Copy row': 'Copiar fila', |
||||
|
'Paste row before': 'Pegar la fila antes', |
||||
|
'Paste row after': 'Pegar la fila despu\u00e9s', |
||||
|
'Insert column before': 'Insertar columna antes', |
||||
|
'Insert column after': 'Insertar columna despu\u00e9s', |
||||
|
'Delete column': 'Eliminar columna', |
||||
|
Cols: 'Columnas', |
||||
|
Rows: 'Filas', |
||||
|
Width: 'Ancho', |
||||
|
Height: 'Alto', |
||||
|
'Cell spacing': 'Espacio entre celdas', |
||||
|
'Cell padding': 'Relleno de celda', |
||||
|
'Show caption': 'Mostrar t\u00edtulo', |
||||
|
Left: 'Izquierda', |
||||
|
Center: 'Centrado', |
||||
|
Right: 'Derecha', |
||||
|
'Cell type': 'Tipo de celda', |
||||
|
Scope: '\u00c1mbito', |
||||
|
Alignment: 'Alineaci\u00f3n', |
||||
|
'H Align': 'Alineamiento Horizontal', |
||||
|
'V Align': 'Alineamiento Vertical', |
||||
|
Top: 'Arriba', |
||||
|
Middle: 'Centro', |
||||
|
Bottom: 'Abajo', |
||||
|
'Header cell': 'Celda de la cebecera', |
||||
|
'Row group': 'Grupo de filas', |
||||
|
'Column group': 'Grupo de columnas', |
||||
|
'Row type': 'Tipo de fila', |
||||
|
Header: 'Cabecera', |
||||
|
Body: 'Cuerpo', |
||||
|
Footer: 'Pie de p\u00e1gina', |
||||
|
'Border color': 'Color del borde', |
||||
|
'Insert template...': 'Insertar plantilla...', |
||||
|
Templates: 'Plantillas', |
||||
|
Template: 'Plantilla', |
||||
|
'Text color': 'Color del texto', |
||||
|
'Background color': 'Color de fondo', |
||||
|
'Custom...': 'Personalizar...', |
||||
|
'Custom color': 'Color personalizado', |
||||
|
'No color': 'Sin color', |
||||
|
'Remove color': 'Quitar color', |
||||
|
'Table of Contents': 'Tabla de contenidos', |
||||
|
'Show blocks': 'Mostrar bloques', |
||||
|
'Show invisible characters': 'Mostrar caracteres invisibles', |
||||
|
'Word count': 'Contar palabras', |
||||
|
Count: 'Recuento', |
||||
|
Document: 'Documento', |
||||
|
Selection: 'Selecci\u00f3n', |
||||
|
Words: 'Palabras', |
||||
|
'Words: {0}': 'Palabras: {0}', |
||||
|
'{0} words': '{0} palabras', |
||||
|
File: 'Archivo', |
||||
|
Edit: 'Editar', |
||||
|
Insert: 'Insertar', |
||||
|
View: 'Ver', |
||||
|
Format: 'Formato', |
||||
|
Table: 'Tabla', |
||||
|
Tools: 'Herramientas', |
||||
|
'Powered by {0}': 'Desarrollado por {0}', |
||||
|
'Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help': '\u00c1rea de texto enriquecido. Pulse ALT-F9 para el menu. Pulse ALT-F10 para la barra de herramientas. Pulse ALT-0 para ayuda', |
||||
|
'Image title': 'Titulo de imagen', |
||||
|
'Border width': 'Ancho de borde', |
||||
|
'Border style': 'Estilo de borde', |
||||
|
Error: 'Error', |
||||
|
Warn: 'Advertencia', |
||||
|
Valid: 'V\u00e1lido', |
||||
|
'To open the popup, press Shift+Enter': 'Para abrir el elemento emergente, pulse May\u00fas+Intro', |
||||
|
'Rich Text Area. Press ALT-0 for help.': '\u00c1rea de texto enriquecido. Pulse ALT-0 para abrir la ayuda.', |
||||
|
'System Font': 'Fuente de sistema', |
||||
|
'Failed to upload image: {0}': 'Fallo al cargar imagen: {0}', |
||||
|
'Failed to load plugin: {0} from url {1}': 'Fallo al cargar complemento: {0} desde URL {1}', |
||||
|
'Failed to load plugin url: {0}': 'Fallo al cargar URL del complemento: {0}', |
||||
|
'Failed to initialize plugin: {0}': 'Fallo al iniciar el complemento: {0}', |
||||
|
example: 'ejemplo', |
||||
|
Search: 'Buscar', |
||||
|
All: 'Todo', |
||||
|
Currency: 'Divisa', |
||||
|
Text: 'Texto', |
||||
|
Quotations: 'Comillas', |
||||
|
Mathematical: 'S\u00edmbolo matem\u00e1tico', |
||||
|
'Extended Latin': 'Latino extendido A', |
||||
|
Symbols: 'S\u00edmbolos', |
||||
|
Arrows: 'Flechas', |
||||
|
'User Defined': 'Definido por el usuario', |
||||
|
'dollar sign': 'signo de d\u00f3lar', |
||||
|
'currency sign': 'signo de divisa', |
||||
|
'euro-currency sign': 'signo de euro', |
||||
|
'colon sign': 'signo de dos puntos', |
||||
|
'cruzeiro sign': 'signo de cruceiro', |
||||
|
'french franc sign': 'signo de franco franc\u00e9s', |
||||
|
'lira sign': 'signo de lira', |
||||
|
'mill sign': 'signo de mill', |
||||
|
'naira sign': 'signo de naira', |
||||
|
'peseta sign': 'signo de peseta', |
||||
|
'rupee sign': 'signo de rupia', |
||||
|
'won sign': 'signo de won', |
||||
|
'new sheqel sign': 'signo de nuevo s\u00e9quel', |
||||
|
'dong sign': 'signo de dong', |
||||
|
'kip sign': 'signo de kip', |
||||
|
'tugrik sign': 'signo de tugrik', |
||||
|
'drachma sign': 'signo de dracma', |
||||
|
'german penny symbol': 'signo de penique alem\u00e1n', |
||||
|
'peso sign': 'signo de peso', |
||||
|
'guarani sign': 'signo de guaran\u00ed', |
||||
|
'austral sign': 'signo de austral', |
||||
|
'hryvnia sign': 'signo de grivna', |
||||
|
'cedi sign': 'signo de cedi', |
||||
|
'livre tournois sign': 'signo de libra tornesa', |
||||
|
'spesmilo sign': 'signo de spesmilo', |
||||
|
'tenge sign': 'signo de tenge', |
||||
|
'indian rupee sign': 'signo de rupia india', |
||||
|
'turkish lira sign': 'signo de lira turca', |
||||
|
'nordic mark sign': 'signo de marco n\u00f3rdico', |
||||
|
'manat sign': 'signo de manat', |
||||
|
'ruble sign': 'signo de rublo', |
||||
|
'yen character': 'car\u00e1cter de yen', |
||||
|
'yuan character': 'car\u00e1cter de yuan', |
||||
|
'yuan character, in hong kong and taiwan': 'car\u00e1cter de yuan en Hong Kong y Taiw\u00e1n', |
||||
|
'yen\/yuan character variant one': 'Variante uno de car\u00e1cter de yen\/yuan', |
||||
|
'Loading emoticons...': 'Cargando emoticonos...', |
||||
|
'Could not load emoticons': 'No se han podido cargar los emoticonos', |
||||
|
People: 'Personas', |
||||
|
'Animals and Nature': 'Animales y naturaleza', |
||||
|
'Food and Drink': 'Comida y bebida', |
||||
|
Activity: 'Actividad', |
||||
|
'Travel and Places': 'Viajes y lugares', |
||||
|
Objects: 'Objetos', |
||||
|
Flags: 'Banderas', |
||||
|
Characters: 'Caracteres', |
||||
|
'Characters (no spaces)': 'Caracteres (sin espacios)', |
||||
|
'{0} characters': '{0} caracteres', |
||||
|
'Error: Form submit field collision.': 'Error: Colisi\u00f3n de campo al enviar formulario.', |
||||
|
'Error: No form element found.': 'Error: No se encuentra ning\u00fan elemento de formulario.', |
||||
|
Update: 'Actualizar', |
||||
|
'Color swatch': 'Muestrario de colores', |
||||
|
Turquoise: 'Turquesa', |
||||
|
Green: 'Verde', |
||||
|
Blue: 'Azul', |
||||
|
Purple: 'P\u00farpura', |
||||
|
'Navy Blue': 'Azul marino', |
||||
|
'Dark Turquoise': 'Turquesa oscuro', |
||||
|
'Dark Green': 'Verde oscuro', |
||||
|
'Medium Blue': 'Azul medio', |
||||
|
'Medium Purple': 'P\u00farpura medio', |
||||
|
'Midnight Blue': 'Azul medio', |
||||
|
Yellow: 'Amarillo', |
||||
|
Orange: 'Naranja', |
||||
|
Red: 'Rojo', |
||||
|
'Light Gray': 'Gris claro', |
||||
|
Gray: 'Gris', |
||||
|
'Dark Yellow': 'Amarillo oscuro', |
||||
|
'Dark Orange': 'Naranja oscuro', |
||||
|
'Dark Red': 'Rojo oscuro', |
||||
|
'Medium Gray': 'Gris medio', |
||||
|
'Dark Gray': 'Gris oscuro', |
||||
|
'Light Green': 'Verde claro', |
||||
|
'Light Yellow': 'Amarillo claro', |
||||
|
'Light Red': 'Rojo claro', |
||||
|
'Light Purple': 'Morado claro', |
||||
|
'Light Blue': 'Azul claro', |
||||
|
'Dark Purple': 'Morado oscuro', |
||||
|
'Dark Blue': 'Azul oscuro', |
||||
|
Black: 'Negro', |
||||
|
White: 'Blanco', |
||||
|
'Switch to or from fullscreen mode': 'Activar o desactivar modo pantalla completa', |
||||
|
'Open help dialog': 'Abrir di\u00e1logo de ayuda', |
||||
|
history: 'historial', |
||||
|
styles: 'estilos', |
||||
|
formatting: 'formato', |
||||
|
alignment: 'alineaci\u00f3n', |
||||
|
indentation: 'sangr\u00eda', |
||||
|
'permanent pen': 'bol\u00edgrafo permanente', |
||||
|
comments: 'comentarios', |
||||
|
'Format Painter': 'Copiar formato', |
||||
|
'Insert\/edit iframe': 'Insertar\/editar iframe', |
||||
|
Capitalization: 'Uso de may\u00fasculas', |
||||
|
lowercase: 'min\u00fasculas', |
||||
|
UPPERCASE: 'MAY\u00daSCULAS', |
||||
|
'Title Case': 'Tipo T\u00edtulo', |
||||
|
'Permanent Pen Properties': 'Propiedades del bol\u00edgrafo permanente', |
||||
|
'Permanent pen properties...': 'Propiedades del bol\u00edgrafo permanente...', |
||||
|
Font: 'Fuente', |
||||
|
Size: 'Tama\u00f1o', |
||||
|
'More...': 'M\u00e1s...', |
||||
|
'Spellcheck Language': 'Corrector', |
||||
|
'Select...': 'Seleccionar...', |
||||
|
Preferences: 'Preferencias', |
||||
|
Yes: 'S\u00ed', |
||||
|
No: 'No', |
||||
|
'Keyboard Navigation': 'Navegaci\u00f3n con el teclado', |
||||
|
Version: 'Versi\u00f3n', |
||||
|
Anchor: 'Ancla', |
||||
|
'Special character': 'Car\u00e1cter especial', |
||||
|
'Code sample': 'Ejemplo de c\u00f3digo', |
||||
|
Color: 'Color', |
||||
|
Emoticons: 'Emoticonos', |
||||
|
'Document properties': 'Propiedades del documento', |
||||
|
Image: 'Imagen', |
||||
|
'Insert link': 'Insertar enlace', |
||||
|
Target: 'Destino', |
||||
|
Link: 'Enlace', |
||||
|
Poster: 'Miniatura', |
||||
|
Media: 'Media', |
||||
|
Print: 'Imprimir', |
||||
|
Prev: 'Anterior', |
||||
|
'Find and replace': 'Buscar y reemplazar', |
||||
|
'Whole words': 'Palabras completas', |
||||
|
Spellcheck: 'Corrector ortogr\u00e1fico', |
||||
|
Caption: 'Subt\u00edtulo', |
||||
|
'Insert template': 'Insertar plantilla' |
||||
|
}) |
||||
@ -0,0 +1,389 @@ |
|||||
|
tinymce.addI18n('zh_CN',{ |
||||
|
"Redo": "\u91cd\u505a", |
||||
|
"Undo": "\u64a4\u9500", |
||||
|
"Cut": "\u526a\u5207", |
||||
|
"Copy": "\u590d\u5236", |
||||
|
"Paste": "\u7c98\u8d34", |
||||
|
"Select all": "\u5168\u9009", |
||||
|
"New document": "\u65b0\u6587\u4ef6", |
||||
|
"Ok": "\u786e\u5b9a", |
||||
|
"Cancel": "\u53d6\u6d88", |
||||
|
"Visual aids": "\u7f51\u683c\u7ebf", |
||||
|
"Bold": "\u7c97\u4f53", |
||||
|
"Italic": "\u659c\u4f53", |
||||
|
"Underline": "\u4e0b\u5212\u7ebf", |
||||
|
"Strikethrough": "\u5220\u9664\u7ebf", |
||||
|
"Superscript": "\u4e0a\u6807", |
||||
|
"Subscript": "\u4e0b\u6807", |
||||
|
"Clear formatting": "\u6e05\u9664\u683c\u5f0f", |
||||
|
"Align left": "\u5de6\u8fb9\u5bf9\u9f50", |
||||
|
"Align center": "\u4e2d\u95f4\u5bf9\u9f50", |
||||
|
"Align right": "\u53f3\u8fb9\u5bf9\u9f50", |
||||
|
"Justify": "\u4e24\u7aef\u5bf9\u9f50", |
||||
|
"Bullet list": "\u9879\u76ee\u7b26\u53f7", |
||||
|
"Numbered list": "\u7f16\u53f7\u5217\u8868", |
||||
|
"Decrease indent": "\u51cf\u5c11\u7f29\u8fdb", |
||||
|
"Increase indent": "\u589e\u52a0\u7f29\u8fdb", |
||||
|
"Close": "\u5173\u95ed", |
||||
|
"Formats": "\u683c\u5f0f", |
||||
|
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "\u4f60\u7684\u6d4f\u89c8\u5668\u4e0d\u652f\u6301\u6253\u5f00\u526a\u8d34\u677f\uff0c\u8bf7\u4f7f\u7528Ctrl+X\/C\/V\u7b49\u5feb\u6377\u952e\u3002", |
||||
|
"Headers": "\u6807\u9898", |
||||
|
"Header 1": "\u6807\u98981", |
||||
|
"Header 2": "\u6807\u98982", |
||||
|
"Header 3": "\u6807\u98983", |
||||
|
"Header 4": "\u6807\u98984", |
||||
|
"Header 5": "\u6807\u98985", |
||||
|
"Header 6": "\u6807\u98986", |
||||
|
"Headings": "\u6807\u9898", |
||||
|
"Heading 1": "\u6807\u98981", |
||||
|
"Heading 2": "\u6807\u98982", |
||||
|
"Heading 3": "\u6807\u98983", |
||||
|
"Heading 4": "\u6807\u98984", |
||||
|
"Heading 5": "\u6807\u98985", |
||||
|
"Heading 6": "\u6807\u98986", |
||||
|
"Preformatted": "\u9884\u5148\u683c\u5f0f\u5316\u7684", |
||||
|
"Div": "Div", |
||||
|
"Pre": "Pre", |
||||
|
"Code": "\u4ee3\u7801", |
||||
|
"Paragraph": "\u6bb5\u843d", |
||||
|
"Blockquote": "\u5f15\u6587\u533a\u5757", |
||||
|
"Inline": "\u6587\u672c", |
||||
|
"Blocks": "\u57fa\u5757", |
||||
|
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "\u5f53\u524d\u4e3a\u7eaf\u6587\u672c\u7c98\u8d34\u6a21\u5f0f\uff0c\u518d\u6b21\u70b9\u51fb\u53ef\u4ee5\u56de\u5230\u666e\u901a\u7c98\u8d34\u6a21\u5f0f\u3002", |
||||
|
"Fonts": "\u5b57\u4f53", |
||||
|
"Font Sizes": "\u5b57\u53f7", |
||||
|
"Class": "\u7c7b\u578b", |
||||
|
"Browse for an image": "\u6d4f\u89c8\u56fe\u50cf", |
||||
|
"OR": "\u6216", |
||||
|
"Drop an image here": "\u62d6\u653e\u4e00\u5f20\u56fe\u50cf\u81f3\u6b64", |
||||
|
"Upload": "\u4e0a\u4f20", |
||||
|
"Block": "\u5757", |
||||
|
"Align": "\u5bf9\u9f50", |
||||
|
"Default": "\u9ed8\u8ba4", |
||||
|
"Circle": "\u7a7a\u5fc3\u5706", |
||||
|
"Disc": "\u5b9e\u5fc3\u5706", |
||||
|
"Square": "\u65b9\u5757", |
||||
|
"Lower Alpha": "\u5c0f\u5199\u82f1\u6587\u5b57\u6bcd", |
||||
|
"Lower Greek": "\u5c0f\u5199\u5e0c\u814a\u5b57\u6bcd", |
||||
|
"Lower Roman": "\u5c0f\u5199\u7f57\u9a6c\u5b57\u6bcd", |
||||
|
"Upper Alpha": "\u5927\u5199\u82f1\u6587\u5b57\u6bcd", |
||||
|
"Upper Roman": "\u5927\u5199\u7f57\u9a6c\u5b57\u6bcd", |
||||
|
"Anchor...": "\u951a\u70b9...", |
||||
|
"Name": "\u540d\u79f0", |
||||
|
"Id": "\u6807\u8bc6\u7b26", |
||||
|
"Id should start with a letter, followed only by letters, numbers, dashes, dots, colons or underscores.": "\u6807\u8bc6\u7b26\u5e94\u8be5\u4ee5\u5b57\u6bcd\u5f00\u5934\uff0c\u540e\u8ddf\u5b57\u6bcd\u3001\u6570\u5b57\u3001\u7834\u6298\u53f7\u3001\u70b9\u3001\u5192\u53f7\u6216\u4e0b\u5212\u7ebf\u3002", |
||||
|
"You have unsaved changes are you sure you want to navigate away?": "\u4f60\u8fd8\u6709\u6587\u6863\u5c1a\u672a\u4fdd\u5b58\uff0c\u786e\u5b9a\u8981\u79bb\u5f00\uff1f", |
||||
|
"Restore last draft": "\u6062\u590d\u4e0a\u6b21\u7684\u8349\u7a3f", |
||||
|
"Special characters...": "\u7279\u6b8a\u5b57\u7b26...", |
||||
|
"Source code": "\u6e90\u4ee3\u7801", |
||||
|
"Insert\/Edit code sample": "\u63d2\u5165\/\u7f16\u8f91\u4ee3\u7801\u793a\u4f8b", |
||||
|
"Language": "\u8bed\u8a00", |
||||
|
"Code sample...": "\u793a\u4f8b\u4ee3\u7801...", |
||||
|
"Color Picker": "\u9009\u8272\u5668", |
||||
|
"R": "R", |
||||
|
"G": "G", |
||||
|
"B": "B", |
||||
|
"Left to right": "\u4ece\u5de6\u5230\u53f3", |
||||
|
"Right to left": "\u4ece\u53f3\u5230\u5de6", |
||||
|
"Emoticons...": "\u8868\u60c5\u7b26\u53f7...", |
||||
|
"Metadata and Document Properties": "\u5143\u6570\u636e\u548c\u6587\u6863\u5c5e\u6027", |
||||
|
"Title": "\u6807\u9898", |
||||
|
"Keywords": "\u5173\u952e\u8bcd", |
||||
|
"Description": "\u63cf\u8ff0", |
||||
|
"Robots": "\u673a\u5668\u4eba", |
||||
|
"Author": "\u4f5c\u8005", |
||||
|
"Encoding": "\u7f16\u7801", |
||||
|
"Fullscreen": "\u5168\u5c4f", |
||||
|
"Action": "\u64cd\u4f5c", |
||||
|
"Shortcut": "\u5feb\u6377\u952e", |
||||
|
"Help": "\u5e2e\u52a9", |
||||
|
"Address": "\u5730\u5740", |
||||
|
"Focus to menubar": "\u79fb\u52a8\u7126\u70b9\u5230\u83dc\u5355\u680f", |
||||
|
"Focus to toolbar": "\u79fb\u52a8\u7126\u70b9\u5230\u5de5\u5177\u680f", |
||||
|
"Focus to element path": "\u79fb\u52a8\u7126\u70b9\u5230\u5143\u7d20\u8def\u5f84", |
||||
|
"Focus to contextual toolbar": "\u79fb\u52a8\u7126\u70b9\u5230\u4e0a\u4e0b\u6587\u83dc\u5355", |
||||
|
"Insert link (if link plugin activated)": "\u63d2\u5165\u94fe\u63a5 (\u5982\u679c\u94fe\u63a5\u63d2\u4ef6\u5df2\u6fc0\u6d3b)", |
||||
|
"Save (if save plugin activated)": "\u4fdd\u5b58(\u5982\u679c\u4fdd\u5b58\u63d2\u4ef6\u5df2\u6fc0\u6d3b)", |
||||
|
"Find (if searchreplace plugin activated)": "\u67e5\u627e(\u5982\u679c\u67e5\u627e\u66ff\u6362\u63d2\u4ef6\u5df2\u6fc0\u6d3b)", |
||||
|
"Plugins installed ({0}):": "\u5df2\u5b89\u88c5\u63d2\u4ef6 ({0}):", |
||||
|
"Premium plugins:": "\u4f18\u79c0\u63d2\u4ef6\uff1a", |
||||
|
"Learn more...": "\u4e86\u89e3\u66f4\u591a...", |
||||
|
"You are using {0}": "\u4f60\u6b63\u5728\u4f7f\u7528 {0}", |
||||
|
"Plugins": "\u63d2\u4ef6", |
||||
|
"Handy Shortcuts": "\u5feb\u6377\u952e", |
||||
|
"Horizontal line": "\u6c34\u5e73\u5206\u5272\u7ebf", |
||||
|
"Insert\/edit image": "\u63d2\u5165\/\u7f16\u8f91\u56fe\u7247", |
||||
|
"Image description": "\u56fe\u7247\u63cf\u8ff0", |
||||
|
"Source": "\u5730\u5740", |
||||
|
"Dimensions": "\u5927\u5c0f", |
||||
|
"Constrain proportions": "\u4fdd\u6301\u7eb5\u6a2a\u6bd4", |
||||
|
"General": "\u666e\u901a", |
||||
|
"Advanced": "\u9ad8\u7ea7", |
||||
|
"Style": "\u6837\u5f0f", |
||||
|
"Vertical space": "\u5782\u76f4\u8fb9\u8ddd", |
||||
|
"Horizontal space": "\u6c34\u5e73\u8fb9\u8ddd", |
||||
|
"Border": "\u8fb9\u6846", |
||||
|
"Insert image": "\u63d2\u5165\u56fe\u7247", |
||||
|
"Image...": "\u56fe\u7247...", |
||||
|
"Image list": "\u56fe\u7247\u5217\u8868", |
||||
|
"Rotate counterclockwise": "\u9006\u65f6\u9488\u65cb\u8f6c", |
||||
|
"Rotate clockwise": "\u987a\u65f6\u9488\u65cb\u8f6c", |
||||
|
"Flip vertically": "\u5782\u76f4\u7ffb\u8f6c", |
||||
|
"Flip horizontally": "\u6c34\u5e73\u7ffb\u8f6c", |
||||
|
"Edit image": "\u7f16\u8f91\u56fe\u7247", |
||||
|
"Image options": "\u56fe\u7247\u9009\u9879", |
||||
|
"Zoom in": "\u653e\u5927", |
||||
|
"Zoom out": "\u7f29\u5c0f", |
||||
|
"Crop": "\u88c1\u526a", |
||||
|
"Resize": "\u8c03\u6574\u5927\u5c0f", |
||||
|
"Orientation": "\u65b9\u5411", |
||||
|
"Brightness": "\u4eae\u5ea6", |
||||
|
"Sharpen": "\u9510\u5316", |
||||
|
"Contrast": "\u5bf9\u6bd4\u5ea6", |
||||
|
"Color levels": "\u989c\u8272\u5c42\u6b21", |
||||
|
"Gamma": "\u4f3d\u9a6c\u503c", |
||||
|
"Invert": "\u53cd\u8f6c", |
||||
|
"Apply": "\u5e94\u7528", |
||||
|
"Back": "\u540e\u9000", |
||||
|
"Insert date\/time": "\u63d2\u5165\u65e5\u671f\/\u65f6\u95f4", |
||||
|
"Date\/time": "\u65e5\u671f\/\u65f6\u95f4", |
||||
|
"Insert\/Edit Link": "\u63d2\u5165\/\u7f16\u8f91\u94fe\u63a5", |
||||
|
"Insert\/edit link": "\u63d2\u5165\/\u7f16\u8f91\u94fe\u63a5", |
||||
|
"Text to display": "\u663e\u793a\u6587\u5b57", |
||||
|
"Url": "\u5730\u5740", |
||||
|
"Open link in...": "\u94fe\u63a5\u6253\u5f00\u4f4d\u7f6e...", |
||||
|
"Current window": "\u5f53\u524d\u7a97\u53e3", |
||||
|
"None": "\u65e0", |
||||
|
"New window": "\u5728\u65b0\u7a97\u53e3\u6253\u5f00", |
||||
|
"Remove link": "\u5220\u9664\u94fe\u63a5", |
||||
|
"Anchors": "\u951a\u70b9", |
||||
|
"Link...": "\u94fe\u63a5...", |
||||
|
"Paste or type a link": "\u7c98\u8d34\u6216\u8f93\u5165\u94fe\u63a5", |
||||
|
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "\u4f60\u6240\u586b\u5199\u7684URL\u5730\u5740\u4e3a\u90ae\u4ef6\u5730\u5740\uff0c\u9700\u8981\u52a0\u4e0amailto:\u524d\u7f00\u5417\uff1f", |
||||
|
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "\u4f60\u6240\u586b\u5199\u7684URL\u5730\u5740\u5c5e\u4e8e\u5916\u90e8\u94fe\u63a5\uff0c\u9700\u8981\u52a0\u4e0ahttp:\/\/:\u524d\u7f00\u5417\uff1f", |
||||
|
"Link list": "\u94fe\u63a5\u5217\u8868", |
||||
|
"Insert video": "\u63d2\u5165\u89c6\u9891", |
||||
|
"Insert\/edit video": "\u63d2\u5165\/\u7f16\u8f91\u89c6\u9891", |
||||
|
"Insert\/edit media": "\u63d2\u5165\/\u7f16\u8f91\u5a92\u4f53", |
||||
|
"Alternative source": "\u955c\u50cf", |
||||
|
"Alternative source URL": "\u66ff\u4ee3\u6765\u6e90\u7f51\u5740", |
||||
|
"Media poster (Image URL)": "\u5c01\u9762(\u56fe\u7247\u5730\u5740)", |
||||
|
"Paste your embed code below:": "\u5c06\u5185\u5d4c\u4ee3\u7801\u7c98\u8d34\u5728\u4e0b\u9762:", |
||||
|
"Embed": "\u5185\u5d4c", |
||||
|
"Media...": "\u591a\u5a92\u4f53...", |
||||
|
"Nonbreaking space": "\u4e0d\u95f4\u65ad\u7a7a\u683c", |
||||
|
"Page break": "\u5206\u9875\u7b26", |
||||
|
"Paste as text": "\u7c98\u8d34\u4e3a\u6587\u672c", |
||||
|
"Preview": "\u9884\u89c8", |
||||
|
"Print...": "\u6253\u5370...", |
||||
|
"Save": "\u4fdd\u5b58", |
||||
|
"Find": "\u67e5\u627e", |
||||
|
"Replace with": "\u66ff\u6362\u4e3a", |
||||
|
"Replace": "\u66ff\u6362", |
||||
|
"Replace all": "\u5168\u90e8\u66ff\u6362", |
||||
|
"Previous": "\u4e0a\u4e00\u4e2a", |
||||
|
"Next": "\u4e0b\u4e00\u4e2a", |
||||
|
"Find and replace...": "\u67e5\u627e\u5e76\u66ff\u6362...", |
||||
|
"Could not find the specified string.": "\u672a\u627e\u5230\u641c\u7d22\u5185\u5bb9.", |
||||
|
"Match case": "\u533a\u5206\u5927\u5c0f\u5199", |
||||
|
"Find whole words only": "\u5168\u5b57\u5339\u914d", |
||||
|
"Spell check": "\u62fc\u5199\u68c0\u67e5", |
||||
|
"Ignore": "\u5ffd\u7565", |
||||
|
"Ignore all": "\u5168\u90e8\u5ffd\u7565", |
||||
|
"Finish": "\u5b8c\u6210", |
||||
|
"Add to Dictionary": "\u6dfb\u52a0\u5230\u5b57\u5178", |
||||
|
"Insert table": "\u63d2\u5165\u8868\u683c", |
||||
|
"Table properties": "\u8868\u683c\u5c5e\u6027", |
||||
|
"Delete table": "\u5220\u9664\u8868\u683c", |
||||
|
"Cell": "\u5355\u5143\u683c", |
||||
|
"Row": "\u884c", |
||||
|
"Column": "\u5217", |
||||
|
"Cell properties": "\u5355\u5143\u683c\u5c5e\u6027", |
||||
|
"Merge cells": "\u5408\u5e76\u5355\u5143\u683c", |
||||
|
"Split cell": "\u62c6\u5206\u5355\u5143\u683c", |
||||
|
"Insert row before": "\u5728\u4e0a\u65b9\u63d2\u5165", |
||||
|
"Insert row after": "\u5728\u4e0b\u65b9\u63d2\u5165", |
||||
|
"Delete row": "\u5220\u9664\u884c", |
||||
|
"Row properties": "\u884c\u5c5e\u6027", |
||||
|
"Cut row": "\u526a\u5207\u884c", |
||||
|
"Copy row": "\u590d\u5236\u884c", |
||||
|
"Paste row before": "\u7c98\u8d34\u5230\u4e0a\u65b9", |
||||
|
"Paste row after": "\u7c98\u8d34\u5230\u4e0b\u65b9", |
||||
|
"Insert column before": "\u5728\u5de6\u4fa7\u63d2\u5165", |
||||
|
"Insert column after": "\u5728\u53f3\u4fa7\u63d2\u5165", |
||||
|
"Delete column": "\u5220\u9664\u5217", |
||||
|
"Cols": "\u5217", |
||||
|
"Rows": "\u884c", |
||||
|
"Width": "\u5bbd", |
||||
|
"Height": "\u9ad8", |
||||
|
"Cell spacing": "\u5355\u5143\u683c\u5916\u95f4\u8ddd", |
||||
|
"Cell padding": "\u5355\u5143\u683c\u5185\u8fb9\u8ddd", |
||||
|
"Show caption": "\u663e\u793a\u6807\u9898", |
||||
|
"Left": "\u5de6\u5bf9\u9f50", |
||||
|
"Center": "\u5c45\u4e2d", |
||||
|
"Right": "\u53f3\u5bf9\u9f50", |
||||
|
"Cell type": "\u5355\u5143\u683c\u7c7b\u578b", |
||||
|
"Scope": "\u8303\u56f4", |
||||
|
"Alignment": "\u5bf9\u9f50\u65b9\u5f0f", |
||||
|
"H Align": "\u6c34\u5e73\u5bf9\u9f50", |
||||
|
"V Align": "\u5782\u76f4\u5bf9\u9f50", |
||||
|
"Top": "\u9876\u90e8\u5bf9\u9f50", |
||||
|
"Middle": "\u5782\u76f4\u5c45\u4e2d", |
||||
|
"Bottom": "\u5e95\u90e8\u5bf9\u9f50", |
||||
|
"Header cell": "\u8868\u5934\u5355\u5143\u683c", |
||||
|
"Row group": "\u884c\u7ec4", |
||||
|
"Column group": "\u5217\u7ec4", |
||||
|
"Row type": "\u884c\u7c7b\u578b", |
||||
|
"Header": "\u8868\u5934", |
||||
|
"Body": "\u8868\u4f53", |
||||
|
"Footer": "\u8868\u5c3e", |
||||
|
"Border color": "\u8fb9\u6846\u989c\u8272", |
||||
|
"Insert template...": "\u63d2\u5165\u6a21\u677f...", |
||||
|
"Templates": "\u6a21\u677f", |
||||
|
"Template": "\u6a21\u677f", |
||||
|
"Text color": "\u6587\u5b57\u989c\u8272", |
||||
|
"Background color": "\u80cc\u666f\u8272", |
||||
|
"Custom...": "\u81ea\u5b9a\u4e49...", |
||||
|
"Custom color": "\u81ea\u5b9a\u4e49\u989c\u8272", |
||||
|
"No color": "\u65e0", |
||||
|
"Remove color": "\u79fb\u9664\u989c\u8272", |
||||
|
"Table of Contents": "\u5185\u5bb9\u5217\u8868", |
||||
|
"Show blocks": "\u663e\u793a\u533a\u5757\u8fb9\u6846", |
||||
|
"Show invisible characters": "\u663e\u793a\u4e0d\u53ef\u89c1\u5b57\u7b26", |
||||
|
"Word count": "\u5b57\u6570", |
||||
|
"Words: {0}": "\u5b57\u6570\uff1a{0}", |
||||
|
"{0} words": "{0} \u5b57", |
||||
|
"File": "\u6587\u4ef6", |
||||
|
"Edit": "\u7f16\u8f91", |
||||
|
"Insert": "\u63d2\u5165", |
||||
|
"View": "\u89c6\u56fe", |
||||
|
"Format": "\u683c\u5f0f", |
||||
|
"Table": "\u8868\u683c", |
||||
|
"Tools": "\u5de5\u5177", |
||||
|
"Powered by {0}": "\u7531{0}\u9a71\u52a8", |
||||
|
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u5728\u7f16\u8f91\u533a\u6309ALT-F9\u6253\u5f00\u83dc\u5355\uff0c\u6309ALT-F10\u6253\u5f00\u5de5\u5177\u680f\uff0c\u6309ALT-0\u67e5\u770b\u5e2e\u52a9", |
||||
|
"Image title": "\u56fe\u7247\u6807\u9898", |
||||
|
"Border width": "\u8fb9\u6846\u5bbd\u5ea6", |
||||
|
"Border style": "\u8fb9\u6846\u6837\u5f0f", |
||||
|
"Error": "\u9519\u8bef", |
||||
|
"Warn": "\u8b66\u544a", |
||||
|
"Valid": "\u6709\u6548", |
||||
|
"To open the popup, press Shift+Enter": "\u6309Shitf+Enter\u952e\u6253\u5f00\u5bf9\u8bdd\u6846", |
||||
|
"Rich Text Area. Press ALT-0 for help.": "\u7f16\u8f91\u533a\u3002\u6309Alt+0\u952e\u6253\u5f00\u5e2e\u52a9\u3002", |
||||
|
"System Font": "\u7cfb\u7edf\u5b57\u4f53", |
||||
|
"Failed to upload image: {0}": "\u56fe\u7247\u4e0a\u4f20\u5931\u8d25: {0}", |
||||
|
"Failed to load plugin: {0} from url {1}": "\u63d2\u4ef6\u52a0\u8f7d\u5931\u8d25: {0} \u6765\u81ea\u94fe\u63a5 {1}", |
||||
|
"Failed to load plugin url: {0}": "\u63d2\u4ef6\u52a0\u8f7d\u5931\u8d25 \u94fe\u63a5: {0}", |
||||
|
"Failed to initialize plugin: {0}": "\u63d2\u4ef6\u521d\u59cb\u5316\u5931\u8d25: {0}", |
||||
|
"example": "\u793a\u4f8b", |
||||
|
"Search": "\u641c\u7d22", |
||||
|
"All": "\u5168\u90e8", |
||||
|
"Currency": "\u8d27\u5e01", |
||||
|
"Text": "\u6587\u5b57", |
||||
|
"Quotations": "\u5f15\u7528", |
||||
|
"Mathematical": "\u6570\u5b66", |
||||
|
"Extended Latin": "\u62c9\u4e01\u8bed\u6269\u5145", |
||||
|
"Symbols": "\u7b26\u53f7", |
||||
|
"Arrows": "\u7bad\u5934", |
||||
|
"User Defined": "\u81ea\u5b9a\u4e49", |
||||
|
"dollar sign": "\u7f8e\u5143\u7b26\u53f7", |
||||
|
"currency sign": "\u8d27\u5e01\u7b26\u53f7", |
||||
|
"euro-currency sign": "\u6b27\u5143\u7b26\u53f7", |
||||
|
"colon sign": "\u5192\u53f7", |
||||
|
"cruzeiro sign": "\u514b\u9c81\u8d5b\u7f57\u5e01\u7b26\u53f7", |
||||
|
"french franc sign": "\u6cd5\u90ce\u7b26\u53f7", |
||||
|
"lira sign": "\u91cc\u62c9\u7b26\u53f7", |
||||
|
"mill sign": "\u5bc6\u5c14\u7b26\u53f7", |
||||
|
"naira sign": "\u5948\u62c9\u7b26\u53f7", |
||||
|
"peseta sign": "\u6bd4\u585e\u5854\u7b26\u53f7", |
||||
|
"rupee sign": "\u5362\u6bd4\u7b26\u53f7", |
||||
|
"won sign": "\u97e9\u5143\u7b26\u53f7", |
||||
|
"new sheqel sign": "\u65b0\u8c22\u514b\u5c14\u7b26\u53f7", |
||||
|
"dong sign": "\u8d8a\u5357\u76fe\u7b26\u53f7", |
||||
|
"kip sign": "\u8001\u631d\u57fa\u666e\u7b26\u53f7", |
||||
|
"tugrik sign": "\u56fe\u683c\u91cc\u514b\u7b26\u53f7", |
||||
|
"drachma sign": "\u5fb7\u62c9\u514b\u9a6c\u7b26\u53f7", |
||||
|
"german penny symbol": "\u5fb7\u56fd\u4fbf\u58eb\u7b26\u53f7", |
||||
|
"peso sign": "\u6bd4\u7d22\u7b26\u53f7", |
||||
|
"guarani sign": "\u74dc\u62c9\u5c3c\u7b26\u53f7", |
||||
|
"austral sign": "\u6fb3\u5143\u7b26\u53f7", |
||||
|
"hryvnia sign": "\u683c\u91cc\u592b\u5c3c\u4e9a\u7b26\u53f7", |
||||
|
"cedi sign": "\u585e\u5730\u7b26\u53f7", |
||||
|
"livre tournois sign": "\u91cc\u5f17\u5f17\u5c14\u7b26\u53f7", |
||||
|
"spesmilo sign": "spesmilo\u7b26\u53f7", |
||||
|
"tenge sign": "\u575a\u6208\u7b26\u53f7", |
||||
|
"indian rupee sign": "\u5370\u5ea6\u5362\u6bd4", |
||||
|
"turkish lira sign": "\u571f\u8033\u5176\u91cc\u62c9", |
||||
|
"nordic mark sign": "\u5317\u6b27\u9a6c\u514b", |
||||
|
"manat sign": "\u9a6c\u7eb3\u7279\u7b26\u53f7", |
||||
|
"ruble sign": "\u5362\u5e03\u7b26\u53f7", |
||||
|
"yen character": "\u65e5\u5143\u5b57\u6837", |
||||
|
"yuan character": "\u4eba\u6c11\u5e01\u5143\u5b57\u6837", |
||||
|
"yuan character, in hong kong and taiwan": "\u5143\u5b57\u6837\uff08\u6e2f\u53f0\u5730\u533a\uff09", |
||||
|
"yen\/yuan character variant one": "\u5143\u5b57\u6837\uff08\u5927\u5199\uff09", |
||||
|
"Loading emoticons...": "\u52a0\u8f7d\u8868\u60c5\u7b26\u53f7...", |
||||
|
"Could not load emoticons": "\u4e0d\u80fd\u52a0\u8f7d\u8868\u60c5\u7b26\u53f7", |
||||
|
"People": "\u4eba\u7c7b", |
||||
|
"Animals and Nature": "\u52a8\u7269\u548c\u81ea\u7136", |
||||
|
"Food and Drink": "\u98df\u7269\u548c\u996e\u54c1", |
||||
|
"Activity": "\u6d3b\u52a8", |
||||
|
"Travel and Places": "\u65c5\u6e38\u548c\u5730\u70b9", |
||||
|
"Objects": "\u7269\u4ef6", |
||||
|
"Flags": "\u65d7\u5e1c", |
||||
|
"Characters": "\u5b57\u7b26", |
||||
|
"Characters (no spaces)": "\u5b57\u7b26(\u65e0\u7a7a\u683c)", |
||||
|
"Error: Form submit field collision.": "\u9519\u8bef: \u8868\u5355\u63d0\u4ea4\u5b57\u6bb5\u51b2\u7a81\u3002", |
||||
|
"Error: No form element found.": "\u9519\u8bef: \u6ca1\u6709\u8868\u5355\u63a7\u4ef6\u3002", |
||||
|
"Update": "\u66f4\u65b0", |
||||
|
"Color swatch": "\u989c\u8272\u6837\u672c", |
||||
|
"Turquoise": "\u9752\u7eff\u8272", |
||||
|
"Green": "\u7eff\u8272", |
||||
|
"Blue": "\u84dd\u8272", |
||||
|
"Purple": "\u7d2b\u8272", |
||||
|
"Navy Blue": "\u6d77\u519b\u84dd", |
||||
|
"Dark Turquoise": "\u6df1\u84dd\u7eff\u8272", |
||||
|
"Dark Green": "\u6df1\u7eff\u8272", |
||||
|
"Medium Blue": "\u4e2d\u84dd\u8272", |
||||
|
"Medium Purple": "\u4e2d\u7d2b\u8272", |
||||
|
"Midnight Blue": "\u6df1\u84dd\u8272", |
||||
|
"Yellow": "\u9ec4\u8272", |
||||
|
"Orange": "\u6a59\u8272", |
||||
|
"Red": "\u7ea2\u8272", |
||||
|
"Light Gray": "\u6d45\u7070\u8272", |
||||
|
"Gray": "\u7070\u8272", |
||||
|
"Dark Yellow": "\u6697\u9ec4\u8272", |
||||
|
"Dark Orange": "\u6df1\u6a59\u8272", |
||||
|
"Dark Red": "\u6df1\u7ea2\u8272", |
||||
|
"Medium Gray": "\u4e2d\u7070\u8272", |
||||
|
"Dark Gray": "\u6df1\u7070\u8272", |
||||
|
"Black": "\u9ed1\u8272", |
||||
|
"White": "\u767d\u8272", |
||||
|
"Switch to or from fullscreen mode": "\u5207\u6362\u5168\u5c4f\u6a21\u5f0f", |
||||
|
"Open help dialog": "\u6253\u5f00\u5e2e\u52a9\u5bf9\u8bdd\u6846", |
||||
|
"history": "\u5386\u53f2", |
||||
|
"styles": "\u6837\u5f0f", |
||||
|
"formatting": "\u683c\u5f0f\u5316", |
||||
|
"alignment": "\u5bf9\u9f50", |
||||
|
"indentation": "\u7f29\u8fdb", |
||||
|
"permanent pen": "\u8bb0\u53f7\u7b14", |
||||
|
"comments": "\u5907\u6ce8", |
||||
|
"Anchor": "\u951a\u70b9", |
||||
|
"Special character": "\u7279\u6b8a\u7b26\u53f7", |
||||
|
"Code sample": "\u4ee3\u7801\u793a\u4f8b", |
||||
|
"Color": "\u989c\u8272", |
||||
|
"Emoticons": "\u8868\u60c5", |
||||
|
"Document properties": "\u6587\u6863\u5c5e\u6027", |
||||
|
"Image": "\u56fe\u7247", |
||||
|
"Insert link": "\u63d2\u5165\u94fe\u63a5", |
||||
|
"Target": "\u6253\u5f00\u65b9\u5f0f", |
||||
|
"Link": "\u94fe\u63a5", |
||||
|
"Poster": "\u5c01\u9762", |
||||
|
"Media": "\u5a92\u4f53", |
||||
|
"Print": "\u6253\u5370", |
||||
|
"Prev": "\u4e0a\u4e00\u4e2a", |
||||
|
"Find and replace": "\u67e5\u627e\u548c\u66ff\u6362", |
||||
|
"Whole words": "\u5168\u5b57\u5339\u914d", |
||||
|
"Spellcheck": "\u62fc\u5199\u68c0\u67e5", |
||||
|
"Caption": "\u6807\u9898", |
||||
|
"Insert template": "\u63d2\u5165\u6a21\u677f" |
||||
|
}); |
||||
@ -0,0 +1,239 @@ |
|||||
|
/** |
||||
|
* Copyright (c) Tiny Technologies, Inc. All rights reserved. |
||||
|
* Licensed under the LGPL or a commercial license. |
||||
|
* For LGPL see License.txt in the project root for license information. |
||||
|
* For commercial licenses see https://www.tiny.cloud/ |
||||
|
*/ |
||||
|
.mce-content-body .mce-item-anchor{display: inline-block;width: 8px !important;height: 12px !important;padding: 0 2px;cursor: default;background: transparent url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'8'%20height%3D'12'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20d%3D'M0%200L8%200%208%2012%204.09117821%209%200%2012z'%2F%3E%3C%2Fsvg%3E%0A") no-repeat center;-webkit-user-select: all;-moz-user-select: all;-ms-user-select: all;user-select: all;-webkit-user-modify: read-only;-moz-user-modify: read-only;} |
||||
|
|
||||
|
.mce-content-body .mce-item-anchor[data-mce-selected]{outline-offset: 1px;} |
||||
|
|
||||
|
.tox-comments-visible .tox-comment{background-color: #fff0b7;} |
||||
|
|
||||
|
.tox-comments-visible .tox-comment--active{background-color: #ffe168;} |
||||
|
|
||||
|
.tox-checklist>li:not(.tox-checklist--hidden){margin: .25em 0;list-style: none;} |
||||
|
|
||||
|
.tox-checklist>li:not(.tox-checklist--hidden)::before{position: absolute;width: 1em;height: 1em;margin-top: .125em;margin-left: -1.5em;cursor: pointer;background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cg%20id%3D%22checklist-unchecked%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Crect%20id%3D%22Rectangle%22%20width%3D%2215%22%20height%3D%2215%22%20x%3D%22.5%22%20y%3D%22.5%22%20fill-rule%3D%22nonzero%22%20stroke%3D%22%234C4C4C%22%20rx%3D%222%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%0A");background-size: 100%;content: '';} |
||||
|
|
||||
|
.tox-checklist li:not(.tox-checklist--hidden).tox-checklist--checked::before{background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cg%20id%3D%22checklist-checked%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Crect%20id%3D%22Rectangle%22%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22%234099FF%22%20fill-rule%3D%22nonzero%22%20rx%3D%222%22%2F%3E%3Cpath%20id%3D%22Path%22%20fill%3D%22%23FFF%22%20fill-rule%3D%22nonzero%22%20d%3D%22M11.5703186%2C3.14417309%20C11.8516238%2C2.73724603%2012.4164781%2C2.62829933%2012.83558%2C2.89774797%20C13.260121%2C3.17069355%2013.3759736%2C3.72932262%2013.0909105%2C4.14168582%20L7.7580587%2C11.8560195%20C7.43776896%2C12.3193404%206.76483983%2C12.3852142%206.35607322%2C11.9948725%20L3.02491697%2C8.8138662%20C2.66090143%2C8.46625845%202.65798871%2C7.89594698%203.01850234%2C7.54483354%20C3.373942%2C7.19866177%203.94940006%2C7.19592841%204.30829608%2C7.5386474%20L6.85276923%2C9.9684299%20L11.5703186%2C3.14417309%20Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%0A");} |
||||
|
|
||||
|
[dir=rtl] .tox-checklist>li:not(.tox-checklist--hidden)::before{margin-right: -1.5em;margin-left: 0;} |
||||
|
|
||||
|
code[class*=language-],pre[class*=language-]{font-family: Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size: .875rem;-webkit-hyphens: none;-ms-hyphens: none;hyphens: none;line-height: 1.5;word-spacing: normal;color: #000;text-shadow: 0 1px #fff;word-break: normal;word-wrap: normal;white-space: pre;-moz-tab-size: 4;tab-size: 4;} |
||||
|
|
||||
|
code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow: none;background: #b3d4fc;} |
||||
|
|
||||
|
code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow: none;background: #b3d4fc;}@media print{code[class*=language-],pre[class*=language-]{text-shadow: none;}} |
||||
|
|
||||
|
pre[class*=language-]{padding: 1em;margin: .5em 0;overflow: auto;} |
||||
|
|
||||
|
:not(pre)>code[class*=language-],pre[class*=language-]{background: 0 0 !important;border: 1px solid #ccc;} |
||||
|
|
||||
|
:not(pre)>code[class*=language-]{padding: .1em;border-radius: .3em;} |
||||
|
|
||||
|
.token.cdata,.token.comment,.token.doctype,.token.prolog{color: #708090;} |
||||
|
|
||||
|
.token.punctuation{color: #999;} |
||||
|
|
||||
|
.namespace{opacity: .7;} |
||||
|
|
||||
|
.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color: #905;} |
||||
|
|
||||
|
.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color: #690;} |
||||
|
|
||||
|
.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color: #a67f59;background: hsla(0,0%,100%,.5);} |
||||
|
|
||||
|
.token.atrule,.token.attr-value,.token.keyword{color: #07a;} |
||||
|
|
||||
|
.token.function{color: #dd4a68;} |
||||
|
|
||||
|
.token.important,.token.regex,.token.variable{color: #e90;} |
||||
|
|
||||
|
.token.bold,.token.important{font-weight: 700;} |
||||
|
|
||||
|
.token.italic{font-style: italic;} |
||||
|
|
||||
|
.token.entity{cursor: help;} |
||||
|
|
||||
|
:not([dir=rtl]) code[class*=language-],:not([dir=rtl]) pre[class*=language-]{text-align: left;direction: ltr;} |
||||
|
|
||||
|
[dir=rtl] code[class*=language-],[dir=rtl] pre[class*=language-]{text-align: right;direction: rtl;} |
||||
|
|
||||
|
.mce-content-body{overflow-wrap: break-word;word-wrap: break-word;} |
||||
|
|
||||
|
.mce-content-body .mce-visual-caret{position: absolute;background-color: #000;background-color: currentColor;} |
||||
|
|
||||
|
.mce-content-body .mce-visual-caret-hidden{display: none;} |
||||
|
|
||||
|
.mce-content-body [data-mce-caret]{position: absolute;top: 0;right: auto;left: -1000px;padding: 0;margin: 0;} |
||||
|
|
||||
|
.mce-content-body .mce-offscreen-selection{position: absolute;left: -9999999999px;max-width: 1000000px;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false]{cursor: default;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=true]{cursor: text;} |
||||
|
|
||||
|
.tox-cursor-format-painter{cursor: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%0A%20%20%3Cg%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%0A%20%20%20%20%3Cpath%20fill%3D%22%23000%22%20fill-rule%3D%22nonzero%22%20d%3D%22M15%2C6%20C15%2C5.45%2014.55%2C5%2014%2C5%20L6%2C5%20C5.45%2C5%205%2C5.45%205%2C6%20L5%2C10%20C5%2C10.55%205.45%2C11%206%2C11%20L14%2C11%20C14.55%2C11%2015%2C10.55%2015%2C10%20L15%2C9%20L16%2C9%20L16%2C12%20L9%2C12%20L9%2C19%20C9%2C19.55%209.45%2C20%2010%2C20%20L11%2C20%20C11.55%2C20%2012%2C19.55%2012%2C19%20L12%2C14%20L18%2C14%20L18%2C7%20L15%2C7%20L15%2C6%20Z%22%2F%3E%0A%20%20%20%20%3Cpath%20fill%3D%22%23000%22%20fill-rule%3D%22nonzero%22%20d%3D%22M1%2C1%20L8.25%2C1%20C8.66421356%2C1%209%2C1.33578644%209%2C1.75%20L9%2C1.75%20C9%2C2.16421356%208.66421356%2C2.5%208.25%2C2.5%20L2.5%2C2.5%20L2.5%2C8.25%20C2.5%2C8.66421356%202.16421356%2C9%201.75%2C9%20L1.75%2C9%20C1.33578644%2C9%201%2C8.66421356%201%2C8.25%20L1%2C1%20Z%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A"),default;} |
||||
|
|
||||
|
.mce-content-body figure.align-left{float: left;} |
||||
|
|
||||
|
.mce-content-body figure.align-right{float: right;} |
||||
|
|
||||
|
.mce-content-body figure.image.align-center{display: table;margin-right: auto;margin-left: auto;} |
||||
|
|
||||
|
.mce-preview-object{position: relative;display: inline-block;margin: 0 2px 0 2px;line-height: 0;border: 1px solid gray;} |
||||
|
|
||||
|
.mce-preview-object .mce-shim{position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);} |
||||
|
|
||||
|
.mce-preview-object[data-mce-selected="2"] .mce-shim{display: none;} |
||||
|
|
||||
|
.mce-object{background: transparent url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M4%203h16a1%201%200%200%201%201%201v16a1%201%200%200%201-1%201H4a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1zm1%202v14h14V5H5zm4.79%202.565l5.64%204.028a.5.5%200%200%201%200%20.814l-5.64%204.028a.5.5%200%200%201-.79-.407V7.972a.5.5%200%200%201%20.79-.407z%22%2F%3E%3C%2Fsvg%3E%0A") no-repeat center;border: 1px dashed #aaa;} |
||||
|
|
||||
|
.mce-pagebreak{display: block;width: 100%;height: 5px;margin-top: 15px;cursor: default;border: 1px dashed #aaa;page-break-before: always;}@media print{.mce-pagebreak{border: 0;}} |
||||
|
|
||||
|
.tiny-pageembed .mce-shim{position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);} |
||||
|
|
||||
|
.tiny-pageembed[data-mce-selected="2"] .mce-shim{display: none;} |
||||
|
|
||||
|
.tiny-pageembed{position: relative;display: inline-block;} |
||||
|
|
||||
|
.tiny-pageembed--16by9,.tiny-pageembed--1by1,.tiny-pageembed--21by9,.tiny-pageembed--4by3{position: relative;display: block;width: 100%;padding: 0;overflow: hidden;} |
||||
|
|
||||
|
.tiny-pageembed--16by9::before,.tiny-pageembed--1by1::before,.tiny-pageembed--21by9::before,.tiny-pageembed--4by3::before{display: block;content: "";} |
||||
|
|
||||
|
.tiny-pageembed--21by9::before{padding-top: 42.857143%;} |
||||
|
|
||||
|
.tiny-pageembed--16by9::before{padding-top: 56.25%;} |
||||
|
|
||||
|
.tiny-pageembed--4by3::before{padding-top: 75%;} |
||||
|
|
||||
|
.tiny-pageembed--1by1::before{padding-top: 100%;} |
||||
|
|
||||
|
.tiny-pageembed--16by9 iframe,.tiny-pageembed--1by1 iframe,.tiny-pageembed--21by9 iframe,.tiny-pageembed--4by3 iframe{position: absolute;top: 0;left: 0;width: 100%;height: 100%;border: 0;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle{position: absolute;z-index: 10000;width: 10px;height: 10px;background-color: #4099ff;border-color: #4099ff;border-style: solid;border-width: 1px;box-sizing: border-box;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:hover{background-color: #4099ff;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(1){cursor: nwse-resize;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(2){cursor: nesw-resize;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(3){cursor: nwse-resize;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(4){cursor: nesw-resize;} |
||||
|
|
||||
|
.mce-content-body .mce-clonedresizable{position: absolute;z-index: 10000;outline: 1px dashed #000;opacity: .5;} |
||||
|
|
||||
|
.mce-content-body .mce-resize-helper{position: absolute;z-index: 10001;display: none;padding: 5px;margin: 5px 10px;font-family: sans-serif;font-size: 12px;line-height: 14px;color: #fff;white-space: nowrap;background: #555;background: rgba(0,0,0,.75);border: 1px;border-radius: 3px;} |
||||
|
|
||||
|
.mce-match-marker{color: #fff;background: #aaa;} |
||||
|
|
||||
|
.mce-match-marker-selected{color: #fff;background: #39f;} |
||||
|
|
||||
|
.mce-content-body img[data-mce-selected],.mce-content-body table[data-mce-selected]{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body hr[data-mce-selected]{outline: 3px solid #b4d7ff;outline-offset: 1px;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false] [contentEditable=true]:focus{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false] [contentEditable=true]:hover{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false][data-mce-selected]{cursor: not-allowed;outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body.mce-content-readonly [contentEditable=true]:focus,.mce-content-body.mce-content-readonly [contentEditable=true]:hover{outline: 0;} |
||||
|
|
||||
|
.mce-content-body [data-mce-selected=inline-boundary]{background-color: #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body .mce-edit-focus{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected],.mce-content-body th[data-mce-selected]{background-color: #b4d7ff !important;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected]::-moz-selection,.mce-content-body th[data-mce-selected]::-moz-selection{background: 0 0;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected]::selection,.mce-content-body th[data-mce-selected]::selection{background: 0 0;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected] *,.mce-content-body th[data-mce-selected] *{-webkit-touch-callout: none;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;} |
||||
|
|
||||
|
.mce-content-body img::-moz-selection{background: 0 0;} |
||||
|
|
||||
|
.mce-content-body img::selection{background: 0 0;} |
||||
|
|
||||
|
.ephox-snooker-resizer-bar{background-color: #b4d7ff;opacity: 0;} |
||||
|
|
||||
|
.ephox-snooker-resizer-cols{cursor: col-resize;} |
||||
|
|
||||
|
.ephox-snooker-resizer-rows{cursor: row-resize;} |
||||
|
|
||||
|
.ephox-snooker-resizer-bar.ephox-snooker-resizer-bar-dragging{opacity: 1;} |
||||
|
|
||||
|
.mce-spellchecker-word{height: 2rem;cursor: default;background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'4'%20height%3D'4'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20stroke%3D'%23ff0000'%20fill%3D'none'%20stroke-linecap%3D'round'%20stroke-opacity%3D'.5'%20d%3D'M0%203L2%201%204%203'%2F%3E%3C%2Fsvg%3E%0A");background-position: 0 calc(100% + 1px);background-repeat: repeat-x;background-size: auto 6px;} |
||||
|
|
||||
|
.mce-spellchecker-grammar{cursor: default;background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'4'%20height%3D'4'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20stroke%3D'%23008800'%20fill%3D'none'%20stroke-linecap%3D'round'%20d%3D'M0%203L2%201%204%203'%2F%3E%3C%2Fsvg%3E%0A");background-position: 0 calc(100% + 1px);background-repeat: repeat-x;background-size: auto 6px;} |
||||
|
|
||||
|
.mce-toc{border: 1px solid gray;} |
||||
|
|
||||
|
.mce-toc h2{margin: 4px;} |
||||
|
|
||||
|
.mce-toc li{list-style-type: none;} |
||||
|
|
||||
|
.mce-item-table,.mce-item-table caption,.mce-item-table td,.mce-item-table th{border: 1px dashed #bbb;} |
||||
|
|
||||
|
.mce-visualblocks address,.mce-visualblocks article,.mce-visualblocks aside,.mce-visualblocks blockquote,.mce-visualblocks div:not([data-mce-bogus]),.mce-visualblocks dl,.mce-visualblocks figcaption,.mce-visualblocks figure,.mce-visualblocks h1,.mce-visualblocks h2,.mce-visualblocks h3,.mce-visualblocks h4,.mce-visualblocks h5,.mce-visualblocks h6,.mce-visualblocks hgroup,.mce-visualblocks ol,.mce-visualblocks p,.mce-visualblocks pre,.mce-visualblocks section,.mce-visualblocks ul{padding-top: 10px;margin-left: 3px;background-repeat: no-repeat;border: 1px dashed #bbb;} |
||||
|
|
||||
|
.mce-visualblocks p{background-image: url(data:image/gif;base64,R0lGODlhCQAJAJEAAAAAAP///7u7u////yH5BAEAAAMALAAAAAAJAAkAAAIQnG+CqCN/mlyvsRUpThG6AgA7);} |
||||
|
|
||||
|
.mce-visualblocks h1{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybGu1JuxHoAfRNRW3TWXyF2YiRUAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h2{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8Hybbx4oOuqgTynJd6bGlWg3DkJzoaUAAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h3{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIZjI8Hybbx4oOuqgTynJf2Ln2NOHpQpmhAAQA7);} |
||||
|
|
||||
|
.mce-visualblocks h4{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxInR0zqeAdhtJlXwV1oCll2HaWgAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h5{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxIoiuwjane4iq5GlW05GgIkIZUAAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h6{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxIoiuwjan04jep1iZ1XRlAo5bVgAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks div:not([data-mce-bogus]){background-image: url(data:image/gif;base64,R0lGODlhEgAKAIABALu7u////yH5BAEAAAEALAAAAAASAAoAAAIfjI9poI0cgDywrhuxfbrzDEbQM2Ei5aRjmoySW4pAAQA7);} |
||||
|
|
||||
|
.mce-visualblocks section{background-image: url(data:image/gif;base64,R0lGODlhKAAKAIABALu7u////yH5BAEAAAEALAAAAAAoAAoAAAI5jI+pywcNY3sBWHdNrplytD2ellDeSVbp+GmWqaDqDMepc8t17Y4vBsK5hDyJMcI6KkuYU+jpjLoKADs=);} |
||||
|
|
||||
|
.mce-visualblocks article{background-image: url(data:image/gif;base64,R0lGODlhKgAKAIABALu7u////yH5BAEAAAEALAAAAAAqAAoAAAI6jI+pywkNY3wG0GBvrsd2tXGYSGnfiF7ikpXemTpOiJScasYoDJJrjsG9gkCJ0ag6KhmaIe3pjDYBBQA7);} |
||||
|
|
||||
|
.mce-visualblocks blockquote{background-image: url(data:image/gif;base64,R0lGODlhPgAKAIABALu7u////yH5BAEAAAEALAAAAAA+AAoAAAJPjI+py+0Knpz0xQDyuUhvfoGgIX5iSKZYgq5uNL5q69asZ8s5rrf0yZmpNkJZzFesBTu8TOlDVAabUyatguVhWduud3EyiUk45xhTTgMBBQA7);} |
||||
|
|
||||
|
.mce-visualblocks address{background-image: url(data:image/gif;base64,R0lGODlhLQAKAIABALu7u////yH5BAEAAAEALAAAAAAtAAoAAAI/jI+pywwNozSP1gDyyZcjb3UaRpXkWaXmZW4OqKLhBmLs+K263DkJK7OJeifh7FicKD9A1/IpGdKkyFpNmCkAADs=);} |
||||
|
|
||||
|
.mce-visualblocks pre{background-image: url(data:image/gif;base64,R0lGODlhFQAKAIABALu7uwAAACH5BAEAAAEALAAAAAAVAAoAAAIjjI+ZoN0cgDwSmnpz1NCueYERhnibZVKLNnbOq8IvKpJtVQAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks figure{background-image: url(data:image/gif;base64,R0lGODlhJAAKAIAAALu7u////yH5BAEAAAEALAAAAAAkAAoAAAI0jI+py+2fwAHUSFvD3RlvG4HIp4nX5JFSpnZUJ6LlrM52OE7uSWosBHScgkSZj7dDKnWAAgA7);} |
||||
|
|
||||
|
.mce-visualblocks figcaption{border: 1px dashed #bbb;} |
||||
|
|
||||
|
.mce-visualblocks hgroup{background-image: url(data:image/gif;base64,R0lGODlhJwAKAIABALu7uwAAACH5BAEAAAEALAAAAAAnAAoAAAI3jI+pywYNI3uB0gpsRtt5fFnfNZaVSYJil4Wo03Hv6Z62uOCgiXH1kZIIJ8NiIxRrAZNMZAtQAAA7);} |
||||
|
|
||||
|
.mce-visualblocks aside{background-image: url(data:image/gif;base64,R0lGODlhHgAKAIABAKqqqv///yH5BAEAAAEALAAAAAAeAAoAAAItjI+pG8APjZOTzgtqy7I3f1yehmQcFY4WKZbqByutmW4aHUd6vfcVbgudgpYCADs=);} |
||||
|
|
||||
|
.mce-visualblocks ul{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIAAALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybGuYnqUVSjvw26DzzXiqIDlVwAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks ol{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybH6HHt0qourxC6CvzXieHyeWQAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks dl{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybEOnmOvUoWznTqeuEjNSCqeGRUAOw==);} |
||||
|
|
||||
|
.mce-visualblocks:not([dir=rtl]) address,.mce-visualblocks:not([dir=rtl]) article,.mce-visualblocks:not([dir=rtl]) aside,.mce-visualblocks:not([dir=rtl]) blockquote,.mce-visualblocks:not([dir=rtl]) div:not([data-mce-bogus]),.mce-visualblocks:not([dir=rtl]) dl,.mce-visualblocks:not([dir=rtl]) figcaption,.mce-visualblocks:not([dir=rtl]) figure,.mce-visualblocks:not([dir=rtl]) h1,.mce-visualblocks:not([dir=rtl]) h2,.mce-visualblocks:not([dir=rtl]) h3,.mce-visualblocks:not([dir=rtl]) h4,.mce-visualblocks:not([dir=rtl]) h5,.mce-visualblocks:not([dir=rtl]) h6,.mce-visualblocks:not([dir=rtl]) hgroup,.mce-visualblocks:not([dir=rtl]) ol,.mce-visualblocks:not([dir=rtl]) p,.mce-visualblocks:not([dir=rtl]) pre,.mce-visualblocks:not([dir=rtl]) section,.mce-visualblocks:not([dir=rtl]) ul{margin-left: 3px;} |
||||
|
|
||||
|
.mce-visualblocks[dir=rtl] address,.mce-visualblocks[dir=rtl] article,.mce-visualblocks[dir=rtl] aside,.mce-visualblocks[dir=rtl] blockquote,.mce-visualblocks[dir=rtl] div:not([data-mce-bogus]),.mce-visualblocks[dir=rtl] dl,.mce-visualblocks[dir=rtl] figcaption,.mce-visualblocks[dir=rtl] figure,.mce-visualblocks[dir=rtl] h1,.mce-visualblocks[dir=rtl] h2,.mce-visualblocks[dir=rtl] h3,.mce-visualblocks[dir=rtl] h4,.mce-visualblocks[dir=rtl] h5,.mce-visualblocks[dir=rtl] h6,.mce-visualblocks[dir=rtl] hgroup,.mce-visualblocks[dir=rtl] ol,.mce-visualblocks[dir=rtl] p,.mce-visualblocks[dir=rtl] pre,.mce-visualblocks[dir=rtl] section,.mce-visualblocks[dir=rtl] ul{background-position-x: right;margin-right: 3px;} |
||||
|
|
||||
|
.mce-nbsp,.mce-shy{background: #aaa;} |
||||
|
|
||||
|
.mce-shy::after{content: '-';} |
||||
|
|
||||
|
.tox-toolbar-dock-fadeout{opacity: 0;visibility: hidden;} |
||||
|
|
||||
|
.tox-toolbar-dock-fadein{opacity: 1;visibility: visible;} |
||||
|
|
||||
|
.tox-toolbar-dock-transition{transition: visibility 0s linear .3s,opacity .3s ease;} |
||||
|
|
||||
|
.tox-toolbar-dock-transition.tox-toolbar-dock-fadein{transition-delay: 0s;} |
||||
@ -0,0 +1,235 @@ |
|||||
|
/** |
||||
|
* Copyright (c) Tiny Technologies, Inc. All rights reserved. |
||||
|
* Licensed under the LGPL or a commercial license. |
||||
|
* For LGPL see License.txt in the project root for license information. |
||||
|
* For commercial licenses see https://www.tiny.cloud/ |
||||
|
*/ |
||||
|
.mce-content-body .mce-item-anchor{display: inline-block;width: 8px !important;height: 12px !important;padding: 0 2px;cursor: default;background: transparent url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'8'%20height%3D'12'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20d%3D'M0%200L8%200%208%2012%204.09117821%209%200%2012z'%2F%3E%3C%2Fsvg%3E%0A") no-repeat center;-webkit-user-select: all;-moz-user-select: all;-ms-user-select: all;user-select: all;-webkit-user-modify: read-only;-moz-user-modify: read-only;} |
||||
|
|
||||
|
.mce-content-body .mce-item-anchor[data-mce-selected]{outline-offset: 1px;} |
||||
|
|
||||
|
.tox-comments-visible .tox-comment{background-color: #fff0b7;} |
||||
|
|
||||
|
.tox-comments-visible .tox-comment--active{background-color: #ffe168;} |
||||
|
|
||||
|
.tox-checklist>li:not(.tox-checklist--hidden){margin: .25em 0;list-style: none;} |
||||
|
|
||||
|
.tox-checklist>li:not(.tox-checklist--hidden)::before{position: absolute;width: 1em;height: 1em;margin-top: .125em;margin-left: -1.5em;cursor: pointer;background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cg%20id%3D%22checklist-unchecked%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Crect%20id%3D%22Rectangle%22%20width%3D%2215%22%20height%3D%2215%22%20x%3D%22.5%22%20y%3D%22.5%22%20fill-rule%3D%22nonzero%22%20stroke%3D%22%234C4C4C%22%20rx%3D%222%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%0A");background-size: 100%;content: '';} |
||||
|
|
||||
|
.tox-checklist li:not(.tox-checklist--hidden).tox-checklist--checked::before{background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cg%20id%3D%22checklist-checked%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Crect%20id%3D%22Rectangle%22%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22%234099FF%22%20fill-rule%3D%22nonzero%22%20rx%3D%222%22%2F%3E%3Cpath%20id%3D%22Path%22%20fill%3D%22%23FFF%22%20fill-rule%3D%22nonzero%22%20d%3D%22M11.5703186%2C3.14417309%20C11.8516238%2C2.73724603%2012.4164781%2C2.62829933%2012.83558%2C2.89774797%20C13.260121%2C3.17069355%2013.3759736%2C3.72932262%2013.0909105%2C4.14168582%20L7.7580587%2C11.8560195%20C7.43776896%2C12.3193404%206.76483983%2C12.3852142%206.35607322%2C11.9948725%20L3.02491697%2C8.8138662%20C2.66090143%2C8.46625845%202.65798871%2C7.89594698%203.01850234%2C7.54483354%20C3.373942%2C7.19866177%203.94940006%2C7.19592841%204.30829608%2C7.5386474%20L6.85276923%2C9.9684299%20L11.5703186%2C3.14417309%20Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%0A");} |
||||
|
|
||||
|
[dir=rtl] .tox-checklist>li:not(.tox-checklist--hidden)::before{margin-right: -1.5em;margin-left: 0;} |
||||
|
|
||||
|
code[class*=language-],pre[class*=language-]{font-family: Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size: .875rem;-webkit-hyphens: none;-ms-hyphens: none;hyphens: none;line-height: 1.5;word-spacing: normal;color: #000;text-shadow: 0 1px #fff;word-break: normal;word-wrap: normal;white-space: pre;-moz-tab-size: 4;tab-size: 4;} |
||||
|
|
||||
|
code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow: none;background: #b3d4fc;} |
||||
|
|
||||
|
code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow: none;background: #b3d4fc;}@media print{code[class*=language-],pre[class*=language-]{text-shadow: none;}} |
||||
|
|
||||
|
pre[class*=language-]{padding: 1em;margin: .5em 0;overflow: auto;} |
||||
|
|
||||
|
:not(pre)>code[class*=language-],pre[class*=language-]{background: 0 0 !important;border: 1px solid #ccc;} |
||||
|
|
||||
|
:not(pre)>code[class*=language-]{padding: .1em;border-radius: .3em;} |
||||
|
|
||||
|
.token.cdata,.token.comment,.token.doctype,.token.prolog{color: #708090;} |
||||
|
|
||||
|
.token.punctuation{color: #999;} |
||||
|
|
||||
|
.namespace{opacity: .7;} |
||||
|
|
||||
|
.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color: #905;} |
||||
|
|
||||
|
.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color: #690;} |
||||
|
|
||||
|
.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color: #a67f59;background: hsla(0,0%,100%,.5);} |
||||
|
|
||||
|
.token.atrule,.token.attr-value,.token.keyword{color: #07a;} |
||||
|
|
||||
|
.token.function{color: #dd4a68;} |
||||
|
|
||||
|
.token.important,.token.regex,.token.variable{color: #e90;} |
||||
|
|
||||
|
.token.bold,.token.important{font-weight: 700;} |
||||
|
|
||||
|
.token.italic{font-style: italic;} |
||||
|
|
||||
|
.token.entity{cursor: help;} |
||||
|
|
||||
|
:not([dir=rtl]) code[class*=language-],:not([dir=rtl]) pre[class*=language-]{text-align: left;direction: ltr;} |
||||
|
|
||||
|
[dir=rtl] code[class*=language-],[dir=rtl] pre[class*=language-]{text-align: right;direction: rtl;} |
||||
|
|
||||
|
.mce-content-body{overflow-wrap: break-word;word-wrap: break-word;} |
||||
|
|
||||
|
.mce-content-body .mce-visual-caret{position: absolute;background-color: #000;background-color: currentColor;} |
||||
|
|
||||
|
.mce-content-body .mce-visual-caret-hidden{display: none;} |
||||
|
|
||||
|
.mce-content-body [data-mce-caret]{position: absolute;top: 0;right: auto;left: -1000px;padding: 0;margin: 0;} |
||||
|
|
||||
|
.mce-content-body .mce-offscreen-selection{position: absolute;left: -9999999999px;max-width: 1000000px;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false]{cursor: default;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=true]{cursor: text;} |
||||
|
|
||||
|
.tox-cursor-format-painter{cursor: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%0A%20%20%3Cg%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%0A%20%20%20%20%3Cpath%20fill%3D%22%23000%22%20fill-rule%3D%22nonzero%22%20d%3D%22M15%2C6%20C15%2C5.45%2014.55%2C5%2014%2C5%20L6%2C5%20C5.45%2C5%205%2C5.45%205%2C6%20L5%2C10%20C5%2C10.55%205.45%2C11%206%2C11%20L14%2C11%20C14.55%2C11%2015%2C10.55%2015%2C10%20L15%2C9%20L16%2C9%20L16%2C12%20L9%2C12%20L9%2C19%20C9%2C19.55%209.45%2C20%2010%2C20%20L11%2C20%20C11.55%2C20%2012%2C19.55%2012%2C19%20L12%2C14%20L18%2C14%20L18%2C7%20L15%2C7%20L15%2C6%20Z%22%2F%3E%0A%20%20%20%20%3Cpath%20fill%3D%22%23000%22%20fill-rule%3D%22nonzero%22%20d%3D%22M1%2C1%20L8.25%2C1%20C8.66421356%2C1%209%2C1.33578644%209%2C1.75%20L9%2C1.75%20C9%2C2.16421356%208.66421356%2C2.5%208.25%2C2.5%20L2.5%2C2.5%20L2.5%2C8.25%20C2.5%2C8.66421356%202.16421356%2C9%201.75%2C9%20L1.75%2C9%20C1.33578644%2C9%201%2C8.66421356%201%2C8.25%20L1%2C1%20Z%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A"),default;} |
||||
|
|
||||
|
.mce-content-body figure.align-left{float: left;} |
||||
|
|
||||
|
.mce-content-body figure.align-right{float: right;} |
||||
|
|
||||
|
.mce-content-body figure.image.align-center{display: table;margin-right: auto;margin-left: auto;} |
||||
|
|
||||
|
.mce-preview-object{position: relative;display: inline-block;margin: 0 2px 0 2px;line-height: 0;border: 1px solid gray;} |
||||
|
|
||||
|
.mce-preview-object .mce-shim{position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);} |
||||
|
|
||||
|
.mce-preview-object[data-mce-selected="2"] .mce-shim{display: none;} |
||||
|
|
||||
|
.mce-object{background: transparent url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M4%203h16a1%201%200%200%201%201%201v16a1%201%200%200%201-1%201H4a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1zm1%202v14h14V5H5zm4.79%202.565l5.64%204.028a.5.5%200%200%201%200%20.814l-5.64%204.028a.5.5%200%200%201-.79-.407V7.972a.5.5%200%200%201%20.79-.407z%22%2F%3E%3C%2Fsvg%3E%0A") no-repeat center;border: 1px dashed #aaa;} |
||||
|
|
||||
|
.mce-pagebreak{display: block;width: 100%;height: 5px;margin-top: 15px;cursor: default;border: 1px dashed #aaa;page-break-before: always;}@media print{.mce-pagebreak{border: 0;}} |
||||
|
|
||||
|
.tiny-pageembed .mce-shim{position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);} |
||||
|
|
||||
|
.tiny-pageembed[data-mce-selected="2"] .mce-shim{display: none;} |
||||
|
|
||||
|
.tiny-pageembed{position: relative;display: inline-block;} |
||||
|
|
||||
|
.tiny-pageembed--16by9,.tiny-pageembed--1by1,.tiny-pageembed--21by9,.tiny-pageembed--4by3{position: relative;display: block;width: 100%;padding: 0;overflow: hidden;} |
||||
|
|
||||
|
.tiny-pageembed--16by9::before,.tiny-pageembed--1by1::before,.tiny-pageembed--21by9::before,.tiny-pageembed--4by3::before{display: block;content: "";} |
||||
|
|
||||
|
.tiny-pageembed--21by9::before{padding-top: 42.857143%;} |
||||
|
|
||||
|
.tiny-pageembed--16by9::before{padding-top: 56.25%;} |
||||
|
|
||||
|
.tiny-pageembed--4by3::before{padding-top: 75%;} |
||||
|
|
||||
|
.tiny-pageembed--1by1::before{padding-top: 100%;} |
||||
|
|
||||
|
.tiny-pageembed--16by9 iframe,.tiny-pageembed--1by1 iframe,.tiny-pageembed--21by9 iframe,.tiny-pageembed--4by3 iframe{position: absolute;top: 0;left: 0;width: 100%;height: 100%;border: 0;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle{position: absolute;z-index: 10000;width: 10px;height: 10px;background-color: #4099ff;border-color: #4099ff;border-style: solid;border-width: 1px;box-sizing: border-box;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:hover{background-color: #4099ff;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(1){cursor: nwse-resize;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(2){cursor: nesw-resize;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(3){cursor: nwse-resize;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(4){cursor: nesw-resize;} |
||||
|
|
||||
|
.mce-content-body .mce-clonedresizable{position: absolute;z-index: 10000;outline: 1px dashed #000;opacity: .5;} |
||||
|
|
||||
|
.mce-content-body .mce-resize-helper{position: absolute;z-index: 10001;display: none;padding: 5px;margin: 5px 10px;font-family: sans-serif;font-size: 12px;line-height: 14px;color: #fff;white-space: nowrap;background: #555;background: rgba(0,0,0,.75);border: 1px;border-radius: 3px;} |
||||
|
|
||||
|
.mce-match-marker{color: #fff;background: #aaa;} |
||||
|
|
||||
|
.mce-match-marker-selected{color: #fff;background: #39f;} |
||||
|
|
||||
|
.mce-content-body img[data-mce-selected],.mce-content-body table[data-mce-selected]{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body hr[data-mce-selected]{outline: 3px solid #b4d7ff;outline-offset: 1px;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false] [contentEditable=true]:focus{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false] [contentEditable=true]:hover{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false][data-mce-selected]{cursor: not-allowed;outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body.mce-content-readonly [contentEditable=true]:focus,.mce-content-body.mce-content-readonly [contentEditable=true]:hover{outline: 0;} |
||||
|
|
||||
|
.mce-content-body [data-mce-selected=inline-boundary]{background-color: #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body .mce-edit-focus{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected],.mce-content-body th[data-mce-selected]{background-color: #b4d7ff !important;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected]::-moz-selection,.mce-content-body th[data-mce-selected]::-moz-selection{background: 0 0;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected]::selection,.mce-content-body th[data-mce-selected]::selection{background: 0 0;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected] *,.mce-content-body th[data-mce-selected] *{-webkit-touch-callout: none;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;} |
||||
|
|
||||
|
.mce-content-body img::-moz-selection{background: 0 0;} |
||||
|
|
||||
|
.mce-content-body img::selection{background: 0 0;} |
||||
|
|
||||
|
.ephox-snooker-resizer-bar{background-color: #b4d7ff;opacity: 0;} |
||||
|
|
||||
|
.ephox-snooker-resizer-cols{cursor: col-resize;} |
||||
|
|
||||
|
.ephox-snooker-resizer-rows{cursor: row-resize;} |
||||
|
|
||||
|
.ephox-snooker-resizer-bar.ephox-snooker-resizer-bar-dragging{opacity: 1;} |
||||
|
|
||||
|
.mce-spellchecker-word{height: 2rem;cursor: default;background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'4'%20height%3D'4'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20stroke%3D'%23ff0000'%20fill%3D'none'%20stroke-linecap%3D'round'%20stroke-opacity%3D'.5'%20d%3D'M0%203L2%201%204%203'%2F%3E%3C%2Fsvg%3E%0A");background-position: 0 calc(100% + 1px);background-repeat: repeat-x;background-size: auto 6px;} |
||||
|
|
||||
|
.mce-spellchecker-grammar{cursor: default;background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'4'%20height%3D'4'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20stroke%3D'%23008800'%20fill%3D'none'%20stroke-linecap%3D'round'%20d%3D'M0%203L2%201%204%203'%2F%3E%3C%2Fsvg%3E%0A");background-position: 0 calc(100% + 1px);background-repeat: repeat-x;background-size: auto 6px;} |
||||
|
|
||||
|
.mce-toc{border: 1px solid gray;} |
||||
|
|
||||
|
.mce-toc h2{margin: 4px;} |
||||
|
|
||||
|
.mce-toc li{list-style-type: none;} |
||||
|
|
||||
|
.mce-item-table,.mce-item-table caption,.mce-item-table td,.mce-item-table th{border: 1px dashed #bbb;} |
||||
|
|
||||
|
.mce-visualblocks address,.mce-visualblocks article,.mce-visualblocks aside,.mce-visualblocks blockquote,.mce-visualblocks div:not([data-mce-bogus]),.mce-visualblocks dl,.mce-visualblocks figcaption,.mce-visualblocks figure,.mce-visualblocks h1,.mce-visualblocks h2,.mce-visualblocks h3,.mce-visualblocks h4,.mce-visualblocks h5,.mce-visualblocks h6,.mce-visualblocks hgroup,.mce-visualblocks ol,.mce-visualblocks p,.mce-visualblocks pre,.mce-visualblocks section,.mce-visualblocks ul{padding-top: 10px;margin-left: 3px;background-repeat: no-repeat;border: 1px dashed #bbb;} |
||||
|
|
||||
|
.mce-visualblocks p{background-image: url(data:image/gif;base64,R0lGODlhCQAJAJEAAAAAAP///7u7u////yH5BAEAAAMALAAAAAAJAAkAAAIQnG+CqCN/mlyvsRUpThG6AgA7);} |
||||
|
|
||||
|
.mce-visualblocks h1{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybGu1JuxHoAfRNRW3TWXyF2YiRUAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h2{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8Hybbx4oOuqgTynJd6bGlWg3DkJzoaUAAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h3{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIZjI8Hybbx4oOuqgTynJf2Ln2NOHpQpmhAAQA7);} |
||||
|
|
||||
|
.mce-visualblocks h4{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxInR0zqeAdhtJlXwV1oCll2HaWgAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h5{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxIoiuwjane4iq5GlW05GgIkIZUAAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h6{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxIoiuwjan04jep1iZ1XRlAo5bVgAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks div:not([data-mce-bogus]){background-image: url(data:image/gif;base64,R0lGODlhEgAKAIABALu7u////yH5BAEAAAEALAAAAAASAAoAAAIfjI9poI0cgDywrhuxfbrzDEbQM2Ei5aRjmoySW4pAAQA7);} |
||||
|
|
||||
|
.mce-visualblocks section{background-image: url(data:image/gif;base64,R0lGODlhKAAKAIABALu7u////yH5BAEAAAEALAAAAAAoAAoAAAI5jI+pywcNY3sBWHdNrplytD2ellDeSVbp+GmWqaDqDMepc8t17Y4vBsK5hDyJMcI6KkuYU+jpjLoKADs=);} |
||||
|
|
||||
|
.mce-visualblocks article{background-image: url(data:image/gif;base64,R0lGODlhKgAKAIABALu7u////yH5BAEAAAEALAAAAAAqAAoAAAI6jI+pywkNY3wG0GBvrsd2tXGYSGnfiF7ikpXemTpOiJScasYoDJJrjsG9gkCJ0ag6KhmaIe3pjDYBBQA7);} |
||||
|
|
||||
|
.mce-visualblocks blockquote{background-image: url(data:image/gif;base64,R0lGODlhPgAKAIABALu7u////yH5BAEAAAEALAAAAAA+AAoAAAJPjI+py+0Knpz0xQDyuUhvfoGgIX5iSKZYgq5uNL5q69asZ8s5rrf0yZmpNkJZzFesBTu8TOlDVAabUyatguVhWduud3EyiUk45xhTTgMBBQA7);} |
||||
|
|
||||
|
.mce-visualblocks address{background-image: url(data:image/gif;base64,R0lGODlhLQAKAIABALu7u////yH5BAEAAAEALAAAAAAtAAoAAAI/jI+pywwNozSP1gDyyZcjb3UaRpXkWaXmZW4OqKLhBmLs+K263DkJK7OJeifh7FicKD9A1/IpGdKkyFpNmCkAADs=);} |
||||
|
|
||||
|
.mce-visualblocks pre{background-image: url(data:image/gif;base64,R0lGODlhFQAKAIABALu7uwAAACH5BAEAAAEALAAAAAAVAAoAAAIjjI+ZoN0cgDwSmnpz1NCueYERhnibZVKLNnbOq8IvKpJtVQAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks figure{background-image: url(data:image/gif;base64,R0lGODlhJAAKAIAAALu7u////yH5BAEAAAEALAAAAAAkAAoAAAI0jI+py+2fwAHUSFvD3RlvG4HIp4nX5JFSpnZUJ6LlrM52OE7uSWosBHScgkSZj7dDKnWAAgA7);} |
||||
|
|
||||
|
.mce-visualblocks figcaption{border: 1px dashed #bbb;} |
||||
|
|
||||
|
.mce-visualblocks hgroup{background-image: url(data:image/gif;base64,R0lGODlhJwAKAIABALu7uwAAACH5BAEAAAEALAAAAAAnAAoAAAI3jI+pywYNI3uB0gpsRtt5fFnfNZaVSYJil4Wo03Hv6Z62uOCgiXH1kZIIJ8NiIxRrAZNMZAtQAAA7);} |
||||
|
|
||||
|
.mce-visualblocks aside{background-image: url(data:image/gif;base64,R0lGODlhHgAKAIABAKqqqv///yH5BAEAAAEALAAAAAAeAAoAAAItjI+pG8APjZOTzgtqy7I3f1yehmQcFY4WKZbqByutmW4aHUd6vfcVbgudgpYCADs=);} |
||||
|
|
||||
|
.mce-visualblocks ul{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIAAALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybGuYnqUVSjvw26DzzXiqIDlVwAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks ol{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybH6HHt0qourxC6CvzXieHyeWQAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks dl{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybEOnmOvUoWznTqeuEjNSCqeGRUAOw==);} |
||||
|
|
||||
|
.mce-visualblocks:not([dir=rtl]) address,.mce-visualblocks:not([dir=rtl]) article,.mce-visualblocks:not([dir=rtl]) aside,.mce-visualblocks:not([dir=rtl]) blockquote,.mce-visualblocks:not([dir=rtl]) div:not([data-mce-bogus]),.mce-visualblocks:not([dir=rtl]) dl,.mce-visualblocks:not([dir=rtl]) figcaption,.mce-visualblocks:not([dir=rtl]) figure,.mce-visualblocks:not([dir=rtl]) h1,.mce-visualblocks:not([dir=rtl]) h2,.mce-visualblocks:not([dir=rtl]) h3,.mce-visualblocks:not([dir=rtl]) h4,.mce-visualblocks:not([dir=rtl]) h5,.mce-visualblocks:not([dir=rtl]) h6,.mce-visualblocks:not([dir=rtl]) hgroup,.mce-visualblocks:not([dir=rtl]) ol,.mce-visualblocks:not([dir=rtl]) p,.mce-visualblocks:not([dir=rtl]) pre,.mce-visualblocks:not([dir=rtl]) section,.mce-visualblocks:not([dir=rtl]) ul{margin-left: 3px;} |
||||
|
|
||||
|
.mce-visualblocks[dir=rtl] address,.mce-visualblocks[dir=rtl] article,.mce-visualblocks[dir=rtl] aside,.mce-visualblocks[dir=rtl] blockquote,.mce-visualblocks[dir=rtl] div:not([data-mce-bogus]),.mce-visualblocks[dir=rtl] dl,.mce-visualblocks[dir=rtl] figcaption,.mce-visualblocks[dir=rtl] figure,.mce-visualblocks[dir=rtl] h1,.mce-visualblocks[dir=rtl] h2,.mce-visualblocks[dir=rtl] h3,.mce-visualblocks[dir=rtl] h4,.mce-visualblocks[dir=rtl] h5,.mce-visualblocks[dir=rtl] h6,.mce-visualblocks[dir=rtl] hgroup,.mce-visualblocks[dir=rtl] ol,.mce-visualblocks[dir=rtl] p,.mce-visualblocks[dir=rtl] pre,.mce-visualblocks[dir=rtl] section,.mce-visualblocks[dir=rtl] ul{background-position-x: right;margin-right: 3px;} |
||||
|
|
||||
|
.mce-nbsp,.mce-shy{background: #aaa;} |
||||
|
|
||||
|
.mce-shy::after{content: '-';} |
||||
|
|
||||
|
body{font-family: sans-serif;} |
||||
|
|
||||
|
table{border-collapse: collapse;} |
||||
@ -0,0 +1,17 @@ |
|||||
|
/** |
||||
|
* Copyright (c) Tiny Technologies, Inc. All rights reserved. |
||||
|
* Licensed under the LGPL or a commercial license. |
||||
|
* For LGPL see License.txt in the project root for license information. |
||||
|
* For commercial licenses see https://www.tiny.cloud/ |
||||
|
*/ |
||||
|
.tinymce-mobile-unfocused-selections .tinymce-mobile-unfocused-selection{position: absolute;display: inline-block;background-color: green;opacity: .5;} |
||||
|
|
||||
|
body{-webkit-text-size-adjust: none;} |
||||
|
|
||||
|
body img{max-width: 96vw;} |
||||
|
|
||||
|
body table img{max-width: 95%;} |
||||
|
|
||||
|
body{font-family: sans-serif;} |
||||
|
|
||||
|
table{border-collapse: collapse;} |
||||
@ -0,0 +1,875 @@ |
|||||
|
/** |
||||
|
* Copyright (c) Tiny Technologies, Inc. All rights reserved. |
||||
|
* Licensed under the LGPL or a commercial license. |
||||
|
* For LGPL see License.txt in the project root for license information. |
||||
|
* For commercial licenses see https://www.tiny.cloud/ |
||||
|
*/ |
||||
|
.tox{font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size: 16px;font-style: normal;font-weight: 400;line-height: normal;color: #222f3e;text-decoration: none;text-shadow: none;text-transform: none;white-space: normal;vertical-align: initial;cursor: auto;box-sizing: content-box;-webkit-tap-highlight-color: transparent;} |
||||
|
|
||||
|
.tox :not(svg){font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;line-height: inherit;color: inherit;text-align: inherit;text-decoration: inherit;text-shadow: inherit;text-transform: inherit;white-space: inherit;vertical-align: inherit;cursor: inherit;box-sizing: inherit;direction: inherit;-webkit-tap-highlight-color: inherit;} |
||||
|
|
||||
|
.tox :not(svg){position: static;float: none;width: auto;height: auto;max-width: none;padding: 0;margin: 0;background: 0 0;border: 0;outline: 0;} |
||||
|
|
||||
|
.tox:not([dir=rtl]){text-align: left;direction: ltr;} |
||||
|
|
||||
|
.tox[dir=rtl]{text-align: right;direction: rtl;} |
||||
|
|
||||
|
.tox-tinymce{position: relative;display: flex;overflow: hidden;font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;border: 1px solid #000;border-radius: 0;visibility: inherit !important;box-shadow: none;box-sizing: border-box;flex-direction: column;} |
||||
|
|
||||
|
.tox-editor-container{display: flex;flex: 1 1 auto;flex-direction: column;overflow: hidden;} |
||||
|
|
||||
|
.tox-editor-container>:first-child{border-top: none !important;} |
||||
|
|
||||
|
.tox-tinymce-aux{font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;} |
||||
|
|
||||
|
.tox-tinymce :focus,.tox-tinymce-aux :focus{outline: 0;} |
||||
|
|
||||
|
button::-moz-focus-inner{border: 0;} |
||||
|
|
||||
|
.tox-silver-sink{z-index: 1300;} |
||||
|
|
||||
|
.tox .tox-anchorbar{display: flex;flex: 0 0 auto;} |
||||
|
|
||||
|
.tox .tox-bar{display: flex;flex: 0 0 auto;} |
||||
|
|
||||
|
.tox .tox-button{display: inline-block;padding: 4px 16px;margin: 0;font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size: 14px;font-weight: 700;line-height: 24px;letter-spacing: 1;color: #fff;text-align: center;text-decoration: none;text-transform: capitalize;white-space: nowrap;cursor: pointer;background-color: #207ab7;background-image: none;background-position: none;background-repeat: none;border-color: #207ab7;border-style: solid;border-width: 1px;border-radius: 3px;outline: 0;box-shadow: none;box-sizing: border-box;} |
||||
|
|
||||
|
.tox .tox-button[disabled]{color: rgba(255,255,255,.5);cursor: not-allowed;background-color: #207ab7;background-image: none;border-color: #207ab7;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button:focus:not(:disabled){color: #fff;background-color: #1c6ca1;background-image: none;border-color: #1c6ca1;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button:hover:not(:disabled){color: #fff;background-color: #1c6ca1;background-image: none;border-color: #1c6ca1;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button:active:not(:disabled){color: #fff;background-color: #185d8c;background-image: none;border-color: #185d8c;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--secondary{padding: 4px 16px;color: #fff;text-decoration: none;text-transform: capitalize;background-color: #3d546f;background-image: none;background-position: none;background-repeat: none;border-color: #3d546f;border-style: solid;border-width: 1px;border-radius: 3px;outline: 0;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--secondary[disabled]{color: rgba(255,255,255,.5);background-color: #3d546f;background-image: none;border-color: #3d546f;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--secondary:focus:not(:disabled){color: #fff;background-color: #34485f;background-image: none;border-color: #34485f;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--secondary:hover:not(:disabled){color: #fff;background-color: #34485f;background-image: none;border-color: #34485f;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--secondary:active:not(:disabled){color: #fff;background-color: #2b3b4e;background-image: none;border-color: #2b3b4e;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--icon,.tox .tox-button.tox-button--icon,.tox .tox-button.tox-button--secondary.tox-button--icon{padding: 4px;} |
||||
|
|
||||
|
.tox .tox-button--icon .tox-icon svg,.tox .tox-button.tox-button--icon .tox-icon svg,.tox .tox-button.tox-button--secondary.tox-button--icon .tox-icon svg{display: block;fill: currentColor;} |
||||
|
|
||||
|
.tox .tox-button-link{display: inline-block;padding: 0;margin: 0;font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size: 16px;font-weight: 400;line-height: 1.3;white-space: nowrap;cursor: pointer;background: 0;border: none;box-sizing: border-box;} |
||||
|
|
||||
|
.tox .tox-button-link--sm{font-size: 14px;} |
||||
|
|
||||
|
.tox .tox-button--naked{color: #fff;background-color: transparent;border-color: transparent;box-shadow: unset;} |
||||
|
|
||||
|
.tox .tox-button--naked:hover:not(:disabled){color: #fff;background-color: #34485f;border-color: #34485f;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--naked:focus:not(:disabled){color: #fff;background-color: #34485f;border-color: #34485f;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--naked:active:not(:disabled){color: #fff;background-color: #2b3b4e;border-color: #2b3b4e;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--naked .tox-icon svg{fill: currentColor;} |
||||
|
|
||||
|
.tox .tox-button--naked.tox-button--icon{color: currentColor;} |
||||
|
|
||||
|
.tox .tox-button--naked.tox-button--icon:hover:not(:disabled){color: #fff;} |
||||
|
|
||||
|
.tox .tox-checkbox{display: flex;height: 36px;min-width: 36px;cursor: pointer;border-radius: 3px;align-items: center;} |
||||
|
|
||||
|
.tox .tox-checkbox__input{position: absolute;top: auto;left: -10000px;width: 1px;height: 1px;overflow: hidden;} |
||||
|
|
||||
|
.tox .tox-checkbox__icons{width: 24px;height: 24px;padding: calc(4px - 1px);border-radius: 3px;box-shadow: 0 0 0 2px transparent;box-sizing: content-box;} |
||||
|
|
||||
|
.tox .tox-checkbox__icons .tox-checkbox-icon__unchecked svg{display: block;fill: rgba(255,255,255,.2);} |
||||
|
|
||||
|
.tox .tox-checkbox__icons .tox-checkbox-icon__indeterminate svg{display: none;fill: #207ab7;} |
||||
|
|
||||
|
.tox .tox-checkbox__icons .tox-checkbox-icon__checked svg{display: none;fill: #207ab7;} |
||||
|
|
||||
|
.tox input.tox-checkbox__input:checked+.tox-checkbox__icons .tox-checkbox-icon__unchecked svg{display: none;} |
||||
|
|
||||
|
.tox input.tox-checkbox__input:checked+.tox-checkbox__icons .tox-checkbox-icon__checked svg{display: block;} |
||||
|
|
||||
|
.tox input.tox-checkbox__input:indeterminate+.tox-checkbox__icons .tox-checkbox-icon__unchecked svg{display: none;} |
||||
|
|
||||
|
.tox input.tox-checkbox__input:indeterminate+.tox-checkbox__icons .tox-checkbox-icon__indeterminate svg{display: block;} |
||||
|
|
||||
|
.tox input.tox-checkbox__input:focus+.tox-checkbox__icons{padding: calc(4px - 1px);border-radius: 3px;box-shadow: inset 0 0 0 1px #207ab7;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-checkbox__label{margin-left: 4px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-bar .tox-checkbox{margin-left: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-checkbox__label{margin-right: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-bar .tox-checkbox{margin-right: 4px;} |
||||
|
|
||||
|
.tox .tox-collection--toolbar .tox-collection__group{display: flex;padding: 0;} |
||||
|
|
||||
|
.tox .tox-collection--grid .tox-collection__group{display: flex;max-height: 208px;padding: 0;overflow-x: hidden;overflow-y: auto;flex-wrap: wrap;} |
||||
|
|
||||
|
.tox .tox-collection--list .tox-collection__group{padding: 4px 0;border-color: #1a1a1a;border-style: solid;border-top-width: 1px;border-right-width: 0;border-bottom-width: 0;border-left-width: 0;} |
||||
|
|
||||
|
.tox .tox-collection--list .tox-collection__group:first-child{border-top-width: 0;} |
||||
|
|
||||
|
.tox .tox-collection__group-heading{padding: 4px 8px;margin-top: -4px;margin-bottom: 4px;font-size: 12px;font-style: normal;font-weight: 400;color: #fff;text-transform: none;cursor: default;background-color: #333;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;-webkit-touch-callout: none;} |
||||
|
|
||||
|
.tox .tox-collection__item{display: flex;color: #fff;cursor: pointer;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;align-items: center;-webkit-touch-callout: none;} |
||||
|
|
||||
|
.tox .tox-collection--list .tox-collection__item{padding: 4px 8px;} |
||||
|
|
||||
|
.tox .tox-collection--toolbar .tox-collection__item{padding: 4px;border-radius: 3px;} |
||||
|
|
||||
|
.tox .tox-collection--grid .tox-collection__item{padding: 4px;border-radius: 3px;} |
||||
|
|
||||
|
.tox .tox-collection--list .tox-collection__item--enabled{color: contrast(inherit,#222f3e,#fff);background-color: inherit;} |
||||
|
|
||||
|
.tox .tox-collection--list .tox-collection__item--active:not(.tox-collection__item--state-disabled){color: #fff;background-color: #434e5b;} |
||||
|
|
||||
|
.tox .tox-collection--toolbar .tox-collection__item--enabled{color: #fff;background-color: #6f7882;} |
||||
|
|
||||
|
.tox .tox-collection--toolbar .tox-collection__item--active:not(.tox-collection__item--state-disabled){color: #fff;background-color: #434e5b;} |
||||
|
|
||||
|
.tox .tox-collection--grid .tox-collection__item--enabled{color: #fff;background-color: #6f7882;} |
||||
|
|
||||
|
.tox .tox-collection--grid .tox-collection__item--active:not(.tox-collection__item--state-disabled){color: #fff;background-color: #434e5b;} |
||||
|
|
||||
|
.tox .tox-collection__item--state-disabled{color: rgba(255,255,255,.5);cursor: default;background-color: transparent;} |
||||
|
|
||||
|
.tox .tox-collection__item-icon{display: flex;width: 24px;height: 24px;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-collection__item-icon svg{fill: currentColor;} |
||||
|
|
||||
|
.tox .tox-collection--toolbar-lg .tox-collection__item-icon{width: 48px;height: 48px;} |
||||
|
|
||||
|
.tox .tox-collection__item[role=menuitemcheckbox]:not(.tox-collection__item--enabled) .tox-collection__item-checkmark svg{display: none;} |
||||
|
|
||||
|
.tox .tox-collection__item-label{display: inline-block;font-size: 14px;font-style: normal;font-weight: 400;line-height: 24px;color: currentColor;text-transform: none;word-break: break-all;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-collection__item-accessory{display: inline-block;height: 24px;font-size: 14px;line-height: 24px;color: rgba(255,255,255,.5);text-transform: normal;} |
||||
|
|
||||
|
.tox .tox-collection__item-caret{align-items: center;display: flex;min-height: 24px;} |
||||
|
|
||||
|
.tox .tox-collection__item-caret::after{min-height: inherit;font-size: 0;content: '';} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-collection--list .tox-collection__item>:not(:first-child){margin-left: 8px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-collection--list .tox-collection__item-label:first-child{margin-left: 4px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-collection__item-accessory{margin-left: 16px;text-align: right;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-collection__item-caret{margin-left: 16px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-collection--list .tox-collection__item>:not(:first-child){margin-right: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-collection--list .tox-collection__item-label:first-child{margin-right: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-collection__item-icon-rtl .tox-collection__item-icon svg{transform: rotateY(180deg);} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-collection__item-accessory{margin-right: 16px;text-align: left;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-collection__item-caret{margin-right: 16px;transform: rotateY(180deg);} |
||||
|
|
||||
|
.tox .tox-color-picker-container{display: flex;flex-direction: row;height: 225px;margin: 0;} |
||||
|
|
||||
|
.tox .tox-sv-palette{display: flex;height: 100%;box-sizing: border-box;} |
||||
|
|
||||
|
.tox .tox-sv-palette-spectrum{height: 100%;} |
||||
|
|
||||
|
.tox .tox-sv-palette,.tox .tox-sv-palette-spectrum{width: 225px;} |
||||
|
|
||||
|
.tox .tox-sv-palette-thumb{position: absolute;width: 12px;height: 12px;background: 0 0;border: 1px solid #000;border-radius: 50%;box-sizing: content-box;} |
||||
|
|
||||
|
.tox .tox-sv-palette-inner-thumb{position: absolute;width: 10px;height: 10px;border: 1px solid #fff;border-radius: 50%;} |
||||
|
|
||||
|
.tox .tox-hue-slider{width: 25px;height: 100%;box-sizing: border-box;} |
||||
|
|
||||
|
.tox .tox-hue-slider-spectrum{width: 100%;height: 100%;background: linear-gradient(to bottom,red,#ff0080,#f0f,#8000ff,#00f,#0080ff,#0ff,#00ff80,#0f0,#80ff00,#ff0,#ff8000,red);} |
||||
|
|
||||
|
.tox .tox-hue-slider,.tox .tox-hue-slider-spectrum{width: 20px;} |
||||
|
|
||||
|
.tox .tox-hue-slider-thumb{width: 100%;height: 4px;background: #fff;border: 1px solid #000;box-sizing: content-box;} |
||||
|
|
||||
|
.tox .tox-rgb-form{display: flex;flex-direction: column;justify-content: space-between;} |
||||
|
|
||||
|
.tox .tox-rgb-form div{display: flex;width: inherit;margin-bottom: 5px;align-items: center;justify-content: space-between;} |
||||
|
|
||||
|
.tox .tox-rgb-form input{width: 6em;} |
||||
|
|
||||
|
.tox .tox-rgb-form input.tox-invalid{border: 1px solid red !important;} |
||||
|
|
||||
|
.tox .tox-rgb-form .tox-rgba-preview{margin-bottom: 0;border: 1px solid #000;flex-grow: 2;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-sv-palette{margin-right: 15px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-hue-slider{margin-right: 15px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-hue-slider-thumb{margin-left: -1px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-rgb-form label{margin-right: .5em;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-sv-palette{margin-left: 15px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-hue-slider{margin-left: 15px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-hue-slider-thumb{margin-right: -1px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-rgb-form label{margin-left: .5em;} |
||||
|
|
||||
|
.tox .tox-toolbar .tox-swatches,.tox .tox-toolbar__overflow .tox-swatches,.tox .tox-toolbar__primary .tox-swatches{margin: 2px 0 3px 4px;} |
||||
|
|
||||
|
.tox .tox-collection--list .tox-collection__group .tox-swatches-menu{margin: -4px 0;border: 0;} |
||||
|
|
||||
|
.tox .tox-swatches__row{display: flex;} |
||||
|
|
||||
|
.tox .tox-swatch{width: 30px;height: 30px;transition: transform .15s,box-shadow .15s;} |
||||
|
|
||||
|
.tox .tox-swatch:focus,.tox .tox-swatch:hover{transform: scale(.8);box-shadow: 0 0 0 1px rgba(127,127,127,.3) inset;} |
||||
|
|
||||
|
.tox .tox-swatch--remove{align-items: center;display: flex;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-swatch--remove svg path{stroke: #e74c3c;} |
||||
|
|
||||
|
.tox .tox-swatches__picker-btn{display: flex;width: 30px;height: 30px;padding: 0;cursor: pointer;background-color: transparent;border: 0;outline: 0;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-swatches__picker-btn svg{width: 24px;height: 24px;} |
||||
|
|
||||
|
.tox .tox-swatches__picker-btn:hover{background: #434e5b;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-swatches__picker-btn{margin-left: auto;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-swatches__picker-btn{margin-right: auto;} |
||||
|
|
||||
|
.tox .tox-comment-thread{position: relative;background: #2b3b4e;} |
||||
|
|
||||
|
.tox .tox-comment-thread>:not(:first-child){margin-top: 8px;} |
||||
|
|
||||
|
.tox .tox-comment{position: relative;padding: 8px 8px 16px 8px;background: #2b3b4e;border: 1px solid #000;border-radius: 3px;box-shadow: 0 4px 8px 0 rgba(34,47,62,.1);} |
||||
|
|
||||
|
.tox .tox-comment__header{display: flex;color: #fff;align-items: center;justify-content: space-between;} |
||||
|
|
||||
|
.tox .tox-comment__date{font-size: 12px;color: rgba(255,255,255,.5);} |
||||
|
|
||||
|
.tox .tox-comment__body{position: relative;margin-top: 8px;font-size: 14px;font-style: normal;font-weight: 400;line-height: 1.3;color: #fff;text-transform: initial;} |
||||
|
|
||||
|
.tox .tox-comment__body textarea{width: 100%;white-space: normal;resize: none;} |
||||
|
|
||||
|
.tox .tox-comment__expander{padding-top: 8px;} |
||||
|
|
||||
|
.tox .tox-comment__expander p{font-size: 14px;font-style: normal;color: rgba(255,255,255,.5);} |
||||
|
|
||||
|
.tox .tox-comment__body p{margin: 0;} |
||||
|
|
||||
|
.tox .tox-comment__buttonspacing{padding-top: 16px;text-align: center;} |
||||
|
|
||||
|
.tox .tox-comment-thread__overlay::after{position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 5;display: flex;background: #2b3b4e;content: "";opacity: .9;} |
||||
|
|
||||
|
.tox .tox-comment__reply{display: flex;flex-shrink: 0;flex-wrap: wrap;justify-content: flex-end;margin-top: 8px;} |
||||
|
|
||||
|
.tox .tox-comment__reply>:first-child{width: 100%;margin-bottom: 8px;} |
||||
|
|
||||
|
.tox .tox-comment__edit{display: flex;flex-wrap: wrap;justify-content: flex-end;margin-top: 16px;} |
||||
|
|
||||
|
.tox .tox-comment__gradient::after{position: absolute;bottom: 0;display: block;width: 100%;height: 5em;margin-top: -40px;background: linear-gradient(rgba(43,59,78,0),#2b3b4e);content: "";} |
||||
|
|
||||
|
.tox .tox-comment__overlay{position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 5;display: flex;text-align: center;background: #2b3b4e;opacity: .9;flex-direction: column;flex-grow: 1;} |
||||
|
|
||||
|
.tox .tox-comment__loading-text{position: relative;display: flex;color: #fff;align-items: center;flex-direction: column;} |
||||
|
|
||||
|
.tox .tox-comment__loading-text>div{padding-bottom: 16px;} |
||||
|
|
||||
|
.tox .tox-comment__overlaytext{position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 10;padding: 1em;font-size: 14px;flex-direction: column;} |
||||
|
|
||||
|
.tox .tox-comment__overlaytext p{color: #fff;text-align: center;background-color: #2b3b4e;box-shadow: 0 0 8px 8px #2b3b4e;} |
||||
|
|
||||
|
.tox .tox-comment__overlaytext div:nth-of-type(2){font-size: .8em;} |
||||
|
|
||||
|
.tox .tox-comment__busy-spinner{position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 1103;display: flex;background-color: #2b3b4e;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-comment__scroll{display: flex;flex-direction: column;flex-shrink: 1;overflow: auto;} |
||||
|
|
||||
|
.tox .tox-conversations{margin: 8px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-comment__edit{margin-left: 8px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-comment__buttonspacing>:last-child,.tox:not([dir=rtl]) .tox-comment__edit>:last-child,.tox:not([dir=rtl]) .tox-comment__reply>:last-child{margin-left: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-comment__edit{margin-right: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-comment__buttonspacing>:last-child,.tox[dir=rtl] .tox-comment__edit>:last-child,.tox[dir=rtl] .tox-comment__reply>:last-child{margin-right: 8px;} |
||||
|
|
||||
|
.tox .tox-user{align-items: center;display: flex;} |
||||
|
|
||||
|
.tox .tox-user__avatar svg{fill: rgba(255,255,255,.5);} |
||||
|
|
||||
|
.tox .tox-user__name{font-size: 12px;font-style: normal;font-weight: 700;color: rgba(255,255,255,.5);text-transform: uppercase;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-user__avatar svg{margin-right: 8px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-user__avatar+.tox-user__name{margin-left: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-user__avatar svg{margin-left: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-user__avatar+.tox-user__name{margin-right: 8px;} |
||||
|
|
||||
|
.tox .tox-dialog-wrap{position: fixed;top: 0;right: 0;bottom: 0;left: 0;z-index: 1100;display: flex;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-dialog-wrap__backdrop{position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 1101;background-color: rgba(34,47,62,.75);} |
||||
|
|
||||
|
.tox .tox-dialog{position: relative;z-index: 1102;display: flex;width: 95vw;max-width: 480px;max-height: 100%;overflow: hidden;background-color: #2b3b4e;border-color: #000;border-style: solid;border-width: 1px;border-radius: 3px;box-shadow: 0 16px 16px -10px rgba(34,47,62,.15),0 0 40px 1px rgba(34,47,62,.15);flex-direction: column;} |
||||
|
|
||||
|
.tox .tox-dialog__header{position: relative;display: flex;padding: 8px 16px 0 16px;margin-bottom: 16px;font-size: 16px;color: #fff;background-color: #2b3b4e;border-bottom: none;align-items: center;justify-content: space-between;} |
||||
|
|
||||
|
.tox .tox-dialog__header .tox-button{z-index: 1;} |
||||
|
|
||||
|
.tox .tox-dialog__draghandle{position: absolute;top: 0;left: 0;width: 100%;height: 100%;cursor: grab;} |
||||
|
|
||||
|
.tox .tox-dialog__draghandle:active{cursor: grabbing;} |
||||
|
|
||||
|
.tox .tox-dialog__dismiss{margin-left: auto;} |
||||
|
|
||||
|
.tox .tox-dialog__title{margin: 0;font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size: 20px;font-style: normal;font-weight: 400;line-height: 1.3;text-transform: normal;} |
||||
|
|
||||
|
.tox .tox-dialog__body{display: flex;min-width: 0;padding: 0 16px;font-size: 16px;font-style: normal;font-weight: 400;line-height: 1.3;color: #fff;text-align: left;text-transform: normal;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-dialog__body-nav{align-items: flex-start;display: flex;flex-direction: column;} |
||||
|
|
||||
|
.tox .tox-dialog__body-nav-item{display: inline-block;margin-bottom: 8px;font-size: 14px;line-height: 1.3;color: rgba(255,255,255,.5);text-decoration: none;border-bottom: 2px solid transparent;} |
||||
|
|
||||
|
.tox .tox-dialog__body-nav-item--active{color: #207ab7;border-bottom: 2px solid #207ab7;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content{display: flex;flex: 1;flex-direction: column;-ms-flex-preferred-size: auto;max-height: 650px;overflow: auto;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content>*{margin-top: 16px;margin-bottom: 0;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content>:first-child{margin-top: 0;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content>:last-child{margin-bottom: 0;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content>:only-child{margin-top: 0;margin-bottom: 0;} |
||||
|
|
||||
|
.tox .tox-dialog--width-lg{height: 650px;max-width: 1200px;} |
||||
|
|
||||
|
.tox .tox-dialog--width-md{max-width: 800px;} |
||||
|
|
||||
|
.tox .tox-dialog--width-md .tox-dialog__body-content{overflow: auto;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content--centered{text-align: center;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content--spacious{margin-bottom: 16px;} |
||||
|
|
||||
|
.tox .tox-dialog__footer{display: flex;padding: 8px 16px;margin-top: 16px;background-color: #2b3b4e;border-top: 1px solid #000;align-items: center;justify-content: space-between;} |
||||
|
|
||||
|
.tox .tox-dialog__busy-spinner{position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 1103;display: flex;background-color: rgba(34,47,62,.75);align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-dialog__table{width: 100%;border-collapse: collapse;} |
||||
|
|
||||
|
.tox .tox-dialog__table thead th{padding-bottom: 8px;font-weight: 700;} |
||||
|
|
||||
|
.tox .tox-dialog__table tbody tr{border-bottom: 1px solid #000;} |
||||
|
|
||||
|
.tox .tox-dialog__table tbody tr:last-child{border-bottom: none;} |
||||
|
|
||||
|
.tox .tox-dialog__table td{padding-top: 8px;padding-bottom: 8px;} |
||||
|
|
||||
|
.tox .tox-dialog__popups{position: absolute;z-index: 1100;width: 100%;} |
||||
|
|
||||
|
.tox .tox-dialog__body-iframe{display: flex;flex: 1;flex-direction: column;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-dialog__body-iframe .tox-navobj{display: flex;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-dialog__body-iframe .tox-navobj :nth-child(2){flex: 1;-ms-flex-preferred-size: auto;height: 100%;} |
||||
|
|
||||
|
body.tox-dialog__disable-scroll{overflow: hidden;} |
||||
|
|
||||
|
.tox.tox-platform-ie .tox-dialog-wrap{position: -ms-device-fixed;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-dialog__body-nav{margin-right: 32px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-dialog__footer .tox-dialog__footer-end>*,.tox:not([dir=rtl]) .tox-dialog__footer .tox-dialog__footer-start>*{margin-left: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-dialog__body{text-align: right;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-dialog__body-nav{margin-left: 32px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-dialog__footer .tox-dialog__footer-end>*,.tox[dir=rtl] .tox-dialog__footer .tox-dialog__footer-start>*{margin-right: 8px;} |
||||
|
|
||||
|
.tox .tox-dropzone-container{display: flex;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-dropzone{display: flex;min-height: 100px;padding: 10px;background: #fff;border: 2px dashed #000;box-sizing: border-box;align-items: center;flex-direction: column;flex-grow: 1;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-dropzone p{margin: 0 0 16px 0;color: rgba(255,255,255,.5);} |
||||
|
|
||||
|
.tox .tox-edit-area{position: relative;display: flex;overflow: hidden;border-top: 1px solid #000;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-edit-area__iframe{position: absolute;width: 100%;height: 100%;background-color: #fff;border: 0;box-sizing: border-box;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox.tox-inline-edit-area{border: 1px dotted #000;} |
||||
|
|
||||
|
.tox .tox-control-wrap{flex: 1;position: relative;} |
||||
|
|
||||
|
.tox .tox-control-wrap:not(.tox-control-wrap--status-invalid) .tox-control-wrap__status-icon-invalid,.tox .tox-control-wrap:not(.tox-control-wrap--status-unknown) .tox-control-wrap__status-icon-unknown,.tox .tox-control-wrap:not(.tox-control-wrap--status-valid) .tox-control-wrap__status-icon-valid{display: none;} |
||||
|
|
||||
|
.tox .tox-control-wrap svg{display: block;} |
||||
|
|
||||
|
.tox .tox-control-wrap__status-icon-wrap{position: absolute;top: 50%;transform: translateY(-50%);} |
||||
|
|
||||
|
.tox .tox-control-wrap__status-icon-invalid svg{fill: #c00;} |
||||
|
|
||||
|
.tox .tox-control-wrap__status-icon-unknown svg{fill: orange;} |
||||
|
|
||||
|
.tox .tox-control-wrap__status-icon-valid svg{fill: green;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-control-wrap--status-invalid .tox-textfield,.tox:not([dir=rtl]) .tox-control-wrap--status-unknown .tox-textfield,.tox:not([dir=rtl]) .tox-control-wrap--status-valid .tox-textfield{padding-right: 32px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-control-wrap__status-icon-wrap{right: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-control-wrap--status-invalid .tox-textfield,.tox[dir=rtl] .tox-control-wrap--status-unknown .tox-textfield,.tox[dir=rtl] .tox-control-wrap--status-valid .tox-textfield{padding-left: 32px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-control-wrap__status-icon-wrap{left: 4px;} |
||||
|
|
||||
|
.tox .tox-autocompleter{max-width: 25em;} |
||||
|
|
||||
|
.tox .tox-autocompleter .tox-menu{max-width: 25em;} |
||||
|
|
||||
|
.tox .tox-color-input{display: flex;} |
||||
|
|
||||
|
.tox .tox-color-input .tox-textfield{display: flex;border-radius: 3px 0 0 3px;} |
||||
|
|
||||
|
.tox .tox-color-input span{display: flex;width: 35px;cursor: pointer;border-color: rgba(34,47,62,.2);border-style: solid;border-width: 1px 1px 1px 0;border-radius: 0 3px 3px 0;box-shadow: none;box-sizing: border-box;} |
||||
|
|
||||
|
.tox .tox-color-input span:focus{border-color: #207ab7;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-color-input .tox-textfield{border-radius: 0 3px 3px 0;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-color-input span{border-width: 1px 0 1px 1px;border-radius: 3px 0 0 3px;} |
||||
|
|
||||
|
.tox .tox-label,.tox .tox-toolbar-label{display: block;padding: 0 8px 0 0;font-size: 14px;font-style: normal;font-weight: 400;line-height: 1.3;color: rgba(255,255,255,.5);text-transform: normal;white-space: nowrap;} |
||||
|
|
||||
|
.tox .tox-toolbar-label{padding: 0 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-label{padding: 0 0 0 8px;} |
||||
|
|
||||
|
.tox .tox-form{display: flex;flex: 1;flex-direction: column;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-form__group{margin-bottom: 4px;box-sizing: border-box;} |
||||
|
|
||||
|
.tox .tox-form__group--error{color: #c00;} |
||||
|
|
||||
|
.tox .tox-form__group--collection{display: flex;} |
||||
|
|
||||
|
.tox .tox-form__grid{display: flex;flex-direction: row;flex-wrap: wrap;justify-content: space-between;} |
||||
|
|
||||
|
.tox .tox-form__grid--2col>.tox-form__group{width: calc(50% - (8px / 2));} |
||||
|
|
||||
|
.tox .tox-form__grid--3col>.tox-form__group{width: calc(100% / 3 - (8px / 2));} |
||||
|
|
||||
|
.tox .tox-form__grid--4col>.tox-form__group{width: calc(25% - (8px / 2));} |
||||
|
|
||||
|
.tox .tox-form__controls-h-stack{align-items: center;display: flex;} |
||||
|
|
||||
|
.tox .tox-form__group--inline{align-items: center;display: flex;} |
||||
|
|
||||
|
.tox .tox-form__group--stretched{display: flex;flex: 1;flex-direction: column;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-form__group--stretched .tox-textarea{flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-form__group--stretched .tox-navobj{display: flex;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-form__group--stretched .tox-navobj :nth-child(2){flex: 1;-ms-flex-preferred-size: auto;height: 100%;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-form__controls-h-stack>:not(:first-child){margin-left: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-form__controls-h-stack>:not(:first-child){margin-right: 4px;} |
||||
|
|
||||
|
.tox .tox-lock.tox-locked .tox-lock-icon__unlock,.tox .tox-lock:not(.tox-locked) .tox-lock-icon__lock{display: none;} |
||||
|
|
||||
|
.tox .tox-textarea,.tox .tox-textfield,.tox .tox-toolbar-textfield,.tox:not([dir=rtl]) .tox-selectfield select,.tox[dir=rtl] .tox-selectfield select{width: 100%;padding: 5px 4.75px;margin: 0;font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size: 16px;line-height: 24px;color: #fff;background-color: #2b3b4e;border-color: #000;border-style: solid;border-width: 1px;border-radius: 3px;outline: 0;box-shadow: none;box-sizing: border-box;resize: none;-webkit-appearance: none;-moz-appearance: none;appearance: none;} |
||||
|
|
||||
|
.tox .tox-selectfield select:focus,.tox .tox-textarea:focus,.tox .tox-textfield:focus{border-color: #207ab7;outline: 0;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-toolbar-textfield{max-width: 250px;margin-top: 2px;margin-bottom: 3px;border-width: 0;} |
||||
|
|
||||
|
.tox .tox-naked-btn{display: block;padding: 0;margin: 0;color: #207ab7;cursor: pointer;background-color: transparent;border: 0;border-color: transparent;box-shadow: unset;} |
||||
|
|
||||
|
.tox .tox-naked-btn svg{display: block;fill: #fff;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-toolbar-textfield+*{margin-left: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-toolbar-textfield+*{margin-right: 4px;} |
||||
|
|
||||
|
.tox .tox-selectfield{position: relative;cursor: pointer;} |
||||
|
|
||||
|
.tox .tox-selectfield select::-ms-expand{display: none;} |
||||
|
|
||||
|
.tox .tox-selectfield svg{position: absolute;top: 50%;pointer-events: none;transform: translateY(-50%);} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-selectfield select{padding-right: 24px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-selectfield svg{right: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-selectfield select{padding-left: 24px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-selectfield svg{left: 8px;} |
||||
|
|
||||
|
.tox .tox-textarea{white-space: pre-wrap;-webkit-appearance: textarea;-moz-appearance: textarea;appearance: textarea;} |
||||
|
|
||||
|
.tox-fullscreen{position: fixed;top: 0;left: 0;width: 100%;height: 100%;padding: 0;margin: 0;overflow: hidden;border: 0;} |
||||
|
|
||||
|
.tox-fullscreen .tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle{display: none;} |
||||
|
|
||||
|
.tox-fullscreen .tox.tox-tinymce.tox-fullscreen{z-index: 1200;} |
||||
|
|
||||
|
.tox-fullscreen .tox.tox-tinymce-aux{z-index: 1201;} |
||||
|
|
||||
|
.tox .tox-image-tools{width: 100%;} |
||||
|
|
||||
|
.tox .tox-image-tools__toolbar{align-items: center;display: flex;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-image-tools__image{position: relative;width: 100%;height: 380px;overflow: auto;background-color: #666;} |
||||
|
|
||||
|
.tox .tox-image-tools__image,.tox .tox-image-tools__image+.tox-image-tools__toolbar{margin-top: 8px;} |
||||
|
|
||||
|
.tox .tox-image-tools__image-bg{background: url(data:image/gif;base64,R0lGODdhDAAMAIABAMzMzP///ywAAAAADAAMAAACFoQfqYeabNyDMkBQb81Uat85nxguUAEAOw==);} |
||||
|
|
||||
|
.tox .tox-image-tools__toolbar>.tox-spacer{flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-croprect-block{position: absolute;background: #000;opacity: .5;zoom: 1;} |
||||
|
|
||||
|
.tox .tox-croprect-handle{position: absolute;top: 0;left: 0;width: 20px;height: 20px;border: 2px solid #fff;} |
||||
|
|
||||
|
.tox .tox-croprect-handle-move{position: absolute;cursor: move;border: 0;} |
||||
|
|
||||
|
.tox .tox-croprect-handle-nw{top: 100px;left: 100px;margin: -2px 0 0 -2px;cursor: nw-resize;border-width: 2px 0 0 2px;} |
||||
|
|
||||
|
.tox .tox-croprect-handle-ne{top: 100px;left: 200px;margin: -2px 0 0 -20px;cursor: ne-resize;border-width: 2px 2px 0 0;} |
||||
|
|
||||
|
.tox .tox-croprect-handle-sw{top: 200px;left: 100px;margin: -20px 2px 0 -2px;cursor: sw-resize;border-width: 0 0 2px 2px;} |
||||
|
|
||||
|
.tox .tox-croprect-handle-se{top: 200px;left: 200px;margin: -20px 0 0 -20px;cursor: se-resize;border-width: 0 2px 2px 0;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-image-tools__toolbar>.tox-slider:not(:first-of-type){margin-left: 8px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-image-tools__toolbar>.tox-button+.tox-slider{margin-left: 32px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-image-tools__toolbar>.tox-slider+.tox-button{margin-left: 32px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-image-tools__toolbar>.tox-slider:not(:first-of-type){margin-right: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-image-tools__toolbar>.tox-button+.tox-slider{margin-right: 32px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-image-tools__toolbar>.tox-slider+.tox-button{margin-right: 32px;} |
||||
|
|
||||
|
.tox .tox-insert-table-picker{display: flex;flex-wrap: wrap;width: 169px;} |
||||
|
|
||||
|
.tox .tox-insert-table-picker>div{width: 16px;height: 16px;border-color: #070a0d;border-style: solid;border-width: 0 1px 1px 0;box-sizing: content-box;} |
||||
|
|
||||
|
.tox .tox-collection--list .tox-collection__group .tox-insert-table-picker{margin: -4px 0;} |
||||
|
|
||||
|
.tox .tox-insert-table-picker .tox-insert-table-picker__selected{background-color: rgba(32,122,183,.5);border-color: rgba(32,122,183,.5);} |
||||
|
|
||||
|
.tox .tox-insert-table-picker__label{display: block;width: 100%;padding: 4px;font-size: 14px;color: #fff;text-align: center;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-insert-table-picker>div:nth-child(10n){border-right: 0;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-insert-table-picker>div:nth-child(10n+1){border-right: 0;} |
||||
|
|
||||
|
.tox .tox-menu{z-index: 1;display: inline-block;overflow: hidden;vertical-align: top;background-color: #2b3b4e;border: 1px solid #000;border-radius: 3px;box-shadow: 0 4px 8px 0 rgba(34,47,62,.1);} |
||||
|
|
||||
|
.tox .tox-menu.tox-collection.tox-collection--list{padding: 0;} |
||||
|
|
||||
|
.tox .tox-menu.tox-collection.tox-collection--toolbar{padding: 4px;} |
||||
|
|
||||
|
.tox .tox-menu.tox-collection.tox-collection--grid{padding: 4px;} |
||||
|
|
||||
|
.tox .tox-menu__label blockquote,.tox .tox-menu__label code,.tox .tox-menu__label h1,.tox .tox-menu__label h2,.tox .tox-menu__label h3,.tox .tox-menu__label h4,.tox .tox-menu__label h5,.tox .tox-menu__label h6,.tox .tox-menu__label p{margin: 0;} |
||||
|
|
||||
|
.tox .tox-menubar{display: flex;padding: 0 4px;margin-bottom: -1px;background: url("data:image/svg+xml;charset=utf8,%3Csvg height='43px' viewBox='0 0 40 43px' width='40' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='42px' width='100' height='1' fill='%23000000'/%3E%3C/svg%3E") left 0 top 0 #222f3e;background-color: #222f3e;flex: 0 0 auto;flex-shrink: 0;flex-wrap: wrap;} |
||||
|
|
||||
|
.tox .tox-mbtn{display: flex;width: auto;height: 34px;padding: 0 4px;margin: 2px 0 3px 0;overflow: hidden;font-size: 14px;font-style: normal;font-weight: 400;color: #fff;text-transform: normal;background: 0 0;border: 0;border-radius: 3px;outline: 0;box-shadow: none;align-items: center;flex: 0 0 auto;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-mbtn[disabled]{color: rgba(255,255,255,.5);cursor: not-allowed;background-color: none;border-color: none;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-mbtn:hover:not(:disabled){color: #fff;background: #434e5b;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-mbtn:focus:not(:disabled){color: #fff;background: #434e5b;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-mbtn--active{color: #fff;background: #6f7882;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-mbtn__select-label{margin: 0 4px;font-weight: 400;cursor: default;} |
||||
|
|
||||
|
.tox .tox-mbtn[disabled] .tox-mbtn__select-label{cursor: not-allowed;} |
||||
|
|
||||
|
.tox .tox-mbtn__select-chevron{display: flex;display: none;width: 16px;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-notification{display: grid;padding: 5px;margin-top: 5px;background-color: #fffaea;border-color: #ffe89d;border-style: solid;border-width: 1px;opacity: 0;box-sizing: border-box;transition: transform .1s ease-in,opacity 150ms ease-in;grid-template-columns: minmax(40px,1fr) auto minmax(40px,1fr);} |
||||
|
|
||||
|
.tox .tox-notification--in{opacity: 1;} |
||||
|
|
||||
|
.tox .tox-notification--success{background-color: #dff0d8;border-color: #d6e9c6;} |
||||
|
|
||||
|
.tox .tox-notification--error{background-color: #f2dede;border-color: #ebccd1;} |
||||
|
|
||||
|
.tox .tox-notification--warn{background-color: #fcf8e3;border-color: #faebcc;} |
||||
|
|
||||
|
.tox .tox-notification--info{background-color: #d9edf7;border-color: #779ecb;} |
||||
|
|
||||
|
.tox .tox-notification__body{font-size: 14px;color: #fff;text-align: center;word-break: break-all;word-break: break-word;white-space: normal;align-self: center;grid-column-end: 3;-ms-grid-column-span: 1;grid-column-start: 2;grid-row-end: 2;grid-row-start: 1;} |
||||
|
|
||||
|
.tox .tox-notification__body>*{margin: 0;} |
||||
|
|
||||
|
.tox .tox-notification__body>*+*{margin-top: 1rem;} |
||||
|
|
||||
|
.tox .tox-notification__icon{align-self: center;-ms-grid-column-align: end;grid-column-end: 2;-ms-grid-column-span: 1;grid-column-start: 1;grid-row-end: 2;grid-row-start: 1;justify-self: end;} |
||||
|
|
||||
|
.tox .tox-notification__icon svg{display: block;} |
||||
|
|
||||
|
.tox .tox-notification__dismiss{align-self: start;-ms-grid-column-align: end;grid-column-end: 4;-ms-grid-column-span: 1;grid-column-start: 3;grid-row-end: 2;grid-row-start: 1;justify-self: end;} |
||||
|
|
||||
|
.tox .tox-notification .tox-progress-bar{-ms-grid-column-align: center;grid-column-end: 4;-ms-grid-column-span: 3;grid-column-start: 1;grid-row-end: 3;-ms-grid-row-span: 1;grid-row-start: 2;justify-self: center;} |
||||
|
|
||||
|
.tox .tox-pop{position: relative;display: inline-block;} |
||||
|
|
||||
|
.tox .tox-pop--resizing{transition: width .1s ease;} |
||||
|
|
||||
|
.tox .tox-pop--resizing .tox-toolbar{flex-wrap: nowrap;} |
||||
|
|
||||
|
.tox .tox-pop__dialog{min-width: 0;overflow: hidden;background-color: #222f3e;border: 1px solid #000;border-radius: 3px;box-shadow: 0 1px 3px rgba(0,0,0,.15);} |
||||
|
|
||||
|
.tox .tox-pop__dialog>:not(.tox-toolbar){margin: 4px 4px 4px 8px;} |
||||
|
|
||||
|
.tox .tox-pop__dialog .tox-toolbar{background-color: transparent;} |
||||
|
|
||||
|
.tox .tox-pop::after,.tox .tox-pop::before{position: absolute;display: block;width: 0;height: 0;border-style: solid;content: '';} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--bottom::after,.tox .tox-pop.tox-pop--bottom::before{top: 100%;left: 50%;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--bottom::after{margin-top: -1px;margin-left: -8px;border-color: #222f3e transparent transparent transparent;border-width: 8px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--bottom::before{margin-left: -9px;border-color: #000 transparent transparent transparent;border-width: 9px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--top::after,.tox .tox-pop.tox-pop--top::before{top: 0;left: 50%;transform: translateY(-100%);} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--top::after{margin-top: 1px;margin-left: -8px;border-color: transparent transparent #222f3e transparent;border-width: 8px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--top::before{margin-left: -9px;border-color: transparent transparent #000 transparent;border-width: 9px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--left::after,.tox .tox-pop.tox-pop--left::before{top: calc(50% - 1px);left: 0;transform: translateY(-50%);} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--left::after{margin-left: -15px;border-color: transparent #222f3e transparent transparent;border-width: 8px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--left::before{margin-left: -19px;border-color: transparent #000 transparent transparent;border-width: 10px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--right::after,.tox .tox-pop.tox-pop--right::before{top: calc(50% + 1px);left: 100%;transform: translateY(-50%);} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--right::after{margin-left: -1px;border-color: transparent transparent transparent #222f3e;border-width: 8px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--right::before{margin-left: -1px;border-color: transparent transparent transparent #000;border-width: 10px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--align-left::after,.tox .tox-pop.tox-pop--align-left::before{left: 20px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--align-right::after,.tox .tox-pop.tox-pop--align-right::before{left: calc(100% - 20px);} |
||||
|
|
||||
|
.tox .tox-sidebar-wrap{display: flex;flex-direction: row;flex-grow: 1;min-height: 0;} |
||||
|
|
||||
|
.tox .tox-sidebar{display: flex;flex-direction: row;justify-content: flex-end;} |
||||
|
|
||||
|
.tox .tox-sidebar__slider{display: flex;overflow: hidden;} |
||||
|
|
||||
|
.tox .tox-sidebar__pane-container{display: flex;} |
||||
|
|
||||
|
.tox .tox-sidebar__pane{display: flex;} |
||||
|
|
||||
|
.tox .tox-sidebar--sliding-closed{opacity: 0;} |
||||
|
|
||||
|
.tox .tox-sidebar--sliding-open{opacity: 1;} |
||||
|
|
||||
|
.tox .tox-sidebar--sliding-growing,.tox .tox-sidebar--sliding-shrinking{transition: width .5s ease,opacity .5s ease;} |
||||
|
|
||||
|
.tox .tox-slider{position: relative;display: flex;height: 24px;align-items: center;flex: 1;-ms-flex-preferred-size: auto;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-slider__rail{width: 100%;height: 10px;min-width: 120px;background-color: transparent;border: 1px solid #000;border-radius: 3px;} |
||||
|
|
||||
|
.tox .tox-slider__handle{position: absolute;top: 50%;left: 50%;width: 14px;height: 24px;background-color: #207ab7;border: 2px solid #185d8c;border-radius: 3px;transform: translateX(-50%) translateY(-50%);box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-source-code{overflow: auto;} |
||||
|
|
||||
|
.tox .tox-spinner{display: flex;} |
||||
|
|
||||
|
.tox .tox-spinner>div{width: 8px;height: 8px;background-color: rgba(255,255,255,.5);border-radius: 100%;animation: tam-bouncing-dots 1.5s ease-in-out 0s infinite both;} |
||||
|
|
||||
|
.tox .tox-spinner>div:nth-child(1){animation-delay: -.32s;} |
||||
|
|
||||
|
.tox .tox-spinner>div:nth-child(2){animation-delay: -.16s;}@keyframes tam-bouncing-dots{0%,100%,80%{transform: scale(0);} |
||||
|
|
||||
|
40%{transform: scale(1);}} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-spinner>div:not(:first-child){margin-left: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-spinner>div:not(:first-child){margin-right: 4px;} |
||||
|
|
||||
|
.tox .tox-statusbar{position: relative;display: flex;height: 18px;padding: 0 8px;overflow: hidden;font-size: 12px;color: rgba(255,255,255,.5);text-transform: uppercase;background-color: #222f3e;border-top: 1px solid #000;align-items: center;flex: 0 0 auto;} |
||||
|
|
||||
|
.tox .tox-statusbar a{color: rgba(255,255,255,.5);text-decoration: none;} |
||||
|
|
||||
|
.tox .tox-statusbar a:hover{text-decoration: underline;} |
||||
|
|
||||
|
.tox .tox-statusbar__text-container{display: flex;flex: 1 1 auto;justify-content: flex-end;overflow: hidden;} |
||||
|
|
||||
|
.tox .tox-statusbar__path{display: flex;flex: 1 1 auto;margin-right: auto;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;} |
||||
|
|
||||
|
.tox .tox-statusbar__path>*{display: inline;white-space: nowrap;} |
||||
|
|
||||
|
.tox .tox-statusbar__wordcount{flex: 0 0 auto;margin-left: 1ch;} |
||||
|
|
||||
|
.tox .tox-statusbar__resize-handle{display: flex;padding-left: 1ch;margin-right: -8px;margin-left: auto;cursor: nwse-resize;align-items: flex-end;align-self: stretch;flex: 0 0 auto;justify-content: flex-end;} |
||||
|
|
||||
|
.tox .tox-statusbar__resize-handle svg{display: block;fill: rgba(255,255,255,.5);} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-statusbar__path>*{margin-right: 4px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-statusbar__branding{margin-left: 1ch;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-statusbar{flex-direction: row-reverse;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-statusbar__path>*{margin-left: 4px;} |
||||
|
|
||||
|
.tox .tox-throbber{z-index: 1400;} |
||||
|
|
||||
|
.tox .tox-throbber__busy-spinner{position: absolute;top: 0;right: 0;bottom: 0;left: 0;display: flex;background-color: rgba(34,47,62,.6);align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-tbtn{display: flex;width: 34px;height: 34px;padding: 0;margin: 2px 0 3px 0;overflow: hidden;font-size: 14px;font-style: normal;font-weight: 400;color: #fff;text-transform: normal;background: 0 0;border: 0;border-radius: 3px;outline: 0;box-shadow: none;align-items: center;flex: 0 0 auto;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-tbtn svg{display: block;fill: #fff;} |
||||
|
|
||||
|
.tox .tox-tbtn.tox-tbtn-more{width: inherit;padding-right: 5px;padding-left: 5px;} |
||||
|
|
||||
|
.tox .tox-tbtn--enabled{color: #fff;background: #6f7882;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-tbtn--enabled>*{transform: none;} |
||||
|
|
||||
|
.tox .tox-tbtn--enabled svg{fill: #fff;} |
||||
|
|
||||
|
.tox .tox-tbtn:hover{color: #fff;background: #434e5b;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-tbtn:hover svg{fill: #fff;} |
||||
|
|
||||
|
.tox .tox-tbtn:focus{color: #fff;background: #434e5b;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-tbtn:focus svg{fill: #fff;} |
||||
|
|
||||
|
.tox .tox-tbtn:active{color: #fff;background: #6f7882;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-tbtn:active svg{fill: #fff;} |
||||
|
|
||||
|
.tox .tox-tbtn--disabled,.tox .tox-tbtn--disabled:hover,.tox .tox-tbtn:disabled,.tox .tox-tbtn:disabled:hover{color: rgba(255,255,255,.5);cursor: not-allowed;background: 0 0;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-tbtn--disabled svg,.tox .tox-tbtn--disabled:hover svg,.tox .tox-tbtn:disabled svg,.tox .tox-tbtn:disabled:hover svg{fill: rgba(255,255,255,.5);} |
||||
|
|
||||
|
.tox .tox-tbtn:active>*{transform: none;} |
||||
|
|
||||
|
.tox .tox-tbtn--md{width: 51px;height: 51px;} |
||||
|
|
||||
|
.tox .tox-tbtn--lg{width: 68px;height: 68px;flex-direction: column;} |
||||
|
|
||||
|
.tox .tox-tbtn--return{width: 16px;height: unset;align-self: stretch;} |
||||
|
|
||||
|
.tox .tox-tbtn--labeled{width: unset;padding: 0 4px;} |
||||
|
|
||||
|
.tox .tox-tbtn__vlabel{display: block;margin-bottom: 4px;font-size: 10px;font-weight: 400;letter-spacing: -.025em;white-space: nowrap;} |
||||
|
|
||||
|
.tox .tox-tbtn--select{width: auto;padding: 0 4px;margin: 2px 0 3px 0;} |
||||
|
|
||||
|
.tox .tox-tbtn__select-label{margin: 0 4px;font-weight: 400;cursor: default;} |
||||
|
|
||||
|
.tox .tox-tbtn__select-chevron{align-items: center;display: flex;justify-content: center;width: 16px;} |
||||
|
|
||||
|
.tox .tox-tbtn__select-chevron svg{fill: rgba(255,255,255,.5);} |
||||
|
|
||||
|
.tox .tox-tbtn--bespoke .tox-tbtn__select-label{width: 7em;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;} |
||||
|
|
||||
|
.tox .tox-split-button{display: flex;margin: 2px 0 3px 0;overflow: hidden;border: 0;border-radius: 3px;box-sizing: border-box;} |
||||
|
|
||||
|
.tox .tox-split-button:hover{box-shadow: 0 0 0 1px #434e5b inset;} |
||||
|
|
||||
|
.tox .tox-split-button:focus{color: #fff;background: #434e5b;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-split-button>*{border-radius: 0;} |
||||
|
|
||||
|
.tox .tox-split-button__chevron{width: 16px;} |
||||
|
|
||||
|
.tox .tox-split-button__chevron svg{fill: rgba(255,255,255,.5);} |
||||
|
|
||||
|
.tox .tox-pop .tox-split-button__chevron svg{transform: rotate(-90deg);} |
||||
|
|
||||
|
.tox .tox-split-button .tox-tbtn{margin: 0;} |
||||
|
|
||||
|
.tox .tox-split-button.tox-tbtn--disabled .tox-tbtn:focus,.tox .tox-split-button.tox-tbtn--disabled .tox-tbtn:hover,.tox .tox-split-button.tox-tbtn--disabled:focus,.tox .tox-split-button.tox-tbtn--disabled:hover{color: rgba(255,255,255,.5);background: 0 0;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-toolbar,.tox .tox-toolbar__overflow,.tox .tox-toolbar__primary{display: flex;padding: 0 0;margin-bottom: -1px;background: url("data:image/svg+xml;charset=utf8,%3Csvg height='39px' viewBox='0 0 40 39px' width='40' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='38px' width='100' height='1' fill='%23000000'/%3E%3C/svg%3E") left 0 top 0 #222f3e;background-color: #222f3e;border-top: 1px solid #000;flex: 0 0 auto;flex-shrink: 0;flex-wrap: wrap;} |
||||
|
|
||||
|
.tox .tox-toolbar__overflow.tox-toolbar__overflow--closed{height: 0;opacity: 0;visibility: hidden;} |
||||
|
|
||||
|
.tox .tox-toolbar__overflow--growing{transition: height .3s ease,opacity .2s linear .1s;} |
||||
|
|
||||
|
.tox .tox-toolbar__overflow--shrinking{transition: opacity .3s ease,height .2s linear .1s,visibility 0s linear .3s;} |
||||
|
|
||||
|
.tox .tox-pop .tox-toolbar{border-width: 0;} |
||||
|
|
||||
|
.tox .tox-toolbar--no-divider{background-image: none;} |
||||
|
|
||||
|
.tox.tox-tinymce-aux .tox-toolbar__overflow{background-color: #222f3e;border: 1px solid #000;border-radius: 3px;box-shadow: 0 1px 3px rgba(0,0,0,.15);} |
||||
|
|
||||
|
.tox.tox-tinymce-aux:not([dir=rtl]) .tox-toolbar__overflow{margin-left: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-tbtn__icon-rtl svg{transform: rotateY(180deg);} |
||||
|
|
||||
|
.tox[dir=rtl].tox-tinymce-aux .tox-toolbar__overflow{margin-right: 4px;} |
||||
|
|
||||
|
.tox .tox-toolbar__group{display: flex;padding: 0 4px;margin: 0 0;align-items: center;flex-wrap: wrap;} |
||||
|
|
||||
|
.tox .tox-toolbar__group--pull-right{margin-left: auto;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-toolbar__group:not(:last-of-type){border-right: 1px solid #000;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-toolbar__group:not(:last-of-type){border-left: 1px solid #000;} |
||||
|
|
||||
|
.tox .tox-tooltip{position: relative;display: inline-block;padding: 8px;} |
||||
|
|
||||
|
.tox .tox-tooltip__body{padding: 4px 8px;font-size: 14px;font-style: normal;font-weight: 400;color: rgba(255,255,255,.75);text-transform: normal;background-color: #3d546f;border-radius: 3px;box-shadow: 0 2px 4px rgba(34,47,62,.3);} |
||||
|
|
||||
|
.tox .tox-tooltip__arrow{position: absolute;} |
||||
|
|
||||
|
.tox .tox-tooltip--down .tox-tooltip__arrow{position: absolute;bottom: 0;left: 50%;border-top: 8px solid #3d546f;border-right: 8px solid transparent;border-left: 8px solid transparent;transform: translateX(-50%);} |
||||
|
|
||||
|
.tox .tox-tooltip--up .tox-tooltip__arrow{position: absolute;top: 0;left: 50%;border-right: 8px solid transparent;border-bottom: 8px solid #3d546f;border-left: 8px solid transparent;transform: translateX(-50%);} |
||||
|
|
||||
|
.tox .tox-tooltip--right .tox-tooltip__arrow{position: absolute;top: 50%;right: 0;border-top: 8px solid transparent;border-bottom: 8px solid transparent;border-left: 8px solid #3d546f;transform: translateY(-50%);} |
||||
|
|
||||
|
.tox .tox-tooltip--left .tox-tooltip__arrow{position: absolute;top: 50%;left: 0;border-top: 8px solid transparent;border-right: 8px solid #3d546f;border-bottom: 8px solid transparent;transform: translateY(-50%);} |
||||
|
|
||||
|
.tox .tox-well{width: 100%;padding: 8px;border: 1px solid #000;border-radius: 3px;} |
||||
|
|
||||
|
.tox .tox-well>:first-child{margin-top: 0;} |
||||
|
|
||||
|
.tox .tox-well>:last-child{margin-bottom: 0;} |
||||
|
|
||||
|
.tox .tox-well>:only-child{margin: 0;} |
||||
|
|
||||
|
.tox .tox-custom-editor{display: flex;height: 525px;border: 1px solid #000;border-radius: 3px;} |
||||
|
|
||||
|
.tox .tox-dialog-loading::before{position: absolute;z-index: 1000;width: 100%;height: 100%;background-color: rgba(0,0,0,.5);content: "";} |
||||
|
|
||||
|
.tox .tox-tab{cursor: pointer;} |
||||
|
|
||||
|
.tox .tox-dialog__content-js{display: flex;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content .tox-collection{display: flex;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox ul{display: block;list-style-type: disc;-webkit-margin-before: 1em;margin-block-start: 1em;-webkit-margin-after: 1em;margin-block-end: 1em;-webkit-margin-start: 0;margin-inline-start: 0;-webkit-margin-end: 0;margin-inline-end: 0;-webkit-padding-start: 40px;padding-inline-start: 40px;} |
||||
|
|
||||
|
.tox a{color: #2276d2;cursor: pointer;} |
||||
|
|
||||
|
.tox .tox-image-tools-edit-panel{height: 60px;} |
||||
|
|
||||
|
.tox .tox-image-tools__sidebar{height: 60px;} |
||||
@ -0,0 +1,239 @@ |
|||||
|
/** |
||||
|
* Copyright (c) Tiny Technologies, Inc. All rights reserved. |
||||
|
* Licensed under the LGPL or a commercial license. |
||||
|
* For LGPL see License.txt in the project root for license information. |
||||
|
* For commercial licenses see https://www.tiny.cloud/ |
||||
|
*/ |
||||
|
.tinymce-mobile-outer-container{all: initial;display: block;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container *{float: none;padding: 0;margin: 0;line-height: 1;text-shadow: none;white-space: nowrap;cursor: inherit;border: 0;outline: 0;box-sizing: initial;-webkit-tap-highlight-color: transparent;} |
||||
|
|
||||
|
.tinymce-mobile-icon-arrow-back::before{content: "\e5cd";} |
||||
|
|
||||
|
.tinymce-mobile-icon-image::before{content: "\e412";} |
||||
|
|
||||
|
.tinymce-mobile-icon-cancel-circle::before{content: "\e5c9";} |
||||
|
|
||||
|
.tinymce-mobile-icon-full-dot::before{content: "\e061";} |
||||
|
|
||||
|
.tinymce-mobile-icon-align-center::before{content: "\e234";} |
||||
|
|
||||
|
.tinymce-mobile-icon-align-left::before{content: "\e236";} |
||||
|
|
||||
|
.tinymce-mobile-icon-align-right::before{content: "\e237";} |
||||
|
|
||||
|
.tinymce-mobile-icon-bold::before{content: "\e238";} |
||||
|
|
||||
|
.tinymce-mobile-icon-italic::before{content: "\e23f";} |
||||
|
|
||||
|
.tinymce-mobile-icon-unordered-list::before{content: "\e241";} |
||||
|
|
||||
|
.tinymce-mobile-icon-ordered-list::before{content: "\e242";} |
||||
|
|
||||
|
.tinymce-mobile-icon-font-size::before{content: "\e245";} |
||||
|
|
||||
|
.tinymce-mobile-icon-underline::before{content: "\e249";} |
||||
|
|
||||
|
.tinymce-mobile-icon-link::before{content: "\e157";} |
||||
|
|
||||
|
.tinymce-mobile-icon-unlink::before{content: "\eca2";} |
||||
|
|
||||
|
.tinymce-mobile-icon-color::before{content: "\e891";} |
||||
|
|
||||
|
.tinymce-mobile-icon-previous::before{content: "\e314";} |
||||
|
|
||||
|
.tinymce-mobile-icon-next::before{content: "\e315";} |
||||
|
|
||||
|
.tinymce-mobile-icon-large-font::before,.tinymce-mobile-icon-style-formats::before{content: "\e264";} |
||||
|
|
||||
|
.tinymce-mobile-icon-undo::before{content: "\e166";} |
||||
|
|
||||
|
.tinymce-mobile-icon-redo::before{content: "\e15a";} |
||||
|
|
||||
|
.tinymce-mobile-icon-removeformat::before{content: "\e239";} |
||||
|
|
||||
|
.tinymce-mobile-icon-small-font::before{content: "\e906";} |
||||
|
|
||||
|
.tinymce-mobile-format-matches::after,.tinymce-mobile-icon-readonly-back::before{content: "\e5ca";} |
||||
|
|
||||
|
.tinymce-mobile-icon-small-heading::before{content: "small";} |
||||
|
|
||||
|
.tinymce-mobile-icon-large-heading::before{content: "large";} |
||||
|
|
||||
|
.tinymce-mobile-icon-large-heading::before,.tinymce-mobile-icon-small-heading::before{font-family: sans-serif;font-size: 80%;} |
||||
|
|
||||
|
.tinymce-mobile-mask-edit-icon::before{content: "\e254";} |
||||
|
|
||||
|
.tinymce-mobile-icon-back::before{content: "\e5c4";} |
||||
|
|
||||
|
.tinymce-mobile-icon-heading::before{font-family: sans-serif;font-size: 80%;font-weight: 700;content: "Headings";} |
||||
|
|
||||
|
.tinymce-mobile-icon-h1::before{font-weight: 700;content: "H1";} |
||||
|
|
||||
|
.tinymce-mobile-icon-h2::before{font-weight: 700;content: "H2";} |
||||
|
|
||||
|
.tinymce-mobile-icon-h3::before{font-weight: 700;content: "H3";} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask{position: absolute;top: 0;display: flex;width: 100%;height: 100%;background: rgba(51,51,51,.5);align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask .tinymce-mobile-content-container{display: flex;font-family: sans-serif;font-size: 1em;border-radius: 50%;align-items: center;flex-direction: column;justify-content: space-between;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask .tinymce-mobile-content-container .mixin-menu-item{display: flex;width: 2.1em;height: 2.1em;border-radius: 50%;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask .tinymce-mobile-content-container .tinymce-mobile-content-tap-section{align-items: center;display: flex;justify-content: center;flex-direction: column;font-size: 1em;}@media only screen and (min-device-width: 700px){.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask .tinymce-mobile-content-container .tinymce-mobile-content-tap-section{font-size: 1.2em;}} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask .tinymce-mobile-content-container .tinymce-mobile-content-tap-section .tinymce-mobile-mask-tap-icon{display: flex;width: 2.1em;height: 2.1em;color: #207ab7;background-color: #fff;border-radius: 50%;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask .tinymce-mobile-content-container .tinymce-mobile-content-tap-section .tinymce-mobile-mask-tap-icon::before{font-family: tinymce-mobile,sans-serif;content: "\e900";} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask .tinymce-mobile-content-container .tinymce-mobile-content-tap-section:not(.tinymce-mobile-mask-tap-icon-selected) .tinymce-mobile-mask-tap-icon{z-index: 2;} |
||||
|
|
||||
|
.tinymce-mobile-android-container.tinymce-mobile-android-maximized{position: fixed;top: 0;right: 0;bottom: 0;left: 0;display: flex;background: #fff;border: none;flex-direction: column;} |
||||
|
|
||||
|
.tinymce-mobile-android-container:not(.tinymce-mobile-android-maximized){position: relative;} |
||||
|
|
||||
|
.tinymce-mobile-android-container .tinymce-mobile-editor-socket{display: flex;flex-grow: 1;} |
||||
|
|
||||
|
.tinymce-mobile-android-container .tinymce-mobile-editor-socket iframe{display: flex !important;flex-grow: 1;height: auto !important;} |
||||
|
|
||||
|
.tinymce-mobile-android-scroll-reload{overflow: hidden;} |
||||
|
|
||||
|
:not(.tinymce-mobile-readonly-mode)>.tinymce-mobile-android-selection-context-toolbar{margin-top: 23px;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip{z-index: 1;display: flex;background: #fff;flex: 0 0 auto;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar{display: flex;width: 100%;height: 2.5em;background-color: #fff;border-bottom: 1px solid #ccc;align-items: center;flex: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group{align-items: center;display: flex;height: 100%;flex-shrink: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group>div{align-items: center;display: flex;height: 100%;flex: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group.tinymce-mobile-exit-container{background: #f44336;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group.tinymce-mobile-toolbar-scrollable-group{flex-grow: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group .tinymce-mobile-toolbar-group-item{padding-right: .5em;padding-left: .5em;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group .tinymce-mobile-toolbar-group-item.tinymce-mobile-toolbar-button{display: flex;height: 80%;margin-right: 2px;margin-left: 2px;align-items: center;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group .tinymce-mobile-toolbar-group-item.tinymce-mobile-toolbar-button.tinymce-mobile-toolbar-button-selected{color: #ccc;background: #c8cbcf;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group:first-of-type,.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group:last-of-type{color: #eceff1;background: #207ab7;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group{display: flex;height: 100%;padding-top: .4em;padding-bottom: .4em;align-items: center;flex: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog{position: relative;display: flex;width: 100%;min-height: 1.5em;padding-right: 0;padding-left: 0;overflow: hidden;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain{display: flex;width: 100%;height: 100%;transition: left cubic-bezier(.4,0,1,1) .15s;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen{display: flex;flex: 0 0 auto;justify-content: space-between;width: 100%;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen input{font-family: sans-serif;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-input-container{position: relative;display: flex;flex-grow: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-input-container .tinymce-mobile-input-container-x{position: absolute;right: 0;height: 100%;padding-right: 2px;font-size: .6em;font-weight: 700;color: #888;background: inherit;border: none;border-radius: 50%;align-self: center;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-input-container.tinymce-mobile-input-container-empty .tinymce-mobile-input-container-x{display: none;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-icon-next,.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-icon-previous{align-items: center;display: flex;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-icon-next::before,.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-icon-previous::before{display: flex;height: 100%;padding-right: .5em;padding-left: .5em;font-weight: 700;align-items: center;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-icon-next.tinymce-mobile-toolbar-navigation-disabled::before,.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-icon-previous.tinymce-mobile-toolbar-navigation-disabled::before{visibility: hidden;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-dot-item{padding-top: 3px;margin: 0 2px;font-size: 10px;line-height: 10px;color: #ccc;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-dot-item.tinymce-mobile-dot-active{color: #c8cbcf;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-icon-large-font::before,.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-icon-large-heading::before{margin-right: .9em;margin-left: .5em;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-icon-small-font::before,.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-icon-small-heading::before{margin-right: .5em;margin-left: .9em;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider{position: relative;display: flex;padding: .28em 0;margin-right: 0;margin-left: 0;flex: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider .tinymce-mobile-slider-size-container{align-items: center;display: flex;flex-grow: 1;height: 100%;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider .tinymce-mobile-slider-size-container .tinymce-mobile-slider-size-line{display: flex;height: .2em;margin-top: .3em;margin-bottom: .3em;background: #ccc;flex: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider.tinymce-mobile-hue-slider-container{padding-right: 2em;padding-left: 2em;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider.tinymce-mobile-hue-slider-container .tinymce-mobile-slider-gradient-container{align-items: center;display: flex;flex-grow: 1;height: 100%;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider.tinymce-mobile-hue-slider-container .tinymce-mobile-slider-gradient-container .tinymce-mobile-slider-gradient{display: flex;height: .2em;margin-top: .3em;margin-bottom: .3em;background: linear-gradient(to right,red 0,#feff00 17%,#0f0 33%,#00feff 50%,#00f 67%,#ff00fe 83%,red 100%);flex: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider.tinymce-mobile-hue-slider-container .tinymce-mobile-hue-slider-black{width: 1.2em;height: .2em;margin-top: .3em;margin-bottom: .3em;background: #000;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider.tinymce-mobile-hue-slider-container .tinymce-mobile-hue-slider-white{width: 1.2em;height: .2em;margin-top: .3em;margin-bottom: .3em;background: #fff;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider .tinymce-mobile-slider-thumb{position: absolute;top: 0;bottom: 0;left: -10px;display: flex;width: .5em;height: .5em;margin: auto;color: #fff;background-color: #455a64;border: .5em solid rgba(136,136,136,0);border-radius: 3em;transition: border 120ms cubic-bezier(.39,.58,.57,1);background-clip: padding-box;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider .tinymce-mobile-slider-thumb.tinymce-mobile-thumb-active{border: .5em solid rgba(136,136,136,.39);} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serializer-wrapper,.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group>div{align-items: center;display: flex;height: 100%;flex: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serializer-wrapper{flex-direction: column;justify-content: center;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-toolbar-group-item{align-items: center;display: flex;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-toolbar-group-item:not(.tinymce-mobile-serialised-dialog){height: 100%;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-dot-container{display: flex;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group input{padding-top: .1em;padding-bottom: .1em;padding-left: 5px;font-size: .85em;color: #455a64;background: #fff;border: none;border-radius: 0;flex-grow: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group input::-webkit-input-placeholder{color: #888;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group input::placeholder{color: #888;} |
||||
|
|
||||
|
.tinymce-mobile-dropup{display: flex;width: 100%;overflow: hidden;background: #fff;} |
||||
|
|
||||
|
.tinymce-mobile-dropup.tinymce-mobile-dropup-shrinking{transition: height .3s ease-out;} |
||||
|
|
||||
|
.tinymce-mobile-dropup.tinymce-mobile-dropup-growing{transition: height .3s ease-in;} |
||||
|
|
||||
|
.tinymce-mobile-dropup.tinymce-mobile-dropup-closed{flex-grow: 0;} |
||||
|
|
||||
|
.tinymce-mobile-dropup.tinymce-mobile-dropup-open:not(.tinymce-mobile-dropup-growing){flex-grow: 1;} |
||||
|
|
||||
|
.tinymce-mobile-ios-container .tinymce-mobile-dropup:not(.tinymce-mobile-dropup-closed){min-height: 200px;}@media only screen and (orientation: landscape){.tinymce-mobile-dropup:not(.tinymce-mobile-dropup-closed){min-height: 200px;}}@media only screen and (min-device-width: 320px) and (max-device-width: 568px) and (orientation: landscape){.tinymce-mobile-ios-container .tinymce-mobile-dropup:not(.tinymce-mobile-dropup-closed){min-height: 150px;}} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu{position: relative;width: 100%;overflow: hidden;font-family: sans-serif;outline: 4px solid #000;} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu [role=menu]{position: absolute;display: flex;width: 100%;height: 100%;flex-direction: column;} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu [role=menu].transitioning{transition: transform .5s ease-in-out;} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu .tinymce-mobile-styles-item{position: relative;display: flex;padding: 1em 1em;color: #455a64;cursor: pointer;border-bottom: 1px solid #ddd;} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu .tinymce-mobile-styles-collapser .tinymce-mobile-styles-collapse-icon::before{font-family: tinymce-mobile,sans-serif;color: #455a64;content: "\e314";} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu .tinymce-mobile-styles-item.tinymce-mobile-styles-item-is-menu::after{position: absolute;right: 0;padding-right: 1em;padding-left: 1em;font-family: tinymce-mobile,sans-serif;color: #455a64;content: "\e315";} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu .tinymce-mobile-styles-item.tinymce-mobile-format-matches::after{position: absolute;right: 0;padding-right: 1em;padding-left: 1em;font-family: tinymce-mobile,sans-serif;} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu .tinymce-mobile-styles-collapser,.tinymce-mobile-styles-menu .tinymce-mobile-styles-separator{display: flex;min-height: 2.5em;padding-right: 1em;padding-left: 1em;color: #455a64;background: #fff;border-top: #455a64;align-items: center;} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu [data-transitioning-destination=before][data-transitioning-state],.tinymce-mobile-styles-menu [data-transitioning-state=before]{transform: translate(-100%);} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu [data-transitioning-destination=current][data-transitioning-state],.tinymce-mobile-styles-menu [data-transitioning-state=current]{transform: translate(0);} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu [data-transitioning-destination=after][data-transitioning-state],.tinymce-mobile-styles-menu [data-transitioning-state=after]{transform: translate(100%);}@font-face{font-family: tinymce-mobile;font-style: normal;font-weight: 400;src: url(fonts/tinymce-mobile.woff?8x92w3) format('woff');}@media (min-device-width: 700px){.tinymce-mobile-outer-container,.tinymce-mobile-outer-container input{font-size: 25px;}}@media (max-device-width: 700px){.tinymce-mobile-outer-container,.tinymce-mobile-outer-container input{font-size: 18px;}} |
||||
|
|
||||
|
.tinymce-mobile-icon{font-family: tinymce-mobile,sans-serif;} |
||||
|
|
||||
|
.mixin-flex-and-centre{align-items: center;display: flex;justify-content: center;} |
||||
|
|
||||
|
.mixin-flex-bar{align-items: center;display: flex;height: 100%;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-editor-socket iframe{width: 100%;background-color: #fff;} |
||||
|
|
||||
|
.tinymce-mobile-editor-socket .tinymce-mobile-mask-edit-icon{position: fixed;right: 2em;bottom: 1em;display: flex;width: 2.1em;height: 2.1em;font-size: 1em;color: #fff;background-color: #207ab7;border-radius: 50%;align-items: center;justify-content: center;}@media only screen and (min-device-width: 700px){.tinymce-mobile-editor-socket .tinymce-mobile-mask-edit-icon{font-size: 1.2em;}} |
||||
|
|
||||
|
.tinymce-mobile-outer-container:not(.tinymce-mobile-fullscreen-maximized) .tinymce-mobile-editor-socket{height: 300px;overflow: hidden;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container:not(.tinymce-mobile-fullscreen-maximized) .tinymce-mobile-editor-socket iframe{height: 100%;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container:not(.tinymce-mobile-fullscreen-maximized) .tinymce-mobile-toolstrip{display: none;} |
||||
|
|
||||
|
input[type=file]::-webkit-file-upload-button{display: none;}@media only screen and (min-device-width: 320px) and (max-device-width: 568px) and (orientation: landscape){.tinymce-mobile-ios-container .tinymce-mobile-editor-socket .tinymce-mobile-mask-edit-icon{bottom: 50%;}} |
||||
@ -0,0 +1,239 @@ |
|||||
|
/** |
||||
|
* Copyright (c) Tiny Technologies, Inc. All rights reserved. |
||||
|
* Licensed under the LGPL or a commercial license. |
||||
|
* For LGPL see License.txt in the project root for license information. |
||||
|
* For commercial licenses see https://www.tiny.cloud/ |
||||
|
*/ |
||||
|
.mce-content-body .mce-item-anchor{display: inline-block;width: 8px !important;height: 12px !important;padding: 0 2px;cursor: default;background: transparent url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'8'%20height%3D'12'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20d%3D'M0%200L8%200%208%2012%204.09117821%209%200%2012z'%2F%3E%3C%2Fsvg%3E%0A") no-repeat center;-webkit-user-select: all;-moz-user-select: all;-ms-user-select: all;user-select: all;-webkit-user-modify: read-only;-moz-user-modify: read-only;} |
||||
|
|
||||
|
.mce-content-body .mce-item-anchor[data-mce-selected]{outline-offset: 1px;} |
||||
|
|
||||
|
.tox-comments-visible .tox-comment{background-color: #fff0b7;} |
||||
|
|
||||
|
.tox-comments-visible .tox-comment--active{background-color: #ffe168;} |
||||
|
|
||||
|
.tox-checklist>li:not(.tox-checklist--hidden){margin: .25em 0;list-style: none;} |
||||
|
|
||||
|
.tox-checklist>li:not(.tox-checklist--hidden)::before{position: absolute;width: 1em;height: 1em;margin-top: .125em;margin-left: -1.5em;cursor: pointer;background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cg%20id%3D%22checklist-unchecked%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Crect%20id%3D%22Rectangle%22%20width%3D%2215%22%20height%3D%2215%22%20x%3D%22.5%22%20y%3D%22.5%22%20fill-rule%3D%22nonzero%22%20stroke%3D%22%234C4C4C%22%20rx%3D%222%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%0A");background-size: 100%;content: '';} |
||||
|
|
||||
|
.tox-checklist li:not(.tox-checklist--hidden).tox-checklist--checked::before{background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cg%20id%3D%22checklist-checked%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Crect%20id%3D%22Rectangle%22%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22%234099FF%22%20fill-rule%3D%22nonzero%22%20rx%3D%222%22%2F%3E%3Cpath%20id%3D%22Path%22%20fill%3D%22%23FFF%22%20fill-rule%3D%22nonzero%22%20d%3D%22M11.5703186%2C3.14417309%20C11.8516238%2C2.73724603%2012.4164781%2C2.62829933%2012.83558%2C2.89774797%20C13.260121%2C3.17069355%2013.3759736%2C3.72932262%2013.0909105%2C4.14168582%20L7.7580587%2C11.8560195%20C7.43776896%2C12.3193404%206.76483983%2C12.3852142%206.35607322%2C11.9948725%20L3.02491697%2C8.8138662%20C2.66090143%2C8.46625845%202.65798871%2C7.89594698%203.01850234%2C7.54483354%20C3.373942%2C7.19866177%203.94940006%2C7.19592841%204.30829608%2C7.5386474%20L6.85276923%2C9.9684299%20L11.5703186%2C3.14417309%20Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%0A");} |
||||
|
|
||||
|
[dir=rtl] .tox-checklist>li:not(.tox-checklist--hidden)::before{margin-right: -1.5em;margin-left: 0;} |
||||
|
|
||||
|
code[class*=language-],pre[class*=language-]{font-family: Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size: .875rem;-webkit-hyphens: none;-ms-hyphens: none;hyphens: none;line-height: 1.5;word-spacing: normal;color: #000;text-shadow: 0 1px #fff;word-break: normal;word-wrap: normal;white-space: pre;-moz-tab-size: 4;tab-size: 4;} |
||||
|
|
||||
|
code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow: none;background: #b3d4fc;} |
||||
|
|
||||
|
code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow: none;background: #b3d4fc;}@media print{code[class*=language-],pre[class*=language-]{text-shadow: none;}} |
||||
|
|
||||
|
pre[class*=language-]{padding: 1em;margin: .5em 0;overflow: auto;} |
||||
|
|
||||
|
:not(pre)>code[class*=language-],pre[class*=language-]{background: 0 0 !important;border: 1px solid #ccc;} |
||||
|
|
||||
|
:not(pre)>code[class*=language-]{padding: .1em;border-radius: .3em;} |
||||
|
|
||||
|
.token.cdata,.token.comment,.token.doctype,.token.prolog{color: #708090;} |
||||
|
|
||||
|
.token.punctuation{color: #999;} |
||||
|
|
||||
|
.namespace{opacity: .7;} |
||||
|
|
||||
|
.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color: #905;} |
||||
|
|
||||
|
.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color: #690;} |
||||
|
|
||||
|
.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color: #a67f59;background: hsla(0,0%,100%,.5);} |
||||
|
|
||||
|
.token.atrule,.token.attr-value,.token.keyword{color: #07a;} |
||||
|
|
||||
|
.token.function{color: #dd4a68;} |
||||
|
|
||||
|
.token.important,.token.regex,.token.variable{color: #e90;} |
||||
|
|
||||
|
.token.bold,.token.important{font-weight: 700;} |
||||
|
|
||||
|
.token.italic{font-style: italic;} |
||||
|
|
||||
|
.token.entity{cursor: help;} |
||||
|
|
||||
|
:not([dir=rtl]) code[class*=language-],:not([dir=rtl]) pre[class*=language-]{text-align: left;direction: ltr;} |
||||
|
|
||||
|
[dir=rtl] code[class*=language-],[dir=rtl] pre[class*=language-]{text-align: right;direction: rtl;} |
||||
|
|
||||
|
.mce-content-body{overflow-wrap: break-word;word-wrap: break-word;} |
||||
|
|
||||
|
.mce-content-body .mce-visual-caret{position: absolute;background-color: #000;background-color: currentColor;} |
||||
|
|
||||
|
.mce-content-body .mce-visual-caret-hidden{display: none;} |
||||
|
|
||||
|
.mce-content-body [data-mce-caret]{position: absolute;top: 0;right: auto;left: -1000px;padding: 0;margin: 0;} |
||||
|
|
||||
|
.mce-content-body .mce-offscreen-selection{position: absolute;left: -9999999999px;max-width: 1000000px;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false]{cursor: default;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=true]{cursor: text;} |
||||
|
|
||||
|
.tox-cursor-format-painter{cursor: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%0A%20%20%3Cg%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%0A%20%20%20%20%3Cpath%20fill%3D%22%23000%22%20fill-rule%3D%22nonzero%22%20d%3D%22M15%2C6%20C15%2C5.45%2014.55%2C5%2014%2C5%20L6%2C5%20C5.45%2C5%205%2C5.45%205%2C6%20L5%2C10%20C5%2C10.55%205.45%2C11%206%2C11%20L14%2C11%20C14.55%2C11%2015%2C10.55%2015%2C10%20L15%2C9%20L16%2C9%20L16%2C12%20L9%2C12%20L9%2C19%20C9%2C19.55%209.45%2C20%2010%2C20%20L11%2C20%20C11.55%2C20%2012%2C19.55%2012%2C19%20L12%2C14%20L18%2C14%20L18%2C7%20L15%2C7%20L15%2C6%20Z%22%2F%3E%0A%20%20%20%20%3Cpath%20fill%3D%22%23000%22%20fill-rule%3D%22nonzero%22%20d%3D%22M1%2C1%20L8.25%2C1%20C8.66421356%2C1%209%2C1.33578644%209%2C1.75%20L9%2C1.75%20C9%2C2.16421356%208.66421356%2C2.5%208.25%2C2.5%20L2.5%2C2.5%20L2.5%2C8.25%20C2.5%2C8.66421356%202.16421356%2C9%201.75%2C9%20L1.75%2C9%20C1.33578644%2C9%201%2C8.66421356%201%2C8.25%20L1%2C1%20Z%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A"),default;} |
||||
|
|
||||
|
.mce-content-body figure.align-left{float: left;} |
||||
|
|
||||
|
.mce-content-body figure.align-right{float: right;} |
||||
|
|
||||
|
.mce-content-body figure.image.align-center{display: table;margin-right: auto;margin-left: auto;} |
||||
|
|
||||
|
.mce-preview-object{position: relative;display: inline-block;margin: 0 2px 0 2px;line-height: 0;border: 1px solid gray;} |
||||
|
|
||||
|
.mce-preview-object .mce-shim{position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);} |
||||
|
|
||||
|
.mce-preview-object[data-mce-selected="2"] .mce-shim{display: none;} |
||||
|
|
||||
|
.mce-object{background: transparent url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M4%203h16a1%201%200%200%201%201%201v16a1%201%200%200%201-1%201H4a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1zm1%202v14h14V5H5zm4.79%202.565l5.64%204.028a.5.5%200%200%201%200%20.814l-5.64%204.028a.5.5%200%200%201-.79-.407V7.972a.5.5%200%200%201%20.79-.407z%22%2F%3E%3C%2Fsvg%3E%0A") no-repeat center;border: 1px dashed #aaa;} |
||||
|
|
||||
|
.mce-pagebreak{display: block;width: 100%;height: 5px;margin-top: 15px;cursor: default;border: 1px dashed #aaa;page-break-before: always;}@media print{.mce-pagebreak{border: 0;}} |
||||
|
|
||||
|
.tiny-pageembed .mce-shim{position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);} |
||||
|
|
||||
|
.tiny-pageembed[data-mce-selected="2"] .mce-shim{display: none;} |
||||
|
|
||||
|
.tiny-pageembed{position: relative;display: inline-block;} |
||||
|
|
||||
|
.tiny-pageembed--16by9,.tiny-pageembed--1by1,.tiny-pageembed--21by9,.tiny-pageembed--4by3{position: relative;display: block;width: 100%;padding: 0;overflow: hidden;} |
||||
|
|
||||
|
.tiny-pageembed--16by9::before,.tiny-pageembed--1by1::before,.tiny-pageembed--21by9::before,.tiny-pageembed--4by3::before{display: block;content: "";} |
||||
|
|
||||
|
.tiny-pageembed--21by9::before{padding-top: 42.857143%;} |
||||
|
|
||||
|
.tiny-pageembed--16by9::before{padding-top: 56.25%;} |
||||
|
|
||||
|
.tiny-pageembed--4by3::before{padding-top: 75%;} |
||||
|
|
||||
|
.tiny-pageembed--1by1::before{padding-top: 100%;} |
||||
|
|
||||
|
.tiny-pageembed--16by9 iframe,.tiny-pageembed--1by1 iframe,.tiny-pageembed--21by9 iframe,.tiny-pageembed--4by3 iframe{position: absolute;top: 0;left: 0;width: 100%;height: 100%;border: 0;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle{position: absolute;z-index: 10000;width: 10px;height: 10px;background-color: #4099ff;border-color: #4099ff;border-style: solid;border-width: 1px;box-sizing: border-box;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:hover{background-color: #4099ff;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(1){cursor: nwse-resize;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(2){cursor: nesw-resize;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(3){cursor: nwse-resize;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(4){cursor: nesw-resize;} |
||||
|
|
||||
|
.mce-content-body .mce-clonedresizable{position: absolute;z-index: 10000;outline: 1px dashed #000;opacity: .5;} |
||||
|
|
||||
|
.mce-content-body .mce-resize-helper{position: absolute;z-index: 10001;display: none;padding: 5px;margin: 5px 10px;font-family: sans-serif;font-size: 12px;line-height: 14px;color: #fff;white-space: nowrap;background: #555;background: rgba(0,0,0,.75);border: 1px;border-radius: 3px;} |
||||
|
|
||||
|
.mce-match-marker{color: #fff;background: #aaa;} |
||||
|
|
||||
|
.mce-match-marker-selected{color: #fff;background: #39f;} |
||||
|
|
||||
|
.mce-content-body img[data-mce-selected],.mce-content-body table[data-mce-selected]{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body hr[data-mce-selected]{outline: 3px solid #b4d7ff;outline-offset: 1px;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false] [contentEditable=true]:focus{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false] [contentEditable=true]:hover{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false][data-mce-selected]{cursor: not-allowed;outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body.mce-content-readonly [contentEditable=true]:focus,.mce-content-body.mce-content-readonly [contentEditable=true]:hover{outline: 0;} |
||||
|
|
||||
|
.mce-content-body [data-mce-selected=inline-boundary]{background-color: #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body .mce-edit-focus{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected],.mce-content-body th[data-mce-selected]{background-color: #b4d7ff !important;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected]::-moz-selection,.mce-content-body th[data-mce-selected]::-moz-selection{background: 0 0;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected]::selection,.mce-content-body th[data-mce-selected]::selection{background: 0 0;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected] *,.mce-content-body th[data-mce-selected] *{-webkit-touch-callout: none;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;} |
||||
|
|
||||
|
.mce-content-body img::-moz-selection{background: 0 0;} |
||||
|
|
||||
|
.mce-content-body img::selection{background: 0 0;} |
||||
|
|
||||
|
.ephox-snooker-resizer-bar{background-color: #b4d7ff;opacity: 0;} |
||||
|
|
||||
|
.ephox-snooker-resizer-cols{cursor: col-resize;} |
||||
|
|
||||
|
.ephox-snooker-resizer-rows{cursor: row-resize;} |
||||
|
|
||||
|
.ephox-snooker-resizer-bar.ephox-snooker-resizer-bar-dragging{opacity: 1;} |
||||
|
|
||||
|
.mce-spellchecker-word{height: 2rem;cursor: default;background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'4'%20height%3D'4'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20stroke%3D'%23ff0000'%20fill%3D'none'%20stroke-linecap%3D'round'%20stroke-opacity%3D'.5'%20d%3D'M0%203L2%201%204%203'%2F%3E%3C%2Fsvg%3E%0A");background-position: 0 calc(100% + 1px);background-repeat: repeat-x;background-size: auto 6px;} |
||||
|
|
||||
|
.mce-spellchecker-grammar{cursor: default;background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'4'%20height%3D'4'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20stroke%3D'%23008800'%20fill%3D'none'%20stroke-linecap%3D'round'%20d%3D'M0%203L2%201%204%203'%2F%3E%3C%2Fsvg%3E%0A");background-position: 0 calc(100% + 1px);background-repeat: repeat-x;background-size: auto 6px;} |
||||
|
|
||||
|
.mce-toc{border: 1px solid gray;} |
||||
|
|
||||
|
.mce-toc h2{margin: 4px;} |
||||
|
|
||||
|
.mce-toc li{list-style-type: none;} |
||||
|
|
||||
|
.mce-item-table,.mce-item-table caption,.mce-item-table td,.mce-item-table th{border: 1px dashed #bbb;} |
||||
|
|
||||
|
.mce-visualblocks address,.mce-visualblocks article,.mce-visualblocks aside,.mce-visualblocks blockquote,.mce-visualblocks div:not([data-mce-bogus]),.mce-visualblocks dl,.mce-visualblocks figcaption,.mce-visualblocks figure,.mce-visualblocks h1,.mce-visualblocks h2,.mce-visualblocks h3,.mce-visualblocks h4,.mce-visualblocks h5,.mce-visualblocks h6,.mce-visualblocks hgroup,.mce-visualblocks ol,.mce-visualblocks p,.mce-visualblocks pre,.mce-visualblocks section,.mce-visualblocks ul{padding-top: 10px;margin-left: 3px;background-repeat: no-repeat;border: 1px dashed #bbb;} |
||||
|
|
||||
|
.mce-visualblocks p{background-image: url(data:image/gif;base64,R0lGODlhCQAJAJEAAAAAAP///7u7u////yH5BAEAAAMALAAAAAAJAAkAAAIQnG+CqCN/mlyvsRUpThG6AgA7);} |
||||
|
|
||||
|
.mce-visualblocks h1{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybGu1JuxHoAfRNRW3TWXyF2YiRUAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h2{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8Hybbx4oOuqgTynJd6bGlWg3DkJzoaUAAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h3{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIZjI8Hybbx4oOuqgTynJf2Ln2NOHpQpmhAAQA7);} |
||||
|
|
||||
|
.mce-visualblocks h4{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxInR0zqeAdhtJlXwV1oCll2HaWgAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h5{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxIoiuwjane4iq5GlW05GgIkIZUAAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h6{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxIoiuwjan04jep1iZ1XRlAo5bVgAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks div:not([data-mce-bogus]){background-image: url(data:image/gif;base64,R0lGODlhEgAKAIABALu7u////yH5BAEAAAEALAAAAAASAAoAAAIfjI9poI0cgDywrhuxfbrzDEbQM2Ei5aRjmoySW4pAAQA7);} |
||||
|
|
||||
|
.mce-visualblocks section{background-image: url(data:image/gif;base64,R0lGODlhKAAKAIABALu7u////yH5BAEAAAEALAAAAAAoAAoAAAI5jI+pywcNY3sBWHdNrplytD2ellDeSVbp+GmWqaDqDMepc8t17Y4vBsK5hDyJMcI6KkuYU+jpjLoKADs=);} |
||||
|
|
||||
|
.mce-visualblocks article{background-image: url(data:image/gif;base64,R0lGODlhKgAKAIABALu7u////yH5BAEAAAEALAAAAAAqAAoAAAI6jI+pywkNY3wG0GBvrsd2tXGYSGnfiF7ikpXemTpOiJScasYoDJJrjsG9gkCJ0ag6KhmaIe3pjDYBBQA7);} |
||||
|
|
||||
|
.mce-visualblocks blockquote{background-image: url(data:image/gif;base64,R0lGODlhPgAKAIABALu7u////yH5BAEAAAEALAAAAAA+AAoAAAJPjI+py+0Knpz0xQDyuUhvfoGgIX5iSKZYgq5uNL5q69asZ8s5rrf0yZmpNkJZzFesBTu8TOlDVAabUyatguVhWduud3EyiUk45xhTTgMBBQA7);} |
||||
|
|
||||
|
.mce-visualblocks address{background-image: url(data:image/gif;base64,R0lGODlhLQAKAIABALu7u////yH5BAEAAAEALAAAAAAtAAoAAAI/jI+pywwNozSP1gDyyZcjb3UaRpXkWaXmZW4OqKLhBmLs+K263DkJK7OJeifh7FicKD9A1/IpGdKkyFpNmCkAADs=);} |
||||
|
|
||||
|
.mce-visualblocks pre{background-image: url(data:image/gif;base64,R0lGODlhFQAKAIABALu7uwAAACH5BAEAAAEALAAAAAAVAAoAAAIjjI+ZoN0cgDwSmnpz1NCueYERhnibZVKLNnbOq8IvKpJtVQAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks figure{background-image: url(data:image/gif;base64,R0lGODlhJAAKAIAAALu7u////yH5BAEAAAEALAAAAAAkAAoAAAI0jI+py+2fwAHUSFvD3RlvG4HIp4nX5JFSpnZUJ6LlrM52OE7uSWosBHScgkSZj7dDKnWAAgA7);} |
||||
|
|
||||
|
.mce-visualblocks figcaption{border: 1px dashed #bbb;} |
||||
|
|
||||
|
.mce-visualblocks hgroup{background-image: url(data:image/gif;base64,R0lGODlhJwAKAIABALu7uwAAACH5BAEAAAEALAAAAAAnAAoAAAI3jI+pywYNI3uB0gpsRtt5fFnfNZaVSYJil4Wo03Hv6Z62uOCgiXH1kZIIJ8NiIxRrAZNMZAtQAAA7);} |
||||
|
|
||||
|
.mce-visualblocks aside{background-image: url(data:image/gif;base64,R0lGODlhHgAKAIABAKqqqv///yH5BAEAAAEALAAAAAAeAAoAAAItjI+pG8APjZOTzgtqy7I3f1yehmQcFY4WKZbqByutmW4aHUd6vfcVbgudgpYCADs=);} |
||||
|
|
||||
|
.mce-visualblocks ul{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIAAALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybGuYnqUVSjvw26DzzXiqIDlVwAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks ol{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybH6HHt0qourxC6CvzXieHyeWQAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks dl{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybEOnmOvUoWznTqeuEjNSCqeGRUAOw==);} |
||||
|
|
||||
|
.mce-visualblocks:not([dir=rtl]) address,.mce-visualblocks:not([dir=rtl]) article,.mce-visualblocks:not([dir=rtl]) aside,.mce-visualblocks:not([dir=rtl]) blockquote,.mce-visualblocks:not([dir=rtl]) div:not([data-mce-bogus]),.mce-visualblocks:not([dir=rtl]) dl,.mce-visualblocks:not([dir=rtl]) figcaption,.mce-visualblocks:not([dir=rtl]) figure,.mce-visualblocks:not([dir=rtl]) h1,.mce-visualblocks:not([dir=rtl]) h2,.mce-visualblocks:not([dir=rtl]) h3,.mce-visualblocks:not([dir=rtl]) h4,.mce-visualblocks:not([dir=rtl]) h5,.mce-visualblocks:not([dir=rtl]) h6,.mce-visualblocks:not([dir=rtl]) hgroup,.mce-visualblocks:not([dir=rtl]) ol,.mce-visualblocks:not([dir=rtl]) p,.mce-visualblocks:not([dir=rtl]) pre,.mce-visualblocks:not([dir=rtl]) section,.mce-visualblocks:not([dir=rtl]) ul{margin-left: 3px;} |
||||
|
|
||||
|
.mce-visualblocks[dir=rtl] address,.mce-visualblocks[dir=rtl] article,.mce-visualblocks[dir=rtl] aside,.mce-visualblocks[dir=rtl] blockquote,.mce-visualblocks[dir=rtl] div:not([data-mce-bogus]),.mce-visualblocks[dir=rtl] dl,.mce-visualblocks[dir=rtl] figcaption,.mce-visualblocks[dir=rtl] figure,.mce-visualblocks[dir=rtl] h1,.mce-visualblocks[dir=rtl] h2,.mce-visualblocks[dir=rtl] h3,.mce-visualblocks[dir=rtl] h4,.mce-visualblocks[dir=rtl] h5,.mce-visualblocks[dir=rtl] h6,.mce-visualblocks[dir=rtl] hgroup,.mce-visualblocks[dir=rtl] ol,.mce-visualblocks[dir=rtl] p,.mce-visualblocks[dir=rtl] pre,.mce-visualblocks[dir=rtl] section,.mce-visualblocks[dir=rtl] ul{background-position-x: right;margin-right: 3px;} |
||||
|
|
||||
|
.mce-nbsp,.mce-shy{background: #aaa;} |
||||
|
|
||||
|
.mce-shy::after{content: '-';} |
||||
|
|
||||
|
.tox-toolbar-dock-fadeout{opacity: 0;visibility: hidden;} |
||||
|
|
||||
|
.tox-toolbar-dock-fadein{opacity: 1;visibility: visible;} |
||||
|
|
||||
|
.tox-toolbar-dock-transition{transition: visibility 0s linear .3s,opacity .3s ease;} |
||||
|
|
||||
|
.tox-toolbar-dock-transition.tox-toolbar-dock-fadein{transition-delay: 0s;} |
||||
@ -0,0 +1,235 @@ |
|||||
|
/** |
||||
|
* Copyright (c) Tiny Technologies, Inc. All rights reserved. |
||||
|
* Licensed under the LGPL or a commercial license. |
||||
|
* For LGPL see License.txt in the project root for license information. |
||||
|
* For commercial licenses see https://www.tiny.cloud/ |
||||
|
*/ |
||||
|
.mce-content-body .mce-item-anchor{display: inline-block;width: 8px !important;height: 12px !important;padding: 0 2px;cursor: default;background: transparent url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'8'%20height%3D'12'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20d%3D'M0%200L8%200%208%2012%204.09117821%209%200%2012z'%2F%3E%3C%2Fsvg%3E%0A") no-repeat center;-webkit-user-select: all;-moz-user-select: all;-ms-user-select: all;user-select: all;-webkit-user-modify: read-only;-moz-user-modify: read-only;} |
||||
|
|
||||
|
.mce-content-body .mce-item-anchor[data-mce-selected]{outline-offset: 1px;} |
||||
|
|
||||
|
.tox-comments-visible .tox-comment{background-color: #fff0b7;} |
||||
|
|
||||
|
.tox-comments-visible .tox-comment--active{background-color: #ffe168;} |
||||
|
|
||||
|
.tox-checklist>li:not(.tox-checklist--hidden){margin: .25em 0;list-style: none;} |
||||
|
|
||||
|
.tox-checklist>li:not(.tox-checklist--hidden)::before{position: absolute;width: 1em;height: 1em;margin-top: .125em;margin-left: -1.5em;cursor: pointer;background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cg%20id%3D%22checklist-unchecked%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Crect%20id%3D%22Rectangle%22%20width%3D%2215%22%20height%3D%2215%22%20x%3D%22.5%22%20y%3D%22.5%22%20fill-rule%3D%22nonzero%22%20stroke%3D%22%234C4C4C%22%20rx%3D%222%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%0A");background-size: 100%;content: '';} |
||||
|
|
||||
|
.tox-checklist li:not(.tox-checklist--hidden).tox-checklist--checked::before{background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cg%20id%3D%22checklist-checked%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Crect%20id%3D%22Rectangle%22%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22%234099FF%22%20fill-rule%3D%22nonzero%22%20rx%3D%222%22%2F%3E%3Cpath%20id%3D%22Path%22%20fill%3D%22%23FFF%22%20fill-rule%3D%22nonzero%22%20d%3D%22M11.5703186%2C3.14417309%20C11.8516238%2C2.73724603%2012.4164781%2C2.62829933%2012.83558%2C2.89774797%20C13.260121%2C3.17069355%2013.3759736%2C3.72932262%2013.0909105%2C4.14168582%20L7.7580587%2C11.8560195%20C7.43776896%2C12.3193404%206.76483983%2C12.3852142%206.35607322%2C11.9948725%20L3.02491697%2C8.8138662%20C2.66090143%2C8.46625845%202.65798871%2C7.89594698%203.01850234%2C7.54483354%20C3.373942%2C7.19866177%203.94940006%2C7.19592841%204.30829608%2C7.5386474%20L6.85276923%2C9.9684299%20L11.5703186%2C3.14417309%20Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%0A");} |
||||
|
|
||||
|
[dir=rtl] .tox-checklist>li:not(.tox-checklist--hidden)::before{margin-right: -1.5em;margin-left: 0;} |
||||
|
|
||||
|
code[class*=language-],pre[class*=language-]{font-family: Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size: .875rem;-webkit-hyphens: none;-ms-hyphens: none;hyphens: none;line-height: 1.5;word-spacing: normal;color: #000;text-shadow: 0 1px #fff;word-break: normal;word-wrap: normal;white-space: pre;-moz-tab-size: 4;tab-size: 4;} |
||||
|
|
||||
|
code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow: none;background: #b3d4fc;} |
||||
|
|
||||
|
code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow: none;background: #b3d4fc;}@media print{code[class*=language-],pre[class*=language-]{text-shadow: none;}} |
||||
|
|
||||
|
pre[class*=language-]{padding: 1em;margin: .5em 0;overflow: auto;} |
||||
|
|
||||
|
:not(pre)>code[class*=language-],pre[class*=language-]{background: 0 0 !important;border: 1px solid #ccc;} |
||||
|
|
||||
|
:not(pre)>code[class*=language-]{padding: .1em;border-radius: .3em;} |
||||
|
|
||||
|
.token.cdata,.token.comment,.token.doctype,.token.prolog{color: #708090;} |
||||
|
|
||||
|
.token.punctuation{color: #999;} |
||||
|
|
||||
|
.namespace{opacity: .7;} |
||||
|
|
||||
|
.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color: #905;} |
||||
|
|
||||
|
.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color: #690;} |
||||
|
|
||||
|
.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color: #a67f59;background: hsla(0,0%,100%,.5);} |
||||
|
|
||||
|
.token.atrule,.token.attr-value,.token.keyword{color: #07a;} |
||||
|
|
||||
|
.token.function{color: #dd4a68;} |
||||
|
|
||||
|
.token.important,.token.regex,.token.variable{color: #e90;} |
||||
|
|
||||
|
.token.bold,.token.important{font-weight: 700;} |
||||
|
|
||||
|
.token.italic{font-style: italic;} |
||||
|
|
||||
|
.token.entity{cursor: help;} |
||||
|
|
||||
|
:not([dir=rtl]) code[class*=language-],:not([dir=rtl]) pre[class*=language-]{text-align: left;direction: ltr;} |
||||
|
|
||||
|
[dir=rtl] code[class*=language-],[dir=rtl] pre[class*=language-]{text-align: right;direction: rtl;} |
||||
|
|
||||
|
.mce-content-body{overflow-wrap: break-word;word-wrap: break-word;} |
||||
|
|
||||
|
.mce-content-body .mce-visual-caret{position: absolute;background-color: #000;background-color: currentColor;} |
||||
|
|
||||
|
.mce-content-body .mce-visual-caret-hidden{display: none;} |
||||
|
|
||||
|
.mce-content-body [data-mce-caret]{position: absolute;top: 0;right: auto;left: -1000px;padding: 0;margin: 0;} |
||||
|
|
||||
|
.mce-content-body .mce-offscreen-selection{position: absolute;left: -9999999999px;max-width: 1000000px;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false]{cursor: default;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=true]{cursor: text;} |
||||
|
|
||||
|
.tox-cursor-format-painter{cursor: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%0A%20%20%3Cg%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%0A%20%20%20%20%3Cpath%20fill%3D%22%23000%22%20fill-rule%3D%22nonzero%22%20d%3D%22M15%2C6%20C15%2C5.45%2014.55%2C5%2014%2C5%20L6%2C5%20C5.45%2C5%205%2C5.45%205%2C6%20L5%2C10%20C5%2C10.55%205.45%2C11%206%2C11%20L14%2C11%20C14.55%2C11%2015%2C10.55%2015%2C10%20L15%2C9%20L16%2C9%20L16%2C12%20L9%2C12%20L9%2C19%20C9%2C19.55%209.45%2C20%2010%2C20%20L11%2C20%20C11.55%2C20%2012%2C19.55%2012%2C19%20L12%2C14%20L18%2C14%20L18%2C7%20L15%2C7%20L15%2C6%20Z%22%2F%3E%0A%20%20%20%20%3Cpath%20fill%3D%22%23000%22%20fill-rule%3D%22nonzero%22%20d%3D%22M1%2C1%20L8.25%2C1%20C8.66421356%2C1%209%2C1.33578644%209%2C1.75%20L9%2C1.75%20C9%2C2.16421356%208.66421356%2C2.5%208.25%2C2.5%20L2.5%2C2.5%20L2.5%2C8.25%20C2.5%2C8.66421356%202.16421356%2C9%201.75%2C9%20L1.75%2C9%20C1.33578644%2C9%201%2C8.66421356%201%2C8.25%20L1%2C1%20Z%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A"),default;} |
||||
|
|
||||
|
.mce-content-body figure.align-left{float: left;} |
||||
|
|
||||
|
.mce-content-body figure.align-right{float: right;} |
||||
|
|
||||
|
.mce-content-body figure.image.align-center{display: table;margin-right: auto;margin-left: auto;} |
||||
|
|
||||
|
.mce-preview-object{position: relative;display: inline-block;margin: 0 2px 0 2px;line-height: 0;border: 1px solid gray;} |
||||
|
|
||||
|
.mce-preview-object .mce-shim{position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);} |
||||
|
|
||||
|
.mce-preview-object[data-mce-selected="2"] .mce-shim{display: none;} |
||||
|
|
||||
|
.mce-object{background: transparent url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M4%203h16a1%201%200%200%201%201%201v16a1%201%200%200%201-1%201H4a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1zm1%202v14h14V5H5zm4.79%202.565l5.64%204.028a.5.5%200%200%201%200%20.814l-5.64%204.028a.5.5%200%200%201-.79-.407V7.972a.5.5%200%200%201%20.79-.407z%22%2F%3E%3C%2Fsvg%3E%0A") no-repeat center;border: 1px dashed #aaa;} |
||||
|
|
||||
|
.mce-pagebreak{display: block;width: 100%;height: 5px;margin-top: 15px;cursor: default;border: 1px dashed #aaa;page-break-before: always;}@media print{.mce-pagebreak{border: 0;}} |
||||
|
|
||||
|
.tiny-pageembed .mce-shim{position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);} |
||||
|
|
||||
|
.tiny-pageembed[data-mce-selected="2"] .mce-shim{display: none;} |
||||
|
|
||||
|
.tiny-pageembed{position: relative;display: inline-block;} |
||||
|
|
||||
|
.tiny-pageembed--16by9,.tiny-pageembed--1by1,.tiny-pageembed--21by9,.tiny-pageembed--4by3{position: relative;display: block;width: 100%;padding: 0;overflow: hidden;} |
||||
|
|
||||
|
.tiny-pageembed--16by9::before,.tiny-pageembed--1by1::before,.tiny-pageembed--21by9::before,.tiny-pageembed--4by3::before{display: block;content: "";} |
||||
|
|
||||
|
.tiny-pageembed--21by9::before{padding-top: 42.857143%;} |
||||
|
|
||||
|
.tiny-pageembed--16by9::before{padding-top: 56.25%;} |
||||
|
|
||||
|
.tiny-pageembed--4by3::before{padding-top: 75%;} |
||||
|
|
||||
|
.tiny-pageembed--1by1::before{padding-top: 100%;} |
||||
|
|
||||
|
.tiny-pageembed--16by9 iframe,.tiny-pageembed--1by1 iframe,.tiny-pageembed--21by9 iframe,.tiny-pageembed--4by3 iframe{position: absolute;top: 0;left: 0;width: 100%;height: 100%;border: 0;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle{position: absolute;z-index: 10000;width: 10px;height: 10px;background-color: #4099ff;border-color: #4099ff;border-style: solid;border-width: 1px;box-sizing: border-box;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:hover{background-color: #4099ff;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(1){cursor: nwse-resize;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(2){cursor: nesw-resize;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(3){cursor: nwse-resize;} |
||||
|
|
||||
|
.mce-content-body div.mce-resizehandle:nth-of-type(4){cursor: nesw-resize;} |
||||
|
|
||||
|
.mce-content-body .mce-clonedresizable{position: absolute;z-index: 10000;outline: 1px dashed #000;opacity: .5;} |
||||
|
|
||||
|
.mce-content-body .mce-resize-helper{position: absolute;z-index: 10001;display: none;padding: 5px;margin: 5px 10px;font-family: sans-serif;font-size: 12px;line-height: 14px;color: #fff;white-space: nowrap;background: #555;background: rgba(0,0,0,.75);border: 1px;border-radius: 3px;} |
||||
|
|
||||
|
.mce-match-marker{color: #fff;background: #aaa;} |
||||
|
|
||||
|
.mce-match-marker-selected{color: #fff;background: #39f;} |
||||
|
|
||||
|
.mce-content-body img[data-mce-selected],.mce-content-body table[data-mce-selected]{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body hr[data-mce-selected]{outline: 3px solid #b4d7ff;outline-offset: 1px;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false] [contentEditable=true]:focus{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false] [contentEditable=true]:hover{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body [contentEditable=false][data-mce-selected]{cursor: not-allowed;outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body.mce-content-readonly [contentEditable=true]:focus,.mce-content-body.mce-content-readonly [contentEditable=true]:hover{outline: 0;} |
||||
|
|
||||
|
.mce-content-body [data-mce-selected=inline-boundary]{background-color: #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body .mce-edit-focus{outline: 3px solid #b4d7ff;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected],.mce-content-body th[data-mce-selected]{background-color: #b4d7ff !important;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected]::-moz-selection,.mce-content-body th[data-mce-selected]::-moz-selection{background: 0 0;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected]::selection,.mce-content-body th[data-mce-selected]::selection{background: 0 0;} |
||||
|
|
||||
|
.mce-content-body td[data-mce-selected] *,.mce-content-body th[data-mce-selected] *{-webkit-touch-callout: none;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;} |
||||
|
|
||||
|
.mce-content-body img::-moz-selection{background: 0 0;} |
||||
|
|
||||
|
.mce-content-body img::selection{background: 0 0;} |
||||
|
|
||||
|
.ephox-snooker-resizer-bar{background-color: #b4d7ff;opacity: 0;} |
||||
|
|
||||
|
.ephox-snooker-resizer-cols{cursor: col-resize;} |
||||
|
|
||||
|
.ephox-snooker-resizer-rows{cursor: row-resize;} |
||||
|
|
||||
|
.ephox-snooker-resizer-bar.ephox-snooker-resizer-bar-dragging{opacity: 1;} |
||||
|
|
||||
|
.mce-spellchecker-word{height: 2rem;cursor: default;background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'4'%20height%3D'4'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20stroke%3D'%23ff0000'%20fill%3D'none'%20stroke-linecap%3D'round'%20stroke-opacity%3D'.5'%20d%3D'M0%203L2%201%204%203'%2F%3E%3C%2Fsvg%3E%0A");background-position: 0 calc(100% + 1px);background-repeat: repeat-x;background-size: auto 6px;} |
||||
|
|
||||
|
.mce-spellchecker-grammar{cursor: default;background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'4'%20height%3D'4'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20stroke%3D'%23008800'%20fill%3D'none'%20stroke-linecap%3D'round'%20d%3D'M0%203L2%201%204%203'%2F%3E%3C%2Fsvg%3E%0A");background-position: 0 calc(100% + 1px);background-repeat: repeat-x;background-size: auto 6px;} |
||||
|
|
||||
|
.mce-toc{border: 1px solid gray;} |
||||
|
|
||||
|
.mce-toc h2{margin: 4px;} |
||||
|
|
||||
|
.mce-toc li{list-style-type: none;} |
||||
|
|
||||
|
.mce-item-table,.mce-item-table caption,.mce-item-table td,.mce-item-table th{border: 1px dashed #bbb;} |
||||
|
|
||||
|
.mce-visualblocks address,.mce-visualblocks article,.mce-visualblocks aside,.mce-visualblocks blockquote,.mce-visualblocks div:not([data-mce-bogus]),.mce-visualblocks dl,.mce-visualblocks figcaption,.mce-visualblocks figure,.mce-visualblocks h1,.mce-visualblocks h2,.mce-visualblocks h3,.mce-visualblocks h4,.mce-visualblocks h5,.mce-visualblocks h6,.mce-visualblocks hgroup,.mce-visualblocks ol,.mce-visualblocks p,.mce-visualblocks pre,.mce-visualblocks section,.mce-visualblocks ul{padding-top: 10px;margin-left: 3px;background-repeat: no-repeat;border: 1px dashed #bbb;} |
||||
|
|
||||
|
.mce-visualblocks p{background-image: url(data:image/gif;base64,R0lGODlhCQAJAJEAAAAAAP///7u7u////yH5BAEAAAMALAAAAAAJAAkAAAIQnG+CqCN/mlyvsRUpThG6AgA7);} |
||||
|
|
||||
|
.mce-visualblocks h1{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybGu1JuxHoAfRNRW3TWXyF2YiRUAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h2{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8Hybbx4oOuqgTynJd6bGlWg3DkJzoaUAAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h3{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIZjI8Hybbx4oOuqgTynJf2Ln2NOHpQpmhAAQA7);} |
||||
|
|
||||
|
.mce-visualblocks h4{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxInR0zqeAdhtJlXwV1oCll2HaWgAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h5{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxIoiuwjane4iq5GlW05GgIkIZUAAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks h6{background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxIoiuwjan04jep1iZ1XRlAo5bVgAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks div:not([data-mce-bogus]){background-image: url(data:image/gif;base64,R0lGODlhEgAKAIABALu7u////yH5BAEAAAEALAAAAAASAAoAAAIfjI9poI0cgDywrhuxfbrzDEbQM2Ei5aRjmoySW4pAAQA7);} |
||||
|
|
||||
|
.mce-visualblocks section{background-image: url(data:image/gif;base64,R0lGODlhKAAKAIABALu7u////yH5BAEAAAEALAAAAAAoAAoAAAI5jI+pywcNY3sBWHdNrplytD2ellDeSVbp+GmWqaDqDMepc8t17Y4vBsK5hDyJMcI6KkuYU+jpjLoKADs=);} |
||||
|
|
||||
|
.mce-visualblocks article{background-image: url(data:image/gif;base64,R0lGODlhKgAKAIABALu7u////yH5BAEAAAEALAAAAAAqAAoAAAI6jI+pywkNY3wG0GBvrsd2tXGYSGnfiF7ikpXemTpOiJScasYoDJJrjsG9gkCJ0ag6KhmaIe3pjDYBBQA7);} |
||||
|
|
||||
|
.mce-visualblocks blockquote{background-image: url(data:image/gif;base64,R0lGODlhPgAKAIABALu7u////yH5BAEAAAEALAAAAAA+AAoAAAJPjI+py+0Knpz0xQDyuUhvfoGgIX5iSKZYgq5uNL5q69asZ8s5rrf0yZmpNkJZzFesBTu8TOlDVAabUyatguVhWduud3EyiUk45xhTTgMBBQA7);} |
||||
|
|
||||
|
.mce-visualblocks address{background-image: url(data:image/gif;base64,R0lGODlhLQAKAIABALu7u////yH5BAEAAAEALAAAAAAtAAoAAAI/jI+pywwNozSP1gDyyZcjb3UaRpXkWaXmZW4OqKLhBmLs+K263DkJK7OJeifh7FicKD9A1/IpGdKkyFpNmCkAADs=);} |
||||
|
|
||||
|
.mce-visualblocks pre{background-image: url(data:image/gif;base64,R0lGODlhFQAKAIABALu7uwAAACH5BAEAAAEALAAAAAAVAAoAAAIjjI+ZoN0cgDwSmnpz1NCueYERhnibZVKLNnbOq8IvKpJtVQAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks figure{background-image: url(data:image/gif;base64,R0lGODlhJAAKAIAAALu7u////yH5BAEAAAEALAAAAAAkAAoAAAI0jI+py+2fwAHUSFvD3RlvG4HIp4nX5JFSpnZUJ6LlrM52OE7uSWosBHScgkSZj7dDKnWAAgA7);} |
||||
|
|
||||
|
.mce-visualblocks figcaption{border: 1px dashed #bbb;} |
||||
|
|
||||
|
.mce-visualblocks hgroup{background-image: url(data:image/gif;base64,R0lGODlhJwAKAIABALu7uwAAACH5BAEAAAEALAAAAAAnAAoAAAI3jI+pywYNI3uB0gpsRtt5fFnfNZaVSYJil4Wo03Hv6Z62uOCgiXH1kZIIJ8NiIxRrAZNMZAtQAAA7);} |
||||
|
|
||||
|
.mce-visualblocks aside{background-image: url(data:image/gif;base64,R0lGODlhHgAKAIABAKqqqv///yH5BAEAAAEALAAAAAAeAAoAAAItjI+pG8APjZOTzgtqy7I3f1yehmQcFY4WKZbqByutmW4aHUd6vfcVbgudgpYCADs=);} |
||||
|
|
||||
|
.mce-visualblocks ul{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIAAALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybGuYnqUVSjvw26DzzXiqIDlVwAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks ol{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybH6HHt0qourxC6CvzXieHyeWQAAOw==);} |
||||
|
|
||||
|
.mce-visualblocks dl{background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybEOnmOvUoWznTqeuEjNSCqeGRUAOw==);} |
||||
|
|
||||
|
.mce-visualblocks:not([dir=rtl]) address,.mce-visualblocks:not([dir=rtl]) article,.mce-visualblocks:not([dir=rtl]) aside,.mce-visualblocks:not([dir=rtl]) blockquote,.mce-visualblocks:not([dir=rtl]) div:not([data-mce-bogus]),.mce-visualblocks:not([dir=rtl]) dl,.mce-visualblocks:not([dir=rtl]) figcaption,.mce-visualblocks:not([dir=rtl]) figure,.mce-visualblocks:not([dir=rtl]) h1,.mce-visualblocks:not([dir=rtl]) h2,.mce-visualblocks:not([dir=rtl]) h3,.mce-visualblocks:not([dir=rtl]) h4,.mce-visualblocks:not([dir=rtl]) h5,.mce-visualblocks:not([dir=rtl]) h6,.mce-visualblocks:not([dir=rtl]) hgroup,.mce-visualblocks:not([dir=rtl]) ol,.mce-visualblocks:not([dir=rtl]) p,.mce-visualblocks:not([dir=rtl]) pre,.mce-visualblocks:not([dir=rtl]) section,.mce-visualblocks:not([dir=rtl]) ul{margin-left: 3px;} |
||||
|
|
||||
|
.mce-visualblocks[dir=rtl] address,.mce-visualblocks[dir=rtl] article,.mce-visualblocks[dir=rtl] aside,.mce-visualblocks[dir=rtl] blockquote,.mce-visualblocks[dir=rtl] div:not([data-mce-bogus]),.mce-visualblocks[dir=rtl] dl,.mce-visualblocks[dir=rtl] figcaption,.mce-visualblocks[dir=rtl] figure,.mce-visualblocks[dir=rtl] h1,.mce-visualblocks[dir=rtl] h2,.mce-visualblocks[dir=rtl] h3,.mce-visualblocks[dir=rtl] h4,.mce-visualblocks[dir=rtl] h5,.mce-visualblocks[dir=rtl] h6,.mce-visualblocks[dir=rtl] hgroup,.mce-visualblocks[dir=rtl] ol,.mce-visualblocks[dir=rtl] p,.mce-visualblocks[dir=rtl] pre,.mce-visualblocks[dir=rtl] section,.mce-visualblocks[dir=rtl] ul{background-position-x: right;margin-right: 3px;} |
||||
|
|
||||
|
.mce-nbsp,.mce-shy{background: #aaa;} |
||||
|
|
||||
|
.mce-shy::after{content: '-';} |
||||
|
|
||||
|
body{font-family: sans-serif;} |
||||
|
|
||||
|
table{border-collapse: collapse;} |
||||
@ -0,0 +1,17 @@ |
|||||
|
/** |
||||
|
* Copyright (c) Tiny Technologies, Inc. All rights reserved. |
||||
|
* Licensed under the LGPL or a commercial license. |
||||
|
* For LGPL see License.txt in the project root for license information. |
||||
|
* For commercial licenses see https://www.tiny.cloud/ |
||||
|
*/ |
||||
|
.tinymce-mobile-unfocused-selections .tinymce-mobile-unfocused-selection{position: absolute;display: inline-block;background-color: green;opacity: .5;} |
||||
|
|
||||
|
body{-webkit-text-size-adjust: none;} |
||||
|
|
||||
|
body img{max-width: 96vw;} |
||||
|
|
||||
|
body table img{max-width: 95%;} |
||||
|
|
||||
|
body{font-family: sans-serif;} |
||||
|
|
||||
|
table{border-collapse: collapse;} |
||||
@ -0,0 +1,875 @@ |
|||||
|
/** |
||||
|
* Copyright (c) Tiny Technologies, Inc. All rights reserved. |
||||
|
* Licensed under the LGPL or a commercial license. |
||||
|
* For LGPL see License.txt in the project root for license information. |
||||
|
* For commercial licenses see https://www.tiny.cloud/ |
||||
|
*/ |
||||
|
.tox{font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size: 16px;font-style: normal;font-weight: 400;line-height: normal;color: #222f3e;text-decoration: none;text-shadow: none;text-transform: none;white-space: normal;vertical-align: initial;cursor: auto;box-sizing: content-box;-webkit-tap-highlight-color: transparent;} |
||||
|
|
||||
|
.tox :not(svg){font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;line-height: inherit;color: inherit;text-align: inherit;text-decoration: inherit;text-shadow: inherit;text-transform: inherit;white-space: inherit;vertical-align: inherit;cursor: inherit;box-sizing: inherit;direction: inherit;-webkit-tap-highlight-color: inherit;} |
||||
|
|
||||
|
.tox :not(svg){position: static;float: none;width: auto;height: auto;max-width: none;padding: 0;margin: 0;background: 0 0;border: 0;outline: 0;} |
||||
|
|
||||
|
.tox:not([dir=rtl]){text-align: left;direction: ltr;} |
||||
|
|
||||
|
.tox[dir=rtl]{text-align: right;direction: rtl;} |
||||
|
|
||||
|
.tox-tinymce{position: relative;display: flex;overflow: hidden;font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;border: 1px solid #ccc;border-radius: 0;visibility: inherit !important;box-shadow: none;box-sizing: border-box;flex-direction: column;} |
||||
|
|
||||
|
.tox-editor-container{display: flex;flex: 1 1 auto;flex-direction: column;overflow: hidden;} |
||||
|
|
||||
|
.tox-editor-container>:first-child{border-top: none !important;} |
||||
|
|
||||
|
.tox-tinymce-aux{font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;} |
||||
|
|
||||
|
.tox-tinymce :focus,.tox-tinymce-aux :focus{outline: 0;} |
||||
|
|
||||
|
button::-moz-focus-inner{border: 0;} |
||||
|
|
||||
|
.tox-silver-sink{z-index: 1300;} |
||||
|
|
||||
|
.tox .tox-anchorbar{display: flex;flex: 0 0 auto;} |
||||
|
|
||||
|
.tox .tox-bar{display: flex;flex: 0 0 auto;} |
||||
|
|
||||
|
.tox .tox-button{display: inline-block;padding: 4px 16px;margin: 0;font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size: 14px;font-weight: 700;line-height: 24px;letter-spacing: 1;color: #fff;text-align: center;text-decoration: none;text-transform: capitalize;white-space: nowrap;cursor: pointer;background-color: #207ab7;background-image: none;background-position: none;background-repeat: none;border-color: #207ab7;border-style: solid;border-width: 1px;border-radius: 3px;outline: 0;box-shadow: none;box-sizing: border-box;} |
||||
|
|
||||
|
.tox .tox-button[disabled]{color: rgba(255,255,255,.5);cursor: not-allowed;background-color: #207ab7;background-image: none;border-color: #207ab7;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button:focus:not(:disabled){color: #fff;background-color: #1c6ca1;background-image: none;border-color: #1c6ca1;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button:hover:not(:disabled){color: #fff;background-color: #1c6ca1;background-image: none;border-color: #1c6ca1;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button:active:not(:disabled){color: #fff;background-color: #185d8c;background-image: none;border-color: #185d8c;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--secondary{padding: 4px 16px;color: #222f3e;text-decoration: none;text-transform: capitalize;background-color: #f0f0f0;background-image: none;background-position: none;background-repeat: none;border-color: #f0f0f0;border-style: solid;border-width: 1px;border-radius: 3px;outline: 0;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--secondary[disabled]{color: rgba(34,47,62,.5);background-color: #f0f0f0;background-image: none;border-color: #f0f0f0;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--secondary:focus:not(:disabled){color: #222f3e;background-color: #e3e3e3;background-image: none;border-color: #e3e3e3;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--secondary:hover:not(:disabled){color: #222f3e;background-color: #e3e3e3;background-image: none;border-color: #e3e3e3;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--secondary:active:not(:disabled){color: #222f3e;background-color: #d6d6d6;background-image: none;border-color: #d6d6d6;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--icon,.tox .tox-button.tox-button--icon,.tox .tox-button.tox-button--secondary.tox-button--icon{padding: 4px;} |
||||
|
|
||||
|
.tox .tox-button--icon .tox-icon svg,.tox .tox-button.tox-button--icon .tox-icon svg,.tox .tox-button.tox-button--secondary.tox-button--icon .tox-icon svg{display: block;fill: currentColor;} |
||||
|
|
||||
|
.tox .tox-button-link{display: inline-block;padding: 0;margin: 0;font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size: 16px;font-weight: 400;line-height: 1.3;white-space: nowrap;cursor: pointer;background: 0;border: none;box-sizing: border-box;} |
||||
|
|
||||
|
.tox .tox-button-link--sm{font-size: 14px;} |
||||
|
|
||||
|
.tox .tox-button--naked{color: #222f3e;background-color: transparent;border-color: transparent;box-shadow: unset;} |
||||
|
|
||||
|
.tox .tox-button--naked:hover:not(:disabled){color: #222f3e;background-color: #e3e3e3;border-color: #e3e3e3;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--naked:focus:not(:disabled){color: #222f3e;background-color: #e3e3e3;border-color: #e3e3e3;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--naked:active:not(:disabled){color: #222f3e;background-color: #d6d6d6;border-color: #d6d6d6;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-button--naked .tox-icon svg{fill: currentColor;} |
||||
|
|
||||
|
.tox .tox-button--naked.tox-button--icon{color: currentColor;} |
||||
|
|
||||
|
.tox .tox-button--naked.tox-button--icon:hover:not(:disabled){color: #222f3e;} |
||||
|
|
||||
|
.tox .tox-checkbox{display: flex;height: 36px;min-width: 36px;cursor: pointer;border-radius: 3px;align-items: center;} |
||||
|
|
||||
|
.tox .tox-checkbox__input{position: absolute;top: auto;left: -10000px;width: 1px;height: 1px;overflow: hidden;} |
||||
|
|
||||
|
.tox .tox-checkbox__icons{width: 24px;height: 24px;padding: calc(4px - 1px);border-radius: 3px;box-shadow: 0 0 0 2px transparent;box-sizing: content-box;} |
||||
|
|
||||
|
.tox .tox-checkbox__icons .tox-checkbox-icon__unchecked svg{display: block;fill: rgba(34,47,62,.3);} |
||||
|
|
||||
|
.tox .tox-checkbox__icons .tox-checkbox-icon__indeterminate svg{display: none;fill: #207ab7;} |
||||
|
|
||||
|
.tox .tox-checkbox__icons .tox-checkbox-icon__checked svg{display: none;fill: #207ab7;} |
||||
|
|
||||
|
.tox input.tox-checkbox__input:checked+.tox-checkbox__icons .tox-checkbox-icon__unchecked svg{display: none;} |
||||
|
|
||||
|
.tox input.tox-checkbox__input:checked+.tox-checkbox__icons .tox-checkbox-icon__checked svg{display: block;} |
||||
|
|
||||
|
.tox input.tox-checkbox__input:indeterminate+.tox-checkbox__icons .tox-checkbox-icon__unchecked svg{display: none;} |
||||
|
|
||||
|
.tox input.tox-checkbox__input:indeterminate+.tox-checkbox__icons .tox-checkbox-icon__indeterminate svg{display: block;} |
||||
|
|
||||
|
.tox input.tox-checkbox__input:focus+.tox-checkbox__icons{padding: calc(4px - 1px);border-radius: 3px;box-shadow: inset 0 0 0 1px #207ab7;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-checkbox__label{margin-left: 4px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-bar .tox-checkbox{margin-left: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-checkbox__label{margin-right: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-bar .tox-checkbox{margin-right: 4px;} |
||||
|
|
||||
|
.tox .tox-collection--toolbar .tox-collection__group{display: flex;padding: 0;} |
||||
|
|
||||
|
.tox .tox-collection--grid .tox-collection__group{display: flex;max-height: 208px;padding: 0;overflow-x: hidden;overflow-y: auto;flex-wrap: wrap;} |
||||
|
|
||||
|
.tox .tox-collection--list .tox-collection__group{padding: 4px 0;border-color: #ccc;border-style: solid;border-top-width: 1px;border-right-width: 0;border-bottom-width: 0;border-left-width: 0;} |
||||
|
|
||||
|
.tox .tox-collection--list .tox-collection__group:first-child{border-top-width: 0;} |
||||
|
|
||||
|
.tox .tox-collection__group-heading{padding: 4px 8px;margin-top: -4px;margin-bottom: 4px;font-size: 12px;font-style: normal;font-weight: 400;color: rgba(34,47,62,.7);text-transform: none;cursor: default;background-color: #e6e6e6;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;-webkit-touch-callout: none;} |
||||
|
|
||||
|
.tox .tox-collection__item{display: flex;color: #222f3e;cursor: pointer;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;align-items: center;-webkit-touch-callout: none;} |
||||
|
|
||||
|
.tox .tox-collection--list .tox-collection__item{padding: 4px 8px;} |
||||
|
|
||||
|
.tox .tox-collection--toolbar .tox-collection__item{padding: 4px;border-radius: 3px;} |
||||
|
|
||||
|
.tox .tox-collection--grid .tox-collection__item{padding: 4px;border-radius: 3px;} |
||||
|
|
||||
|
.tox .tox-collection--list .tox-collection__item--enabled{color: contrast(inherit,#222f3e,#fff);background-color: inherit;} |
||||
|
|
||||
|
.tox .tox-collection--list .tox-collection__item--active:not(.tox-collection__item--state-disabled){color: #222f3e;background-color: #dee0e2;} |
||||
|
|
||||
|
.tox .tox-collection--toolbar .tox-collection__item--enabled{color: #222f3e;background-color: #c8cbcf;} |
||||
|
|
||||
|
.tox .tox-collection--toolbar .tox-collection__item--active:not(.tox-collection__item--state-disabled){color: #222f3e;background-color: #dee0e2;} |
||||
|
|
||||
|
.tox .tox-collection--grid .tox-collection__item--enabled{color: #222f3e;background-color: #c8cbcf;} |
||||
|
|
||||
|
.tox .tox-collection--grid .tox-collection__item--active:not(.tox-collection__item--state-disabled){color: #222f3e;background-color: #dee0e2;} |
||||
|
|
||||
|
.tox .tox-collection__item--state-disabled{color: rgba(34,47,62,.5);cursor: default;background-color: transparent;} |
||||
|
|
||||
|
.tox .tox-collection__item-icon{display: flex;width: 24px;height: 24px;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-collection__item-icon svg{fill: currentColor;} |
||||
|
|
||||
|
.tox .tox-collection--toolbar-lg .tox-collection__item-icon{width: 48px;height: 48px;} |
||||
|
|
||||
|
.tox .tox-collection__item[role=menuitemcheckbox]:not(.tox-collection__item--enabled) .tox-collection__item-checkmark svg{display: none;} |
||||
|
|
||||
|
.tox .tox-collection__item-label{display: inline-block;font-size: 14px;font-style: normal;font-weight: 400;line-height: 24px;color: currentColor;text-transform: none;word-break: break-all;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-collection__item-accessory{display: inline-block;height: 24px;font-size: 14px;line-height: 24px;color: rgba(34,47,62,.7);text-transform: normal;} |
||||
|
|
||||
|
.tox .tox-collection__item-caret{align-items: center;display: flex;min-height: 24px;} |
||||
|
|
||||
|
.tox .tox-collection__item-caret::after{min-height: inherit;font-size: 0;content: '';} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-collection--list .tox-collection__item>:not(:first-child){margin-left: 8px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-collection--list .tox-collection__item-label:first-child{margin-left: 4px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-collection__item-accessory{margin-left: 16px;text-align: right;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-collection__item-caret{margin-left: 16px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-collection--list .tox-collection__item>:not(:first-child){margin-right: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-collection--list .tox-collection__item-label:first-child{margin-right: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-collection__item-icon-rtl .tox-collection__item-icon svg{transform: rotateY(180deg);} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-collection__item-accessory{margin-right: 16px;text-align: left;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-collection__item-caret{margin-right: 16px;transform: rotateY(180deg);} |
||||
|
|
||||
|
.tox .tox-color-picker-container{display: flex;flex-direction: row;height: 225px;margin: 0;} |
||||
|
|
||||
|
.tox .tox-sv-palette{display: flex;height: 100%;box-sizing: border-box;} |
||||
|
|
||||
|
.tox .tox-sv-palette-spectrum{height: 100%;} |
||||
|
|
||||
|
.tox .tox-sv-palette,.tox .tox-sv-palette-spectrum{width: 225px;} |
||||
|
|
||||
|
.tox .tox-sv-palette-thumb{position: absolute;width: 12px;height: 12px;background: 0 0;border: 1px solid #000;border-radius: 50%;box-sizing: content-box;} |
||||
|
|
||||
|
.tox .tox-sv-palette-inner-thumb{position: absolute;width: 10px;height: 10px;border: 1px solid #fff;border-radius: 50%;} |
||||
|
|
||||
|
.tox .tox-hue-slider{width: 25px;height: 100%;box-sizing: border-box;} |
||||
|
|
||||
|
.tox .tox-hue-slider-spectrum{width: 100%;height: 100%;background: linear-gradient(to bottom,red,#ff0080,#f0f,#8000ff,#00f,#0080ff,#0ff,#00ff80,#0f0,#80ff00,#ff0,#ff8000,red);} |
||||
|
|
||||
|
.tox .tox-hue-slider,.tox .tox-hue-slider-spectrum{width: 20px;} |
||||
|
|
||||
|
.tox .tox-hue-slider-thumb{width: 100%;height: 4px;background: #fff;border: 1px solid #000;box-sizing: content-box;} |
||||
|
|
||||
|
.tox .tox-rgb-form{display: flex;flex-direction: column;justify-content: space-between;} |
||||
|
|
||||
|
.tox .tox-rgb-form div{display: flex;width: inherit;margin-bottom: 5px;align-items: center;justify-content: space-between;} |
||||
|
|
||||
|
.tox .tox-rgb-form input{width: 6em;} |
||||
|
|
||||
|
.tox .tox-rgb-form input.tox-invalid{border: 1px solid red !important;} |
||||
|
|
||||
|
.tox .tox-rgb-form .tox-rgba-preview{margin-bottom: 0;border: 1px solid #000;flex-grow: 2;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-sv-palette{margin-right: 15px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-hue-slider{margin-right: 15px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-hue-slider-thumb{margin-left: -1px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-rgb-form label{margin-right: .5em;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-sv-palette{margin-left: 15px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-hue-slider{margin-left: 15px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-hue-slider-thumb{margin-right: -1px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-rgb-form label{margin-left: .5em;} |
||||
|
|
||||
|
.tox .tox-toolbar .tox-swatches,.tox .tox-toolbar__overflow .tox-swatches,.tox .tox-toolbar__primary .tox-swatches{margin: 2px 0 3px 4px;} |
||||
|
|
||||
|
.tox .tox-collection--list .tox-collection__group .tox-swatches-menu{margin: -4px 0;border: 0;} |
||||
|
|
||||
|
.tox .tox-swatches__row{display: flex;} |
||||
|
|
||||
|
.tox .tox-swatch{width: 30px;height: 30px;transition: transform .15s,box-shadow .15s;} |
||||
|
|
||||
|
.tox .tox-swatch:focus,.tox .tox-swatch:hover{transform: scale(.8);box-shadow: 0 0 0 1px rgba(127,127,127,.3) inset;} |
||||
|
|
||||
|
.tox .tox-swatch--remove{align-items: center;display: flex;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-swatch--remove svg path{stroke: #e74c3c;} |
||||
|
|
||||
|
.tox .tox-swatches__picker-btn{display: flex;width: 30px;height: 30px;padding: 0;cursor: pointer;background-color: transparent;border: 0;outline: 0;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-swatches__picker-btn svg{width: 24px;height: 24px;} |
||||
|
|
||||
|
.tox .tox-swatches__picker-btn:hover{background: #dee0e2;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-swatches__picker-btn{margin-left: auto;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-swatches__picker-btn{margin-right: auto;} |
||||
|
|
||||
|
.tox .tox-comment-thread{position: relative;background: #fff;} |
||||
|
|
||||
|
.tox .tox-comment-thread>:not(:first-child){margin-top: 8px;} |
||||
|
|
||||
|
.tox .tox-comment{position: relative;padding: 8px 8px 16px 8px;background: #fff;border: 1px solid #ccc;border-radius: 3px;box-shadow: 0 4px 8px 0 rgba(34,47,62,.1);} |
||||
|
|
||||
|
.tox .tox-comment__header{display: flex;color: #222f3e;align-items: center;justify-content: space-between;} |
||||
|
|
||||
|
.tox .tox-comment__date{font-size: 12px;color: rgba(34,47,62,.7);} |
||||
|
|
||||
|
.tox .tox-comment__body{position: relative;margin-top: 8px;font-size: 14px;font-style: normal;font-weight: 400;line-height: 1.3;color: #222f3e;text-transform: initial;} |
||||
|
|
||||
|
.tox .tox-comment__body textarea{width: 100%;white-space: normal;resize: none;} |
||||
|
|
||||
|
.tox .tox-comment__expander{padding-top: 8px;} |
||||
|
|
||||
|
.tox .tox-comment__expander p{font-size: 14px;font-style: normal;color: rgba(34,47,62,.7);} |
||||
|
|
||||
|
.tox .tox-comment__body p{margin: 0;} |
||||
|
|
||||
|
.tox .tox-comment__buttonspacing{padding-top: 16px;text-align: center;} |
||||
|
|
||||
|
.tox .tox-comment-thread__overlay::after{position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 5;display: flex;background: #fff;content: "";opacity: .9;} |
||||
|
|
||||
|
.tox .tox-comment__reply{display: flex;flex-shrink: 0;flex-wrap: wrap;justify-content: flex-end;margin-top: 8px;} |
||||
|
|
||||
|
.tox .tox-comment__reply>:first-child{width: 100%;margin-bottom: 8px;} |
||||
|
|
||||
|
.tox .tox-comment__edit{display: flex;flex-wrap: wrap;justify-content: flex-end;margin-top: 16px;} |
||||
|
|
||||
|
.tox .tox-comment__gradient::after{position: absolute;bottom: 0;display: block;width: 100%;height: 5em;margin-top: -40px;background: linear-gradient(rgba(255,255,255,0),#fff);content: "";} |
||||
|
|
||||
|
.tox .tox-comment__overlay{position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 5;display: flex;text-align: center;background: #fff;opacity: .9;flex-direction: column;flex-grow: 1;} |
||||
|
|
||||
|
.tox .tox-comment__loading-text{position: relative;display: flex;color: #222f3e;align-items: center;flex-direction: column;} |
||||
|
|
||||
|
.tox .tox-comment__loading-text>div{padding-bottom: 16px;} |
||||
|
|
||||
|
.tox .tox-comment__overlaytext{position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 10;padding: 1em;font-size: 14px;flex-direction: column;} |
||||
|
|
||||
|
.tox .tox-comment__overlaytext p{color: #222f3e;text-align: center;background-color: #fff;box-shadow: 0 0 8px 8px #fff;} |
||||
|
|
||||
|
.tox .tox-comment__overlaytext div:nth-of-type(2){font-size: .8em;} |
||||
|
|
||||
|
.tox .tox-comment__busy-spinner{position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 1103;display: flex;background-color: #fff;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-comment__scroll{display: flex;flex-direction: column;flex-shrink: 1;overflow: auto;} |
||||
|
|
||||
|
.tox .tox-conversations{margin: 8px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-comment__edit{margin-left: 8px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-comment__buttonspacing>:last-child,.tox:not([dir=rtl]) .tox-comment__edit>:last-child,.tox:not([dir=rtl]) .tox-comment__reply>:last-child{margin-left: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-comment__edit{margin-right: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-comment__buttonspacing>:last-child,.tox[dir=rtl] .tox-comment__edit>:last-child,.tox[dir=rtl] .tox-comment__reply>:last-child{margin-right: 8px;} |
||||
|
|
||||
|
.tox .tox-user{align-items: center;display: flex;} |
||||
|
|
||||
|
.tox .tox-user__avatar svg{fill: rgba(34,47,62,.7);} |
||||
|
|
||||
|
.tox .tox-user__name{font-size: 12px;font-style: normal;font-weight: 700;color: rgba(34,47,62,.7);text-transform: uppercase;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-user__avatar svg{margin-right: 8px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-user__avatar+.tox-user__name{margin-left: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-user__avatar svg{margin-left: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-user__avatar+.tox-user__name{margin-right: 8px;} |
||||
|
|
||||
|
.tox .tox-dialog-wrap{position: fixed;top: 0;right: 0;bottom: 0;left: 0;z-index: 1100;display: flex;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-dialog-wrap__backdrop{position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 1101;background-color: rgba(255,255,255,.75);} |
||||
|
|
||||
|
.tox .tox-dialog{position: relative;z-index: 1102;display: flex;width: 95vw;max-width: 480px;max-height: 100%;overflow: hidden;background-color: #fff;border-color: #ccc;border-style: solid;border-width: 1px;border-radius: 3px;box-shadow: 0 16px 16px -10px rgba(34,47,62,.15),0 0 40px 1px rgba(34,47,62,.15);flex-direction: column;} |
||||
|
|
||||
|
.tox .tox-dialog__header{position: relative;display: flex;padding: 8px 16px 0 16px;margin-bottom: 16px;font-size: 16px;color: #222f3e;background-color: #fff;border-bottom: none;align-items: center;justify-content: space-between;} |
||||
|
|
||||
|
.tox .tox-dialog__header .tox-button{z-index: 1;} |
||||
|
|
||||
|
.tox .tox-dialog__draghandle{position: absolute;top: 0;left: 0;width: 100%;height: 100%;cursor: grab;} |
||||
|
|
||||
|
.tox .tox-dialog__draghandle:active{cursor: grabbing;} |
||||
|
|
||||
|
.tox .tox-dialog__dismiss{margin-left: auto;} |
||||
|
|
||||
|
.tox .tox-dialog__title{margin: 0;font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size: 20px;font-style: normal;font-weight: 400;line-height: 1.3;text-transform: normal;} |
||||
|
|
||||
|
.tox .tox-dialog__body{display: flex;min-width: 0;padding: 0 16px;font-size: 16px;font-style: normal;font-weight: 400;line-height: 1.3;color: #222f3e;text-align: left;text-transform: normal;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-dialog__body-nav{align-items: flex-start;display: flex;flex-direction: column;} |
||||
|
|
||||
|
.tox .tox-dialog__body-nav-item{display: inline-block;margin-bottom: 8px;font-size: 14px;line-height: 1.3;color: rgba(34,47,62,.7);text-decoration: none;border-bottom: 2px solid transparent;} |
||||
|
|
||||
|
.tox .tox-dialog__body-nav-item--active{color: #207ab7;border-bottom: 2px solid #207ab7;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content{display: flex;flex: 1;flex-direction: column;-ms-flex-preferred-size: auto;max-height: 650px;overflow: auto;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content>*{margin-top: 16px;margin-bottom: 0;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content>:first-child{margin-top: 0;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content>:last-child{margin-bottom: 0;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content>:only-child{margin-top: 0;margin-bottom: 0;} |
||||
|
|
||||
|
.tox .tox-dialog--width-lg{height: 650px;max-width: 1200px;} |
||||
|
|
||||
|
.tox .tox-dialog--width-md{max-width: 800px;} |
||||
|
|
||||
|
.tox .tox-dialog--width-md .tox-dialog__body-content{overflow: auto;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content--centered{text-align: center;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content--spacious{margin-bottom: 16px;} |
||||
|
|
||||
|
.tox .tox-dialog__footer{display: flex;padding: 8px 16px;margin-top: 16px;background-color: #fff;border-top: 1px solid #ccc;align-items: center;justify-content: space-between;} |
||||
|
|
||||
|
.tox .tox-dialog__busy-spinner{position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 1103;display: flex;background-color: rgba(255,255,255,.75);align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-dialog__table{width: 100%;border-collapse: collapse;} |
||||
|
|
||||
|
.tox .tox-dialog__table thead th{padding-bottom: 8px;font-weight: 700;} |
||||
|
|
||||
|
.tox .tox-dialog__table tbody tr{border-bottom: 1px solid #ccc;} |
||||
|
|
||||
|
.tox .tox-dialog__table tbody tr:last-child{border-bottom: none;} |
||||
|
|
||||
|
.tox .tox-dialog__table td{padding-top: 8px;padding-bottom: 8px;} |
||||
|
|
||||
|
.tox .tox-dialog__popups{position: absolute;z-index: 1100;width: 100%;} |
||||
|
|
||||
|
.tox .tox-dialog__body-iframe{display: flex;flex: 1;flex-direction: column;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-dialog__body-iframe .tox-navobj{display: flex;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-dialog__body-iframe .tox-navobj :nth-child(2){flex: 1;-ms-flex-preferred-size: auto;height: 100%;} |
||||
|
|
||||
|
body.tox-dialog__disable-scroll{overflow: hidden;} |
||||
|
|
||||
|
.tox.tox-platform-ie .tox-dialog-wrap{position: -ms-device-fixed;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-dialog__body-nav{margin-right: 32px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-dialog__footer .tox-dialog__footer-end>*,.tox:not([dir=rtl]) .tox-dialog__footer .tox-dialog__footer-start>*{margin-left: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-dialog__body{text-align: right;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-dialog__body-nav{margin-left: 32px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-dialog__footer .tox-dialog__footer-end>*,.tox[dir=rtl] .tox-dialog__footer .tox-dialog__footer-start>*{margin-right: 8px;} |
||||
|
|
||||
|
.tox .tox-dropzone-container{display: flex;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-dropzone{display: flex;min-height: 100px;padding: 10px;background: #fff;border: 2px dashed #ccc;box-sizing: border-box;align-items: center;flex-direction: column;flex-grow: 1;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-dropzone p{margin: 0 0 16px 0;color: rgba(34,47,62,.7);} |
||||
|
|
||||
|
.tox .tox-edit-area{position: relative;display: flex;overflow: hidden;border-top: 1px solid #ccc;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-edit-area__iframe{position: absolute;width: 100%;height: 100%;background-color: #fff;border: 0;box-sizing: border-box;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox.tox-inline-edit-area{border: 1px dotted #ccc;} |
||||
|
|
||||
|
.tox .tox-control-wrap{flex: 1;position: relative;} |
||||
|
|
||||
|
.tox .tox-control-wrap:not(.tox-control-wrap--status-invalid) .tox-control-wrap__status-icon-invalid,.tox .tox-control-wrap:not(.tox-control-wrap--status-unknown) .tox-control-wrap__status-icon-unknown,.tox .tox-control-wrap:not(.tox-control-wrap--status-valid) .tox-control-wrap__status-icon-valid{display: none;} |
||||
|
|
||||
|
.tox .tox-control-wrap svg{display: block;} |
||||
|
|
||||
|
.tox .tox-control-wrap__status-icon-wrap{position: absolute;top: 50%;transform: translateY(-50%);} |
||||
|
|
||||
|
.tox .tox-control-wrap__status-icon-invalid svg{fill: #c00;} |
||||
|
|
||||
|
.tox .tox-control-wrap__status-icon-unknown svg{fill: orange;} |
||||
|
|
||||
|
.tox .tox-control-wrap__status-icon-valid svg{fill: green;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-control-wrap--status-invalid .tox-textfield,.tox:not([dir=rtl]) .tox-control-wrap--status-unknown .tox-textfield,.tox:not([dir=rtl]) .tox-control-wrap--status-valid .tox-textfield{padding-right: 32px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-control-wrap__status-icon-wrap{right: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-control-wrap--status-invalid .tox-textfield,.tox[dir=rtl] .tox-control-wrap--status-unknown .tox-textfield,.tox[dir=rtl] .tox-control-wrap--status-valid .tox-textfield{padding-left: 32px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-control-wrap__status-icon-wrap{left: 4px;} |
||||
|
|
||||
|
.tox .tox-autocompleter{max-width: 25em;} |
||||
|
|
||||
|
.tox .tox-autocompleter .tox-menu{max-width: 25em;} |
||||
|
|
||||
|
.tox .tox-color-input{display: flex;} |
||||
|
|
||||
|
.tox .tox-color-input .tox-textfield{display: flex;border-radius: 3px 0 0 3px;} |
||||
|
|
||||
|
.tox .tox-color-input span{display: flex;width: 35px;cursor: pointer;border-color: rgba(34,47,62,.2);border-style: solid;border-width: 1px 1px 1px 0;border-radius: 0 3px 3px 0;box-shadow: none;box-sizing: border-box;} |
||||
|
|
||||
|
.tox .tox-color-input span:focus{border-color: #207ab7;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-color-input .tox-textfield{border-radius: 0 3px 3px 0;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-color-input span{border-width: 1px 0 1px 1px;border-radius: 3px 0 0 3px;} |
||||
|
|
||||
|
.tox .tox-label,.tox .tox-toolbar-label{display: block;padding: 0 8px 0 0;font-size: 14px;font-style: normal;font-weight: 400;line-height: 1.3;color: rgba(34,47,62,.7);text-transform: normal;white-space: nowrap;} |
||||
|
|
||||
|
.tox .tox-toolbar-label{padding: 0 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-label{padding: 0 0 0 8px;} |
||||
|
|
||||
|
.tox .tox-form{display: flex;flex: 1;flex-direction: column;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-form__group{margin-bottom: 4px;box-sizing: border-box;} |
||||
|
|
||||
|
.tox .tox-form__group--error{color: #c00;} |
||||
|
|
||||
|
.tox .tox-form__group--collection{display: flex;} |
||||
|
|
||||
|
.tox .tox-form__grid{display: flex;flex-direction: row;flex-wrap: wrap;justify-content: space-between;} |
||||
|
|
||||
|
.tox .tox-form__grid--2col>.tox-form__group{width: calc(50% - (8px / 2));} |
||||
|
|
||||
|
.tox .tox-form__grid--3col>.tox-form__group{width: calc(100% / 3 - (8px / 2));} |
||||
|
|
||||
|
.tox .tox-form__grid--4col>.tox-form__group{width: calc(25% - (8px / 2));} |
||||
|
|
||||
|
.tox .tox-form__controls-h-stack{align-items: center;display: flex;} |
||||
|
|
||||
|
.tox .tox-form__group--inline{align-items: center;display: flex;} |
||||
|
|
||||
|
.tox .tox-form__group--stretched{display: flex;flex: 1;flex-direction: column;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-form__group--stretched .tox-textarea{flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-form__group--stretched .tox-navobj{display: flex;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-form__group--stretched .tox-navobj :nth-child(2){flex: 1;-ms-flex-preferred-size: auto;height: 100%;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-form__controls-h-stack>:not(:first-child){margin-left: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-form__controls-h-stack>:not(:first-child){margin-right: 4px;} |
||||
|
|
||||
|
.tox .tox-lock.tox-locked .tox-lock-icon__unlock,.tox .tox-lock:not(.tox-locked) .tox-lock-icon__lock{display: none;} |
||||
|
|
||||
|
.tox .tox-textarea,.tox .tox-textfield,.tox .tox-toolbar-textfield,.tox:not([dir=rtl]) .tox-selectfield select,.tox[dir=rtl] .tox-selectfield select{width: 100%;padding: 5px 4.75px;margin: 0;font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size: 16px;line-height: 24px;color: #222f3e;background-color: #fff;border-color: #ccc;border-style: solid;border-width: 1px;border-radius: 3px;outline: 0;box-shadow: none;box-sizing: border-box;resize: none;-webkit-appearance: none;-moz-appearance: none;appearance: none;} |
||||
|
|
||||
|
.tox .tox-selectfield select:focus,.tox .tox-textarea:focus,.tox .tox-textfield:focus{border-color: #207ab7;outline: 0;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-toolbar-textfield{max-width: 250px;margin-top: 2px;margin-bottom: 3px;border-width: 0;} |
||||
|
|
||||
|
.tox .tox-naked-btn{display: block;padding: 0;margin: 0;color: #207ab7;cursor: pointer;background-color: transparent;border: 0;border-color: transparent;box-shadow: unset;} |
||||
|
|
||||
|
.tox .tox-naked-btn svg{display: block;fill: #222f3e;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-toolbar-textfield+*{margin-left: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-toolbar-textfield+*{margin-right: 4px;} |
||||
|
|
||||
|
.tox .tox-selectfield{position: relative;cursor: pointer;} |
||||
|
|
||||
|
.tox .tox-selectfield select::-ms-expand{display: none;} |
||||
|
|
||||
|
.tox .tox-selectfield svg{position: absolute;top: 50%;pointer-events: none;transform: translateY(-50%);} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-selectfield select{padding-right: 24px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-selectfield svg{right: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-selectfield select{padding-left: 24px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-selectfield svg{left: 8px;} |
||||
|
|
||||
|
.tox .tox-textarea{white-space: pre-wrap;-webkit-appearance: textarea;-moz-appearance: textarea;appearance: textarea;} |
||||
|
|
||||
|
.tox-fullscreen{position: fixed;top: 0;left: 0;width: 100%;height: 100%;padding: 0;margin: 0;overflow: hidden;border: 0;} |
||||
|
|
||||
|
.tox-fullscreen .tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle{display: none;} |
||||
|
|
||||
|
.tox-fullscreen .tox.tox-tinymce.tox-fullscreen{z-index: 1200;} |
||||
|
|
||||
|
.tox-fullscreen .tox.tox-tinymce-aux{z-index: 1201;} |
||||
|
|
||||
|
.tox .tox-image-tools{width: 100%;} |
||||
|
|
||||
|
.tox .tox-image-tools__toolbar{align-items: center;display: flex;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-image-tools__image{position: relative;width: 100%;height: 380px;overflow: auto;background-color: #666;} |
||||
|
|
||||
|
.tox .tox-image-tools__image,.tox .tox-image-tools__image+.tox-image-tools__toolbar{margin-top: 8px;} |
||||
|
|
||||
|
.tox .tox-image-tools__image-bg{background: url(data:image/gif;base64,R0lGODdhDAAMAIABAMzMzP///ywAAAAADAAMAAACFoQfqYeabNyDMkBQb81Uat85nxguUAEAOw==);} |
||||
|
|
||||
|
.tox .tox-image-tools__toolbar>.tox-spacer{flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-croprect-block{position: absolute;background: #000;opacity: .5;zoom: 1;} |
||||
|
|
||||
|
.tox .tox-croprect-handle{position: absolute;top: 0;left: 0;width: 20px;height: 20px;border: 2px solid #fff;} |
||||
|
|
||||
|
.tox .tox-croprect-handle-move{position: absolute;cursor: move;border: 0;} |
||||
|
|
||||
|
.tox .tox-croprect-handle-nw{top: 100px;left: 100px;margin: -2px 0 0 -2px;cursor: nw-resize;border-width: 2px 0 0 2px;} |
||||
|
|
||||
|
.tox .tox-croprect-handle-ne{top: 100px;left: 200px;margin: -2px 0 0 -20px;cursor: ne-resize;border-width: 2px 2px 0 0;} |
||||
|
|
||||
|
.tox .tox-croprect-handle-sw{top: 200px;left: 100px;margin: -20px 2px 0 -2px;cursor: sw-resize;border-width: 0 0 2px 2px;} |
||||
|
|
||||
|
.tox .tox-croprect-handle-se{top: 200px;left: 200px;margin: -20px 0 0 -20px;cursor: se-resize;border-width: 0 2px 2px 0;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-image-tools__toolbar>.tox-slider:not(:first-of-type){margin-left: 8px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-image-tools__toolbar>.tox-button+.tox-slider{margin-left: 32px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-image-tools__toolbar>.tox-slider+.tox-button{margin-left: 32px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-image-tools__toolbar>.tox-slider:not(:first-of-type){margin-right: 8px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-image-tools__toolbar>.tox-button+.tox-slider{margin-right: 32px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-image-tools__toolbar>.tox-slider+.tox-button{margin-right: 32px;} |
||||
|
|
||||
|
.tox .tox-insert-table-picker{display: flex;flex-wrap: wrap;width: 169px;} |
||||
|
|
||||
|
.tox .tox-insert-table-picker>div{width: 16px;height: 16px;border-color: #ccc;border-style: solid;border-width: 0 1px 1px 0;box-sizing: content-box;} |
||||
|
|
||||
|
.tox .tox-collection--list .tox-collection__group .tox-insert-table-picker{margin: -4px 0;} |
||||
|
|
||||
|
.tox .tox-insert-table-picker .tox-insert-table-picker__selected{background-color: rgba(32,122,183,.5);border-color: rgba(32,122,183,.5);} |
||||
|
|
||||
|
.tox .tox-insert-table-picker__label{display: block;width: 100%;padding: 4px;font-size: 14px;color: rgba(34,47,62,.7);text-align: center;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-insert-table-picker>div:nth-child(10n){border-right: 0;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-insert-table-picker>div:nth-child(10n+1){border-right: 0;} |
||||
|
|
||||
|
.tox .tox-menu{z-index: 1;display: inline-block;overflow: hidden;vertical-align: top;background-color: #fff;border: 1px solid #ccc;border-radius: 3px;box-shadow: 0 4px 8px 0 rgba(34,47,62,.1);} |
||||
|
|
||||
|
.tox .tox-menu.tox-collection.tox-collection--list{padding: 0;} |
||||
|
|
||||
|
.tox .tox-menu.tox-collection.tox-collection--toolbar{padding: 4px;} |
||||
|
|
||||
|
.tox .tox-menu.tox-collection.tox-collection--grid{padding: 4px;} |
||||
|
|
||||
|
.tox .tox-menu__label blockquote,.tox .tox-menu__label code,.tox .tox-menu__label h1,.tox .tox-menu__label h2,.tox .tox-menu__label h3,.tox .tox-menu__label h4,.tox .tox-menu__label h5,.tox .tox-menu__label h6,.tox .tox-menu__label p{margin: 0;} |
||||
|
|
||||
|
.tox .tox-menubar{display: flex;padding: 0 4px;margin-bottom: -1px;background: url("data:image/svg+xml;charset=utf8,%3Csvg height='43px' viewBox='0 0 40 43px' width='40' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='42px' width='100' height='1' fill='%23cccccc'/%3E%3C/svg%3E") left 0 top 0 #fff;background-color: #fff;flex: 0 0 auto;flex-shrink: 0;flex-wrap: wrap;} |
||||
|
|
||||
|
.tox .tox-mbtn{display: flex;width: auto;height: 34px;padding: 0 4px;margin: 2px 0 3px 0;overflow: hidden;font-size: 14px;font-style: normal;font-weight: 400;color: #222f3e;text-transform: normal;background: 0 0;border: 0;border-radius: 3px;outline: 0;box-shadow: none;align-items: center;flex: 0 0 auto;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-mbtn[disabled]{color: rgba(34,47,62,.5);cursor: not-allowed;background-color: none;border-color: none;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-mbtn:hover:not(:disabled){color: #222f3e;background: #dee0e2;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-mbtn:focus:not(:disabled){color: #222f3e;background: #dee0e2;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-mbtn--active{color: #222f3e;background: #c8cbcf;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-mbtn__select-label{margin: 0 4px;font-weight: 400;cursor: default;} |
||||
|
|
||||
|
.tox .tox-mbtn[disabled] .tox-mbtn__select-label{cursor: not-allowed;} |
||||
|
|
||||
|
.tox .tox-mbtn__select-chevron{display: flex;display: none;width: 16px;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-notification{display: grid;padding: 5px;margin-top: 5px;background-color: #fffaea;border-color: #ffe89d;border-style: solid;border-width: 1px;opacity: 0;box-sizing: border-box;transition: transform .1s ease-in,opacity 150ms ease-in;grid-template-columns: minmax(40px,1fr) auto minmax(40px,1fr);} |
||||
|
|
||||
|
.tox .tox-notification--in{opacity: 1;} |
||||
|
|
||||
|
.tox .tox-notification--success{background-color: #dff0d8;border-color: #d6e9c6;} |
||||
|
|
||||
|
.tox .tox-notification--error{background-color: #f2dede;border-color: #ebccd1;} |
||||
|
|
||||
|
.tox .tox-notification--warn{background-color: #fcf8e3;border-color: #faebcc;} |
||||
|
|
||||
|
.tox .tox-notification--info{background-color: #d9edf7;border-color: #779ecb;} |
||||
|
|
||||
|
.tox .tox-notification__body{font-size: 14px;color: #222f3e;text-align: center;word-break: break-all;word-break: break-word;white-space: normal;align-self: center;grid-column-end: 3;-ms-grid-column-span: 1;grid-column-start: 2;grid-row-end: 2;grid-row-start: 1;} |
||||
|
|
||||
|
.tox .tox-notification__body>*{margin: 0;} |
||||
|
|
||||
|
.tox .tox-notification__body>*+*{margin-top: 1rem;} |
||||
|
|
||||
|
.tox .tox-notification__icon{align-self: center;-ms-grid-column-align: end;grid-column-end: 2;-ms-grid-column-span: 1;grid-column-start: 1;grid-row-end: 2;grid-row-start: 1;justify-self: end;} |
||||
|
|
||||
|
.tox .tox-notification__icon svg{display: block;} |
||||
|
|
||||
|
.tox .tox-notification__dismiss{align-self: start;-ms-grid-column-align: end;grid-column-end: 4;-ms-grid-column-span: 1;grid-column-start: 3;grid-row-end: 2;grid-row-start: 1;justify-self: end;} |
||||
|
|
||||
|
.tox .tox-notification .tox-progress-bar{-ms-grid-column-align: center;grid-column-end: 4;-ms-grid-column-span: 3;grid-column-start: 1;grid-row-end: 3;-ms-grid-row-span: 1;grid-row-start: 2;justify-self: center;} |
||||
|
|
||||
|
.tox .tox-pop{position: relative;display: inline-block;} |
||||
|
|
||||
|
.tox .tox-pop--resizing{transition: width .1s ease;} |
||||
|
|
||||
|
.tox .tox-pop--resizing .tox-toolbar{flex-wrap: nowrap;} |
||||
|
|
||||
|
.tox .tox-pop__dialog{min-width: 0;overflow: hidden;background-color: #fff;border: 1px solid #ccc;border-radius: 3px;box-shadow: 0 1px 3px rgba(0,0,0,.15);} |
||||
|
|
||||
|
.tox .tox-pop__dialog>:not(.tox-toolbar){margin: 4px 4px 4px 8px;} |
||||
|
|
||||
|
.tox .tox-pop__dialog .tox-toolbar{background-color: transparent;} |
||||
|
|
||||
|
.tox .tox-pop::after,.tox .tox-pop::before{position: absolute;display: block;width: 0;height: 0;border-style: solid;content: '';} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--bottom::after,.tox .tox-pop.tox-pop--bottom::before{top: 100%;left: 50%;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--bottom::after{margin-top: -1px;margin-left: -8px;border-color: #fff transparent transparent transparent;border-width: 8px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--bottom::before{margin-left: -9px;border-color: #ccc transparent transparent transparent;border-width: 9px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--top::after,.tox .tox-pop.tox-pop--top::before{top: 0;left: 50%;transform: translateY(-100%);} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--top::after{margin-top: 1px;margin-left: -8px;border-color: transparent transparent #fff transparent;border-width: 8px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--top::before{margin-left: -9px;border-color: transparent transparent #ccc transparent;border-width: 9px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--left::after,.tox .tox-pop.tox-pop--left::before{top: calc(50% - 1px);left: 0;transform: translateY(-50%);} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--left::after{margin-left: -15px;border-color: transparent #fff transparent transparent;border-width: 8px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--left::before{margin-left: -19px;border-color: transparent #ccc transparent transparent;border-width: 10px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--right::after,.tox .tox-pop.tox-pop--right::before{top: calc(50% + 1px);left: 100%;transform: translateY(-50%);} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--right::after{margin-left: -1px;border-color: transparent transparent transparent #fff;border-width: 8px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--right::before{margin-left: -1px;border-color: transparent transparent transparent #ccc;border-width: 10px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--align-left::after,.tox .tox-pop.tox-pop--align-left::before{left: 20px;} |
||||
|
|
||||
|
.tox .tox-pop.tox-pop--align-right::after,.tox .tox-pop.tox-pop--align-right::before{left: calc(100% - 20px);} |
||||
|
|
||||
|
.tox .tox-sidebar-wrap{display: flex;flex-direction: row;flex-grow: 1;min-height: 0;} |
||||
|
|
||||
|
.tox .tox-sidebar{display: flex;flex-direction: row;justify-content: flex-end;} |
||||
|
|
||||
|
.tox .tox-sidebar__slider{display: flex;overflow: hidden;} |
||||
|
|
||||
|
.tox .tox-sidebar__pane-container{display: flex;} |
||||
|
|
||||
|
.tox .tox-sidebar__pane{display: flex;} |
||||
|
|
||||
|
.tox .tox-sidebar--sliding-closed{opacity: 0;} |
||||
|
|
||||
|
.tox .tox-sidebar--sliding-open{opacity: 1;} |
||||
|
|
||||
|
.tox .tox-sidebar--sliding-growing,.tox .tox-sidebar--sliding-shrinking{transition: width .5s ease,opacity .5s ease;} |
||||
|
|
||||
|
.tox .tox-slider{position: relative;display: flex;height: 24px;align-items: center;flex: 1;-ms-flex-preferred-size: auto;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-slider__rail{width: 100%;height: 10px;min-width: 120px;background-color: transparent;border: 1px solid #ccc;border-radius: 3px;} |
||||
|
|
||||
|
.tox .tox-slider__handle{position: absolute;top: 50%;left: 50%;width: 14px;height: 24px;background-color: #207ab7;border: 2px solid #185d8c;border-radius: 3px;transform: translateX(-50%) translateY(-50%);box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-source-code{overflow: auto;} |
||||
|
|
||||
|
.tox .tox-spinner{display: flex;} |
||||
|
|
||||
|
.tox .tox-spinner>div{width: 8px;height: 8px;background-color: rgba(34,47,62,.7);border-radius: 100%;animation: tam-bouncing-dots 1.5s ease-in-out 0s infinite both;} |
||||
|
|
||||
|
.tox .tox-spinner>div:nth-child(1){animation-delay: -.32s;} |
||||
|
|
||||
|
.tox .tox-spinner>div:nth-child(2){animation-delay: -.16s;}@keyframes tam-bouncing-dots{0%,100%,80%{transform: scale(0);} |
||||
|
|
||||
|
40%{transform: scale(1);}} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-spinner>div:not(:first-child){margin-left: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-spinner>div:not(:first-child){margin-right: 4px;} |
||||
|
|
||||
|
.tox .tox-statusbar{position: relative;display: flex;height: 18px;padding: 0 8px;overflow: hidden;font-size: 12px;color: rgba(34,47,62,.7);text-transform: uppercase;background-color: #fff;border-top: 1px solid #ccc;align-items: center;flex: 0 0 auto;} |
||||
|
|
||||
|
.tox .tox-statusbar a{color: rgba(34,47,62,.7);text-decoration: none;} |
||||
|
|
||||
|
.tox .tox-statusbar a:hover{text-decoration: underline;} |
||||
|
|
||||
|
.tox .tox-statusbar__text-container{display: flex;flex: 1 1 auto;justify-content: flex-end;overflow: hidden;} |
||||
|
|
||||
|
.tox .tox-statusbar__path{display: flex;flex: 1 1 auto;margin-right: auto;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;} |
||||
|
|
||||
|
.tox .tox-statusbar__path>*{display: inline;white-space: nowrap;} |
||||
|
|
||||
|
.tox .tox-statusbar__wordcount{flex: 0 0 auto;margin-left: 1ch;} |
||||
|
|
||||
|
.tox .tox-statusbar__resize-handle{display: flex;padding-left: 1ch;margin-right: -8px;margin-left: auto;cursor: nwse-resize;align-items: flex-end;align-self: stretch;flex: 0 0 auto;justify-content: flex-end;} |
||||
|
|
||||
|
.tox .tox-statusbar__resize-handle svg{display: block;fill: rgba(34,47,62,.7);} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-statusbar__path>*{margin-right: 4px;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-statusbar__branding{margin-left: 1ch;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-statusbar{flex-direction: row-reverse;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-statusbar__path>*{margin-left: 4px;} |
||||
|
|
||||
|
.tox .tox-throbber{z-index: 1400;} |
||||
|
|
||||
|
.tox .tox-throbber__busy-spinner{position: absolute;top: 0;right: 0;bottom: 0;left: 0;display: flex;background-color: rgba(255,255,255,.6);align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-tbtn{display: flex;width: 34px;height: 34px;padding: 0;margin: 2px 0 3px 0;overflow: hidden;font-size: 14px;font-style: normal;font-weight: 400;color: #222f3e;text-transform: normal;background: 0 0;border: 0;border-radius: 3px;outline: 0;box-shadow: none;align-items: center;flex: 0 0 auto;justify-content: center;} |
||||
|
|
||||
|
.tox .tox-tbtn svg{display: block;fill: #222f3e;} |
||||
|
|
||||
|
.tox .tox-tbtn.tox-tbtn-more{width: inherit;padding-right: 5px;padding-left: 5px;} |
||||
|
|
||||
|
.tox .tox-tbtn--enabled{color: #222f3e;background: #c8cbcf;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-tbtn--enabled>*{transform: none;} |
||||
|
|
||||
|
.tox .tox-tbtn--enabled svg{fill: #222f3e;} |
||||
|
|
||||
|
.tox .tox-tbtn:hover{color: #222f3e;background: #dee0e2;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-tbtn:hover svg{fill: #222f3e;} |
||||
|
|
||||
|
.tox .tox-tbtn:focus{color: #222f3e;background: #dee0e2;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-tbtn:focus svg{fill: #222f3e;} |
||||
|
|
||||
|
.tox .tox-tbtn:active{color: #222f3e;background: #c8cbcf;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-tbtn:active svg{fill: #222f3e;} |
||||
|
|
||||
|
.tox .tox-tbtn--disabled,.tox .tox-tbtn--disabled:hover,.tox .tox-tbtn:disabled,.tox .tox-tbtn:disabled:hover{color: rgba(34,47,62,.5);cursor: not-allowed;background: 0 0;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-tbtn--disabled svg,.tox .tox-tbtn--disabled:hover svg,.tox .tox-tbtn:disabled svg,.tox .tox-tbtn:disabled:hover svg{fill: rgba(34,47,62,.5);} |
||||
|
|
||||
|
.tox .tox-tbtn:active>*{transform: none;} |
||||
|
|
||||
|
.tox .tox-tbtn--md{width: 51px;height: 51px;} |
||||
|
|
||||
|
.tox .tox-tbtn--lg{width: 68px;height: 68px;flex-direction: column;} |
||||
|
|
||||
|
.tox .tox-tbtn--return{width: 16px;height: unset;align-self: stretch;} |
||||
|
|
||||
|
.tox .tox-tbtn--labeled{width: unset;padding: 0 4px;} |
||||
|
|
||||
|
.tox .tox-tbtn__vlabel{display: block;margin-bottom: 4px;font-size: 10px;font-weight: 400;letter-spacing: -.025em;white-space: nowrap;} |
||||
|
|
||||
|
.tox .tox-tbtn--select{width: auto;padding: 0 4px;margin: 2px 0 3px 0;} |
||||
|
|
||||
|
.tox .tox-tbtn__select-label{margin: 0 4px;font-weight: 400;cursor: default;} |
||||
|
|
||||
|
.tox .tox-tbtn__select-chevron{align-items: center;display: flex;justify-content: center;width: 16px;} |
||||
|
|
||||
|
.tox .tox-tbtn__select-chevron svg{fill: rgba(34,47,62,.7);} |
||||
|
|
||||
|
.tox .tox-tbtn--bespoke .tox-tbtn__select-label{width: 7em;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;} |
||||
|
|
||||
|
.tox .tox-split-button{display: flex;margin: 2px 0 3px 0;overflow: hidden;border: 0;border-radius: 3px;box-sizing: border-box;} |
||||
|
|
||||
|
.tox .tox-split-button:hover{box-shadow: 0 0 0 1px #dee0e2 inset;} |
||||
|
|
||||
|
.tox .tox-split-button:focus{color: #222f3e;background: #dee0e2;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-split-button>*{border-radius: 0;} |
||||
|
|
||||
|
.tox .tox-split-button__chevron{width: 16px;} |
||||
|
|
||||
|
.tox .tox-split-button__chevron svg{fill: rgba(34,47,62,.7);} |
||||
|
|
||||
|
.tox .tox-pop .tox-split-button__chevron svg{transform: rotate(-90deg);} |
||||
|
|
||||
|
.tox .tox-split-button .tox-tbtn{margin: 0;} |
||||
|
|
||||
|
.tox .tox-split-button.tox-tbtn--disabled .tox-tbtn:focus,.tox .tox-split-button.tox-tbtn--disabled .tox-tbtn:hover,.tox .tox-split-button.tox-tbtn--disabled:focus,.tox .tox-split-button.tox-tbtn--disabled:hover{color: rgba(34,47,62,.5);background: 0 0;box-shadow: none;} |
||||
|
|
||||
|
.tox .tox-toolbar,.tox .tox-toolbar__overflow,.tox .tox-toolbar__primary{display: flex;padding: 0 0;margin-bottom: -1px;background: url("data:image/svg+xml;charset=utf8,%3Csvg height='39px' viewBox='0 0 40 39px' width='40' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='38px' width='100' height='1' fill='%23cccccc'/%3E%3C/svg%3E") left 0 top 0 #fff;background-color: #fff;border-top: 1px solid #ccc;flex: 0 0 auto;flex-shrink: 0;flex-wrap: wrap;} |
||||
|
|
||||
|
.tox .tox-toolbar__overflow.tox-toolbar__overflow--closed{height: 0;opacity: 0;visibility: hidden;} |
||||
|
|
||||
|
.tox .tox-toolbar__overflow--growing{transition: height .3s ease,opacity .2s linear .1s;} |
||||
|
|
||||
|
.tox .tox-toolbar__overflow--shrinking{transition: opacity .3s ease,height .2s linear .1s,visibility 0s linear .3s;} |
||||
|
|
||||
|
.tox .tox-pop .tox-toolbar{border-width: 0;} |
||||
|
|
||||
|
.tox .tox-toolbar--no-divider{background-image: none;} |
||||
|
|
||||
|
.tox.tox-tinymce-aux .tox-toolbar__overflow{background-color: #fff;border: 1px solid #ccc;border-radius: 3px;box-shadow: 0 1px 3px rgba(0,0,0,.15);} |
||||
|
|
||||
|
.tox.tox-tinymce-aux:not([dir=rtl]) .tox-toolbar__overflow{margin-left: 4px;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-tbtn__icon-rtl svg{transform: rotateY(180deg);} |
||||
|
|
||||
|
.tox[dir=rtl].tox-tinymce-aux .tox-toolbar__overflow{margin-right: 4px;} |
||||
|
|
||||
|
.tox .tox-toolbar__group{display: flex;padding: 0 4px;margin: 0 0;align-items: center;flex-wrap: wrap;} |
||||
|
|
||||
|
.tox .tox-toolbar__group--pull-right{margin-left: auto;} |
||||
|
|
||||
|
.tox:not([dir=rtl]) .tox-toolbar__group:not(:last-of-type){border-right: 1px solid #ccc;} |
||||
|
|
||||
|
.tox[dir=rtl] .tox-toolbar__group:not(:last-of-type){border-left: 1px solid #ccc;} |
||||
|
|
||||
|
.tox .tox-tooltip{position: relative;display: inline-block;padding: 8px;} |
||||
|
|
||||
|
.tox .tox-tooltip__body{padding: 4px 8px;font-size: 14px;font-style: normal;font-weight: 400;color: rgba(255,255,255,.75);text-transform: normal;background-color: #222f3e;border-radius: 3px;box-shadow: 0 2px 4px rgba(34,47,62,.3);} |
||||
|
|
||||
|
.tox .tox-tooltip__arrow{position: absolute;} |
||||
|
|
||||
|
.tox .tox-tooltip--down .tox-tooltip__arrow{position: absolute;bottom: 0;left: 50%;border-top: 8px solid #222f3e;border-right: 8px solid transparent;border-left: 8px solid transparent;transform: translateX(-50%);} |
||||
|
|
||||
|
.tox .tox-tooltip--up .tox-tooltip__arrow{position: absolute;top: 0;left: 50%;border-right: 8px solid transparent;border-bottom: 8px solid #222f3e;border-left: 8px solid transparent;transform: translateX(-50%);} |
||||
|
|
||||
|
.tox .tox-tooltip--right .tox-tooltip__arrow{position: absolute;top: 50%;right: 0;border-top: 8px solid transparent;border-bottom: 8px solid transparent;border-left: 8px solid #222f3e;transform: translateY(-50%);} |
||||
|
|
||||
|
.tox .tox-tooltip--left .tox-tooltip__arrow{position: absolute;top: 50%;left: 0;border-top: 8px solid transparent;border-right: 8px solid #222f3e;border-bottom: 8px solid transparent;transform: translateY(-50%);} |
||||
|
|
||||
|
.tox .tox-well{width: 100%;padding: 8px;border: 1px solid #ccc;border-radius: 3px;} |
||||
|
|
||||
|
.tox .tox-well>:first-child{margin-top: 0;} |
||||
|
|
||||
|
.tox .tox-well>:last-child{margin-bottom: 0;} |
||||
|
|
||||
|
.tox .tox-well>:only-child{margin: 0;} |
||||
|
|
||||
|
.tox .tox-custom-editor{display: flex;height: 525px;border: 1px solid #ccc;border-radius: 3px;} |
||||
|
|
||||
|
.tox .tox-dialog-loading::before{position: absolute;z-index: 1000;width: 100%;height: 100%;background-color: rgba(0,0,0,.5);content: "";} |
||||
|
|
||||
|
.tox .tox-tab{cursor: pointer;} |
||||
|
|
||||
|
.tox .tox-dialog__content-js{display: flex;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox .tox-dialog__body-content .tox-collection{display: flex;flex: 1;-ms-flex-preferred-size: auto;} |
||||
|
|
||||
|
.tox ul{display: block;list-style-type: disc;-webkit-margin-before: 1em;margin-block-start: 1em;-webkit-margin-after: 1em;margin-block-end: 1em;-webkit-margin-start: 0;margin-inline-start: 0;-webkit-margin-end: 0;margin-inline-end: 0;-webkit-padding-start: 40px;padding-inline-start: 40px;} |
||||
|
|
||||
|
.tox a{color: #2276d2;cursor: pointer;} |
||||
|
|
||||
|
.tox .tox-image-tools-edit-panel{height: 60px;} |
||||
|
|
||||
|
.tox .tox-image-tools__sidebar{height: 60px;} |
||||
@ -0,0 +1,239 @@ |
|||||
|
/** |
||||
|
* Copyright (c) Tiny Technologies, Inc. All rights reserved. |
||||
|
* Licensed under the LGPL or a commercial license. |
||||
|
* For LGPL see License.txt in the project root for license information. |
||||
|
* For commercial licenses see https://www.tiny.cloud/ |
||||
|
*/ |
||||
|
.tinymce-mobile-outer-container{all: initial;display: block;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container *{float: none;padding: 0;margin: 0;line-height: 1;text-shadow: none;white-space: nowrap;cursor: inherit;border: 0;outline: 0;box-sizing: initial;-webkit-tap-highlight-color: transparent;} |
||||
|
|
||||
|
.tinymce-mobile-icon-arrow-back::before{content: "\e5cd";} |
||||
|
|
||||
|
.tinymce-mobile-icon-image::before{content: "\e412";} |
||||
|
|
||||
|
.tinymce-mobile-icon-cancel-circle::before{content: "\e5c9";} |
||||
|
|
||||
|
.tinymce-mobile-icon-full-dot::before{content: "\e061";} |
||||
|
|
||||
|
.tinymce-mobile-icon-align-center::before{content: "\e234";} |
||||
|
|
||||
|
.tinymce-mobile-icon-align-left::before{content: "\e236";} |
||||
|
|
||||
|
.tinymce-mobile-icon-align-right::before{content: "\e237";} |
||||
|
|
||||
|
.tinymce-mobile-icon-bold::before{content: "\e238";} |
||||
|
|
||||
|
.tinymce-mobile-icon-italic::before{content: "\e23f";} |
||||
|
|
||||
|
.tinymce-mobile-icon-unordered-list::before{content: "\e241";} |
||||
|
|
||||
|
.tinymce-mobile-icon-ordered-list::before{content: "\e242";} |
||||
|
|
||||
|
.tinymce-mobile-icon-font-size::before{content: "\e245";} |
||||
|
|
||||
|
.tinymce-mobile-icon-underline::before{content: "\e249";} |
||||
|
|
||||
|
.tinymce-mobile-icon-link::before{content: "\e157";} |
||||
|
|
||||
|
.tinymce-mobile-icon-unlink::before{content: "\eca2";} |
||||
|
|
||||
|
.tinymce-mobile-icon-color::before{content: "\e891";} |
||||
|
|
||||
|
.tinymce-mobile-icon-previous::before{content: "\e314";} |
||||
|
|
||||
|
.tinymce-mobile-icon-next::before{content: "\e315";} |
||||
|
|
||||
|
.tinymce-mobile-icon-large-font::before,.tinymce-mobile-icon-style-formats::before{content: "\e264";} |
||||
|
|
||||
|
.tinymce-mobile-icon-undo::before{content: "\e166";} |
||||
|
|
||||
|
.tinymce-mobile-icon-redo::before{content: "\e15a";} |
||||
|
|
||||
|
.tinymce-mobile-icon-removeformat::before{content: "\e239";} |
||||
|
|
||||
|
.tinymce-mobile-icon-small-font::before{content: "\e906";} |
||||
|
|
||||
|
.tinymce-mobile-format-matches::after,.tinymce-mobile-icon-readonly-back::before{content: "\e5ca";} |
||||
|
|
||||
|
.tinymce-mobile-icon-small-heading::before{content: "small";} |
||||
|
|
||||
|
.tinymce-mobile-icon-large-heading::before{content: "large";} |
||||
|
|
||||
|
.tinymce-mobile-icon-large-heading::before,.tinymce-mobile-icon-small-heading::before{font-family: sans-serif;font-size: 80%;} |
||||
|
|
||||
|
.tinymce-mobile-mask-edit-icon::before{content: "\e254";} |
||||
|
|
||||
|
.tinymce-mobile-icon-back::before{content: "\e5c4";} |
||||
|
|
||||
|
.tinymce-mobile-icon-heading::before{font-family: sans-serif;font-size: 80%;font-weight: 700;content: "Headings";} |
||||
|
|
||||
|
.tinymce-mobile-icon-h1::before{font-weight: 700;content: "H1";} |
||||
|
|
||||
|
.tinymce-mobile-icon-h2::before{font-weight: 700;content: "H2";} |
||||
|
|
||||
|
.tinymce-mobile-icon-h3::before{font-weight: 700;content: "H3";} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask{position: absolute;top: 0;display: flex;width: 100%;height: 100%;background: rgba(51,51,51,.5);align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask .tinymce-mobile-content-container{display: flex;font-family: sans-serif;font-size: 1em;border-radius: 50%;align-items: center;flex-direction: column;justify-content: space-between;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask .tinymce-mobile-content-container .mixin-menu-item{display: flex;width: 2.1em;height: 2.1em;border-radius: 50%;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask .tinymce-mobile-content-container .tinymce-mobile-content-tap-section{align-items: center;display: flex;justify-content: center;flex-direction: column;font-size: 1em;}@media only screen and (min-device-width: 700px){.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask .tinymce-mobile-content-container .tinymce-mobile-content-tap-section{font-size: 1.2em;}} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask .tinymce-mobile-content-container .tinymce-mobile-content-tap-section .tinymce-mobile-mask-tap-icon{display: flex;width: 2.1em;height: 2.1em;color: #207ab7;background-color: #fff;border-radius: 50%;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask .tinymce-mobile-content-container .tinymce-mobile-content-tap-section .tinymce-mobile-mask-tap-icon::before{font-family: tinymce-mobile,sans-serif;content: "\e900";} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-disabled-mask .tinymce-mobile-content-container .tinymce-mobile-content-tap-section:not(.tinymce-mobile-mask-tap-icon-selected) .tinymce-mobile-mask-tap-icon{z-index: 2;} |
||||
|
|
||||
|
.tinymce-mobile-android-container.tinymce-mobile-android-maximized{position: fixed;top: 0;right: 0;bottom: 0;left: 0;display: flex;background: #fff;border: none;flex-direction: column;} |
||||
|
|
||||
|
.tinymce-mobile-android-container:not(.tinymce-mobile-android-maximized){position: relative;} |
||||
|
|
||||
|
.tinymce-mobile-android-container .tinymce-mobile-editor-socket{display: flex;flex-grow: 1;} |
||||
|
|
||||
|
.tinymce-mobile-android-container .tinymce-mobile-editor-socket iframe{display: flex !important;flex-grow: 1;height: auto !important;} |
||||
|
|
||||
|
.tinymce-mobile-android-scroll-reload{overflow: hidden;} |
||||
|
|
||||
|
:not(.tinymce-mobile-readonly-mode)>.tinymce-mobile-android-selection-context-toolbar{margin-top: 23px;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip{z-index: 1;display: flex;background: #fff;flex: 0 0 auto;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar{display: flex;width: 100%;height: 2.5em;background-color: #fff;border-bottom: 1px solid #ccc;align-items: center;flex: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group{align-items: center;display: flex;height: 100%;flex-shrink: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group>div{align-items: center;display: flex;height: 100%;flex: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group.tinymce-mobile-exit-container{background: #f44336;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group.tinymce-mobile-toolbar-scrollable-group{flex-grow: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group .tinymce-mobile-toolbar-group-item{padding-right: .5em;padding-left: .5em;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group .tinymce-mobile-toolbar-group-item.tinymce-mobile-toolbar-button{display: flex;height: 80%;margin-right: 2px;margin-left: 2px;align-items: center;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group .tinymce-mobile-toolbar-group-item.tinymce-mobile-toolbar-button.tinymce-mobile-toolbar-button-selected{color: #ccc;background: #c8cbcf;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group:first-of-type,.tinymce-mobile-toolstrip .tinymce-mobile-toolbar:not(.tinymce-mobile-context-toolbar) .tinymce-mobile-toolbar-group:last-of-type{color: #eceff1;background: #207ab7;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group{display: flex;height: 100%;padding-top: .4em;padding-bottom: .4em;align-items: center;flex: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog{position: relative;display: flex;width: 100%;min-height: 1.5em;padding-right: 0;padding-left: 0;overflow: hidden;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain{display: flex;width: 100%;height: 100%;transition: left cubic-bezier(.4,0,1,1) .15s;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen{display: flex;flex: 0 0 auto;justify-content: space-between;width: 100%;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen input{font-family: sans-serif;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-input-container{position: relative;display: flex;flex-grow: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-input-container .tinymce-mobile-input-container-x{position: absolute;right: 0;height: 100%;padding-right: 2px;font-size: .6em;font-weight: 700;color: #888;background: inherit;border: none;border-radius: 50%;align-self: center;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-input-container.tinymce-mobile-input-container-empty .tinymce-mobile-input-container-x{display: none;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-icon-next,.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-icon-previous{align-items: center;display: flex;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-icon-next::before,.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-icon-previous::before{display: flex;height: 100%;padding-right: .5em;padding-left: .5em;font-weight: 700;align-items: center;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-icon-next.tinymce-mobile-toolbar-navigation-disabled::before,.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serialised-dialog .tinymce-mobile-serialised-dialog-chain .tinymce-mobile-serialised-dialog-screen .tinymce-mobile-icon-previous.tinymce-mobile-toolbar-navigation-disabled::before{visibility: hidden;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-dot-item{padding-top: 3px;margin: 0 2px;font-size: 10px;line-height: 10px;color: #ccc;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-dot-item.tinymce-mobile-dot-active{color: #c8cbcf;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-icon-large-font::before,.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-icon-large-heading::before{margin-right: .9em;margin-left: .5em;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-icon-small-font::before,.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-icon-small-heading::before{margin-right: .5em;margin-left: .9em;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider{position: relative;display: flex;padding: .28em 0;margin-right: 0;margin-left: 0;flex: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider .tinymce-mobile-slider-size-container{align-items: center;display: flex;flex-grow: 1;height: 100%;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider .tinymce-mobile-slider-size-container .tinymce-mobile-slider-size-line{display: flex;height: .2em;margin-top: .3em;margin-bottom: .3em;background: #ccc;flex: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider.tinymce-mobile-hue-slider-container{padding-right: 2em;padding-left: 2em;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider.tinymce-mobile-hue-slider-container .tinymce-mobile-slider-gradient-container{align-items: center;display: flex;flex-grow: 1;height: 100%;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider.tinymce-mobile-hue-slider-container .tinymce-mobile-slider-gradient-container .tinymce-mobile-slider-gradient{display: flex;height: .2em;margin-top: .3em;margin-bottom: .3em;background: linear-gradient(to right,red 0,#feff00 17%,#0f0 33%,#00feff 50%,#00f 67%,#ff00fe 83%,red 100%);flex: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider.tinymce-mobile-hue-slider-container .tinymce-mobile-hue-slider-black{width: 1.2em;height: .2em;margin-top: .3em;margin-bottom: .3em;background: #000;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider.tinymce-mobile-hue-slider-container .tinymce-mobile-hue-slider-white{width: 1.2em;height: .2em;margin-top: .3em;margin-bottom: .3em;background: #fff;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider .tinymce-mobile-slider-thumb{position: absolute;top: 0;bottom: 0;left: -10px;display: flex;width: .5em;height: .5em;margin: auto;color: #fff;background-color: #455a64;border: .5em solid rgba(136,136,136,0);border-radius: 3em;transition: border 120ms cubic-bezier(.39,.58,.57,1);background-clip: padding-box;align-items: center;justify-content: center;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-slider .tinymce-mobile-slider-thumb.tinymce-mobile-thumb-active{border: .5em solid rgba(136,136,136,.39);} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serializer-wrapper,.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group>div{align-items: center;display: flex;height: 100%;flex: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-serializer-wrapper{flex-direction: column;justify-content: center;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-toolbar-group-item{align-items: center;display: flex;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-toolbar-group-item:not(.tinymce-mobile-serialised-dialog){height: 100%;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group .tinymce-mobile-dot-container{display: flex;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group input{padding-top: .1em;padding-bottom: .1em;padding-left: 5px;font-size: .85em;color: #455a64;background: #fff;border: none;border-radius: 0;flex-grow: 1;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group input::-webkit-input-placeholder{color: #888;} |
||||
|
|
||||
|
.tinymce-mobile-toolstrip .tinymce-mobile-toolbar.tinymce-mobile-context-toolbar .tinymce-mobile-toolbar-group input::placeholder{color: #888;} |
||||
|
|
||||
|
.tinymce-mobile-dropup{display: flex;width: 100%;overflow: hidden;background: #fff;} |
||||
|
|
||||
|
.tinymce-mobile-dropup.tinymce-mobile-dropup-shrinking{transition: height .3s ease-out;} |
||||
|
|
||||
|
.tinymce-mobile-dropup.tinymce-mobile-dropup-growing{transition: height .3s ease-in;} |
||||
|
|
||||
|
.tinymce-mobile-dropup.tinymce-mobile-dropup-closed{flex-grow: 0;} |
||||
|
|
||||
|
.tinymce-mobile-dropup.tinymce-mobile-dropup-open:not(.tinymce-mobile-dropup-growing){flex-grow: 1;} |
||||
|
|
||||
|
.tinymce-mobile-ios-container .tinymce-mobile-dropup:not(.tinymce-mobile-dropup-closed){min-height: 200px;}@media only screen and (orientation: landscape){.tinymce-mobile-dropup:not(.tinymce-mobile-dropup-closed){min-height: 200px;}}@media only screen and (min-device-width: 320px) and (max-device-width: 568px) and (orientation: landscape){.tinymce-mobile-ios-container .tinymce-mobile-dropup:not(.tinymce-mobile-dropup-closed){min-height: 150px;}} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu{position: relative;width: 100%;overflow: hidden;font-family: sans-serif;outline: 4px solid #000;} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu [role=menu]{position: absolute;display: flex;width: 100%;height: 100%;flex-direction: column;} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu [role=menu].transitioning{transition: transform .5s ease-in-out;} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu .tinymce-mobile-styles-item{position: relative;display: flex;padding: 1em 1em;color: #455a64;cursor: pointer;border-bottom: 1px solid #ddd;} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu .tinymce-mobile-styles-collapser .tinymce-mobile-styles-collapse-icon::before{font-family: tinymce-mobile,sans-serif;color: #455a64;content: "\e314";} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu .tinymce-mobile-styles-item.tinymce-mobile-styles-item-is-menu::after{position: absolute;right: 0;padding-right: 1em;padding-left: 1em;font-family: tinymce-mobile,sans-serif;color: #455a64;content: "\e315";} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu .tinymce-mobile-styles-item.tinymce-mobile-format-matches::after{position: absolute;right: 0;padding-right: 1em;padding-left: 1em;font-family: tinymce-mobile,sans-serif;} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu .tinymce-mobile-styles-collapser,.tinymce-mobile-styles-menu .tinymce-mobile-styles-separator{display: flex;min-height: 2.5em;padding-right: 1em;padding-left: 1em;color: #455a64;background: #fff;border-top: #455a64;align-items: center;} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu [data-transitioning-destination=before][data-transitioning-state],.tinymce-mobile-styles-menu [data-transitioning-state=before]{transform: translate(-100%);} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu [data-transitioning-destination=current][data-transitioning-state],.tinymce-mobile-styles-menu [data-transitioning-state=current]{transform: translate(0);} |
||||
|
|
||||
|
.tinymce-mobile-styles-menu [data-transitioning-destination=after][data-transitioning-state],.tinymce-mobile-styles-menu [data-transitioning-state=after]{transform: translate(100%);}@font-face{font-family: tinymce-mobile;font-style: normal;font-weight: 400;src: url(fonts/tinymce-mobile.woff?8x92w3) format('woff');}@media (min-device-width: 700px){.tinymce-mobile-outer-container,.tinymce-mobile-outer-container input{font-size: 25px;}}@media (max-device-width: 700px){.tinymce-mobile-outer-container,.tinymce-mobile-outer-container input{font-size: 18px;}} |
||||
|
|
||||
|
.tinymce-mobile-icon{font-family: tinymce-mobile,sans-serif;} |
||||
|
|
||||
|
.mixin-flex-and-centre{align-items: center;display: flex;justify-content: center;} |
||||
|
|
||||
|
.mixin-flex-bar{align-items: center;display: flex;height: 100%;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container .tinymce-mobile-editor-socket iframe{width: 100%;background-color: #fff;} |
||||
|
|
||||
|
.tinymce-mobile-editor-socket .tinymce-mobile-mask-edit-icon{position: fixed;right: 2em;bottom: 1em;display: flex;width: 2.1em;height: 2.1em;font-size: 1em;color: #fff;background-color: #207ab7;border-radius: 50%;align-items: center;justify-content: center;}@media only screen and (min-device-width: 700px){.tinymce-mobile-editor-socket .tinymce-mobile-mask-edit-icon{font-size: 1.2em;}} |
||||
|
|
||||
|
.tinymce-mobile-outer-container:not(.tinymce-mobile-fullscreen-maximized) .tinymce-mobile-editor-socket{height: 300px;overflow: hidden;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container:not(.tinymce-mobile-fullscreen-maximized) .tinymce-mobile-editor-socket iframe{height: 100%;} |
||||
|
|
||||
|
.tinymce-mobile-outer-container:not(.tinymce-mobile-fullscreen-maximized) .tinymce-mobile-toolstrip{display: none;} |
||||
|
|
||||
|
input[type=file]::-webkit-file-upload-button{display: none;}@media only screen and (min-device-width: 320px) and (max-device-width: 568px) and (orientation: landscape){.tinymce-mobile-ios-container .tinymce-mobile-editor-socket .tinymce-mobile-mask-edit-icon{bottom: 50%;}} |
||||
@ -0,0 +1,20 @@ |
|||||
|
<template> |
||||
|
<ConfigProvider :locale="getAntdLocale"> |
||||
|
<AppProvider> |
||||
|
<RouterView /> |
||||
|
</AppProvider> |
||||
|
</ConfigProvider> |
||||
|
</template> |
||||
|
|
||||
|
<script lang="ts" setup> |
||||
|
import { ConfigProvider } from 'ant-design-vue'; |
||||
|
import { AppProvider } from '/@/components/Application'; |
||||
|
import { useTitle } from '/@/hooks/web/useTitle'; |
||||
|
import { useLocale } from '/@/locales/useLocale'; |
||||
|
|
||||
|
// support Multi-language |
||||
|
const { getAntdLocale } = useLocale(); |
||||
|
|
||||
|
// Listening to page changes and dynamically changing site titles |
||||
|
useTitle(); |
||||
|
</script> |
||||
@ -0,0 +1,21 @@ |
|||||
|
import { defHttp } from '/@/utils/http/axios'; |
||||
|
import { IApplicationConfiguration } from './model/appModel'; |
||||
|
import { ApplicationApiDescriptionModel } from './model/apiDefinition'; |
||||
|
|
||||
|
enum Api { |
||||
|
ApplicationConfiguration = '/api/abp/application-configuration', |
||||
|
ApiDefinition = '/api/abp/api-definition', |
||||
|
} |
||||
|
|
||||
|
export const getApplicationConfiguration = () => { |
||||
|
return defHttp.get<IApplicationConfiguration>({ |
||||
|
url: Api.ApplicationConfiguration, |
||||
|
}); |
||||
|
}; |
||||
|
|
||||
|
export const getApiDefinition = (includeTypes = false) => { |
||||
|
return defHttp.get<ApplicationApiDescriptionModel>({ |
||||
|
url: Api.ApiDefinition, |
||||
|
params: { includeTypes: includeTypes }, |
||||
|
}); |
||||
|
}; |
||||
@ -0,0 +1,90 @@ |
|||||
|
import { Method } from 'axios'; |
||||
|
|
||||
|
export class ApiVersionInfo { |
||||
|
bindingSource?: string; |
||||
|
version!: string; |
||||
|
|
||||
|
constructor(version: string, bindingSource?: string) { |
||||
|
this.version = version; |
||||
|
this.bindingSource = bindingSource; |
||||
|
} |
||||
|
|
||||
|
public shouldSendInQueryString() { |
||||
|
return ['Path'].some((x) => x === this.bindingSource); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
export class ControllerInterfaceApiDescriptionModel { |
||||
|
type!: string; |
||||
|
} |
||||
|
|
||||
|
export class ReturnValueApiDescriptionModel { |
||||
|
type!: string; |
||||
|
typeSimple!: string; |
||||
|
} |
||||
|
|
||||
|
export class MethodParameterApiDescriptionModel { |
||||
|
name!: string; |
||||
|
typeAsString!: string; |
||||
|
type!: string; |
||||
|
typeSimple!: string; |
||||
|
isOptional!: boolean; |
||||
|
defaultValue?: any; |
||||
|
} |
||||
|
|
||||
|
export class ParameterApiDescriptionModel { |
||||
|
nameOnMethod!: string; |
||||
|
name!: string; |
||||
|
type!: string; |
||||
|
typeSimple!: string; |
||||
|
isOptional!: boolean; |
||||
|
defaultValue?: any; |
||||
|
constraintTypes = new Array<string>(); |
||||
|
bindingSourceId?: string; |
||||
|
descriptorName?: string; |
||||
|
} |
||||
|
|
||||
|
export class PropertyApiDescriptionModel { |
||||
|
name!: string; |
||||
|
type!: string; |
||||
|
typeSimple!: string; |
||||
|
isRequired!: boolean; |
||||
|
} |
||||
|
|
||||
|
export class ActionApiDescriptionModel { |
||||
|
uniqueName!: string; |
||||
|
name!: string; |
||||
|
httpMethod!: Method; |
||||
|
url!: string; |
||||
|
supportedVersions = new Array<string>(); |
||||
|
parametersOnMethod = new Array<MethodParameterApiDescriptionModel>(); |
||||
|
parameters = new Array<ParameterApiDescriptionModel>(); |
||||
|
returnValue = new ReturnValueApiDescriptionModel(); |
||||
|
} |
||||
|
|
||||
|
export class ControllerApiDescriptionModel { |
||||
|
controllerName!: string; |
||||
|
type!: string; |
||||
|
interfaces = new Array<ControllerInterfaceApiDescriptionModel>(); |
||||
|
actions: { [key: string]: ActionApiDescriptionModel } = {}; |
||||
|
} |
||||
|
|
||||
|
export class ModuleApiDescriptionModel { |
||||
|
rootPath = 'app'; |
||||
|
remoteServiceName = 'Default'; |
||||
|
controllers: { [key: string]: ControllerApiDescriptionModel } = {}; |
||||
|
} |
||||
|
|
||||
|
export class TypeApiDescriptionModel { |
||||
|
baseType!: string; |
||||
|
isEnum!: boolean; |
||||
|
enumNames = new Array<string>(); |
||||
|
enumValues = new Array<any>(); |
||||
|
genericArguments = new Array<string>(); |
||||
|
properties = new Array<PropertyApiDescriptionModel>(); |
||||
|
} |
||||
|
|
||||
|
export class ApplicationApiDescriptionModel { |
||||
|
modules: { [key: string]: ModuleApiDescriptionModel } = {}; |
||||
|
types: { [key: string]: TypeApiDescriptionModel } = {}; |
||||
|
} |
||||
@ -0,0 +1,243 @@ |
|||||
|
import { INameValue, Available } from '../../model/baseModel'; |
||||
|
|
||||
|
/** 授权 */ |
||||
|
export class Auth { |
||||
|
/** 权限集合 */ |
||||
|
policies?: { [key: string]: boolean } = {}; |
||||
|
/** 已授权集合 */ |
||||
|
grantedPolicies?: { [key: string]: boolean } = {}; |
||||
|
} |
||||
|
|
||||
|
/** 当前租户 */ |
||||
|
export class CurrentTenant { |
||||
|
/** 标识 */ |
||||
|
id? = ''; |
||||
|
/** 名称 */ |
||||
|
name? = ''; |
||||
|
/** 是否可用 */ |
||||
|
isAvailable = false; |
||||
|
|
||||
|
public clear() { |
||||
|
this.id = ''; |
||||
|
this.name = ''; |
||||
|
this.isAvailable = false; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
/** 当前用户 */ |
||||
|
export class CurrentUser { |
||||
|
/** 标识 */ |
||||
|
id? = ''; |
||||
|
/** 邮件地址 */ |
||||
|
email? = ''; |
||||
|
/** 邮件已验证 */ |
||||
|
emailVerified = false; |
||||
|
/** 手机号 */ |
||||
|
phoneNumber? = ''; |
||||
|
/** 手机号已验证 */ |
||||
|
phoneNumberVerified = false; |
||||
|
/** 名称 */ |
||||
|
name? = ''; |
||||
|
/** 简称 */ |
||||
|
surName? = ''; |
||||
|
/** 用户名 */ |
||||
|
userName? = ''; |
||||
|
/** 所属租户 */ |
||||
|
tenantId? = ''; |
||||
|
/** 是否已认证 */ |
||||
|
isAuthenticated = false; |
||||
|
/** 所属角色列表 */ |
||||
|
roles = new Array<string>(); |
||||
|
} |
||||
|
|
||||
|
/** 功能 */ |
||||
|
export class Feature { |
||||
|
/** 功能集合 */ |
||||
|
values?: { [key: string]: string } = {}; |
||||
|
} |
||||
|
|
||||
|
/** 时区转换 */ |
||||
|
export class DateTimeFormat { |
||||
|
/** 日历算法 */ |
||||
|
calendarAlgorithmType = ''; |
||||
|
/** 日期分隔符 */ |
||||
|
dateSeparator = ''; |
||||
|
/** 日期时间格式 */ |
||||
|
dateTimeFormatLong = ''; |
||||
|
/** 完整日期时间格式 */ |
||||
|
fullDateTimePattern = ''; |
||||
|
/** 长时间格式 */ |
||||
|
longTimePattern = ''; |
||||
|
/** 短日期格式 */ |
||||
|
shortDatePattern = ''; |
||||
|
/** 短时间格式 */ |
||||
|
shortTimePattern = ''; |
||||
|
} |
||||
|
|
||||
|
/** 当前区域信息 */ |
||||
|
export class CurrentCulture { |
||||
|
/** 本地化名称 */ |
||||
|
cultureName = ''; |
||||
|
/** 显示名称 */ |
||||
|
displayName = ''; |
||||
|
/** 英文名称 */ |
||||
|
englishName = ''; |
||||
|
/** 是否从右到左 */ |
||||
|
isRightToLeft = false; |
||||
|
/** 名称 */ |
||||
|
name = ''; |
||||
|
/** 本地名称 */ |
||||
|
nativeName = ''; |
||||
|
/** 三个字母的ISO名称 */ |
||||
|
threeLetterIsoLanguageName = ''; |
||||
|
/** 两个字母的ISO名称 */ |
||||
|
twoLetterIsoLanguageName = ''; |
||||
|
/** 日期时间格式 */ |
||||
|
dateTimeFormat = new DateTimeFormat(); |
||||
|
} |
||||
|
|
||||
|
/** 语言 */ |
||||
|
export class Language { |
||||
|
/** 本地化名称 */ |
||||
|
cultureName = ''; |
||||
|
/** 显示名称 */ |
||||
|
displayName = ''; |
||||
|
/** 图标 */ |
||||
|
flagIcon = ''; |
||||
|
/** 用户界面本地化名称 */ |
||||
|
uiCultureName = ''; |
||||
|
} |
||||
|
|
||||
|
/** 本地化 */ |
||||
|
export class Localization { |
||||
|
/** 当前区域 */ |
||||
|
currentCulture = new CurrentCulture(); |
||||
|
/** 默认本地化资源名称 */ |
||||
|
defaultResourceName = ''; |
||||
|
/** 支持的语言列表 */ |
||||
|
languages = new Array<Language>(); |
||||
|
/** 本地化资源集合 */ |
||||
|
values: { [key: string]: { [key: string]: string } } = {}; |
||||
|
/** 语言映射集合 */ |
||||
|
languagesMap: { [key: string]: INameValue<string>[] } = {}; |
||||
|
/** 语言文档映射集合 */ |
||||
|
languageFilesMap: { [key: string]: INameValue<string>[] } = {}; |
||||
|
} |
||||
|
|
||||
|
/** 多租户配置 */ |
||||
|
export class MultiTenancy { |
||||
|
/** 是否启用多租户 */ |
||||
|
isEnabled = false; |
||||
|
} |
||||
|
|
||||
|
/** 全局设置 */ |
||||
|
export class Setting { |
||||
|
/** 设置集合 */ |
||||
|
values: { [key: string]: string } = {}; |
||||
|
} |
||||
|
|
||||
|
/** 实体查询属性扩展 */ |
||||
|
export class ExtensionPropertyApiGet extends Available {} |
||||
|
|
||||
|
/** 实体创建属性扩展 */ |
||||
|
export class ExtensionPropertyApiCreate extends Available {} |
||||
|
|
||||
|
/** 实体更新属性扩展 */ |
||||
|
export class ExtensionPropertyApiUpdate extends Available {} |
||||
|
|
||||
|
/** 实体属性api定义 */ |
||||
|
export class ExtensionPropertyApi { |
||||
|
/** 查询时 */ |
||||
|
onGet = new ExtensionPropertyApiGet(); |
||||
|
/** 创建时 */ |
||||
|
onCreate = new ExtensionPropertyApiCreate(); |
||||
|
/** 更新时 */ |
||||
|
onUpdate = new ExtensionPropertyApiUpdate(); |
||||
|
} |
||||
|
|
||||
|
export class ExtensionPropertyUiTable extends Available {} |
||||
|
|
||||
|
export class ExtensionPropertyUiForm extends Available {} |
||||
|
|
||||
|
export class ExtensionPropertyUi { |
||||
|
onTable = new ExtensionPropertyUiTable(); |
||||
|
onCreateForm = new ExtensionPropertyUiForm(); |
||||
|
onEditForm = new ExtensionPropertyUiForm(); |
||||
|
} |
||||
|
|
||||
|
export class LocalizableString { |
||||
|
name = ''; |
||||
|
resource = ''; |
||||
|
} |
||||
|
|
||||
|
export class ExtensionPropertyAttribute { |
||||
|
typeSimple = ''; |
||||
|
config: { [key: string]: any } = {}; |
||||
|
} |
||||
|
|
||||
|
export class ExtensionProperty { |
||||
|
type = ''; |
||||
|
typeSimple = ''; |
||||
|
displayName = new LocalizableString(); |
||||
|
api = new ExtensionPropertyApi(); |
||||
|
ui = new ExtensionPropertyUi(); |
||||
|
attributes = new Array<ExtensionPropertyAttribute>(); |
||||
|
configuration: { [key: string]: any } = {}; |
||||
|
defaultValue: any = ''; |
||||
|
} |
||||
|
|
||||
|
export class EntityExtension { |
||||
|
properties: { [key: string]: ExtensionProperty } = {}; |
||||
|
configuration: { [key: string]: any } = {}; |
||||
|
} |
||||
|
|
||||
|
export class ModuleExtension { |
||||
|
entities: { [key: string]: EntityExtension } = {}; |
||||
|
configuration: { [key: string]: any } = {}; |
||||
|
} |
||||
|
|
||||
|
export class ExtensionEnumField { |
||||
|
name = ''; |
||||
|
value: any = ''; |
||||
|
} |
||||
|
|
||||
|
export class ExtensionEnum { |
||||
|
fields = new Array<ExtensionEnumField>(); |
||||
|
localizationResource = ''; |
||||
|
} |
||||
|
|
||||
|
export class ObjectExtension { |
||||
|
modules: { [key: string]: ModuleExtension } = {}; |
||||
|
enums: { [key: string]: ExtensionEnum } = {}; |
||||
|
} |
||||
|
|
||||
|
/** abp框架信息 */ |
||||
|
export interface IApplicationConfiguration { |
||||
|
/** 授权 */ |
||||
|
auth: Auth; |
||||
|
/** 租户 */ |
||||
|
currentTenant: CurrentTenant; |
||||
|
/** 用户 */ |
||||
|
currentUser: CurrentUser; |
||||
|
/** 功能 */ |
||||
|
features: Feature; |
||||
|
/** 本地化 */ |
||||
|
localization: Localization; |
||||
|
/** 租户配置 */ |
||||
|
multiTenancy: MultiTenancy; |
||||
|
/** 对象扩展 */ |
||||
|
objectExtensions: ObjectExtension; |
||||
|
/** 设置 */ |
||||
|
setting: Setting; |
||||
|
} |
||||
|
|
||||
|
export class ApplicationConfiguration implements IApplicationConfiguration { |
||||
|
auth = new Auth(); |
||||
|
currentTenant = new CurrentTenant(); |
||||
|
currentUser = new CurrentUser(); |
||||
|
features = new Feature(); |
||||
|
localization = new Localization(); |
||||
|
multiTenancy = new MultiTenancy(); |
||||
|
objectExtensions = new ObjectExtension(); |
||||
|
setting = new Setting(); |
||||
|
} |
||||
@ -0,0 +1,60 @@ |
|||||
|
import { defAbpHttp } from '/@/utils/http/abp'; |
||||
|
import { Register, PhoneRegister, PhoneResetPassword } from './model/accountsModel'; |
||||
|
import { User } from '/@/api/identity/model/userModel'; |
||||
|
|
||||
|
enum Api { |
||||
|
Register = '/api/account/register', |
||||
|
RegisterByPhone = '/api/account/phone/register', |
||||
|
ResetPassword = '/api/account/phone/reset-password', |
||||
|
SendPhoneSignCode = '/api/account/phone/send-signin-code', |
||||
|
SendPhoneRegisterCode = '/api/account/phone/send-register-code', |
||||
|
SendPhoneResetPasswordCode = '/api/account/phone/send-password-reset-code', |
||||
|
} |
||||
|
|
||||
|
export const register = (input: Register) => { |
||||
|
return defAbpHttp.post<User>({ |
||||
|
url: Api.Register, |
||||
|
data: input, |
||||
|
}); |
||||
|
}; |
||||
|
|
||||
|
export const registerByPhone = (input: PhoneRegister) => { |
||||
|
return defAbpHttp.post<void>({ |
||||
|
url: Api.RegisterByPhone, |
||||
|
data: input, |
||||
|
}); |
||||
|
}; |
||||
|
|
||||
|
export const resetPassword = (input: PhoneResetPassword) => { |
||||
|
return defAbpHttp.put<void>({ |
||||
|
url: Api.ResetPassword, |
||||
|
data: input, |
||||
|
}); |
||||
|
}; |
||||
|
|
||||
|
export const sendPhoneSignCode = (phoneNumber: string) => { |
||||
|
return defAbpHttp.post<void>({ |
||||
|
url: Api.SendPhoneSignCode, |
||||
|
data: { |
||||
|
phoneNumber: phoneNumber, |
||||
|
}, |
||||
|
}); |
||||
|
}; |
||||
|
|
||||
|
export const sendPhoneRegisterCode = (phoneNumber: string) => { |
||||
|
return defAbpHttp.post<void>({ |
||||
|
url: Api.SendPhoneRegisterCode, |
||||
|
data: { |
||||
|
phoneNumber: phoneNumber, |
||||
|
}, |
||||
|
}); |
||||
|
}; |
||||
|
|
||||
|
export const sendPhoneResetPasswordCode = (phoneNumber: string) => { |
||||
|
return defAbpHttp.post<void>({ |
||||
|
url: Api.SendPhoneResetPasswordCode, |
||||
|
data: { |
||||
|
phoneNumber: phoneNumber, |
||||
|
}, |
||||
|
}); |
||||
|
}; |
||||