Commit ea9578bf authored by xukaiqiang's avatar xukaiqiang

init

parents
module.exports = {
zip: 'amosiot.zip' // default
};
# http://editorconfig.org
#这个文件用来配置当前整个项目的格式化参数
#需要安装EditorConfig for VS Code 插件
# A special property that should be specified at the top of the file outside of
# any sections. Set to true to stop .editor config file search on current file
root = true
# Unix-style newlines with a newline ending every file
[*]
# Indentation style
# Possible values - tab, space
# 缩进风格
# 可选的值为- tab, space
indent_style = space
# Indentation size in single-spaced characters
# Possible values - an integer, tab
# 缩进几个tab ,空格
indent_size = 2
# Line ending file format
# Possible values - lf, crlf, cr
end_of_line = lf
# File character encoding
# Possible values - latin1, utf-8, utf-16be, utf-16le
# 设置编码
charset = utf-8
# Denotes whether to trim whitespace at the end of lines
# Possible values - true, false
trim_trailing_whitespace = true
# Denotes whether file should end with a newline
# Possible values - true, false
insert_final_newline = true
# Matches the exact files either package.json or .travis.yml
[{package.json,.travis.yml}]
indent_style = space
indent_size = 4
webpack.config*.js
node_modules/
**/node_modules/**
src/plugin
module.exports = {
extends: 'eslint-config-ray',
globals: {
location: true
}
}
{
"js": {
"indent_size": 2,
"space_in_paren": false,
"space-in-empty-paren": false,
"jslint_happy": false,
"space_after_anon_function": false
},
"css": {
"indent_size": 2
},
"html": {
"indent_size": 2
},
"indent_size": 2,
"indent_char": " ",
"indent_with_tabs": false,
"eol": "\n",
"end_with_newline": true,
"indent_level": 0,
"preserve_newlines": true,
"max_preserve_newlines": 10,
"brace_style": "collapse",
"break_chained_methods": false,
"keep_array_indentation": false,
"unescape_strings": false,
"wrap_line_length": 0,
"e4x": false,
"comma_first": false,
"operator_position": "before-newline"
}
package-lock=false
save=false
registry=http://172.16.11.26:9696/
sass_binary_site=http://172.16.11.26:8888/node-sass
node_modules
lib
{
"printWidth": 160,
"tabWidth": 2,
"useTabs": false,
"semi": true,
"singleQuote": true,
"parser": "babylon",
"trailingComma": "none",
"bracketSpacing": true,
"jsxBracketSameLine": false,
"arrowParens": "avoid",
"requirePragma": false,
"proseWrap": "preserve",
"overrides": [
{
"files": ["*.json", ".eslintrc", ".tslintrc", ".prettierrc", ".tern-project", ".travis.yml"],
"options": {
"parser": "json",
"tabWidth": 2
}
},
{
"files": "*.css",
"options": {
"parser": "css",
"tabWidth": 2
}
},
{
"files": "*.{sass,scss}",
"options": {
"parser": "scss",
"tabWidth": 2
}
},
{
"files": "*.less",
"options": {
"parser": "less",
"tabWidth": 2
}
},
{
"files": "*.ts",
"options": {
"parser": "typescript"
}
}
]
}
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>YeeAMOSIotView</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>com.aptana.ide.core.unifiedBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>com.aptana.ruby.core.rubynature</nature>
</natures>
</projectDescription>
{
"extends": "stylelint-config-ray"
}
/**
* amos 系统配置信息
* @author ilex.h
*/
!(function() {
var Amos = {};
Amos.config = {
// 普通http
httpURI: {
// 根url
baseURI: 'http://172.16.10.98:9008/',
// test
prifix: '',
// plugin uri 前缀
pluginURI: 'http://172.16.11.30:8201/',
// 安全模块api地址
securityBaseURI: 'http://172.16.10.98:8800/'
},
// websocket 地址
wsURI: {
baseURI: 'ws://172.16.10.99:10600/',
pluginURI: 'ws://172.16.10.99:10600/',
securityBaseURI: 'ws://172.16.10.99:10600/',
realTimeMetricDataURL: 'ws://172.16.10.99:10600/',
onlineTestWsURL: 'ws://172.16.10.99s:10600/'
},
// 外部链接地址
outterURI: {
operateProcessDesign: '',
publish: '/main/massview/publish?appId=${appId}&id={id}&token={token}&isPublish={isPublish}',
analysis: 'http://172.16.10.162:3005/main?user={user}&token={token}'
},
// 系统配置信息 主要是为了区分各子系统
sysConf: {
needHeartBeat: true,
sysType: {
key: '',
text: ''
}
}
};
window.Amos = Amos;
// 配置日志系统
window.LogConfig = {
isDebug: true // 调试模式时打印日志
};
// 采用本地模式启动插件
window.useNative = false;
window.BizPermissionType = 25; //业务屏菜单权限类型
window.demo = true;
})();
@echo off
title AmosBuild Guide
@echo author ilex.h
@echo Starting front end initialization Wizard...
npm update && npm run pub:build && npm run zip
//-----------------------------------------------------------
// notice: do not modify this file content except entry/alias
// you can modify some config such as
// `showProgress/tpl/productionSourceMap/productionGzip`
// and so on
//-----------------------------------------------------------
var path = require('path');
var distPath = path.resolve(__dirname, '..', 'dist');
var projectRoot = path.resolve(__dirname, '../');
var assetsPath = function(_path) {
return path.posix.join('static', _path);
};
// ------------------------------------
// 入口点
// 👻 可修改
// ------------------------------------
var entry = {
app: './src/entry/index.js'
};
// ------------------------------------
// 添加webpack加载别名,用于导包重定向,优化打包以及代码
// 此处需要自己进行定义
// 👻可修改
// ------------------------------------
var alias = {
MODEL: projectRoot + '/src/model',
UTILS: projectRoot + '/src/utils',
CONSTS: projectRoot + '/src/consts',
_MOCK: projectRoot + '/src/_mock'
};
//-----------------------------------------------------------
// 👻 可修改,除非你知道该怎么修改
///-----------------------------------------------------------
module.exports = {
webpackConf: {
name: 'fireiot',
entry: entry,
alias: alias
},
showProgress: true,
context: __dirname,
tpl: 'tpl.html',
extractTextPath: assetsPath('css/[name].css?v=[contenthash:8]'),
visualizer: path.resolve(distPath, 'visualizer.html'),
prod: {
dll: {
fileName: './node_modules/amos-dll/common/prod/Amoslib.js', // 完整路径
manifest: 'amos-dll/common/prod/manifest.json',
outputPath: '/static/common/js', // 生成目录
publicPath: '/static/common/js' // 注入地址
},
toFile: path.resolve(distPath, 'index.html'),
assetsRoot: distPath,
assetsSubDirectory: 'static',
assetsPublicPath: '/',
productionSourceMap: false,
// Gzip off by default as many popular static hosts such as
// Surge or Netlify already gzip all static assets for you.
// Before setting to `true`, make sure to:
// npm install --save-dev compression-webpack-plugin
productionGzip: false,
productionGzipExtensions: ['js', 'css'],
output: {
path: distPath,
filename: assetsPath('js/[name].js?v=[chunkhash:8]'),
chunkFilename: assetsPath('js/chunk.[id].js?v=[chunkhash:8]')
}
},
dev: {
dll: {
fileName: './node_modules/amos-dll/common/dev/Amoslib.js', // 完整路径
manifest: 'amos-dll/common/dev/manifest.json',
outputPath: '/static/common/dev', // 生成目录
publicPath: '/static/common/dev' // 注入地址
},
toFile: 'index.html',
port: 9000,
assetsRoot: distPath,
assetsSubDirectory: 'static',
assetsPublicPath: '/',
staticPath: '/common',
proxyTable: {},
// CSS Sourcemaps off by default because relative paths are "buggy"
// with this option, according to the CSS-Loader README
// (https://github.com/webpack/css-loader#sourcemaps)
// In our experience, they generally work as expected,
// just be aware of this issue when enabling this option.
cssSourceMap: false,
output: {
path: distPath,
filename: assetsPath('js/[name].js'),
chunkFilename: assetsPath('js/chunk.[id].js')
}
},
test: {
dll: {
fileName: './node_modules/amos-dll/common/prod/Amoslib.js', // 完整路径
// fileName: require.resolve('amos-dll/common/prod/Amoslib.js'),
manifest: 'amos-dll/common/prod/manifest.json',
outputPath: '/static/common/js', // 生成目录
publicPath: '/static/common/js' // 注入地址
},
index: path.resolve(distPath, 'index.html'),
assetsRoot: distPath,
assetsSubDirectory: 'static',
assetsPublicPath: '/',
productionSourceMap: true,
// Gzip off by default as many popular static hosts such as
// Surge or Netlify already gzip all static assets for you.
// Before setting to `true`, make sure to:
// npm install --save-dev compression-webpack-plugin
productionGzip: false,
productionGzipExtensions: ['js', 'css']
}
};
import React, { Component } from 'react';
import logo from './amosinit.svg';
import './App.scss';
/**
* your app component
*
* @class App
* @extends {Component}
*/
class App extends Component {
render() {
return (
<div className="demo">
<div className="demo-header">
<img src={logo} className="demo-logo" alt="logo" />
<h2>Welcome to Amos init</h2>
</div>
<p className="demo-introduce">
To get started, edit <code>demo/App.js</code> and save to reload.
</p>
<div className="demo-introduce">
<p>
To Use advanced features, please copy all demo files to src/entry.
</p>
<p>
Then edit the webpack.config.js entry property, <code>./demo/index.js</code> to <code>./src/entry/index.js</code>.
</p>
<p>
such as add a compoment:
<code>$amos-init -c MyComponent</code>
</p>
</div>
</div>
);
}
}
export default App;
.demo {
text-align: center;
.demo-header {
background-color: #203957;
height: 150px;
padding: 20px;
color: white;
.demo-logo {
animation: demo-logo-spin infinite 20s linear;
height: 80px;
}
@keyframes demo-logo-spin {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
}
.demo-introduce {
font-size: large;
}
}
This diff is collapsed.
import React from 'react';
import { render } from 'react-dom';
import App from './App';
import './index.scss';
/**
* main entry
*/
render(<App />, document.getElementById('app'));
body {
margin: 0;
padding: 0;
font-family: "Microsoft YaHei";
}
/**
* @title 按钮类型
*/
import { Button } from 'amos-framework';
const ButtonType = () => {
return (
<div>
<Button>默认</Button>
<Button type="minor">次要</Button>
</div>
);
};
/**
* @title 按钮尺寸
*/
import { Button } from 'amos-framework';
const ButtonSize = () => {
return (
<div>
<Button size="lg">大尺寸</Button>
<Button>默认</Button>
<Button size="sm">小尺寸</Button>
</div>
);
};
/**
* @title 图标按钮
* @desc 如果需要自定义图标位置,结合使用 Icon 组件
*/
import { Button } from 'amos-framework';
const ButtonIcon = () => {
return (
<div>
<Button icon="plus">添加</Button>
<Button icon="align-left" />
</div>
);
};
/**
* @title 圆形按钮
*/
import { Button } from 'amos-framework';
const ButtonCircle = () => {
return (
<div>
<Button icon="plus" circle />
<Button circle></Button>
</div>
);
};
/**
* @title transparent
* @desc 文字颜色继承父级,背景透明
*/
import { Button } from 'amos-framework';
const ButtonTransparent = () => {
return (
<div>
<Button icon="plus" transparent />
<Button icon="align-left" transparent />
</div>
);
};
/**
* @title 不可用的
*/
import { Button } from 'amos-framework';
const ButtonDisabled = () => {
return (
<div>
<Button disabled>不可用</Button>
<Button icon="plus" disabled />
</div>
);
};
<!DOCTYPE html>
<html>
<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">
<title>amos-framework docs</title>
</head>
<body>
<div id="app"></div>
</body>
</html>
@echo off
title Amos install Guide
@echo author ilex.h
@echo Starting install npm supported Wizard...
@echo First registry proxy,Second execute npm install...
@echo.
npm install
pause
{
"verbose": true,
"ignore": [".git", ".svn/**/.svn", "dist", "coverage", "tests", "src", "demo", "docs", "node_modules"],
"watch":[
"webpack.*.js",
"./build"
]
}
{
"name": "amos-toip",
"version": "1.0.0",
"private": true,
"author": "ilex.h",
"scripts": {
"clean": "rimraf dist released",
"build:pro": "set NODE_ENV=production && npm run clean && webpack",
"build:dev": "set NODE_ENV=development && npm run clean && webpack",
"watch": "webpack -w",
"server": "nodemon server/index.js --watch server",
"build": "set NODE_ENV=production && npm run clean && webpack",
"themes": "amos-run themes",
"themes-watch": "amos-run themes-watch",
"start": "set NODE_ENV=development && nodemon --exec \"webpack-dev-server\"",
"start2": "set NODE_ENV=development && webpack-dev-server",
"startDev": "set NODE_ENV=development && webpack-dev-server --config webpack.config.dev.js",
"compile:dev": "set NODE_ENV=development && npm run clean && webpack --config webpack.config.dev.js",
"compile:pro": "set NODE_ENV=production && npm run clean && webpa0ck --config webpack.config.prod.js",
"lint": "eslint src tests",
"lint:fix": "npm run lint -- --fix",
"format": "prettier --write \"src/**/*.{js,jsx,css,scss,less,sass}\"",
"stylelint": "stylelint src",
"zip": "amos-run released2zip",
"pub:dev": "npm run compile:dev && amos-run dllreleased",
"pub": "npm run compile:pro && amos-run dllreleased",
"pub:build": "npm run build:pro && amos-run dllreleased",
"precommit": "lint-staged"
},
"lint-staged": {
"*.{js,json,css}": [
"prettier --write",
"git add"
]
},
"dependencies": {
"amos-antd": "^2.0.22",
"amos-core": "^2.0.27",
"amos-devgrid": "^1.0.10",
"amos-dll": "^2.0.1",
"amos-icon": "^1.0.3",
"amos-jsplumb": "^3.0.2",
"amos-pluggable": "^1.0.6",
"amos-processor": "^1.2.17",
"amos-security": "^2.0.17",
"amos-richtext": "^1.0.0",
"amos-tool": "^1.x",
"amos-viz": "^1.x",
"amos-websocket": "^1.0.3",
"classnames": "^2.2.5",
"dt2react": "^1.x",
"ray-code-split": "^1.0.1",
"ray-hotkeys": "^1.x",
"ray-mediaquery": "^1.0.0",
"ray-progress": "^1.0.0",
"react": "~16.0.0",
"react-dom": "~16.0.0"
},
"devDependencies": {
"amos-build": "^3.x",
"amos-code-actuator": "^1.0.0",
"amos-framework": "^1.1.9",
"eslint-config-ray": "^1.0.25",
"mockjs": "^1.0.1-beta3",
"stylelint-config-ray": "^2.0.0",
"ws": "^4.0.0"
}
}
const Mock = require('mockjs');
const ruleLibListData = () => {
return Mock.mock({
'dataList|39-40': [{
'key': '@guid',
'name': '@name',
'descr': '@cname',
'published|1-2': true,
'enable|1-2': true
}]
});
};
module.exports = {
ruleLibListData
};
/* eslint no-magic-numbers: 0 */
const Mock = require('mockjs');
const testData = () => {
return Mock.mock({
'dataList|39-40': [{
'id': '@guid',
'name': '@name',
'displayName': '@cname'
}]
});
};
module.exports = {
testData
};
// @author ilex.h
const express = require('express');
const {
testData
} = require('./_mock/testMock');
const {
ruleLibListData
} = require('./_mock/rule');
const app = express();
const port = 8087;
const successCode = 200;
const transCommonResponse = (data) => {
const result = {
result: 'SUCCESS',
dataList: data
};
return JSON.stringify(result);
};
app.all('*', (req, res, next) => {
console.log(req.headers.origin);
res.header('Access-Control-Allow-Origin', req.headers.origin);
res.header('Access-Control-Allow-Headers', 'Content-Type,Content-Length, X-Access-Token, X-Api-Key, Authorization, Accept,X-Requested-With');
res.header('Access-Control-Allow-Methods','PUT,POST,GET,DELETE,OPTIONS');
res.header('Access-Control-Allow-Credentials','true');
res.header('X-Powered-By',' 3.2.1');
if (req.method === 'OPTIONS') {
// 让options请求快速返回
res.send(successCode);
} else {
next();
}
});
app.get('/', (req, res) => {
res.writeHead(successCode, { 'Content-Type': 'text/html;charset=utf-8' });
res.write(
`
<!doctype html>
<html>
<head>
<meta charset='gbk'/>
<title>AMOS-APIS</title>
<style>
div {
background: rgb(101, 78, 163);
height: 3rem;
color: white;
font-size: 30px;
}
a {
display: block;
padding: 1rem;
}
</style>
</head>
<body>
<div>APIS</div>
<a href='/test'>test</a>
<a href='/ruledesign/ruleLibList'>ruleLibList</a>
</body>
</html>
`);
});
app.get('/test', (req, res) => {
const m = testData().dataList;
res.send(transCommonResponse(m));
});
app.get('/ruledesign/ruleLibList', (req, res) => {
res.send(transCommonResponse(ruleLibListData().dataList));
});
const server = app.listen(port, () => {
const host = server.address().address;
const port = server.address().port;
console.log('应用实例,访问地址为 http://%s:%s', host, port);
});
import Mock from 'mockjs';
export const appdatas = () =>{
return Mock.mock({
'dataList|10-20': [{
'key|+1': 1,
'text|1': '@ctitle(2, 4)',
'count': function() {
return this.children.length;
},
'children|5-10': [{
'key': '@id',
'title': '@ctitle(3, 5)',
'funcIcon|+1': [
'/src/assets/funcicon/search.png',
'/src/assets/funcicon/text.png',
'/src/assets/funcicon/think.png',
'/src/assets/funcicon/print.png',
'/src/assets/funcicon/calender.png',
'/src/assets/funcicon/calc.png'
]
}]
}]
});
};
export const recommends = () => {
return Mock.mock({
'dataList|1-6': [{
'key': '@id',
'title': '@ctitle(3, 5)',
'itemPath': '@word(2, 3) / @word(3, 5)',
'funcIcon|+1': [
'/src/assets/funcicon/search.png',
'/src/assets/funcicon/text.png',
'/src/assets/funcicon/think.png',
'/src/assets/funcicon/print.png',
'/src/assets/funcicon/calender.png',
'/src/assets/funcicon/calc.png'
]
}]
});
};
import Mock from 'mockjs';
// @title @ctitle
// @sentence @sentence(3, 5)
// @csentence
// @cparagraph
export default function accounts(){
return Mock.mock('@ctitle');
}
*{margin: 0;padding: 0;list-style: none;}
/*
KISSY CSS Reset
理念:1. reset 的目的不是清除浏览器的默认样式,这仅是部分工作。清除和重置是紧密不可分的。
2. reset 的目的不是让默认样式在所有浏览器下一致,而是减少默认样式有可能带来的问题。
3. reset 期望提供一套普适通用的基础样式。但没有银弹,推荐根据具体需求,裁剪和修改后再使用。
特色:1. 适应中文;2. 基于最新主流浏览器。
维护:玉伯<lifesinger@gmail.com>, 正淳<ragecarrier@gmail.com>
*/
/** 清除内外边距 **/
body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, /* structural elements 结构元素 */
dl, dt, dd, ul, ol, li, /* list elements 列表元素 */
pre, /* text formatting elements 文本格式元素 */
form, fieldset, legend, button, input, textarea, /* form elements 表单元素 */
th, td /* table elements 表格元素 */ {
margin: 0;
padding: 0;
}
/** 设置默认字体 **/
body,
button, input, select, textarea /* for ie */ {
font: 12px/1.5 tahoma, arial, \5b8b\4f53, sans-serif;
}
h1, h2, h3, h4, h5, h6 { font-size: 100%; }
address, cite, dfn, em, var { font-style: normal; } /* 将斜体扶正 */
code, kbd, pre, samp { font-family: courier new, courier, monospace; } /* 统一等宽字体 */
small { font-size: 12px; } /* 小于 12px 的中文很难阅读,让 small 正常化 */
/** 重置列表元素 **/
ul, ol { list-style: none; }
/** 重置文本格式元素 **/
a { text-decoration: none; }
a:hover { text-decoration: underline; }
/** 重置表单元素 **/
legend { color: #000; } /* for ie6 */
fieldset, img { border: 0; } /* img 搭车:让链接里的 img 无边框 */
button, input, select, textarea { font-size: 100%; } /* 使得表单元素在 ie 下能继承字体大小 */
/* 注:optgroup 无法扶正 */
/** 重置表格元素 **/
table { border-collapse: collapse; border-spacing: 0; }
/* 清除浮动 */
.ks-clear:after, .clear:after {
content: '\20';
display: block;
height: 0;
clear: both;
}
.ks-clear, .clear {
*zoom: 1;
}
.main {
padding: 30px 100px;
width: 960px;
margin: 0 auto;
}
.main h1{font-size:36px; color:#333; text-align:left;margin-bottom:30px; border-bottom: 1px solid #eee;}
.helps{margin-top:40px;}
.helps pre{
padding:20px;
margin:10px 0;
border:solid 1px #e7e1cd;
background-color: #fffdef;
overflow: auto;
}
.icon_lists{
width: 100% !important;
}
.icon_lists li{
float:left;
width: 100px;
height:180px;
text-align: center;
list-style: none !important;
}
.icon_lists .icon{
font-size: 42px;
line-height: 100px;
margin: 10px 0;
color:#333;
-webkit-transition: font-size 0.25s ease-out 0s;
-moz-transition: font-size 0.25s ease-out 0s;
transition: font-size 0.25s ease-out 0s;
}
.icon_lists .icon:hover{
font-size: 100px;
}
.markdown {
color: #666;
font-size: 14px;
line-height: 1.8;
}
.highlight {
line-height: 1.5;
}
.markdown img {
vertical-align: middle;
max-width: 100%;
}
.markdown h1 {
color: #404040;
font-weight: 500;
line-height: 40px;
margin-bottom: 24px;
}
.markdown h2,
.markdown h3,
.markdown h4,
.markdown h5,
.markdown h6 {
color: #404040;
margin: 1.6em 0 0.6em 0;
font-weight: 500;
clear: both;
}
.markdown h1 {
font-size: 28px;
}
.markdown h2 {
font-size: 22px;
}
.markdown h3 {
font-size: 16px;
}
.markdown h4 {
font-size: 14px;
}
.markdown h5 {
font-size: 12px;
}
.markdown h6 {
font-size: 12px;
}
.markdown hr {
height: 1px;
border: 0;
background: #e9e9e9;
margin: 16px 0;
clear: both;
}
.markdown p,
.markdown pre {
margin: 1em 0;
}
.markdown > p,
.markdown > blockquote,
.markdown > .highlight,
.markdown > ol,
.markdown > ul {
width: 80%;
}
.markdown ul > li {
list-style: circle;
}
.markdown > ul li,
.markdown blockquote ul > li {
margin-left: 20px;
padding-left: 4px;
}
.markdown > ul li p,
.markdown > ol li p {
margin: 0.6em 0;
}
.markdown ol > li {
list-style: decimal;
}
.markdown > ol li,
.markdown blockquote ol > li {
margin-left: 20px;
padding-left: 4px;
}
.markdown code {
margin: 0 3px;
padding: 0 5px;
background: #eee;
border-radius: 3px;
}
.markdown pre {
border-radius: 6px;
background: #f7f7f7;
padding: 20px;
}
.markdown pre code {
border: none;
background: #f7f7f7;
margin: 0;
}
.markdown strong,
.markdown b {
font-weight: 600;
}
.markdown > table {
border-collapse: collapse;
border-spacing: 0px;
empty-cells: show;
border: 1px solid #e9e9e9;
width: 95%;
margin-bottom: 24px;
}
.markdown > table th {
white-space: nowrap;
color: #333;
font-weight: 600;
}
.markdown > table th,
.markdown > table td {
border: 1px solid #e9e9e9;
padding: 8px 16px;
text-align: left;
}
.markdown > table th {
background: #F7F7F7;
}
.markdown blockquote {
font-size: 90%;
color: #999;
border-left: 4px solid #e9e9e9;
padding-left: 0.8em;
margin: 1em 0;
font-style: italic;
}
.markdown blockquote p {
margin: 0;
}
.markdown .anchor {
opacity: 0;
transition: opacity 0.3s ease;
margin-left: 8px;
}
.markdown .waiting {
color: #ccc;
}
.markdown h1:hover .anchor,
.markdown h2:hover .anchor,
.markdown h3:hover .anchor,
.markdown h4:hover .anchor,
.markdown h5:hover .anchor,
.markdown h6:hover .anchor {
opacity: 1;
display: inline-block;
}
.markdown > br,
.markdown > p > br {
clear: both;
}
.hljs {
display: block;
background: white;
padding: 0.5em;
color: #333333;
overflow-x: auto;
}
.hljs-comment,
.hljs-meta {
color: #969896;
}
.hljs-string,
.hljs-variable,
.hljs-template-variable,
.hljs-strong,
.hljs-emphasis,
.hljs-quote {
color: #df5000;
}
.hljs-keyword,
.hljs-selector-tag,
.hljs-type {
color: #a71d5d;
}
.hljs-literal,
.hljs-symbol,
.hljs-bullet,
.hljs-attribute {
color: #0086b3;
}
.hljs-section,
.hljs-name {
color: #63a35c;
}
.hljs-tag {
color: #333333;
}
.hljs-title,
.hljs-attr,
.hljs-selector-id,
.hljs-selector-class,
.hljs-selector-attr,
.hljs-selector-pseudo {
color: #795da3;
}
.hljs-addition {
color: #55a532;
background-color: #eaffea;
}
.hljs-deletion {
color: #bd2c00;
background-color: #ffecec;
}
.hljs-link {
text-decoration: underline;
}
pre{
background: #fff;
}
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment